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

Get code building under c++20 #565

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

Penguinwizzard
Copy link
Member

The only thing that seems to break when building under c++20 is that the u8-string literals change to char8_ts. However, we're not using any character in these literals that would require the support, and the rest of the code isn't using the right functions to have robust unicode support anyway, so I swapped to just classic char-string-literals.

I did a drive-by improvement to allow for some automatic determination of the right functions to use for these lists, if someone does want to change the types back to u8-literals (so, char under c++14 and char8_t under c++20), but there's issues further throughout the code that uses these values that building under c++20 reveals; I suspect that we're not universally using the right string comparison functions.

@msftrubengu
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines could not run because the pipeline triggers exclude this branch/path.

The only thing that seems to break when building under c++20 is that the
u8-string literals change to char8_ts. However, we're not using any
character in these literals that would require the support, and the rest
of the code isn't using the right functions to have robust unicode
support anyway, so I swapped to just classic char-string-literals.

I did a drive-by improvement to allow for some automatic determination
of the right functions to use for these lists, if someone does want to
change the types back to u8-literals (so, char under c++14 and char8_t
under c++20), but there's issues further throughout the code that uses
these values that building under c++20 reveals; I suspect that we're not
universally using the right string comparison functions.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants