[PATCH] D45131: [AST] Refactor UnaryTransformType into TransformTraitType supporting non-unary transforms

2018-04-05 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: lib/AST/ItaniumMangle.cpp:3250-3251 - mangleType(T->getBaseType()); + for (auto Ty : T->getArgs()) +mangleType(Ty); } EricWF wrote: > rsmith wrote: > > We need manglings to be self-delimiting, and we can't tell w

[PATCH] D45131: [AST] Refactor UnaryTransformType into TransformTraitType supporting non-unary transforms

2018-04-06 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 141293. EricWF marked 2 inline comments as done. EricWF added a comment. Address all inline comments. - Dynamically allocate `TransformTraitType`s list of argument types; making the node trivially destructible. - Detect and handle parameter packs when buildin

[PATCH] D45410: [Sema] Remove dead code in BuildAnonymousStructUnionMemberReference. NFCI

2018-04-07 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. EricWF added reviewers: rsmith, aaron.ballman, majnemer, rjmccall. This patch cleans up a bunch of dead or unused code in BuildAnonymousStructUnionMemberReference. The dead code was a branch that built a new CXXThisExpr when we weren't given a base object expressio

[PATCH] D45411: [Sema] Fix PR35832 - Ambiguity accessing anonymous struct/union with multiple bases.

2018-04-07 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. EricWF added reviewers: rsmith, aaron.ballman, rjmccall. EricWF added a dependency: D45410: [Sema] Remove dead code in BuildAnonymousStructUnionMemberReference. NFCI. Currently clang doesn't do qualified lookup when building indirect field decl references. This caus

[PATCH] D45412: [Sema] Fix PR22637 - IndirectFieldDecl's discard qualifiers during template instantiation.

2018-04-07 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. EricWF added reviewers: rsmith, lebedev.ri, aaron.ballman, bkramer, rjmccall. Currently Clang fails to propagate qualifiers from the `CXXThisExpr` to the rebuilt `FieldDecl` for IndirectFieldDecls. For example: template struct Foo { struct { int x; }; int

[PATCH] D45411: [Sema] Fix PR35832 - Ambiguity accessing anonymous struct/union with multiple bases.

2018-04-07 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 141522. EricWF added a comment. - Upload with correct test. https://reviews.llvm.org/D45411 Files: lib/Sema/SemaExprMember.cpp test/SemaCXX/PR35832.cpp Index: test/SemaCXX/PR35832.cpp ===

[PATCH] D45412: [Sema] Fix PR22637 - IndirectFieldDecl's discard qualifiers during template instantiation.

2018-04-07 Thread Eric Fiselier via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rC329517: [Sema] Fix PR22637 - IndirectFieldDecl's discard qualifiers during template… (authored by EricWF, committed by ). Changed prior to commit: https://reviews.llvm.org/D45412?vs=141520&id=141523#toc

[PATCH] D45410: [Sema] Remove dead code in BuildAnonymousStructUnionMemberReference. NFCI

2018-04-07 Thread Eric Fiselier via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL329518: [Sema] Remove dead code in BuildAnonymousStructUnionMemberReference. NFCI (authored by EricWF, committed by ). Herald added a subscriber: llvm-commits. Changed prior to commit: https://reviews.

[PATCH] D45411: [Sema] Fix PR35832 - Ambiguity accessing anonymous struct/union with multiple bases.

2018-04-07 Thread Eric Fiselier via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rC329519: [Sema] Fix PR35832 - Ambiguity accessing anonymous struct/union with multiple… (authored by EricWF, committed by ). Repository: rC Clang https://reviews.llvm.org/D45411 Files: lib/Sema/SemaE

[PATCH] D45411: [Sema] Fix PR35832 - Ambiguity accessing anonymous struct/union with multiple bases.

2018-04-07 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 141527. EricWF added a comment. I missed a test failure. Reuploading and recommiting latest diff to keep the history. https://reviews.llvm.org/D45411 Files: lib/Sema/SemaExprMember.cpp lib/Sema/TreeTransform.h test/SemaCXX/PR35832.cpp Index: test/Se

[PATCH] D44411: [libcxx] [test] Fix Container::insert(value_type const&) tests

2018-04-08 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. LGTM. Thanks! https://reviews.llvm.org/D44411 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listi

[PATCH] D44411: [libcxx] [test] Fix Container::insert(value_type const&) tests

2018-04-08 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF closed this revision. EricWF added a comment. Committed as r329541. https://reviews.llvm.org/D44411 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D44773: [CMake] Use custom command and target to install libc++ headers

2018-04-08 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. There are a couple of new headers, `` and `` that should be added to the list before committing. Repository: rCXX libc++ https://reviews.llvm.org/D44773 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists

[PATCH] D45304: [libcxx] Set ABI version 2 as default for Fuchsia

2018-04-10 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: libcxx/CMakeLists.txt:100 "LIBCXX_ENABLE_EXPERIMENTAL_LIBRARY;LIBCXX_INSTALL_LIBRARY" OFF) -set(LIBCXX_ABI_VERSION 1 CACHE STRING "ABI version of libc++.") +if (FUCHSIA) + set(ABI_VERSION_DEFAULT 2) I don't thin

