From: verwaest@chromium.org Date: Wed, 23 Jan 2013 17:27:25 +0000 (+0000) Subject: Ensure a type-error is thrown when trying to assign to a readonly property on the... X-Git-Tag: upstream/4.7.83~15219 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=56adca9cc937c961ebf868245b6848ad101058ad;p=platform%2Fupstream%2Fv8.git Ensure a type-error is thrown when trying to assign to a readonly property on the global scope. Review URL: https://chromiumcodereview.appspot.com/11953056 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13485 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- diff --git a/src/ic.cc b/src/ic.cc index 5e8e0e0..49b3377 100644 --- a/src/ic.cc +++ b/src/ic.cc @@ -1463,7 +1463,9 @@ MaybeObject* StoreIC::Store(State state, if (FLAG_use_ic) { UpdateStoreCaches(&lookup, state, strict_mode, receiver, name, value); } - } else if (strict_mode == kStrictMode && IsUndeclaredGlobal(object)) { + } else if (strict_mode == kStrictMode && + !(lookup.IsProperty() && lookup.IsReadOnly()) && + IsUndeclaredGlobal(object)) { // Strict mode doesn't allow setting non-existent global property. return ReferenceError("not_defined", name); }