From f626e9fa21d9844a5faf260f23147cc4b69e4bd3 Mon Sep 17 00:00:00 2001 From: Anthony Green Date: Fri, 7 Jan 2000 23:07:52 +0000 Subject: [PATCH] expr.c (java_lang_expand_expr): Switch to permanent obstack before building constant array decl. Thu Jan 6 16:31:28 2000 Anthony Green * expr.c (java_lang_expand_expr): Switch to permanent obstack before building constant array decl. From-SVN: r31283 --- gcc/java/ChangeLog | 5 +++++ gcc/java/expr.c | 7 +++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 3a52bf6487a..bde09bdf81a 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,8 @@ +Thu Jan 6 16:31:28 2000 Anthony Green + + * expr.c (java_lang_expand_expr): Switch to permanent obstack + before building constant array decl. + Thu Jan 6 00:54:10 2000 Alexandre Petit-Bianco * jcf-write.c (generate_byecode_conditional): Fixed indentation in diff --git a/gcc/java/expr.c b/gcc/java/expr.c index 411cc751309..30f1231726e 100644 --- a/gcc/java/expr.c +++ b/gcc/java/expr.c @@ -1944,8 +1944,10 @@ java_lang_expand_expr (exp, target, tmode, modifier) if (TREE_CONSTANT (init) && ilength >= 10 && JPRIMITIVE_TYPE_P (element_type)) { - tree init_decl = build_decl (VAR_DECL, generate_name (), - TREE_TYPE (init)); + tree init_decl; + push_obstacks (&permanent_obstack, &permanent_obstack); + init_decl = build_decl (VAR_DECL, generate_name (), + TREE_TYPE (init)); pushdecl_top_level (init_decl); TREE_STATIC (init_decl) = 1; DECL_INITIAL (init_decl) = init; @@ -1953,6 +1955,7 @@ java_lang_expand_expr (exp, target, tmode, modifier) TREE_READONLY (init_decl) = 1; TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (init_decl)) = 1; make_decl_rtl (init_decl, NULL, 1); + pop_obstacks (); init = init_decl; } expand_assignment (build (COMPONENT_REF, TREE_TYPE (data_fld), -- 2.30.2