Index: src/bootstrapper.cc |
diff --git a/src/bootstrapper.cc b/src/bootstrapper.cc |
index ce58a86cf5de1e8fbc529a3fbe9a3522b137ffe0..380c81e13abd608c17ff3aa7e6fbdfa7fc94d4c8 100644 |
--- a/src/bootstrapper.cc |
+++ b/src/bootstrapper.cc |
@@ -1280,7 +1280,17 @@ void Genesis::InitializeExperimentalGlobal() { |
Handle<JSObject> global = Handle<JSObject>(native_context()->global_object()); |
// TODO(mstarzinger): Move this into Genesis::InitializeGlobal once we no |
- // longer need to live behind a flag, so functions get added to the snapshot. |
+ // longer need to live behind flags, so functions get added to the snapshot. |
+ |
+ if (FLAG_harmony_symbols) { |
+ // --- S y m b o l --- |
+ Handle<JSFunction> symbol_fun = |
+ InstallFunction(global, "Symbol", JS_VALUE_TYPE, JSValue::kSize, |
+ isolate()->initial_object_prototype(), |
+ Builtins::kIllegal, true); |
+ native_context()->set_symbol_function(*symbol_fun); |
+ } |
+ |
if (FLAG_harmony_collections) { |
{ // -- S e t |
Handle<JSObject> prototype = |
@@ -1436,9 +1446,6 @@ void Genesis::InstallNativeFunctions() { |
} |
void Genesis::InstallExperimentalNativeFunctions() { |
- if (FLAG_harmony_symbols) { |
- INSTALL_NATIVE(JSObject, "SymbolDelegate", symbol_delegate); |
- } |
if (FLAG_harmony_proxies) { |
INSTALL_NATIVE(JSFunction, "DerivedHasTrap", derived_has_trap); |
INSTALL_NATIVE(JSFunction, "DerivedGetTrap", derived_get_trap); |