Skip to content

STL: Test /std:c++latest /permissive (lax) mode #435

Description

The compiler recently implemented an explicit /permissive (lax) option.

An expected upcoming compiler change (Microsoft-internal MSVC-PR-221404) will make /std:c++latest imply /permissive- (strict). However, /std:c++latest /permissive (lax) will be a supported combination, and will be required by some of our users.

  • We'll need to change our test coverage accordingly. (Currently, we test /std:c++latest by itself, and /std:c++latest with /permissive- (strict), but not /std:c++latest /permissive (lax) because that option previously didn't exist.) We can update our tests immediately, to immunize them against the upcoming change to /std:c++latest.

  • We'll also need to figure out what to do about portions of the STL (like ranges) that absolutely cannot tolerate /permissive (lax) mode, since ranges is used by other components like span, and /permissive (lax) versus /permissive- (strict) cannot currently be detected at preprocessor time.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    fixedSomething works now, yay!testRelated to test code

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions