Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@StephanTLavavej
Copy link
Member

@StephanTLavavej StephanTLavavej commented Aug 16, 2023

Fixes #2909.

Thanks to @MattStephanson for starting this major feature branch with #3502, and to @JMazurkiewicz for finishing it with an incredible amount of work (#3534 #3535 #3560 #3564 #3580 #3586 #3593 #3603 #3615 #3616 #3632 #3672 #3673 #3674 #3682 #3688 #3689 #3690 #3693 #3694 #3698 #3701 #3702 #3715 #3749 #3767 #3786 #3821 #3825 #3829 #3847 #3852 wow!!!). Also thanks to @AlexGuteniev (#3944) and @frederick-vs-ja (#3638 #3901) for additional contributions. The feature branch also contains my own code review feedback (#3563 #3885 #3954 #3971), and merges from main by @CaseyCarter and myself to keep the branch active.

This will merge the feature branch feature/mdspan2 into main. It's a separate branch on my own fork so we can push additional last-minute commits if necessary, without going through multiple PRs. (Also, GitHub gets confused when directly merging between branches in the same fork.) Currently, this contains 3 additional commits:

  • Update the #endif comment next to the feature-test macro in <yvals_core.h> for consistency with recent cleanups.
  • Merge with main to resolve a trivial merge conflict in <yvals_core.h> around __cpp_lib_mdspan, as the formerly-adjacent __cpp_lib_modules has moved to the C++20 section.
  • Fix the stealth merge conflict that I foretold in Support the Standard Library Modules in C++20 modeΒ #3977.

Followed by a bunch of commits from @CaseyCarter's code review.

⚠️ Reminder: this PR needs additional changes when merged to the internal MSVC repository ⚠️

Per https://github.com/microsoft/STL/wiki/Files-To-Edit-When-Adding-Or-Removing-Files.

MattStephanson and others added 30 commits February 24, 2023 22:15
* First cut of `mdspan`, known to be incomplete.
Merge `main` to `feature/mdspan2`
Merge `main` to `feature/mdspan2`
Merge `main` to `feature/mdspan2`
Merge `main` to `feature/mdspan2`
Merge `main` to `feature/mdspan2`
Merge `main` to `feature/mdspan2`, include `<limits>`
Merge `main` to `feature/mdspan2`
Merge `main` to `feature/mdspan2`
@StephanTLavavej

This comment was marked as resolved.

Copy link
Contributor

@CaseyCarter CaseyCarter left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've prepared fixes for these comments except for "_Fwd_prod_of_extents::_Calculate can potentially overflow when mdspan::size's precondition is satisfied", which I think deserves a bit of deep thinking and a followup issue. I'm going to PR a series of nicely fine-grained commits into STL's fork for ease of review.

@CaseyCarter CaseyCarter removed their assignment Sep 13, 2023
@CaseyCarter
Copy link
Contributor

πŸš€

@StephanTLavavej
Copy link
Member Author

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@StephanTLavavej StephanTLavavej self-assigned this Sep 13, 2023
@StephanTLavavej
Copy link
Member Author

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

@StephanTLavavej StephanTLavavej merged commit 23bc2a0 into microsoft:main Sep 14, 2023
@StephanTLavavej StephanTLavavej deleted the mdspan branch September 14, 2023 18:59
@StephanTLavavej
Copy link
Member Author

Thanks again @JMazurkiewicz, @MattStephanson, @AlexGuteniev, @frederick-vs-ja, and @CaseyCarter!

πŸŽ‰ πŸŽ‰ πŸŽ‰

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

Labels

cxx23 C++23 feature mdspan C++23 mdspan

Projects

None yet

Development

Successfully merging this pull request may close these issues.

P0009R18 <mdspan>

9 participants