[PATCH] D28933: Revert the return type for `emplace_(back|front)` to `void` in C++14 and before

2017-02-13 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists closed this revision. mclow.lists added a comment. Landed as r292990. https://reviews.llvm.org/D28933 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D28933: Revert the return type for `emplace_(back|front)` to `void` in C++14 and before

2017-01-24 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. Landed as revision 292990. https://reviews.llvm.org/D28933 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D29063: [libcxx] Never use within libc++

2017-01-23 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. this LGTM. assert is not something we should have in the dylib. Comment at: include/__config:827 # endif +# if !defined(_LIBCPP_BUILDING_LIBRARY) # define

[PATCH] D26110: Add a check for GCC to the _LIBCPP_EXPLICIT define

2017-01-23 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added a comment. Ok, this is weird. It looks like the changes to <__config> got committed, but not the test. https://reviews.llvm.org/D26110 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D28933: Revert the return type for `emplace_(back|front)` to `void` in C++14 and before

2017-01-19 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists created this revision. In C++11/14, the return type of `emplace_front` and `emplace_back` was `void`. In http://wg21.link/p0084, Alan Talbot proposed changing the return type to return a reference to the newly created element. We implemented that - but unilaterally. This changes

[PATCH] D28931: Disable aligned new/delete on Apple platforms without posix_memalign

2017-01-19 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. LGTM. Thanks! https://reviews.llvm.org/D28931 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D20660: Remove `auto_ptr` in C++17.

2017-01-16 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists updated this revision to Diff 84593. mclow.lists added a comment. Updated the macro name. Use REQUIRES-ALL Found a couple more tests that needed to be updated. Fixed the libcxx/test bit. https://reviews.llvm.org/D20660 Files: include/memory

[PATCH] D20660: Remove `auto_ptr` in C++17.

2017-01-16 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added a comment. > there's probably a better way to state `_LIBCPP_STD_VER <= 14 || > defined(_LIBCPP_NO_REMOVE_AUTO_PTR)`. There probably is; but remember, we want to make it so someone can `-D_LIBCPP_NO_REMOVE_AUTO_PTR` on the command-line and get this back. > I would love to

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

2017-01-16 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added inline comments. Comment at: libcxx/include/memory:3700 + +template +inline T `template `, please. Otherwise when some client code does `#define T true` (yes, I've seen that!) this breaks. `_Tp` is a reserved identifier, and if they use

[PATCH] D28473: Implement http://wg21.link/P0426 Constexpr for std::char_traits

2017-01-11 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a reviewer: mclow.lists. mclow.lists added a comment. This revision is now accepted and ready to land. revision 291741 https://reviews.llvm.org/D28473 ___ cfe-commits mailing list

[PATCH] D28473: Implement http://wg21.link/P0426 Constexpr for std::char_traits

2017-01-09 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added inline comments. Comment at: include/__string:261 + +// inline _LIBCPP_CONSTEXPR_AFTER_CXX14 +// int I will remove this block before committing. https://reviews.llvm.org/D28473 ___ cfe-commits

[PATCH] D28473: Implement http://wg21.link/P0426 Constexpr for std::char_traits

2017-01-09 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists created this revision. mclow.lists added reviewers: EricWF, rsmith. mclow.lists added a subscriber: cfe-commits. Make `assign`/`length`/`find`/`compare` for `std::char_traits` constexpr. This makes using `string_view`s at compile time easier. Use the compiler intrinsics when

[PATCH] D26667: Teach clang that 'sv' is a fine literal suffix

2017-01-09 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists abandoned this revision. mclow.lists added a comment. This was resolved by https://reviews.llvm.org/D26829 https://reviews.llvm.org/D26667 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

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

2017-01-05 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added inline comments. Comment at: include/__tree:1400 __parent_pointer& __parent, const key_type& __v); +// FIXME: Make this function const qualified. Unfortunetly doing so +// breaks existing code which uses non-const callable

[PATCH] D28253: static_assert inside make_shared when the object is not constructible

2017-01-03 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists created this revision. mclow.lists added a reviewer: EricWF. mclow.lists added a subscriber: cfe-commits. http://llvm.org/show_bug.cgi?id=28929 shows a scenario where `make_shared` of a class with a protected constructor compiles successfully (it should fail). This is because we

[PATCH] D28253: static_assert inside make_shared when the object is not constructible

2017-01-03 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added inline comments. Comment at: test/libcxx/test/config.py:415 self.cxx.compile_flags += ['-I' + cxx_headers] +if self.libcxx_obj_root is None: +return Whoops. This change doesn't belong here. But it fixes a problem

[PATCH] D28223: clean up use of _WIN32

2017-01-03 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. LGTM. My comment is a suggestion, not a requirement. Comment at: include/support/win32/support.h:112 // Search from LSB to MSB for first set bit. // Returns

[PATCH] D28223: clean up use of _WIN32

2017-01-03 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added a comment. I like this. A lot. I'm a bit concerned about @smeenai 's comments about __LP64_, and @EricWF 's comment about solaris. This patch accomplishes (or maybe just moves closer, I need to check) to a goal of mine, which is to have no references to `_WIN32` in any

