diff options
author | Tom Tromey <tromey@redhat.com> | 2004-09-24 15:39:17 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2004-09-24 15:39:17 +0000 |
commit | 90424847a67993e2cb9b0832371f45b2b64d9048 (patch) | |
tree | 716092990a2a64abdb5612e435b1a99a3f1f51b0 /gcc/java/expr.c | |
parent | 17c08c32dedfe91dbd6cea4f24d9216630f9aaa9 (diff) | |
download | gcc-90424847a67993e2cb9b0832371f45b2b64d9048.zip gcc-90424847a67993e2cb9b0832371f45b2b64d9048.tar.gz gcc-90424847a67993e2cb9b0832371f45b2b64d9048.tar.bz2 |
re PR java/16789 (ICE in force_evaluation_order() on valid code)
PR java/16789:
* parse.y (resolve_qualified_expression_name): Set
CAN_COMPLETE_NORMALLY on first call when chaining static calls.
* expr.c (force_evaluation_order): Check for empty argument list
after stripping COMPOUND_EXPR.
From-SVN: r88045
Diffstat (limited to 'gcc/java/expr.c')
-rw-r--r-- | gcc/java/expr.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/gcc/java/expr.c b/gcc/java/expr.c index 33d3afd..33c048f 100644 --- a/gcc/java/expr.c +++ b/gcc/java/expr.c @@ -3178,9 +3178,6 @@ force_evaluation_order (tree node) { tree arg, cmp; - if (!TREE_OPERAND (node, 1)) - return node; - arg = node; /* Position arg properly, account for wrapped around ctors. */ @@ -3189,7 +3186,11 @@ force_evaluation_order (tree node) arg = TREE_OPERAND (arg, 1); - /* Not having a list of argument here is an error. */ + /* An empty argument list is ok, just ignore it. */ + if (!arg) + return node; + + /* Not having a list of arguments here is an error. */ if (TREE_CODE (arg) != TREE_LIST) abort (); |