aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/parse.c
diff options
context:
space:
mode:
authorAnthony Green <green@cygnus.com>2000-01-16 23:56:06 +0000
committerAnthony Green <green@gcc.gnu.org>2000-01-16 23:56:06 +0000
commitc52b57714b25f9cdfd4977325a68b2bf62b07de3 (patch)
tree19ee2fec6dfa4cd54b604ad5600c0519440c831a /gcc/java/parse.c
parent2ce7461bd00a2b5941a0311e11affe766ffbd7af (diff)
downloadgcc-c52b57714b25f9cdfd4977325a68b2bf62b07de3.zip
gcc-c52b57714b25f9cdfd4977325a68b2bf62b07de3.tar.gz
gcc-c52b57714b25f9cdfd4977325a68b2bf62b07de3.tar.bz2
parse.y (build_string_concatenation): Only use StringBuffer(String) shortcut if String arg is constant.
2000-01-16 Anthony Green <green@cygnus.com> * parse.y (build_string_concatenation): Only use StringBuffer(String) shortcut if String arg is constant. From-SVN: r31450
Diffstat (limited to 'gcc/java/parse.c')
-rw-r--r--gcc/java/parse.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/gcc/java/parse.c b/gcc/java/parse.c
index 9cb374d..72b64b4 100644
--- a/gcc/java/parse.c
+++ b/gcc/java/parse.c
@@ -2257,7 +2257,7 @@ static const short yycheck[] = { 3,
#define YYPURE 1
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
-#line 3 "/usr/lib/bison.simple"
+#line 3 "/home/green/cygnus/njava/i0/share/bison.simple"
/* Skeleton output parser for bison,
Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
@@ -2450,7 +2450,7 @@ __yy_memcpy (char *to, char *from, int count)
#endif
#endif
-#line 196 "/usr/lib/bison.simple"
+#line 196 "/home/green/cygnus/njava/i0/share/bison.simple"
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
into yyparse. The argument should have type void *.
@@ -4750,7 +4750,7 @@ case 495:
break;}
}
/* the action file gets copied in in place of this dollarsign */
-#line 498 "/usr/lib/bison.simple"
+#line 498 "/home/green/cygnus/njava/i0/share/bison.simple"
yyvsp -= yylen;
yyssp -= yylen;
@@ -12821,9 +12821,9 @@ build_string_concatenation (op1, op2)
if (!IS_CRAFTED_STRING_BUFFER_P (op1))
{
/* Two solutions here:
- 1) OP1 is a string reference, we call new StringBuffer(OP1)
- 2) OP1 is something else, we call new StringBuffer().append(OP1). */
- if (JSTRING_TYPE_P (TREE_TYPE (op1)))
+ 1) OP1 is a constant string reference, we call new StringBuffer(OP1)
+ 2) OP1 is something else, we call new StringBuffer().append(OP1). */
+ if (TREE_CONSTANT (op1) && JSTRING_TYPE_P (TREE_TYPE (op1)))
op1 = BUILD_STRING_BUFFER (op1);
else
{