[PATCH] D28217: [libc++] Overallocation of am_pm array in locale.cpp

2017-01-03 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added a comment. This looks fine to me. All the other places that use this (or related functionality) have a rank of 2. Interestingly enough, this has been there since "the beginning of time" (the initial import of libc++ into the LLVM subversion repo)

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

2016-12-09 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added a comment. I agree with @EricWF . If `CLOCK_UPTIME_RAW` doesn't meet the requirements of `steady_clock` (i.e, monotonically increasing, and advances in real time), then we can't use it. https://reviews.llvm.org/D27429 ___

[PATCH] D27436: [libcxx] [test] std::get<0>([std::variant constant expression]) *is* noexcept

2016-12-05 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. I'd appreciate it if someone made a note to revisit this test when the clang bug is fixed, and change the `#ifndef __clang__ ` to something like `#ifndef __clang__ || clang_version < `". This LGTM.

[PATCH] D27068: Improve string::find

2016-12-02 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added a comment. This is starting to look good. Comment at: libcxx/include/__string:549 +// Stop short when source is smaller than pattern. +ptrdiff_t __len2 = __last2 - __first2; +if (__len2 == 0) Is there a reason that you calculate

[PATCH] D27254: Protect optional test under libcpp-no-exceptions

2016-11-30 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. Looks good now - thanks. https://reviews.llvm.org/D27254 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D27199: [libcxx] Make std::ignore constexpr

2016-11-30 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. This looks good to me. https://reviews.llvm.org/D27199 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D27253: Protect futures test under libcpp-no-exceptions

2016-11-30 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. LGTM. https://reviews.llvm.org/D27253 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D27254: Protect optional test under libcpp-no-exceptions

2016-11-30 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added inline comments. Comment at: test/std/experimental/optional/optional.specalg/swap.pass.cpp:225 } +#ifndef TEST_HAS_NO_EXCEPTIONS { Why is this here, and not before line L#236? https://reviews.llvm.org/D27254

[PATCH] D27255: Protect std::ostream::sentry test under libcpp-no-exceptions

2016-11-30 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. LGTM https://reviews.llvm.org/D27255 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D27252: Protect sequences test under libcpp-no-exceptions

2016-11-30 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. LGTM> https://reviews.llvm.org/D27252 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D26991: Hoist redundant load

2016-11-29 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists requested changes to this revision. mclow.lists added inline comments. This revision now requires changes to proceed. Comment at: libcxx/include/algorithm:1499 +// Load the first element from __first2 outside the loop because it is loop invariant +typename

[PATCH] D26991: Hoist redundant load

2016-11-28 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. This looks fine to me - though I wonder if the compiler can hoist `*__first2` w/o us helping it. https://reviews.llvm.org/D26991 ___

[PATCH] D26991: Hoist redundant load

2016-11-28 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added a comment. There are no uses of `_LIBCPP_UNROLL_LOOPS` in LLVM (other than the ones in ``. Googling for `_LIBCPP_UNROLL_LOOPS` on github finds the ones in libc++, and no others. I think I'll just take it out, and see what happens. https://reviews.llvm.org/D26991

[PATCH] D26612: Protect std::string tests under libcpp-no-exceptions

2016-11-28 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. LGTM. Thanks. https://reviews.llvm.org/D26612 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D26611: Protect test for dynarray under libcpp-no-exceptions

2016-11-28 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. LGTM. https://reviews.llvm.org/D26611 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D27095: Protect std::array tests under noexceptions

2016-11-28 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. Other than the missing `assert`s, (which are not your fault, but I would appreciate you fixing) this LGTM. Comment at:

[PATCH] D27093: Protect std::{, unordered_}map tests under noexceptions

2016-11-28 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. LGTM. https://reviews.llvm.org/D27093 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D27096: Protect locale tests under noexceptions

2016-11-28 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. This LGTM. https://reviews.llvm.org/D27096 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D26896: [libcxx] Make constexpr char_traits and char_traits

2016-11-28 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added inline comments. Comment at: include/__string:213 -static inline int compare(const char_type* __s1, const char_type* __s2, size_t __n) _NOEXCEPT -{return __n == 0 ? 0 : memcmp(__s1, __s2, __n);} -static inline size_t length(const char_type*

[PATCH] D26991: Hoist redundant load

2016-11-28 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added a comment. __search is the only place where `_LIBCPP_UNROLL_LOOPS` is currently used. https://reviews.llvm.org/D26991 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D26991: Hoist redundant load

2016-11-28 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added a comment. /me wonders what the perf difference when `_LIBCPP_UNROLL_LOOPS` is defined or not. I think this (`_LIBCPP_UNROLL_LOOPS`) falls squarely into Chandler's request that we complain to him when the compiler generates sub-optimal code, instead of doing things like

[PATCH] D27068: Improve string::find

2016-11-28 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added a comment. Definitely want to see numbers. https://reviews.llvm.org/D27068 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

<    1   2   3   4   5