xref: /aosp_15_r20/external/clang/test/Sema/PR2963-enum-constant.c (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li // RUN: %clang_cc1 %s -verify -pedantic -fsyntax-only
2*67e74705SXin Li 
3*67e74705SXin Li typedef short short_fixed;
4*67e74705SXin Li 
5*67e74705SXin Li enum
6*67e74705SXin Li {
7*67e74705SXin Li         // 8.8 short_fixed
8*67e74705SXin Li         SHORT_FIXED_FRACTIONAL_BITS= 8,
9*67e74705SXin Li         SHORT_FIXED_ONE= 1<<SHORT_FIXED_FRACTIONAL_BITS
10*67e74705SXin Li };
11*67e74705SXin Li 
12*67e74705SXin Li #define FLOAT_TO_SHORT_FIXED(f) ((short_fixed)((f)*SHORT_FIXED_ONE))
13*67e74705SXin Li 
14*67e74705SXin Li enum
15*67e74705SXin Li {
16*67e74705SXin Li         SOME_VALUE= FLOAT_TO_SHORT_FIXED(0.1) // expected-warning{{expression is not an integer constant expression}}
17*67e74705SXin Li };
18