[libcxx] r291343 - [libc++] Implement terminate(), unexpected() and uncaught_exceptions() on Windows

2017-01-07 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Jan 7 04:04:40 2017 New Revision: 291343 URL: http://llvm.org/viewvc/llvm-project?rev=291343&view=rev Log: [libc++] Implement terminate(), unexpected() and uncaught_exceptions() on Windows Summary: This patch implements the following functions on Windows by forwarding t

[libcxx] r291345 - Replace identifiers called `__out` because Windows.h #defines it.

2017-01-07 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Jan 7 05:27:06 2017 New Revision: 291345 URL: http://llvm.org/viewvc/llvm-project?rev=291345&view=rev Log: Replace identifiers called `__out` because Windows.h #defines it. Windows is greedy and it defines the identifier `__out` as a macro. This patch renames all conflic

[libcxx] r278736 - Fix new ASAN failures

2016-08-15 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Mon Aug 15 15:50:01 2016 New Revision: 278736 URL: http://llvm.org/viewvc/llvm-project?rev=278736&view=rev Log: Fix new ASAN failures Modified: libcxx/trunk/test/libcxx/containers/sequences/vector/asan.pass.cpp libcxx/trunk/test/support/test.support/test_macros_header

[PATCH] D23524: [libc++abi] Fix backtrace_test.pass.cpp failure seemingly caused by inlining differences.

2016-08-15 Thread Eric Fiselier via cfe-commits
EricWF created this revision. EricWF added reviewers: danalbert, jroelofs, mclow.lists. EricWF added a subscriber: cfe-commits. The modified assertion fails when the test is compiled at various optimization levels. The value of `nothrow_traced` and `throw_traced` at various optimization levels a

Re: [PATCH] D23385: Implement __attribute__((require_constant_initialization)) for safe static initialization.

2016-08-15 Thread Eric Fiselier via cfe-commits
EricWF marked 7 inline comments as done. Comment at: include/clang/Basic/AttrDocs.td:844 @@ +843,3 @@ +the indeterminate order of dynamic initialization. They can also be safely +used by other static constructors across translation units. + rsmith wrote: > static

Re: [PATCH] D23385: Implement __attribute__((require_constant_initialization)) for safe static initialization.

2016-08-15 Thread Eric Fiselier via cfe-commits
EricWF updated this revision to Diff 68094. EricWF marked 2 inline comments as done. EricWF added a comment. Address most of @rsmiths review comments. https://reviews.llvm.org/D23385 Files: include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Basic/DiagnosticSemaKinds

Re: [PATCH] D23385: Implement __attribute__((require_constant_initialization)) for safe static initialization.

2016-08-15 Thread Eric Fiselier via cfe-commits
EricWF added inline comments. Comment at: lib/Sema/SemaDecl.cpp:10519-10520 @@ +10518,4 @@ + auto *CE = dyn_cast(Init); + bool DiagErr = (var->isInitKnownICE() || (CE && CE->getConstructor()->isConstexpr())) + ? !var->checkInitIsICE() : !checkConstInit(); +

Re: [PATCH] D23385: Implement __attribute__((require_constant_initialization)) for safe static initialization.

