aboutsummaryrefslogtreecommitdiff
path: root/gcc/java
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/java')
-rw-r--r--gcc/java/ChangeLog6
-rw-r--r--gcc/java/parse.h2
-rw-r--r--gcc/java/parse.y3
3 files changed, 9 insertions, 2 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 25e70c2..d2b6d26 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,9 @@
+2003-10-09 Jason Merrill <jason@redhat.com>
+
+ * parse.y (patch_assignment): Use make_node to create a BLOCK.
+ * parse.h (BUILD_PTR_FROM_NAME): Use make_node to create a
+ POINTER_TYPE.
+
2003-10-06 Mark Mitchell <mark@codesourcery.com>
* Make-lang.in (java.info): Replace with ...
diff --git a/gcc/java/parse.h b/gcc/java/parse.h
index 0234108..70d2b18 100644
--- a/gcc/java/parse.h
+++ b/gcc/java/parse.h
@@ -154,7 +154,7 @@ extern tree stabilize_reference (tree);
/* Quickly build a temporary pointer on hypothetical type NAME. */
#define BUILD_PTR_FROM_NAME(ptr, name) \
do { \
- ptr = build (POINTER_TYPE, NULL_TREE); \
+ ptr = make_node (POINTER_TYPE); \
TYPE_NAME (ptr) = name; \
} while (0)
diff --git a/gcc/java/parse.y b/gcc/java/parse.y
index 541e2b2..144ac7e 100644
--- a/gcc/java/parse.y
+++ b/gcc/java/parse.y
@@ -12913,10 +12913,11 @@ patch_assignment (tree node, tree wfl_op1)
{
tree tmp = build_decl (VAR_DECL, get_identifier ("<tmp>"),
TREE_TYPE (new_rhs));
- tree block = build (BLOCK, TREE_TYPE (new_rhs), NULL);
+ tree block = make_node (BLOCK);
tree assignment
= build (MODIFY_EXPR, TREE_TYPE (new_rhs), tmp, fold (new_rhs));
DECL_CONTEXT (tmp) = current_function_decl;
+ TREE_TYPE (block) = TREE_TYPE (new_rhs);
BLOCK_VARS (block) = tmp;
BLOCK_EXPR_BODY (block)
= build (COMPOUND_EXPR, TREE_TYPE (new_rhs), assignment, tmp);