See https://tc39.github.io/ecma262/#sec-object.freeze and https://tc39.github.io/ecma262/#sec-setintegritylevel. If O.[[PreventExtensions]]() returns false, we should throw a TypeError but currently does not.
Created attachment 290987 [details]
repro test case.
Created attachment 290994 [details]
Comment on attachment 290994 [details]
Bad patch. That's what I get for making last minute changes.
Created attachment 290996 [details]
Comment on attachment 290996 [details]
View in context: https://bugs.webkit.org/attachment.cgi?id=290996&action=review
> +template<IntegrityLevel level>
> +bool setIntegrityLevel(ExecState* exec, VM& vm, JSObject* object)
Maybe it's worth including a link to the spec here.
> + if (exec->propertyNames().isPrivateName(propertyName))
You should use vm to get the PropertyNames.
Thanks for the review. I've made the suggested changes.
Landed in r206948: <http://trac.webkit.org/r206948>.