Index: src/string.js |
diff --git a/src/string.js b/src/string.js |
index 9719df4c288f2a53af851574fda85180fa0b27e8..0d5ed0fc4297c49b0f79917de5a9e6b6a2758c4d 100644 |
--- a/src/string.js |
+++ b/src/string.js |
@@ -61,13 +61,13 @@ function StringCharCodeAt(pos) { |
// ECMA-262, section 15.5.4.6 |
-function StringConcat() { |
+function StringConcat(other /* and more */) { // length == 1 |
CHECK_OBJECT_COERCIBLE(this, "String.prototype.concat"); |
var len = %_ArgumentsLength(); |
var this_as_string = TO_STRING_INLINE(this); |
if (len === 1) { |
- return this_as_string + %_Arguments(0); |
+ return this_as_string + other; |
} |
var parts = new InternalArray(len + 1); |
parts[0] = this_as_string; |
@@ -78,9 +78,6 @@ function StringConcat() { |
return %StringBuilderConcat(parts, len + 1, ""); |
} |
-// Match ES3 and Safari |
-%FunctionSetLength(StringConcat, 1); |
- |
// ECMA-262 section 15.5.4.7 |
function StringIndexOfJS(pattern /* position */) { // length == 1 |