Index: src/ic.cc |
=================================================================== |
--- src/ic.cc (revision 7451) |
+++ src/ic.cc (working copy) |
@@ -1143,6 +1143,15 @@ |
MaybeObject* KeyedLoadIC::Load(State state, |
Handle<Object> object, |
Handle<Object> key) { |
+ // Check for values that can be converted into a symbol. |
Mads Ager (chromium)
2011/03/31 09:41:49
Could you file a bug report stating that this is p
|
+ HandleScope scope(isolate()); |
+ if (key->IsHeapNumber() && |
+ isnan(HeapNumber::cast(*key)->value())) { |
+ key = isolate()->factory()->nan_symbol(); |
+ } else if (key->IsUndefined()) { |
+ key = isolate()->factory()->undefined_symbol(); |
+ } |
+ |
if (key->IsSymbol()) { |
Handle<String> name = Handle<String>::cast(key); |