From f868ca8f89da12e0aa3101f4da9a4dbb93549963 Mon Sep 17 00:00:00 2001 From: Per Bothner Date: Wed, 16 Dec 1998 17:01:53 +0000 Subject: [PATCH] jcf-parse.c (get_constant): Set TREE_TYPE for string constants. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit � * jcf-parse.c (get_constant): Set TREE_TYPE for string constants. (HANDLE_CONSTANTVALUE): If flag_emit_class_files, call get_constant. From-SVN: r24346 --- gcc/java/ChangeLog | 5 +++++ gcc/java/jcf-parse.c | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index e86a2b60c08..e81caeb411c 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,8 @@ +Wed Dec 16 14:42:19 1998 Per Bothner + + * jcf-parse.c (get_constant): Set TREE_TYPE for string constants. + (HANDLE_CONSTANTVALUE): If flag_emit_class_files, call get_constant. + 1998-12-16 Tom Tromey * parse-scan.y (qualified_name): Use correct sprintf format. diff --git a/gcc/java/jcf-parse.c b/gcc/java/jcf-parse.c index 5d8a5e09c04..5186e6fd06e 100644 --- a/gcc/java/jcf-parse.c +++ b/gcc/java/jcf-parse.c @@ -129,7 +129,7 @@ set_source_filename (jcf, index) #define HANDLE_CONSTANTVALUE(INDEX) \ { tree constant; int index = INDEX; \ - if (JPOOL_TAG (jcf, index) == CONSTANT_String) { \ + if (! flag_emit_class_files && JPOOL_TAG (jcf, index) == CONSTANT_String) { \ tree name = get_name_constant (jcf, JPOOL_USHORT1 (jcf, index)); \ constant = build_utf8_ref (name); \ } \ @@ -312,6 +312,7 @@ get_constant (jcf, index) } value = make_node (STRING_CST); + TREE_TYPE (value) = build_pointer_type (string_type_node); TREE_STRING_LENGTH (value) = 2 * str_len; TREE_STRING_POINTER (value) = obstack_alloc (expression_obstack, 2 * str_len); -- 2.30.2