Page MenuHomePhabricator

zoecarver (Zoe Carver)
User

Projects

User does not belong to any projects.

User Details

User Since
Jan 28 2019, 10:13 PM (36 w, 6 d)

Email: zoe@zoecarver.com
Username: zoecarver (slack, IRC, github, stackoverflow)

I mostly work on libc++. Feel free to contact me above.

Recent Activity

Thu, Oct 10

zoecarver added a comment to D68837: [libc++][P0202] Marked algorithms copy/copy_n/copy_if/copy_backward constexpr..

__libcpp_is_constant_evaluated returns false in C++03 mode but, it still won't work as a template argument. Putting #ifs around it will probably work, though.

Thu, Oct 10, 9:56 PM · Restricted Project
zoecarver updated the summary of D68805: [libcxx] Remove shared_ptr::make_shared.
Thu, Oct 10, 9:08 AM · Restricted Project
zoecarver created D68805: [libcxx] Remove shared_ptr::make_shared.
Thu, Oct 10, 8:59 AM · Restricted Project

Tue, Oct 8

zoecarver added inline comments to D67900: [libc++] Use builtin type traits whenever possible.
Tue, Oct 8, 10:26 AM · Restricted Project

Mon, Oct 7

zoecarver committed rGa9d43b55c7d2: [libc++] Remove C++03 variadics in shared_ptr (v2) (authored by zoecarver).
[libc++] Remove C++03 variadics in shared_ptr (v2)
Mon, Oct 7, 10:21 PM
zoecarver committed rL373971: [libc++] Remove C++03 variadics in shared_ptr (v2).
[libc++] Remove C++03 variadics in shared_ptr (v2)
Mon, Oct 7, 10:21 PM
zoecarver added inline comments to D68480: Implementation of C++20's P1135R6 for libcxx.
Mon, Oct 7, 4:18 PM
zoecarver added inline comments to D67900: [libc++] Use builtin type traits whenever possible.
Mon, Oct 7, 1:29 PM · Restricted Project

Sat, Oct 5

zoecarver added a comment to D68480: Implementation of C++20's P1135R6 for libcxx.

Here are some comments. More to come. A few things that I noticed more broadly:

Sat, Oct 5, 12:15 PM
zoecarver added a comment to D68000: [libc++] Remove C++03 variadics in shared_ptr (v2).

@ldionne friendly ping :) this should be an easy change.

Sat, Oct 5, 10:02 AM · Restricted Project
zoecarver updated the diff for D67900: [libc++] Use builtin type traits whenever possible.
  • remove array rank builtin (because it does not work properly)
Sat, Oct 5, 10:00 AM · Restricted Project

Thu, Sep 26

zoecarver added a comment to D61170: Use std::move in numeric algorithms.

Ping @mclow.lists

Thu, Sep 26, 8:13 PM
zoecarver added a reviewer for D61170: Use std::move in numeric algorithms: ldionne.
Thu, Sep 26, 8:13 PM

Wed, Sep 25

zoecarver updated the diff for D67086: Implement syncstream (p0053).

Add std::lock_guards to prevent races on the map. I ran with TSAN and got no warnings. I also increased the number of times I run the larger thread tests and now get no errors.

Wed, Sep 25, 6:30 PM · Restricted Project
zoecarver added inline comments to D65161: [libc++] Implement LWG 2510.
Wed, Sep 25, 2:18 PM · Restricted Project, Restricted Project

Tue, Sep 24

zoecarver created D68000: [libc++] Remove C++03 variadics in shared_ptr (v2).
Tue, Sep 24, 5:23 PM · Restricted Project
zoecarver added a comment to D67675: [libc++] Remove C++03 variadics in shared_ptr.

