aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/lex.c
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>2000-10-01 19:19:30 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>2000-10-01 19:19:30 +0000
commitf15b9af9843e58e7c03df81098a8a15646f5058e (patch)
tree0d6ccc526e9f4b851ecc829d656097c5b7e9c8f8 /gcc/java/lex.c
parent51296ba047eb7f4f266f97d7a26748dc108f7fd5 (diff)
downloadgcc-f15b9af9843e58e7c03df81098a8a15646f5058e.zip
gcc-f15b9af9843e58e7c03df81098a8a15646f5058e.tar.gz
gcc-f15b9af9843e58e7c03df81098a8a15646f5058e.tar.bz2
c-decl.c (c_expand_body): Don't generate RTL if flag_syntax_only.
* c-decl.c (c_expand_body): Don't generate RTL if flag_syntax_only. (lang_mark_false_label_stack): Remove. * c-lex.c (init_c_lex): Add file_info_tree as GC root. Allocate <top level> string in GC area. (mark_splay_tree_node): New function. (mark_splay_tree): Likewise. * except.c (mark_eh_status): Only call lang_mark_false_label_stack if it exists. * ggc-callbacks.c (lang_mark_false_label_stack): Remove. * ggc-common.c (lang_mark_false_label_stack): Change type. * ggc.h (ggc_alloc_string): Add comment. (ggc_strdup): New function. * decl.c (lang_mark_false_label_stack): Remove. * lex.c (cp_mang_lang_type): Use ggc_alloc_cleared. * com.c (lang_mark_false_label_stack): Remove. Convert to GC. * Make-lang.in (s-java): Don't depend on ggc-callbacks.o. * Makefile.in (BACKEND): Don't include ggc-callbacks.o. (typeck.o): Depend on ggc.h. * class.c (add_method_1): Use GC functions for allocation. (init_class_processing): Register roots. * decl.c (ggc_p): Set to 1. (pending_local_decls): Make it static. (push_jvm_slot): Use GC functions for allocation. (init_decl_processing): Register roots. (give_name_to_locals): Use GC functions for allocation. (lang_mark_tree): New function. * java-tree.h (MAYBE_CREATE_TYPE_TYPE_LANG_SPECIFIC): Use GC functions for allocation. * jcf-parse.c (jcf_parse_source): Use ggc_strdup. * lex.c (java_lex): Use build_string, rather than replicating it inline. * parse.y (goal): Add more roots. (mark_parser_ctxt): New function. * typeck.c: Include ggc.h. * splay-tree.c (splay_tree_insert): Fix formatting. From-SVN: r36687
Diffstat (limited to 'gcc/java/lex.c')
-rw-r--r--gcc/java/lex.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/gcc/java/lex.c b/gcc/java/lex.c
index 4179b1d..5d106c4 100644
--- a/gcc/java/lex.c
+++ b/gcc/java/lex.c
@@ -1081,14 +1081,7 @@ java_lex (java_lval)
if (!no_error || (c != '"'))
java_lval->node = error_mark_node; /* Requires futher testing FIXME */
else
- {
- tree s = make_node (STRING_CST);
- TREE_STRING_LENGTH (s) = strlen (string);
- TREE_STRING_POINTER (s) =
- obstack_alloc (expression_obstack, TREE_STRING_LENGTH (s)+1);
- strcpy (TREE_STRING_POINTER (s), string);
- java_lval->node = s;
- }
+ java_lval->node = build_string (strlen (string), string);
#endif
return STRING_LIT_TK;
}