Skip to content

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

@StephanTLavavej

Description

@StephanTLavavej

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.

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