Resolved by r372780 (can't close for some reason).

Tue, Sep 24, 2:30 PM · Restricted Project
zoecarver committed rG4278a9e6b502: [libc++] Remove C++03 variadics in shared_ptr (authored by zoecarver).
[libc++] Remove C++03 variadics in shared_ptr
Tue, Sep 24, 1:59 PM
zoecarver committed rL372780: [libc++] Remove C++03 variadics in shared_ptr.
[libc++] Remove C++03 variadics in shared_ptr
Tue, Sep 24, 1:54 PM
zoecarver added a comment to D67675: [libc++] Remove C++03 variadics in shared_ptr.

Yes, tests pass.

Tue, Sep 24, 1:49 PM · Restricted Project
zoecarver added a comment to D65161: [libc++] Implement LWG 2510.

LGTM.

Tue, Sep 24, 1:30 PM · Restricted Project, Restricted Project

Mon, Sep 23

zoecarver updated the diff for D67900: [libc++] Use builtin type traits whenever possible.
  • Enable use of builtins once fixed in clang
Mon, Sep 23, 11:15 AM · Restricted Project
zoecarver closed D67899: Fix __is_fundamental to accept nullptr_t.

Resolved by rL372624.

Mon, Sep 23, 9:07 AM · Restricted Project
zoecarver committed rGa9f926c8b2f6: Fix __is_fundamental to accept nullptr_t (authored by zoecarver).
Fix __is_fundamental to accept nullptr_t
Mon, Sep 23, 9:03 AM
zoecarver committed rL372624: Fix __is_fundamental to accept nullptr_t.
Fix __is_fundamental to accept nullptr_t
Mon, Sep 23, 9:03 AM
zoecarver closed D67897: Fix __is_signed builtin.

Resolved by rL372621.

Mon, Sep 23, 8:48 AM · Restricted Project
zoecarver committed rG511dbd83d63c: Fix __is_signed builtin (authored by zoecarver).
Fix __is_signed builtin
Mon, Sep 23, 8:44 AM
zoecarver committed rL372621: Fix __is_signed builtin.
Fix __is_signed builtin
Mon, Sep 23, 8:39 AM
zoecarver added inline comments to D67897: Fix __is_signed builtin.
Mon, Sep 23, 8:14 AM · Restricted Project

Sun, Sep 22

zoecarver updated the diff for D67897: Fix __is_signed builtin.
  • fix behavior when passed an enumeration type
Sun, Sep 22, 9:21 PM · Restricted Project
zoecarver created D67900: [libc++] Use builtin type traits whenever possible.
Sun, Sep 22, 8:36 PM · Restricted Project
zoecarver updated the diff for D67897: Fix __is_signed builtin.
  • fix docs
Sun, Sep 22, 8:21 PM · Restricted Project
zoecarver added a comment to D67897: Fix __is_signed builtin.

(Can I interest you in fixing the misbehaviour for enumeration types too?)

Sun, Sep 22, 8:21 PM · Restricted Project
zoecarver created D67899: Fix __is_fundamental to accept nullptr_t.
Sun, Sep 22, 8:19 PM · Restricted Project
zoecarver added a comment to D67897: Fix __is_signed builtin.

But std::is_signed_v<float> needs to yield false. Isn't it cleaner to leave the compiler builtin matching the library type-trait, so that the library doesn't have to check for integral types separately?

Sun, Sep 22, 4:53 PM · Restricted Project
zoecarver created D67897: Fix __is_signed builtin.
Sun, Sep 22, 4:26 PM · Restricted Project

Fri, Sep 20

zoecarver updated the diff for D67675: [libc++] Remove C++03 variadics in shared_ptr.
  • merge c++03 tests with other tests and always enable
Fri, Sep 20, 9:10 AM · Restricted Project
zoecarver added inline comments to D67052: Add reference type transformation builtins.
Fri, Sep 20, 6:29 AM · Restricted Project, Restricted Project
zoecarver updated the diff for D67052: Add reference type transformation builtins.
  • address review comments
  • fix warnings in build
Fri, Sep 20, 6:25 AM · Restricted Project, Restricted Project

Thu, Sep 19

zoecarver added inline comments to D67052: Add reference type transformation builtins.
Thu, Sep 19, 6:58 PM · Restricted Project, Restricted Project
zoecarver added inline comments to D67052: Add reference type transformation builtins.
Thu, Sep 19, 2:53 PM · Restricted Project, Restricted Project

Wed, Sep 18

zoecarver added a comment to D67675: [libc++] Remove C++03 variadics in shared_ptr.

The tests are sufficient but I'm going to remove the c++03 tests and enable the c++11 ones.

Wed, Sep 18, 10:29 AM · Restricted Project

Tue, Sep 17

zoecarver updated the diff for D67675: [libc++] Remove C++03 variadics in shared_ptr.
  • fix diff
Tue, Sep 17, 5:56 PM · Restricted Project
zoecarver created D67675: [libc++] Remove C++03 variadics in shared_ptr.
Tue, Sep 17, 12:34 PM · Restricted Project

Sun, Sep 15

zoecarver added a comment to D67588: Add builtin trait for add/remove cv (and similar).

@lebedev.ri after adding _only_ these builtins to libc++ the type trait tests run several seconds faster. I think if we update _all_ the type traits to use builtins then, it could increase speed of the type trait tests by as much as 50% (if not more).

Sun, Sep 15, 2:28 PM · Restricted Project, Restricted Project

Sat, Sep 14

zoecarver updated the diff for D67588: Add builtin trait for add/remove cv (and similar).

Generate diff based on D67052 (arc wasn't working so I had to do it manually this time).

Sat, Sep 14, 10:49 AM · Restricted Project, Restricted Project
zoecarver updated the diff for D67588: Add builtin trait for add/remove cv (and similar).
  • diff from D67052, not master
Sat, Sep 14, 10:43 AM · Restricted Project, Restricted Project
zoecarver created D67588: Add builtin trait for add/remove cv (and similar).
Sat, Sep 14, 10:43 AM · Restricted Project, Restricted Project

Sep 13 2019

zoecarver added inline comments to D67524: P1144 "Trivially relocatable" (3/3): optimize std::vector and std::swap for trivially relocatable types.
Sep 13 2019, 9:38 AM
zoecarver updated the diff for D67086: Implement syncstream (p0053).
  • use contains
  • use function level static
  • use map instead of unordered_map
Sep 13 2019, 9:28 AM · Restricted Project

Sep 12 2019

zoecarver added a comment to D67524: P1144 "Trivially relocatable" (3/3): optimize std::vector and std::swap for trivially relocatable types.

Note: std::is_constant_evaluated() is implemented and you can use __libcpp_is_constant_evaluated before C++2a.

Sep 12 2019, 5:04 PM
zoecarver closed D66611: Mark issue 2587 resolved by issue 2567..

Committed as rL371763.

Sep 12 2019, 1:20 PM · Restricted Project
zoecarver committed rG31a1ea17729e: [libc++] Mark issue 2587 resolved by issue 2567 (authored by zoecarver).
[libc++] Mark issue 2587 resolved by issue 2567
Sep 12 2019, 12:51 PM
zoecarver committed rL371763: [libc++] Mark issue 2587 resolved by issue 2567.
[libc++] Mark issue 2587 resolved by issue 2567
Sep 12 2019, 12:51 PM
zoecarver updated the diff for D66103: implement std::to_array (P0325R3).
  • update tests
  • add copy only support class
  • fix based on review
Sep 12 2019, 9:46 AM · Restricted Project
zoecarver added inline comments to D66262: Constrain tuple/unique_ptr move constructors (2899).
Sep 12 2019, 9:06 AM · Restricted Project

Sep 11 2019

zoecarver added a comment to D66862: Make lround builtin constexpr (and others).

Ping. Anything else I am missing?

Sep 11 2019, 9:07 PM · Restricted Project
zoecarver added inline comments to D67086: Implement syncstream (p0053).
Sep 11 2019, 7:12 PM · Restricted Project
zoecarver added inline comments to D67086: Implement syncstream (p0053).
Sep 11 2019, 6:42 PM · Restricted Project
zoecarver added a comment to D62889: rvalue stream operators (1203 and 2534).

Another ping (@mclow.lists)

Sep 11 2019, 6:28 PM · Restricted Project
zoecarver added a comment to D66178: Remove std::shared_ptr::make_shared and std::shared_ptr::allocate_shared.

@phosek I spent some more time trying to reproduce the segfault. I still haven't been able to reproduce the issue. Any more information you could share would be great (even, at least, the failing build so I can try to reproduce with that). I would really like to get this re-committed.

Sep 11 2019, 6:25 PM
zoecarver committed rGb51d5605b181: Consolidate swap, swap_ranges, and iter_swap in <type_traits>. (authored by zoecarver).
Consolidate swap, swap_ranges, and iter_swap in <type_traits>.
Sep 11 2019, 10:39 AM
zoecarver closed D65260: [libc++] Consolidate swap, swap_ranges, and iter_swap in <type_traits>. NFC..

Thanks for the patch @Quuxplusone. Committed as rL371639.

Sep 11 2019, 10:39 AM
zoecarver committed rL371639: Consolidate swap, swap_ranges, and iter_swap in <type_traits>..
Consolidate swap, swap_ranges, and iter_swap in <type_traits>.
Sep 11 2019, 10:37 AM
zoecarver added a comment to D65260: [libc++] Consolidate swap, swap_ranges, and iter_swap in <type_traits>. NFC..

Sorry, I simply meant "this looks good to me." Next time, I will just comment that :)

Sep 11 2019, 10:00 AM
zoecarver accepted D65260: [libc++] Consolidate swap, swap_ranges, and iter_swap in <type_traits>. NFC..
Sep 11 2019, 9:41 AM
zoecarver added inline comments to D67086: Implement syncstream (p0053).
Sep 11 2019, 9:21 AM · Restricted Project

Sep 10 2019

zoecarver updated the diff for D67086: Implement syncstream (p0053).
  • don't use not keyword
Sep 10 2019, 8:32 PM · Restricted Project
zoecarver added inline comments to D67086: Implement syncstream (p0053).
Sep 10 2019, 8:13 PM · Restricted Project
zoecarver updated the diff for D67086: Implement syncstream (p0053).
  • update/add to the tests
Sep 10 2019, 8:13 PM · Restricted Project
zoecarver updated the diff for D67086: Implement syncstream (p0053).
  • Updated mutex for gaurd_lock so that it corresponds to a streambuf.
  • Added more thread tests.
Sep 10 2019, 6:42 PM · Restricted Project

Sep 9 2019

zoecarver retitled D67086: Implement syncstream (p0053) from Implement std::basic_syncbuf (p0053) to Implement syncstream (p0053).
Sep 9 2019, 8:15 PM · Restricted Project
zoecarver updated the diff for D67086: Implement syncstream (p0053).
  • tests for osyncstream
  • implement osyncstream
  • update status
  • general cleanup
Sep 9 2019, 8:13 PM · Restricted Project

Sep 6 2019

zoecarver added inline comments to D67273: [libc++] Remove unnecessary assignment in exclusive_scan.
Sep 6 2019, 1:44 PM · Restricted Project

Sep 5 2019

zoecarver updated the diff for D66262: Constrain tuple/unique_ptr move constructors (2899).
  • use _EnableIf when possible
  • update tests and remove std::remove_ref
Sep 5 2019, 10:34 AM · Restricted Project
zoecarver added inline comments to D66262: Constrain tuple/unique_ptr move constructors (2899).
Sep 5 2019, 9:02 AM · Restricted Project

Sep 4 2019

zoecarver added inline comments to D66262: Constrain tuple/unique_ptr move constructors (2899).
Sep 4 2019, 5:32 PM · Restricted Project
zoecarver added a comment to D66970: [libc++] Explicitly provide a list of exported symbols for libc++.

I see maintaining an explicit list of exports as an ongoing time sink - are you sure this is the the direction that we want to take?

Sep 4 2019, 9:31 AM · Restricted Project

Sep 3 2019

zoecarver added inline comments to D67052: Add reference type transformation builtins.
Sep 3 2019, 6:13 PM · Restricted Project, Restricted Project
zoecarver added inline comments to D67052: Add reference type transformation builtins.
Sep 3 2019, 6:06 PM · Restricted Project, Restricted Project
zoecarver added a comment to D67052: Add reference type transformation builtins.

If you're going to do __add__lvalue_reference, __add_rvalue_reference, and __remove_reference, why not go all the way and add __is_reference, __is_lvalue_reference and __is_rvalue_reference?

Sep 3 2019, 6:05 PM · Restricted Project, Restricted Project
zoecarver accepted D66836: [libc++] Add `__truncating_cast` for safely casting float types to integers.
Sep 3 2019, 4:57 PM · Restricted Project

Sep 2 2019

zoecarver added inline comments to D67086: Implement syncstream (p0053).
Sep 2 2019, 2:07 PM · Restricted Project
zoecarver created D67086: Implement syncstream (p0053).
Sep 2 2019, 1:58 PM · Restricted Project

Sep 1 2019

zoecarver added inline comments to D66262: Constrain tuple/unique_ptr move constructors (2899).
Sep 1 2019, 3:15 PM · Restricted Project
zoecarver added a comment to D62889: rvalue stream operators (1203 and 2534).

Does this look good? I would like to get it committed :)

