Page MenuHomePhabricator

mclow.lists (Marshall Clow)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 16 2012, 3:06 PM (370 w, 4 d)

Recent Activity

Wed, Aug 21

mclow.lists accepted D66518: [libcxx] Only declare contents of threading API when _LIBCPP_HAS_THREAD_API_EXTERNAL is not defined..

This seems to work for me (pthreads and nothreads).
In general, I think we're playing "whack-a-mole' with this chunk of code, and I've become fairly unhappy with it.

Wed, Aug 21, 8:20 AM · Restricted Project, Restricted Project
mclow.lists added inline comments to D62451: Regex backreference [1/3] Fixes backreferences for extended grammar..
Wed, Aug 21, 7:57 AM · Restricted Project

Tue, Aug 20

mclow.lists committed rG4f41779cca7d: Add a missing _VSTD:: before a call to merge. Fixes PR43034. Checked the rest… (authored by mclow.lists).
Add a missing _VSTD:: before a call to merge. Fixes PR43034. Checked the rest…
Tue, Aug 20, 3:25 PM
mclow.lists committed rG7fa686539269: Fix a couple of unguarded operator, calls in algorithm. Fixes PR#43063. Updated… (authored by mclow.lists).
Fix a couple of unguarded operator, calls in algorithm. Fixes PR#43063. Updated…
Tue, Aug 20, 2:33 PM
mclow.lists accepted D65105: [libc++] Implement LWG 3199.

LGTM.

Tue, Aug 20, 10:27 AM · Restricted Project, Restricted Project
mclow.lists committed rG696630eaf283: Fix availability of __thread_id on builds with external threading. Reviewed as… (authored by mclow.lists).
Fix availability of __thread_id on builds with external threading. Reviewed as…
Tue, Aug 20, 9:17 AM
mclow.lists closed D66480: Fix unavailability of __thread_id on external builds.

Committed as revision 369399.

Tue, Aug 20, 9:15 AM · Restricted Project
mclow.lists added a comment to D66480: Fix unavailability of __thread_id on external builds.

This is an alternative to D66301

Tue, Aug 20, 8:48 AM · Restricted Project
mclow.lists added a comment to D66301: [libcxx] __thread_id should be available when an external threading API is used..

I put an alternate solution up as D66480

Tue, Aug 20, 8:48 AM
mclow.lists accepted D57778: std::abs should not return double (2735).

LGTM.

Tue, Aug 20, 8:33 AM
mclow.lists created D66480: Fix unavailability of __thread_id on external builds.
Tue, Aug 20, 8:24 AM · Restricted Project

Mon, Aug 19

mclow.lists added inline comments to D57778: std::abs should not return double (2735).
Mon, Aug 19, 6:15 PM
mclow.lists added a comment to D66301: [libcxx] __thread_id should be available when an external threading API is used..

Yes. Because then it would be in the global namespace.

Mon, Aug 19, 7:27 AM

Fri, Aug 16

mclow.lists added inline comments to D65667: [libcxx] Avoid destructor call for error_category singletons.
Fri, Aug 16, 4:03 PM · Restricted Project
mclow.lists added inline comments to D65667: [libcxx] Avoid destructor call for error_category singletons.
Fri, Aug 16, 2:49 PM · Restricted Project
mclow.lists added inline comments to D65667: [libcxx] Avoid destructor call for error_category singletons.
Fri, Aug 16, 2:47 PM · Restricted Project
mclow.lists added inline comments to D63284: [libc++] Keep __regex_word in sync with ctype_base.
Fri, Aug 16, 7:53 AM · Restricted Project, Restricted Project

Thu, Aug 15

mclow.lists added a comment to D65895: Fix a layering violation in mutex - prep for fixing PR42918.

The move of thread_id to <threading_support> has caused a build error for us when _LIBCPP_HAS_THREAD_API_EXTERNAL is true

Thu, Aug 15, 12:07 PM
mclow.lists added inline comments to D57778: std::abs should not return double (2735).
Thu, Aug 15, 8:15 AM

Wed, Aug 14

mclow.lists committed rG2e80d01fa7dc: Fix thread comparison by making sure we never pass our special 'not a thread'… (authored by mclow.lists).
Fix thread comparison by making sure we never pass our special 'not a thread'…
Wed, Aug 14, 1:59 PM
mclow.lists committed rG2b1d42541f20: Rework recursive_timed_mutex so that it uses __thread_id instead of using the… (authored by mclow.lists).
Rework recursive_timed_mutex so that it uses __thread_id instead of using the…
Wed, Aug 14, 9:24 AM
mclow.lists added a comment to D65895: Fix a layering violation in mutex - prep for fixing PR42918.

