I see that global.eval('() => {}').constructor is supposed to be the fresh Function, not the "outer" one. Presumably this is accomplished by rewiring the function syntax inside of the fresh eval so that the [[Prototype]] of new functions is the fresh Function. So far so good. But what about global.eval('[]').constructor.constructor? Is that not still the outer Function?
I see that
global.eval('() => {}').constructoris supposed to be the freshFunction, not the "outer" one. Presumably this is accomplished by rewiring the function syntax inside of the freshevalso that the[[Prototype]]of new functions is the freshFunction. So far so good. But what aboutglobal.eval('[]').constructor.constructor? Is that not still the outerFunction?