https://github.com/AaronBallman commented:
Thank you for working on this! Please be sure to add a release note to `clang/docs/ReleaseNotes.rst` so users know about the change. You should also update the PR summary to explain why the changes are being made because that summary is what ends up being the [commit message](https://llvm.org/docs/DeveloperPolicy.html#commit-messages). Was an AI used to assist with this PR? If so, please let us know in the summary so we're aware (as part of our [AI use policies](https://llvm.org/docs/AIToolPolicy.html)). Precommit CI found relevant test failures that need to be addressed. But one thing we also need to think about is how our builtins relate to the runtime library being used. C standard library functions are a bit odd in that they're not necessarily tied to a language mode. e.g., in C you can declare your own library functions without including a header, what matters is whether the symbol is known at link time and at runtime. So if you have a newer CRT, you can still call those newer functions from older language modes. And we use these builtins files to track more than just whether a name is reserved or not (e.g., we recognize library builtins by name and replace them with builtin calls sometimes: https://godbolt.org/z/GGG78YboM). I didn't have the chance to thoroughly look at the list of APIs, but we should be careful not to break code with this change if any later C functions are recognized in an earlier mode for something other than reserved identifier or symbol conflict diagnostics. https://github.com/llvm/llvm-project/pull/190244 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
