Make variant_op jumptable const
Not doing this was a bit of an oversight
This commit is contained in:
parent
158c3fbf3c
commit
758accdcc2
1 changed files with 26 additions and 26 deletions
|
@ -100,32 +100,32 @@
|
||||||
}
|
}
|
||||||
/* clang-format on */
|
/* clang-format on */
|
||||||
|
|
||||||
#define CASES(PREFIX) static void *switch_table_##PREFIX[25][27] = { \
|
#define CASES(PREFIX) static const void *switch_table_##PREFIX[25][27] = { \
|
||||||
TYPES(PREFIX, OP_EQUAL), \
|
TYPES(PREFIX, OP_EQUAL), \
|
||||||
TYPES(PREFIX, OP_NOT_EQUAL), \
|
TYPES(PREFIX, OP_NOT_EQUAL), \
|
||||||
TYPES(PREFIX, OP_LESS), \
|
TYPES(PREFIX, OP_LESS), \
|
||||||
TYPES(PREFIX, OP_LESS_EQUAL), \
|
TYPES(PREFIX, OP_LESS_EQUAL), \
|
||||||
TYPES(PREFIX, OP_GREATER), \
|
TYPES(PREFIX, OP_GREATER), \
|
||||||
TYPES(PREFIX, OP_GREATER_EQUAL), \
|
TYPES(PREFIX, OP_GREATER_EQUAL), \
|
||||||
TYPES(PREFIX, OP_ADD), \
|
TYPES(PREFIX, OP_ADD), \
|
||||||
TYPES(PREFIX, OP_SUBTRACT), \
|
TYPES(PREFIX, OP_SUBTRACT), \
|
||||||
TYPES(PREFIX, OP_MULTIPLY), \
|
TYPES(PREFIX, OP_MULTIPLY), \
|
||||||
TYPES(PREFIX, OP_DIVIDE), \
|
TYPES(PREFIX, OP_DIVIDE), \
|
||||||
TYPES(PREFIX, OP_NEGATE), \
|
TYPES(PREFIX, OP_NEGATE), \
|
||||||
TYPES(PREFIX, OP_POSITIVE), \
|
TYPES(PREFIX, OP_POSITIVE), \
|
||||||
TYPES(PREFIX, OP_MODULE), \
|
TYPES(PREFIX, OP_MODULE), \
|
||||||
TYPES(PREFIX, OP_STRING_CONCAT), \
|
TYPES(PREFIX, OP_STRING_CONCAT), \
|
||||||
TYPES(PREFIX, OP_SHIFT_LEFT), \
|
TYPES(PREFIX, OP_SHIFT_LEFT), \
|
||||||
TYPES(PREFIX, OP_SHIFT_RIGHT), \
|
TYPES(PREFIX, OP_SHIFT_RIGHT), \
|
||||||
TYPES(PREFIX, OP_BIT_AND), \
|
TYPES(PREFIX, OP_BIT_AND), \
|
||||||
TYPES(PREFIX, OP_BIT_OR), \
|
TYPES(PREFIX, OP_BIT_OR), \
|
||||||
TYPES(PREFIX, OP_BIT_XOR), \
|
TYPES(PREFIX, OP_BIT_XOR), \
|
||||||
TYPES(PREFIX, OP_BIT_NEGATE), \
|
TYPES(PREFIX, OP_BIT_NEGATE), \
|
||||||
TYPES(PREFIX, OP_AND), \
|
TYPES(PREFIX, OP_AND), \
|
||||||
TYPES(PREFIX, OP_OR), \
|
TYPES(PREFIX, OP_OR), \
|
||||||
TYPES(PREFIX, OP_XOR), \
|
TYPES(PREFIX, OP_XOR), \
|
||||||
TYPES(PREFIX, OP_NOT), \
|
TYPES(PREFIX, OP_NOT), \
|
||||||
TYPES(PREFIX, OP_IN), \
|
TYPES(PREFIX, OP_IN), \
|
||||||
}
|
}
|
||||||
|
|
||||||
#define SWITCH(PREFIX, op, val) goto *switch_table_##PREFIX[op][val];
|
#define SWITCH(PREFIX, op, val) goto *switch_table_##PREFIX[op][val];
|
||||||
|
|
Loading…
Reference in a new issue