1 static int a[] = { 2 [(int)0] = 0, // OK 3 [(int)(int)0] = 0, // OK 4 [(int)0.] = 0, // OK 5 [(int)(int)0.] = 0, // OK 6 [(int)__builtin_choose_expr(0, 0, 0)] = 0, // OK 7 [(int)__builtin_choose_expr(0, 0, 0.)] = 0, // OK 8 9 [(int)(float)0] = 0, // KO 10 [(int)(float)0.] = 0, // KO 11 12 [(int)(void*)0] = 0, // KO 13 [(int)(void*)0.] = 0, // KO 14 15 }; 16 /* 17 * check-name: Expression constness propagation in casts 18 * 19 * check-error-start 20 constexpr-cast.c:9:11: error: bad integer constant expression 21 constexpr-cast.c:10:11: error: bad integer constant expression 22 constexpr-cast.c:12:11: error: bad integer constant expression 23 constexpr-cast.c:13:11: error: bad integer constant expression 24 * check-error-end 25 */