Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

span: Implement resolution to LWG-3320 #548

Merged
merged 2 commits into from
Feb 29, 2020

Conversation

miscco
Copy link
Contributor

@miscco miscco commented Feb 26, 2020

Description

In the resolution of LWG-3320 the const_iterator and const_reverse_iterator typedefs were removed together with the respective methods c{r}begin() and c{r}end().

Adopt the tests accordingly and skip the tests from libc++ until they remove them.

This addresses #542

Checklist

Be sure you've read README.md and understand the scope of this repo.

If you're unsure about a box, leave it unchecked. A maintainer will help you.

  • Identifiers in product code changes are properly _Ugly as per
    https://eel.is/c++draft/lex.name#3.1 or there are no product code changes.
  • The STL builds successfully and all tests have passed (must be manually
    verified by an STL maintainer before automated testing is enabled on GitHub,
    leave this unchecked for initial submission).
  • These changes introduce no known ABI breaks (adding members, renaming
    members, adding virtual functions, changing whether a type is an aggregate
    or trivially copyable, etc.).
  • These changes were written from scratch using only this repository,
    the C++ Working Draft (including any cited standards), other WG21 papers
    (excluding reference implementations outside of proposed standard wording),
    and LWG issues as reference material. If they were derived from a project
    that's already listed in NOTICE.txt, that's fine, but please mention it.
    If they were derived from any other project (including Boost and libc++,
    which are not yet listed in NOTICE.txt), you must mention it here,
    so we can determine whether the license is compatible and what else needs
    to be done.

@miscco miscco requested a review from a team as a code owner February 26, 2020 07:36
@StephanTLavavej StephanTLavavej added the LWG Library Working Group issue label Feb 26, 2020
Copy link
Member

@StephanTLavavej StephanTLavavej left a comment

Choose a reason for hiding this comment

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

Please also regex-search for span.*const_iterator in tests/std. I see at least tests/std/tests/Dev10_709168_marking_iterators_as_checked/test.cpp and tests/std/tests/Dev11_0000000_null_forward_iterators/test.cpp . Then this should be ready to go; thanks!

tests/libcxx/skipped_tests.txt Outdated Show resolved Hide resolved
tests/std/tests/P0122R7_span/test.cpp Outdated Show resolved Hide resolved
In the resolution of LWG-3320 the const_iterator and const_reverse_iterator typedefs were removed together with the respective methods c{r}begin() and c{r}end().

Adopt the tests accordingly and skip the tests from libc++ until they remove them.
@CaseyCarter
Copy link
Member

@miscco: Would you mind posting an /azp run comment in this review thread? We believe we've allowed arbitrary users to trigger Azure Pipelines but we need someone who's not a member of VC Libraries to test it.

@miscco
Copy link
Contributor Author

miscco commented Feb 27, 2020

The sacrifices I make ...

/azp run

@miscco
Copy link
Contributor Author

miscco commented Feb 27, 2020

/azp run

@azure-pipelines
Copy link

Commenter does not have sufficient privileges for PR 548 in repo microsoft/STL

@BillyONeal
Copy link
Member

Hmmmm now to figure out where in the labyrinth to poke it...

@BillyONeal
Copy link
Member

I tried granting "readers" permission to queue builds. Can you try once more? If this doesn't work I don't know if Pipelines can do that...

@miscco
Copy link
Contributor Author

miscco commented Feb 27, 2020

/azp run

@azure-pipelines
Copy link

Commenter does not have sufficient privileges for PR 548 in repo microsoft/STL

@miscco
Copy link
Contributor Author

miscco commented Feb 27, 2020

Hm, I am listed as Author and Contributor.

That said I really believe that running the tests should be something that you do when the PR is actually ready not me when I think I might want to test some more.

@BillyONeal
Copy link
Member

We want you (or anyone else) to be able to poke the service if your build fails due to a spurious failure like "the HTTP request to restore the vcpkg cache got unhappy".

@BillyONeal
Copy link
Member

"Contributors" already had access so maybe we're toast :/. Thanks for helping test!

Copy link
Member

@StephanTLavavej StephanTLavavej left a comment

Choose a reason for hiding this comment

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

Looks good now, thanks! I'll port this to the Microsoft-internal repo.

@StephanTLavavej StephanTLavavej self-assigned this Feb 29, 2020
tests/libcxx/skipped_tests.txt Outdated Show resolved Hide resolved
@StephanTLavavej StephanTLavavej merged commit 3e5230d into microsoft:master Feb 29, 2020
@StephanTLavavej
Copy link
Member

Thanks again for this interface update - it will ship in VS 2019 16.7 Preview 1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
LWG Library Working Group issue
Projects
None yet
Development

Successfully merging this pull request may close these issues.

LWG-3320 span::cbegin/cend methods produce different results than std::[ranges::]cbegin/cend
4 participants