Sep 1 2019, 3:15 PM · Restricted Project
zoecarver updated the diff for D67052: Add reference type transformation builtins.
  • remove accedentally added file
Sep 1 2019, 2:39 PM · Restricted Project, Restricted Project
zoecarver added inline comments to D67052: Add reference type transformation builtins.
Sep 1 2019, 2:38 PM · Restricted Project, Restricted Project
zoecarver created D67052: Add reference type transformation builtins.
Sep 1 2019, 2:34 PM · Restricted Project, Restricted Project

Aug 31 2019

zoecarver updated the diff for D66862: Make lround builtin constexpr (and others).
  • add roundl builtins
  • add more tests
  • address review comments
Aug 31 2019, 12:17 PM · Restricted Project
zoecarver added a comment to D66862: Make lround builtin constexpr (and others).

Are you intentionally excluding builtin_lroundl/builtin_llroundl?

Aug 31 2019, 12:08 PM · Restricted Project
zoecarver added inline comments to D66862: Make lround builtin constexpr (and others).
Aug 31 2019, 12:08 PM · Restricted Project

Aug 30 2019

zoecarver committed rGfa0bc006900f: Update libc++ release notes (authored by zoecarver).
Update libc++ release notes
Aug 30 2019, 1:06 PM
zoecarver closed D66959: Update libc++ release notes.

Committed as rL370514.

Aug 30 2019, 1:06 PM · Restricted Project
zoecarver committed rL370514: Update libc++ release notes.
Update libc++ release notes
Aug 30 2019, 1:05 PM
zoecarver updated the diff for D66959: Update libc++ release notes.
  • update back-tick links to be code
Aug 30 2019, 12:27 PM · Restricted Project
zoecarver added inline comments to D66959: Update libc++ release notes.
Aug 30 2019, 12:21 PM · Restricted Project

Aug 29 2019

zoecarver updated the diff for D66862: Make lround builtin constexpr (and others).
  • fix: formatting
Aug 29 2019, 2:41 PM · Restricted Project
zoecarver updated the diff for D66862: Make lround builtin constexpr (and others).
  • fix expected error
  • fix APInt width
  • fix nan tests
Aug 29 2019, 2:41 PM · Restricted Project
zoecarver added inline comments to D66862: Make lround builtin constexpr (and others).
Aug 29 2019, 2:36 PM · Restricted Project