Skip to content

Conversation

@vmichal
Copy link
Contributor

@vmichal vmichal commented Nov 12, 2025

Remove free function overloads of begin and end for initializer_list.
Replace free function overloads empty and data for initializer_list with member functions.
Replace free function overloads begin and end for valarray with member functions.
Provide new feature test macros __cpp_lib_initializer_list and __cpp_lib_valarray.

Resolves #5840

@vmichal vmichal requested a review from a team as a code owner November 12, 2025 14:23
@github-project-automation github-project-automation bot moved this to Initial Review in STL Code Reviews Nov 12, 2025
@vmichal
Copy link
Contributor Author

vmichal commented Nov 12, 2025

@microsoft-github-policy-service agree

@vmichal

This comment was marked as resolved.

@vmichal

This comment was marked as resolved.

@StephanTLavavej

This comment was marked as resolved.

@StephanTLavavej StephanTLavavej added the cxx26 C++26 feature label Nov 12, 2025
@StephanTLavavej StephanTLavavej moved this from Initial Review to Work In Progress in STL Code Reviews Nov 12, 2025
Only check that begin(initializer_list) is constexpr in C++17 onwards
(tests/Dev11_1074023_constexpr).

Mark libc++ std/language.support/support.initlist/support.initlist.range/begin_end.pass.cpp
as known FAIL.
@StephanTLavavej StephanTLavavej self-assigned this Nov 12, 2025
@StephanTLavavej StephanTLavavej moved this from Work In Progress to Initial Review in STL Code Reviews Nov 12, 2025
@StephanTLavavej

This comment was marked as outdated.

@StephanTLavavej StephanTLavavej removed their assignment Nov 14, 2025
@StephanTLavavej StephanTLavavej changed the title Implement P3016R6 Resolve Inconsistencies In begin/end For valarray And Braced Initializer Lists Implement P3016R6 Resolve Inconsistencies In begin/end For valarray And Braced Initializer Lists Nov 29, 2025
@vmichal
Copy link
Contributor Author

vmichal commented Dec 18, 2025

Hi, just FYI this PR is somewhat blocking a new test I am writing for requirements stated in [iterator.range]/1 (motivated by implementation of LWG-3987). Since it is motivated by flat_meow stuff, it will probably appear in the feature branch, just with valarray branch disabled. When this gets accepted, we should update the test.

@StephanTLavavej
Copy link
Member

Thanks! I pushed some changes, notably to remove "strengthened" noexcept comments and simplify ssize().

@StephanTLavavej StephanTLavavej removed their assignment Jan 7, 2026
@StephanTLavavej StephanTLavavej moved this from Initial Review to Ready To Merge in STL Code Reviews Jan 7, 2026
@StephanTLavavej StephanTLavavej moved this from Ready To Merge to Merging in STL Code Reviews Jan 7, 2026
@StephanTLavavej
Copy link
Member

I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cxx26 C++26 feature

Projects

Status: Merging

Development

Successfully merging this pull request may close these issues.

P3016R6 Resolve Inconsistencies In begin/end For valarray And Braced Initializer Lists

3 participants