diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2012-08-31 00:14:07 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2012-08-31 00:14:07 +0000 |
commit | a6c66cedc022c9e5d45a937d6b8cff491a6bf81b (patch) | |
tree | 22786c2c1573674a6e48ac4e7b0af5d7ad453d9a /include/clang/Serialization/ASTBitCodes.h | |
parent | 918546c584c91ee917c919c967d7d73cecd295dc (diff) |
Change the representation of builtin functions in the AST
(__builtin_* etc.) so that it isn't possible to take their address.
Specifically, introduce a new type to represent a reference to a builtin
function, and a new cast kind to convert it to a function pointer in the
operand of a call. Fixes PR13195.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162962 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Serialization/ASTBitCodes.h')
-rw-r--r-- | include/clang/Serialization/ASTBitCodes.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/include/clang/Serialization/ASTBitCodes.h b/include/clang/Serialization/ASTBitCodes.h index 2f9e1c21b6..f2134134ae 100644 --- a/include/clang/Serialization/ASTBitCodes.h +++ b/include/clang/Serialization/ASTBitCodes.h @@ -642,7 +642,9 @@ namespace clang { /// \brief The pseudo-object placeholder type. PREDEF_TYPE_PSEUDO_OBJECT = 35, /// \brief The __va_list_tag placeholder type. - PREDEF_TYPE_VA_LIST_TAG = 36 + PREDEF_TYPE_VA_LIST_TAG = 36, + /// \brief The placeholder type for builtin functions. + PREDEF_TYPE_BUILTIN_FN = 37 }; /// \brief The number of predefined type IDs that are reserved for |