Committed as revision 368867. I made Louis' suggested change (reset --> __reset) but somehow that didn't make it into the commit. I will fix that.

Wed, Aug 14, 9:24 AM

Tue, Aug 13

mclow.lists added inline comments to D65339: Implement std::condition_variable via pthread_cond_clockwait() where available.
Tue, Aug 13, 10:17 AM

Thu, Aug 8

mclow.lists added inline comments to D65895: Fix a layering violation in mutex - prep for fixing PR42918.
Thu, Aug 8, 8:59 AM
mclow.lists updated the diff for D65895: Fix a layering violation in mutex - prep for fixing PR42918.

Re-gen diff with more context. No other changes.

Thu, Aug 8, 8:56 AM
mclow.lists committed rGfde236b1f719: Implement hh_mm_ss from P1466R3. Reviewed as https://reviews.llvm.org/D65365. (authored by mclow.lists).
Implement hh_mm_ss from P1466R3. Reviewed as https://reviews.llvm.org/D65365.
Thu, Aug 8, 7:39 AM
mclow.lists closed D65365: Implement `hh_mm_ss` from P1466R3.

Committed as revision 368299

Thu, Aug 8, 7:38 AM

Wed, Aug 7

mclow.lists created D65895: Fix a layering violation in mutex - prep for fixing PR42918.
Wed, Aug 7, 12:15 PM
mclow.lists added inline comments to D65895: Fix a layering violation in mutex - prep for fixing PR42918.
Wed, Aug 7, 12:15 PM
mclow.lists added a comment to D65667: [libcxx] Avoid destructor call for error_category singletons.

Hubert - I'm not following what you're saying.
Where did error_code come from? As far as I can tell, your comment is the first mention of error_code in this conversation.

Yes, you're correct it is. We encountered this lifetime issue in an application where the reference to the out-of-lifetime object was the cat_ exposition-only member of error_code. The status quo with libc++ is that error_codes are likely unsafe to use during program termination.

Wed, Aug 7, 8:29 AM · Restricted Project
mclow.lists added a comment to D65667: [libcxx] Avoid destructor call for error_category singletons.

To chime in from the sidelines: We strive to have zero code that runs before main in Chromium, so we're not excited about a patch that adds more such code to libc++. (In fact, we're hoping to contribute a build mode that removes the existing static initializer for cin/cout/cerr as well.)

Wed, Aug 7, 8:25 AM · Restricted Project

Tue, Aug 6

mclow.lists added inline comments to D65365: Implement `hh_mm_ss` from P1466R3.
Tue, Aug 6, 2:14 PM
mclow.lists added inline comments to D65365: Implement `hh_mm_ss` from P1466R3.
Tue, Aug 6, 2:14 PM
mclow.lists added inline comments to D65721: Make rotate a constexpr.
Tue, Aug 6, 10:01 AM
mclow.lists added a comment to D65721: Make rotate a constexpr.

rotate and a bunch of other algorithms were made constexpr in P0202, adopted in ABQ.

Tue, Aug 6, 9:56 AM
mclow.lists added a comment to D65667: [libcxx] Avoid destructor call for error_category singletons.

Hubert - I'm not following what you're saying.
Where did error_code come from? As far as I can tell, your comment is the first mention of error_code in this conversation.

Tue, Aug 6, 9:25 AM · Restricted Project

Mon, Aug 5

mclow.lists updated the diff for D65365: Implement `hh_mm_ss` from P1466R3.

More tests, also removed a couple tabs.

Mon, Aug 5, 9:37 PM
mclow.lists added a comment to D65365: Implement `hh_mm_ss` from P1466R3.

The __pow10 and __width routines are only called at compile-time; no run-time code at all.
We have a "power of 10" table in charconv, but I don't think that coupling <chrono> and <charconv> is worth the benefit of removing this small routine.

Mon, Aug 5, 9:37 PM
mclow.lists added inline comments to D65365: Implement `hh_mm_ss` from P1466R3.
Mon, Aug 5, 2:46 PM
mclow.lists added a comment to D65667: [libcxx] Avoid destructor call for error_category singletons.

The good news is that the constructor of the singleton object in libc++ is under your control. It can be constructed whenever you choose, just by calling generic_category().

Mon, Aug 5, 10:54 AM · Restricted Project
mclow.lists added a comment to D65667: [libcxx] Avoid destructor call for error_category singletons.

