-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Add support for C++20's char8_t type. #3074
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
Add support for C++20's char8_t type. #3074
Conversation
Language-Tests/CPP failures are those we expect to fail because this is using an extractor which doesn't support |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
I git-grepped for |
Note that if you add a commit to this PR with the changes I suggested, you don't have to update the internal PR to bump the submodule. It should be fine to leave the submodule pointing at a commit that's not the head of this PR as long as the changes past that point aren't crucial to correctness. |
7b0539c should cover these changes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
7b0539c
to
a6947e0
Compare
Internal extractor PR: https://git.semmle.com/Semmle/code/pull/36459
GH issue: https://github.com/github/codeql-c-extractor-team/issues/50
This adds support for
char8_t
a new type supported by C++20. I have added basic support to the extractor and C++ QL libraries to treat it likechar16_t
I have not attempted to write a complex upgrade script which converts non-builtin
char8_t
types to builtin ones because we run the risk of breaking databases wherechar8_t
is not a builtin type (because they're not C++20).