microsoft / msix-packaging

MSIX SDK
MIT License
963 stars 163 forks source link

Get code building under c++20 #565

Open Penguinwizzard opened 1 year ago

Penguinwizzard commented 1 year ago

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 commented 1 year ago

/azp run

azure-pipelines[bot] commented 1 year ago
Azure Pipelines could not run because the pipeline triggers exclude this branch/path.