| 123456789101112131415161718192021222324252627282930 |
- //-------------------------------------------------------------------------------------------------------
- // Copyright (C) Microsoft. All rights reserved.
- // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
- //-------------------------------------------------------------------------------------------------------
- // Run with jc -maxinterpretcount:1
- // Create a path type with fixed method 'o.inspect'.
- var o = {};
- o.inspect = function () { WScript.Echo("original"); };
- // JIT a function that uses the fixed method
- function useMethod(obj) {
- obj.inspect();
- }
- useMethod(o);
- useMethod(o);
- // Use the property cache to overwrite the fixed method
- function test(obj, overwrite) {
- for (var prop in obj) {
- if (overwrite)
- obj[prop] = function () { WScript.Echo("new"); }
- }
- }
- test(o,false);
- test(o,true);
- // Verify that the new function is called.
- useMethod(o);
|