[libcxx] r324193 - Mark LWG 3014 as complete. No code changes needed

2018-02-03 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Feb 3 23:37:09 2018 New Revision: 324193 URL: http://llvm.org/viewvc/llvm-project?rev=324193=rev Log: Mark LWG 3014 as complete. No code changes needed Modified: libcxx/trunk/www/upcoming_meeting.html Modified: libcxx/trunk/www/upcoming_meeting.html URL:

[libcxx] r324192 - Implement LWG 3014 - Fix more noexcept issues in filesystem.

2018-02-03 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Feb 3 23:35:36 2018 New Revision: 324192 URL: http://llvm.org/viewvc/llvm-project?rev=324192=rev Log: Implement LWG 3014 - Fix more noexcept issues in filesystem. This patch removes the noexcept declaration from filesystem operations which require creating temporary

[libcxx] r324191 - Mark LWG 3013 as already complete. See r316941

2018-02-03 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Feb 3 23:29:53 2018 New Revision: 324191 URL: http://llvm.org/viewvc/llvm-project?rev=324191=rev Log: Mark LWG 3013 as already complete. See r316941 Modified: libcxx/trunk/www/upcoming_meeting.html Modified: libcxx/trunk/www/upcoming_meeting.html URL:

[libcxx] r324190 - Remove debug println from rec.dir.itr.increment test

2018-02-03 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Feb 3 19:26:55 2018 New Revision: 324190 URL: http://llvm.org/viewvc/llvm-project?rev=324190=rev Log: Remove debug println from rec.dir.itr.increment test Modified:

[libcxx] r324189 - Implement LWG2989: path's streaming operators allow everything under the sun.

2018-02-03 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Feb 3 19:10:53 2018 New Revision: 324189 URL: http://llvm.org/viewvc/llvm-project?rev=324189=rev Log: Implement LWG2989: path's streaming operators allow everything under the sun. Because path can be constructed from a ton of different types, including string and wide

[libcxx] r324188 - Mark issue 2851 as complete

2018-02-03 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Feb 3 18:45:33 2018 New Revision: 324188 URL: http://llvm.org/viewvc/llvm-project?rev=324188=rev Log: Mark issue 2851 as complete Modified: libcxx/trunk/www/upcoming_meeting.html Modified: libcxx/trunk/www/upcoming_meeting.html URL:

[libcxx] r324187 - Address LWG 2849 and fix missing failure condition in copy_file.

2018-02-03 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Feb 3 18:43:32 2018 New Revision: 324187 URL: http://llvm.org/viewvc/llvm-project?rev=324187=rev Log: Address LWG 2849 and fix missing failure condition in copy_file. Previously copy_file didn't handle the case where the input and output were the same file. Modified:

[libcxx] r324186 - correct comment about C++03 assignment operators

2018-02-03 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Feb 3 18:22:33 2018 New Revision: 324186 URL: http://llvm.org/viewvc/llvm-project?rev=324186=rev Log: correct comment about C++03 assignment operators Modified: libcxx/trunk/test/std/containers/sequences/array/array.cons/implicit_copy.pass.cpp Modified:

[libcxx] r324185 - Make array non-CopyAssignable and make swap and fill ill-formed.

2018-02-03 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Feb 3 18:17:02 2018 New Revision: 324185 URL: http://llvm.org/viewvc/llvm-project?rev=324185=rev Log: Make array non-CopyAssignable and make swap and fill ill-formed. The standard isn't exactly clear how std::array should handle zero-sized arrays with const element

[libcxx] r324182 - [libc++] Fix PR35491 - std::array of zero-size doesn't work with non-default constructible types.

2018-02-03 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Feb 3 17:03:08 2018 New Revision: 324182 URL: http://llvm.org/viewvc/llvm-project?rev=324182=rev Log: [libc++] Fix PR35491 - std::array of zero-size doesn't work with non-default constructible types. Summary: This patch fixes llvm.org/PR35491 and LWG2157

[PATCH] D41223: [libc++] Fix PR35491 - std::array of zero-size doesn't work with non-default constructible types.

2018-02-03 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 132758. EricWF added a comment. - Address review comments. - Add initialization tests. https://reviews.llvm.org/D41223 Files: include/array test/std/containers/sequences/array/array.cons/default.pass.cpp

[PATCH] D41223: [libc++] Fix PR35491 - std::array of zero-size doesn't work with non-default constructible types.

2018-02-03 Thread Eric Fiselier via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rCXX324182: [libc++] Fix PR35491 - std::array of zero-size doesnt work with non-default… (authored by EricWF, committed by ). Repository: rCXX libc++ https://reviews.llvm.org/D41223 Files:

[PATCH] D41223: [libc++] Fix PR35491 - std::array of zero-size doesn't work with non-default constructible types.

2018-02-03 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D41223#997264, @EricWF wrote: > > and also test `{{}}` cases. > > I don't agree those cases are valid. That initialization syntax suggests > there is something in the zero-sized array which is default constructible - > or that users should be

[PATCH] D41223: [libc++] Fix PR35491 - std::array of zero-size doesn't work with non-default constructible types.

2018-02-03 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D41223#957308, @mclow.lists wrote: > I'm wondering if it's not a better idea to have an explicit specialization > for size == 0 > > template > class array { > // and so on. > }; I think that's probably more work than it's

[PATCH] D42887: [Driver] Add option to manually control discarding value names in LLVM IR.

2018-02-03 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked an inline comment as done. EricWF added inline comments. Comment at: lib/Driver/ToolChains/Clang.cpp:3269 -// Disable the verification pass in -asserts builds. + const bool IsAssertBuild = #ifdef NDEBUG lebedev.ri wrote: > This logic seems