When a handle to an error_category singleton object is used during the termination phase of a program, the destruction of the error_category object may have occurred prior to execution of the current destructor or function registered with atexit, because the singleton object may have been constructed after the corresponding initialization or call to atexit.

Mon, Aug 5, 10:28 AM · Restricted Project

Sat, Aug 3

mclow.lists added a comment to D65667: [libcxx] Avoid destructor call for error_category singletons.

@EricWF pointed out to me that it is UB to access standard library objects of static storage duration from an atexit handler: http://eel.is/c++draft/basic.start.term#6

Sat, Aug 3, 8:26 AM · Restricted Project

Mon, Jul 29

mclow.lists added a comment to D59999: Allow the compiler to optimize `string == "literal string"`..

@EricWF asked me:

Can you restate your concern over bypassing char_traits?

Mon, Jul 29, 9:35 AM · Restricted Project

Fri, Jul 26

mclow.lists created D65365: Implement `hh_mm_ss` from P1466R3.
Fri, Jul 26, 7:46 PM
Herald added a project to D47384: Remove dependency from Host to clang: Restricted Project.
Fri, Jul 26, 10:09 AM · Restricted Project
mclow.lists committed rG736e8aa8ed48: Fix a bug in std::chrono::abs where it would fail when the duration's period… (authored by mclow.lists).
Fix a bug in std::chrono::abs where it would fail when the duration's period…
Fri, Jul 26, 8:11 AM

Wed, Jul 24

mclow.lists committed rGdb99d3a2a238: Implement change #4 of P1466: Change weekday to accept both 0 and 7 as Sunday. (authored by mclow.lists).
Implement change #4 of P1466: Change weekday to accept both 0 and 7 as Sunday.
Wed, Jul 24, 8:29 PM

Jul 22 2019

mclow.lists committed rG30f12a42474f: Implement most of P1612R1: Relocate endian. Moves the std::endian… (authored by mclow.lists).
Implement most of P1612R1: Relocate endian. Moves the std::endian…
Jul 22 2019, 9:23 PM
mclow.lists committed rG6e9dfc499dde: Update c++2a status page with post-Cologne information (authored by mclow.lists).
Update c++2a status page with post-Cologne information
Jul 22 2019, 8:14 AM

Jul 18 2019

mclow.lists accepted D64941: [libc++] Fix link error with _LIBCPP_HIDE_FROM_ABI_PER_TU and std::string.

The first three removals are fine.
I don't remember why I put the last two in, but I guess I'm OK with them.

Jul 18 2019, 3:04 PM · Restricted Project, Restricted Project

Jul 11 2019

mclow.lists committed rGf3b851f0b8b6: Reorganize the 'bit' header to make most of the facilities available for… (authored by mclow.lists).
Reorganize the 'bit' header to make most of the facilities available for…
Jul 11 2019, 6:05 PM
mclow.lists abandoned D64530: Reorganize the `bit` header to make the facilities available (internally) before C++20.
Jul 11 2019, 6:04 PM

Jul 10 2019

mclow.lists created D64530: Reorganize the `bit` header to make the facilities available (internally) before C++20.
Jul 10 2019, 1:51 PM

Jul 8 2019

mclow.lists added a comment to D64378: [libcxx] Use C11 thread API on Fuchsia.

None of these calls (__libcpp_tls_create, for instance) are templates, or marked as inline candidates.
Should they be in a source file, and baked into the dylib instead of a header file?
(like we do in support/win32/thread_win32.cpp, for example)

Jul 8 2019, 6:26 PM
mclow.lists added a comment to D64341: [libcxx] speedup to_string for floating point numbers.

I would like to hold this for a while; because in a few weeks, we should have an implementation of to_chars for floating point - which we may be able to use in to_string (like we did for the integral types).

Jul 8 2019, 2:34 PM

Jul 7 2019

mclow.lists committed rGf814dcbafbab: Make forward_list::remove/remove_if/unique all return void before C++20; undoes… (authored by mclow.lists).
Make forward_list::remove/remove_if/unique all return void before C++20; undoes…
Jul 7 2019, 8:47 PM
mclow.lists added a comment to D58332: Erase-Like Algorithms Should Return size_type (P0646R1).

Fixed forward_list in revision 365290

Jul 7 2019, 8:47 PM

Jul 5 2019

