Page MenuHomePhabricator

cjdb (Christopher Di Bella)
User

Projects

User does not belong to any projects.

User Details

User Since
Apr 11 2017, 5:18 AM (208 w, 6 d)

Recent Activity

Yesterday

cjdb requested review of D100283: [libcxx] removes `weak_equality` and `strong_equality` from <compare>.
Sun, Apr 11, 10:27 PM · Restricted Project
cjdb requested review of D100278: [libcxx] adds `bidirectional_iterator` and `bidirectional_range`.
Sun, Apr 11, 6:20 PM · Restricted Project
cjdb added a comment to D100277: [libc++] [test] Detect an improperly noexcept'ed __decay_copy..

Maybe it's worth cleaning up __decay_copy in this patch too? It's probably best if we commit separately to D100225.

Sun, Apr 11, 4:21 PM · Restricted Project
cjdb requested review of D100275: [libcxx] adds `forward_iterator` and `forward_range`.
Sun, Apr 11, 3:12 PM · Restricted Project
cjdb updated the diff for D100271: [libcxx] adds `input_iterator` and `input_range`.

updates synopsis, rebases to activate CI

Sun, Apr 11, 2:45 PM · Restricted Project
cjdb updated the diff for D100269: [libcxx] adds concept `range` and range aliases.

rebases to activate CI

Sun, Apr 11, 2:42 PM · Restricted Project
cjdb updated the diff for D100255: [libcxx] adds `range` access CPOs.

rebases to activate CI

Sun, Apr 11, 2:42 PM · Restricted Project
cjdb updated the diff for D100160: [libcxx] adds `std::input_or_output_iterator` and `std::sentinel_for` to <iterator>.

updates synopsis, rebases to activate CI

Sun, Apr 11, 2:42 PM · Restricted Project
cjdb updated the diff for D100080: [libcxx] adds `std::weakly_incrementable` and `std::incrementable` to <iterator>.

updates synopsis, rebases to activate CI

Sun, Apr 11, 2:40 PM · Restricted Project
cjdb updated the diff for D100078: [libcxx] adds `std::indirectly_writable` to <iterator>.

updates synopsis, rebases to activate CI

Sun, Apr 11, 2:39 PM · Restricted Project
cjdb updated the diff for D100073: [libcxx] adds `std::indirectly_readable` to <iterator>.

adds synopsis, rebases to activate CI