[PATCH] D45304: [libcxx] Set ABI version 2 as default for Fuchsia

2018-04-10 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. LGTM. Comment at: libcxx/include/__config:39 #ifndef _LIBCPP_ABI_VERSION +#ifdef __Fuchsia__ +#define _LIBCPP_ABI_VERSION 2 Please indent these nested `#ifd

[PATCH] D45476: [C++2a] Implement operator<=> CodeGen and ExprConstant

2018-04-10 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: include/clang/AST/ComparisonCategories.h:155-158 + const ComparisonCategoryInfo &getInfo(ComparisonCategoryKind Kind) const { +assert(HasData && "comparison category information not yet built"); +return Data[static_cast(Kind)]; +

[PATCH] D39405: std::set_union accesses values after move.

2017-10-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. We should backport this, right @mclow.lists? https://reviews.llvm.org/D39405 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D35472: Implement P0463R1: "Endian just Endian"

2017-11-03 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF requested changes to this revision. EricWF added inline comments. This revision now requires changes to proceed. Comment at: include/type_traits:4746 +big= 0xFACE, +#if _LIBCPP_LITTLE_ENDIAN +native = little These macros have been changed to be

[PATCH] D39537: Rename identifiers named `__output`

2017-11-06 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. LGTM minus inline comments. Comment at: test/support/nasty_macros.hpp:55 +#define __output NASTY_MACRO +#define __input NASTY_MACRO Shouldn't these not be

[PATCH] D39080: [libcxx] [test] Tolerate even more [[nodiscard]] in the STL.

2017-11-06 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. I think I would prefer if this patch "left an explicit trace" as to the reasons for all the `(void)` casts. Specifically I think a macro like `TEST_IGNORE_DISCARD ` might be nice. @BillyONeal

[PATCH] D38831: [libcxx] P0604, invoke_result and is_invocable

2017-11-06 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. LGTM. Thanks. @K-ballo I always forget. Do you have commit access? https://reviews.llvm.org/D38831 ___ cfe-commits mailing list cfe-commits@list

[PATCH] D40144: Implement `std::launder`

2017-11-18 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. I think we may want a `__launder` function that we can use internally in all dialects. Comment at: include/__config:458 +#if __has_builtin(__builtin_launder) +#define_LIBCPP_COMPILER_HAS_BUILTIN_LAUNDER +#endif These macros shou

[PATCH] D40210: [libc++] Shrink varient's index type when possible

2017-11-18 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. Currently `std::variant` always uses an unsigned int to store the variant index. However this isn't nessesary and causes `std::variant` to be larger than it needs to be in most cases. This patch changes the index type to be `unsigned char` when possible, and `unsi

[PATCH] D40217: [LIT] Fix testing out-of-tree Clang builds

2017-11-18 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. Herald added a reviewer: modocache. Currently, LIT configures the LLVM binary path before the Clang binary path. However this breaks testing out-of-tree Clang builds (where the LLVM binary path includes a copy of Clang). This patch reverses the order of the paths w

[PATCH] D40218: [Clang] Add __builtin_launder

2017-11-18 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. Herald added a subscriber: Prazek. This patch adds `__builtin_launder`, which is required to implement `std::launder`. Additionally GCC provides `__builtin_launder`, so thing brings Clang in-line with GCC. I'm not exactly sure what magic `__builtin_launder` require

[PATCH] D40218: [Clang] Add __builtin_launder

2017-11-18 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 123484. EricWF added a comment. - Remove incorrect FIXME comment. https://reviews.llvm.org/D40218 Files: include/clang/Basic/Builtins.def include/clang/Basic/DiagnosticSemaKinds.td lib/CodeGen/CGBuiltin.cpp lib/Sema/SemaChecking.cpp test/CodeGen/bu

[PATCH] D40217: [LIT] Fix testing out-of-tree Clang builds

2017-11-18 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 123485. EricWF added a comment. - Use style suggested by @mgorny. https://reviews.llvm.org/D40217 Files: utils/lit/lit/llvm/config.py Index: utils/lit/lit/llvm/config.py === --- utils/lit/li

[PATCH] D40144: Implement `std::launder`

2017-11-18 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. I've made an attempt to add `__builtin_launder` to clang in D40218 . https://reviews.llvm.org/D40144 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mail

[PATCH] D40217: [LIT] Fix testing out-of-tree Clang builds

2017-11-18 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. Accepting for post-commit review. I don't want to be carrying this patch locally. https://reviews.llvm.org/D40217 ___ cfe-commits mailing list c

[PATCH] D40210: [libc++] Shrink variant's index type when possible

2017-11-18 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked 4 inline comments as done. EricWF added inline comments. Comment at: include/variant:300-303 + std::tuple_element_t< + __choose_index_type(_NumElem), + std::tuple + >; mpark wrote: > Could we inline the whole thing and also avoid using t

[PATCH] D40210: [libc++] Shrink variant's index type when possible

2017-11-18 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 123492. EricWF added a comment. - Address inline comments. https://reviews.llvm.org/D40210 Files: include/__config include/variant test/libcxx/utilities/variant/variant.variant/variant_size.pass.cpp Index: test/libcxx/utilities/variant/variant.variant

[PATCH] D40218: [Clang] Add __builtin_launder

2017-11-19 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: include/clang/Basic/Builtins.def:480 BUILTIN(__builtin_thread_pointer, "v*", "nc") +BUILTIN(__builtin_launder, "v*v*", "nt") jroelofs wrote: > GCC's is type-generic: > > ``` > #include > > bool is_type_generic() { >

[PATCH] D40218: [Clang] Add __builtin_launder

2017-11-19 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 123516. EricWF added a comment. - Fix argument initialization. - Make constexpr. https://reviews.llvm.org/D40218 Files: include/clang/Basic/Builtins.def include/clang/Basic/DiagnosticSemaKinds.td lib/AST/ExprConstant.cpp lib/CodeGen/CGBuiltin.cpp l

[PATCH] D35470: [libcxx] Implement std::to_address for C++20

2017-11-19 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. Initially this LGTM. I'll take another pass in the morning. Comment at: include/memory:1096 template -inline _LIBCPP_INLINE_VISIBILITY +inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_AFTER_CXX17 _Tp* Just make this unconditionally

[PATCH] D40218: [Clang] Add __builtin_launder

2017-11-20 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 123627. EricWF added a comment. - Improve quality of tests. - Format code. https://reviews.llvm.org/D40218 Files: include/clang/Basic/Builtins.def include/clang/Basic/DiagnosticSemaKinds.td lib/AST/ExprConstant.cpp lib/CodeGen/CGBuiltin.cpp lib/Sem

[PATCH] D40259: [libcxx] LWG2993: reference_wrapper

2017-11-20 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF requested changes to this revision. EricWF added a comment. This revision now requires changes to proceed. I would much rather take this change in all dialects except for C++03. Comment at: include/__functional_base:398 +!is_same<__uncvref_t<_Up>, reference_wrapp

[PATCH] D40259: [libcxx] LWG2993: reference_wrapper

2017-11-20 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. Also, you're lacking tests for `noexcept` and the deduction guide. https://reviews.llvm.org/D40259 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D35470: [libcxx] Implement std::to_address for C++20

2017-11-20 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: test/std/utilities/memory/pointer.conversion/to_address.pass.cpp:119 +ASSERT_NOEXCEPT(std::to_address(p4)); +assert(std::to_address(p4) == &i); +} Shouldn't one of these tests hit a non-noexcept function? https:

[PATCH] D40181: [libcxx] Allow to set locale on Windows.

2017-11-20 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. This LGTM. I would love if another party interested in Windows could review it though. https://reviews.llvm.org/D40181 ___ cfe-commits mailing l

[PATCH] D29930: Add `__reference_binds_to_temporary` trait for checking safe reference initialization.

2017-11-20 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. @rsmith Ping. https://reviews.llvm.org/D29930 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D40259: [libcxx] LWG2993: reference_wrapper

2017-11-21 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: include/__functional_base:396 +!is_same<__uncvref_t<_Up>, reference_wrapper>::value +>::type, bool _IsNothrow = noexcept(__bind(_VSTD::declval<_Up>()))> +_LIBCPP_INLINE_VISIBILITY reference_wrapper(_Up&& __u) _NOEXCEPT_(_

[PATCH] D40259: [libcxx] LWG2993: reference_wrapper

2017-11-21 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: include/__functional_base:396 +!is_same<__uncvref_t<_Up>, reference_wrapper>::value +>::type, bool _IsNothrow = noexcept(__bind(_VSTD::declval<_Up>()))> +_LIBCPP_INLINE_VISIBILITY reference_wrapper(_Up&& __u) _NOEXCEPT_(_

[PATCH] D29930: Add `__reference_binds_to_temporary` trait for checking safe reference initialization.

2017-11-21 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked an inline comment as done. EricWF added inline comments. Comment at: test/SemaCXX/type-traits.cpp:2102-2116 + using LRef = ConvertsToRef; + using RRef = ConvertsToRef; + using CLRef = ConvertsToRef; + using LongRef = ConvertsToRef; + { int arr[T((__is_construct

[PATCH] D40279: [libcxxabi][demangler] Add demangling for __attribute__((abi_tag))

2017-11-21 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: src/cxa_demangle.cpp:10 +// FIXME: (possibly) incomplete list of features that clang mangles that this +// file does not yet support: Awesome comment! If your awesomeness knows no bound, I would love to add currently-f

[PATCH] D29930: Add `__reference_binds_to_temporary` trait for checking safe reference initialization.

2017-11-21 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 123741. EricWF added a comment. - Address spelling errors pointed out during review. https://reviews.llvm.org/D29930 Files: docs/LanguageExtensions.rst include/clang/Basic/TokenKinds.def include/clang/Basic/TypeTraits.h lib/Parse/ParseDeclCXX.cpp l

[PATCH] D40279: [libcxxabi][demangler] Add demangling for __attribute__((abi_tag))

2017-11-21 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. LGTM. Thanks. https://reviews.llvm.org/D40279 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listi

[PATCH] D40065: [libcxx] [test] Change (void)s to TEST_IGNORE_NODISCARD as requested by Eric.

2017-11-21 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. LGTM. https://reviews.llvm.org/D40065 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-

[PATCH] D40144: Implement `std::launder`

2017-11-21 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: include/new:274 +{ +return __launder(__p); +} The call should probably be qualified to `_VSTD::__launder`. Comment at: test/std/language.support/support.dynamic/ptr.launder/launder.nodiscard.fail.c

[PATCH] D40144: Implement `std::launder`

2017-11-21 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: test/std/language.support/support.dynamic/ptr.launder/launder.nodiscard.fail.cpp:16 +// UNSUPPORTED: c++98, c++03, c++11, c++14, c++17 +// UNSUPPORTED: clang-3.3, clang-3.4, clang-3.5, clang-3.6, clang-3.7, clang-3.8 +

[PATCH] D27606: [libcxx] Fix tuple construction/assignment from types derived from tuple/pair/array.

2016-12-14 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 81456. EricWF marked 4 inline comments as done. EricWF added a comment. Address review comments. @mpark any other concerns/comments? https://reviews.llvm.org/D27606 Files: include/__tuple include/tuple include/type_traits test/std/utilities/tuple/t

[PATCH] D27612: [libcxx] Fix PR24075, PR23841 - Add scoped_allocator_adaptor::construct(pair*, ...) overloads.

2016-12-14 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a reviewer: EricWF. EricWF added a comment. This revision is now accepted and ready to land. Accepting for post-commit review. Comment at: include/scoped_allocator:644 +{ +using _Tup = tuple<_Args&&..., inner_allocator_typ

[PATCH] D27606: [libcxx] Fix tuple construction/assignment from types derived from tuple/pair/array.

2016-12-14 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a reviewer: EricWF. EricWF added a comment. Accepting revision. @mpark mentioned that this was good to go offline. Ignore the inline comment about `base.operator=`, phab won't let me delete it. Comment at: include/tuple:884

[PATCH] D27606: [libcxx] Fix tuple construction/assignment from types derived from tuple/pair/array.

2016-12-14 Thread Eric Fiselier via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL289727: [libcxx] Fix tuple construction/assignment from types derived from… (authored by EricWF). Changed prior to commit: https://reviews.llvm.org/D27606?vs=81456&id=81476#toc Repository: rL LLVM h

[PATCH] D27786: [libcxx] [test] Strip trailing whitespace.

2016-12-14 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. You can commit whitespace and formatting changes w/o review. https://reviews.llvm.org/D27786 ___ cfe-commits mailing list cfe-commits@lists.llvm.

[PATCH] D27850: [libcxx] add missing constexpr to optional::value_or

2016-12-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF requested changes to this revision. EricWF added a comment. This revision now requires changes to proceed. Tests please! They should be somewhere under `test/std/utilities/optional/optional.object/optional.object.observe` https://reviews.llvm.org/D27850 ___

[PATCH] D27785: [libcxx] [test] Fix recently introduced warnings emitted by MSVC.

2016-12-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. Sorry about that. I'm working to turn on -Wunused-parameter and others to avoid these issues. https://reviews.llvm.org/D27785 ___ cfe-commits ma

[PATCH] D27785: [libcxx] [test] Fix recently introduced warnings emitted by MSVC.

2016-12-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. Alright. The unused parameter parts of this patch are no longer needed. `-Wunused-parameter` and `-Wunused-variable` have been enabled within libc++. Just working on `-Wsign-compare` now. https://reviews.llvm.org/D27785 ___

[PATCH] D27785: [libcxx] [test] Fix recently introduced warnings emitted by MSVC.

2016-12-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. `-Wsign-compare` has also landed :-) Now just `-Wconversion` to go (but that will likely take a while). https://reviews.llvm.org/D27785 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/ma

[PATCH] D27614: Mark tests as unsupported under libcpp-no-exceptions

2016-12-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. I'm OK with this change. Although I'm not 100% sure it's needed, since the XFAIL seems to work for these tests. However using UNSUPPORTED is more consistent with other tests. https://reviews

[PATCH] D27429: [Chrono][Darwin] On Darwin use CLOCK_UPTIME_RAW instead of CLOCK_MONOTONIC

2016-12-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF requested changes to this revision. EricWF added a comment. This revision now requires changes to proceed. Marking as changes requested. Please make sure we fall back to the old implementation on Apple platforms when `CLOCK_UPTIME_RAW` isn't available. https://reviews.llvm.org/D27429

[PATCH] D27575: [libcxxabi] Introduce an externally threaded libc++abi variant (take-2)

2016-12-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. LGTM. I'll re-review the mutexor changes post-commit. Comment at: CMakeLists.txt:121 option(LIBCXXABI_HAS_PTHREAD_API "Ignore auto-detection and force use of pthread API" O

[PATCH] D27576: [libcxx] libc++ changes necessary for the externally threaded libcxxabi variant

2016-12-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. LGTM. Comment at: test/CMakeLists.txt:58 if (LIBCXX_ENABLE_EXPERIMENTAL_LIBRARY) + set(LIBCXX_TEST_DEPS cxx_experimental) I always prefer `set(LIBCXX_TES

[PATCH] D13289: [libc++] Provide additional templates for valarray transcendentals that satisfy the standard synopsis

2016-12-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. wow this is old. I'll try and re-review before the new year. https://reviews.llvm.org/D13289 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D27513: Move clang's ParseHelper into Support (clang part)

2016-12-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF resigned from this revision. EricWF removed a reviewer: EricWF. EricWF added a comment. Resigning as a reviewer since I don't feel comfortable reviewing generic LLVM patches. Repository: rL LLVM https://reviews.llvm.org/D27513 ___ cfe-com

[PATCH] D27658: [libcxx] Fix all occurrences of -Wsign-compare in the headers

2016-12-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF abandoned this revision. EricWF added a comment. Another fix was applied for this. https://reviews.llvm.org/D27658 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D27153: [libc++] Make __num_get_float hidden

2016-12-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. LGTM. https://reviews.llvm.org/D27153 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D27402: [libc++] Implement pmr::monotonic_buffer_resource

2016-12-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a reviewer: EricWF. EricWF added a comment. This revision is now accepted and ready to land. This review hasn't generated any interest in ~3 weeks. Accepting for post-commit review. https://reviews.llvm.org/D27402 __

[PATCH] D27850: [libcxx] add missing constexpr to optional::value_or

2016-12-27 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. The changes to `` LGTM but not the ones to `` Unfortunately libc++'s `` doesn't yet implement LFTS v2 so all of the other non-const observers are also not constexpr in our implementation. I t

[PATCH] D28131: [libcxx] Fix PR31402: map::__find_equal_key has undefined behavior.

2016-12-27 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. EricWF added reviewers: mclow.lists, vsk. EricWF added a subscriber: cfe-commits. This patch fixes llvm.org/PR31402 by replacing `map::__find_equal_key` with `__tree::__find_equal`, which has already addressed the same undefined behavior. Unfortunately I haven't bee

[PATCH] D13332: [libcxx] Remove uses of std::unique_ptr from test to prevent warning.

2016-12-27 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF abandoned this revision. EricWF added a comment. This was already committed. https://reviews.llvm.org/D13332 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D13796: [libcxx] Use "-stdlib=libc++" when possible instead of '-nodefaultlibs' in the test suite.

2016-12-27 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF abandoned this revision. EricWF added a comment. This is long dead. https://reviews.llvm.org/D13796 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D20800: Make placeholders constexpr in C++17

2016-12-27 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF abandoned this revision. EricWF added a comment. Already committed. https://reviews.llvm.org/D20800 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D23495: Remove std::tuple's reduced-arity-extension on implicit constructors.

2016-12-27 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF abandoned this revision. EricWF added a comment. Another version of this has already been committed. https://reviews.llvm.org/D23495 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-co

[PATCH] D24599: Add 'inline' but not _LIBCPP_INLINE_VISIBILITY to basic_string's destructor

2016-12-27 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF abandoned this revision. EricWF added a comment. Another version of this has already been committed. https://reviews.llvm.org/D24599 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-co

[PATCH] D27575: [libcxxabi] Introduce an externally threaded libc++abi variant (take-2)

2016-12-29 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. Why don't we commit this as is and we can deal with the mutex later? https://reviews.llvm.org/D27575 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D28172: [libcxx] Remove unexpected handlers in C++17

2016-12-29 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. EricWF added a reviewer: mclow.lists. EricWF added subscribers: cfe-commits, mclow.lists. This patch implements P0003R5 which removes exception specifications from C++17. The only changes to the

[PATCH] D26829: [clang] Allow lexer to handle string_view literals

2016-12-29 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF closed this revision. EricWF added a comment. Committed on behalf of @AntonBikineev in r290744. https://reviews.llvm.org/D26829 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D26830: [libcxx] Add string_view literals

2016-12-29 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. Alright. I committed the Clang changes. Just re-building now so I can test this. Comment at: include/string_view:780 +} // namespace literals +#endif + `// _LIBCPP_STD_VER > 14` comment please. Comment at: test/std/st

[PATCH] D26949: [libc++abi] Clean up visibility

2016-12-29 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: src/abort_message.cpp:25 -#pragma GCC visibility push(hidden) - Is this really redundant? There is an `#include ` after it. Is this not going to affect those symbols? Comment at: src/cxa_handlers.hpp

[PATCH] D27430: [libc++] Annotate template methods with visibility

2016-12-29 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. Please put these attributes to the first declaration instead of the definition. Comment at: include/thread:392 template +_LIBCPP_HIDDEN thread::thread(_Fp __f) We really should hide this using `inline _LIBCPP_INLINE_VISIBILITY` becaus

[PATCH] D28174: [libcxx] [NFC] Rename _LIBCPP_TYPE_VIS_ONLY to _LIBCPP_TEMPLATE_VIS.

2016-12-29 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D28174#632662, @smeenai wrote: > As you're aware, I have plans to change `_LIBCPP_TYPE_VIS` to expand to > `visibility` instead of `type_visibility`. I had forgotten. Thanks for the reminder. > but I still think this rename makes sense. Awe

[PATCH] D25811: [libcxx] Fix toupper/tolower tests for UTF-8 locale

2016-12-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D25811#586053, @kparzysz wrote: > In https://reviews.llvm.org/D25811#586000, @arphaman wrote: > > > I've tested this patch on OS X and these 4 tests that you've changed now > > fail. > > > > The `XFAIL: with_system_cxx_lib` lines don't have any

[PATCH] D26244: [Driver] Prefer libraries installed next to Clang over those from GCC

2016-12-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF resigned from this revision. EricWF removed a reviewer: EricWF. EricWF added a comment. I don't feel comfortable reviewing driver changes, since I never work on that code. https://reviews.llvm.org/D26244 ___ cfe-commits mailing list cfe-comm

[PATCH] D23831: [libcxx] Fix gcc 4.9 -Wcast-qual warning.

2016-12-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF resigned from this revision. EricWF removed a reviewer: EricWF. EricWF added a comment. Resigning as a reviewer since this revision is dead. https://reviews.llvm.org/D23831 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.

[PATCH] D22584: constexpr array support C++1z (P0031)

2016-12-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. @lefticus Are you still interested in working on this? If so could you please split the changes for `array` into a separate patch? Marshall seems to have implemented some of the changes in `` and that's causing merge conflicts. https://reviews.llvm.org/D22584 __

[PATCH] D27068: Improve string::find

2016-12-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. Holy crap those improvements are impressive. This LGTM. I'm assuming @mclow.lists has nothing left to say about this. Comment at: libcxx/include/__string:542 +template +_LI

[PATCH] D24991: Inline hot functions in libcxx shared_ptr implementation.

2016-12-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF requested changes to this revision. EricWF added a reviewer: EricWF. EricWF added a comment. This revision now requires changes to proceed. Added a bunch of inline comments. The biggest requested change is removing the `__atomic_support` header. We only need one atomic call within the hea

[PATCH] D17053: [libcxx]: vector: Use < instead of != to improve failure mode

2016-12-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. Maybe if we want to improve the failure mode we can add a `_LIBCPP_ASSERT(__new_last <= __end, "invalid range")`? https://reviews.llvm.org/D17053 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/

[PATCH] D23041: Un-XFAIL GCC atomics.align

2016-12-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. Have you filed a bug against GCC regarding its current behavior? Also it seems like a bad idea to add `-fabi-version=6`, since it selects an older ABI version and not a newer one. Testing the old behavior is not what we want. I think the best plan is to simply split the

[PATCH] D14686: Protect against overloaded comma in random_shuffle and improve tests

2016-12-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. @gribozavr The tests have changed a bunch since this patch was created. I took the liberty of re-merging the tests. You can find the updated patch here: https://gist.github.com/EricWF/a69933b7

[PATCH] D15434: [libcxx] Export 2 basic_string methods to minimize the effect from internal_linkage switch

2016-12-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF resigned from this revision. EricWF removed a reviewer: EricWF. EricWF added a comment. Resigning as reviewer. These changes are quite old, and can be redone if needed. In all likelihood I think I would rather remove the symbols from the dylib instead of keep them. Repository: rL LLVM

[PATCH] D21599: [Libcxx][MIPS] Use LLVM CheckAtomic.cmake module to figure out whether we need to link with libatomic.

2016-12-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D21599#481593, @dsanders wrote: > I haven't used it that way either and I'm not sure it's a supported build for > libcxx but most LLVM projects support a standalone build as far as I know. > Can someone from the libcxx project confirm whether

[PATCH] D25208: [libc++] Make _LIBCPP_TYPE_VIS export members

2017-01-02 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. Yeah, that sounds good. I want to do more investigation into this as well. https://reviews.llvm.org/D25208 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D28211: typeinfo: provide a destructor for type_info

2017-01-02 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. I committed the fix needed for this as part of a larger change in r290839. Please abandon this revision. Repository: rL LLVM https://reviews.llvm.org/D28211 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://l

[PATCH] D28210: system_error: inline error_category ctor on Win32

2017-01-02 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. I committed a different fix for this patch in r290840. Instead of just fixing this on Windows it makes the removal of this definition an ABI option, which it then disables on Windows by default. Repository: rL LLVM https://reviews.llvm.org/D28210 _

[PATCH] D28220: provide Win32 native threading

2017-01-02 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. Added inline comments. The main issue is that this patch needs to use the same `<__threading_support>` forward declarations as every other supported threading API; Only new definitions should be provided. Comment at: include/__threading_support:33 #i

[PATCH] D28212: typeinfo: provide a partial implementation for Win32

2017-01-02 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. I would really rather see a single definition of the `typeinfo` class between all platforms, but I see how that could get messy. How about instead of declaring a new one we use the existing class definition, but move all of the method definitions out-of-line and then def

[PATCH] D28212: typeinfo: provide a partial implementation for Win32

2017-01-02 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF commandeered this revision. EricWF edited reviewers, added: compnerd; removed: EricWF. EricWF added a comment. Stealing this revision to update with the requested style changes: @compnerd please steal this back. Repository: rL LLVM https://reviews.llvm.org/D28212 __

[PATCH] D28212: typeinfo: provide a partial implementation for Win32

2017-01-02 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF removed rL LLVM as the repository for this revision. EricWF updated this revision to Diff 82825. EricWF added a comment. Update with the prefered style changes. @compnerd please still this revision back when ready. https://reviews.llvm.org/D28212 Files: include/typeinfo src/typeinfo

[PATCH] D28222: [libcxx] Re-implement LWG 2770 again: Fix tuple_size to work with structured bindings

2017-01-02 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. EricWF added reviewers: mclow.lists, rsmith. EricWF added a subscriber: cfe-commits. This patch attempts to re-implement a fix for LWG 2770, but not the actual specified PR. The PR for 2770 specifies tuple_size as only conditionally providing a `::value` member. Ho

<    1   2   3   4   5   6   7   8   9   10   >