[PATCH] D42887: [Driver] Add option to manually control discarding value names in LLVM IR.

2018-02-03 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 132752. EricWF marked an inline comment as done. EricWF added a comment. - Address really really really dumb mistake. https://reviews.llvm.org/D42887 Files: docs/UsersManual.rst include/clang/Driver/Options.td lib/Driver/ToolChains/Clang.cpp

[PATCH] D42887: [Driver] Add option to manually control discarding value names in LLVM IR.

2018-02-03 Thread Roman Lebedev via Phabricator via cfe-commits
lebedev.ri added inline comments. Comment at: lib/Driver/ToolChains/Clang.cpp:3269 -// Disable the verification pass in -asserts builds. + const bool IsAssertBuild = #ifdef NDEBUG This logic seems sidewards. If `NDEBUG` is specified, then it is

[PATCH] D42887: [Driver] Add option to manually control discarding value names in LLVM IR.

2018-02-03 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. EricWF added reviewers: erichkeane, aaron.ballman, lebedev.ri. Currently, assertion-disabled Clang builds emit value names when generating LLVM IR. This is controlled by the `NDEBUG` macro, and is not easily overridable. In order to get IR output containing names

[PATCH] D41217: [Concepts] Concept Specialization Expressions

2018-02-03 Thread Saar Raz via Phabricator via cfe-commits
saar.raz added inline comments. Comment at: test/CXX/concepts-ts/expr/expr.prim/expr.prim.id/p3.cpp:12 + +template concept C3 = sizeof(*T{}) == 4; +static_assert(C3); Quuxplusone wrote: > "test/Parser/cxx-concept-declaration.cpp" has some syntax tests for

[PATCH] D41217: [Concepts] Concept Specialization Expressions

2018-02-03 Thread Arthur O'Dwyer via Phabricator via cfe-commits
Quuxplusone added inline comments. Comment at: include/clang/Basic/DiagnosticSemaKinds.td:2404 +def err_concept_non_constant_constraint_expression : Error< + "concept specialization '%0' resulted in a non-constant expression '%1'.">; +def err_non_bool_atomic_constraint : Error<

[PATCH] D41284: [Concepts] Associated constraints infrastructure.

2018-02-03 Thread Saar Raz via Phabricator via cfe-commits
saar.raz updated this revision to Diff 132748. saar.raz added a comment. Moved function into SemaConcept.cpp. Repository: rC Clang https://reviews.llvm.org/D41284 Files: include/clang/AST/DeclTemplate.h include/clang/AST/RecursiveASTVisitor.h include/clang/Sema/Sema.h

[PATCH] D41889: [libcxxabi][demangler] Clean up and llvm-ify the type parser

2018-02-03 Thread Erik Pilkington via Phabricator via cfe-commits
erik.pilkington updated this revision to Diff 132747. erik.pilkington added a comment. Rebase and remove the qualifier substitution bug fix. https://reviews.llvm.org/D41889 Files: src/cxa_demangle.cpp Index: src/cxa_demangle.cpp

[PATCH] D41217: [Concepts] Concept Specialization Expressions

2018-02-03 Thread Saar Raz via Phabricator via cfe-commits
saar.raz updated this revision to Diff 132743. saar.raz added a comment. Herald added subscribers: hintonda, mgorny. - Moved general concepts-related function into SemaConcept.cpp Repository: rC Clang https://reviews.llvm.org/D41217 Files: include/clang/AST/DeclTemplate.h

[PATCH] D40787: [clang-tidy] Replace the usage of std::uncaught_exception with std::uncaught_exceptions

2018-02-03 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman accepted this revision. aaron.ballman added a comment. This revision is now accepted and ready to land. This LGTM with a few minor nits to fix. Comment at: clang-tidy/modernize/ModernizeTidyModule.cpp:80-81

r324173 - Recommit rL323952: [DebugInfo] Enable debug information for C99 VLA types.

2018-02-03 Thread Sander de Smalen via cfe-commits
Author: s.desmalen Date: Sat Feb 3 05:55:59 2018 New Revision: 324173 URL: http://llvm.org/viewvc/llvm-project?rev=324173=rev Log: Recommit rL323952: [DebugInfo] Enable debug information for C99 VLA types. Fixed build issue when building with g++-4.8 (specialization after instantiation).

[PATCH] D42745: [analyzer] Add support for __builtin_constant_p to BuiltinFunctionChecker

2018-02-03 Thread Felix Kostenzer via Phabricator via cfe-commits
sp4r74n-117 updated this revision to Diff 132738. sp4r74n-117 added a comment. Thanks for the feedback. I've added two additional tests to 'test_constant_p' for the case where an expression evaluating to a constant 0 is passed to the builtin. The existing tests have been refactored to check

r324170 - [RISCV] Create a LinuxTargetInfo when targeting Linux

2018-02-03 Thread Alex Bradbury via cfe-commits
Author: asb Date: Sat Feb 3 03:56:11 2018 New Revision: 324170 URL: http://llvm.org/viewvc/llvm-project?rev=324170=rev Log: [RISCV] Create a LinuxTargetInfo when targeting Linux Previously, RISCV32TargetInfo or RISCV64TargetInfo were created unconditionally. Use

[PATCH] D41655: [clang-tidy] New check bugprone-unused-return-value

2018-02-03 Thread Kalle Huttunen via Phabricator via cfe-commits
khuttun added a comment. > From what I can tell of these reports, they almost all boil down to ignoring > the call to `release()` because the pointer is no longer owned by the > `unique_ptr`. This is a pretty reasonable code pattern, but it also seems > reasonable to expect users to cast the