diff options
author | sje <sje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-08-14 23:13:54 +0000 |
---|---|---|
committer | sje <sje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-08-14 23:13:54 +0000 |
commit | e58c07f71301c15da28c91b7f13f2a51fe739a3a (patch) | |
tree | 3997bb50dfd7d49e1c239b1d5843cf07e8405f16 /libcpp/expr.c | |
parent | ffde862e033a0825e1e9972a89c0f1f80b261a8e (diff) | |
download | gcc-e58c07f71301c15da28c91b7f13f2a51fe739a3a.tar.gz |
PR c++/28288
PR c++/14556
* operators.def: Remove <?, ?>, <?=, and >?= operators.
* parser.c: Remove CPP_MIN, CPP_MAX, CPP_MIN_EQ, and CPP_MAX_EQ.
(cp_parser_warn_min_max): Remove.
* include/cpplib.h: Remove <?, >?, <?=, and >?= tokens.
(CPP_LAST_EQ): Change.
(CPP_LAST_PUNCTUATOR): Change.
* expr.c (cpp_operator): Remove MIN and MAX.
(reduce): Remove CPP_MIN and CPP_MAX.
(num_binary_op): Ditto.
* lex.c (_cpp_lex_direct): Ditto.
(cpp_avoid_paste): Remove ? as legal symbol after > or <.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@116140 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libcpp/expr.c')
-rw-r--r-- | libcpp/expr.c | 21 |
1 files changed, 0 insertions, 21 deletions
diff --git a/libcpp/expr.c b/libcpp/expr.c index a61ff665ec0..574b85ff656 100644 --- a/libcpp/expr.c +++ b/libcpp/expr.c @@ -668,9 +668,6 @@ static const struct cpp_operator /* RSHIFT */ {13, LEFT_ASSOC}, /* LSHIFT */ {13, LEFT_ASSOC}, - /* MIN */ {10, LEFT_ASSOC | CHECK_PROMOTION}, - /* MAX */ {10, LEFT_ASSOC | CHECK_PROMOTION}, - /* COMPL */ {16, NO_L_OPERAND}, /* AND_AND */ {6, LEFT_ASSOC}, /* OR_OR */ {5, LEFT_ASSOC}, @@ -882,8 +879,6 @@ reduce (cpp_reader *pfile, struct op *top, enum cpp_ttype op) case CPP_MINUS: case CPP_RSHIFT: case CPP_LSHIFT: - case CPP_MIN: - case CPP_MAX: case CPP_COMMA: top[-1].value = num_binary_op (pfile, top[-1].value, top->value, top->op); @@ -1309,7 +1304,6 @@ num_binary_op (cpp_reader *pfile, cpp_num lhs, cpp_num rhs, enum cpp_ttype op) { cpp_num result; size_t precision = CPP_OPTION (pfile, precision); - bool gte; size_t n; switch (op) @@ -1336,21 +1330,6 @@ num_binary_op (cpp_reader *pfile, cpp_num lhs, cpp_num rhs, enum cpp_ttype op) lhs = num_rshift (lhs, precision, n); break; - /* Min / Max. */ - case CPP_MIN: - case CPP_MAX: - { - bool unsignedp = lhs.unsignedp || rhs.unsignedp; - - gte = num_greater_eq (lhs, rhs, precision); - if (op == CPP_MIN) - gte = !gte; - if (!gte) - lhs = rhs; - lhs.unsignedp = unsignedp; - } - break; - /* Arithmetic. */ case CPP_MINUS: rhs = num_negate (rhs, precision); |