fix corner cases related to in (#3964)
This commit is contained in:
@@ -8164,3 +8164,34 @@ issue_3927: {
|
||||
}
|
||||
expect_stdout: "PASS"
|
||||
}
|
||||
|
||||
operator_in: {
|
||||
options = {
|
||||
collapse_vars: true,
|
||||
}
|
||||
input: {
|
||||
function log(msg) {
|
||||
console.log(msg);
|
||||
}
|
||||
var a = "FAIL";
|
||||
try {
|
||||
a = "PASS";
|
||||
0 in null;
|
||||
log("FAIL", a);
|
||||
} catch (e) {}
|
||||
log(a);
|
||||
}
|
||||
expect: {
|
||||
function log(msg) {
|
||||
console.log(msg);
|
||||
}
|
||||
var a = "FAIL";
|
||||
try {
|
||||
a = "PASS";
|
||||
0 in null;
|
||||
log("FAIL", a);
|
||||
} catch (e) {}
|
||||
log(a);
|
||||
}
|
||||
expect_stdout: "PASS"
|
||||
}
|
||||
|
||||
@@ -136,7 +136,7 @@ relational: {
|
||||
side_effects :true,
|
||||
}
|
||||
input: {
|
||||
foo() in foo();
|
||||
foo() in new foo();
|
||||
foo() instanceof bar();
|
||||
foo() < "bar";
|
||||
bar() > foo();
|
||||
|
||||
@@ -274,3 +274,26 @@ drop_value: {
|
||||
foo(), bar();
|
||||
}
|
||||
}
|
||||
|
||||
operator_in: {
|
||||
options = {
|
||||
side_effects: true,
|
||||
}
|
||||
input: {
|
||||
try {
|
||||
"foo" in true;
|
||||
console.log("FAIL");
|
||||
} catch (e) {
|
||||
console.log("PASS");
|
||||
}
|
||||
}
|
||||
expect: {
|
||||
try {
|
||||
0 in true;
|
||||
console.log("FAIL");
|
||||
} catch (e) {
|
||||
console.log("PASS");
|
||||
}
|
||||
}
|
||||
expect_stdout: "PASS"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user