Sun, Apr 11, 2:38 PM · Restricted Project
cjdb updated the diff for D99873: [libcxx] adds `std::ranges::iter_move` and `std::iter_rvalue_reference_t.

rebases to activate CI

Sun, Apr 11, 2:37 PM · Restricted Project
cjdb updated the diff for D99863: [libcxx] adds `iter_difference_t` and `iter_value_t`.

rebases to activate CI

Sun, Apr 11, 2:36 PM · Restricted Project
cjdb updated the diff for D99855: [libcxx] makes `iterator_traits` C++20-aware.

rebases to activate CI

Sun, Apr 11, 2:35 PM · Restricted Project
cjdb updated the diff for D99854: [libcxx] adds `cpp17-.*iterator` concepts (as `__legacy_.*iterator`).

rebases to activate CI

Sun, Apr 11, 2:35 PM · Restricted Project
cjdb updated the diff for D99461: [libcxx] adds `std::indirectly_readable_traits` to <iterator>.

rebases to activate CI

Sun, Apr 11, 2:35 PM · Restricted Project
cjdb updated the diff for D99141: [libcxx] adds `std::incrementable_traits` to <iterator>.

rebases to activate CI

Sun, Apr 11, 2:34 PM · Restricted Project
cjdb requested review of D100271: [libcxx] adds `input_iterator` and `input_range`.
Sun, Apr 11, 1:58 PM · Restricted Project
cjdb added inline comments to D100255: [libcxx] adds `range` access CPOs.
Sun, Apr 11, 12:43 PM · Restricted Project
cjdb added inline comments to D100255: [libcxx] adds `range` access CPOs.
Sun, Apr 11, 12:42 PM · Restricted Project
cjdb updated the diff for D100255: [libcxx] adds `range` access CPOs.

addresses feedback from @Quuxplusone and @tcanens

Sun, Apr 11, 12:41 PM · Restricted Project
cjdb requested review of D100269: [libcxx] adds concept `range` and range aliases.
Sun, Apr 11, 10:44 AM · Restricted Project
cjdb updated the diff for D100255: [libcxx] adds `range` access CPOs.

re-adds missing underscore that was deleted in clang-format cleanup

Sun, Apr 11, 10:01 AM · Restricted Project
cjdb updated the diff for D100255: [libcxx] adds `range` access CPOs.

updates commit message (NFC)

Sun, Apr 11, 9:25 AM · Restricted Project

Sat, Apr 10

cjdb updated the diff for D100255: [libcxx] adds `range` access CPOs.

corrects and suppresses clang-format due to its inexperience with concepts

Sat, Apr 10, 10:45 PM · Restricted Project
cjdb updated the diff for D100255: [libcxx] adds `range` access CPOs.

fixes dependency in commit message (NFC)

Sat, Apr 10, 10:37 PM · Restricted Project
cjdb requested review of D100255: [libcxx] adds `range` access CPOs.
Sat, Apr 10, 10:36 PM · Restricted Project

Thu, Apr 8

cjdb requested review of D100160: [libcxx] adds `std::input_or_output_iterator` and `std::sentinel_for` to <iterator>.
Thu, Apr 8, 7:12 PM · Restricted Project
cjdb added inline comments to D99141: [libcxx] adds `std::incrementable_traits` to <iterator>.
Thu, Apr 8, 11:06 AM · Restricted Project
cjdb added inline comments to D99141: [libcxx] adds `std::incrementable_traits` to <iterator>.
Thu, Apr 8, 10:55 AM · Restricted Project
cjdb accepted D90999: [libc++] Implements ranges::enable_borrowed_range.
Thu, Apr 8, 10:45 AM · Restricted Project
cjdb added inline comments to D99873: [libcxx] adds `std::ranges::iter_move` and `std::iter_rvalue_reference_t.
Thu, Apr 8, 8:49 AM · Restricted Project
cjdb updated the diff for D100080: [libcxx] adds `std::weakly_incrementable` and `std::incrementable` to <iterator>.

corrects typo tanking CI

Thu, Apr 8, 8:43 AM · Restricted Project
cjdb added inline comments to D99873: [libcxx] adds `std::ranges::iter_move` and `std::iter_rvalue_reference_t.
Thu, Apr 8, 8:31 AM · Restricted Project

Wed, Apr 7

cjdb updated the diff for D99873: [libcxx] adds `std::ranges::iter_move` and `std::iter_rvalue_reference_t.

fixes iter_move per @tcanens' feedback
moves __class_or_enum out of __swap scope since it's useful elsewhere

Wed, Apr 7, 11:00 PM · Restricted Project
cjdb updated the diff for D99855: [libcxx] makes `iterator_traits` C++20-aware.

moves iterator_traits into __iterator_traits as per @tcanens' feedback
hopefully gets CI working

Wed, Apr 7, 8:58 PM · Restricted Project
cjdb updated the diff for D99854: [libcxx] adds `cpp17-.*iterator` concepts (as `__legacy_.*iterator`).

applies LWG3420 and (hopefully) fixes locale build failure

Wed, Apr 7, 8:02 PM · Restricted Project
cjdb added inline comments to D99461: [libcxx] adds `std::indirectly_readable_traits` to <iterator>.
Wed, Apr 7, 7:43 PM · Restricted Project
cjdb updated the diff for D100080: [libcxx] adds `std::weakly_incrementable` and `std::incrementable` to <iterator>.

renames all the cryptic types imported from cjdb-ranges

Wed, Apr 7, 5:55 PM · Restricted Project
cjdb requested review of D100080: [libcxx] adds `std::weakly_incrementable` and `std::incrementable` to <iterator>.
Wed, Apr 7, 5:48 PM · Restricted Project
cjdb requested review of D100078: [libcxx] adds `std::indirectly_writable` to <iterator>.
Wed, Apr 7, 5:07 PM · Restricted Project
cjdb updated the diff for D100073: [libcxx] adds `std::indirectly_readable` to <iterator>.

