| // Copyright 2017 the V8 project authors. All rights reserved. | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| // Flags: --allow-natives-syntax --expose-externalize-string | |
| // Calculate string so that it isn't internalized. | |
| var string = ((a,b) => { return a + b; })('foo', 'bar'); | |
| // Now externalize it. | |
| externalizeString(string, false); | |
| // Then internalize it by using it as a keyed property name | |
| // to turn it a thin string. | |
| var obj = {}; | |
| obj[string]; | |
| // Perform a string concatination. | |
| assertEquals('"' + string + '"', '"foobar"'); |