36 lines
818 B
JavaScript
36 lines
818 B
JavaScript
function foo(o) {
|
|
return String(o);
|
|
}
|
|
|
|
noInline(foo);
|
|
|
|
for (var i = 0; i < 100000; ++i) {
|
|
var result = foo(new String("hello"));
|
|
if (typeof result != "string") {
|
|
describe(result);
|
|
throw "Error: result isn't a string";
|
|
}
|
|
if (result != "hello")
|
|
throw "Error: bad result: " + result;
|
|
|
|
result = foo("world");
|
|
if (typeof result != "string") {
|
|
describe(result);
|
|
throw "Error: result isn't a string";
|
|
}
|
|
if (result != "world")
|
|
throw "Error: bad result: " + result;
|
|
}
|
|
|
|
function Foo() { }
|
|
|
|
Foo.prototype.toString = function() { return "hello" };
|
|
|
|
var result = foo(new Foo());
|
|
if (typeof result != "string") {
|
|
describe(result);
|
|
throw "Error: result isn't a string";
|
|
}
|
|
if (result != "hello")
|
|
throw "Error: bad result: " + result;
|