diff options
author | Anthony Green <green@cygnus.com> | 2000-01-16 23:56:06 +0000 |
---|---|---|
committer | Anthony Green <green@gcc.gnu.org> | 2000-01-16 23:56:06 +0000 |
commit | c52b57714b25f9cdfd4977325a68b2bf62b07de3 (patch) | |
tree | 19ee2fec6dfa4cd54b604ad5600c0519440c831a /gcc/java/parse.y | |
parent | 2ce7461bd00a2b5941a0311e11affe766ffbd7af (diff) | |
download | gcc-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.y')
-rw-r--r-- | gcc/java/parse.y | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/java/parse.y b/gcc/java/parse.y index 0c2f6b8..8563508 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -10218,9 +10218,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 { |