Revision: 22520
Author:   [email protected]
Date:     Tue Jul 22 09:44:56 2014 UTC
Log:      Update test and rebaseline

BUG=
[email protected]

Review URL: https://codereview.chromium.org/408183002
http://code.google.com/p/v8/source/detail?r=22520

Modified:
 /branches/bleeding_edge/src/objects.cc
/branches/bleeding_edge/test/webkit/fast/js/primitive-property-access-edge-cases-expected.txt
 /branches/bleeding_edge/test/webkit/fast/js/read-modify-eval-expected.txt

=======================================
--- /branches/bleeding_edge/src/objects.cc      Tue Jul 22 08:28:49 2014 UTC
+++ /branches/bleeding_edge/src/objects.cc      Tue Jul 22 09:44:56 2014 UTC
@@ -3107,8 +3107,10 @@
                                             StrictMode strict_mode,
                                             StoreFromKeyed store_mode) {
   ASSERT(!it->GetReceiver()->IsJSProxy());
-  // Transitions to data properties of value wrappers are not observable.
-  if (!it->GetReceiver()->IsJSObject()) return value;
+  if (!it->GetReceiver()->IsJSObject()) {
+    // TODO(verwaest): Throw a TypeError with a more specific message.
+    return WriteToReadOnlyProperty(it, value, strict_mode);
+  }
   Handle<JSObject> receiver = Handle<JSObject>::cast(it->GetReceiver());

// If the receiver is a JSGlobalProxy, store on the prototype (JSGlobalObject)
=======================================
--- /branches/bleeding_edge/test/webkit/fast/js/primitive-property-access-edge-cases-expected.txt Thu Jul 25 19:54:24 2013 UTC +++ /branches/bleeding_edge/test/webkit/fast/js/primitive-property-access-edge-cases-expected.txt Tue Jul 22 09:44:56 2014 UTC
@@ -29,15 +29,15 @@
 PASS checkGet(1, Number) is true
 PASS checkGet('hello', String) is true
 PASS checkGet(true, Boolean) is true
-FAIL checkSet(1, Number) should be true. Was false.
-FAIL checkSet('hello', String) should be true. Was false.
-FAIL checkSet(true, Boolean) should be true. Was false.
+PASS checkSet(1, Number) is true
+PASS checkSet('hello', String) is true
+PASS checkSet(true, Boolean) is true
 PASS checkGetStrict(1, Number) is true
 PASS checkGetStrict('hello', String) is true
 PASS checkGetStrict(true, Boolean) is true
-FAIL checkSetStrict(1, Number) should be true. Was false.
-FAIL checkSetStrict('hello', String) should be true. Was false.
-FAIL checkSetStrict(true, Boolean) should be true. Was false.
+PASS checkSetStrict(1, Number) is true
+PASS checkSetStrict('hello', String) is true
+PASS checkSetStrict(true, Boolean) is true
 PASS checkRead(1, Number) is true
 PASS checkRead('hello', String) is true
 PASS checkRead(true, Boolean) is true
@@ -47,9 +47,9 @@
 PASS checkReadStrict(1, Number) is true
 PASS checkReadStrict('hello', String) is true
 PASS checkReadStrict(true, Boolean) is true
-FAIL checkWriteStrict(1, Number) should throw an exception. Was true.
-FAIL checkWriteStrict('hello', String) should throw an exception. Was true.
-FAIL checkWriteStrict(true, Boolean) should throw an exception. Was true.
+PASS checkWriteStrict(1, Number) threw exception TypeError: Cannot assign to read only property 'foo' of 1. +PASS checkWriteStrict('hello', String) threw exception TypeError: Cannot assign to read only property 'foo' of hello. +PASS checkWriteStrict(true, Boolean) threw exception TypeError: Cannot assign to read only property 'foo' of true.
 PASS checkNumericGet(1, Number) is true
 PASS checkNumericGet('hello', String) is true
 PASS checkNumericGet(true, Boolean) is true
=======================================
--- /branches/bleeding_edge/test/webkit/fast/js/read-modify-eval-expected.txt Thu Jul 25 19:54:24 2013 UTC +++ /branches/bleeding_edge/test/webkit/fast/js/read-modify-eval-expected.txt Tue Jul 22 09:44:56 2014 UTC
@@ -42,7 +42,7 @@
 PASS postIncTest(); is true
 PASS postDecTest(); is true
 PASS primitiveThisTest.call(1); is true
-FAIL strictThisTest.call(1); should throw an exception. Was true.
+PASS strictThisTest.call(1); threw exception TypeError: Cannot assign to read only property 'value' of 1.
 PASS successfullyParsed is true

 TEST COMPLETE

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to