moves types common to indirectly_readable and indirectly_writable tests into a header

Wed, Apr 7, 4:58 PM · Restricted Project
cjdb requested review of D100073: [libcxx] adds `std::indirectly_readable` to <iterator>.
Wed, Apr 7, 3:53 PM · Restricted Project
cjdb committed rG920c0f7e09e2: [libcxx] adds __cpp_lib_concepts feature-test macro (authored by cjdb).
[libcxx] adds __cpp_lib_concepts feature-test macro
Wed, Apr 7, 9:16 AM
cjdb committed rGc7ad02009934: [libcxx] adds remaining callable concepts (authored by cjdb).
[libcxx] adds remaining callable concepts
Wed, Apr 7, 9:16 AM
cjdb closed D99805: [libcxx] adds __cpp_lib_concepts feature-test macro.
Wed, Apr 7, 9:15 AM · Restricted Project
cjdb added inline comments to D99873: [libcxx] adds `std::ranges::iter_move` and `std::iter_rvalue_reference_t.
Wed, Apr 7, 8:47 AM · Restricted Project

Tue, Apr 6

cjdb updated the diff for D99873: [libcxx] adds `std::ranges::iter_move` and `std::iter_rvalue_reference_t.

rebases to activate CI

Tue, Apr 6, 11:48 PM · Restricted Project
cjdb added inline comments to D99863: [libcxx] adds `iter_difference_t` and `iter_value_t`.
Tue, Apr 6, 11:32 PM · Restricted Project
cjdb updated the diff for D99863: [libcxx] adds `iter_difference_t` and `iter_value_t`.

replaces conditional_t with _If

Tue, Apr 6, 11:32 PM · Restricted Project
cjdb committed rGcedd07df5136: [libcxx] fixes `common_reference` requirement for `swappable_with` (authored by cjdb).
[libcxx] fixes `common_reference` requirement for `swappable_with`
Tue, Apr 6, 10:52 PM
cjdb closed D99817: [libcxx] fixes `common_reference` requirement for `swappable_with`.
Tue, Apr 6, 10:51 PM · Restricted Project
cjdb updated the diff for D99855: [libcxx] makes `iterator_traits` C++20-aware.

rebases to activate CI

Tue, Apr 6, 10:01 PM · Restricted Project
cjdb updated the diff for D99854: [libcxx] adds `cpp17-.*iterator` concepts (as `__legacy_.*iterator`).

rebases to activate CI

Tue, Apr 6, 9:54 PM · Restricted Project
cjdb updated the diff for D99461: [libcxx] adds `std::indirectly_readable_traits` to <iterator>.

fixes GCC compile-time error with a workaround

Tue, Apr 6, 9:35 PM · Restricted Project
cjdb updated the diff for D99805: [libcxx] adds __cpp_lib_concepts feature-test macro.

rebases to activate CI, applies @curdeius' comment suggestions from D96477 (putting them in this patch makes more sense due to this patch's detachment from anything specific)

Tue, Apr 6, 9:54 AM · Restricted Project
cjdb updated the diff for D99817: [libcxx] fixes `common_reference` requirement for `swappable_with`.

rebases to activate CI (hopefully for the last time)

Tue, Apr 6, 9:47 AM · Restricted Project
cjdb committed rG96dbdd753a1f: [libcxx] adds remaining callable concepts (authored by cjdb).
[libcxx] adds remaining callable concepts
Tue, Apr 6, 9:36 AM
cjdb closed D96477: [libcxx] adds remaining callable concepts.
Tue, Apr 6, 9:36 AM · Restricted Project

Mon, Apr 5

cjdb updated the diff for D99854: [libcxx] adds `cpp17-.*iterator` concepts (as `__legacy_.*iterator`).

adds guards around the filesystem stuff

Mon, Apr 5, 11:48 PM · Restricted Project
cjdb added inline comments to D99461: [libcxx] adds `std::indirectly_readable_traits` to <iterator>.
Mon, Apr 5, 11:23 PM · Restricted Project
cjdb updated the diff for D99461: [libcxx] adds `std::indirectly_readable_traits` to <iterator>.

adds pragma to test to silence GCC warning

