michael@0: var re = /a(b)c/; michael@0: michael@0: for (var i = 0; i < 10; i++) { michael@0: // These two are of a form where we can convert exec() to test(). michael@0: if (!re.exec("abc")) print("huh?"); michael@0: re.exec("abc"); michael@0: } michael@0: michael@0: RegExp.prototype.test = 1; michael@0: michael@0: for (var i = 0; i < 10; i++) { michael@0: // These two are the same form, but we've replaced test(), so we must michael@0: // not convert. michael@0: if (!re.exec("abc")) print("huh?"); // don't crash/assert michael@0: re.exec("abc"); // don't crash/assert michael@0: }