generator WIP#4342
Conversation
This comment was marked as resolved.
This comment was marked as resolved.
* Move `elements_of` into `<ranges>` where it belongs * Move `_Promise_allocator` into `<generator>` since we have no other standard promise types to reuse it * Remove lots of now-unnecessary clang-format suppression
| #ifdef __cpp_lib_byte | ||
| using _Elements_alloc_type = byte; | ||
| #else | ||
| using _Elements_alloc_type = char; | ||
| #endif |
There was a problem hiding this comment.
Hmm, perhaps we should be consistent on whether there's workaround when __cpp_lib_byte is not defined, see #4337 (comment).
There was a problem hiding this comment.
Yeah, this is different than our previous __cpp_lib_byte checks, and is ODR-violation-ish.
Really we need to push for the WinSDK to be fixed, but in the meantime we should definitely think about what to do here.
|
Clang x86 failures: |
If you're adding workarounds for one compiler bug while removing workarounds for a different compiler bug, you may be a standard library implementor. |
Seems like LLVM-56507? |
Drive-by: remove commented-out printf debugging code
|
Ha, I filed that a year and a half ago and forgot! The bug report is coming from inside the house! 😹 |
|
Thanks! Checks are green, and I did an extremely cursory review to confirm that all newly added files have our copyright/license banner, so let's get this party started. I also updated the tracking issue to capture your todos. |
My reference implementation of
generatorfrom the proposal. This needs more thorough testing, a quick audit to ensure it meets all the requirements, and a review of the allocator handling. I haven't had time to work on this, so I'm putting it in a feature branch where others can contribute if they like.Works towards #2936.