2016-08-15 Thread Eric Fiselier via cfe-commits
EricWF updated this revision to Diff 68121. EricWF added a comment. Do strict 'constant initializer' checking in C++11, but fall back to `isConstantInitializer()` in C++03. Add documentation about non-strict C++03 checking. This has weird results for POD types, for example: struct PODType {

Re: [clang-tools-extra] r278760 - [clang-rename] cleanup `auto` usages

2016-08-15 Thread Eric Fiselier via cfe-commits
On Mon, Aug 15, 2016 at 5:20 PM, Kirill Bobyrev via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: omtcyfz > Date: Mon Aug 15 18:20:05 2016 > New Revision: 278760 > > URL: http://llvm.org/viewvc/llvm-project?rev=278760&view=rev > Log: > [clang-rename] cleanup `auto` usages > > As Alexa

[libcxxabi] r278773 - Default LIBCXXABI_LIBDIR_SUFFIX to LLVM_LIBDIR_SUFFIX

2016-08-15 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Mon Aug 15 22:44:55 2016 New Revision: 278773 URL: http://llvm.org/viewvc/llvm-project?rev=278773&view=rev Log: Default LIBCXXABI_LIBDIR_SUFFIX to LLVM_LIBDIR_SUFFIX Modified: libcxxabi/trunk/CMakeLists.txt Modified: libcxxabi/trunk/CMakeLists.txt URL: http://llvm.org/v

Re: [PATCH] D7511: [libc++] Change how CMake links libc++ with OS X.

2016-08-16 Thread Eric Fiselier via cfe-commits
EricWF abandoned this revision. EricWF added a comment. Abandoning https://reviews.llvm.org/D7511 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D23696: [CMake] Get libcxx building under LLVM/runtimes

2016-08-18 Thread Eric Fiselier 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/D23696 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-c

Re: [PATCH] D22834: Added 'inline' attribute to basic_string's destructor

2016-08-22 Thread Eric Fiselier via cfe-commits
EricWF added a comment. No benchmark needed but one would be appreciated if possible. https://reviews.llvm.org/D22834 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D23791: [libc++] Perform configuration checks with -nodefaultlibs

2016-08-22 Thread Eric Fiselier via cfe-commits
What platforms was this tested on? On Aug 22, 2016 9:20 PM, "Shoaib Meenai" wrote: > smeenai created this revision. > smeenai added reviewers: beanz, compnerd, EricWF, mclow.lists, rsmith. > smeenai added a subscriber: cfe-commits. > > We're compiling libc++ with -nodefaultlibs, so we should als

Re: [PATCH] D23791: [libc++] Perform configuration checks with -nodefaultlibs

2016-08-23 Thread Eric Fiselier via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. I think this makes sense. https://reviews.llvm.org/D23791 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/m

Re: [PATCH] D23926: [libcxx] Don't use C99 math ops in -std=c++03 mode

2016-08-26 Thread Eric Fiselier via cfe-commits
EricWF added a comment. We already provide many C++11 extensions in C++03 mode, why should this be an exception? https://reviews.llvm.org/D23926 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/

Re: [PATCH] D23961: Avoid embedded preprocessor directives in __tree

2016-08-27 Thread Eric Fiselier 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/D23961 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listin

[libcxxabi] r279936 - [CMake] Apply r279151 cleanup to libc++abi.

2016-08-28 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sun Aug 28 13:16:18 2016 New Revision: 279936 URL: http://llvm.org/viewvc/llvm-project?rev=279936&view=rev Log: [CMake] Apply r279151 cleanup to libc++abi. This patch applies changes similar to those in r279515 to libc++abi. Summary of changes in this patch: * Renamed varia

[libcxxabi] r279938 - [CMake] Be more consistent about naming targets and components in libc++abi

2016-08-28 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sun Aug 28 13:28:51 2016 New Revision: 279938 URL: http://llvm.org/viewvc/llvm-project?rev=279938&view=rev Log: [CMake] Be more consistent about naming targets and components in libc++abi This patch (and commit summary) mirror r279675 by Chris B which was applied to libc++ bu

[libcxx] r279940 - [Docs] Update libc++ target names after r279675.

2016-08-28 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sun Aug 28 13:33:08 2016 New Revision: 279940 URL: http://llvm.org/viewvc/llvm-project?rev=279940&view=rev Log: [Docs] Update libc++ target names after r279675. Modified: libcxx/trunk/CMakeLists.txt libcxx/trunk/docs/BuildingLibcxx.rst Modified: libcxx/trunk/CMakeLis

[libcxx] r279945 - Implement LWG 2711. Constrain path members.

2016-08-28 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sun Aug 28 16:26:01 2016 New Revision: 279945 URL: http://llvm.org/viewvc/llvm-project?rev=279945&view=rev Log: Implement LWG 2711. Constrain path members. Modified: libcxx/trunk/include/experimental/filesystem libcxx/trunk/test/std/experimental/filesystem/class.path

[libcxx] r279947 - Mark LWG 2716 as complete - shuffle and sample disallows lvalue URNGs.

2016-08-28 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sun Aug 28 16:55:00 2016 New Revision: 279947 URL: http://llvm.org/viewvc/llvm-project?rev=279947&view=rev Log: Mark LWG 2716 as complete - shuffle and sample disallows lvalue URNGs. Libc++'s implementation of shuffle and sample already support lvalue and rvalue RNG's. This

[libcxx] r279948 - Implement C++17 std::sample.

2016-08-28 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sun Aug 28 17:14:37 2016 New Revision: 279948 URL: http://llvm.org/viewvc/llvm-project?rev=279948&view=rev Log: Implement C++17 std::sample. This patch implements the std::sample function added to C++17 from LFTS. It also removes the std::experimental::sample implementation w

cfe-commits@lists.llvm.org

2016-08-28 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sun Aug 28 20:09:47 2016 New Revision: 279953 URL: http://llvm.org/viewvc/llvm-project?rev=279953&view=rev Log: Fix pair::operator=(TupleLike&&). This assignment operator was previously broken since the SFINAE always resulted in substitution failure. This caused assignments t

cfe-commits@lists.llvm.org

2016-08-28 Thread Eric Fiselier via cfe-commits
@Hans While working on the std::tuple bug I found this bug in std::pair. Since we are already doing another RC I would like to merge this fix. @Marshall Sound OK to you? On Sun, Aug 28, 2016 at 7:09 PM, Eric Fiselier via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: eric

cfe-commits@lists.llvm.org

2016-08-28 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sun Aug 28 20:39:54 2016 New Revision: 279954 URL: http://llvm.org/viewvc/llvm-project?rev=279954&view=rev Log: Revert r279953 - Fix pair::operator=(TupleLike&&) The test emits warnings causing the test-suite to fail. Since I want this patch merged into 3.9 I'll recommit it w

cfe-commits@lists.llvm.org

2016-08-28 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sun Aug 28 20:43:41 2016 New Revision: 279955 URL: http://llvm.org/viewvc/llvm-project?rev=279955&view=rev Log: Fix pair::operator=(TupleLike&&). This assignment operator was previously broken since the SFINAE always resulted in substitution failure. This caused assignments t

cfe-commits@lists.llvm.org

2016-08-28 Thread Eric Fiselier via cfe-commits
@Hans While working on the std::tuple bug I found this bug in std::pair. Since we are already doing another RC I would like to merge this fix. @Marshall Sound OK to you? /Eric On Sun, Aug 28, 2016 at 7:43 PM, Eric Fiselier via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Autho

cfe-commits@lists.llvm.org

2016-08-28 Thread Eric Fiselier via cfe-commits
nd OK to you? > > On Sun, Aug 28, 2016 at 7:09 PM, Eric Fiselier via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> Author: ericwf >> Date: Sun Aug 28 20:09:47 2016 >> New Revision: 279953 >> >> URL: http://llvm.org/viewvc/llvm-project?

Re: [PATCH] D23999: [libc++] Minimal std::tuple fix for PR29123

2016-08-29 Thread Eric Fiselier via cfe-commits
EricWF updated this revision to Diff 69591. EricWF added a comment. Add testcase to patch. https://reviews.llvm.org/D23999 Files: include/__tuple include/tuple test/std/utilities/tuple/tuple.tuple/tuple.cnstr/PR29123_implicit_constructor_sfinae.pass.cpp Index: test/std/utilities/tuple/

Re: [PATCH] D23856: [libc++] Perform configuration checks with -nodefaultlibs

2016-08-29 Thread Eric Fiselier via cfe-commits
EricWF added inline comments. Comment at: cmake/config-ix.cmake:18 @@ +17,3 @@ +if (LIBCXX_SUPPORTS_NODEFAULTLIBS_FLAG) + list(APPEND CMAKE_REQUIRED_LIBRARIES -nodefaultlibs) + if (LIBCXX_HAS_C_LIB) smeenai wrote: > smeenai wrote: > > compnerd wrote: > > > Can w

[libcxx] r279989 - Update Google Benchmark library.

2016-08-29 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Mon Aug 29 14:12:01 2016 New Revision: 279989 URL: http://llvm.org/viewvc/llvm-project?rev=279989&view=rev Log: Update Google Benchmark library. Added: libcxx/trunk/utils/google-benchmark/test/output_test.h libcxx/trunk/utils/google-benchmark/test/output_test_helper.c

[libcxx] r279999 - Turn On -DLIBCXX_ENABLE_BENCHMARKS by default.

2016-08-29 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Mon Aug 29 14:50:49 2016 New Revision: 27 URL: http://llvm.org/viewvc/llvm-project?rev=27&view=rev Log: Turn On -DLIBCXX_ENABLE_BENCHMARKS by default. This patch enables the `cxx-benchmarks` target by default. Note that the target still has to be manually invoked sinc

[libcxx] r280007 - Fix or suppress GCC warnings during build.

2016-08-29 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Mon Aug 29 15:43:38 2016 New Revision: 280007 URL: http://llvm.org/viewvc/llvm-project?rev=280007&view=rev Log: Fix or suppress GCC warnings during build. Summary: Currently a number of GCC warnings are emitted when building libc++. This patch fixes or ignores all of them. T

Re: [PATCH] D24007: [CMake] Use -std=c++11 if supported

2016-08-29 Thread Eric Fiselier via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. LGTM. I'm surprised we don't already require C++11. Comment at: cmake/config-ix.cmake:40 @@ -39,1 +39,3 @@ check_cxx_compiler_flag(/GR- LIBCXXABI_HAS_NO_GR_F

[PATCH] D24012: Fix strict-aliasing violation in typeinfo::hash_code()

2016-08-29 Thread Eric Fiselier via cfe-commits
EricWF created this revision. EricWF added reviewers: mclow.lists, howard.hinnant. EricWF added a subscriber: cfe-commits. The current implementation of `hash_code()` for uniqued RTTI strings violates strict aliasing by dereferencing a type-punned pointer. Specifically it generates a `const char

[libcxx] r280037 - Fix PR28831 - Bad logic around CMAKE_OSX_SYSROOT and CMAKE_OSX_ARCHITECTURES.

2016-08-29 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Mon Aug 29 19:54:37 2016 New Revision: 280037 URL: http://llvm.org/viewvc/llvm-project?rev=280037&view=rev Log: Fix PR28831 - Bad logic around CMAKE_OSX_SYSROOT and CMAKE_OSX_ARCHITECTURES. See https://llvm.org/bugs/show_bug.cgi?id=28831 for more information about the changes

[libcxx] r280042 - Fix syntax error in recent CMake change.

2016-08-29 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Mon Aug 29 20:10:33 2016 New Revision: 280042 URL: http://llvm.org/viewvc/llvm-project?rev=280042&view=rev Log: Fix syntax error in recent CMake change. Modified: libcxx/trunk/lib/CMakeLists.txt Modified: libcxx/trunk/lib/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-

[libcxx] r280050 - Add "FLAKY_TEST" test directive to support re-running flaky tests.

2016-08-29 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Mon Aug 29 20:46:43 2016 New Revision: 280050 URL: http://llvm.org/viewvc/llvm-project?rev=280050&view=rev Log: Add "FLAKY_TEST" test directive to support re-running flaky tests. Some of the mutex tests fail on machines with high load. This patch implements the test directive

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

2016-08-30 Thread Eric Fiselier via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D23831#528637, @halyavin wrote: > Thank you for fixing most of warnings. Now it says "cc1plus: warning: > unrecognized command line option "-Wno-c++14-compat"" though. No worries, it was driving me nuts. The addition of `-Wno-c++14-compat` an

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

2016-08-30 Thread Eric Fiselier via cfe-commits
EricWF added a comment. The reason I'm dragging my feet on this patch is I'm not sure the two formulations are *exactly* equivalent. I need to re-read the standard to be sure. What's the motivation for fixing a warning which libc++ never tests against? Normally the headers are treated as syste

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

2016-08-30 Thread Eric Fiselier via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D23831#528666, @halyavin wrote: > We have libc++ in our source tree and compile it as part of our build > process. All code in the source tree uses -Werror by default, so I am having > compile errors on gcc 4.9. Are you also compiling with `

Re: [PATCH] D23385: Implement __attribute__((require_constant_initialization)) for safe static initialization.

2016-08-30 Thread Eric Fiselier via cfe-commits
EricWF marked 3 inline comments as done. Comment at: include/clang/Basic/AttrDocs.td:836 @@ +835,3 @@ + let Content = [{ +This attribute specifies that the variable to which it is attached is intended +to have a `constant initializer

Re: [PATCH] D23385: Implement __attribute__((require_constant_initialization)) for safe static initialization.

2016-08-30 Thread Eric Fiselier via cfe-commits
EricWF updated this revision to Diff 69761. EricWF added a comment. Address all comments except making the attribute C++ only. https://reviews.llvm.org/D23385 Files: include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema

Re: [PATCH] D23385: Implement __attribute__((require_constant_initialization)) for safe static initialization.

2016-08-30 Thread Eric Fiselier via cfe-commits
EricWF updated this revision to Diff 69775. EricWF added a comment. Make the attribute C++ only. https://reviews.llvm.org/D23385 Files: include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema/AttributeList.h lib/Sema/Se

Re: [PATCH] D23385: Implement __attribute__((require_constant_initialization)) for safe static initialization.

2016-08-30 Thread Eric Fiselier via cfe-commits
EricWF marked an inline comment as done. Comment at: utils/TableGen/ClangAttrEmitter.cpp:2794 @@ -2794,1 +2793,3 @@ +if ((*I)->getValueAsBit("Negated")) { + FnName += "Not"; Test += "!"; This is needed so that the `COnly` and `CPlusPlus` entries in

Re: [PATCH] D23385: Implement __attribute__((require_constant_initialization)) for safe static initialization.

2016-08-30 Thread Eric Fiselier via cfe-commits
EricWF added inline comments. Comment at: include/clang/Basic/AttrDocs.td:836 @@ +835,3 @@ + let Content = [{ +This attribute specifies that the variable to which it is attached is intended +to have a `constant initializer

Re: [PATCH] D23385: Implement __attribute__((require_constant_initialization)) for safe static initialization.

2016-08-30 Thread Eric Fiselier via cfe-commits
EricWF added a comment. Are there any remaining issues with this patch? https://reviews.llvm.org/D23385 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

cfe-commits@lists.llvm.org

2016-08-31 Thread Eric Fiselier via cfe-commits
8, 2016 at 7:43 PM, Eric Fiselier via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> Author: ericwf >> Date: Sun Aug 28 20:43:41 2016 >> New Revision: 279955 >> >> URL: http://llvm.org/viewvc/llvm-project?rev=279955&view=rev >> Log: >&g

Re: [PATCH] D23960: Avoid narrowing warnings in __bitset constructor

2016-09-01 Thread Eric Fiselier via cfe-commits
EricWF added inline comments. Comment at: include/bitset:262 @@ -261,3 +261,3 @@ #elif __SIZEOF_SIZE_T__ == 4 -: __first_{__v, __v >> __bits_per_word} +: __first_{static_cast<__storage_type>(__v), static_cast<__storage_type>(__v >> __bits_per_word)} #else --

Re: [PATCH] D24099: [libc++] Don't add -fPIC on Windows

2016-09-01 Thread Eric Fiselier 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/D24099 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-

Re: [PATCH] D21803: [libcxxabi] Provide a fallback __cxa_thread_atexit() implementation

2016-09-01 Thread Eric Fiselier via cfe-commits
EricWF added a comment. I'll look at this within the hour. https://reviews.llvm.org/D21803 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D24159: Fix PR30202 - notify_all_at_thread_exit seg faults if run from a raw pthread context.

2016-09-01 Thread Eric Fiselier via cfe-commits
EricWF created this revision. EricWF added reviewers: mclow.lists, bcraig. EricWF added a subscriber: cfe-commits. This patch allows threads not created using `std::thread` to use `std::notify_all_at_thread_exit` by ensuring the TL state has been initialized within `std::notify_all_at_thread_exi

Re: [PATCH] D21803: [libcxxabi] Provide a fallback __cxa_thread_atexit() implementation

2016-09-01 Thread Eric Fiselier via cfe-commits
EricWF added a comment. We can perform far fewer calls to `pthread_getspecific`/`pthread_setspecific` if we represent the list head using a global `__thread DtorList* list_head = nullptr`. This also allows us to avoid the hack of setting/unsetting the key during `run_dtors()` which I really do

Re: [PATCH] D23960: Avoid narrowing warnings in __bitset constructor

2016-09-01 Thread Eric Fiselier via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. LGTM. Sorry this took so long. I was confused about the narrowing rules. https://reviews.llvm.org/D23960 ___ cfe-commits mailing list cfe-commits

Re: [PATCH] D21803: [libcxxabi] Provide a fallback __cxa_thread_atexit() implementation

2016-09-01 Thread Eric Fiselier via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D21803#532347, @jroelofs wrote: > In https://reviews.llvm.org/D21803#532309, @EricWF wrote: > > > `__thread` > > > > What do you think of this idea? > > > You'll have to guard it against all the platforms that don't support TLS. > Darwin 10.6 i

r280516 - Implement __attribute__((require_constant_initialization)) for safe static initialization.

2016-09-02 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Fri Sep 2 13:25:29 2016 New Revision: 280516 URL: http://llvm.org/viewvc/llvm-project?rev=280516&view=rev Log: Implement __attribute__((require_constant_initialization)) for safe static initialization. Summary: This attribute specifies expectations about the initialization

Re: [PATCH] D21803: [libcxxabi] Provide a fallback __cxa_thread_atexit() implementation

2016-09-02 Thread Eric Fiselier via cfe-commits
EricWF added inline comments. Comment at: src/cxa_thread_atexit.cpp:42 @@ +41,3 @@ + // - thread_local destructors on other threads run on the first iteration + // through the pthread_key destructors. std::notify_all_at_thread_exit() + // and similar functions must be care

r280521 - Revert r280516 since it contained accidental changes.

2016-09-02 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Fri Sep 2 13:43:25 2016 New Revision: 280521 URL: http://llvm.org/viewvc/llvm-project?rev=280521&view=rev Log: Revert r280516 since it contained accidental changes. Removed: cfe/trunk/test/SemaCXX/attr-require-constant-initialization.cpp Modified: cfe/trunk/include/

Re: [PATCH] D23385: Implement __attribute__((require_constant_initialization)) for safe static initialization.

2016-09-02 Thread Eric Fiselier via cfe-commits
EricWF updated this revision to Diff 70200. EricWF added a comment. Updating against recent ToT. https://reviews.llvm.org/D23385 Files: include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema/AttributeList.h lib/Sema/Se

r280525 - Implement __attribute__((require_constant_initialization)) for safe static initialization.

2016-09-02 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Fri Sep 2 13:53:31 2016 New Revision: 280525 URL: http://llvm.org/viewvc/llvm-project?rev=280525&view=rev Log: Implement __attribute__((require_constant_initialization)) for safe static initialization. Summary: This attribute specifies expectations about the initialization

Re: [PATCH] D24159: Fix PR30202 - notify_all_at_thread_exit seg faults if run from a raw pthread context.

2016-09-02 Thread Eric Fiselier via cfe-commits
EricWF added inline comments. Comment at: src/condition_variable.cpp:86 @@ +85,3 @@ +if (tl_ptr.get() == nullptr) { +tl_ptr.set_pointer(new __thread_struct); +} bcraig wrote: > The standard synopsis of notify_all_at_thread_exit in the standard does

[libcxx] r280561 - Define _LIBCPP_SAFE_STATIC __attribute__((require_constant_initialization)), and apply it to memory_resource

2016-09-02 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Fri Sep 2 19:11:33 2016 New Revision: 280561 URL: http://llvm.org/viewvc/llvm-project?rev=280561&view=rev Log: Define _LIBCPP_SAFE_STATIC __attribute__((require_constant_initialization)), and apply it to memory_resource Modified: libcxx/trunk/include/__config libcx

[libcxx] r280585 - memory_resource still needs init_priority when built with GCC 4.9

2016-09-03 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Sep 3 02:05:40 2016 New Revision: 280585 URL: http://llvm.org/viewvc/llvm-project?rev=280585&view=rev Log: memory_resource still needs init_priority when built with GCC 4.9 Modified: libcxx/trunk/src/experimental/memory_resource.cpp Modified: libcxx/trunk/src/experi

[libcxx] r280588 - Fix PR30202 - notify_all_at_thread_exit seg faults if run from a raw pthread context.

2016-09-03 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Sep 3 03:07:40 2016 New Revision: 280588 URL: http://llvm.org/viewvc/llvm-project?rev=280588&view=rev Log: Fix PR30202 - notify_all_at_thread_exit seg faults if run from a raw pthread context. Summary: This patch allows threads not created using `std::thread` to use `s

[PATCH] D24218: [libc++] Fix support for multibyte thousands_sep and decimal_point in moneypunct_byname

2016-09-03 Thread Eric Fiselier via cfe-commits
EricWF created this revision. EricWF added a reviewer: mclow.lists. EricWF added a subscriber: cfe-commits. The underlying C locales provide the `thousands_sep` and `decimal_point` as strings, possible with more than one character. We currently don't handle this case even for `wchar_t`. This pa

[libcxx] r280608 - Fix bad locale test data when using the newest glibc

2016-09-03 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Sep 3 19:48:54 2016 New Revision: 280608 URL: http://llvm.org/viewvc/llvm-project?rev=280608&view=rev Log: Fix bad locale test data when using the newest glibc Modified: libcxx/trunk/test/std/localization/locale.categories/category.monetary/locale.moneypunct.byname/

Re: [PATCH] D24218: [libc++] Fix support for multibyte thousands_sep and decimal_point in moneypunct_byname

2016-09-03 Thread Eric Fiselier via cfe-commits
EricWF updated the summary for this revision. EricWF updated this revision to Diff 70277. EricWF added a comment. Remove secondary locale fix. https://reviews.llvm.org/D24218 Files: src/locale.cpp test/std/localization/locale.categories/category.monetary/locale.moneypunct.byname/decimal_po

Re: [PATCH] D24218: [libc++] Fix support for multibyte thousands_sep and decimal_point in moneypunct_byname

2016-09-03 Thread Eric Fiselier via cfe-commits
EricWF updated this revision to Diff 70278. EricWF marked 3 inline comments as done. EricWF added a comment. Address all inline comments. https://reviews.llvm.org/D24218 Files: src/locale.cpp test/std/localization/locale.categories/category.monetary/locale.moneypunct.byname/decimal_point.p

Re: [PATCH] D24087: [lit] Allow more file extensions for test cases.

2016-09-03 Thread Eric Fiselier via cfe-commits
EricWF added a comment. I don't think assembly based `.pass` and `.fail` tests will work quite yet. The `CXXCompiler` object used by the test format explicitly passes `-xc++ %s` in some cases. I'm assuming you already have a libc++abi assembly test? Could you put it up for review? https://re

Re: [PATCH] D24087: [lit] Allow more file extensions for test cases.

2016-09-03 Thread Eric Fiselier via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. Woops I see the test case now. LGTM. Comment at: test/libcxx/test/format.py:69 @@ +68,3 @@ +name_root, name_ext = os.path.splitext(name) +is_sh_test = name_ro

Re: [PATCH] D24083: [CMake] Fix libc++abi __aeabi_idiv() link error.

2016-09-03 Thread Eric Fiselier via cfe-commits
EricWF added a comment. This is not correct. We need the `-nodefaultlibs` on most platforms to prevent libstdc++ from being linked. I think the correct fix is to change `--rtlib=` https://reviews.llvm.org/D24083 ___ cfe-commits mailing list cfe-co

[libcxx] r280612 - Apply curr_symbol.pass.cpp test fix to missed test case

2016-09-03 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Sat Sep 3 23:09:25 2016 New Revision: 280612 URL: http://llvm.org/viewvc/llvm-project?rev=280612&view=rev Log: Apply curr_symbol.pass.cpp test fix to missed test case Modified: libcxx/trunk/test/std/localization/locale.categories/category.monetary/locale.moneypunct.byna

Re: [PATCH] D23926: [libcxx] Don't use C99 math ops in -std=c++03 mode

2016-09-05 Thread Eric Fiselier via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D23926#531226, @rmaprath wrote: > Simplified the patch a little bit more. > > Now, library vendors should be able to define > `_LIBCPP_STRICT_C99_COMPATIBILITY` and `libc++` will not use/test C99 math > functions in `C++03/98` modes. Currently

Re: [PATCH] D21968: [libcxx] Externally threaded libc++ variant - Take 2

2016-09-06 Thread Eric Fiselier via cfe-commits
EricWF added a comment. This looks great. Two comments: 1. The declarations should be used in both the inline and external pthread implementation. They also need visibility declarations. 2. Why can't we use the inline implementation to implement `external_threads.cpp`? I took a stab at it her

Re: [PATCH] D24083: [CMake] Fix libc++abi __aeabi_idiv() link error.

2016-09-06 Thread Eric Fiselier via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D24083#534459, @logan wrote: > One solution might be adding the `libclang_rt.builtins.${arch}.a` detection > rules[1] to CMakeLists.txt, and manually specify > `-lclang_rt.builtins-${arch}.a` when `LIBCXXABI_USE_COMPILER_RT` is enabled. > Ho

Re: [PATCH] D24087: [lit] Allow more file extensions for test cases.

2016-09-06 Thread Eric Fiselier via cfe-commits
EricWF added inline comments. Comment at: test/libcxx/test/format.py:69 @@ +68,3 @@ +name_root, name_ext = os.path.splitext(name) +is_sh_test = name_root.endswith('.sh') +is_pass_test = name_root.endswith('.pass') logan wrote: > EricWF wrot

[libcxx] r280743 - Remove unneeded includes in after removing __libcpp_throw

2016-09-06 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Tue Sep 6 14:56:40 2016 New Revision: 280743 URL: http://llvm.org/viewvc/llvm-project?rev=280743&view=rev Log: Remove unneeded includes in after removing __libcpp_throw Modified: libcxx/trunk/include/exception Modified: libcxx/trunk/include/exception URL: http://llvm.

[libcxx] r280745 - Add missing include. Sorry about the bot breakage

2016-09-06 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Tue Sep 6 15:10:13 2016 New Revision: 280745 URL: http://llvm.org/viewvc/llvm-project?rev=280745&view=rev Log: Add missing include. Sorry about the bot breakage Modified: libcxx/trunk/include/typeinfo Modified: libcxx/trunk/include/typeinfo URL: http://llvm.org/viewvc

[libcxx] r280752 - Revert r280743 and r280745. Remove include from ``

2016-09-06 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Tue Sep 6 16:06:41 2016 New Revision: 280752 URL: http://llvm.org/viewvc/llvm-project?rev=280752&view=rev Log: Revert r280743 and r280745. Remove include from `` Apparently I missed a number of additional include which need to be added. Reverting so I can recommit as a sing

[libcxx] r280754 - Try 2 - Remove include from ``

2016-09-06 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Tue Sep 6 16:25:27 2016 New Revision: 280754 URL: http://llvm.org/viewvc/llvm-project?rev=280754&view=rev Log: Try 2 - Remove include from `` This patch removes the `` include from exception where it is no longer needed. Unlike my previous attempt this patch also adds wher

Re: [PATCH] D24218: [libc++] Fix support for multibyte thousands_sep and decimal_point in moneypunct_byname and numpunct_byname.

2016-09-06 Thread Eric Fiselier via cfe-commits
EricWF retitled this revision from "[libc++] Fix support for multibyte thousands_sep and decimal_point in moneypunct_byname" to "[libc++] Fix support for multibyte thousands_sep and decimal_point in moneypunct_byname and numpunct_byname.". EricWF updated the summary for this revision. EricWF upd

Re: [PATCH] D21803: [libcxxabi] Provide a fallback __cxa_thread_atexit() implementation

2016-09-06 Thread Eric Fiselier via cfe-commits
EricWF added a comment. LGTM modulo bug fix. Comment at: src/cxa_thread_atexit.cpp:70 @@ +69,3 @@ +while (auto head = dtors) { + dtors = head->next; + head->dtor(head->obj); There is a bug here. If `head->next == nullptr` and if `head->dtor(head->o

[libcxx] r280771 - Improve CMake output when registering benchmarks

2016-09-06 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Tue Sep 6 19:57:26 2016 New Revision: 280771 URL: http://llvm.org/viewvc/llvm-project?rev=280771&view=rev Log: Improve CMake output when registering benchmarks Modified: libcxx/trunk/benchmarks/CMakeLists.txt Modified: libcxx/trunk/benchmarks/CMakeLists.txt URL: http:/

[libcxx] r280773 - Enable installation of libc++experimental by default.

2016-09-06 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Tue Sep 6 20:15:10 2016 New Revision: 280773 URL: http://llvm.org/viewvc/llvm-project?rev=280773&view=rev Log: Enable installation of libc++experimental by default. When libc++experimental was originally created it was empty and therefore there was no reason to install it. N

[libcxx] r280775 - Fix PR30260 - optional not working.

2016-09-06 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Tue Sep 6 20:56:07 2016 New Revision: 280775 URL: http://llvm.org/viewvc/llvm-project?rev=280775&view=rev Log: Fix PR30260 - optional not working. This patch fixes PR30260 by using a (void*) cast on the placement argument to placement new to casts away the const. See also ht

[libcxx] r280777 - Improve constexpr tests for std::any

2016-09-06 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Tue Sep 6 21:38:48 2016 New Revision: 280777 URL: http://llvm.org/viewvc/llvm-project?rev=280777&view=rev Log: Improve constexpr tests for std::any Modified: libcxx/trunk/test/std/utilities/any/any.class/any.cons/default.pass.cpp Modified: libcxx/trunk/test/std/utiliti

[libcxx] r280780 - Avoid compile error by giving the test type a user defined default constructor

2016-09-06 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Tue Sep 6 22:50:36 2016 New Revision: 280780 URL: http://llvm.org/viewvc/llvm-project?rev=280780&view=rev Log: Avoid compile error by giving the test type a user defined default constructor Modified: libcxx/trunk/test/std/experimental/optional/optional.object/optional.o

Re: [PATCH] D21803: [libcxxabi] Provide a fallback __cxa_thread_atexit() implementation

2016-09-07 Thread Eric Fiselier via cfe-commits
EricWF added inline comments. Comment at: src/cxa_thread_atexit.cpp:70 @@ +69,3 @@ +while (auto head = dtors) { + dtors = head->next; + head->dtor(head->obj); tavianator wrote: > EricWF wrote: > > There is a bug here. If `head->next == nullptr` and i

Re: [PATCH] D24314: [libc++] Clean up MSVC support

2016-09-07 Thread Eric Fiselier via cfe-commits
EricWF added a comment. This LGTM but I'll let @compnerd give it the final OK, since I've never built libc++ on windows. Comment at: include/support/win32/support.h:48 @@ -47,2 +47,3 @@ #if defined(_LIBCPP_MSVCRT) +#if _VC_CRT_MAJOR_VERSION < 14 #define snprintf _snprintf ---

Re: [PATCH] D24048: [Driver] [Darwin] Add sanitizer libraries even if -nodefaultlibs is passed

2016-09-07 Thread Eric Fiselier via cfe-commits
+1 On Wed, Sep 7, 2016 at 6:04 PM, Richard Smith wrote: > rsmith added a subscriber: rsmith. > rsmith added a comment. > > My 2c: `-nodefaultlibs` means "don't link against any libraries I didn't > explicitly tell you to". `-fsanitize=*` as a driver argument *when linking* > is an explicit reque

Re: [PATCH] D24374: [libc++] Avoid include in locale_win32.h

2016-09-08 Thread Eric Fiselier via cfe-commits
EricWF added a comment. LGTM. I'm OK with things that are "technically" regressions in Windows support if it helps us get it working today. https://reviews.llvm.org/D24374 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.o

Re: [PATCH] D24372: [libcxx] Sprinkle constexpr over compressed_pair

2016-09-08 Thread Eric Fiselier via cfe-commits
I believe mclow is working on this On Sep 8, 2016 9:30 PM, "Keno Fischer" wrote: > loladiro created this revision. > loladiro added reviewers: EricWF, mclow.lists. > loladiro added a subscriber: cfe-commits. > loladiro set the repository for this revision to rL LLVM. > > Without this, unique_ptr

Re: [PATCH] D22452: [libcxx] Fix last_write_time tests for filesystems that don't support negative and very large times.

2016-09-14 Thread Eric Fiselier via cfe-commits
EricWF added a comment. Thanks. I'll update this patch today. https://reviews.llvm.org/D22452 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D24372: [libcxx] Sprinkle constexpr over compressed_pair

2016-09-14 Thread Eric Fiselier via cfe-commits
static_cast(t) also works as a constexpr C++11 forward. On Sep 13, 2016 4:07 PM, "Keno Fischer" wrote: > loladiro added inline comments. > > > Comment at: include/memory:2137 > @@ -2132,3 +2136,3 @@ > > -_LIBCPP_INLINE_VISIBILITY > +_LIBCPP_INLINE_VISIBILITY _LIBCPP_CONS

Re: [PATCH] D21803: [libcxxabi] Provide a fallback __cxa_thread_atexit() implementation

2016-09-14 Thread Eric Fiselier via cfe-commits
EricWF added a comment. LGTM after addressing the inline comments. Comment at: src/cxa_thread_atexit.cpp:70 @@ +69,3 @@ +while (auto head = dtors) { + dtors = head->next; + head->dtor(head->obj); tavianator wrote: > EricWF wrote: > > tavianator wro

[libcxx] r281562 - Revert r280944 - Added 'inline' attribute to basic_string's destructor

2016-09-14 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Wed Sep 14 18:52:01 2016 New Revision: 281562 URL: http://llvm.org/viewvc/llvm-project?rev=281562&view=rev Log: Revert r280944 - Added 'inline' attribute to basic_string's destructor This patch causes a couple of issues: 1) It triggers http://llvm.org/PR30341. Although the b

Re: [libcxx] r280944 - Added 'inline' attribute to basic_string's destructor

2016-09-14 Thread Eric Fiselier via cfe-commits
FYI I had to revert this in r281562 because of: * http://llvm.org/PR30341 which breaks the LLVM build. * http://llvm.org/PR30391 which breaks ABI compatibility when libc++.so is compiled with GCC. I'm working on fixing these issues so that this patch may be recommitted. The GCC issue also made wo

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

2016-09-14 Thread Eric Fiselier via cfe-commits
EricWF created this revision. EricWF added reviewers: mclow.lists, laxmansole, hiraditya, dblaikie. EricWF added a subscriber: cfe-commits. r280944 attempted to add both `inline` and `_LIBCPP_INLINE_VISIBILITY` to basic_string's destructor in order to achieve better inlining behavior. Unfortunat

[PATCH] D24600: [libc++] Add _LIBCPP_EXTERN_TEMPLATE_INLINE_VISIBILITY to support GCC ABI compatibility

2016-09-14 Thread Eric Fiselier via cfe-commits
EricWF created this revision. EricWF added reviewers: mclow.lists, eugenis, danalbert, jroelofs. EricWF added a subscriber: cfe-commits. Herald added subscribers: mgorny, beanz. GCC and Clang handle visibility attributes on the out-of-line definition of externally instantiated templates different

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