[PATCH] D86508: [clang] implement+test remaining C90 __builtin_ functions
Richard Smith - zygoloid via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Sep 1 11:56:57 PDT 2020
rsmith added a comment.
LGTM
I've not checked all the types are correct (someone should double-check that prior to commit), but it looks like GCC provides these `__builtin_*` functions, so we should too. The addition of the non-`__builtin_` versions should improve our diagnostics but otherwise have no effect.
================
Comment at: clang/lib/Lex/PPMacroExpansion.cpp:348
// C++ Standing Document Extensions.
- if (LangOpts.CPlusPlus)
+ if (getLangOpts().CPlusPlus)
Ident__has_cpp_attribute =
----------------
The changes to this file appear to be independent of the rest of the patch. Please go ahead and land this cleanup separately.
================
Comment at: clang/test/CXX/over/over.oper/over.literal/p7.cpp:10
-void puts(const char *);
+int puts(const char *);
static inline void operator "" _puts(const char *c) {
----------------
Doesn't this also need to be `extern "C"` to be recognized as the builtin?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D86508/new/
https://reviews.llvm.org/D86508
More information about the cfe-commits
mailing list