OSDN Git Service

* cppexp.c (possible_sum_sign, integer_overflow, left_shift,
authorneil <neil@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 26 May 2002 18:42:21 +0000 (18:42 +0000)
committerneil <neil@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 26 May 2002 18:42:21 +0000 (18:42 +0000)
commitb444d47a3eb7c70492702b498da24bdcdee18148
treee0b28595be44974817fef680c5e031a4b195ef68
parent235d7594b104d4c89bd12bdfa44efbe50d7a5ff2
* cppexp.c (possible_sum_sign, integer_overflow, left_shift,
right_shift): Remove.
(cpp_num, cpp_num_part, PART_PRECISION, HALF_MASK, LOW_PART,
HIGH_PART): New.
(struct op): Use cpp_num.
(num_zerop, num_eq, num_positive, num_greater_freq, num_trim,
num_part_mul, num_unary_op, num_binary_op, num_negate,
num_bitwise_op, num_inequality_op, num_equality_op, num_mul,
num_div_op, num_lshift, num_rshift, append_digit): New.
(interpret_number, parse_defined, eval_token, reduce): Update
for two-integer arithmetic.
(binary_handler): New typedef.
(optab): Update.
(COMPARE, EQUALITY, BITWISE, MINMAX, UNARY, SHIFT): Delete.
(_cpp_parse_expr, reduce): Update to handle two-integers.
* cpplib.c (_cpp_test_assertion): Back up on CPP_EOF.
testsuite:
* gcc.dg/cpp/arith-1.c: New semantic tests.
* gcc.dg/cpp/if-1.c: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@53900 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/cppexp.c
gcc/cpplib.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/cpp/arith-1.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/cpp/if-1.c