xref: /aosp_15_r20/external/clang/test/SemaCXX/ms_integer_suffix.cpp (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li // RUN: %clang_cc1 -std=c++11 -fsyntax-only -fms-extensions -verify %s
2*67e74705SXin Li // expected-no-diagnostics
3*67e74705SXin Li 
4*67e74705SXin Li #ifdef __SIZEOF_INT8__
5*67e74705SXin Li static_assert(sizeof(0i8) == __SIZEOF_INT8__, "");
6*67e74705SXin Li 
f(char)7*67e74705SXin Li constexpr int f(char) { return 1; }
f(signed char)8*67e74705SXin Li constexpr int f(signed char) { return 2; }
9*67e74705SXin Li 
10*67e74705SXin Li static_assert(f(0i8) == 1, "");
11*67e74705SXin Li #endif
12*67e74705SXin Li #ifdef __SIZEOF_INT16__
13*67e74705SXin Li static_assert(sizeof(0i16) == __SIZEOF_INT16__, "");
14*67e74705SXin Li #endif
15*67e74705SXin Li #ifdef __SIZEOF_INT32__
16*67e74705SXin Li static_assert(sizeof(0i32) == __SIZEOF_INT32__, "");
17*67e74705SXin Li #endif
18*67e74705SXin Li #ifdef __SIZEOF_INT64__
19*67e74705SXin Li static_assert(sizeof(0i64) == __SIZEOF_INT64__, "");
20*67e74705SXin Li #endif
21