1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
static int a[] = {
[+0] = 0, // OK
[+__builtin_choose_expr(0, 0, 0)] = 0, // OK
[+0.] = 0, // KO
[+__builtin_choose_expr(0, 0, 0.)] = 0, // KO
[-0] = 0, // OK
[-__builtin_choose_expr(0, 0, 0)] = 0, // OK
[-0.] = 0, // KO
[-__builtin_choose_expr(0, 0, 0.)] = 0, // KO
[~0] = 0, // OK
[~__builtin_choose_expr(0, 0, 0)] = 0, // OK
[!0] = 0, // OK
[!__builtin_choose_expr(0, 0, 0)] = 0, // OK
[!0.] = 0, // KO
[!__builtin_choose_expr(0, 0, 0.)] = 0, // KO
};
/*
* check-name: constexprness in preops
*
* check-error-start
constexpr-preop.c:4:5: error: bad constant expression
constexpr-preop.c:5:33: error: bad constant expression
constexpr-preop.c:8:4: error: bad constant expression
constexpr-preop.c:9:4: error: bad constant expression
constexpr-preop.c:14:4: error: bad integer constant expression
constexpr-preop.c:15:4: error: bad integer constant expression
constexpr-preop.c:10:4: error: index out of bounds in initializer
constexpr-preop.c:11:4: error: index out of bounds in initializer
* check-error-end
*/
|