Mon, Apr 5, 11:23 PM · Restricted Project
cjdb added a comment to D99141: [libcxx] adds `std::incrementable_traits` to <iterator>.

I'd like to put an end to comments about "too many tests" once and for all. I think we all agree that test coverage is a good property to have. I think we also agree that readability is a good property to have, and that code duplication is bad. We want both, as much as possible.

I think what we're seeing here is an example where we have a lot of code coverage, which is great, however the cost (right now) is a lot of repetition, and hence decreased readability. For me, the solution is not to remove the test coverage, but instead to implement it without reducing readability so much. Here's an example of how this can be done (there are other ways, for example we could use templates instead but I just hacked this together). This replaces lines 174 to 702. Yes it's still not *small*, but it's much better and IMO easier to read, while not dropping any of the coverage. And it would be easy to make it even better by using two nested "loops" over all qualifiers, but it's unclear to me that would actually increase readability.

...

WDYT? If we have to do this sort of thing frequently, we could also bundle a few utilities under support/ to reduce duplication further.

Mon, Apr 5, 10:38 PM · Restricted Project
cjdb updated the diff for D99141: [libcxx] adds `std::incrementable_traits` to <iterator>.

applies @ldionne's proposed test framework

Mon, Apr 5, 10:36 PM · Restricted Project
cjdb updated the diff for D99805: [libcxx] adds __cpp_lib_concepts feature-test macro.

rebases to fix CI

Mon, Apr 5, 7:19 PM · Restricted Project
cjdb added a comment to D99805: [libcxx] adds __cpp_lib_concepts feature-test macro.

@zoecarver @curdeius this patch now changes a feature-test macro, so I don't think it can be NFC. Are you okay with that?

Mon, Apr 5, 7:18 PM · Restricted Project
cjdb updated the diff for D99805: [libcxx] adds __cpp_lib_concepts feature-test macro.

properly updates feature-test macro per @Mordante's request

Mon, Apr 5, 7:17 PM · Restricted Project
cjdb added inline comments to D99817: [libcxx] fixes `common_reference` requirement for `swappable_with`.
Mon, Apr 5, 7:03 PM · Restricted Project
cjdb updated the diff for D99817: [libcxx] fixes `common_reference` requirement for `swappable_with`.

adds assert and makes commit message more descriptive

Mon, Apr 5, 7:03 PM · Restricted Project
cjdb committed rGc25c22d5f9b7: [libcxx] moves `std::invoke` into `__functional_base` (authored by cjdb).
[libcxx] moves `std::invoke` into `__functional_base`
Mon, Apr 5, 6:46 PM
cjdb closed D99041: [libcxx] moves `std::invoke` into `__functional_base`.
Mon, Apr 5, 6:46 PM · Restricted Project
cjdb updated subscribers of D96477: [libcxx] adds remaining callable concepts.
Mon, Apr 5, 6:19 PM · Restricted Project
cjdb updated the diff for D96477: [libcxx] adds remaining callable concepts.

corrects self-subsumption test

Mon, Apr 5, 6:17 PM · Restricted Project
cjdb added a comment to D96477: [libcxx] adds remaining callable concepts.

This patch has been open for almost two months now, so if there's nothing else that urgently needs attention, I'd like to see it merged today.

Mon, Apr 5, 9:22 AM · Restricted Project
cjdb updated the diff for D96477: [libcxx] adds remaining callable concepts.

changes incorrect version from 14.0 to 13.0 and renames incorrectly-named overload

Mon, Apr 5, 9:14 AM · Restricted Project

Sun, Apr 4

