From db55d8331e631e84b07e6fbad923085b4baa9597 Mon Sep 17 00:00:00 2001 From: Leonard Chan Date: Sat, 2 Jun 2018 02:58:51 +0000 Subject: This diff includes changes for supporting the following types. ``` // Primary fixed point types signed short _Accum s_short_accum; signed _Accum s_accum; signed long _Accum s_long_accum; unsigned short _Accum u_short_accum; unsigned _Accum u_accum; unsigned long _Accum u_long_accum; // Aliased fixed point types short _Accum short_accum; _Accum accum; long _Accum long_accum; ``` This diff only allows for declaration of the fixed point types. Assignment and other operations done on fixed point types according to http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1169.pdf will be added in future patches. The saturated versions of these types and the equivalent `_Fract` types will also be added in future patches. The tests included are for asserting that we can declare these types. Differential Revision: https://reviews.llvm.org/D46084 llvm-svn: 333814 --- clang/lib/AST/NSAPI.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'clang/lib/AST/NSAPI.cpp') diff --git a/clang/lib/AST/NSAPI.cpp b/clang/lib/AST/NSAPI.cpp index 030f2a0c9c7..d61638e54a1 100644 --- a/clang/lib/AST/NSAPI.cpp +++ b/clang/lib/AST/NSAPI.cpp @@ -441,6 +441,12 @@ NSAPI::getNSNumberFactoryMethodKind(QualType T) const { case BuiltinType::Char32: case BuiltinType::Int128: case BuiltinType::LongDouble: + case BuiltinType::ShortAccum: + case BuiltinType::Accum: + case BuiltinType::LongAccum: + case BuiltinType::UShortAccum: + case BuiltinType::UAccum: + case BuiltinType::ULongAccum: case BuiltinType::UInt128: case BuiltinType::Float16: case BuiltinType::Float128: -- cgit v1.2.3