1// Copyright 2014 the V8 project authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5// Flags: --allow-natives-syntax 6 7function MyWrapper(v) { 8 return { valueOf: function() { return v } }; 9} 10 11function f() { 12 assertEquals("truex", true + "x"); 13 assertEquals("truey", true + new String("y")); 14 assertEquals("truez", true + new MyWrapper("z")); 15 16 assertEquals("xtrue", "x" + true); 17 assertEquals("ytrue", new String("y") + true); 18 assertEquals("ztrue", new MyWrapper("z") + true); 19} 20 21f(); 22f(); 23%OptimizeFunctionOnNextCall(f); 24f(); 25