diff options
author | apbianco <apbianco@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-08-01 02:28:43 +0000 |
---|---|---|
committer | apbianco <apbianco@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-08-01 02:28:43 +0000 |
commit | 5929001aaf6b871d946cd42f2e78427b3a766325 (patch) | |
tree | 6496ff51752066c862a5e55102eb82d5d6a55b19 /gcc/java | |
parent | d9fbafcd90974f9e0170f87dfaab05d4061b5fe5 (diff) | |
download | gcc-5929001aaf6b871d946cd42f2e78427b3a766325.tar.gz |
*** empty log message ***
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44528 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/java')
-rw-r--r-- | gcc/java/ChangeLog | 13 | ||||
-rw-r--r-- | gcc/java/check-init.c | 2 | ||||
-rw-r--r-- | gcc/java/decl.c | 2 | ||||
-rw-r--r-- | gcc/java/jcf-write.c | 2 | ||||
-rw-r--r-- | gcc/java/parse.y | 4 |
5 files changed, 18 insertions, 5 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index a694743e6ce..69f57055162 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,16 @@ +2001-07-31 Alexandre Petit-Bianco <apbianco@redhat.com> + + * check-init.c (check_init): WITH_CLEANUP_EXPR node to use its + second operand calling check_init. + * decl.c (complete_start_java_method): Swaped second and third + arguments while creating WITH_CLEANUP_EXPR node. + * jcf-write.c (generate_bytecode_insns): Use second operand + instead of third when handling WITH_CLEANUP_EXPR. + * parse.y (java_complete_lhs): Expand second operand of + WITH_CLEANUP_EXPR nodes. + (patch_synchronized_statement): Swaped second and third arguments + while creating WITH_CLEANUP_EXPR node. + 2001-07-18 Alexandre Petit-Bianco <apbianco@redhat.com> * parse.y (create_interface): Avoid cyclic inheritance report when diff --git a/gcc/java/check-init.c b/gcc/java/check-init.c index 05e3aa31ae6..0e340dd8541 100644 --- a/gcc/java/check-init.c +++ b/gcc/java/check-init.c @@ -537,7 +537,7 @@ check_init (exp, before) #endif check_init (TREE_OPERAND (exp, 0), before); UNION (alt->combined, alt->combined, before); - check_init (TREE_OPERAND (exp, 2), alt->combined); + check_init (TREE_OPERAND (exp, 1), alt->combined); return; } diff --git a/gcc/java/decl.c b/gcc/java/decl.c index 1e8c934f6e2..3b856db50d8 100644 --- a/gcc/java/decl.c +++ b/gcc/java/decl.c @@ -1738,7 +1738,7 @@ complete_start_java_method (fndecl) tree function_body = DECL_FUNCTION_BODY (fndecl); tree body = BLOCK_EXPR_BODY (function_body); lock = build (WITH_CLEANUP_EXPR, void_type_node, - enter, NULL_TREE, exit); + enter, exit, NULL_TREE); TREE_SIDE_EFFECTS (lock) = 1; lock = build (COMPOUND_EXPR, TREE_TYPE (body), lock, body); TREE_SIDE_EFFECTS (lock) = 1; diff --git a/gcc/java/jcf-write.c b/gcc/java/jcf-write.c index 9a4eb5b21c6..ca453c8edd9 100644 --- a/gcc/java/jcf-write.c +++ b/gcc/java/jcf-write.c @@ -2293,7 +2293,7 @@ generate_bytecode_insns (exp, target, state) label->next = state->labeled_blocks; state->labeled_blocks = label; state->num_finalizers++; - label->u.labeled_block = TREE_OPERAND (exp, 2); + label->u.labeled_block = TREE_OPERAND (exp, 1); label->v.start_label = get_jcf_label_here (state); if (target != IGNORE_TARGET) abort (); diff --git a/gcc/java/parse.y b/gcc/java/parse.y index 1fb08bcd343..05be63314a8 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -11326,7 +11326,7 @@ java_complete_lhs (node) case WITH_CLEANUP_EXPR: COMPLETE_CHECK_OP_0 (node); - COMPLETE_CHECK_OP_2 (node); + COMPLETE_CHECK_OP_1 (node); CAN_COMPLETE_NORMALLY (node) = CAN_COMPLETE_NORMALLY (TREE_OPERAND (node, 0)); TREE_TYPE (node) = void_type_node; @@ -15326,7 +15326,7 @@ patch_synchronized_statement (node, wfl_op1) build (WITH_CLEANUP_EXPR, NULL_TREE, build (COMPOUND_EXPR, NULL_TREE, assignment, enter), - NULL_TREE, exit), + exit, NULL_TREE), block)); node = build_expr_block (node, expr_decl); |