summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/latin1/bug1033113.js
blob: 74f1ff53f23982b22524940abd147fa37fb1b8eb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
var s = "aaaaaaaaaaaaaaaaaa111aaaa";
var latin1Rope1 = "foo" + s;
var latin1Rope2 = "bar" + latin1Rope1;
var twoByteRope = "\u1200--" + latin1Rope1;

// Flatten twoByteRope.
assertEq(twoByteRope.lastIndexOf("11"), 25);

// latin1Rope1 is now a TwoByte dependent string.
assertEq(isLatin1(latin1Rope1), false);
assertEq(latin1Rope1, "fooaaaaaaaaaaaaaaaaaa111aaaa");

// latin1Rope2 should still be Latin1, but now has a
// TwoByte descendent (latin1Rope1).
if (isLatin1(s))
    assertEq(isLatin1(latin1Rope2), true);

// Flatten latin1Rope2.
assertEq(latin1Rope2.lastIndexOf("11"), 25);
assertEq(latin1Rope2, "barfooaaaaaaaaaaaaaaaaaa111aaaa");