cjdb requested review of D99873: [libcxx] adds `std::ranges::iter_move` and `std::iter_rvalue_reference_t.
Sun, Apr 4, 11:41 PM · Restricted Project
cjdb updated the diff for D99863: [libcxx] adds `iter_difference_t` and `iter_value_t`.

rebases to activate CI

Sun, Apr 4, 11:32 PM · Restricted Project
cjdb updated the diff for D99855: [libcxx] makes `iterator_traits` C++20-aware.

rebases to activate CI

Sun, Apr 4, 11:17 PM · Restricted Project
cjdb updated the diff for D99854: [libcxx] adds `cpp17-.*iterator` concepts (as `__legacy_.*iterator`).

rebases to activate CI

Sun, Apr 4, 11:08 PM · Restricted Project
cjdb updated the diff for D99461: [libcxx] adds `std::indirectly_readable_traits` to <iterator>.

rebases to activate CI

Sun, Apr 4, 10:56 PM · Restricted Project
cjdb updated the diff for D99141: [libcxx] adds `std::incrementable_traits` to <iterator>.

adds internal ranges feature-test macro

Sun, Apr 4, 10:47 PM · Restricted Project
cjdb updated the diff for D99041: [libcxx] moves `std::invoke` into `__functional_base`.

rebases to activate CI

Sun, Apr 4, 10:32 PM · Restricted Project
cjdb added inline comments to D99863: [libcxx] adds `iter_difference_t` and `iter_value_t`.
Sun, Apr 4, 7:09 PM · Restricted Project
cjdb updated the diff for D99863: [libcxx] adds `iter_difference_t` and `iter_value_t`.

makes iter_difference_t and iter_value_t SFINAE-friendly and consolidates test files

Sun, Apr 4, 7:07 PM · Restricted Project
cjdb added inline comments to D99855: [libcxx] makes `iterator_traits` C++20-aware.
Sun, Apr 4, 4:39 PM · Restricted Project
cjdb updated the diff for D96477: [libcxx] adds remaining callable concepts.

rebases to activate CI

Sun, Apr 4, 2:27 PM · Restricted Project
cjdb updated the diff for D99855: [libcxx] makes `iterator_traits` C++20-aware.

applies @Mordante's feedback

Sun, Apr 4, 2:19 PM · Restricted Project
cjdb added inline comments to D99863: [libcxx] adds `iter_difference_t` and `iter_value_t`.
Sun, Apr 4, 2:11 PM · Restricted Project
cjdb added inline comments to D99863: [libcxx] adds `iter_difference_t` and `iter_value_t`.
Sun, Apr 4, 2:03 PM · Restricted Project
cjdb updated the diff for D99863: [libcxx] adds `iter_difference_t` and `iter_value_t`.

applies feedback from @miscco and @Mordante

Sun, Apr 4, 2:03 PM · Restricted Project
cjdb updated the diff for D99805: [libcxx] adds __cpp_lib_concepts feature-test macro.

enables feature-test macro, revises commit message

Sun, Apr 4, 2:00 PM · Restricted Project
cjdb added inline comments to D99817: [libcxx] fixes `common_reference` requirement for `swappable_with`.
Sun, Apr 4, 12:53 PM · Restricted Project
cjdb updated the diff for D99817: [libcxx] fixes `common_reference` requirement for `swappable_with`.

gets CI passing

Sun, Apr 4, 12:52 PM · Restricted Project
cjdb requested review of D99863: [libcxx] adds `iter_difference_t` and `iter_value_t`.
Sun, Apr 4, 11:53 AM · Restricted Project

Sat, Apr 3

cjdb updated the diff for D99855: [libcxx] makes `iterator_traits` C++20-aware.

removes zero-width joiners

Sat, Apr 3, 10:43 PM · Restricted Project
cjdb requested review of D99855: [libcxx] makes `iterator_traits` C++20-aware.
Sat, Apr 3, 10:41 PM · Restricted Project
cjdb requested review of D99854: [libcxx] adds `cpp17-.*iterator` concepts (as `__legacy_.*iterator`).
Sat, Apr 3, 10:34 PM · Restricted Project

Fri, Apr 2

cjdb updated the diff for D99461: [libcxx] adds `std::indirectly_readable_traits` to <iterator>.

rebases to activate CI

Fri, Apr 2, 9:35 PM · Restricted Project
cjdb updated the diff for D99141: [libcxx] adds `std::incrementable_traits` to <iterator>.

fixes include guard to guard on concepts

Fri, Apr 2, 9:21 PM · Restricted Project
cjdb updated the diff for D99805: [libcxx] adds __cpp_lib_concepts feature-test macro.

applies @zoecarver and @curdeius' feedback

Fri, Apr 2, 2:37 PM · Restricted Project