mclow.lists committed rG1ab3fe8a7a65: Make list::remove/remove_if/unique all return void before C++20; undoes that… (authored by mclow.lists).
Make list::remove/remove_if/unique all return void before C++20; undoes that…
Jul 5 2019, 11:12 PM
mclow.lists added a comment to D58332: Erase-Like Algorithms Should Return size_type (P0646R1).

Fixed list in revision 365261

Jul 5 2019, 11:11 PM
mclow.lists added a comment to D58332: Erase-Like Algorithms Should Return size_type (P0646R1).

Shouldn't the type change be guarded with a conditional compilation construct? I could write

std::list<int> l
assert(typeid(void) == typeid(l.unique()));

and expect this assertion to pass when compiling with, say, -std=c++98.

Jul 5 2019, 10:26 PM

Jul 3 2019

mclow.lists added a comment to D40259: [libcxx] LWG2993: reference_wrapper<T> conversion from T&&.

Did this ever get landed? If not, was there a reason?
Note that the synopsis at the top of <functional> also needs to be updated.

Jul 3 2019, 1:49 PM
mclow.lists added a comment to D37182: [libcxx] Special visibility macros for the experimental library.

This is an old patch; is this still needed/desired?

Jul 3 2019, 1:47 PM
Herald added a project to D24372: [libcxx] Sprinkle constexpr over compressed_pair: Restricted Project.

Is this patch relevant any more?

Jul 3 2019, 1:44 PM · Restricted Project
Herald added a project to D38630: Avoid 'unused param' warnings for !_LIBCPP_HAS_CATOPEN: Restricted Project.

I think this patch is dead; the problem has been solved using _LIBCPP_UNUSED_VAR Is that correct?

Jul 3 2019, 1:43 PM · Restricted Project
mclow.lists added inline comments to D62451: Regex backreference [1/3] Fixes backreferences for extended grammar..
Jul 3 2019, 1:39 PM · Restricted Project
mclow.lists added a comment to D61366: [libcxx] [test] Don't assert that moved-from containers with non-POCMA allocators are empty..

Is there a reason this hasn't been committed?

Jul 3 2019, 1:39 PM
mclow.lists committed rG7afe9ea96f65: Add tests for regex_match ambiguity (aka LWG2273). NFC. Reviewed as https… (authored by mclow.lists).
Add tests for regex_match ambiguity (aka LWG2273). NFC. Reviewed as https…
Jul 3 2019, 1:35 PM
mclow.lists closed D63051: Test regex match ambiguity (2273).

Committed (slightly modified) as revision 365080.

Jul 3 2019, 1:34 PM
mclow.lists accepted D63051: Test regex match ambiguity (2273).

This looks good to me.

Jul 3 2019, 1:18 PM
mclow.lists added inline comments to D43159: Modernize: Use nullptr more..
Jul 3 2019, 1:10 PM
mclow.lists added inline comments to D43159: Modernize: Use nullptr more..
Jul 3 2019, 8:41 AM
mclow.lists added a comment to D43159: Modernize: Use nullptr more..

In <algorithm>, you missed a couple of (value_type*)0. Line 3356, 3369, 3486 and 3499.

Jul 3 2019, 8:37 AM
mclow.lists requested changes to D43159: Modernize: Use nullptr more..

Did you try to build libc++ or run the tests before submitting this?

Jul 3 2019, 8:29 AM

Jul 2 2019

mclow.lists closed D58332: Erase-Like Algorithms Should Return size_type (P0646R1).
Jul 2 2019, 10:12 PM
mclow.lists added a comment to D64105: libc++: add _LIBCPP_HAS_NO_LONG_DOUBLE.

This patch seems incomplete to me. There's stuff in <type_traits> like is_floating_point, etc.

Jul 2 2019, 7:54 PM

Jul 1 2019

mclow.lists committed rG2a622b30e3b4: Update status of papers for upcoming WG21 meeting. NFC (authored by mclow.lists).
Update status of papers for upcoming WG21 meeting. NFC
Jul 1 2019, 8:24 PM
mclow.lists committed rGbd7f84a48243: Use new '__libcpp_is_constant_evaluated' call to remove an '#ifdef' from the… (authored by mclow.lists).
Use new '__libcpp_is_constant_evaluated' call to remove an '#ifdef' from the…
Jul 1 2019, 8:23 PM
mclow.lists committed rG745379a0af74: Mark the newly added '__libcpp_is_constant_evaluated' as 'inline', since it can… (authored by mclow.lists).
Mark the newly added '__libcpp_is_constant_evaluated' as 'inline', since it can…
Jul 1 2019, 5:21 PM
mclow.lists committed rG491ddc00ae70: Add a private call '__libcpp_is_constant_evaluated' which 'works' for old… (authored by mclow.lists).
Add a private call '__libcpp_is_constant_evaluated' which 'works' for old…
Jul 1 2019, 4:19 PM
mclow.lists committed rGfc61db5a3e71: Update status for bit operations (authored by mclow.lists).
Update status for bit operations
Jul 1 2019, 4:03 PM
mclow.lists committed rGa5c3485a5839: Bit Operations: P0556, P0553 and P1355. Reviewed as: https://reviews.llvm. (authored by mclow.lists).
Bit Operations: P0556, P0553 and P1355. Reviewed as: https://reviews.llvm.
Jul 1 2019, 4:02 PM
mclow.lists closed D51262: Implement P0553 and P0556.

Committed as revision 364862

Jul 1 2019, 4:02 PM
mclow.lists added inline comments to D51262: Implement P0553 and P0556.
Jul 1 2019, 1:48 PM
mclow.lists added inline comments to D51262: Implement P0553 and P0556.
Jul 1 2019, 1:11 PM
mclow.lists updated the diff for D51262: Implement P0553 and P0556.

Removed explicit inlines, changed ternary into if

Jul 1 2019, 1:11 PM
mclow.lists added a comment to D51262: Implement P0553 and P0556.

I missed a couple of Eric's comments.

Jul 1 2019, 1:05 PM
mclow.lists updated the diff for D51262: Implement P0553 and P0556.

Updated patch based on Eric's comments.

Jul 1 2019, 1:02 PM
mclow.lists committed rG24edf8ef4b5c: Implement P0646R1: Erase-Like Algorithms Should Return size_type. Reviewed as… (authored by mclow.lists).
Implement P0646R1: Erase-Like Algorithms Should Return size_type. Reviewed as…
Jul 1 2019, 12:23 PM
mclow.lists accepted D58332: Erase-Like Algorithms Should Return size_type (P0646R1).

Committed a modified version as revision 364840 (since I changed the implementation of forward_list::remove_if, etc)

Jul 1 2019, 12:22 PM
mclow.lists added inline comments to D51262: Implement P0553 and P0556.
Jul 1 2019, 10:35 AM
mclow.lists committed rG3c125fe821cc: Implement LWG2221: 'Formatted output for nullptr_t' Reviewed as: https… (authored by mclow.lists).
Implement LWG2221: 'Formatted output for nullptr_t' Reviewed as: https…
Jul 1 2019, 9:22 AM
mclow.lists closed D63053: Add nullptr output operator overload (2221).

Committed as revision 364802 (with a minor change; I updated the synopsis)

Jul 1 2019, 9:20 AM
mclow.lists accepted D62782: Fix -Wdouble-promotion warnings..

Sorry for the slow response.

Jul 1 2019, 9:02 AM · Restricted Project

Jun 27 2019

mclow.lists committed rG954014a0fac4: Add a missing '__uncvref_t' to the SFINAE constraints for optional's assignment… (authored by mclow.lists).
Add a missing '__uncvref_t' to the SFINAE constraints for optional's assignment…
Jun 27 2019, 11:42 AM
mclow.lists committed rG7d8274d54d03: Followup to revision 364545: Turns out that clang issues different errors for… (authored by mclow.lists).
Followup to revision 364545: Turns out that clang issues different errors for…
Jun 27 2019, 8:40 AM
mclow.lists committed rG931843023707: Provide hashers for string_view only if they are using the default char_traits. (authored by mclow.lists).
Provide hashers for string_view only if they are using the default char_traits.
Jun 27 2019, 7:19 AM

Jun 26 2019

mclow.lists requested changes to D63059: Implements multiline regex support.

Note: Since this was resolved by an LWG issue (rather than a paper), we should provide this capability back to C++11.
(So you can get rid of all the #ifdefs

Jun 26 2019, 12:14 PM · Restricted Project
mclow.lists added inline comments to D62451: Regex backreference [1/3] Fixes backreferences for extended grammar..
Jun 26 2019, 10:49 AM · Restricted Project
mclow.lists added inline comments to D63059: Implements multiline regex support.
Jun 26 2019, 8:56 AM · Restricted Project
mclow.lists added a comment to D63059: Implements multiline regex support.

To keep the code easier to read, I would be tempted to remove almost all of the #ifdefs here, and just make __use_multiline and the constants depend on the language level.
[ Note that I haven't tried this; just looking to make the code simpler. ]

Jun 26 2019, 8:52 AM · Restricted Project