Browse Source

LibJS: Add ThrowCompletionOr versions of the JS native function macros

The old versions were renamed to JS_DECLARE_OLD_NATIVE_FUNCTION and
JS_DEFINE_OLD_NATIVE_FUNCTION, and will be eventually removed once all
native functions were converted to the new format.
Idan Horowitz 3 năm trước cách đây
mục cha
commit
20163c0584
100 tập tin đã thay đổi với 697 bổ sung691 xóa
  1. 2 2
      Meta/Lagom/Fuzzers/FuzzilliJs.cpp
  2. 19 19
      Meta/Lagom/Tools/CodeGenerators/LibWeb/WrapperGenerator.cpp
  3. 4 4
      Tests/LibWasm/test-wasm.cpp
  4. 7 7
      Userland/Applications/Spreadsheet/JSIntegration.cpp
  5. 7 7
      Userland/Applications/Spreadsheet/JSIntegration.h
  6. 8 2
      Userland/Libraries/LibJS/Forward.h
  7. 2 2
      Userland/Libraries/LibJS/Runtime/ArrayBufferConstructor.cpp
  8. 2 2
      Userland/Libraries/LibJS/Runtime/ArrayBufferConstructor.h
  9. 2 2
      Userland/Libraries/LibJS/Runtime/ArrayBufferPrototype.cpp
  10. 2 2
      Userland/Libraries/LibJS/Runtime/ArrayBufferPrototype.h
  11. 4 4
      Userland/Libraries/LibJS/Runtime/ArrayConstructor.cpp
  12. 4 4
      Userland/Libraries/LibJS/Runtime/ArrayConstructor.h
  13. 1 1
      Userland/Libraries/LibJS/Runtime/ArrayIteratorPrototype.cpp
  14. 1 1
      Userland/Libraries/LibJS/Runtime/ArrayIteratorPrototype.h
  15. 34 34
      Userland/Libraries/LibJS/Runtime/ArrayPrototype.cpp
  16. 34 34
      Userland/Libraries/LibJS/Runtime/ArrayPrototype.h
  17. 10 10
      Userland/Libraries/LibJS/Runtime/AtomicsObject.cpp
  18. 10 10
      Userland/Libraries/LibJS/Runtime/AtomicsObject.h
  19. 2 2
      Userland/Libraries/LibJS/Runtime/BigIntConstructor.cpp
  20. 2 2
      Userland/Libraries/LibJS/Runtime/BigIntConstructor.h
  21. 3 3
      Userland/Libraries/LibJS/Runtime/BigIntPrototype.cpp
  22. 3 3
      Userland/Libraries/LibJS/Runtime/BigIntPrototype.h
  23. 2 2
      Userland/Libraries/LibJS/Runtime/BooleanPrototype.cpp
  24. 2 2
      Userland/Libraries/LibJS/Runtime/BooleanPrototype.h
  25. 10 10
      Userland/Libraries/LibJS/Runtime/ConsoleObject.cpp
  26. 10 10
      Userland/Libraries/LibJS/Runtime/ConsoleObject.h
  27. 23 23
      Userland/Libraries/LibJS/Runtime/DataViewPrototype.cpp
  28. 24 24
      Userland/Libraries/LibJS/Runtime/DataViewPrototype.h
  29. 3 3
      Userland/Libraries/LibJS/Runtime/DateConstructor.cpp
  30. 3 3
      Userland/Libraries/LibJS/Runtime/DateConstructor.h
  31. 40 40
      Userland/Libraries/LibJS/Runtime/DatePrototype.cpp
  32. 40 40
      Userland/Libraries/LibJS/Runtime/DatePrototype.h
  33. 1 1
      Userland/Libraries/LibJS/Runtime/ErrorPrototype.cpp
  34. 1 1
      Userland/Libraries/LibJS/Runtime/ErrorPrototype.h
  35. 3 3
      Userland/Libraries/LibJS/Runtime/FinalizationRegistryPrototype.cpp
  36. 3 3
      Userland/Libraries/LibJS/Runtime/FinalizationRegistryPrototype.h
  37. 5 5
      Userland/Libraries/LibJS/Runtime/FunctionPrototype.cpp
  38. 5 5
      Userland/Libraries/LibJS/Runtime/FunctionPrototype.h
  39. 3 3
      Userland/Libraries/LibJS/Runtime/GeneratorObjectPrototype.cpp
  40. 3 3
      Userland/Libraries/LibJS/Runtime/GeneratorObjectPrototype.h
  41. 12 12
      Userland/Libraries/LibJS/Runtime/GlobalObject.cpp
  42. 12 12
      Userland/Libraries/LibJS/Runtime/GlobalObject.h
  43. 1 1
      Userland/Libraries/LibJS/Runtime/Intl/DisplayNamesConstructor.cpp
  44. 1 1
      Userland/Libraries/LibJS/Runtime/Intl/DisplayNamesConstructor.h
  45. 2 2
      Userland/Libraries/LibJS/Runtime/Intl/DisplayNamesPrototype.cpp
  46. 2 2
      Userland/Libraries/LibJS/Runtime/Intl/DisplayNamesPrototype.h
  47. 1 1
      Userland/Libraries/LibJS/Runtime/Intl/Intl.cpp
  48. 1 1
      Userland/Libraries/LibJS/Runtime/Intl/Intl.h
  49. 1 1
      Userland/Libraries/LibJS/Runtime/Intl/ListFormatConstructor.cpp
  50. 1 1
      Userland/Libraries/LibJS/Runtime/Intl/ListFormatConstructor.h
  51. 3 3
      Userland/Libraries/LibJS/Runtime/Intl/ListFormatPrototype.cpp
  52. 3 3
      Userland/Libraries/LibJS/Runtime/Intl/ListFormatPrototype.h
  53. 9 9
      Userland/Libraries/LibJS/Runtime/Intl/LocalePrototype.cpp
  54. 14 14
      Userland/Libraries/LibJS/Runtime/Intl/LocalePrototype.h
  55. 1 1
      Userland/Libraries/LibJS/Runtime/Intl/NumberFormatConstructor.cpp
  56. 1 1
      Userland/Libraries/LibJS/Runtime/Intl/NumberFormatConstructor.h
  57. 1 1
      Userland/Libraries/LibJS/Runtime/Intl/NumberFormatPrototype.cpp
  58. 1 1
      Userland/Libraries/LibJS/Runtime/Intl/NumberFormatPrototype.h
  59. 1 1
      Userland/Libraries/LibJS/Runtime/IteratorPrototype.cpp
  60. 1 1
      Userland/Libraries/LibJS/Runtime/IteratorPrototype.h
  61. 2 2
      Userland/Libraries/LibJS/Runtime/JSONObject.cpp
  62. 2 2
      Userland/Libraries/LibJS/Runtime/JSONObject.h
  63. 1 1
      Userland/Libraries/LibJS/Runtime/MapConstructor.cpp
  64. 1 1
      Userland/Libraries/LibJS/Runtime/MapConstructor.h
  65. 1 1
      Userland/Libraries/LibJS/Runtime/MapIteratorPrototype.cpp
  66. 1 1
      Userland/Libraries/LibJS/Runtime/MapIteratorPrototype.h
  67. 10 10
      Userland/Libraries/LibJS/Runtime/MapPrototype.cpp
  68. 11 11
      Userland/Libraries/LibJS/Runtime/MapPrototype.h
  69. 35 35
      Userland/Libraries/LibJS/Runtime/MathObject.cpp
  70. 35 35
      Userland/Libraries/LibJS/Runtime/MathObject.h
  71. 4 4
      Userland/Libraries/LibJS/Runtime/NumberConstructor.cpp
  72. 4 4
      Userland/Libraries/LibJS/Runtime/NumberConstructor.h
  73. 3 3
      Userland/Libraries/LibJS/Runtime/NumberPrototype.cpp
  74. 3 3
      Userland/Libraries/LibJS/Runtime/NumberPrototype.h
  75. 22 22
      Userland/Libraries/LibJS/Runtime/ObjectConstructor.cpp
  76. 22 22
      Userland/Libraries/LibJS/Runtime/ObjectConstructor.h
  77. 12 12
      Userland/Libraries/LibJS/Runtime/ObjectPrototype.cpp
  78. 12 12
      Userland/Libraries/LibJS/Runtime/ObjectPrototype.h
  79. 7 7
      Userland/Libraries/LibJS/Runtime/PromiseConstructor.cpp
  80. 8 8
      Userland/Libraries/LibJS/Runtime/PromiseConstructor.h
  81. 3 3
      Userland/Libraries/LibJS/Runtime/PromisePrototype.cpp
  82. 3 3
      Userland/Libraries/LibJS/Runtime/PromisePrototype.h
  83. 1 1
      Userland/Libraries/LibJS/Runtime/ProxyConstructor.cpp
  84. 1 1
      Userland/Libraries/LibJS/Runtime/ProxyConstructor.h
  85. 13 13
      Userland/Libraries/LibJS/Runtime/ReflectObject.cpp
  86. 13 13
      Userland/Libraries/LibJS/Runtime/ReflectObject.h
  87. 1 1
      Userland/Libraries/LibJS/Runtime/RegExpConstructor.cpp
  88. 1 1
      Userland/Libraries/LibJS/Runtime/RegExpConstructor.h
  89. 12 12
      Userland/Libraries/LibJS/Runtime/RegExpPrototype.cpp
  90. 13 13
      Userland/Libraries/LibJS/Runtime/RegExpPrototype.h
  91. 1 1
      Userland/Libraries/LibJS/Runtime/RegExpStringIteratorPrototype.cpp
  92. 1 1
      Userland/Libraries/LibJS/Runtime/RegExpStringIteratorPrototype.h
  93. 1 1
      Userland/Libraries/LibJS/Runtime/SetConstructor.cpp
  94. 1 1
      Userland/Libraries/LibJS/Runtime/SetConstructor.h
  95. 1 1
      Userland/Libraries/LibJS/Runtime/SetIteratorPrototype.cpp
  96. 1 1
      Userland/Libraries/LibJS/Runtime/SetIteratorPrototype.h
  97. 8 8
      Userland/Libraries/LibJS/Runtime/SetPrototype.cpp
  98. 9 9
      Userland/Libraries/LibJS/Runtime/SetPrototype.h
  99. 2 2
      Userland/Libraries/LibJS/Runtime/ShadowRealmPrototype.cpp
  100. 2 2
      Userland/Libraries/LibJS/Runtime/ShadowRealmPrototype.h

+ 2 - 2
Meta/Lagom/Fuzzers/FuzzilliJs.cpp

@@ -125,7 +125,7 @@ public:
     virtual void initialize_global_object() override;
     virtual void initialize_global_object() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(fuzzilli);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(fuzzilli);
 };
 };
 
 
 TestRunnerGlobalObject::TestRunnerGlobalObject()
 TestRunnerGlobalObject::TestRunnerGlobalObject()
@@ -136,7 +136,7 @@ TestRunnerGlobalObject::~TestRunnerGlobalObject()
 {
 {
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(TestRunnerGlobalObject::fuzzilli)
+JS_DEFINE_OLD_NATIVE_FUNCTION(TestRunnerGlobalObject::fuzzilli)
 {
 {
     if (!vm.argument_count())
     if (!vm.argument_count())
         return JS::js_undefined();
         return JS::js_undefined();

+ 19 - 19
Meta/Lagom/Tools/CodeGenerators/LibWeb/WrapperGenerator.cpp

@@ -1435,7 +1435,7 @@ static void generate_function(SourceGenerator& generator, IDL::Function const& f
     }
     }
 
 
     function_generator.append(R"~~~(
     function_generator.append(R"~~~(
-JS_DEFINE_NATIVE_FUNCTION(@class_name@::@function.name:snakecase@)
+JS_DEFINE_OLD_NATIVE_FUNCTION(@class_name@::@function.name:snakecase@)
 {
 {
 )~~~");
 )~~~");
 
 
@@ -2551,7 +2551,7 @@ private:
         auto function_generator = generator.fork();
         auto function_generator = generator.fork();
         function_generator.set("function.name:snakecase", make_input_acceptable_cpp(function.name.to_snakecase()));
         function_generator.set("function.name:snakecase", make_input_acceptable_cpp(function.name.to_snakecase()));
         function_generator.append(R"~~~(
         function_generator.append(R"~~~(
-    JS_DECLARE_NATIVE_FUNCTION(@function.name:snakecase@);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(@function.name:snakecase@);
 )~~~");
 )~~~");
     }
     }
 
 
@@ -2782,24 +2782,24 @@ private:
         auto function_generator = generator.fork();
         auto function_generator = generator.fork();
         function_generator.set("function.name:snakecase", make_input_acceptable_cpp(function.name.to_snakecase()));
         function_generator.set("function.name:snakecase", make_input_acceptable_cpp(function.name.to_snakecase()));
         function_generator.append(R"~~~(
         function_generator.append(R"~~~(
-    JS_DECLARE_NATIVE_FUNCTION(@function.name:snakecase@);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(@function.name:snakecase@);
         )~~~");
         )~~~");
     }
     }
 
 
     if (interface.has_stringifier) {
     if (interface.has_stringifier) {
         auto stringifier_generator = generator.fork();
         auto stringifier_generator = generator.fork();
         stringifier_generator.append(R"~~~(
         stringifier_generator.append(R"~~~(
-    JS_DECLARE_NATIVE_FUNCTION(to_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_string);
         )~~~");
         )~~~");
     }
     }
 
 
     if (interface.pair_iterator_types.has_value()) {
     if (interface.pair_iterator_types.has_value()) {
         auto iterator_generator = generator.fork();
         auto iterator_generator = generator.fork();
         iterator_generator.append(R"~~~(
         iterator_generator.append(R"~~~(
-    JS_DECLARE_NATIVE_FUNCTION(entries);
-    JS_DECLARE_NATIVE_FUNCTION(for_each);
-    JS_DECLARE_NATIVE_FUNCTION(keys);
-    JS_DECLARE_NATIVE_FUNCTION(values);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(entries);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(for_each);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(keys);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(values);
         )~~~");
         )~~~");
     }
     }
 
 
@@ -2807,12 +2807,12 @@ private:
         auto attribute_generator = generator.fork();
         auto attribute_generator = generator.fork();
         attribute_generator.set("attribute.name:snakecase", attribute.name.to_snakecase());
         attribute_generator.set("attribute.name:snakecase", attribute.name.to_snakecase());
         attribute_generator.append(R"~~~(
         attribute_generator.append(R"~~~(
-    JS_DECLARE_NATIVE_FUNCTION(@attribute.name:snakecase@_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(@attribute.name:snakecase@_getter);
 )~~~");
 )~~~");
 
 
         if (!attribute.readonly) {
         if (!attribute.readonly) {
             attribute_generator.append(R"~~~(
             attribute_generator.append(R"~~~(
-    JS_DECLARE_NATIVE_FUNCTION(@attribute.name:snakecase@_setter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(@attribute.name:snakecase@_setter);
 )~~~");
 )~~~");
         }
         }
     }
     }
@@ -3189,7 +3189,7 @@ static @fully_qualified_name@* impl_from(JS::VM& vm, JS::GlobalObject& global_ob
         }
         }
 
 
         attribute_generator.append(R"~~~(
         attribute_generator.append(R"~~~(
-JS_DEFINE_NATIVE_FUNCTION(@prototype_class@::@attribute.getter_callback@)
+JS_DEFINE_OLD_NATIVE_FUNCTION(@prototype_class@::@attribute.getter_callback@)
 {
 {
     auto* impl = impl_from(vm, global_object);
     auto* impl = impl_from(vm, global_object);
     if (!impl)
     if (!impl)
@@ -3227,7 +3227,7 @@ JS_DEFINE_NATIVE_FUNCTION(@prototype_class@::@attribute.getter_callback@)
 
 
         if (!attribute.readonly) {
         if (!attribute.readonly) {
             attribute_generator.append(R"~~~(
             attribute_generator.append(R"~~~(
-JS_DEFINE_NATIVE_FUNCTION(@prototype_class@::@attribute.setter_callback@)
+JS_DEFINE_OLD_NATIVE_FUNCTION(@prototype_class@::@attribute.setter_callback@)
 {
 {
     auto* impl = impl_from(vm, global_object);
     auto* impl = impl_from(vm, global_object);
     if (!impl)
     if (!impl)
@@ -3279,7 +3279,7 @@ JS_DEFINE_NATIVE_FUNCTION(@prototype_class@::@attribute.setter_callback@)
             stringifier_generator.set("attribute.cpp_getter_name", interface.stringifier_attribute->to_snakecase());
             stringifier_generator.set("attribute.cpp_getter_name", interface.stringifier_attribute->to_snakecase());
 
 
         stringifier_generator.append(R"~~~(
         stringifier_generator.append(R"~~~(
-JS_DEFINE_NATIVE_FUNCTION(@class_name@::to_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(@class_name@::to_string)
 {
 {
     auto* impl = impl_from(vm, global_object);
     auto* impl = impl_from(vm, global_object);
     if (!impl)
     if (!impl)
@@ -3310,7 +3310,7 @@ JS_DEFINE_NATIVE_FUNCTION(@class_name@::to_string)
     if (interface.pair_iterator_types.has_value()) {
     if (interface.pair_iterator_types.has_value()) {
         auto iterator_generator = generator.fork();
         auto iterator_generator = generator.fork();
         iterator_generator.append(R"~~~(
         iterator_generator.append(R"~~~(
-JS_DEFINE_NATIVE_FUNCTION(@prototype_class@::entries)
+JS_DEFINE_OLD_NATIVE_FUNCTION(@prototype_class@::entries)
 {
 {
     auto* impl = impl_from(vm, global_object);
     auto* impl = impl_from(vm, global_object);
     if (!impl)
     if (!impl)
@@ -3319,7 +3319,7 @@ JS_DEFINE_NATIVE_FUNCTION(@prototype_class@::entries)
     return wrap(global_object, @iterator_name@::create(*impl, Object::PropertyKind::KeyAndValue));
     return wrap(global_object, @iterator_name@::create(*impl, Object::PropertyKind::KeyAndValue));
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(@prototype_class@::for_each)
+JS_DEFINE_OLD_NATIVE_FUNCTION(@prototype_class@::for_each)
 {
 {
     auto* impl = impl_from(vm, global_object);
     auto* impl = impl_from(vm, global_object);
     if (!impl)
     if (!impl)
@@ -3346,7 +3346,7 @@ JS_DEFINE_NATIVE_FUNCTION(@prototype_class@::for_each)
     return JS::js_undefined();
     return JS::js_undefined();
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(@prototype_class@::keys)
+JS_DEFINE_OLD_NATIVE_FUNCTION(@prototype_class@::keys)
 {
 {
     auto* impl = impl_from(vm, global_object);
     auto* impl = impl_from(vm, global_object);
     if (!impl)
     if (!impl)
@@ -3355,7 +3355,7 @@ JS_DEFINE_NATIVE_FUNCTION(@prototype_class@::keys)
     return wrap(global_object, @iterator_name@::create(*impl, Object::PropertyKind::Key));
     return wrap(global_object, @iterator_name@::create(*impl, Object::PropertyKind::Key));
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(@prototype_class@::values)
+JS_DEFINE_OLD_NATIVE_FUNCTION(@prototype_class@::values)
 {
 {
     auto* impl = impl_from(vm, global_object);
     auto* impl = impl_from(vm, global_object);
     if (!impl)
     if (!impl)
@@ -3545,7 +3545,7 @@ public:
     virtual ~@prototype_class@() override;
     virtual ~@prototype_class@() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(next);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(next);
 };
 };
 
 
 } // namespace Web::Bindings
 } // namespace Web::Bindings
@@ -3652,7 +3652,7 @@ static @fully_qualified_name@* impl_from(JS::VM& vm, JS::GlobalObject& global_ob
     return &static_cast<@wrapper_class@*>(this_object)->impl();
     return &static_cast<@wrapper_class@*>(this_object)->impl();
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(@prototype_class@::next)
+JS_DEFINE_OLD_NATIVE_FUNCTION(@prototype_class@::next)
 {
 {
     auto* impl = impl_from(vm, global_object);
     auto* impl = impl_from(vm, global_object);
     if (!impl)
     if (!impl)

+ 4 - 4
Tests/LibWasm/test-wasm.cpp

@@ -62,8 +62,8 @@ public:
     ~WebAssemblyModule() override = default;
     ~WebAssemblyModule() override = default;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(get_export);
-    JS_DECLARE_NATIVE_FUNCTION(wasm_invoke);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_export);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(wasm_invoke);
 
 
     static HashMap<Wasm::Linker::Name, Wasm::ExternValue> const& spec_test_namespace()
     static HashMap<Wasm::Linker::Name, Wasm::ExternValue> const& spec_test_namespace()
     {
     {
@@ -159,7 +159,7 @@ void WebAssemblyModule::initialize(JS::GlobalObject& global_object)
     define_native_function("invoke", wasm_invoke, 1, JS::default_attributes);
     define_native_function("invoke", wasm_invoke, 1, JS::default_attributes);
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(WebAssemblyModule::get_export)
+JS_DEFINE_OLD_NATIVE_FUNCTION(WebAssemblyModule::get_export)
 {
 {
     auto name = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto name = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto this_value = vm.this_value(global_object);
     auto this_value = vm.this_value(global_object);
@@ -193,7 +193,7 @@ JS_DEFINE_NATIVE_FUNCTION(WebAssemblyModule::get_export)
     return {};
     return {};
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(WebAssemblyModule::wasm_invoke)
+JS_DEFINE_OLD_NATIVE_FUNCTION(WebAssemblyModule::wasm_invoke)
 {
 {
     auto address = static_cast<unsigned long>(TRY_OR_DISCARD(vm.argument(0).to_double(global_object)));
     auto address = static_cast<unsigned long>(TRY_OR_DISCARD(vm.argument(0).to_double(global_object)));
     Wasm::FunctionAddress function_address { address };
     Wasm::FunctionAddress function_address { address };

+ 7 - 7
Userland/Applications/Spreadsheet/JSIntegration.cpp

@@ -169,7 +169,7 @@ void SheetGlobalObject::visit_edges(Visitor& visitor)
     }
     }
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(SheetGlobalObject::get_real_cell_contents)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SheetGlobalObject::get_real_cell_contents)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -206,7 +206,7 @@ JS_DEFINE_NATIVE_FUNCTION(SheetGlobalObject::get_real_cell_contents)
     return JS::js_string(vm, cell->data());
     return JS::js_string(vm, cell->data());
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(SheetGlobalObject::set_real_cell_contents)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SheetGlobalObject::set_real_cell_contents)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -245,7 +245,7 @@ JS_DEFINE_NATIVE_FUNCTION(SheetGlobalObject::set_real_cell_contents)
     return JS::js_null();
     return JS::js_null();
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(SheetGlobalObject::parse_cell_name)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SheetGlobalObject::parse_cell_name)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -276,7 +276,7 @@ JS_DEFINE_NATIVE_FUNCTION(SheetGlobalObject::parse_cell_name)
     return object;
     return object;
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(SheetGlobalObject::current_cell_position)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SheetGlobalObject::current_cell_position)
 {
 {
     if (vm.argument_count() != 0) {
     if (vm.argument_count() != 0) {
         vm.throw_exception<JS::TypeError>(global_object, "Expected no arguments to current_cell_position()");
         vm.throw_exception<JS::TypeError>(global_object, "Expected no arguments to current_cell_position()");
@@ -304,7 +304,7 @@ JS_DEFINE_NATIVE_FUNCTION(SheetGlobalObject::current_cell_position)
     return object;
     return object;
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(SheetGlobalObject::column_index)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SheetGlobalObject::column_index)
 {
 {
     if (vm.argument_count() != 1) {
     if (vm.argument_count() != 1) {
         vm.throw_exception<JS::TypeError>(global_object, "Expected exactly one argument to column_index()");
         vm.throw_exception<JS::TypeError>(global_object, "Expected exactly one argument to column_index()");
@@ -337,7 +337,7 @@ JS_DEFINE_NATIVE_FUNCTION(SheetGlobalObject::column_index)
     return JS::Value((i32)column_index.value());
     return JS::Value((i32)column_index.value());
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(SheetGlobalObject::column_arithmetic)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SheetGlobalObject::column_arithmetic)
 {
 {
     if (vm.argument_count() != 2) {
     if (vm.argument_count() != 2) {
         vm.throw_exception<JS::TypeError>(global_object, "Expected exactly two arguments to column_arithmetic()");
         vm.throw_exception<JS::TypeError>(global_object, "Expected exactly two arguments to column_arithmetic()");
@@ -397,7 +397,7 @@ void WorkbookObject::visit_edges(Visitor& visitor)
         visitor.visit(&sheet.global_object());
         visitor.visit(&sheet.global_object());
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(WorkbookObject::sheet)
+JS_DEFINE_OLD_NATIVE_FUNCTION(WorkbookObject::sheet)
 {
 {
     if (vm.argument_count() != 1) {
     if (vm.argument_count() != 1) {
         vm.throw_exception<JS::TypeError>(global_object, "Expected exactly one argument to sheet()");
         vm.throw_exception<JS::TypeError>(global_object, "Expected exactly one argument to sheet()");

+ 7 - 7
Userland/Applications/Spreadsheet/JSIntegration.h

@@ -32,12 +32,12 @@ public:
     virtual JS::ThrowCompletionOr<bool> internal_set(JS::PropertyName const&, JS::Value value, JS::Value receiver) override;
     virtual JS::ThrowCompletionOr<bool> internal_set(JS::PropertyName const&, JS::Value value, JS::Value receiver) override;
     virtual void initialize_global_object() override;
     virtual void initialize_global_object() override;
 
 
-    JS_DECLARE_NATIVE_FUNCTION(get_real_cell_contents);
-    JS_DECLARE_NATIVE_FUNCTION(set_real_cell_contents);
-    JS_DECLARE_NATIVE_FUNCTION(parse_cell_name);
-    JS_DECLARE_NATIVE_FUNCTION(current_cell_position);
-    JS_DECLARE_NATIVE_FUNCTION(column_index);
-    JS_DECLARE_NATIVE_FUNCTION(column_arithmetic);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_real_cell_contents);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_real_cell_contents);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(parse_cell_name);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(current_cell_position);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(column_index);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(column_arithmetic);
 
 
 private:
 private:
     virtual void visit_edges(Visitor&) override;
     virtual void visit_edges(Visitor&) override;
@@ -54,7 +54,7 @@ public:
 
 
     virtual void initialize(JS::GlobalObject&) override;
     virtual void initialize(JS::GlobalObject&) override;
 
 
-    JS_DECLARE_NATIVE_FUNCTION(sheet);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(sheet);
 
 
 private:
 private:
     virtual void visit_edges(Visitor&) override;
     virtual void visit_edges(Visitor&) override;

+ 8 - 2
Userland/Libraries/LibJS/Forward.h

@@ -6,12 +6,18 @@
 
 
 #pragma once
 #pragma once
 
 
-#define JS_DECLARE_NATIVE_FUNCTION(name) \
+#define JS_DECLARE_OLD_NATIVE_FUNCTION(name) \
     static JS::Value name(JS::VM&, JS::GlobalObject&)
     static JS::Value name(JS::VM&, JS::GlobalObject&)
 
 
-#define JS_DEFINE_NATIVE_FUNCTION(name) \
+#define JS_DEFINE_OLD_NATIVE_FUNCTION(name) \
     JS::Value name([[maybe_unused]] JS::VM& vm, [[maybe_unused]] JS::GlobalObject& global_object)
     JS::Value name([[maybe_unused]] JS::VM& vm, [[maybe_unused]] JS::GlobalObject& global_object)
 
 
+#define JS_DECLARE_NATIVE_FUNCTION(name) \
+    static JS::ThrowCompletionOr<JS::Value> name(JS::VM&, JS::GlobalObject&)
+
+#define JS_DEFINE_NATIVE_FUNCTION(name) \
+    JS::ThrowCompletionOr<JS::Value> name([[maybe_unused]] JS::VM& vm, [[maybe_unused]] JS::GlobalObject& global_object)
+
 // NOTE: Proxy is not included here as it doesn't have a prototype - m_proxy_constructor is initialized separately.
 // NOTE: Proxy is not included here as it doesn't have a prototype - m_proxy_constructor is initialized separately.
 #define JS_ENUMERATE_NATIVE_OBJECTS_EXCLUDING_TEMPLATES                                                                               \
 #define JS_ENUMERATE_NATIVE_OBJECTS_EXCLUDING_TEMPLATES                                                                               \
     __JS_ENUMERATE(AggregateError, aggregate_error, AggregateErrorPrototype, AggregateErrorConstructor, void)                         \
     __JS_ENUMERATE(AggregateError, aggregate_error, AggregateErrorPrototype, AggregateErrorConstructor, void)                         \

+ 2 - 2
Userland/Libraries/LibJS/Runtime/ArrayBufferConstructor.cpp

@@ -65,7 +65,7 @@ Value ArrayBufferConstructor::construct(FunctionObject& new_target)
 }
 }
 
 
 // 25.1.4.1 ArrayBuffer.isView ( arg ), https://tc39.es/ecma262/#sec-arraybuffer.isview
 // 25.1.4.1 ArrayBuffer.isView ( arg ), https://tc39.es/ecma262/#sec-arraybuffer.isview
-JS_DEFINE_NATIVE_FUNCTION(ArrayBufferConstructor::is_view)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayBufferConstructor::is_view)
 {
 {
     auto arg = vm.argument(0);
     auto arg = vm.argument(0);
     if (!arg.is_object())
     if (!arg.is_object())
@@ -78,7 +78,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayBufferConstructor::is_view)
 }
 }
 
 
 // 25.1.4.3 get ArrayBuffer [ @@species ], https://tc39.es/ecma262/#sec-get-arraybuffer-@@species
 // 25.1.4.3 get ArrayBuffer [ @@species ], https://tc39.es/ecma262/#sec-get-arraybuffer-@@species
-JS_DEFINE_NATIVE_FUNCTION(ArrayBufferConstructor::symbol_species_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayBufferConstructor::symbol_species_getter)
 {
 {
     return vm.this_value(global_object);
     return vm.this_value(global_object);
 }
 }

+ 2 - 2
Userland/Libraries/LibJS/Runtime/ArrayBufferConstructor.h

@@ -24,9 +24,9 @@ public:
 private:
 private:
     virtual bool has_constructor() const override { return true; }
     virtual bool has_constructor() const override { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(is_view);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is_view);
 
 
-    JS_DECLARE_NATIVE_FUNCTION(symbol_species_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(symbol_species_getter);
 };
 };
 
 
 }
 }

+ 2 - 2
Userland/Libraries/LibJS/Runtime/ArrayBufferPrototype.cpp

@@ -35,7 +35,7 @@ ArrayBufferPrototype::~ArrayBufferPrototype()
 }
 }
 
 
 // 25.1.5.3 ArrayBuffer.prototype.slice ( start, end ), https://tc39.es/ecma262/#sec-arraybuffer.prototype.slice
 // 25.1.5.3 ArrayBuffer.prototype.slice ( start, end ), https://tc39.es/ecma262/#sec-arraybuffer.prototype.slice
-JS_DEFINE_NATIVE_FUNCTION(ArrayBufferPrototype::slice)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayBufferPrototype::slice)
 {
 {
     auto* array_buffer_object = TRY_OR_DISCARD(typed_this_value(global_object));
     auto* array_buffer_object = TRY_OR_DISCARD(typed_this_value(global_object));
     // FIXME: Check for shared buffer
     // FIXME: Check for shared buffer
@@ -103,7 +103,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayBufferPrototype::slice)
 }
 }
 
 
 // 25.1.5.1 get ArrayBuffer.prototype.byteLength, https://tc39.es/ecma262/#sec-get-arraybuffer.prototype.bytelength
 // 25.1.5.1 get ArrayBuffer.prototype.byteLength, https://tc39.es/ecma262/#sec-get-arraybuffer.prototype.bytelength
-JS_DEFINE_NATIVE_FUNCTION(ArrayBufferPrototype::byte_length_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayBufferPrototype::byte_length_getter)
 {
 {
     auto* array_buffer_object = TRY_OR_DISCARD(typed_this_value(global_object));
     auto* array_buffer_object = TRY_OR_DISCARD(typed_this_value(global_object));
     // FIXME: Check for shared buffer
     // FIXME: Check for shared buffer

+ 2 - 2
Userland/Libraries/LibJS/Runtime/ArrayBufferPrototype.h

@@ -20,8 +20,8 @@ public:
     virtual ~ArrayBufferPrototype() override;
     virtual ~ArrayBufferPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(slice);
-    JS_DECLARE_NATIVE_FUNCTION(byte_length_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(slice);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(byte_length_getter);
 };
 };
 
 
 }
 }

+ 4 - 4
Userland/Libraries/LibJS/Runtime/ArrayConstructor.cpp

@@ -89,7 +89,7 @@ Value ArrayConstructor::construct(FunctionObject& new_target)
 }
 }
 
 
 // 23.1.2.1 Array.from ( items [ , mapfn [ , thisArg ] ] ), https://tc39.es/ecma262/#sec-array.from
 // 23.1.2.1 Array.from ( items [ , mapfn [ , thisArg ] ] ), https://tc39.es/ecma262/#sec-array.from
-JS_DEFINE_NATIVE_FUNCTION(ArrayConstructor::from)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayConstructor::from)
 {
 {
     auto constructor = vm.this_value(global_object);
     auto constructor = vm.this_value(global_object);
 
 
@@ -200,14 +200,14 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayConstructor::from)
 }
 }
 
 
 // 23.1.2.2 Array.isArray ( arg ), https://tc39.es/ecma262/#sec-array.isarray
 // 23.1.2.2 Array.isArray ( arg ), https://tc39.es/ecma262/#sec-array.isarray
-JS_DEFINE_NATIVE_FUNCTION(ArrayConstructor::is_array)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayConstructor::is_array)
 {
 {
     auto value = vm.argument(0);
     auto value = vm.argument(0);
     return Value(TRY_OR_DISCARD(value.is_array(global_object)));
     return Value(TRY_OR_DISCARD(value.is_array(global_object)));
 }
 }
 
 
 // 23.1.2.3 Array.of ( ...items ), https://tc39.es/ecma262/#sec-array.of
 // 23.1.2.3 Array.of ( ...items ), https://tc39.es/ecma262/#sec-array.of
-JS_DEFINE_NATIVE_FUNCTION(ArrayConstructor::of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayConstructor::of)
 {
 {
     auto this_value = vm.this_value(global_object);
     auto this_value = vm.this_value(global_object);
     Value array;
     Value array;
@@ -230,7 +230,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayConstructor::of)
 }
 }
 
 
 // 23.1.2.5 get Array [ @@species ], https://tc39.es/ecma262/#sec-get-array-@@species
 // 23.1.2.5 get Array [ @@species ], https://tc39.es/ecma262/#sec-get-array-@@species
-JS_DEFINE_NATIVE_FUNCTION(ArrayConstructor::symbol_species_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayConstructor::symbol_species_getter)
 {
 {
     return vm.this_value(global_object);
     return vm.this_value(global_object);
 }
 }

+ 4 - 4
Userland/Libraries/LibJS/Runtime/ArrayConstructor.h

@@ -24,11 +24,11 @@ public:
 private:
 private:
     virtual bool has_constructor() const override { return true; }
     virtual bool has_constructor() const override { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(from);
-    JS_DECLARE_NATIVE_FUNCTION(is_array);
-    JS_DECLARE_NATIVE_FUNCTION(of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(from);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is_array);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(of);
 
 
-    JS_DECLARE_NATIVE_FUNCTION(symbol_species_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(symbol_species_getter);
 };
 };
 
 
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/ArrayIteratorPrototype.cpp

@@ -36,7 +36,7 @@ ArrayIteratorPrototype::~ArrayIteratorPrototype()
 
 
 // 23.1.5.2.1 %ArrayIteratorPrototype%.next ( ), https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next
 // 23.1.5.2.1 %ArrayIteratorPrototype%.next ( ), https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next
 // FIXME: This seems to be CreateArrayIterator (https://tc39.es/ecma262/#sec-createarrayiterator) instead of %ArrayIteratorPrototype%.next.
 // FIXME: This seems to be CreateArrayIterator (https://tc39.es/ecma262/#sec-createarrayiterator) instead of %ArrayIteratorPrototype%.next.
-JS_DEFINE_NATIVE_FUNCTION(ArrayIteratorPrototype::next)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayIteratorPrototype::next)
 {
 {
     auto* iterator = TRY_OR_DISCARD(typed_this_value(global_object));
     auto* iterator = TRY_OR_DISCARD(typed_this_value(global_object));
     auto target_array = iterator->array();
     auto target_array = iterator->array();

+ 1 - 1
Userland/Libraries/LibJS/Runtime/ArrayIteratorPrototype.h

@@ -20,7 +20,7 @@ public:
     virtual ~ArrayIteratorPrototype() override;
     virtual ~ArrayIteratorPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(next);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(next);
 };
 };
 
 
 }
 }

+ 34 - 34
Userland/Libraries/LibJS/Runtime/ArrayPrototype.cpp

@@ -154,7 +154,7 @@ static Object* array_species_create(GlobalObject& global_object, Object& origina
 }
 }
 
 
 // 23.1.3.7 Array.prototype.filter ( callbackfn [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.filter
 // 23.1.3.7 Array.prototype.filter ( callbackfn [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.filter
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::filter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::filter)
 {
 {
     auto callback_function = vm.argument(0);
     auto callback_function = vm.argument(0);
     auto this_arg = vm.argument(1);
     auto this_arg = vm.argument(1);
@@ -216,7 +216,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::filter)
 }
 }
 
 
 // 23.1.3.12 Array.prototype.forEach ( callbackfn [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.foreach
 // 23.1.3.12 Array.prototype.forEach ( callbackfn [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.foreach
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::for_each)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::for_each)
 {
 {
     auto callback_function = vm.argument(0);
     auto callback_function = vm.argument(0);
     auto this_arg = vm.argument(1);
     auto this_arg = vm.argument(1);
@@ -261,7 +261,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::for_each)
 }
 }
 
 
 // 23.1.3.18 Array.prototype.map ( callbackfn [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.map
 // 23.1.3.18 Array.prototype.map ( callbackfn [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.map
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::map)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::map)
 {
 {
     auto callback_function = vm.argument(0);
     auto callback_function = vm.argument(0);
     auto this_arg = vm.argument(1);
     auto this_arg = vm.argument(1);
@@ -312,7 +312,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::map)
 }
 }
 
 
 // 23.1.3.20 Array.prototype.push ( ...items ), https://tc39.es/ecma262/#sec-array.prototype.push
 // 23.1.3.20 Array.prototype.push ( ...items ), https://tc39.es/ecma262/#sec-array.prototype.push
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::push)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::push)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
@@ -330,7 +330,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::push)
 }
 }
 
 
 // 23.1.3.31 Array.prototype.unshift ( ...items ), https://tc39.es/ecma262/#sec-array.prototype.unshift
 // 23.1.3.31 Array.prototype.unshift ( ...items ), https://tc39.es/ecma262/#sec-array.prototype.unshift
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::unshift)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::unshift)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
@@ -364,7 +364,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::unshift)
 }
 }
 
 
 // 23.1.3.19 Array.prototype.pop ( ), https://tc39.es/ecma262/#sec-array.prototype.pop
 // 23.1.3.19 Array.prototype.pop ( ), https://tc39.es/ecma262/#sec-array.prototype.pop
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::pop)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::pop)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
@@ -380,7 +380,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::pop)
 }
 }
 
 
 // 23.1.3.24 Array.prototype.shift ( ), https://tc39.es/ecma262/#sec-array.prototype.shift
 // 23.1.3.24 Array.prototype.shift ( ), https://tc39.es/ecma262/#sec-array.prototype.shift
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::shift)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::shift)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
@@ -407,7 +407,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::shift)
 }
 }
 
 
 // 23.1.3.30 Array.prototype.toString ( ), https://tc39.es/ecma262/#sec-array.prototype.tostring
 // 23.1.3.30 Array.prototype.toString ( ), https://tc39.es/ecma262/#sec-array.prototype.tostring
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::to_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::to_string)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto join_function = TRY_OR_DISCARD(this_object->get(vm.names.join));
     auto join_function = TRY_OR_DISCARD(this_object->get(vm.names.join));
@@ -417,7 +417,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::to_string)
 }
 }
 
 
 // 23.1.3.29 Array.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] ), https://tc39.es/ecma262/#sec-array.prototype.tolocalestring
 // 23.1.3.29 Array.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] ), https://tc39.es/ecma262/#sec-array.prototype.tolocalestring
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::to_locale_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::to_locale_string)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -446,7 +446,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::to_locale_string)
 }
 }
 
 
 // 23.1.3.15 Array.prototype.join ( separator ), https://tc39.es/ecma262/#sec-array.prototype.join
 // 23.1.3.15 Array.prototype.join ( separator ), https://tc39.es/ecma262/#sec-array.prototype.join
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::join)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::join)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -479,7 +479,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::join)
 }
 }
 
 
 // 23.1.3.1 Array.prototype.concat ( ...items ), https://tc39.es/ecma262/#sec-array.prototype.concat
 // 23.1.3.1 Array.prototype.concat ( ...items ), https://tc39.es/ecma262/#sec-array.prototype.concat
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::concat)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::concat)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -563,7 +563,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::concat)
 }
 }
 
 
 // 23.1.3.25 Array.prototype.slice ( start, end ), https://tc39.es/ecma262/#sec-array.prototype.slice
 // 23.1.3.25 Array.prototype.slice ( start, end ), https://tc39.es/ecma262/#sec-array.prototype.slice
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::slice)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::slice)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -621,7 +621,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::slice)
 }
 }
 
 
 // 23.1.3.14 Array.prototype.indexOf ( searchElement [ , fromIndex ] ), https://tc39.es/ecma262/#sec-array.prototype.indexof
 // 23.1.3.14 Array.prototype.indexOf ( searchElement [ , fromIndex ] ), https://tc39.es/ecma262/#sec-array.prototype.indexof
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::index_of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::index_of)
 {
 {
     auto search_element = vm.argument(0);
     auto search_element = vm.argument(0);
     auto from_index = vm.argument(1);
     auto from_index = vm.argument(1);
@@ -693,7 +693,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::index_of)
 }
 }
 
 
 // 23.1.3.21 Array.prototype.reduce ( callbackfn [ , initialValue ] ), https://tc39.es/ecma262/#sec-array.prototype.reduce
 // 23.1.3.21 Array.prototype.reduce ( callbackfn [ , initialValue ] ), https://tc39.es/ecma262/#sec-array.prototype.reduce
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::reduce)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::reduce)
 {
 {
     auto callback_function = vm.argument(0);
     auto callback_function = vm.argument(0);
     auto initial_value = vm.argument(1);
     auto initial_value = vm.argument(1);
@@ -781,7 +781,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::reduce)
 }
 }
 
 
 // 23.1.3.22 Array.prototype.reduceRight ( callbackfn [ , initialValue ] ), https://tc39.es/ecma262/#sec-array.prototype.reduceright
 // 23.1.3.22 Array.prototype.reduceRight ( callbackfn [ , initialValue ] ), https://tc39.es/ecma262/#sec-array.prototype.reduceright
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::reduce_right)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::reduce_right)
 {
 {
     auto callback_function = vm.argument(0);
     auto callback_function = vm.argument(0);
     auto initial_value = vm.argument(1);
     auto initial_value = vm.argument(1);
@@ -869,7 +869,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::reduce_right)
 }
 }
 
 
 // 23.1.3.23 Array.prototype.reverse ( ), https://tc39.es/ecma262/#sec-array.prototype.reverse
 // 23.1.3.23 Array.prototype.reverse ( ), https://tc39.es/ecma262/#sec-array.prototype.reverse
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::reverse)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::reverse)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
@@ -1017,7 +1017,7 @@ static void array_merge_sort(VM& vm, GlobalObject& global_object, FunctionObject
 }
 }
 
 
 // 23.1.3.27 Array.prototype.sort ( comparefn ), https://tc39.es/ecma262/#sec-array.prototype.sort
 // 23.1.3.27 Array.prototype.sort ( comparefn ), https://tc39.es/ecma262/#sec-array.prototype.sort
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::sort)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::sort)
 {
 {
     auto callback = vm.argument(0);
     auto callback = vm.argument(0);
     if (!callback.is_undefined() && !callback.is_function()) {
     if (!callback.is_undefined() && !callback.is_function()) {
@@ -1061,7 +1061,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::sort)
 }
 }
 
 
 // 23.1.3.17 Array.prototype.lastIndexOf ( searchElement [ , fromIndex ] ), https://tc39.es/ecma262/#sec-array.prototype.lastindexof
 // 23.1.3.17 Array.prototype.lastIndexOf ( searchElement [ , fromIndex ] ), https://tc39.es/ecma262/#sec-array.prototype.lastindexof
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::last_index_of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::last_index_of)
 {
 {
     auto search_element = vm.argument(0);
     auto search_element = vm.argument(0);
     auto from_index = vm.argument(1);
     auto from_index = vm.argument(1);
@@ -1129,7 +1129,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::last_index_of)
 }
 }
 
 
 // 23.1.3.13 Array.prototype.includes ( searchElement [ , fromIndex ] ), https://tc39.es/ecma262/#sec-array.prototype.includes
 // 23.1.3.13 Array.prototype.includes ( searchElement [ , fromIndex ] ), https://tc39.es/ecma262/#sec-array.prototype.includes
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::includes)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::includes)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
@@ -1160,7 +1160,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::includes)
 }
 }
 
 
 // 23.1.3.8 Array.prototype.find ( predicate [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.find
 // 23.1.3.8 Array.prototype.find ( predicate [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.find
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::find)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::find)
 {
 {
     auto predicate = vm.argument(0);
     auto predicate = vm.argument(0);
     auto this_arg = vm.argument(1);
     auto this_arg = vm.argument(1);
@@ -1201,7 +1201,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::find)
 }
 }
 
 
 // 23.1.3.9 Array.prototype.findIndex ( predicate [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.findindex
 // 23.1.3.9 Array.prototype.findIndex ( predicate [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.findindex
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::find_index)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::find_index)
 {
 {
     auto predicate = vm.argument(0);
     auto predicate = vm.argument(0);
     auto this_arg = vm.argument(1);
     auto this_arg = vm.argument(1);
@@ -1242,7 +1242,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::find_index)
 }
 }
 
 
 // 1 Array.prototype.findLast ( predicate [ , thisArg ] ), https://tc39.es/proposal-array-find-from-last/index.html#sec-array.prototype.findlast
 // 1 Array.prototype.findLast ( predicate [ , thisArg ] ), https://tc39.es/proposal-array-find-from-last/index.html#sec-array.prototype.findlast
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::find_last)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::find_last)
 {
 {
     auto predicate = vm.argument(0);
     auto predicate = vm.argument(0);
     auto this_arg = vm.argument(1);
     auto this_arg = vm.argument(1);
@@ -1283,7 +1283,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::find_last)
 }
 }
 
 
 // 2 Array.prototype.findLastIndex ( predicate [ , thisArg ] ), https://tc39.es/proposal-array-find-from-last/index.html#sec-array.prototype.findlastindex
 // 2 Array.prototype.findLastIndex ( predicate [ , thisArg ] ), https://tc39.es/proposal-array-find-from-last/index.html#sec-array.prototype.findlastindex
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::find_last_index)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::find_last_index)
 {
 {
     auto predicate = vm.argument(0);
     auto predicate = vm.argument(0);
     auto this_arg = vm.argument(1);
     auto this_arg = vm.argument(1);
@@ -1324,7 +1324,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::find_last_index)
 }
 }
 
 
 // 23.1.3.26 Array.prototype.some ( callbackfn [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.some
 // 23.1.3.26 Array.prototype.some ( callbackfn [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.some
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::some)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::some)
 {
 {
     auto callback_function = vm.argument(0);
     auto callback_function = vm.argument(0);
     auto this_arg = vm.argument(1);
     auto this_arg = vm.argument(1);
@@ -1371,7 +1371,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::some)
 }
 }
 
 
 // 23.1.3.5 Array.prototype.every ( callbackfn [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.every
 // 23.1.3.5 Array.prototype.every ( callbackfn [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.every
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::every)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::every)
 {
 {
     auto callback_function = vm.argument(0);
     auto callback_function = vm.argument(0);
     auto this_arg = vm.argument(1);
     auto this_arg = vm.argument(1);
@@ -1418,7 +1418,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::every)
 }
 }
 
 
 // 23.1.3.28 Array.prototype.splice ( start, deleteCount, ...items ), https://tc39.es/ecma262#sec-array.prototype.splice
 // 23.1.3.28 Array.prototype.splice ( start, deleteCount, ...items ), https://tc39.es/ecma262#sec-array.prototype.splice
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::splice)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::splice)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -1514,7 +1514,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::splice)
 }
 }
 
 
 // 23.1.3.6 Array.prototype.fill ( value [ , start [ , end ] ] ), https://tc39.es/ecma262/#sec-array.prototype.fill
 // 23.1.3.6 Array.prototype.fill ( value [ , start [ , end ] ] ), https://tc39.es/ecma262/#sec-array.prototype.fill
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::fill)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::fill)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -1555,7 +1555,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::fill)
 }
 }
 
 
 // 23.1.3.32 Array.prototype.values ( ), https://tc39.es/ecma262/#sec-array.prototype.values
 // 23.1.3.32 Array.prototype.values ( ), https://tc39.es/ecma262/#sec-array.prototype.values
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::values)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::values)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -1563,7 +1563,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::values)
 }
 }
 
 
 // 23.1.3.16 Array.prototype.entries ( ), https://tc39.es/ecma262/#sec-array.prototype.entries
 // 23.1.3.16 Array.prototype.entries ( ), https://tc39.es/ecma262/#sec-array.prototype.entries
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::entries)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::entries)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -1571,7 +1571,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::entries)
 }
 }
 
 
 // 23.1.3.16 Array.prototype.keys ( ), https://tc39.es/ecma262/#sec-array.prototype.keys
 // 23.1.3.16 Array.prototype.keys ( ), https://tc39.es/ecma262/#sec-array.prototype.keys
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::keys)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::keys)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -1620,7 +1620,7 @@ static size_t flatten_into_array(GlobalObject& global_object, Object& new_array,
 }
 }
 
 
 // 23.1.3.10 Array.prototype.flat ( [ depth ] ), https://tc39.es/ecma262/#sec-array.prototype.flat
 // 23.1.3.10 Array.prototype.flat ( [ depth ] ), https://tc39.es/ecma262/#sec-array.prototype.flat
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::flat)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::flat)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -1643,7 +1643,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::flat)
 }
 }
 
 
 // 23.1.3.11 Array.prototype.flatMap ( mapperFunction [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.flatmap
 // 23.1.3.11 Array.prototype.flatMap ( mapperFunction [ , thisArg ] ), https://tc39.es/ecma262/#sec-array.prototype.flatmap
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::flat_map)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::flat_map)
 {
 {
     auto mapper_function = vm.argument(0);
     auto mapper_function = vm.argument(0);
     auto this_arg = vm.argument(1);
     auto this_arg = vm.argument(1);
@@ -1675,7 +1675,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::flat_map)
 }
 }
 
 
 // 23.1.3.3 Array.prototype.copyWithin ( target, start [ , end ] ), https://tc39.es/ecma262/#sec-array.prototype.copywithin
 // 23.1.3.3 Array.prototype.copyWithin ( target, start [ , end ] ), https://tc39.es/ecma262/#sec-array.prototype.copywithin
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::copy_within)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::copy_within)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
@@ -1741,7 +1741,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::copy_within)
 }
 }
 
 
 // 1.1 Array.prototype.at ( index ), https://tc39.es/proposal-relative-indexing-method/#sec-array.prototype.at
 // 1.1 Array.prototype.at ( index ), https://tc39.es/proposal-relative-indexing-method/#sec-array.prototype.at
-JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::at)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ArrayPrototype::at)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));
     auto length = TRY_OR_DISCARD(length_of_array_like(global_object, *this_object));

+ 34 - 34
Userland/Libraries/LibJS/Runtime/ArrayPrototype.h

@@ -20,40 +20,40 @@ public:
     virtual ~ArrayPrototype() override;
     virtual ~ArrayPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(filter);
-    JS_DECLARE_NATIVE_FUNCTION(for_each);
-    JS_DECLARE_NATIVE_FUNCTION(map);
-    JS_DECLARE_NATIVE_FUNCTION(pop);
-    JS_DECLARE_NATIVE_FUNCTION(push);
-    JS_DECLARE_NATIVE_FUNCTION(shift);
-    JS_DECLARE_NATIVE_FUNCTION(to_string);
-    JS_DECLARE_NATIVE_FUNCTION(to_locale_string);
-    JS_DECLARE_NATIVE_FUNCTION(unshift);
-    JS_DECLARE_NATIVE_FUNCTION(join);
-    JS_DECLARE_NATIVE_FUNCTION(concat);
-    JS_DECLARE_NATIVE_FUNCTION(slice);
-    JS_DECLARE_NATIVE_FUNCTION(index_of);
-    JS_DECLARE_NATIVE_FUNCTION(reduce);
-    JS_DECLARE_NATIVE_FUNCTION(reduce_right);
-    JS_DECLARE_NATIVE_FUNCTION(reverse);
-    JS_DECLARE_NATIVE_FUNCTION(sort);
-    JS_DECLARE_NATIVE_FUNCTION(last_index_of);
-    JS_DECLARE_NATIVE_FUNCTION(includes);
-    JS_DECLARE_NATIVE_FUNCTION(find);
-    JS_DECLARE_NATIVE_FUNCTION(find_index);
-    JS_DECLARE_NATIVE_FUNCTION(find_last);
-    JS_DECLARE_NATIVE_FUNCTION(find_last_index);
-    JS_DECLARE_NATIVE_FUNCTION(some);
-    JS_DECLARE_NATIVE_FUNCTION(every);
-    JS_DECLARE_NATIVE_FUNCTION(splice);
-    JS_DECLARE_NATIVE_FUNCTION(fill);
-    JS_DECLARE_NATIVE_FUNCTION(values);
-    JS_DECLARE_NATIVE_FUNCTION(flat);
-    JS_DECLARE_NATIVE_FUNCTION(flat_map);
-    JS_DECLARE_NATIVE_FUNCTION(at);
-    JS_DECLARE_NATIVE_FUNCTION(keys);
-    JS_DECLARE_NATIVE_FUNCTION(entries);
-    JS_DECLARE_NATIVE_FUNCTION(copy_within);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(filter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(for_each);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(map);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(pop);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(push);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(shift);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_locale_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(unshift);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(join);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(concat);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(slice);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(index_of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(reduce);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(reduce_right);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(reverse);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(sort);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(last_index_of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(includes);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(find);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(find_index);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(find_last);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(find_last_index);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(some);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(every);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(splice);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(fill);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(values);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(flat);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(flat_map);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(at);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(keys);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(entries);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(copy_within);
 };
 };
 
 
 }
 }

+ 10 - 10
Userland/Libraries/LibJS/Runtime/AtomicsObject.cpp

@@ -162,7 +162,7 @@ void AtomicsObject::initialize(GlobalObject& global_object)
 }
 }
 
 
 // 25.4.3 Atomics.add ( typedArray, index, value ), https://tc39.es/ecma262/#sec-atomics.add
 // 25.4.3 Atomics.add ( typedArray, index, value ), https://tc39.es/ecma262/#sec-atomics.add
-JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::add)
+JS_DEFINE_OLD_NATIVE_FUNCTION(AtomicsObject::add)
 {
 {
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     if (!typed_array)
     if (!typed_array)
@@ -180,7 +180,7 @@ JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::add)
 }
 }
 
 
 // 25.4.4 Atomics.and ( typedArray, index, value ), https://tc39.es/ecma262/#sec-atomics.and
 // 25.4.4 Atomics.and ( typedArray, index, value ), https://tc39.es/ecma262/#sec-atomics.and
-JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::and_)
+JS_DEFINE_OLD_NATIVE_FUNCTION(AtomicsObject::and_)
 {
 {
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     if (!typed_array)
     if (!typed_array)
@@ -278,7 +278,7 @@ static ThrowCompletionOr<Value> atomic_compare_exchange_impl(GlobalObject& globa
 }
 }
 
 
 // 25.4.5 Atomics.compareExchange ( typedArray, index, expectedValue, replacementValue ), https://tc39.es/ecma262/#sec-atomics.compareexchange
 // 25.4.5 Atomics.compareExchange ( typedArray, index, expectedValue, replacementValue ), https://tc39.es/ecma262/#sec-atomics.compareexchange
-JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::compare_exchange)
+JS_DEFINE_OLD_NATIVE_FUNCTION(AtomicsObject::compare_exchange)
 {
 {
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     if (!typed_array)
     if (!typed_array)
@@ -294,7 +294,7 @@ JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::compare_exchange)
 }
 }
 
 
 // 25.4.6 Atomics.exchange ( typedArray, index, value ), https://tc39.es/ecma262/#sec-atomics.exchange
 // 25.4.6 Atomics.exchange ( typedArray, index, value ), https://tc39.es/ecma262/#sec-atomics.exchange
-JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::exchange)
+JS_DEFINE_OLD_NATIVE_FUNCTION(AtomicsObject::exchange)
 {
 {
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     if (!typed_array)
     if (!typed_array)
@@ -312,7 +312,7 @@ JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::exchange)
 }
 }
 
 
 // 25.4.7 Atomics.isLockFree ( size ), https://tc39.es/ecma262/#sec-atomics.islockfree
 // 25.4.7 Atomics.isLockFree ( size ), https://tc39.es/ecma262/#sec-atomics.islockfree
-JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::is_lock_free)
+JS_DEFINE_OLD_NATIVE_FUNCTION(AtomicsObject::is_lock_free)
 {
 {
     auto size = TRY_OR_DISCARD(vm.argument(0).to_integer_or_infinity(global_object));
     auto size = TRY_OR_DISCARD(vm.argument(0).to_integer_or_infinity(global_object));
     if (size == 1)
     if (size == 1)
@@ -327,7 +327,7 @@ JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::is_lock_free)
 }
 }
 
 
 // 25.4.8 Atomics.load ( typedArray, index ), https://tc39.es/ecma262/#sec-atomics.load
 // 25.4.8 Atomics.load ( typedArray, index ), https://tc39.es/ecma262/#sec-atomics.load
-JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::load)
+JS_DEFINE_OLD_NATIVE_FUNCTION(AtomicsObject::load)
 {
 {
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     if (!typed_array)
     if (!typed_array)
@@ -346,7 +346,7 @@ JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::load)
 }
 }
 
 
 // 25.4.9 Atomics.or ( typedArray, index, value ), https://tc39.es/ecma262/#sec-atomics.or
 // 25.4.9 Atomics.or ( typedArray, index, value ), https://tc39.es/ecma262/#sec-atomics.or
-JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::or_)
+JS_DEFINE_OLD_NATIVE_FUNCTION(AtomicsObject::or_)
 {
 {
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     if (!typed_array)
     if (!typed_array)
@@ -364,7 +364,7 @@ JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::or_)
 }
 }
 
 
 // 25.4.10 Atomics.store ( typedArray, index, value ), https://tc39.es/ecma262/#sec-atomics.store
 // 25.4.10 Atomics.store ( typedArray, index, value ), https://tc39.es/ecma262/#sec-atomics.store
-JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::store)
+JS_DEFINE_OLD_NATIVE_FUNCTION(AtomicsObject::store)
 {
 {
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     if (!typed_array)
     if (!typed_array)
@@ -391,7 +391,7 @@ JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::store)
 }
 }
 
 
 // 25.4.11 Atomics.sub ( typedArray, index, value ), https://tc39.es/ecma262/#sec-atomics.sub
 // 25.4.11 Atomics.sub ( typedArray, index, value ), https://tc39.es/ecma262/#sec-atomics.sub
-JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::sub)
+JS_DEFINE_OLD_NATIVE_FUNCTION(AtomicsObject::sub)
 {
 {
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     if (!typed_array)
     if (!typed_array)
@@ -409,7 +409,7 @@ JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::sub)
 }
 }
 
 
 // 25.4.14 Atomics.xor ( typedArray, index, value ), https://tc39.es/ecma262/#sec-atomics.xor
 // 25.4.14 Atomics.xor ( typedArray, index, value ), https://tc39.es/ecma262/#sec-atomics.xor
-JS_DEFINE_NATIVE_FUNCTION(AtomicsObject::xor_)
+JS_DEFINE_OLD_NATIVE_FUNCTION(AtomicsObject::xor_)
 {
 {
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     auto* typed_array = typed_array_from(global_object, vm.argument(0));
     if (!typed_array)
     if (!typed_array)

+ 10 - 10
Userland/Libraries/LibJS/Runtime/AtomicsObject.h

@@ -19,16 +19,16 @@ public:
     virtual ~AtomicsObject() override = default;
     virtual ~AtomicsObject() override = default;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(add);
-    JS_DECLARE_NATIVE_FUNCTION(and_);
-    JS_DECLARE_NATIVE_FUNCTION(compare_exchange);
-    JS_DECLARE_NATIVE_FUNCTION(exchange);
-    JS_DECLARE_NATIVE_FUNCTION(is_lock_free);
-    JS_DECLARE_NATIVE_FUNCTION(load);
-    JS_DECLARE_NATIVE_FUNCTION(or_);
-    JS_DECLARE_NATIVE_FUNCTION(store);
-    JS_DECLARE_NATIVE_FUNCTION(sub);
-    JS_DECLARE_NATIVE_FUNCTION(xor_);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(add);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(and_);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(compare_exchange);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(exchange);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is_lock_free);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(load);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(or_);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(store);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(sub);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(xor_);
 };
 };
 
 
 }
 }

+ 2 - 2
Userland/Libraries/LibJS/Runtime/BigIntConstructor.cpp

@@ -66,13 +66,13 @@ Value BigIntConstructor::construct(FunctionObject&)
 }
 }
 
 
 // 21.2.2.1 BigInt.asIntN ( bits, bigint ), https://tc39.es/ecma262/#sec-bigint.asintn
 // 21.2.2.1 BigInt.asIntN ( bits, bigint ), https://tc39.es/ecma262/#sec-bigint.asintn
-JS_DEFINE_NATIVE_FUNCTION(BigIntConstructor::as_int_n)
+JS_DEFINE_OLD_NATIVE_FUNCTION(BigIntConstructor::as_int_n)
 {
 {
     TODO();
     TODO();
 }
 }
 
 
 // 21.2.2.2 BigInt.asUintN ( bits, bigint ), https://tc39.es/ecma262/#sec-bigint.asuintn
 // 21.2.2.2 BigInt.asUintN ( bits, bigint ), https://tc39.es/ecma262/#sec-bigint.asuintn
-JS_DEFINE_NATIVE_FUNCTION(BigIntConstructor::as_uint_n)
+JS_DEFINE_OLD_NATIVE_FUNCTION(BigIntConstructor::as_uint_n)
 {
 {
     TODO();
     TODO();
 }
 }

+ 2 - 2
Userland/Libraries/LibJS/Runtime/BigIntConstructor.h

@@ -24,8 +24,8 @@ public:
 private:
 private:
     virtual bool has_constructor() const override { return true; }
     virtual bool has_constructor() const override { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(as_int_n);
-    JS_DECLARE_NATIVE_FUNCTION(as_uint_n);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(as_int_n);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(as_uint_n);
 };
 };
 
 
 }
 }

+ 3 - 3
Userland/Libraries/LibJS/Runtime/BigIntPrototype.cpp

@@ -48,7 +48,7 @@ static ThrowCompletionOr<BigInt*> this_bigint_value(GlobalObject& global_object,
 }
 }
 
 
 // 21.2.3.3 BigInt.prototype.toString ( [ radix ] ), https://tc39.es/ecma262/#sec-bigint.prototype.tostring
 // 21.2.3.3 BigInt.prototype.toString ( [ radix ] ), https://tc39.es/ecma262/#sec-bigint.prototype.tostring
-JS_DEFINE_NATIVE_FUNCTION(BigIntPrototype::to_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(BigIntPrototype::to_string)
 {
 {
     auto* bigint = TRY_OR_DISCARD(this_bigint_value(global_object, vm.this_value(global_object)));
     auto* bigint = TRY_OR_DISCARD(this_bigint_value(global_object, vm.this_value(global_object)));
     double radix = 10;
     double radix = 10;
@@ -63,13 +63,13 @@ JS_DEFINE_NATIVE_FUNCTION(BigIntPrototype::to_string)
 }
 }
 
 
 // 21.2.3.2 BigInt.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] ), https://tc39.es/ecma262/#sec-bigint.prototype.tolocalestring
 // 21.2.3.2 BigInt.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] ), https://tc39.es/ecma262/#sec-bigint.prototype.tolocalestring
-JS_DEFINE_NATIVE_FUNCTION(BigIntPrototype::to_locale_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(BigIntPrototype::to_locale_string)
 {
 {
     return to_string(vm, global_object);
     return to_string(vm, global_object);
 }
 }
 
 
 // 21.2.3.4 BigInt.prototype.valueOf ( ), https://tc39.es/ecma262/#sec-bigint.prototype.valueof
 // 21.2.3.4 BigInt.prototype.valueOf ( ), https://tc39.es/ecma262/#sec-bigint.prototype.valueof
-JS_DEFINE_NATIVE_FUNCTION(BigIntPrototype::value_of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(BigIntPrototype::value_of)
 {
 {
     return TRY_OR_DISCARD(this_bigint_value(global_object, vm.this_value(global_object)));
     return TRY_OR_DISCARD(this_bigint_value(global_object, vm.this_value(global_object)));
 }
 }

+ 3 - 3
Userland/Libraries/LibJS/Runtime/BigIntPrototype.h

@@ -19,9 +19,9 @@ public:
     virtual ~BigIntPrototype() override;
     virtual ~BigIntPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(to_string);
-    JS_DECLARE_NATIVE_FUNCTION(to_locale_string);
-    JS_DECLARE_NATIVE_FUNCTION(value_of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_locale_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(value_of);
 };
 };
 
 
 }
 }

+ 2 - 2
Userland/Libraries/LibJS/Runtime/BooleanPrototype.cpp

@@ -31,7 +31,7 @@ BooleanPrototype::~BooleanPrototype()
 }
 }
 
 
 // 20.3.3.2 Boolean.prototype.toString ( ), https://tc39.es/ecma262/#sec-boolean.prototype.tostring
 // 20.3.3.2 Boolean.prototype.toString ( ), https://tc39.es/ecma262/#sec-boolean.prototype.tostring
-JS_DEFINE_NATIVE_FUNCTION(BooleanPrototype::to_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(BooleanPrototype::to_string)
 {
 {
     auto this_value = vm.this_value(global_object);
     auto this_value = vm.this_value(global_object);
     if (this_value.is_boolean())
     if (this_value.is_boolean())
@@ -46,7 +46,7 @@ JS_DEFINE_NATIVE_FUNCTION(BooleanPrototype::to_string)
 }
 }
 
 
 // 20.3.3.3 Boolean.prototype.valueOf ( ), https://tc39.es/ecma262/#sec-boolean.prototype.valueof
 // 20.3.3.3 Boolean.prototype.valueOf ( ), https://tc39.es/ecma262/#sec-boolean.prototype.valueof
-JS_DEFINE_NATIVE_FUNCTION(BooleanPrototype::value_of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(BooleanPrototype::value_of)
 {
 {
     auto this_value = vm.this_value(global_object);
     auto this_value = vm.this_value(global_object);
     if (this_value.is_boolean())
     if (this_value.is_boolean())

+ 2 - 2
Userland/Libraries/LibJS/Runtime/BooleanPrototype.h

@@ -19,8 +19,8 @@ public:
     virtual ~BooleanPrototype() override;
     virtual ~BooleanPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(to_string);
-    JS_DECLARE_NATIVE_FUNCTION(value_of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(value_of);
 };
 };
 
 
 }
 }

+ 10 - 10
Userland/Libraries/LibJS/Runtime/ConsoleObject.cpp

@@ -39,61 +39,61 @@ ConsoleObject::~ConsoleObject()
 }
 }
 
 
 // 1.1.6. log(...data), https://console.spec.whatwg.org/#log
 // 1.1.6. log(...data), https://console.spec.whatwg.org/#log
-JS_DEFINE_NATIVE_FUNCTION(ConsoleObject::log)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ConsoleObject::log)
 {
 {
     return global_object.console().log();
     return global_object.console().log();
 }
 }
 
 
 // 1.1.3. debug(...data), https://console.spec.whatwg.org/#debug
 // 1.1.3. debug(...data), https://console.spec.whatwg.org/#debug
-JS_DEFINE_NATIVE_FUNCTION(ConsoleObject::debug)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ConsoleObject::debug)
 {
 {
     return global_object.console().debug();
     return global_object.console().debug();
 }
 }
 
 
 // 1.1.5. info(...data), https://console.spec.whatwg.org/#info
 // 1.1.5. info(...data), https://console.spec.whatwg.org/#info
-JS_DEFINE_NATIVE_FUNCTION(ConsoleObject::info)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ConsoleObject::info)
 {
 {
     return global_object.console().info();
     return global_object.console().info();
 }
 }
 
 
 // 1.1.9. warn(...data), https://console.spec.whatwg.org/#warn
 // 1.1.9. warn(...data), https://console.spec.whatwg.org/#warn
-JS_DEFINE_NATIVE_FUNCTION(ConsoleObject::warn)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ConsoleObject::warn)
 {
 {
     return global_object.console().warn();
     return global_object.console().warn();
 }
 }
 
 
 // 1.1.4. error(...data), https://console.spec.whatwg.org/#error
 // 1.1.4. error(...data), https://console.spec.whatwg.org/#error
-JS_DEFINE_NATIVE_FUNCTION(ConsoleObject::error)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ConsoleObject::error)
 {
 {
     return global_object.console().error();
     return global_object.console().error();
 }
 }
 
 
 // 1.1.8. trace(...data), https://console.spec.whatwg.org/#trace
 // 1.1.8. trace(...data), https://console.spec.whatwg.org/#trace
-JS_DEFINE_NATIVE_FUNCTION(ConsoleObject::trace)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ConsoleObject::trace)
 {
 {
     return global_object.console().trace();
     return global_object.console().trace();
 }
 }
 
 
 // 1.2.1. count(label), https://console.spec.whatwg.org/#count
 // 1.2.1. count(label), https://console.spec.whatwg.org/#count
-JS_DEFINE_NATIVE_FUNCTION(ConsoleObject::count)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ConsoleObject::count)
 {
 {
     return global_object.console().count();
     return global_object.console().count();
 }
 }
 
 
 // 1.2.2. countReset(label), https://console.spec.whatwg.org/#countreset
 // 1.2.2. countReset(label), https://console.spec.whatwg.org/#countreset
-JS_DEFINE_NATIVE_FUNCTION(ConsoleObject::count_reset)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ConsoleObject::count_reset)
 {
 {
     return global_object.console().count_reset();
     return global_object.console().count_reset();
 }
 }
 
 
 // 1.1.2. clear(), https://console.spec.whatwg.org/#clear
 // 1.1.2. clear(), https://console.spec.whatwg.org/#clear
-JS_DEFINE_NATIVE_FUNCTION(ConsoleObject::clear)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ConsoleObject::clear)
 {
 {
     return global_object.console().clear();
     return global_object.console().clear();
 }
 }
 
 
 // 1.1.1. assert(condition, ...data), https://console.spec.whatwg.org/#assert
 // 1.1.1. assert(condition, ...data), https://console.spec.whatwg.org/#assert
-JS_DEFINE_NATIVE_FUNCTION(ConsoleObject::assert_)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ConsoleObject::assert_)
 {
 {
     return global_object.console().assert_();
     return global_object.console().assert_();
 }
 }

+ 10 - 10
Userland/Libraries/LibJS/Runtime/ConsoleObject.h

@@ -19,16 +19,16 @@ public:
     virtual ~ConsoleObject() override;
     virtual ~ConsoleObject() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(log);
-    JS_DECLARE_NATIVE_FUNCTION(debug);
-    JS_DECLARE_NATIVE_FUNCTION(info);
-    JS_DECLARE_NATIVE_FUNCTION(warn);
-    JS_DECLARE_NATIVE_FUNCTION(error);
-    JS_DECLARE_NATIVE_FUNCTION(trace);
-    JS_DECLARE_NATIVE_FUNCTION(count);
-    JS_DECLARE_NATIVE_FUNCTION(count_reset);
-    JS_DECLARE_NATIVE_FUNCTION(clear);
-    JS_DECLARE_NATIVE_FUNCTION(assert_);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(log);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(debug);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(info);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(warn);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(error);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(trace);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(count);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(count_reset);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(clear);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(assert_);
 };
 };
 
 
 }
 }

+ 23 - 23
Userland/Libraries/LibJS/Runtime/DataViewPrototype.cpp

@@ -130,125 +130,125 @@ static Value set_view_value(GlobalObject& global_object, Value request_index, Va
 }
 }
 
 
 // 25.3.4.5 DataView.prototype.getBigInt64 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getbigint64
 // 25.3.4.5 DataView.prototype.getBigInt64 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getbigint64
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::get_big_int_64)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::get_big_int_64)
 {
 {
     return get_view_value<i64>(global_object, vm.argument(0), vm.argument(1));
     return get_view_value<i64>(global_object, vm.argument(0), vm.argument(1));
 }
 }
 
 
 // 25.3.4.6 DataView.prototype.getBigUint64 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getbiguint64
 // 25.3.4.6 DataView.prototype.getBigUint64 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getbiguint64
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::get_big_uint_64)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::get_big_uint_64)
 {
 {
     return get_view_value<u64>(global_object, vm.argument(0), vm.argument(1));
     return get_view_value<u64>(global_object, vm.argument(0), vm.argument(1));
 }
 }
 
 
 // 25.3.4.7 DataView.prototype.getFloat32 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getfloat32
 // 25.3.4.7 DataView.prototype.getFloat32 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getfloat32
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::get_float_32)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::get_float_32)
 {
 {
     return get_view_value<float>(global_object, vm.argument(0), vm.argument(1));
     return get_view_value<float>(global_object, vm.argument(0), vm.argument(1));
 }
 }
 
 
 // 25.3.4.8 DataView.prototype.getFloat64 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getfloat64
 // 25.3.4.8 DataView.prototype.getFloat64 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getfloat64
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::get_float_64)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::get_float_64)
 {
 {
     return get_view_value<double>(global_object, vm.argument(0), vm.argument(1));
     return get_view_value<double>(global_object, vm.argument(0), vm.argument(1));
 }
 }
 
 
 // 25.3.4.9 DataView.prototype.getInt8 ( byteOffset ), https://tc39.es/ecma262/#sec-dataview.prototype.getint8
 // 25.3.4.9 DataView.prototype.getInt8 ( byteOffset ), https://tc39.es/ecma262/#sec-dataview.prototype.getint8
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::get_int_8)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::get_int_8)
 {
 {
     return get_view_value<i8>(global_object, vm.argument(0), Value(true));
     return get_view_value<i8>(global_object, vm.argument(0), Value(true));
 }
 }
 
 
 // 25.3.4.10 DataView.prototype.getInt16 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getint16
 // 25.3.4.10 DataView.prototype.getInt16 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getint16
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::get_int_16)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::get_int_16)
 {
 {
     return get_view_value<i16>(global_object, vm.argument(0), vm.argument(1));
     return get_view_value<i16>(global_object, vm.argument(0), vm.argument(1));
 }
 }
 
 
 // 25.3.4.11 DataView.prototype.getInt32 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getint32
 // 25.3.4.11 DataView.prototype.getInt32 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getint32
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::get_int_32)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::get_int_32)
 {
 {
     return get_view_value<i32>(global_object, vm.argument(0), vm.argument(1));
     return get_view_value<i32>(global_object, vm.argument(0), vm.argument(1));
 }
 }
 
 
 // 25.3.4.12 DataView.prototype.getUint8 ( byteOffset ), https://tc39.es/ecma262/#sec-dataview.prototype.getuint8
 // 25.3.4.12 DataView.prototype.getUint8 ( byteOffset ), https://tc39.es/ecma262/#sec-dataview.prototype.getuint8
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::get_uint_8)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::get_uint_8)
 {
 {
     return get_view_value<u8>(global_object, vm.argument(0), Value(true));
     return get_view_value<u8>(global_object, vm.argument(0), Value(true));
 }
 }
 
 
 // 25.3.4.13 DataView.prototype.getUint16 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getuint16
 // 25.3.4.13 DataView.prototype.getUint16 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getuint16
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::get_uint_16)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::get_uint_16)
 {
 {
     return get_view_value<u16>(global_object, vm.argument(0), vm.argument(1));
     return get_view_value<u16>(global_object, vm.argument(0), vm.argument(1));
 }
 }
 
 
 // 25.3.4.14 DataView.prototype.getUint32 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getuint32
 // 25.3.4.14 DataView.prototype.getUint32 ( byteOffset [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.getuint32
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::get_uint_32)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::get_uint_32)
 {
 {
     return get_view_value<u32>(global_object, vm.argument(0), vm.argument(1));
     return get_view_value<u32>(global_object, vm.argument(0), vm.argument(1));
 }
 }
 
 
 // 25.3.4.15 DataView.prototype.setBigInt64 ( byteOffset, value [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.setbigint64
 // 25.3.4.15 DataView.prototype.setBigInt64 ( byteOffset, value [ , littleEndian ] ), https://tc39.es/ecma262/#sec-dataview.prototype.setbigint64
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::set_big_int_64)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::set_big_int_64)
 {
 {
     return set_view_value<i64>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
     return set_view_value<i64>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::set_big_uint_64)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::set_big_uint_64)
 {
 {
     return set_view_value<u64>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
     return set_view_value<u64>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::set_float_32)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::set_float_32)
 {
 {
     return set_view_value<float>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
     return set_view_value<float>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::set_float_64)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::set_float_64)
 {
 {
     return set_view_value<double>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
     return set_view_value<double>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::set_int_8)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::set_int_8)
 {
 {
     return set_view_value<i8>(global_object, vm.argument(0), Value(true), vm.argument(1));
     return set_view_value<i8>(global_object, vm.argument(0), Value(true), vm.argument(1));
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::set_int_16)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::set_int_16)
 {
 {
     return set_view_value<i16>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
     return set_view_value<i16>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::set_int_32)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::set_int_32)
 {
 {
     return set_view_value<i32>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
     return set_view_value<i32>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::set_uint_8)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::set_uint_8)
 {
 {
     return set_view_value<u8>(global_object, vm.argument(0), Value(true), vm.argument(1));
     return set_view_value<u8>(global_object, vm.argument(0), Value(true), vm.argument(1));
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::set_uint_16)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::set_uint_16)
 {
 {
     return set_view_value<u16>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
     return set_view_value<u16>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::set_uint_32)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::set_uint_32)
 {
 {
     return set_view_value<u32>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
     return set_view_value<u32>(global_object, vm.argument(0), vm.argument(2), vm.argument(1));
 }
 }
 
 
 // 25.3.4.1 get DataView.prototype.buffer, https://tc39.es/ecma262/#sec-get-dataview.prototype.buffer
 // 25.3.4.1 get DataView.prototype.buffer, https://tc39.es/ecma262/#sec-get-dataview.prototype.buffer
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::buffer_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::buffer_getter)
 {
 {
     auto* data_view = TRY_OR_DISCARD(typed_this_value(global_object));
     auto* data_view = TRY_OR_DISCARD(typed_this_value(global_object));
     return data_view->viewed_array_buffer();
     return data_view->viewed_array_buffer();
 }
 }
 
 
 // 25.3.4.2 get DataView.prototype.byteLength, https://tc39.es/ecma262/#sec-get-dataview.prototype.bytelength
 // 25.3.4.2 get DataView.prototype.byteLength, https://tc39.es/ecma262/#sec-get-dataview.prototype.bytelength
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::byte_length_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::byte_length_getter)
 {
 {
     auto* data_view = TRY_OR_DISCARD(typed_this_value(global_object));
     auto* data_view = TRY_OR_DISCARD(typed_this_value(global_object));
     if (data_view->viewed_array_buffer()->is_detached()) {
     if (data_view->viewed_array_buffer()->is_detached()) {
@@ -259,7 +259,7 @@ JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::byte_length_getter)
 }
 }
 
 
 // 25.3.4.3 get DataView.prototype.byteOffset, https://tc39.es/ecma262/#sec-get-dataview.prototype.byteoffset
 // 25.3.4.3 get DataView.prototype.byteOffset, https://tc39.es/ecma262/#sec-get-dataview.prototype.byteoffset
-JS_DEFINE_NATIVE_FUNCTION(DataViewPrototype::byte_offset_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DataViewPrototype::byte_offset_getter)
 {
 {
     auto* data_view = TRY_OR_DISCARD(typed_this_value(global_object));
     auto* data_view = TRY_OR_DISCARD(typed_this_value(global_object));
     if (data_view->viewed_array_buffer()->is_detached()) {
     if (data_view->viewed_array_buffer()->is_detached()) {

+ 24 - 24
Userland/Libraries/LibJS/Runtime/DataViewPrototype.h

@@ -20,30 +20,30 @@ public:
     virtual ~DataViewPrototype() override;
     virtual ~DataViewPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(get_big_int_64);
-    JS_DECLARE_NATIVE_FUNCTION(get_big_uint_64);
-    JS_DECLARE_NATIVE_FUNCTION(get_float_32);
-    JS_DECLARE_NATIVE_FUNCTION(get_float_64);
-    JS_DECLARE_NATIVE_FUNCTION(get_int_8);
-    JS_DECLARE_NATIVE_FUNCTION(get_int_16);
-    JS_DECLARE_NATIVE_FUNCTION(get_int_32);
-    JS_DECLARE_NATIVE_FUNCTION(get_uint_8);
-    JS_DECLARE_NATIVE_FUNCTION(get_uint_16);
-    JS_DECLARE_NATIVE_FUNCTION(get_uint_32);
-    JS_DECLARE_NATIVE_FUNCTION(set_big_int_64);
-    JS_DECLARE_NATIVE_FUNCTION(set_big_uint_64);
-    JS_DECLARE_NATIVE_FUNCTION(set_float_32);
-    JS_DECLARE_NATIVE_FUNCTION(set_float_64);
-    JS_DECLARE_NATIVE_FUNCTION(set_int_8);
-    JS_DECLARE_NATIVE_FUNCTION(set_int_16);
-    JS_DECLARE_NATIVE_FUNCTION(set_int_32);
-    JS_DECLARE_NATIVE_FUNCTION(set_uint_8);
-    JS_DECLARE_NATIVE_FUNCTION(set_uint_16);
-    JS_DECLARE_NATIVE_FUNCTION(set_uint_32);
-
-    JS_DECLARE_NATIVE_FUNCTION(buffer_getter);
-    JS_DECLARE_NATIVE_FUNCTION(byte_length_getter);
-    JS_DECLARE_NATIVE_FUNCTION(byte_offset_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_big_int_64);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_big_uint_64);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_float_32);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_float_64);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_int_8);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_int_16);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_int_32);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_uint_8);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_uint_16);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_uint_32);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_big_int_64);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_big_uint_64);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_float_32);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_float_64);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_int_8);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_int_16);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_int_32);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_uint_8);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_uint_16);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_uint_32);
+
+    JS_DECLARE_OLD_NATIVE_FUNCTION(buffer_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(byte_length_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(byte_offset_getter);
 };
 };
 
 
 }
 }

+ 3 - 3
Userland/Libraries/LibJS/Runtime/DateConstructor.cpp

@@ -289,7 +289,7 @@ Value DateConstructor::construct(FunctionObject& new_target)
 }
 }
 
 
 // 21.4.3.1 Date.now ( ), https://tc39.es/ecma262/#sec-date.now
 // 21.4.3.1 Date.now ( ), https://tc39.es/ecma262/#sec-date.now
-JS_DEFINE_NATIVE_FUNCTION(DateConstructor::now)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DateConstructor::now)
 {
 {
     struct timeval tv;
     struct timeval tv;
     gettimeofday(&tv, nullptr);
     gettimeofday(&tv, nullptr);
@@ -297,7 +297,7 @@ JS_DEFINE_NATIVE_FUNCTION(DateConstructor::now)
 }
 }
 
 
 // 21.4.3.2 Date.parse ( string ), https://tc39.es/ecma262/#sec-date.parse
 // 21.4.3.2 Date.parse ( string ), https://tc39.es/ecma262/#sec-date.parse
-JS_DEFINE_NATIVE_FUNCTION(DateConstructor::parse)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DateConstructor::parse)
 {
 {
     if (!vm.argument_count())
     if (!vm.argument_count())
         return js_nan();
         return js_nan();
@@ -308,7 +308,7 @@ JS_DEFINE_NATIVE_FUNCTION(DateConstructor::parse)
 }
 }
 
 
 // 21.4.3.4 Date.UTC ( year [ , month [ , date [ , hours [ , minutes [ , seconds [ , ms ] ] ] ] ] ] ), https://tc39.es/ecma262/#sec-date.utc
 // 21.4.3.4 Date.UTC ( year [ , month [ , date [ , hours [ , minutes [ , seconds [ , ms ] ] ] ] ] ] ), https://tc39.es/ecma262/#sec-date.utc
-JS_DEFINE_NATIVE_FUNCTION(DateConstructor::utc)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DateConstructor::utc)
 {
 {
     auto arg_or = [&vm, &global_object](size_t i, i32 fallback) -> ThrowCompletionOr<i32> {
     auto arg_or = [&vm, &global_object](size_t i, i32 fallback) -> ThrowCompletionOr<i32> {
         return vm.argument_count() > i ? vm.argument(i).to_i32(global_object) : fallback;
         return vm.argument_count() > i ? vm.argument(i).to_i32(global_object) : fallback;

+ 3 - 3
Userland/Libraries/LibJS/Runtime/DateConstructor.h

@@ -24,9 +24,9 @@ public:
 private:
 private:
     virtual bool has_constructor() const override { return true; }
     virtual bool has_constructor() const override { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(now);
-    JS_DECLARE_NATIVE_FUNCTION(parse);
-    JS_DECLARE_NATIVE_FUNCTION(utc);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(now);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(parse);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(utc);
 };
 };
 
 
 }
 }

+ 40 - 40
Userland/Libraries/LibJS/Runtime/DatePrototype.cpp

@@ -93,7 +93,7 @@ DatePrototype::~DatePrototype()
 }
 }
 
 
 // 21.4.4.2 Date.prototype.getDate ( ), https://tc39.es/ecma262/#sec-date.prototype.getdate
 // 21.4.4.2 Date.prototype.getDate ( ), https://tc39.es/ecma262/#sec-date.prototype.getdate
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_date)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_date)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -104,7 +104,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_date)
 }
 }
 
 
 // 21.4.4.20 Date.prototype.setDate ( date ), https://tc39.es/ecma262/#sec-date.prototype.setdate
 // 21.4.4.20 Date.prototype.setDate ( date ), https://tc39.es/ecma262/#sec-date.prototype.setdate
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_date)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::set_date)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -128,7 +128,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_date)
 }
 }
 
 
 // 21.4.4.3 Date.prototype.getDay ( ), https://tc39.es/ecma262/#sec-date.prototype.getday
 // 21.4.4.3 Date.prototype.getDay ( ), https://tc39.es/ecma262/#sec-date.prototype.getday
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_day)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_day)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -139,7 +139,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_day)
 }
 }
 
 
 // 21.4.4.4 Date.prototype.getFullYear ( ), https://tc39.es/ecma262/#sec-date.prototype.getfullyear
 // 21.4.4.4 Date.prototype.getFullYear ( ), https://tc39.es/ecma262/#sec-date.prototype.getfullyear
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_full_year)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_full_year)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -150,7 +150,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_full_year)
 }
 }
 
 
 // 21.4.4.21 Date.prototype.setFullYear ( year [ , month [ , date ] ] ), https://tc39.es/ecma262/#sec-date.prototype.setfullyear
 // 21.4.4.21 Date.prototype.setFullYear ( year [ , month [ , date ] ] ), https://tc39.es/ecma262/#sec-date.prototype.setfullyear
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_full_year)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::set_full_year)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -193,7 +193,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_full_year)
 }
 }
 
 
 // B.2.4.1 Date.prototype.getYear ( ), https://tc39.es/ecma262/#sec-date.prototype.getyear
 // B.2.4.1 Date.prototype.getYear ( ), https://tc39.es/ecma262/#sec-date.prototype.getyear
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_year)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_year)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -204,7 +204,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_year)
 }
 }
 
 
 // B.2.4.2 Date.prototype.setYear ( year ), https://tc39.es/ecma262/#sec-date.prototype.setyear
 // B.2.4.2 Date.prototype.setYear ( year ), https://tc39.es/ecma262/#sec-date.prototype.setyear
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_year)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::set_year)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -231,7 +231,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_year)
 }
 }
 
 
 // 21.4.4.5 Date.prototype.getHours ( ), https://tc39.es/ecma262/#sec-date.prototype.gethours
 // 21.4.4.5 Date.prototype.getHours ( ), https://tc39.es/ecma262/#sec-date.prototype.gethours
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_hours)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_hours)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -242,7 +242,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_hours)
 }
 }
 
 
 // 21.4.4.22 Date.prototype.setHours ( hour [ , min [ , sec [ , ms ] ] ] ), https://tc39.es/ecma262/#sec-date.prototype.sethours
 // 21.4.4.22 Date.prototype.setHours ( hour [ , min [ , sec [ , ms ] ] ] ), https://tc39.es/ecma262/#sec-date.prototype.sethours
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_hours)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::set_hours)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -294,7 +294,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_hours)
 }
 }
 
 
 // 21.4.4.23 Date.prototype.setMilliseconds ( ms ), https://tc39.es/ecma262/#sec-date.prototype.setmilliseconds
 // 21.4.4.23 Date.prototype.setMilliseconds ( ms ), https://tc39.es/ecma262/#sec-date.prototype.setmilliseconds
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_milliseconds)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_milliseconds)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -305,7 +305,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_milliseconds)
 }
 }
 
 
 // 21.4.4.23 Date.prototype.setMilliseconds ( ms ), https://tc39.es/ecma262/#sec-date.prototype.setmilliseconds
 // 21.4.4.23 Date.prototype.setMilliseconds ( ms ), https://tc39.es/ecma262/#sec-date.prototype.setmilliseconds
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_milliseconds)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::set_milliseconds)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -337,7 +337,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_milliseconds)
 }
 }
 
 
 // 21.4.4.7 Date.prototype.getMinutes ( ), https://tc39.es/ecma262/#sec-date.prototype.getminutes
 // 21.4.4.7 Date.prototype.getMinutes ( ), https://tc39.es/ecma262/#sec-date.prototype.getminutes
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_minutes)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_minutes)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -348,7 +348,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_minutes)
 }
 }
 
 
 // 21.4.4.24 Date.prototype.setMinutes ( min [ , sec [ , ms ] ] ), https://tc39.es/ecma262/#sec-date.prototype.setminutes
 // 21.4.4.24 Date.prototype.setMinutes ( min [ , sec [ , ms ] ] ), https://tc39.es/ecma262/#sec-date.prototype.setminutes
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_minutes)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::set_minutes)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -393,7 +393,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_minutes)
 }
 }
 
 
 // 21.4.4.8 Date.prototype.getMonth ( ), https://tc39.es/ecma262/#sec-date.prototype.getmonth
 // 21.4.4.8 Date.prototype.getMonth ( ), https://tc39.es/ecma262/#sec-date.prototype.getmonth
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_month)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_month)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -404,7 +404,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_month)
 }
 }
 
 
 // 21.4.4.25 Date.prototype.setMonth ( month [ , date ] ), https://tc39.es/ecma262/#sec-date.prototype.setmonth
 // 21.4.4.25 Date.prototype.setMonth ( month [ , date ] ), https://tc39.es/ecma262/#sec-date.prototype.setmonth
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_month)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::set_month)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -439,7 +439,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_month)
 }
 }
 
 
 // 21.4.4.9 Date.prototype.getSeconds ( ), https://tc39.es/ecma262/#sec-date.prototype.getseconds
 // 21.4.4.9 Date.prototype.getSeconds ( ), https://tc39.es/ecma262/#sec-date.prototype.getseconds
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_seconds)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_seconds)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -450,7 +450,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_seconds)
 }
 }
 
 
 // 21.4.4.26 Date.prototype.setSeconds ( sec [ , ms ] ), https://tc39.es/ecma262/#sec-date.prototype.setseconds
 // 21.4.4.26 Date.prototype.setSeconds ( sec [ , ms ] ), https://tc39.es/ecma262/#sec-date.prototype.setseconds
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_seconds)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::set_seconds)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -488,7 +488,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_seconds)
 }
 }
 
 
 // 21.4.4.10 Date.prototype.getTime ( ), https://tc39.es/ecma262/#sec-date.prototype.gettime
 // 21.4.4.10 Date.prototype.getTime ( ), https://tc39.es/ecma262/#sec-date.prototype.gettime
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_time)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_time)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -499,7 +499,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_time)
 }
 }
 
 
 // 21.4.4.27 Date.prototype.setTime ( time ), https://tc39.es/ecma262/#sec-date.prototype.settime
 // 21.4.4.27 Date.prototype.setTime ( time ), https://tc39.es/ecma262/#sec-date.prototype.settime
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_time)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::set_time)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -524,7 +524,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::set_time)
 }
 }
 
 
 // 21.4.4.11 Date.prototype.getTimezoneOffset ( ), https://tc39.es/ecma262/#sec-date.prototype.gettimezoneoffset
 // 21.4.4.11 Date.prototype.getTimezoneOffset ( ), https://tc39.es/ecma262/#sec-date.prototype.gettimezoneoffset
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_timezone_offset)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_timezone_offset)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -536,7 +536,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_timezone_offset)
 }
 }
 
 
 // 21.4.4.12 Date.prototype.getUTCDate ( ), https://tc39.es/ecma262/#sec-date.prototype.getutcdate
 // 21.4.4.12 Date.prototype.getUTCDate ( ), https://tc39.es/ecma262/#sec-date.prototype.getutcdate
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_date)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_utc_date)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -547,7 +547,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_date)
 }
 }
 
 
 // 21.4.4.13 Date.prototype.getUTCDay ( ), https://tc39.es/ecma262/#sec-date.prototype.getutcday
 // 21.4.4.13 Date.prototype.getUTCDay ( ), https://tc39.es/ecma262/#sec-date.prototype.getutcday
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_day)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_utc_day)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -558,7 +558,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_day)
 }
 }
 
 
 // 21.4.4.14 Date.prototype.getUTCFullYear ( ), https://tc39.es/ecma262/#sec-date.prototype.getutcfullyear
 // 21.4.4.14 Date.prototype.getUTCFullYear ( ), https://tc39.es/ecma262/#sec-date.prototype.getutcfullyear
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_full_year)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_utc_full_year)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -569,7 +569,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_full_year)
 }
 }
 
 
 // 21.4.4.15 Date.prototype.getUTCHours ( ), https://tc39.es/ecma262/#sec-date.prototype.getutchours
 // 21.4.4.15 Date.prototype.getUTCHours ( ), https://tc39.es/ecma262/#sec-date.prototype.getutchours
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_hours)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_utc_hours)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -580,7 +580,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_hours)
 }
 }
 
 
 // 21.4.4.16 Date.prototype.getUTCMilliseconds ( ), https://tc39.es/ecma262/#sec-date.prototype.getutcmilliseconds
 // 21.4.4.16 Date.prototype.getUTCMilliseconds ( ), https://tc39.es/ecma262/#sec-date.prototype.getutcmilliseconds
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_milliseconds)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_utc_milliseconds)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -591,7 +591,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_milliseconds)
 }
 }
 
 
 // 21.4.4.18 Date.prototype.getUTCMonth ( ), https://tc39.es/ecma262/#sec-date.prototype.getutcmonth
 // 21.4.4.18 Date.prototype.getUTCMonth ( ), https://tc39.es/ecma262/#sec-date.prototype.getutcmonth
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_month)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_utc_month)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -602,7 +602,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_month)
 }
 }
 
 
 // 21.4.4.17 Date.prototype.getUTCMinutes ( ), https://tc39.es/ecma262/#sec-date.prototype.getutcminutes
 // 21.4.4.17 Date.prototype.getUTCMinutes ( ), https://tc39.es/ecma262/#sec-date.prototype.getutcminutes
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_minutes)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_utc_minutes)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -613,7 +613,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_minutes)
 }
 }
 
 
 // 21.4.4.19 Date.prototype.getUTCSeconds ( ), https://tc39.es/ecma262/#sec-date.prototype.getutcseconds
 // 21.4.4.19 Date.prototype.getUTCSeconds ( ), https://tc39.es/ecma262/#sec-date.prototype.getutcseconds
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_seconds)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::get_utc_seconds)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -624,7 +624,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::get_utc_seconds)
 }
 }
 
 
 // 21.4.4.35 Date.prototype.toDateString ( ), https://tc39.es/ecma262/#sec-date.prototype.todatestring
 // 21.4.4.35 Date.prototype.toDateString ( ), https://tc39.es/ecma262/#sec-date.prototype.todatestring
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_date_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::to_date_string)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -636,14 +636,14 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_date_string)
 }
 }
 
 
 // B.2.4.3 Date.prototype.toGMTString ( ), https://tc39.es/ecma262/#sec-date.prototype.togmtstring
 // B.2.4.3 Date.prototype.toGMTString ( ), https://tc39.es/ecma262/#sec-date.prototype.togmtstring
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_gmt_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::to_gmt_string)
 {
 {
     // NOTE: The toUTCString method is preferred. The toGMTString method is provided principally for compatibility with old code.
     // NOTE: The toUTCString method is preferred. The toGMTString method is provided principally for compatibility with old code.
     return to_utc_string(vm, global_object);
     return to_utc_string(vm, global_object);
 }
 }
 
 
 // 21.4.4.43 Date.prototype.toUTCString ( ), https://tc39.es/ecma262/#sec-date.prototype.toutcstring
 // 21.4.4.43 Date.prototype.toUTCString ( ), https://tc39.es/ecma262/#sec-date.prototype.toutcstring
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_utc_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::to_utc_string)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -656,7 +656,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_utc_string)
 }
 }
 
 
 // 21.4.4.36 Date.prototype.toISOString ( ), https://tc39.es/ecma262/#sec-date.prototype.toisostring
 // 21.4.4.36 Date.prototype.toISOString ( ), https://tc39.es/ecma262/#sec-date.prototype.toisostring
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_iso_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::to_iso_string)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -670,7 +670,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_iso_string)
 }
 }
 
 
 // 21.4.4.38 Date.prototype.toLocaleDateString ( [ reserved1 [ , reserved2 ] ] ), https://tc39.es/ecma262/#sec-date.prototype.tolocaledatestring
 // 21.4.4.38 Date.prototype.toLocaleDateString ( [ reserved1 [ , reserved2 ] ] ), https://tc39.es/ecma262/#sec-date.prototype.tolocaledatestring
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_locale_date_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::to_locale_date_string)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -683,7 +683,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_locale_date_string)
 }
 }
 
 
 // 21.4.4.39 Date.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] ), https://tc39.es/ecma262/#sec-date.prototype.tolocalestring
 // 21.4.4.39 Date.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] ), https://tc39.es/ecma262/#sec-date.prototype.tolocalestring
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_locale_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::to_locale_string)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -696,7 +696,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_locale_string)
 }
 }
 
 
 // 21.4.4.40 Date.prototype.toLocaleTimeString ( [ reserved1 [ , reserved2 ] ] ), https://tc39.es/ecma262/#sec-date.prototype.tolocaletimestring
 // 21.4.4.40 Date.prototype.toLocaleTimeString ( [ reserved1 [ , reserved2 ] ] ), https://tc39.es/ecma262/#sec-date.prototype.tolocaletimestring
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_locale_time_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::to_locale_time_string)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -709,7 +709,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_locale_time_string)
 }
 }
 
 
 // 21.4.4.42 Date.prototype.toTimeString ( ), https://tc39.es/ecma262/#sec-date.prototype.totimestring
 // 21.4.4.42 Date.prototype.toTimeString ( ), https://tc39.es/ecma262/#sec-date.prototype.totimestring
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_time_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::to_time_string)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -721,7 +721,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_time_string)
 }
 }
 
 
 // 21.4.4.41 Date.prototype.toString ( ), https://tc39.es/ecma262/#sec-date.prototype.tostring
 // 21.4.4.41 Date.prototype.toString ( ), https://tc39.es/ecma262/#sec-date.prototype.tostring
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::to_string)
 {
 {
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -733,7 +733,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_string)
 }
 }
 
 
 // 21.4.4.37 Date.prototype.toJSON ( key ), https://tc39.es/ecma262/#sec-date.prototype.tojson
 // 21.4.4.37 Date.prototype.toJSON ( key ), https://tc39.es/ecma262/#sec-date.prototype.tojson
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_json)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::to_json)
 {
 {
     auto this_value = vm.this_value(global_object);
     auto this_value = vm.this_value(global_object);
 
 
@@ -746,7 +746,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_json)
 }
 }
 
 
 // 14.1.1 Date.prototype.toTemporalInstant ( ), https://tc39.es/proposal-temporal/#sec-date.prototype.totemporalinstant
 // 14.1.1 Date.prototype.toTemporalInstant ( ), https://tc39.es/proposal-temporal/#sec-date.prototype.totemporalinstant
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_temporal_instant)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::to_temporal_instant)
 {
 {
     // 1. Let t be ? thisTimeValue(this value).
     // 1. Let t be ? thisTimeValue(this value).
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* this_object = TRY_OR_DISCARD(typed_this_object(global_object));
@@ -763,7 +763,7 @@ JS_DEFINE_NATIVE_FUNCTION(DatePrototype::to_temporal_instant)
 }
 }
 
 
 // 21.4.4.45 Date.prototype [ @@toPrimitive ] ( hint ), https://tc39.es/ecma262/#sec-date.prototype-@@toprimitive
 // 21.4.4.45 Date.prototype [ @@toPrimitive ] ( hint ), https://tc39.es/ecma262/#sec-date.prototype-@@toprimitive
-JS_DEFINE_NATIVE_FUNCTION(DatePrototype::symbol_to_primitive)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DatePrototype::symbol_to_primitive)
 {
 {
     auto this_value = vm.this_value(global_object);
     auto this_value = vm.this_value(global_object);
     if (!this_value.is_object()) {
     if (!this_value.is_object()) {

+ 40 - 40
Userland/Libraries/LibJS/Runtime/DatePrototype.h

@@ -20,46 +20,46 @@ public:
     virtual ~DatePrototype() override;
     virtual ~DatePrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(get_date);
-    JS_DECLARE_NATIVE_FUNCTION(set_date);
-    JS_DECLARE_NATIVE_FUNCTION(get_day);
-    JS_DECLARE_NATIVE_FUNCTION(get_full_year);
-    JS_DECLARE_NATIVE_FUNCTION(set_full_year);
-    JS_DECLARE_NATIVE_FUNCTION(get_year);
-    JS_DECLARE_NATIVE_FUNCTION(set_year);
-    JS_DECLARE_NATIVE_FUNCTION(get_hours);
-    JS_DECLARE_NATIVE_FUNCTION(set_hours);
-    JS_DECLARE_NATIVE_FUNCTION(get_milliseconds);
-    JS_DECLARE_NATIVE_FUNCTION(set_milliseconds);
-    JS_DECLARE_NATIVE_FUNCTION(get_minutes);
-    JS_DECLARE_NATIVE_FUNCTION(set_minutes);
-    JS_DECLARE_NATIVE_FUNCTION(get_month);
-    JS_DECLARE_NATIVE_FUNCTION(set_month);
-    JS_DECLARE_NATIVE_FUNCTION(get_seconds);
-    JS_DECLARE_NATIVE_FUNCTION(set_seconds);
-    JS_DECLARE_NATIVE_FUNCTION(get_time);
-    JS_DECLARE_NATIVE_FUNCTION(set_time);
-    JS_DECLARE_NATIVE_FUNCTION(get_timezone_offset);
-    JS_DECLARE_NATIVE_FUNCTION(get_utc_date);
-    JS_DECLARE_NATIVE_FUNCTION(get_utc_day);
-    JS_DECLARE_NATIVE_FUNCTION(get_utc_full_year);
-    JS_DECLARE_NATIVE_FUNCTION(get_utc_hours);
-    JS_DECLARE_NATIVE_FUNCTION(get_utc_milliseconds);
-    JS_DECLARE_NATIVE_FUNCTION(get_utc_minutes);
-    JS_DECLARE_NATIVE_FUNCTION(get_utc_month);
-    JS_DECLARE_NATIVE_FUNCTION(get_utc_seconds);
-    JS_DECLARE_NATIVE_FUNCTION(to_date_string);
-    JS_DECLARE_NATIVE_FUNCTION(to_gmt_string);
-    JS_DECLARE_NATIVE_FUNCTION(to_utc_string);
-    JS_DECLARE_NATIVE_FUNCTION(to_iso_string);
-    JS_DECLARE_NATIVE_FUNCTION(to_locale_date_string);
-    JS_DECLARE_NATIVE_FUNCTION(to_locale_string);
-    JS_DECLARE_NATIVE_FUNCTION(to_locale_time_string);
-    JS_DECLARE_NATIVE_FUNCTION(to_time_string);
-    JS_DECLARE_NATIVE_FUNCTION(to_string);
-    JS_DECLARE_NATIVE_FUNCTION(to_json);
-    JS_DECLARE_NATIVE_FUNCTION(to_temporal_instant);
-    JS_DECLARE_NATIVE_FUNCTION(symbol_to_primitive);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_date);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_date);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_day);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_full_year);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_full_year);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_year);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_year);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_hours);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_hours);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_milliseconds);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_milliseconds);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_minutes);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_minutes);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_month);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_month);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_seconds);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_seconds);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_time);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_time);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_timezone_offset);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_utc_date);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_utc_day);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_utc_full_year);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_utc_hours);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_utc_milliseconds);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_utc_minutes);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_utc_month);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_utc_seconds);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_date_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_gmt_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_utc_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_iso_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_locale_date_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_locale_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_locale_time_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_time_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_json);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_temporal_instant);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(symbol_to_primitive);
 };
 };
 
 
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/ErrorPrototype.cpp

@@ -30,7 +30,7 @@ void ErrorPrototype::initialize(GlobalObject& global_object)
 }
 }
 
 
 // 20.5.3.4 Error.prototype.toString ( ), https://tc39.es/ecma262/#sec-error.prototype.tostring
 // 20.5.3.4 Error.prototype.toString ( ), https://tc39.es/ecma262/#sec-error.prototype.tostring
-JS_DEFINE_NATIVE_FUNCTION(ErrorPrototype::to_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ErrorPrototype::to_string)
 {
 {
     auto this_value = vm.this_value(global_object);
     auto this_value = vm.this_value(global_object);
     if (!this_value.is_object()) {
     if (!this_value.is_object()) {

+ 1 - 1
Userland/Libraries/LibJS/Runtime/ErrorPrototype.h

@@ -19,7 +19,7 @@ public:
     virtual ~ErrorPrototype() override = default;
     virtual ~ErrorPrototype() override = default;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(to_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_string);
 };
 };
 
 
 #define DECLARE_NATIVE_ERROR_PROTOTYPE(ClassName, snake_name, PrototypeName, ConstructorName) \
 #define DECLARE_NATIVE_ERROR_PROTOTYPE(ClassName, snake_name, PrototypeName, ConstructorName) \

+ 3 - 3
Userland/Libraries/LibJS/Runtime/FinalizationRegistryPrototype.cpp

@@ -33,7 +33,7 @@ FinalizationRegistryPrototype::~FinalizationRegistryPrototype()
 }
 }
 
 
 // @STAGE 2@ FinalizationRegistry.prototype.cleanupSome ( [ callback ] ), https://github.com/tc39/proposal-cleanup-some/blob/master/spec/finalization-registry.html
 // @STAGE 2@ FinalizationRegistry.prototype.cleanupSome ( [ callback ] ), https://github.com/tc39/proposal-cleanup-some/blob/master/spec/finalization-registry.html
-JS_DEFINE_NATIVE_FUNCTION(FinalizationRegistryPrototype::cleanup_some)
+JS_DEFINE_OLD_NATIVE_FUNCTION(FinalizationRegistryPrototype::cleanup_some)
 {
 {
     auto* finalization_registry = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* finalization_registry = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -49,7 +49,7 @@ JS_DEFINE_NATIVE_FUNCTION(FinalizationRegistryPrototype::cleanup_some)
 }
 }
 
 
 // 26.2.3.2 FinalizationRegistry.prototype.register ( target, heldValue [ , unregisterToken ] ), https://tc39.es/ecma262/#sec-finalization-registry.prototype.register
 // 26.2.3.2 FinalizationRegistry.prototype.register ( target, heldValue [ , unregisterToken ] ), https://tc39.es/ecma262/#sec-finalization-registry.prototype.register
-JS_DEFINE_NATIVE_FUNCTION(FinalizationRegistryPrototype::register_)
+JS_DEFINE_OLD_NATIVE_FUNCTION(FinalizationRegistryPrototype::register_)
 {
 {
     auto* finalization_registry = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* finalization_registry = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -77,7 +77,7 @@ JS_DEFINE_NATIVE_FUNCTION(FinalizationRegistryPrototype::register_)
 }
 }
 
 
 // 26.2.3.3 FinalizationRegistry.prototype.unregister ( unregisterToken ), https://tc39.es/ecma262/#sec-finalization-registry.prototype.unregister
 // 26.2.3.3 FinalizationRegistry.prototype.unregister ( unregisterToken ), https://tc39.es/ecma262/#sec-finalization-registry.prototype.unregister
-JS_DEFINE_NATIVE_FUNCTION(FinalizationRegistryPrototype::unregister)
+JS_DEFINE_OLD_NATIVE_FUNCTION(FinalizationRegistryPrototype::unregister)
 {
 {
     auto* finalization_registry = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* finalization_registry = TRY_OR_DISCARD(typed_this_object(global_object));
 
 

+ 3 - 3
Userland/Libraries/LibJS/Runtime/FinalizationRegistryPrototype.h

@@ -20,9 +20,9 @@ public:
     virtual ~FinalizationRegistryPrototype() override;
     virtual ~FinalizationRegistryPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(cleanup_some);
-    JS_DECLARE_NATIVE_FUNCTION(register_);
-    JS_DECLARE_NATIVE_FUNCTION(unregister);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(cleanup_some);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(register_);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(unregister);
 };
 };
 
 
 }
 }

+ 5 - 5
Userland/Libraries/LibJS/Runtime/FunctionPrototype.cpp

@@ -43,7 +43,7 @@ FunctionPrototype::~FunctionPrototype()
 }
 }
 
 
 // 20.2.3.1 Function.prototype.apply ( thisArg, argArray ), https://tc39.es/ecma262/#sec-function.prototype.apply
 // 20.2.3.1 Function.prototype.apply ( thisArg, argArray ), https://tc39.es/ecma262/#sec-function.prototype.apply
-JS_DEFINE_NATIVE_FUNCTION(FunctionPrototype::apply)
+JS_DEFINE_OLD_NATIVE_FUNCTION(FunctionPrototype::apply)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     if (!this_object->is_function()) {
     if (!this_object->is_function()) {
@@ -60,7 +60,7 @@ JS_DEFINE_NATIVE_FUNCTION(FunctionPrototype::apply)
 }
 }
 
 
 // 20.2.3.2 Function.prototype.bind ( thisArg, ...args ), https://tc39.es/ecma262/#sec-function.prototype.bind
 // 20.2.3.2 Function.prototype.bind ( thisArg, ...args ), https://tc39.es/ecma262/#sec-function.prototype.bind
-JS_DEFINE_NATIVE_FUNCTION(FunctionPrototype::bind)
+JS_DEFINE_OLD_NATIVE_FUNCTION(FunctionPrototype::bind)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     if (!this_object->is_function()) {
     if (!this_object->is_function()) {
@@ -80,7 +80,7 @@ JS_DEFINE_NATIVE_FUNCTION(FunctionPrototype::bind)
 }
 }
 
 
 // 20.2.3.3 Function.prototype.call ( thisArg, ...args ), https://tc39.es/ecma262/#sec-function.prototype.call
 // 20.2.3.3 Function.prototype.call ( thisArg, ...args ), https://tc39.es/ecma262/#sec-function.prototype.call
-JS_DEFINE_NATIVE_FUNCTION(FunctionPrototype::call)
+JS_DEFINE_OLD_NATIVE_FUNCTION(FunctionPrototype::call)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     if (!this_object->is_function()) {
     if (!this_object->is_function()) {
@@ -98,7 +98,7 @@ JS_DEFINE_NATIVE_FUNCTION(FunctionPrototype::call)
 }
 }
 
 
 // 20.2.3.5 Function.prototype.toString ( ), https://tc39.es/ecma262/#sec-function.prototype.tostring
 // 20.2.3.5 Function.prototype.toString ( ), https://tc39.es/ecma262/#sec-function.prototype.tostring
-JS_DEFINE_NATIVE_FUNCTION(FunctionPrototype::to_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(FunctionPrototype::to_string)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     if (!this_object->is_function()) {
     if (!this_object->is_function()) {
@@ -149,7 +149,7 @@ JS_DEFINE_NATIVE_FUNCTION(FunctionPrototype::to_string)
 }
 }
 
 
 // 20.2.3.6 Function.prototype [ @@hasInstance ] ( V ), https://tc39.es/ecma262/#sec-function.prototype-@@hasinstance
 // 20.2.3.6 Function.prototype [ @@hasInstance ] ( V ), https://tc39.es/ecma262/#sec-function.prototype-@@hasinstance
-JS_DEFINE_NATIVE_FUNCTION(FunctionPrototype::symbol_has_instance)
+JS_DEFINE_OLD_NATIVE_FUNCTION(FunctionPrototype::symbol_has_instance)
 {
 {
     return TRY_OR_DISCARD(ordinary_has_instance(global_object, vm.argument(0), vm.this_value(global_object)));
     return TRY_OR_DISCARD(ordinary_has_instance(global_object, vm.argument(0), vm.this_value(global_object)));
 }
 }

+ 5 - 5
Userland/Libraries/LibJS/Runtime/FunctionPrototype.h

@@ -19,11 +19,11 @@ public:
     virtual ~FunctionPrototype() override;
     virtual ~FunctionPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(apply);
-    JS_DECLARE_NATIVE_FUNCTION(bind);
-    JS_DECLARE_NATIVE_FUNCTION(call);
-    JS_DECLARE_NATIVE_FUNCTION(to_string);
-    JS_DECLARE_NATIVE_FUNCTION(symbol_has_instance);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(apply);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(bind);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(call);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(symbol_has_instance);
 };
 };
 
 
 }
 }

+ 3 - 3
Userland/Libraries/LibJS/Runtime/GeneratorObjectPrototype.cpp

@@ -33,14 +33,14 @@ GeneratorObjectPrototype::~GeneratorObjectPrototype()
 }
 }
 
 
 // 27.5.1.2 Generator.prototype.next ( value ), https://tc39.es/ecma262/#sec-generator.prototype.next
 // 27.5.1.2 Generator.prototype.next ( value ), https://tc39.es/ecma262/#sec-generator.prototype.next
-JS_DEFINE_NATIVE_FUNCTION(GeneratorObjectPrototype::next)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GeneratorObjectPrototype::next)
 {
 {
     auto* generator_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* generator_object = TRY_OR_DISCARD(typed_this_object(global_object));
     return generator_object->next_impl(vm, global_object, {});
     return generator_object->next_impl(vm, global_object, {});
 }
 }
 
 
 // 27.5.1.3 Generator.prototype.next ( value ), https://tc39.es/ecma262/#sec-generator.prototype.return
 // 27.5.1.3 Generator.prototype.next ( value ), https://tc39.es/ecma262/#sec-generator.prototype.return
-JS_DEFINE_NATIVE_FUNCTION(GeneratorObjectPrototype::return_)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GeneratorObjectPrototype::return_)
 {
 {
     auto* generator_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* generator_object = TRY_OR_DISCARD(typed_this_object(global_object));
     generator_object->set_done();
     generator_object->set_done();
@@ -48,7 +48,7 @@ JS_DEFINE_NATIVE_FUNCTION(GeneratorObjectPrototype::return_)
 }
 }
 
 
 // 27.5.1.4 Generator.prototype.next ( value ), https://tc39.es/ecma262/#sec-generator.prototype.throw
 // 27.5.1.4 Generator.prototype.next ( value ), https://tc39.es/ecma262/#sec-generator.prototype.throw
-JS_DEFINE_NATIVE_FUNCTION(GeneratorObjectPrototype::throw_)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GeneratorObjectPrototype::throw_)
 {
 {
     auto* generator_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* generator_object = TRY_OR_DISCARD(typed_this_object(global_object));
     return generator_object->next_impl(vm, global_object, vm.argument(0));
     return generator_object->next_impl(vm, global_object, vm.argument(0));

+ 3 - 3
Userland/Libraries/LibJS/Runtime/GeneratorObjectPrototype.h

@@ -21,9 +21,9 @@ public:
     virtual ~GeneratorObjectPrototype() override;
     virtual ~GeneratorObjectPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(next);
-    JS_DECLARE_NATIVE_FUNCTION(return_);
-    JS_DECLARE_NATIVE_FUNCTION(throw_);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(next);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(return_);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(throw_);
 };
 };
 
 
 }
 }

+ 12 - 12
Userland/Libraries/LibJS/Runtime/GlobalObject.cpp

@@ -329,7 +329,7 @@ void GlobalObject::set_associated_realm(Badge<Realm>, Realm& realm)
     m_associated_realm = &realm;
     m_associated_realm = &realm;
 }
 }
 
 
-JS_DEFINE_NATIVE_FUNCTION(GlobalObject::gc)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GlobalObject::gc)
 {
 {
 #ifdef __serenity__
 #ifdef __serenity__
     dbgln("Forced garbage collection requested!");
     dbgln("Forced garbage collection requested!");
@@ -339,19 +339,19 @@ JS_DEFINE_NATIVE_FUNCTION(GlobalObject::gc)
 }
 }
 
 
 // 19.2.3 isNaN ( number ), https://tc39.es/ecma262/#sec-isnan-number
 // 19.2.3 isNaN ( number ), https://tc39.es/ecma262/#sec-isnan-number
-JS_DEFINE_NATIVE_FUNCTION(GlobalObject::is_nan)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GlobalObject::is_nan)
 {
 {
     return Value(TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).is_nan());
     return Value(TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).is_nan());
 }
 }
 
 
 // 19.2.2 isFinite ( number ), https://tc39.es/ecma262/#sec-isfinite-number
 // 19.2.2 isFinite ( number ), https://tc39.es/ecma262/#sec-isfinite-number
-JS_DEFINE_NATIVE_FUNCTION(GlobalObject::is_finite)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GlobalObject::is_finite)
 {
 {
     return Value(TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).is_finite_number());
     return Value(TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).is_finite_number());
 }
 }
 
 
 // 19.2.4 parseFloat ( string ), https://tc39.es/ecma262/#sec-parsefloat-string
 // 19.2.4 parseFloat ( string ), https://tc39.es/ecma262/#sec-parsefloat-string
-JS_DEFINE_NATIVE_FUNCTION(GlobalObject::parse_float)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GlobalObject::parse_float)
 {
 {
     if (vm.argument(0).is_number())
     if (vm.argument(0).is_number())
         return vm.argument(0);
         return vm.argument(0);
@@ -366,7 +366,7 @@ JS_DEFINE_NATIVE_FUNCTION(GlobalObject::parse_float)
 }
 }
 
 
 // 19.2.5 parseInt ( string, radix ), https://tc39.es/ecma262/#sec-parseint-string-radix
 // 19.2.5 parseInt ( string, radix ), https://tc39.es/ecma262/#sec-parseint-string-radix
-JS_DEFINE_NATIVE_FUNCTION(GlobalObject::parse_int)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GlobalObject::parse_int)
 {
 {
     auto input_string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto input_string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
 
 
@@ -424,7 +424,7 @@ JS_DEFINE_NATIVE_FUNCTION(GlobalObject::parse_int)
 }
 }
 
 
 // 19.2.1 eval ( x ), https://tc39.es/ecma262/#sec-eval-x
 // 19.2.1 eval ( x ), https://tc39.es/ecma262/#sec-eval-x
-JS_DEFINE_NATIVE_FUNCTION(GlobalObject::eval)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GlobalObject::eval)
 {
 {
     return TRY_OR_DISCARD(perform_eval(vm.argument(0), global_object, CallerMode::NonStrict, EvalMode::Indirect));
     return TRY_OR_DISCARD(perform_eval(vm.argument(0), global_object, CallerMode::NonStrict, EvalMode::Indirect));
 }
 }
@@ -499,7 +499,7 @@ static String decode(JS::GlobalObject& global_object, const String& string, Stri
 }
 }
 
 
 // 19.2.6.4 encodeURI ( uri ), https://tc39.es/ecma262/#sec-encodeuri-uri
 // 19.2.6.4 encodeURI ( uri ), https://tc39.es/ecma262/#sec-encodeuri-uri
-JS_DEFINE_NATIVE_FUNCTION(GlobalObject::encode_uri)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GlobalObject::encode_uri)
 {
 {
     auto uri_string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto uri_string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto encoded = encode(global_object, uri_string, ";/?:@&=+$,abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.!~*'()#"sv);
     auto encoded = encode(global_object, uri_string, ";/?:@&=+$,abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.!~*'()#"sv);
@@ -509,7 +509,7 @@ JS_DEFINE_NATIVE_FUNCTION(GlobalObject::encode_uri)
 }
 }
 
 
 // 19.2.6.2 decodeURI ( encodedURI ), https://tc39.es/ecma262/#sec-decodeuri-encodeduri
 // 19.2.6.2 decodeURI ( encodedURI ), https://tc39.es/ecma262/#sec-decodeuri-encodeduri
-JS_DEFINE_NATIVE_FUNCTION(GlobalObject::decode_uri)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GlobalObject::decode_uri)
 {
 {
     auto uri_string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto uri_string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto decoded = decode(global_object, uri_string, ";/?:@&=+$,#"sv);
     auto decoded = decode(global_object, uri_string, ";/?:@&=+$,#"sv);
@@ -519,7 +519,7 @@ JS_DEFINE_NATIVE_FUNCTION(GlobalObject::decode_uri)
 }
 }
 
 
 // 19.2.6.5 encodeURIComponent ( uriComponent ), https://tc39.es/ecma262/#sec-encodeuricomponent-uricomponent
 // 19.2.6.5 encodeURIComponent ( uriComponent ), https://tc39.es/ecma262/#sec-encodeuricomponent-uricomponent
-JS_DEFINE_NATIVE_FUNCTION(GlobalObject::encode_uri_component)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GlobalObject::encode_uri_component)
 {
 {
     auto uri_string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto uri_string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto encoded = encode(global_object, uri_string, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.!~*'()"sv);
     auto encoded = encode(global_object, uri_string, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.!~*'()"sv);
@@ -529,7 +529,7 @@ JS_DEFINE_NATIVE_FUNCTION(GlobalObject::encode_uri_component)
 }
 }
 
 
 // 19.2.6.3 decodeURIComponent ( encodedURIComponent ), https://tc39.es/ecma262/#sec-decodeuricomponent-encodeduricomponent
 // 19.2.6.3 decodeURIComponent ( encodedURIComponent ), https://tc39.es/ecma262/#sec-decodeuricomponent-encodeduricomponent
-JS_DEFINE_NATIVE_FUNCTION(GlobalObject::decode_uri_component)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GlobalObject::decode_uri_component)
 {
 {
     auto uri_string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto uri_string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto decoded = decode(global_object, uri_string, ""sv);
     auto decoded = decode(global_object, uri_string, ""sv);
@@ -539,7 +539,7 @@ JS_DEFINE_NATIVE_FUNCTION(GlobalObject::decode_uri_component)
 }
 }
 
 
 // B.2.1.1 escape ( string ), https://tc39.es/ecma262/#sec-escape-string
 // B.2.1.1 escape ( string ), https://tc39.es/ecma262/#sec-escape-string
-JS_DEFINE_NATIVE_FUNCTION(GlobalObject::escape)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GlobalObject::escape)
 {
 {
     auto string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     StringBuilder escaped;
     StringBuilder escaped;
@@ -557,7 +557,7 @@ JS_DEFINE_NATIVE_FUNCTION(GlobalObject::escape)
 }
 }
 
 
 // B.2.1.2 unescape ( string ), https://tc39.es/ecma262/#sec-unescape-string
 // B.2.1.2 unescape ( string ), https://tc39.es/ecma262/#sec-unescape-string
-JS_DEFINE_NATIVE_FUNCTION(GlobalObject::unescape)
+JS_DEFINE_OLD_NATIVE_FUNCTION(GlobalObject::unescape)
 {
 {
     auto string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     ssize_t length = string.length();
     ssize_t length = string.length();

+ 12 - 12
Userland/Libraries/LibJS/Runtime/GlobalObject.h

@@ -76,18 +76,18 @@ protected:
 private:
 private:
     virtual bool is_global_object() const final { return true; }
     virtual bool is_global_object() const final { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(gc);
-    JS_DECLARE_NATIVE_FUNCTION(is_nan);
-    JS_DECLARE_NATIVE_FUNCTION(is_finite);
-    JS_DECLARE_NATIVE_FUNCTION(parse_float);
-    JS_DECLARE_NATIVE_FUNCTION(parse_int);
-    JS_DECLARE_NATIVE_FUNCTION(eval);
-    JS_DECLARE_NATIVE_FUNCTION(encode_uri);
-    JS_DECLARE_NATIVE_FUNCTION(decode_uri);
-    JS_DECLARE_NATIVE_FUNCTION(encode_uri_component);
-    JS_DECLARE_NATIVE_FUNCTION(decode_uri_component);
-    JS_DECLARE_NATIVE_FUNCTION(escape);
-    JS_DECLARE_NATIVE_FUNCTION(unescape);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(gc);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is_nan);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is_finite);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(parse_float);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(parse_int);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(eval);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(encode_uri);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(decode_uri);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(encode_uri_component);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(decode_uri_component);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(escape);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(unescape);
 
 
     NonnullOwnPtr<Console> m_console;
     NonnullOwnPtr<Console> m_console;
 
 

+ 1 - 1
Userland/Libraries/LibJS/Runtime/Intl/DisplayNamesConstructor.cpp

@@ -117,7 +117,7 @@ Value DisplayNamesConstructor::construct(FunctionObject& new_target)
 }
 }
 
 
 // 12.3.2 Intl.DisplayNames.supportedLocalesOf ( locales [ , options ] ), https://tc39.es/ecma402/#sec-Intl.DisplayNames.supportedLocalesOf
 // 12.3.2 Intl.DisplayNames.supportedLocalesOf ( locales [ , options ] ), https://tc39.es/ecma402/#sec-Intl.DisplayNames.supportedLocalesOf
-JS_DEFINE_NATIVE_FUNCTION(DisplayNamesConstructor::supported_locales_of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DisplayNamesConstructor::supported_locales_of)
 {
 {
     auto locales = vm.argument(0);
     auto locales = vm.argument(0);
     auto options = vm.argument(1);
     auto options = vm.argument(1);

+ 1 - 1
Userland/Libraries/LibJS/Runtime/Intl/DisplayNamesConstructor.h

@@ -24,7 +24,7 @@ public:
 private:
 private:
     virtual bool has_constructor() const override { return true; }
     virtual bool has_constructor() const override { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(supported_locales_of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(supported_locales_of);
 };
 };
 
 
 }
 }

+ 2 - 2
Userland/Libraries/LibJS/Runtime/Intl/DisplayNamesPrototype.cpp

@@ -33,7 +33,7 @@ void DisplayNamesPrototype::initialize(GlobalObject& global_object)
 }
 }
 
 
 // 12.4.3 Intl.DisplayNames.prototype.of ( code ), https://tc39.es/ecma402/#sec-Intl.DisplayNames.prototype.of
 // 12.4.3 Intl.DisplayNames.prototype.of ( code ), https://tc39.es/ecma402/#sec-Intl.DisplayNames.prototype.of
-JS_DEFINE_NATIVE_FUNCTION(DisplayNamesPrototype::of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DisplayNamesPrototype::of)
 {
 {
     auto code = vm.argument(0);
     auto code = vm.argument(0);
 
 
@@ -81,7 +81,7 @@ JS_DEFINE_NATIVE_FUNCTION(DisplayNamesPrototype::of)
 }
 }
 
 
 // 12.4.4 Intl.DisplayNames.prototype.resolvedOptions ( ), https://tc39.es/ecma402/#sec-Intl.DisplayNames.prototype.resolvedOptions
 // 12.4.4 Intl.DisplayNames.prototype.resolvedOptions ( ), https://tc39.es/ecma402/#sec-Intl.DisplayNames.prototype.resolvedOptions
-JS_DEFINE_NATIVE_FUNCTION(DisplayNamesPrototype::resolved_options)
+JS_DEFINE_OLD_NATIVE_FUNCTION(DisplayNamesPrototype::resolved_options)
 {
 {
     // 1. Let displayNames be this value.
     // 1. Let displayNames be this value.
     // 2. Perform ? RequireInternalSlot(displayNames, [[InitializedDisplayNames]]).
     // 2. Perform ? RequireInternalSlot(displayNames, [[InitializedDisplayNames]]).

+ 2 - 2
Userland/Libraries/LibJS/Runtime/Intl/DisplayNamesPrototype.h

@@ -20,8 +20,8 @@ public:
     virtual ~DisplayNamesPrototype() override = default;
     virtual ~DisplayNamesPrototype() override = default;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(of);
-    JS_DECLARE_NATIVE_FUNCTION(resolved_options);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(resolved_options);
 };
 };
 
 
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/Intl/Intl.cpp

@@ -40,7 +40,7 @@ void Intl::initialize(GlobalObject& global_object)
 }
 }
 
 
 // 8.3.1 Intl.getCanonicalLocales ( locales ), https://tc39.es/ecma402/#sec-intl.getcanonicallocales
 // 8.3.1 Intl.getCanonicalLocales ( locales ), https://tc39.es/ecma402/#sec-intl.getcanonicallocales
-JS_DEFINE_NATIVE_FUNCTION(Intl::get_canonical_locales)
+JS_DEFINE_OLD_NATIVE_FUNCTION(Intl::get_canonical_locales)
 {
 {
     auto locales = vm.argument(0);
     auto locales = vm.argument(0);
 
 

+ 1 - 1
Userland/Libraries/LibJS/Runtime/Intl/Intl.h

@@ -19,7 +19,7 @@ public:
     virtual ~Intl() override = default;
     virtual ~Intl() override = default;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(get_canonical_locales);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_canonical_locales);
 };
 };
 
 
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/Intl/ListFormatConstructor.cpp

@@ -97,7 +97,7 @@ Value ListFormatConstructor::construct(FunctionObject& new_target)
 }
 }
 
 
 // 13.3.2 Intl.ListFormat.supportedLocalesOf ( locales [ , options ] ), https://tc39.es/ecma402/#sec-Intl.ListFormat.supportedLocalesOf
 // 13.3.2 Intl.ListFormat.supportedLocalesOf ( locales [ , options ] ), https://tc39.es/ecma402/#sec-Intl.ListFormat.supportedLocalesOf
-JS_DEFINE_NATIVE_FUNCTION(ListFormatConstructor::supported_locales_of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ListFormatConstructor::supported_locales_of)
 {
 {
     auto locales = vm.argument(0);
     auto locales = vm.argument(0);
     auto options = vm.argument(1);
     auto options = vm.argument(1);

+ 1 - 1
Userland/Libraries/LibJS/Runtime/Intl/ListFormatConstructor.h

@@ -24,7 +24,7 @@ public:
 private:
 private:
     virtual bool has_constructor() const override { return true; }
     virtual bool has_constructor() const override { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(supported_locales_of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(supported_locales_of);
 };
 };
 
 
 }
 }

+ 3 - 3
Userland/Libraries/LibJS/Runtime/Intl/ListFormatPrototype.cpp

@@ -34,7 +34,7 @@ void ListFormatPrototype::initialize(GlobalObject& global_object)
 }
 }
 
 
 // 13.4.3 Intl.ListFormat.prototype.format ( list ), https://tc39.es/ecma402/#sec-Intl.ListFormat.prototype.format
 // 13.4.3 Intl.ListFormat.prototype.format ( list ), https://tc39.es/ecma402/#sec-Intl.ListFormat.prototype.format
-JS_DEFINE_NATIVE_FUNCTION(ListFormatPrototype::format)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ListFormatPrototype::format)
 {
 {
     auto list = vm.argument(0);
     auto list = vm.argument(0);
 
 
@@ -51,7 +51,7 @@ JS_DEFINE_NATIVE_FUNCTION(ListFormatPrototype::format)
 }
 }
 
 
 // 13.4.4 Intl.ListFormat.prototype.formatToParts ( list ), https://tc39.es/ecma402/#sec-Intl.ListFormat.prototype.formatToParts
 // 13.4.4 Intl.ListFormat.prototype.formatToParts ( list ), https://tc39.es/ecma402/#sec-Intl.ListFormat.prototype.formatToParts
-JS_DEFINE_NATIVE_FUNCTION(ListFormatPrototype::format_to_parts)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ListFormatPrototype::format_to_parts)
 {
 {
     auto list = vm.argument(0);
     auto list = vm.argument(0);
 
 
@@ -67,7 +67,7 @@ JS_DEFINE_NATIVE_FUNCTION(ListFormatPrototype::format_to_parts)
 }
 }
 
 
 // 13.4.5 Intl.ListFormat.prototype.resolvedOptions ( ), https://tc39.es/ecma402/#sec-Intl.ListFormat.prototype.resolvedoptions
 // 13.4.5 Intl.ListFormat.prototype.resolvedOptions ( ), https://tc39.es/ecma402/#sec-Intl.ListFormat.prototype.resolvedoptions
-JS_DEFINE_NATIVE_FUNCTION(ListFormatPrototype::resolved_options)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ListFormatPrototype::resolved_options)
 {
 {
     // 1. Let lf be the this value.
     // 1. Let lf be the this value.
     // 2. Perform ? RequireInternalSlot(lf, [[InitializedListFormat]]).
     // 2. Perform ? RequireInternalSlot(lf, [[InitializedListFormat]]).

+ 3 - 3
Userland/Libraries/LibJS/Runtime/Intl/ListFormatPrototype.h

@@ -20,9 +20,9 @@ public:
     virtual ~ListFormatPrototype() override = default;
     virtual ~ListFormatPrototype() override = default;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(format);
-    JS_DECLARE_NATIVE_FUNCTION(format_to_parts);
-    JS_DECLARE_NATIVE_FUNCTION(resolved_options);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(format);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(format_to_parts);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(resolved_options);
 };
 };
 
 
 }
 }

+ 9 - 9
Userland/Libraries/LibJS/Runtime/Intl/LocalePrototype.cpp

@@ -45,7 +45,7 @@ void LocalePrototype::initialize(GlobalObject& global_object)
 }
 }
 
 
 // 14.3.3 Intl.Locale.prototype.maximize ( ), https://tc39.es/ecma402/#sec-Intl.Locale.prototype.maximize
 // 14.3.3 Intl.Locale.prototype.maximize ( ), https://tc39.es/ecma402/#sec-Intl.Locale.prototype.maximize
-JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::maximize)
+JS_DEFINE_OLD_NATIVE_FUNCTION(LocalePrototype::maximize)
 {
 {
     // 1. Let loc be the this value.
     // 1. Let loc be the this value.
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
@@ -63,7 +63,7 @@ JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::maximize)
 }
 }
 
 
 // 14.3.4 Intl.Locale.prototype.minimize ( ), https://tc39.es/ecma402/#sec-Intl.Locale.prototype.minimize
 // 14.3.4 Intl.Locale.prototype.minimize ( ), https://tc39.es/ecma402/#sec-Intl.Locale.prototype.minimize
-JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::minimize)
+JS_DEFINE_OLD_NATIVE_FUNCTION(LocalePrototype::minimize)
 {
 {
     // 1. Let loc be the this value.
     // 1. Let loc be the this value.
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
@@ -81,7 +81,7 @@ JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::minimize)
 }
 }
 
 
 // 14.3.5 Intl.Locale.prototype.toString ( ), https://tc39.es/ecma402/#sec-Intl.Locale.prototype.toString
 // 14.3.5 Intl.Locale.prototype.toString ( ), https://tc39.es/ecma402/#sec-Intl.Locale.prototype.toString
-JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::to_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(LocalePrototype::to_string)
 {
 {
     // 1. Let loc be the this value.
     // 1. Let loc be the this value.
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
@@ -92,7 +92,7 @@ JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::to_string)
 }
 }
 
 
 // 14.3.6 get Intl.Locale.prototype.baseName, https://tc39.es/ecma402/#sec-Intl.Locale.prototype.baseName
 // 14.3.6 get Intl.Locale.prototype.baseName, https://tc39.es/ecma402/#sec-Intl.Locale.prototype.baseName
-JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::base_name)
+JS_DEFINE_OLD_NATIVE_FUNCTION(LocalePrototype::base_name)
 {
 {
     // 1. Let loc be the this value.
     // 1. Let loc be the this value.
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
@@ -119,7 +119,7 @@ JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::base_name)
 // 14.3.10 get Intl.Locale.prototype.hourCycle, https://tc39.es/ecma402/#sec-Intl.Locale.prototype.hourCycle
 // 14.3.10 get Intl.Locale.prototype.hourCycle, https://tc39.es/ecma402/#sec-Intl.Locale.prototype.hourCycle
 // 14.3.12 get Intl.Locale.prototype.numberingSystem, https://tc39.es/ecma402/#sec-Intl.Locale.prototype.numberingSystem
 // 14.3.12 get Intl.Locale.prototype.numberingSystem, https://tc39.es/ecma402/#sec-Intl.Locale.prototype.numberingSystem
 #define __JS_ENUMERATE(keyword)                                                 \
 #define __JS_ENUMERATE(keyword)                                                 \
-    JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::keyword)                         \
+    JS_DEFINE_OLD_NATIVE_FUNCTION(LocalePrototype::keyword)                     \
     {                                                                           \
     {                                                                           \
         auto* locale_object = TRY_OR_DISCARD(typed_this_object(global_object)); \
         auto* locale_object = TRY_OR_DISCARD(typed_this_object(global_object)); \
         if (!locale_object->has_##keyword())                                    \
         if (!locale_object->has_##keyword())                                    \
@@ -130,7 +130,7 @@ JS_ENUMERATE_LOCALE_KEYWORD_PROPERTIES
 #undef __JS_ENUMERATE
 #undef __JS_ENUMERATE
 
 
 // 14.3.11 get Intl.Locale.prototype.numeric, https://tc39.es/ecma402/#sec-Intl.Locale.prototype.numeric
 // 14.3.11 get Intl.Locale.prototype.numeric, https://tc39.es/ecma402/#sec-Intl.Locale.prototype.numeric
-JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::numeric)
+JS_DEFINE_OLD_NATIVE_FUNCTION(LocalePrototype::numeric)
 {
 {
     // 1. Let loc be the this value.
     // 1. Let loc be the this value.
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
@@ -141,7 +141,7 @@ JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::numeric)
 }
 }
 
 
 // 14.3.13 get Intl.Locale.prototype.language, https://tc39.es/ecma402/#sec-Intl.Locale.prototype.language
 // 14.3.13 get Intl.Locale.prototype.language, https://tc39.es/ecma402/#sec-Intl.Locale.prototype.language
-JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::language)
+JS_DEFINE_OLD_NATIVE_FUNCTION(LocalePrototype::language)
 {
 {
     // 1. Let loc be the this value.
     // 1. Let loc be the this value.
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
@@ -158,7 +158,7 @@ JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::language)
 }
 }
 
 
 // 14.3.14 get Intl.Locale.prototype.script, https://tc39.es/ecma402/#sec-Intl.Locale.prototype.script
 // 14.3.14 get Intl.Locale.prototype.script, https://tc39.es/ecma402/#sec-Intl.Locale.prototype.script
-JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::script)
+JS_DEFINE_OLD_NATIVE_FUNCTION(LocalePrototype::script)
 {
 {
     // 1. Let loc be the this value.
     // 1. Let loc be the this value.
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
@@ -179,7 +179,7 @@ JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::script)
 }
 }
 
 
 // 14.3.15 get Intl.Locale.prototype.region, https://tc39.es/ecma402/#sec-Intl.Locale.prototype.region
 // 14.3.15 get Intl.Locale.prototype.region, https://tc39.es/ecma402/#sec-Intl.Locale.prototype.region
-JS_DEFINE_NATIVE_FUNCTION(LocalePrototype::region)
+JS_DEFINE_OLD_NATIVE_FUNCTION(LocalePrototype::region)
 {
 {
     // 1. Let loc be the this value.
     // 1. Let loc be the this value.
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).
     // 2. Perform ? RequireInternalSlot(loc, [[InitializedLocale]]).

+ 14 - 14
Userland/Libraries/LibJS/Runtime/Intl/LocalePrototype.h

@@ -20,20 +20,20 @@ public:
     virtual ~LocalePrototype() override = default;
     virtual ~LocalePrototype() override = default;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(maximize);
-    JS_DECLARE_NATIVE_FUNCTION(minimize);
-    JS_DECLARE_NATIVE_FUNCTION(to_string);
-
-    JS_DECLARE_NATIVE_FUNCTION(base_name);
-    JS_DECLARE_NATIVE_FUNCTION(calendar);
-    JS_DECLARE_NATIVE_FUNCTION(case_first);
-    JS_DECLARE_NATIVE_FUNCTION(collation);
-    JS_DECLARE_NATIVE_FUNCTION(hour_cycle);
-    JS_DECLARE_NATIVE_FUNCTION(numbering_system);
-    JS_DECLARE_NATIVE_FUNCTION(numeric);
-    JS_DECLARE_NATIVE_FUNCTION(language);
-    JS_DECLARE_NATIVE_FUNCTION(script);
-    JS_DECLARE_NATIVE_FUNCTION(region);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(maximize);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(minimize);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_string);
+
+    JS_DECLARE_OLD_NATIVE_FUNCTION(base_name);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(calendar);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(case_first);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(collation);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(hour_cycle);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(numbering_system);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(numeric);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(language);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(script);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(region);
 };
 };
 
 
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/Intl/NumberFormatConstructor.cpp

@@ -65,7 +65,7 @@ Value NumberFormatConstructor::construct(FunctionObject& new_target)
 }
 }
 
 
 // 15.3.2 Intl.NumberFormat.supportedLocalesOf ( locales [ , options ] ), https://tc39.es/ecma402/#sec-intl.numberformat.supportedlocalesof
 // 15.3.2 Intl.NumberFormat.supportedLocalesOf ( locales [ , options ] ), https://tc39.es/ecma402/#sec-intl.numberformat.supportedlocalesof
-JS_DEFINE_NATIVE_FUNCTION(NumberFormatConstructor::supported_locales_of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(NumberFormatConstructor::supported_locales_of)
 {
 {
     auto locales = vm.argument(0);
     auto locales = vm.argument(0);
     auto options = vm.argument(1);
     auto options = vm.argument(1);

+ 1 - 1
Userland/Libraries/LibJS/Runtime/Intl/NumberFormatConstructor.h

@@ -24,7 +24,7 @@ public:
 private:
 private:
     virtual bool has_constructor() const override { return true; }
     virtual bool has_constructor() const override { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(supported_locales_of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(supported_locales_of);
 };
 };
 
 
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/Intl/NumberFormatPrototype.cpp

@@ -31,7 +31,7 @@ void NumberFormatPrototype::initialize(GlobalObject& global_object)
 }
 }
 
 
 // 15.4.5 Intl.NumberFormat.prototype.resolvedOptions ( ), https://tc39.es/ecma402/#sec-intl.numberformat.prototype.resolvedoptions
 // 15.4.5 Intl.NumberFormat.prototype.resolvedOptions ( ), https://tc39.es/ecma402/#sec-intl.numberformat.prototype.resolvedoptions
-JS_DEFINE_NATIVE_FUNCTION(NumberFormatPrototype::resolved_options)
+JS_DEFINE_OLD_NATIVE_FUNCTION(NumberFormatPrototype::resolved_options)
 {
 {
     // 1. Let nf be the this value.
     // 1. Let nf be the this value.
     // 2. If the implementation supports the normative optional constructor mode of 4.3 Note 1, then
     // 2. If the implementation supports the normative optional constructor mode of 4.3 Note 1, then

+ 1 - 1
Userland/Libraries/LibJS/Runtime/Intl/NumberFormatPrototype.h

@@ -20,7 +20,7 @@ public:
     virtual ~NumberFormatPrototype() override = default;
     virtual ~NumberFormatPrototype() override = default;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(resolved_options);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(resolved_options);
 };
 };
 
 
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/IteratorPrototype.cpp

@@ -28,7 +28,7 @@ IteratorPrototype::~IteratorPrototype()
 }
 }
 
 
 // 27.1.2.1 %IteratorPrototype% [ @@iterator ] ( ), https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator
 // 27.1.2.1 %IteratorPrototype% [ @@iterator ] ( ), https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator
-JS_DEFINE_NATIVE_FUNCTION(IteratorPrototype::symbol_iterator)
+JS_DEFINE_OLD_NATIVE_FUNCTION(IteratorPrototype::symbol_iterator)
 {
 {
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     return this_object;
     return this_object;

+ 1 - 1
Userland/Libraries/LibJS/Runtime/IteratorPrototype.h

@@ -19,7 +19,7 @@ public:
     virtual ~IteratorPrototype() override;
     virtual ~IteratorPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(symbol_iterator);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(symbol_iterator);
 };
 };
 
 
 }
 }

+ 2 - 2
Userland/Libraries/LibJS/Runtime/JSONObject.cpp

@@ -112,7 +112,7 @@ String JSONObject::stringify_impl(GlobalObject& global_object, Value value, Valu
 }
 }
 
 
 // 25.5.2 JSON.stringify ( value [ , replacer [ , space ] ] ), https://tc39.es/ecma262/#sec-json.stringify
 // 25.5.2 JSON.stringify ( value [ , replacer [ , space ] ] ), https://tc39.es/ecma262/#sec-json.stringify
-JS_DEFINE_NATIVE_FUNCTION(JSONObject::stringify)
+JS_DEFINE_OLD_NATIVE_FUNCTION(JSONObject::stringify)
 {
 {
     if (!vm.argument_count())
     if (!vm.argument_count())
         return js_undefined();
         return js_undefined();
@@ -375,7 +375,7 @@ String JSONObject::quote_json_string(String string)
 }
 }
 
 
 // 25.5.1 JSON.parse ( text [ , reviver ] ), https://tc39.es/ecma262/#sec-json.parse
 // 25.5.1 JSON.parse ( text [ , reviver ] ), https://tc39.es/ecma262/#sec-json.parse
-JS_DEFINE_NATIVE_FUNCTION(JSONObject::parse)
+JS_DEFINE_OLD_NATIVE_FUNCTION(JSONObject::parse)
 {
 {
     auto string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto string = TRY_OR_DISCARD(vm.argument(0).to_string(global_object));
     auto reviver = vm.argument(1);
     auto reviver = vm.argument(1);

+ 2 - 2
Userland/Libraries/LibJS/Runtime/JSONObject.h

@@ -44,8 +44,8 @@ private:
     static Array* parse_json_array(GlobalObject&, const JsonArray&);
     static Array* parse_json_array(GlobalObject&, const JsonArray&);
     static Value internalize_json_property(GlobalObject&, Object* holder, PropertyName const& name, FunctionObject& reviver);
     static Value internalize_json_property(GlobalObject&, Object* holder, PropertyName const& name, FunctionObject& reviver);
 
 
-    JS_DECLARE_NATIVE_FUNCTION(stringify);
-    JS_DECLARE_NATIVE_FUNCTION(parse);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(stringify);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(parse);
 };
 };
 
 
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/MapConstructor.cpp

@@ -83,7 +83,7 @@ Value MapConstructor::construct(FunctionObject& new_target)
 }
 }
 
 
 // 24.1.2.2 get Map [ @@species ], https://tc39.es/ecma262/#sec-get-map-@@species
 // 24.1.2.2 get Map [ @@species ], https://tc39.es/ecma262/#sec-get-map-@@species
-JS_DEFINE_NATIVE_FUNCTION(MapConstructor::symbol_species_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MapConstructor::symbol_species_getter)
 {
 {
     return vm.this_value(global_object);
     return vm.this_value(global_object);
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/MapConstructor.h

@@ -24,7 +24,7 @@ public:
 private:
 private:
     virtual bool has_constructor() const override { return true; }
     virtual bool has_constructor() const override { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(symbol_species_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(symbol_species_getter);
 };
 };
 
 
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/MapIteratorPrototype.cpp

@@ -32,7 +32,7 @@ MapIteratorPrototype::~MapIteratorPrototype()
 }
 }
 
 
 // 24.1.5.2.1 %MapIteratorPrototype%.next ( ), https://tc39.es/ecma262/#sec-%mapiteratorprototype%.next
 // 24.1.5.2.1 %MapIteratorPrototype%.next ( ), https://tc39.es/ecma262/#sec-%mapiteratorprototype%.next
-JS_DEFINE_NATIVE_FUNCTION(MapIteratorPrototype::next)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MapIteratorPrototype::next)
 {
 {
     auto* map_iterator = TRY_OR_DISCARD(typed_this_value(global_object));
     auto* map_iterator = TRY_OR_DISCARD(typed_this_value(global_object));
     if (map_iterator->done())
     if (map_iterator->done())

+ 1 - 1
Userland/Libraries/LibJS/Runtime/MapIteratorPrototype.h

@@ -20,7 +20,7 @@ public:
     virtual ~MapIteratorPrototype() override;
     virtual ~MapIteratorPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(next);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(next);
 };
 };
 
 
 }
 }

+ 10 - 10
Userland/Libraries/LibJS/Runtime/MapPrototype.cpp

@@ -43,7 +43,7 @@ MapPrototype::~MapPrototype()
 }
 }
 
 
 // 24.1.3.1 Map.prototype.clear ( ), https://tc39.es/ecma262/#sec-map.prototype.clear
 // 24.1.3.1 Map.prototype.clear ( ), https://tc39.es/ecma262/#sec-map.prototype.clear
-JS_DEFINE_NATIVE_FUNCTION(MapPrototype::clear)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MapPrototype::clear)
 {
 {
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     map->entries().clear();
     map->entries().clear();
@@ -51,14 +51,14 @@ JS_DEFINE_NATIVE_FUNCTION(MapPrototype::clear)
 }
 }
 
 
 // 24.1.3.3 Map.prototype.delete ( key ), https://tc39.es/ecma262/#sec-map.prototype.delete
 // 24.1.3.3 Map.prototype.delete ( key ), https://tc39.es/ecma262/#sec-map.prototype.delete
-JS_DEFINE_NATIVE_FUNCTION(MapPrototype::delete_)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MapPrototype::delete_)
 {
 {
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     return Value(map->entries().remove(vm.argument(0)));
     return Value(map->entries().remove(vm.argument(0)));
 }
 }
 
 
 // 24.1.3.4 Map.prototype.entries ( ), https://tc39.es/ecma262/#sec-map.prototype.entries
 // 24.1.3.4 Map.prototype.entries ( ), https://tc39.es/ecma262/#sec-map.prototype.entries
-JS_DEFINE_NATIVE_FUNCTION(MapPrototype::entries)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MapPrototype::entries)
 {
 {
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -66,7 +66,7 @@ JS_DEFINE_NATIVE_FUNCTION(MapPrototype::entries)
 }
 }
 
 
 // 24.1.3.5 Map.prototype.forEach ( callbackfn [ , thisArg ] ), https://tc39.es/ecma262/#sec-map.prototype.foreach
 // 24.1.3.5 Map.prototype.forEach ( callbackfn [ , thisArg ] ), https://tc39.es/ecma262/#sec-map.prototype.foreach
-JS_DEFINE_NATIVE_FUNCTION(MapPrototype::for_each)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MapPrototype::for_each)
 {
 {
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     if (!vm.argument(0).is_function()) {
     if (!vm.argument(0).is_function()) {
@@ -83,7 +83,7 @@ JS_DEFINE_NATIVE_FUNCTION(MapPrototype::for_each)
 }
 }
 
 
 // 24.1.3.6 Map.prototype.get ( key ), https://tc39.es/ecma262/#sec-map.prototype.get
 // 24.1.3.6 Map.prototype.get ( key ), https://tc39.es/ecma262/#sec-map.prototype.get
-JS_DEFINE_NATIVE_FUNCTION(MapPrototype::get)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MapPrototype::get)
 {
 {
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     auto result = map->entries().get(vm.argument(0));
     auto result = map->entries().get(vm.argument(0));
@@ -93,7 +93,7 @@ JS_DEFINE_NATIVE_FUNCTION(MapPrototype::get)
 }
 }
 
 
 // 24.1.3.7 Map.prototype.has ( key ), https://tc39.es/ecma262/#sec-map.prototype.has
 // 24.1.3.7 Map.prototype.has ( key ), https://tc39.es/ecma262/#sec-map.prototype.has
-JS_DEFINE_NATIVE_FUNCTION(MapPrototype::has)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MapPrototype::has)
 {
 {
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     auto& entries = map->entries();
     auto& entries = map->entries();
@@ -101,7 +101,7 @@ JS_DEFINE_NATIVE_FUNCTION(MapPrototype::has)
 }
 }
 
 
 // 24.1.3.8 Map.prototype.keys ( ), https://tc39.es/ecma262/#sec-map.prototype.keys
 // 24.1.3.8 Map.prototype.keys ( ), https://tc39.es/ecma262/#sec-map.prototype.keys
-JS_DEFINE_NATIVE_FUNCTION(MapPrototype::keys)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MapPrototype::keys)
 {
 {
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -109,7 +109,7 @@ JS_DEFINE_NATIVE_FUNCTION(MapPrototype::keys)
 }
 }
 
 
 // 24.1.3.9 Map.prototype.set ( key, value ), https://tc39.es/ecma262/#sec-map.prototype.set
 // 24.1.3.9 Map.prototype.set ( key, value ), https://tc39.es/ecma262/#sec-map.prototype.set
-JS_DEFINE_NATIVE_FUNCTION(MapPrototype::set)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MapPrototype::set)
 {
 {
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     auto key = vm.argument(0);
     auto key = vm.argument(0);
@@ -120,7 +120,7 @@ JS_DEFINE_NATIVE_FUNCTION(MapPrototype::set)
 }
 }
 
 
 // 24.1.3.11 Map.prototype.values ( ), https://tc39.es/ecma262/#sec-map.prototype.values
 // 24.1.3.11 Map.prototype.values ( ), https://tc39.es/ecma262/#sec-map.prototype.values
-JS_DEFINE_NATIVE_FUNCTION(MapPrototype::values)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MapPrototype::values)
 {
 {
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -128,7 +128,7 @@ JS_DEFINE_NATIVE_FUNCTION(MapPrototype::values)
 }
 }
 
 
 // 24.1.3.10 get Map.prototype.size, https://tc39.es/ecma262/#sec-get-map.prototype.size
 // 24.1.3.10 get Map.prototype.size, https://tc39.es/ecma262/#sec-get-map.prototype.size
-JS_DEFINE_NATIVE_FUNCTION(MapPrototype::size_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MapPrototype::size_getter)
 {
 {
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* map = TRY_OR_DISCARD(typed_this_object(global_object));
     return Value(map->entries().size());
     return Value(map->entries().size());

+ 11 - 11
Userland/Libraries/LibJS/Runtime/MapPrototype.h

@@ -20,17 +20,17 @@ public:
     virtual ~MapPrototype() override;
     virtual ~MapPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(clear);
-    JS_DECLARE_NATIVE_FUNCTION(delete_);
-    JS_DECLARE_NATIVE_FUNCTION(entries);
-    JS_DECLARE_NATIVE_FUNCTION(for_each);
-    JS_DECLARE_NATIVE_FUNCTION(get);
-    JS_DECLARE_NATIVE_FUNCTION(has);
-    JS_DECLARE_NATIVE_FUNCTION(keys);
-    JS_DECLARE_NATIVE_FUNCTION(set);
-    JS_DECLARE_NATIVE_FUNCTION(values);
-
-    JS_DECLARE_NATIVE_FUNCTION(size_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(clear);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(delete_);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(entries);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(for_each);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(has);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(keys);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(values);
+
+    JS_DECLARE_OLD_NATIVE_FUNCTION(size_getter);
 };
 };
 
 
 }
 }

+ 35 - 35
Userland/Libraries/LibJS/Runtime/MathObject.cpp

@@ -79,7 +79,7 @@ MathObject::~MathObject()
 }
 }
 
 
 // 21.3.2.1 Math.abs ( x ), https://tc39.es/ecma262/#sec-math.abs
 // 21.3.2.1 Math.abs ( x ), https://tc39.es/ecma262/#sec-math.abs
-JS_DEFINE_NATIVE_FUNCTION(MathObject::abs)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::abs)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan())
     if (number.is_nan())
@@ -92,14 +92,14 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::abs)
 }
 }
 
 
 // 21.3.2.27 Math.random ( ), https://tc39.es/ecma262/#sec-math.random
 // 21.3.2.27 Math.random ( ), https://tc39.es/ecma262/#sec-math.random
-JS_DEFINE_NATIVE_FUNCTION(MathObject::random)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::random)
 {
 {
     double r = (double)get_random<u32>() / (double)UINT32_MAX;
     double r = (double)get_random<u32>() / (double)UINT32_MAX;
     return Value(r);
     return Value(r);
 }
 }
 
 
 // 21.3.2.32 Math.sqrt ( x ), https://tc39.es/ecma262/#sec-math.sqrt
 // 21.3.2.32 Math.sqrt ( x ), https://tc39.es/ecma262/#sec-math.sqrt
-JS_DEFINE_NATIVE_FUNCTION(MathObject::sqrt)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::sqrt)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan())
     if (number.is_nan())
@@ -108,7 +108,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::sqrt)
 }
 }
 
 
 // 21.3.2.16 Math.floor ( x ), https://tc39.es/ecma262/#sec-math.floor
 // 21.3.2.16 Math.floor ( x ), https://tc39.es/ecma262/#sec-math.floor
-JS_DEFINE_NATIVE_FUNCTION(MathObject::floor)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::floor)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan())
     if (number.is_nan())
@@ -117,7 +117,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::floor)
 }
 }
 
 
 // 21.3.2.10 Math.ceil ( x ), https://tc39.es/ecma262/#sec-math.ceil
 // 21.3.2.10 Math.ceil ( x ), https://tc39.es/ecma262/#sec-math.ceil
-JS_DEFINE_NATIVE_FUNCTION(MathObject::ceil)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::ceil)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan())
     if (number.is_nan())
@@ -129,7 +129,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::ceil)
 }
 }
 
 
 // 21.3.2.28 Math.round ( x ), https://tc39.es/ecma262/#sec-math.round
 // 21.3.2.28 Math.round ( x ), https://tc39.es/ecma262/#sec-math.round
-JS_DEFINE_NATIVE_FUNCTION(MathObject::round)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::round)
 {
 {
     auto value = TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double();
     auto value = TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double();
     double integer = ::ceil(value);
     double integer = ::ceil(value);
@@ -139,7 +139,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::round)
 }
 }
 
 
 // 21.3.2.24 Math.max ( ...args ), https://tc39.es/ecma262/#sec-math.max
 // 21.3.2.24 Math.max ( ...args ), https://tc39.es/ecma262/#sec-math.max
-JS_DEFINE_NATIVE_FUNCTION(MathObject::max)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::max)
 {
 {
     Vector<Value> coerced;
     Vector<Value> coerced;
     for (size_t i = 0; i < vm.argument_count(); ++i)
     for (size_t i = 0; i < vm.argument_count(); ++i)
@@ -156,7 +156,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::max)
 }
 }
 
 
 // 21.3.2.25 Math.min ( ...args ), https://tc39.es/ecma262/#sec-math.min
 // 21.3.2.25 Math.min ( ...args ), https://tc39.es/ecma262/#sec-math.min
-JS_DEFINE_NATIVE_FUNCTION(MathObject::min)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::min)
 {
 {
     Vector<Value> coerced;
     Vector<Value> coerced;
     for (size_t i = 0; i < vm.argument_count(); ++i)
     for (size_t i = 0; i < vm.argument_count(); ++i)
@@ -173,7 +173,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::min)
 }
 }
 
 
 // 21.3.2.35 Math.trunc ( x ), https://tc39.es/ecma262/#sec-math.trunc
 // 21.3.2.35 Math.trunc ( x ), https://tc39.es/ecma262/#sec-math.trunc
-JS_DEFINE_NATIVE_FUNCTION(MathObject::trunc)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::trunc)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan())
     if (number.is_nan())
@@ -184,7 +184,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::trunc)
 }
 }
 
 
 // 21.3.2.30 Math.sin ( x ), https://tc39.es/ecma262/#sec-math.sin
 // 21.3.2.30 Math.sin ( x ), https://tc39.es/ecma262/#sec-math.sin
-JS_DEFINE_NATIVE_FUNCTION(MathObject::sin)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::sin)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan())
     if (number.is_nan())
@@ -193,7 +193,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::sin)
 }
 }
 
 
 // 21.3.2.12 Math.cos ( x ), https://tc39.es/ecma262/#sec-math.cos
 // 21.3.2.12 Math.cos ( x ), https://tc39.es/ecma262/#sec-math.cos
-JS_DEFINE_NATIVE_FUNCTION(MathObject::cos)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::cos)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan())
     if (number.is_nan())
@@ -202,7 +202,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::cos)
 }
 }
 
 
 // 21.3.2.33 Math.tan ( x ), https://tc39.es/ecma262/#sec-math.tan
 // 21.3.2.33 Math.tan ( x ), https://tc39.es/ecma262/#sec-math.tan
-JS_DEFINE_NATIVE_FUNCTION(MathObject::tan)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::tan)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan())
     if (number.is_nan())
@@ -211,7 +211,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::tan)
 }
 }
 
 
 // 21.3.2.26 Math.pow ( base, exponent ), https://tc39.es/ecma262/#sec-math.pow
 // 21.3.2.26 Math.pow ( base, exponent ), https://tc39.es/ecma262/#sec-math.pow
-JS_DEFINE_NATIVE_FUNCTION(MathObject::pow)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::pow)
 {
 {
     auto base = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto base = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto exponent = TRY_OR_DISCARD(vm.argument(1).to_number(global_object));
     auto exponent = TRY_OR_DISCARD(vm.argument(1).to_number(global_object));
@@ -265,7 +265,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::pow)
 }
 }
 
 
 // 21.3.2.14 Math.exp ( x ), https://tc39.es/ecma262/#sec-math.exp
 // 21.3.2.14 Math.exp ( x ), https://tc39.es/ecma262/#sec-math.exp
-JS_DEFINE_NATIVE_FUNCTION(MathObject::exp)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::exp)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan())
     if (number.is_nan())
@@ -274,7 +274,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::exp)
 }
 }
 
 
 // 21.3.2.15 Math.expm1 ( x ), https://tc39.es/ecma262/#sec-math.expm1
 // 21.3.2.15 Math.expm1 ( x ), https://tc39.es/ecma262/#sec-math.expm1
-JS_DEFINE_NATIVE_FUNCTION(MathObject::expm1)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::expm1)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan())
     if (number.is_nan())
@@ -283,7 +283,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::expm1)
 }
 }
 
 
 // 21.3.2.29 Math.sign ( x ), https://tc39.es/ecma262/#sec-math.sign
 // 21.3.2.29 Math.sign ( x ), https://tc39.es/ecma262/#sec-math.sign
-JS_DEFINE_NATIVE_FUNCTION(MathObject::sign)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::sign)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_positive_zero())
     if (number.is_positive_zero())
@@ -298,7 +298,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::sign)
 }
 }
 
 
 // 21.3.2.11 Math.clz32 ( x ), https://tc39.es/ecma262/#sec-math.clz32
 // 21.3.2.11 Math.clz32 ( x ), https://tc39.es/ecma262/#sec-math.clz32
-JS_DEFINE_NATIVE_FUNCTION(MathObject::clz32)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::clz32)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_u32(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_u32(global_object));
     if (number == 0)
     if (number == 0)
@@ -307,7 +307,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::clz32)
 }
 }
 
 
 // 21.3.2.2 Math.acos ( x ), https://tc39.es/ecma262/#sec-math.acos
 // 21.3.2.2 Math.acos ( x ), https://tc39.es/ecma262/#sec-math.acos
-JS_DEFINE_NATIVE_FUNCTION(MathObject::acos)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::acos)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan() || number.as_double() > 1 || number.as_double() < -1)
     if (number.is_nan() || number.as_double() > 1 || number.as_double() < -1)
@@ -318,7 +318,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::acos)
 }
 }
 
 
 // 21.3.2.3 Math.acosh ( x ), https://tc39.es/ecma262/#sec-math.acosh
 // 21.3.2.3 Math.acosh ( x ), https://tc39.es/ecma262/#sec-math.acosh
-JS_DEFINE_NATIVE_FUNCTION(MathObject::acosh)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::acosh)
 {
 {
     auto value = TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double();
     auto value = TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double();
     if (value < 1)
     if (value < 1)
@@ -327,7 +327,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::acosh)
 }
 }
 
 
 // 21.3.2.4 Math.asin ( x ), https://tc39.es/ecma262/#sec-math.asin
 // 21.3.2.4 Math.asin ( x ), https://tc39.es/ecma262/#sec-math.asin
-JS_DEFINE_NATIVE_FUNCTION(MathObject::asin)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::asin)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan() || number.is_positive_zero() || number.is_negative_zero())
     if (number.is_nan() || number.is_positive_zero() || number.is_negative_zero())
@@ -336,13 +336,13 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::asin)
 }
 }
 
 
 // 21.3.2.5 Math.asinh ( x ), https://tc39.es/ecma262/#sec-math.asinh
 // 21.3.2.5 Math.asinh ( x ), https://tc39.es/ecma262/#sec-math.asinh
-JS_DEFINE_NATIVE_FUNCTION(MathObject::asinh)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::asinh)
 {
 {
     return Value(::asinh(TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double()));
     return Value(::asinh(TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double()));
 }
 }
 
 
 // 21.3.2.6 Math.atan ( x ), https://tc39.es/ecma262/#sec-math.atan
 // 21.3.2.6 Math.atan ( x ), https://tc39.es/ecma262/#sec-math.atan
-JS_DEFINE_NATIVE_FUNCTION(MathObject::atan)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::atan)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan() || number.is_positive_zero() || number.is_negative_zero())
     if (number.is_nan() || number.is_positive_zero() || number.is_negative_zero())
@@ -355,7 +355,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::atan)
 }
 }
 
 
 // 21.3.2.7 Math.atanh ( x ), https://tc39.es/ecma262/#sec-math.atanh
 // 21.3.2.7 Math.atanh ( x ), https://tc39.es/ecma262/#sec-math.atanh
-JS_DEFINE_NATIVE_FUNCTION(MathObject::atanh)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::atanh)
 {
 {
     auto value = TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double();
     auto value = TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double();
     if (value > 1 || value < -1)
     if (value > 1 || value < -1)
@@ -364,7 +364,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::atanh)
 }
 }
 
 
 // 21.3.2.21 Math.log1p ( x ), https://tc39.es/ecma262/#sec-math.log1p
 // 21.3.2.21 Math.log1p ( x ), https://tc39.es/ecma262/#sec-math.log1p
-JS_DEFINE_NATIVE_FUNCTION(MathObject::log1p)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::log1p)
 {
 {
     auto value = TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double();
     auto value = TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double();
     if (value < -1)
     if (value < -1)
@@ -373,13 +373,13 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::log1p)
 }
 }
 
 
 // 21.3.2.9 Math.cbrt ( x ), https://tc39.es/ecma262/#sec-math.cbrt
 // 21.3.2.9 Math.cbrt ( x ), https://tc39.es/ecma262/#sec-math.cbrt
-JS_DEFINE_NATIVE_FUNCTION(MathObject::cbrt)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::cbrt)
 {
 {
     return Value(::cbrt(TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double()));
     return Value(::cbrt(TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double()));
 }
 }
 
 
 // 21.3.2.8 Math.atan2 ( y, x ), https://tc39.es/ecma262/#sec-math.atan2
 // 21.3.2.8 Math.atan2 ( y, x ), https://tc39.es/ecma262/#sec-math.atan2
-JS_DEFINE_NATIVE_FUNCTION(MathObject::atan2)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::atan2)
 {
 {
     auto constexpr three_quarters_pi = M_PI_4 + M_PI_2;
     auto constexpr three_quarters_pi = M_PI_4 + M_PI_2;
 
 
@@ -438,7 +438,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::atan2)
 }
 }
 
 
 // 21.3.2.17 Math.fround ( x ), https://tc39.es/ecma262/#sec-math.fround
 // 21.3.2.17 Math.fround ( x ), https://tc39.es/ecma262/#sec-math.fround
-JS_DEFINE_NATIVE_FUNCTION(MathObject::fround)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::fround)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan())
     if (number.is_nan())
@@ -447,7 +447,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::fround)
 }
 }
 
 
 // 21.3.2.18 Math.hypot ( ...args ), https://tc39.es/ecma262/#sec-math.hypot
 // 21.3.2.18 Math.hypot ( ...args ), https://tc39.es/ecma262/#sec-math.hypot
-JS_DEFINE_NATIVE_FUNCTION(MathObject::hypot)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::hypot)
 {
 {
     Vector<Value> coerced;
     Vector<Value> coerced;
     for (size_t i = 0; i < vm.argument_count(); ++i)
     for (size_t i = 0; i < vm.argument_count(); ++i)
@@ -475,7 +475,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::hypot)
 }
 }
 
 
 // 21.3.2.19 Math.imul ( x, y ), https://tc39.es/ecma262/#sec-math.imul
 // 21.3.2.19 Math.imul ( x, y ), https://tc39.es/ecma262/#sec-math.imul
-JS_DEFINE_NATIVE_FUNCTION(MathObject::imul)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::imul)
 {
 {
     auto a = TRY_OR_DISCARD(vm.argument(0).to_u32(global_object));
     auto a = TRY_OR_DISCARD(vm.argument(0).to_u32(global_object));
     auto b = TRY_OR_DISCARD(vm.argument(1).to_u32(global_object));
     auto b = TRY_OR_DISCARD(vm.argument(1).to_u32(global_object));
@@ -483,7 +483,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::imul)
 }
 }
 
 
 // 21.3.2.20 Math.log ( x ), https://tc39.es/ecma262/#sec-math.log
 // 21.3.2.20 Math.log ( x ), https://tc39.es/ecma262/#sec-math.log
-JS_DEFINE_NATIVE_FUNCTION(MathObject::log)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::log)
 {
 {
     auto value = TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double();
     auto value = TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double();
     if (value < 0)
     if (value < 0)
@@ -492,7 +492,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::log)
 }
 }
 
 
 // 21.3.2.23 Math.log2 ( x ), https://tc39.es/ecma262/#sec-math.log2
 // 21.3.2.23 Math.log2 ( x ), https://tc39.es/ecma262/#sec-math.log2
-JS_DEFINE_NATIVE_FUNCTION(MathObject::log2)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::log2)
 {
 {
     auto value = TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double();
     auto value = TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double();
     if (value < 0)
     if (value < 0)
@@ -501,7 +501,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::log2)
 }
 }
 
 
 // 21.3.2.22 Math.log10 ( x ), https://tc39.es/ecma262/#sec-math.log10
 // 21.3.2.22 Math.log10 ( x ), https://tc39.es/ecma262/#sec-math.log10
-JS_DEFINE_NATIVE_FUNCTION(MathObject::log10)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::log10)
 {
 {
     auto value = TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double();
     auto value = TRY_OR_DISCARD(vm.argument(0).to_number(global_object)).as_double();
     if (value < 0)
     if (value < 0)
@@ -510,7 +510,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::log10)
 }
 }
 
 
 // 21.3.2.31 Math.sinh ( x ), https://tc39.es/ecma262/#sec-math.sinh
 // 21.3.2.31 Math.sinh ( x ), https://tc39.es/ecma262/#sec-math.sinh
-JS_DEFINE_NATIVE_FUNCTION(MathObject::sinh)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::sinh)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan())
     if (number.is_nan())
@@ -519,7 +519,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::sinh)
 }
 }
 
 
 // 21.3.2.13 Math.cosh ( x ), https://tc39.es/ecma262/#sec-math.cosh
 // 21.3.2.13 Math.cosh ( x ), https://tc39.es/ecma262/#sec-math.cosh
-JS_DEFINE_NATIVE_FUNCTION(MathObject::cosh)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::cosh)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan())
     if (number.is_nan())
@@ -528,7 +528,7 @@ JS_DEFINE_NATIVE_FUNCTION(MathObject::cosh)
 }
 }
 
 
 // 21.3.2.34 Math.tanh ( x ), https://tc39.es/ecma262/#sec-math.tanh
 // 21.3.2.34 Math.tanh ( x ), https://tc39.es/ecma262/#sec-math.tanh
-JS_DEFINE_NATIVE_FUNCTION(MathObject::tanh)
+JS_DEFINE_OLD_NATIVE_FUNCTION(MathObject::tanh)
 {
 {
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     auto number = TRY_OR_DISCARD(vm.argument(0).to_number(global_object));
     if (number.is_nan())
     if (number.is_nan())

+ 35 - 35
Userland/Libraries/LibJS/Runtime/MathObject.h

@@ -19,41 +19,41 @@ public:
     virtual ~MathObject() override;
     virtual ~MathObject() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(abs);
-    JS_DECLARE_NATIVE_FUNCTION(random);
-    JS_DECLARE_NATIVE_FUNCTION(sqrt);
-    JS_DECLARE_NATIVE_FUNCTION(floor);
-    JS_DECLARE_NATIVE_FUNCTION(ceil);
-    JS_DECLARE_NATIVE_FUNCTION(round);
-    JS_DECLARE_NATIVE_FUNCTION(max);
-    JS_DECLARE_NATIVE_FUNCTION(min);
-    JS_DECLARE_NATIVE_FUNCTION(trunc);
-    JS_DECLARE_NATIVE_FUNCTION(sin);
-    JS_DECLARE_NATIVE_FUNCTION(cos);
-    JS_DECLARE_NATIVE_FUNCTION(tan);
-    JS_DECLARE_NATIVE_FUNCTION(pow);
-    JS_DECLARE_NATIVE_FUNCTION(exp);
-    JS_DECLARE_NATIVE_FUNCTION(expm1);
-    JS_DECLARE_NATIVE_FUNCTION(sign);
-    JS_DECLARE_NATIVE_FUNCTION(clz32);
-    JS_DECLARE_NATIVE_FUNCTION(acos);
-    JS_DECLARE_NATIVE_FUNCTION(acosh);
-    JS_DECLARE_NATIVE_FUNCTION(asin);
-    JS_DECLARE_NATIVE_FUNCTION(asinh);
-    JS_DECLARE_NATIVE_FUNCTION(atan);
-    JS_DECLARE_NATIVE_FUNCTION(atanh);
-    JS_DECLARE_NATIVE_FUNCTION(log1p);
-    JS_DECLARE_NATIVE_FUNCTION(cbrt);
-    JS_DECLARE_NATIVE_FUNCTION(atan2);
-    JS_DECLARE_NATIVE_FUNCTION(fround);
-    JS_DECLARE_NATIVE_FUNCTION(hypot);
-    JS_DECLARE_NATIVE_FUNCTION(imul);
-    JS_DECLARE_NATIVE_FUNCTION(log);
-    JS_DECLARE_NATIVE_FUNCTION(log2);
-    JS_DECLARE_NATIVE_FUNCTION(log10);
-    JS_DECLARE_NATIVE_FUNCTION(sinh);
-    JS_DECLARE_NATIVE_FUNCTION(cosh);
-    JS_DECLARE_NATIVE_FUNCTION(tanh);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(abs);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(random);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(sqrt);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(floor);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(ceil);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(round);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(max);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(min);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(trunc);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(sin);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(cos);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(tan);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(pow);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(exp);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(expm1);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(sign);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(clz32);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(acos);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(acosh);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(asin);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(asinh);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(atan);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(atanh);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(log1p);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(cbrt);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(atan2);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(fround);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(hypot);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(imul);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(log);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(log2);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(log10);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(sinh);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(cosh);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(tanh);
 };
 };
 
 
 }
 }

+ 4 - 4
Userland/Libraries/LibJS/Runtime/NumberConstructor.cpp

@@ -105,25 +105,25 @@ Value NumberConstructor::construct(FunctionObject& new_target)
 }
 }
 
 
 // 21.1.2.2 Number.isFinite ( number ), https://tc39.es/ecma262/#sec-number.isfinite
 // 21.1.2.2 Number.isFinite ( number ), https://tc39.es/ecma262/#sec-number.isfinite
-JS_DEFINE_NATIVE_FUNCTION(NumberConstructor::is_finite)
+JS_DEFINE_OLD_NATIVE_FUNCTION(NumberConstructor::is_finite)
 {
 {
     return Value(vm.argument(0).is_finite_number());
     return Value(vm.argument(0).is_finite_number());
 }
 }
 
 
 // 21.1.2.3 Number.isInteger ( number ), https://tc39.es/ecma262/#sec-number.isinteger
 // 21.1.2.3 Number.isInteger ( number ), https://tc39.es/ecma262/#sec-number.isinteger
-JS_DEFINE_NATIVE_FUNCTION(NumberConstructor::is_integer)
+JS_DEFINE_OLD_NATIVE_FUNCTION(NumberConstructor::is_integer)
 {
 {
     return Value(vm.argument(0).is_integral_number());
     return Value(vm.argument(0).is_integral_number());
 }
 }
 
 
 // 21.1.2.4 Number.isNaN ( number ), https://tc39.es/ecma262/#sec-number.isnan
 // 21.1.2.4 Number.isNaN ( number ), https://tc39.es/ecma262/#sec-number.isnan
-JS_DEFINE_NATIVE_FUNCTION(NumberConstructor::is_nan)
+JS_DEFINE_OLD_NATIVE_FUNCTION(NumberConstructor::is_nan)
 {
 {
     return Value(vm.argument(0).is_nan());
     return Value(vm.argument(0).is_nan());
 }
 }
 
 
 // 21.1.2.5 Number.isSafeInteger ( number ), https://tc39.es/ecma262/#sec-number.issafeinteger
 // 21.1.2.5 Number.isSafeInteger ( number ), https://tc39.es/ecma262/#sec-number.issafeinteger
-JS_DEFINE_NATIVE_FUNCTION(NumberConstructor::is_safe_integer)
+JS_DEFINE_OLD_NATIVE_FUNCTION(NumberConstructor::is_safe_integer)
 {
 {
     if (!vm.argument(0).is_number())
     if (!vm.argument(0).is_number())
         return Value(false);
         return Value(false);

+ 4 - 4
Userland/Libraries/LibJS/Runtime/NumberConstructor.h

@@ -24,10 +24,10 @@ public:
 private:
 private:
     virtual bool has_constructor() const override { return true; }
     virtual bool has_constructor() const override { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(is_finite);
-    JS_DECLARE_NATIVE_FUNCTION(is_integer);
-    JS_DECLARE_NATIVE_FUNCTION(is_nan);
-    JS_DECLARE_NATIVE_FUNCTION(is_safe_integer);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is_finite);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is_integer);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is_nan);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is_safe_integer);
 };
 };
 
 
 }
 }

+ 3 - 3
Userland/Libraries/LibJS/Runtime/NumberPrototype.cpp

@@ -57,7 +57,7 @@ static ThrowCompletionOr<Value> this_number_value(GlobalObject& global_object, V
 }
 }
 
 
 // 21.1.3.3 Number.prototype.toFixed ( fractionDigits ), https://tc39.es/ecma262/#sec-number.prototype.tofixed
 // 21.1.3.3 Number.prototype.toFixed ( fractionDigits ), https://tc39.es/ecma262/#sec-number.prototype.tofixed
-JS_DEFINE_NATIVE_FUNCTION(NumberPrototype::to_fixed)
+JS_DEFINE_OLD_NATIVE_FUNCTION(NumberPrototype::to_fixed)
 {
 {
     auto number_value = TRY_OR_DISCARD(this_number_value(global_object, vm.this_value(global_object)));
     auto number_value = TRY_OR_DISCARD(this_number_value(global_object, vm.this_value(global_object)));
     auto fraction_digits = TRY_OR_DISCARD(vm.argument(0).to_integer_or_infinity(global_object));
     auto fraction_digits = TRY_OR_DISCARD(vm.argument(0).to_integer_or_infinity(global_object));
@@ -82,7 +82,7 @@ JS_DEFINE_NATIVE_FUNCTION(NumberPrototype::to_fixed)
 }
 }
 
 
 // 21.1.3.6 Number.prototype.toString ( [ radix ] ), https://tc39.es/ecma262/#sec-number.prototype.tostring
 // 21.1.3.6 Number.prototype.toString ( [ radix ] ), https://tc39.es/ecma262/#sec-number.prototype.tostring
-JS_DEFINE_NATIVE_FUNCTION(NumberPrototype::to_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(NumberPrototype::to_string)
 {
 {
     auto number_value = TRY_OR_DISCARD(this_number_value(global_object, vm.this_value(global_object)));
     auto number_value = TRY_OR_DISCARD(this_number_value(global_object, vm.this_value(global_object)));
     double radix_argument = 10;
     double radix_argument = 10;
@@ -154,7 +154,7 @@ JS_DEFINE_NATIVE_FUNCTION(NumberPrototype::to_string)
 }
 }
 
 
 // 21.1.3.7 Number.prototype.valueOf ( ), https://tc39.es/ecma262/#sec-number.prototype.valueof
 // 21.1.3.7 Number.prototype.valueOf ( ), https://tc39.es/ecma262/#sec-number.prototype.valueof
-JS_DEFINE_NATIVE_FUNCTION(NumberPrototype::value_of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(NumberPrototype::value_of)
 {
 {
     return TRY_OR_DISCARD(this_number_value(global_object, vm.this_value(global_object)));
     return TRY_OR_DISCARD(this_number_value(global_object, vm.this_value(global_object)));
 }
 }

+ 3 - 3
Userland/Libraries/LibJS/Runtime/NumberPrototype.h

@@ -18,9 +18,9 @@ public:
     virtual void initialize(GlobalObject&) override;
     virtual void initialize(GlobalObject&) override;
     virtual ~NumberPrototype() override;
     virtual ~NumberPrototype() override;
 
 
-    JS_DECLARE_NATIVE_FUNCTION(to_fixed);
-    JS_DECLARE_NATIVE_FUNCTION(to_string);
-    JS_DECLARE_NATIVE_FUNCTION(value_of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_fixed);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(value_of);
 };
 };
 
 
 }
 }

+ 22 - 22
Userland/Libraries/LibJS/Runtime/ObjectConstructor.cpp

@@ -114,21 +114,21 @@ static Array* get_own_property_keys(GlobalObject& global_object, Value value, Ge
 }
 }
 
 
 // 20.1.2.10 Object.getOwnPropertyNames ( O ), https://tc39.es/ecma262/#sec-object.getownpropertynames
 // 20.1.2.10 Object.getOwnPropertyNames ( O ), https://tc39.es/ecma262/#sec-object.getownpropertynames
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::get_own_property_names)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::get_own_property_names)
 {
 {
     // 1. Return ? GetOwnPropertyKeys(O, string).
     // 1. Return ? GetOwnPropertyKeys(O, string).
     return get_own_property_keys(global_object, vm.argument(0), GetOwnPropertyKeysType::String);
     return get_own_property_keys(global_object, vm.argument(0), GetOwnPropertyKeysType::String);
 }
 }
 
 
 // 20.1.2.11 Object.getOwnPropertySymbols ( O ), https://tc39.es/ecma262/#sec-object.getownpropertysymbols
 // 20.1.2.11 Object.getOwnPropertySymbols ( O ), https://tc39.es/ecma262/#sec-object.getownpropertysymbols
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::get_own_property_symbols)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::get_own_property_symbols)
 {
 {
     // 1. Return ? GetOwnPropertyKeys(O, symbol).
     // 1. Return ? GetOwnPropertyKeys(O, symbol).
     return get_own_property_keys(global_object, vm.argument(0), GetOwnPropertyKeysType::Symbol);
     return get_own_property_keys(global_object, vm.argument(0), GetOwnPropertyKeysType::Symbol);
 }
 }
 
 
 // 20.1.2.12 Object.getPrototypeOf ( O ), https://tc39.es/ecma262/#sec-object.getprototypeof
 // 20.1.2.12 Object.getPrototypeOf ( O ), https://tc39.es/ecma262/#sec-object.getprototypeof
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::get_prototype_of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::get_prototype_of)
 {
 {
     // 1. Let obj be ? ToObject(O).
     // 1. Let obj be ? ToObject(O).
     auto* object = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
     auto* object = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
@@ -138,7 +138,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::get_prototype_of)
 }
 }
 
 
 // 20.1.2.21 Object.setPrototypeOf ( O, proto ), https://tc39.es/ecma262/#sec-object.setprototypeof
 // 20.1.2.21 Object.setPrototypeOf ( O, proto ), https://tc39.es/ecma262/#sec-object.setprototypeof
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::set_prototype_of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::set_prototype_of)
 {
 {
     auto proto = vm.argument(1);
     auto proto = vm.argument(1);
 
 
@@ -170,7 +170,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::set_prototype_of)
 }
 }
 
 
 // 20.1.2.14 Object.isExtensible ( O ), https://tc39.es/ecma262/#sec-object.isextensible
 // 20.1.2.14 Object.isExtensible ( O ), https://tc39.es/ecma262/#sec-object.isextensible
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::is_extensible)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::is_extensible)
 {
 {
     auto argument = vm.argument(0);
     auto argument = vm.argument(0);
     if (!argument.is_object())
     if (!argument.is_object())
@@ -179,7 +179,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::is_extensible)
 }
 }
 
 
 // 20.1.2.15 Object.isFrozen ( O ), https://tc39.es/ecma262/#sec-object.isfrozen
 // 20.1.2.15 Object.isFrozen ( O ), https://tc39.es/ecma262/#sec-object.isfrozen
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::is_frozen)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::is_frozen)
 {
 {
     auto argument = vm.argument(0);
     auto argument = vm.argument(0);
     if (!argument.is_object())
     if (!argument.is_object())
@@ -188,7 +188,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::is_frozen)
 }
 }
 
 
 // 20.1.2.16 Object.isSealed ( O ), https://tc39.es/ecma262/#sec-object.issealed
 // 20.1.2.16 Object.isSealed ( O ), https://tc39.es/ecma262/#sec-object.issealed
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::is_sealed)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::is_sealed)
 {
 {
     auto argument = vm.argument(0);
     auto argument = vm.argument(0);
     if (!argument.is_object())
     if (!argument.is_object())
@@ -197,7 +197,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::is_sealed)
 }
 }
 
 
 // 20.1.2.18 Object.preventExtensions ( O ), https://tc39.es/ecma262/#sec-object.preventextensions
 // 20.1.2.18 Object.preventExtensions ( O ), https://tc39.es/ecma262/#sec-object.preventextensions
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::prevent_extensions)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::prevent_extensions)
 {
 {
     auto argument = vm.argument(0);
     auto argument = vm.argument(0);
     if (!argument.is_object())
     if (!argument.is_object())
@@ -212,7 +212,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::prevent_extensions)
 }
 }
 
 
 // 20.1.2.6 Object.freeze ( O ), https://tc39.es/ecma262/#sec-object.freeze
 // 20.1.2.6 Object.freeze ( O ), https://tc39.es/ecma262/#sec-object.freeze
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::freeze)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::freeze)
 {
 {
     auto argument = vm.argument(0);
     auto argument = vm.argument(0);
     if (!argument.is_object())
     if (!argument.is_object())
@@ -226,7 +226,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::freeze)
 }
 }
 
 
 // 20.1.2.7 Object.fromEntries ( iterable ), https://tc39.es/ecma262/#sec-object.fromentries
 // 20.1.2.7 Object.fromEntries ( iterable ), https://tc39.es/ecma262/#sec-object.fromentries
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::from_entries)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::from_entries)
 {
 {
     auto iterable = TRY_OR_DISCARD(require_object_coercible(global_object, vm.argument(0)));
     auto iterable = TRY_OR_DISCARD(require_object_coercible(global_object, vm.argument(0)));
 
 
@@ -261,7 +261,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::from_entries)
 }
 }
 
 
 // 20.1.2.20 Object.seal ( O ), https://tc39.es/ecma262/#sec-object.seal
 // 20.1.2.20 Object.seal ( O ), https://tc39.es/ecma262/#sec-object.seal
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::seal)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::seal)
 {
 {
     auto argument = vm.argument(0);
     auto argument = vm.argument(0);
     if (!argument.is_object())
     if (!argument.is_object())
@@ -275,7 +275,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::seal)
 }
 }
 
 
 // 20.1.2.8 Object.getOwnPropertyDescriptor ( O, P ), https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
 // 20.1.2.8 Object.getOwnPropertyDescriptor ( O, P ), https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::get_own_property_descriptor)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::get_own_property_descriptor)
 {
 {
     auto* object = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
     auto* object = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
     auto key = TRY_OR_DISCARD(vm.argument(1).to_property_key(global_object));
     auto key = TRY_OR_DISCARD(vm.argument(1).to_property_key(global_object));
@@ -284,7 +284,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::get_own_property_descriptor)
 }
 }
 
 
 // 20.1.2.9 Object.getOwnPropertyDescriptors ( O ), https://tc39.es/ecma262/#sec-object.getownpropertydescriptors
 // 20.1.2.9 Object.getOwnPropertyDescriptors ( O ), https://tc39.es/ecma262/#sec-object.getownpropertydescriptors
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::get_own_property_descriptors)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::get_own_property_descriptors)
 {
 {
     // 1. Let obj be ? ToObject(O).
     // 1. Let obj be ? ToObject(O).
     auto* object = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
     auto* object = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
@@ -315,7 +315,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::get_own_property_descriptors)
 }
 }
 
 
 // 20.1.2.4 Object.defineProperty ( O, P, Attributes ), https://tc39.es/ecma262/#sec-object.defineproperty
 // 20.1.2.4 Object.defineProperty ( O, P, Attributes ), https://tc39.es/ecma262/#sec-object.defineproperty
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::define_property)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::define_property)
 {
 {
     if (!vm.argument(0).is_object()) {
     if (!vm.argument(0).is_object()) {
         vm.throw_exception<TypeError>(global_object, ErrorType::NotAnObject, vm.argument(0).to_string_without_side_effects());
         vm.throw_exception<TypeError>(global_object, ErrorType::NotAnObject, vm.argument(0).to_string_without_side_effects());
@@ -328,7 +328,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::define_property)
 }
 }
 
 
 // 20.1.2.3 Object.defineProperties ( O, Properties ), https://tc39.es/ecma262/#sec-object.defineproperties
 // 20.1.2.3 Object.defineProperties ( O, Properties ), https://tc39.es/ecma262/#sec-object.defineproperties
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::define_properties)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::define_properties)
 {
 {
     auto object = vm.argument(0);
     auto object = vm.argument(0);
     auto properties = vm.argument(1);
     auto properties = vm.argument(1);
@@ -344,13 +344,13 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::define_properties)
 }
 }
 
 
 // 20.1.2.13 Object.is ( value1, value2 ), https://tc39.es/ecma262/#sec-object.is
 // 20.1.2.13 Object.is ( value1, value2 ), https://tc39.es/ecma262/#sec-object.is
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::is)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::is)
 {
 {
     return Value(same_value(vm.argument(0), vm.argument(1)));
     return Value(same_value(vm.argument(0), vm.argument(1)));
 }
 }
 
 
 // 20.1.2.17 Object.keys ( O ), https://tc39.es/ecma262/#sec-object.keys
 // 20.1.2.17 Object.keys ( O ), https://tc39.es/ecma262/#sec-object.keys
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::keys)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::keys)
 {
 {
     auto* object = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
     auto* object = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
     auto name_list = TRY_OR_DISCARD(object->enumerable_own_property_names(PropertyKind::Key));
     auto name_list = TRY_OR_DISCARD(object->enumerable_own_property_names(PropertyKind::Key));
@@ -358,7 +358,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::keys)
 }
 }
 
 
 // 20.1.2.22 Object.values ( O ), https://tc39.es/ecma262/#sec-object.values
 // 20.1.2.22 Object.values ( O ), https://tc39.es/ecma262/#sec-object.values
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::values)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::values)
 {
 {
     auto* object = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
     auto* object = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
     auto name_list = TRY_OR_DISCARD(object->enumerable_own_property_names(PropertyKind::Value));
     auto name_list = TRY_OR_DISCARD(object->enumerable_own_property_names(PropertyKind::Value));
@@ -366,7 +366,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::values)
 }
 }
 
 
 // 20.1.2.5 Object.entries ( O ), https://tc39.es/ecma262/#sec-object.entries
 // 20.1.2.5 Object.entries ( O ), https://tc39.es/ecma262/#sec-object.entries
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::entries)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::entries)
 {
 {
     auto* object = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
     auto* object = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
     auto name_list = TRY_OR_DISCARD(object->enumerable_own_property_names(PropertyKind::KeyAndValue));
     auto name_list = TRY_OR_DISCARD(object->enumerable_own_property_names(PropertyKind::KeyAndValue));
@@ -374,7 +374,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::entries)
 }
 }
 
 
 // 20.1.2.2 Object.create ( O, Properties ), https://tc39.es/ecma262/#sec-object.create
 // 20.1.2.2 Object.create ( O, Properties ), https://tc39.es/ecma262/#sec-object.create
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::create)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::create)
 {
 {
     auto proto = vm.argument(0);
     auto proto = vm.argument(0);
     auto properties = vm.argument(1);
     auto properties = vm.argument(1);
@@ -399,7 +399,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::create)
 }
 }
 
 
 // 1 Object.hasOwn ( O, P ), https://tc39.es/proposal-accessible-object-hasownproperty/#sec-object.hasown
 // 1 Object.hasOwn ( O, P ), https://tc39.es/proposal-accessible-object-hasownproperty/#sec-object.hasown
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::has_own)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::has_own)
 {
 {
     // 1. Let obj be ? ToObject(O).
     // 1. Let obj be ? ToObject(O).
     auto* object = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
     auto* object = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
@@ -412,7 +412,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::has_own)
 }
 }
 
 
 // 20.1.2.1 Object.assign ( target, ...sources ), https://tc39.es/ecma262/#sec-object.assign
 // 20.1.2.1 Object.assign ( target, ...sources ), https://tc39.es/ecma262/#sec-object.assign
-JS_DEFINE_NATIVE_FUNCTION(ObjectConstructor::assign)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectConstructor::assign)
 {
 {
     // 1. Let to be ? ToObject(target).
     // 1. Let to be ? ToObject(target).
     auto* to = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));
     auto* to = TRY_OR_DISCARD(vm.argument(0).to_object(global_object));

+ 22 - 22
Userland/Libraries/LibJS/Runtime/ObjectConstructor.h

@@ -25,28 +25,28 @@ public:
 private:
 private:
     virtual bool has_constructor() const override { return true; }
     virtual bool has_constructor() const override { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(define_property);
-    JS_DECLARE_NATIVE_FUNCTION(define_properties);
-    JS_DECLARE_NATIVE_FUNCTION(is);
-    JS_DECLARE_NATIVE_FUNCTION(get_own_property_descriptor);
-    JS_DECLARE_NATIVE_FUNCTION(get_own_property_descriptors);
-    JS_DECLARE_NATIVE_FUNCTION(get_own_property_names);
-    JS_DECLARE_NATIVE_FUNCTION(get_own_property_symbols);
-    JS_DECLARE_NATIVE_FUNCTION(get_prototype_of);
-    JS_DECLARE_NATIVE_FUNCTION(set_prototype_of);
-    JS_DECLARE_NATIVE_FUNCTION(is_extensible);
-    JS_DECLARE_NATIVE_FUNCTION(is_frozen);
-    JS_DECLARE_NATIVE_FUNCTION(is_sealed);
-    JS_DECLARE_NATIVE_FUNCTION(prevent_extensions);
-    JS_DECLARE_NATIVE_FUNCTION(seal);
-    JS_DECLARE_NATIVE_FUNCTION(freeze);
-    JS_DECLARE_NATIVE_FUNCTION(from_entries);
-    JS_DECLARE_NATIVE_FUNCTION(keys);
-    JS_DECLARE_NATIVE_FUNCTION(values);
-    JS_DECLARE_NATIVE_FUNCTION(entries);
-    JS_DECLARE_NATIVE_FUNCTION(create);
-    JS_DECLARE_NATIVE_FUNCTION(has_own);
-    JS_DECLARE_NATIVE_FUNCTION(assign);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(define_property);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(define_properties);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_own_property_descriptor);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_own_property_descriptors);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_own_property_names);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_own_property_symbols);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_prototype_of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_prototype_of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is_extensible);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is_frozen);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is_sealed);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(prevent_extensions);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(seal);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(freeze);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(from_entries);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(keys);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(values);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(entries);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(create);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(has_own);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(assign);
 };
 };
 
 
 }
 }

+ 12 - 12
Userland/Libraries/LibJS/Runtime/ObjectPrototype.cpp

@@ -60,7 +60,7 @@ ThrowCompletionOr<bool> ObjectPrototype::internal_set_prototype_of(Object* proto
 }
 }
 
 
 // 20.1.3.2 Object.prototype.hasOwnProperty ( V ), https://tc39.es/ecma262/#sec-object.prototype.hasownproperty
 // 20.1.3.2 Object.prototype.hasOwnProperty ( V ), https://tc39.es/ecma262/#sec-object.prototype.hasownproperty
-JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::has_own_property)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectPrototype::has_own_property)
 {
 {
     auto property_key = TRY_OR_DISCARD(vm.argument(0).to_property_key(global_object));
     auto property_key = TRY_OR_DISCARD(vm.argument(0).to_property_key(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
@@ -68,7 +68,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::has_own_property)
 }
 }
 
 
 // 20.1.3.6 Object.prototype.toString ( ), https://tc39.es/ecma262/#sec-object.prototype.tostring
 // 20.1.3.6 Object.prototype.toString ( ), https://tc39.es/ecma262/#sec-object.prototype.tostring
-JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::to_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectPrototype::to_string)
 {
 {
     auto this_value = vm.this_value(global_object);
     auto this_value = vm.this_value(global_object);
 
 
@@ -136,20 +136,20 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::to_string)
 }
 }
 
 
 // 20.1.3.5 Object.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] ), https://tc39.es/ecma262/#sec-object.prototype.tolocalestring
 // 20.1.3.5 Object.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] ), https://tc39.es/ecma262/#sec-object.prototype.tolocalestring
-JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::to_locale_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectPrototype::to_locale_string)
 {
 {
     auto this_value = vm.this_value(global_object);
     auto this_value = vm.this_value(global_object);
     return TRY_OR_DISCARD(this_value.invoke(global_object, vm.names.toString));
     return TRY_OR_DISCARD(this_value.invoke(global_object, vm.names.toString));
 }
 }
 
 
 // 20.1.3.7 Object.prototype.valueOf ( ), https://tc39.es/ecma262/#sec-object.prototype.valueof
 // 20.1.3.7 Object.prototype.valueOf ( ), https://tc39.es/ecma262/#sec-object.prototype.valueof
-JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::value_of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectPrototype::value_of)
 {
 {
     return TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     return TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 }
 }
 
 
 // 20.1.3.4 Object.prototype.propertyIsEnumerable ( V ), https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
 // 20.1.3.4 Object.prototype.propertyIsEnumerable ( V ), https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
-JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::property_is_enumerable)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectPrototype::property_is_enumerable)
 {
 {
     // 1. Let P be ? ToPropertyKey(V).
     // 1. Let P be ? ToPropertyKey(V).
     auto property_key = TRY_OR_DISCARD(vm.argument(0).to_property_key(global_object));
     auto property_key = TRY_OR_DISCARD(vm.argument(0).to_property_key(global_object));
@@ -165,7 +165,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::property_is_enumerable)
 }
 }
 
 
 // 20.1.3.3 Object.prototype.isPrototypeOf ( V ), https://tc39.es/ecma262/#sec-object.prototype.isprototypeof
 // 20.1.3.3 Object.prototype.isPrototypeOf ( V ), https://tc39.es/ecma262/#sec-object.prototype.isprototypeof
-JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::is_prototype_of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectPrototype::is_prototype_of)
 {
 {
     auto object_argument = vm.argument(0);
     auto object_argument = vm.argument(0);
     if (!object_argument.is_object())
     if (!object_argument.is_object())
@@ -183,7 +183,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::is_prototype_of)
 }
 }
 
 
 // B.2.2.2 Object.prototype.__defineGetter__ ( P, getter ), https://tc39.es/ecma262/#sec-object.prototype.__defineGetter__
 // B.2.2.2 Object.prototype.__defineGetter__ ( P, getter ), https://tc39.es/ecma262/#sec-object.prototype.__defineGetter__
-JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::define_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectPrototype::define_getter)
 {
 {
     auto* object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -203,7 +203,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::define_getter)
 }
 }
 
 
 // B.2.2.3 Object.prototype.__defineSetter__ ( P, getter ), https://tc39.es/ecma262/#sec-object.prototype.__defineSetter__
 // B.2.2.3 Object.prototype.__defineSetter__ ( P, getter ), https://tc39.es/ecma262/#sec-object.prototype.__defineSetter__
-JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::define_setter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectPrototype::define_setter)
 {
 {
     auto* object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -223,7 +223,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::define_setter)
 }
 }
 
 
 // B.2.2.4 Object.prototype.__lookupGetter__ ( P ), https://tc39.es/ecma262/#sec-object.prototype.__lookupGetter__
 // B.2.2.4 Object.prototype.__lookupGetter__ ( P ), https://tc39.es/ecma262/#sec-object.prototype.__lookupGetter__
-JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::lookup_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectPrototype::lookup_getter)
 {
 {
     auto* object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -243,7 +243,7 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::lookup_getter)
 }
 }
 
 
 // B.2.2.5 Object.prototype.__lookupSetter__ ( P ), https://tc39.es/ecma262/#sec-object.prototype.__lookupSetter__
 // B.2.2.5 Object.prototype.__lookupSetter__ ( P ), https://tc39.es/ecma262/#sec-object.prototype.__lookupSetter__
-JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::lookup_setter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectPrototype::lookup_setter)
 {
 {
     auto* object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -263,14 +263,14 @@ JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::lookup_setter)
 }
 }
 
 
 // B.2.2.1.1 get Object.prototype.__proto__, https://tc39.es/ecma262/#sec-get-object.prototype.__proto__
 // B.2.2.1.1 get Object.prototype.__proto__, https://tc39.es/ecma262/#sec-get-object.prototype.__proto__
-JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::proto_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectPrototype::proto_getter)
 {
 {
     auto* object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     return TRY_OR_DISCARD(object->internal_get_prototype_of());
     return TRY_OR_DISCARD(object->internal_get_prototype_of());
 }
 }
 
 
 // B.2.2.1.2 set Object.prototype.__proto__, https://tc39.es/ecma262/#sec-set-object.prototype.__proto__
 // B.2.2.1.2 set Object.prototype.__proto__, https://tc39.es/ecma262/#sec-set-object.prototype.__proto__
-JS_DEFINE_NATIVE_FUNCTION(ObjectPrototype::proto_setter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ObjectPrototype::proto_setter)
 {
 {
     auto object = TRY_OR_DISCARD(require_object_coercible(global_object, vm.this_value(global_object)));
     auto object = TRY_OR_DISCARD(require_object_coercible(global_object, vm.this_value(global_object)));
 
 

+ 12 - 12
Userland/Libraries/LibJS/Runtime/ObjectPrototype.h

@@ -24,20 +24,20 @@ public:
     virtual ThrowCompletionOr<bool> internal_set_prototype_of(Object* prototype) override;
     virtual ThrowCompletionOr<bool> internal_set_prototype_of(Object* prototype) override;
 
 
     // public to serve as intrinsic function %Object.prototype.toString%
     // public to serve as intrinsic function %Object.prototype.toString%
-    JS_DECLARE_NATIVE_FUNCTION(to_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_string);
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(has_own_property);
-    JS_DECLARE_NATIVE_FUNCTION(to_locale_string);
-    JS_DECLARE_NATIVE_FUNCTION(value_of);
-    JS_DECLARE_NATIVE_FUNCTION(property_is_enumerable);
-    JS_DECLARE_NATIVE_FUNCTION(is_prototype_of);
-    JS_DECLARE_NATIVE_FUNCTION(define_getter);
-    JS_DECLARE_NATIVE_FUNCTION(define_setter);
-    JS_DECLARE_NATIVE_FUNCTION(lookup_getter);
-    JS_DECLARE_NATIVE_FUNCTION(lookup_setter);
-    JS_DECLARE_NATIVE_FUNCTION(proto_getter);
-    JS_DECLARE_NATIVE_FUNCTION(proto_setter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(has_own_property);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_locale_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(value_of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(property_is_enumerable);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is_prototype_of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(define_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(define_setter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(lookup_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(lookup_setter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(proto_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(proto_setter);
 };
 };
 
 
 }
 }

+ 7 - 7
Userland/Libraries/LibJS/Runtime/PromiseConstructor.cpp

@@ -273,7 +273,7 @@ Value PromiseConstructor::construct(FunctionObject& new_target)
 }
 }
 
 
 // 27.2.4.1 Promise.all ( iterable ), https://tc39.es/ecma262/#sec-promise.all
 // 27.2.4.1 Promise.all ( iterable ), https://tc39.es/ecma262/#sec-promise.all
-JS_DEFINE_NATIVE_FUNCTION(PromiseConstructor::all)
+JS_DEFINE_OLD_NATIVE_FUNCTION(PromiseConstructor::all)
 {
 {
     auto* constructor = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* constructor = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -302,7 +302,7 @@ JS_DEFINE_NATIVE_FUNCTION(PromiseConstructor::all)
 }
 }
 
 
 // 27.2.4.2 Promise.allSettled ( iterable ), https://tc39.es/ecma262/#sec-promise.allsettled
 // 27.2.4.2 Promise.allSettled ( iterable ), https://tc39.es/ecma262/#sec-promise.allsettled
-JS_DEFINE_NATIVE_FUNCTION(PromiseConstructor::all_settled)
+JS_DEFINE_OLD_NATIVE_FUNCTION(PromiseConstructor::all_settled)
 {
 {
     auto* constructor = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* constructor = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -331,7 +331,7 @@ JS_DEFINE_NATIVE_FUNCTION(PromiseConstructor::all_settled)
 }
 }
 
 
 // 27.2.4.3 Promise.any ( iterable ), https://tc39.es/ecma262/#sec-promise.any
 // 27.2.4.3 Promise.any ( iterable ), https://tc39.es/ecma262/#sec-promise.any
-JS_DEFINE_NATIVE_FUNCTION(PromiseConstructor::any)
+JS_DEFINE_OLD_NATIVE_FUNCTION(PromiseConstructor::any)
 {
 {
     auto* constructor = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* constructor = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -360,7 +360,7 @@ JS_DEFINE_NATIVE_FUNCTION(PromiseConstructor::any)
 }
 }
 
 
 // 27.2.4.5 Promise.race ( iterable ), https://tc39.es/ecma262/#sec-promise.race
 // 27.2.4.5 Promise.race ( iterable ), https://tc39.es/ecma262/#sec-promise.race
-JS_DEFINE_NATIVE_FUNCTION(PromiseConstructor::race)
+JS_DEFINE_OLD_NATIVE_FUNCTION(PromiseConstructor::race)
 {
 {
     auto* constructor = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* constructor = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
 
 
@@ -389,7 +389,7 @@ JS_DEFINE_NATIVE_FUNCTION(PromiseConstructor::race)
 }
 }
 
 
 // 27.2.4.6 Promise.reject ( r ), https://tc39.es/ecma262/#sec-promise.reject
 // 27.2.4.6 Promise.reject ( r ), https://tc39.es/ecma262/#sec-promise.reject
-JS_DEFINE_NATIVE_FUNCTION(PromiseConstructor::reject)
+JS_DEFINE_OLD_NATIVE_FUNCTION(PromiseConstructor::reject)
 {
 {
     auto* constructor = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* constructor = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto promise_capability = new_promise_capability(global_object, constructor);
     auto promise_capability = new_promise_capability(global_object, constructor);
@@ -401,7 +401,7 @@ JS_DEFINE_NATIVE_FUNCTION(PromiseConstructor::reject)
 }
 }
 
 
 // 27.2.4.7 Promise.resolve ( x ), https://tc39.es/ecma262/#sec-promise.resolve
 // 27.2.4.7 Promise.resolve ( x ), https://tc39.es/ecma262/#sec-promise.resolve
-JS_DEFINE_NATIVE_FUNCTION(PromiseConstructor::resolve)
+JS_DEFINE_OLD_NATIVE_FUNCTION(PromiseConstructor::resolve)
 {
 {
     auto* constructor = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* constructor = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto value = vm.argument(0);
     auto value = vm.argument(0);
@@ -409,7 +409,7 @@ JS_DEFINE_NATIVE_FUNCTION(PromiseConstructor::resolve)
 }
 }
 
 
 // 27.2.4.8 get Promise [ @@species ], https://tc39.es/ecma262/#sec-get-promise-@@species
 // 27.2.4.8 get Promise [ @@species ], https://tc39.es/ecma262/#sec-get-promise-@@species
-JS_DEFINE_NATIVE_FUNCTION(PromiseConstructor::symbol_species_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(PromiseConstructor::symbol_species_getter)
 {
 {
     return vm.this_value(global_object);
     return vm.this_value(global_object);
 }
 }

+ 8 - 8
Userland/Libraries/LibJS/Runtime/PromiseConstructor.h

@@ -24,14 +24,14 @@ public:
 private:
 private:
     virtual bool has_constructor() const override { return true; }
     virtual bool has_constructor() const override { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(all);
-    JS_DECLARE_NATIVE_FUNCTION(all_settled);
-    JS_DECLARE_NATIVE_FUNCTION(any);
-    JS_DECLARE_NATIVE_FUNCTION(race);
-    JS_DECLARE_NATIVE_FUNCTION(reject);
-    JS_DECLARE_NATIVE_FUNCTION(resolve);
-
-    JS_DECLARE_NATIVE_FUNCTION(symbol_species_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(all);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(all_settled);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(any);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(race);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(reject);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(resolve);
+
+    JS_DECLARE_OLD_NATIVE_FUNCTION(symbol_species_getter);
 };
 };
 
 
 }
 }

+ 3 - 3
Userland/Libraries/LibJS/Runtime/PromisePrototype.cpp

@@ -36,7 +36,7 @@ void PromisePrototype::initialize(GlobalObject& global_object)
 }
 }
 
 
 // 27.2.5.4 Promise.prototype.then ( onFulfilled, onRejected ), https://tc39.es/ecma262/#sec-promise.prototype.then
 // 27.2.5.4 Promise.prototype.then ( onFulfilled, onRejected ), https://tc39.es/ecma262/#sec-promise.prototype.then
-JS_DEFINE_NATIVE_FUNCTION(PromisePrototype::then)
+JS_DEFINE_OLD_NATIVE_FUNCTION(PromisePrototype::then)
 {
 {
     auto* promise = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* promise = TRY_OR_DISCARD(typed_this_object(global_object));
     auto on_fulfilled = vm.argument(0);
     auto on_fulfilled = vm.argument(0);
@@ -49,7 +49,7 @@ JS_DEFINE_NATIVE_FUNCTION(PromisePrototype::then)
 }
 }
 
 
 // 27.2.5.1 Promise.prototype.catch ( onRejected ), https://tc39.es/ecma262/#sec-promise.prototype.catch
 // 27.2.5.1 Promise.prototype.catch ( onRejected ), https://tc39.es/ecma262/#sec-promise.prototype.catch
-JS_DEFINE_NATIVE_FUNCTION(PromisePrototype::catch_)
+JS_DEFINE_OLD_NATIVE_FUNCTION(PromisePrototype::catch_)
 {
 {
     auto this_value = vm.this_value(global_object);
     auto this_value = vm.this_value(global_object);
     auto on_rejected = vm.argument(0);
     auto on_rejected = vm.argument(0);
@@ -57,7 +57,7 @@ JS_DEFINE_NATIVE_FUNCTION(PromisePrototype::catch_)
 }
 }
 
 
 // 27.2.5.3 Promise.prototype.finally ( onFinally ), https://tc39.es/ecma262/#sec-promise.prototype.finally
 // 27.2.5.3 Promise.prototype.finally ( onFinally ), https://tc39.es/ecma262/#sec-promise.prototype.finally
-JS_DEFINE_NATIVE_FUNCTION(PromisePrototype::finally)
+JS_DEFINE_OLD_NATIVE_FUNCTION(PromisePrototype::finally)
 {
 {
     auto* promise = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* promise = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
     auto* constructor = TRY_OR_DISCARD(species_constructor(global_object, *promise, *global_object.promise_constructor()));
     auto* constructor = TRY_OR_DISCARD(species_constructor(global_object, *promise, *global_object.promise_constructor()));

+ 3 - 3
Userland/Libraries/LibJS/Runtime/PromisePrototype.h

@@ -19,9 +19,9 @@ public:
     virtual ~PromisePrototype() override = default;
     virtual ~PromisePrototype() override = default;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(then);
-    JS_DECLARE_NATIVE_FUNCTION(catch_);
-    JS_DECLARE_NATIVE_FUNCTION(finally);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(then);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(catch_);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(finally);
 };
 };
 
 
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/ProxyConstructor.cpp

@@ -63,7 +63,7 @@ Value ProxyConstructor::construct(FunctionObject&)
 }
 }
 
 
 // 28.2.2.1 Proxy.revocable ( target, handler ), https://tc39.es/ecma262/#sec-proxy.revocable
 // 28.2.2.1 Proxy.revocable ( target, handler ), https://tc39.es/ecma262/#sec-proxy.revocable
-JS_DEFINE_NATIVE_FUNCTION(ProxyConstructor::revocable)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ProxyConstructor::revocable)
 {
 {
     auto* proxy = proxy_create(global_object, vm.argument(0), vm.argument(1));
     auto* proxy = proxy_create(global_object, vm.argument(0), vm.argument(1));
     if (vm.exception())
     if (vm.exception())

+ 1 - 1
Userland/Libraries/LibJS/Runtime/ProxyConstructor.h

@@ -25,7 +25,7 @@ public:
 private:
 private:
     virtual bool has_constructor() const override { return true; }
     virtual bool has_constructor() const override { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(revocable);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(revocable);
 };
 };
 
 
 }
 }

+ 13 - 13
Userland/Libraries/LibJS/Runtime/ReflectObject.cpp

@@ -48,7 +48,7 @@ ReflectObject::~ReflectObject()
 }
 }
 
 
 // 28.1.1 Reflect.apply ( target, thisArgument, argumentsList ), https://tc39.es/ecma262/#sec-reflect.apply
 // 28.1.1 Reflect.apply ( target, thisArgument, argumentsList ), https://tc39.es/ecma262/#sec-reflect.apply
-JS_DEFINE_NATIVE_FUNCTION(ReflectObject::apply)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ReflectObject::apply)
 {
 {
     auto target = vm.argument(0);
     auto target = vm.argument(0);
     auto this_argument = vm.argument(1);
     auto this_argument = vm.argument(1);
@@ -69,7 +69,7 @@ JS_DEFINE_NATIVE_FUNCTION(ReflectObject::apply)
 }
 }
 
 
 // 28.1.2 Reflect.construct ( target, argumentsList [ , newTarget ] ), https://tc39.es/ecma262/#sec-reflect.construct
 // 28.1.2 Reflect.construct ( target, argumentsList [ , newTarget ] ), https://tc39.es/ecma262/#sec-reflect.construct
-JS_DEFINE_NATIVE_FUNCTION(ReflectObject::construct)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ReflectObject::construct)
 {
 {
     auto target = vm.argument(0);
     auto target = vm.argument(0);
     auto arguments_list = vm.argument(1);
     auto arguments_list = vm.argument(1);
@@ -99,7 +99,7 @@ JS_DEFINE_NATIVE_FUNCTION(ReflectObject::construct)
 }
 }
 
 
 // 28.1.3 Reflect.defineProperty ( target, propertyKey, attributes ), https://tc39.es/ecma262/#sec-reflect.defineproperty
 // 28.1.3 Reflect.defineProperty ( target, propertyKey, attributes ), https://tc39.es/ecma262/#sec-reflect.defineproperty
-JS_DEFINE_NATIVE_FUNCTION(ReflectObject::define_property)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ReflectObject::define_property)
 {
 {
     auto target = vm.argument(0);
     auto target = vm.argument(0);
     auto property_key = vm.argument(1);
     auto property_key = vm.argument(1);
@@ -122,7 +122,7 @@ JS_DEFINE_NATIVE_FUNCTION(ReflectObject::define_property)
 }
 }
 
 
 // 28.1.4 Reflect.deleteProperty ( target, propertyKey ), https://tc39.es/ecma262/#sec-reflect.deleteproperty
 // 28.1.4 Reflect.deleteProperty ( target, propertyKey ), https://tc39.es/ecma262/#sec-reflect.deleteproperty
-JS_DEFINE_NATIVE_FUNCTION(ReflectObject::delete_property)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ReflectObject::delete_property)
 {
 {
     auto target = vm.argument(0);
     auto target = vm.argument(0);
     auto property_key = vm.argument(1);
     auto property_key = vm.argument(1);
@@ -141,7 +141,7 @@ JS_DEFINE_NATIVE_FUNCTION(ReflectObject::delete_property)
 }
 }
 
 
 // 28.1.5 Reflect.get ( target, propertyKey [ , receiver ] ), https://tc39.es/ecma262/#sec-reflect.get
 // 28.1.5 Reflect.get ( target, propertyKey [ , receiver ] ), https://tc39.es/ecma262/#sec-reflect.get
-JS_DEFINE_NATIVE_FUNCTION(ReflectObject::get)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ReflectObject::get)
 {
 {
     auto target = vm.argument(0);
     auto target = vm.argument(0);
     auto property_key = vm.argument(1);
     auto property_key = vm.argument(1);
@@ -167,7 +167,7 @@ JS_DEFINE_NATIVE_FUNCTION(ReflectObject::get)
 }
 }
 
 
 // 28.1.6 Reflect.getOwnPropertyDescriptor ( target, propertyKey ), https://tc39.es/ecma262/#sec-reflect.getownpropertydescriptor
 // 28.1.6 Reflect.getOwnPropertyDescriptor ( target, propertyKey ), https://tc39.es/ecma262/#sec-reflect.getownpropertydescriptor
-JS_DEFINE_NATIVE_FUNCTION(ReflectObject::get_own_property_descriptor)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ReflectObject::get_own_property_descriptor)
 {
 {
     auto target = vm.argument(0);
     auto target = vm.argument(0);
     auto property_key = vm.argument(1);
     auto property_key = vm.argument(1);
@@ -189,7 +189,7 @@ JS_DEFINE_NATIVE_FUNCTION(ReflectObject::get_own_property_descriptor)
 }
 }
 
 
 // 28.1.7 Reflect.getPrototypeOf ( target ), https://tc39.es/ecma262/#sec-reflect.getprototypeof
 // 28.1.7 Reflect.getPrototypeOf ( target ), https://tc39.es/ecma262/#sec-reflect.getprototypeof
-JS_DEFINE_NATIVE_FUNCTION(ReflectObject::get_prototype_of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ReflectObject::get_prototype_of)
 {
 {
     auto target = vm.argument(0);
     auto target = vm.argument(0);
 
 
@@ -204,7 +204,7 @@ JS_DEFINE_NATIVE_FUNCTION(ReflectObject::get_prototype_of)
 }
 }
 
 
 // 28.1.8 Reflect.has ( target, propertyKey ), https://tc39.es/ecma262/#sec-reflect.has
 // 28.1.8 Reflect.has ( target, propertyKey ), https://tc39.es/ecma262/#sec-reflect.has
-JS_DEFINE_NATIVE_FUNCTION(ReflectObject::has)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ReflectObject::has)
 {
 {
     auto target = vm.argument(0);
     auto target = vm.argument(0);
     auto property_key = vm.argument(1);
     auto property_key = vm.argument(1);
@@ -223,7 +223,7 @@ JS_DEFINE_NATIVE_FUNCTION(ReflectObject::has)
 }
 }
 
 
 // 28.1.9 Reflect.isExtensible ( target ), https://tc39.es/ecma262/#sec-reflect.isextensible
 // 28.1.9 Reflect.isExtensible ( target ), https://tc39.es/ecma262/#sec-reflect.isextensible
-JS_DEFINE_NATIVE_FUNCTION(ReflectObject::is_extensible)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ReflectObject::is_extensible)
 {
 {
     auto target = vm.argument(0);
     auto target = vm.argument(0);
 
 
@@ -238,7 +238,7 @@ JS_DEFINE_NATIVE_FUNCTION(ReflectObject::is_extensible)
 }
 }
 
 
 // 28.1.10 Reflect.ownKeys ( target ), https://tc39.es/ecma262/#sec-reflect.ownkeys
 // 28.1.10 Reflect.ownKeys ( target ), https://tc39.es/ecma262/#sec-reflect.ownkeys
-JS_DEFINE_NATIVE_FUNCTION(ReflectObject::own_keys)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ReflectObject::own_keys)
 {
 {
     auto target = vm.argument(0);
     auto target = vm.argument(0);
 
 
@@ -256,7 +256,7 @@ JS_DEFINE_NATIVE_FUNCTION(ReflectObject::own_keys)
 }
 }
 
 
 // 28.1.11 Reflect.preventExtensions ( target ), https://tc39.es/ecma262/#sec-reflect.preventextensions
 // 28.1.11 Reflect.preventExtensions ( target ), https://tc39.es/ecma262/#sec-reflect.preventextensions
-JS_DEFINE_NATIVE_FUNCTION(ReflectObject::prevent_extensions)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ReflectObject::prevent_extensions)
 {
 {
     auto target = vm.argument(0);
     auto target = vm.argument(0);
 
 
@@ -271,7 +271,7 @@ JS_DEFINE_NATIVE_FUNCTION(ReflectObject::prevent_extensions)
 }
 }
 
 
 // 28.1.12 Reflect.set ( target, propertyKey, V [ , receiver ] ), https://tc39.es/ecma262/#sec-reflect.set
 // 28.1.12 Reflect.set ( target, propertyKey, V [ , receiver ] ), https://tc39.es/ecma262/#sec-reflect.set
-JS_DEFINE_NATIVE_FUNCTION(ReflectObject::set)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ReflectObject::set)
 {
 {
     auto target = vm.argument(0);
     auto target = vm.argument(0);
     auto property_key = vm.argument(1);
     auto property_key = vm.argument(1);
@@ -298,7 +298,7 @@ JS_DEFINE_NATIVE_FUNCTION(ReflectObject::set)
 }
 }
 
 
 // 28.1.13 Reflect.setPrototypeOf ( target, proto ), https://tc39.es/ecma262/#sec-reflect.setprototypeof
 // 28.1.13 Reflect.setPrototypeOf ( target, proto ), https://tc39.es/ecma262/#sec-reflect.setprototypeof
-JS_DEFINE_NATIVE_FUNCTION(ReflectObject::set_prototype_of)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ReflectObject::set_prototype_of)
 {
 {
     auto target = vm.argument(0);
     auto target = vm.argument(0);
     auto proto = vm.argument(1);
     auto proto = vm.argument(1);

+ 13 - 13
Userland/Libraries/LibJS/Runtime/ReflectObject.h

@@ -19,19 +19,19 @@ public:
     virtual ~ReflectObject() override;
     virtual ~ReflectObject() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(apply);
-    JS_DECLARE_NATIVE_FUNCTION(construct);
-    JS_DECLARE_NATIVE_FUNCTION(define_property);
-    JS_DECLARE_NATIVE_FUNCTION(delete_property);
-    JS_DECLARE_NATIVE_FUNCTION(get);
-    JS_DECLARE_NATIVE_FUNCTION(get_own_property_descriptor);
-    JS_DECLARE_NATIVE_FUNCTION(get_prototype_of);
-    JS_DECLARE_NATIVE_FUNCTION(has);
-    JS_DECLARE_NATIVE_FUNCTION(is_extensible);
-    JS_DECLARE_NATIVE_FUNCTION(own_keys);
-    JS_DECLARE_NATIVE_FUNCTION(prevent_extensions);
-    JS_DECLARE_NATIVE_FUNCTION(set);
-    JS_DECLARE_NATIVE_FUNCTION(set_prototype_of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(apply);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(construct);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(define_property);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(delete_property);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_own_property_descriptor);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(get_prototype_of);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(has);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(is_extensible);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(own_keys);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(prevent_extensions);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(set_prototype_of);
 };
 };
 
 
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/RegExpConstructor.cpp

@@ -92,7 +92,7 @@ Value RegExpConstructor::construct(FunctionObject&)
 }
 }
 
 
 // 22.2.4.2 get RegExp [ @@species ], https://tc39.es/ecma262/#sec-get-regexp-@@species
 // 22.2.4.2 get RegExp [ @@species ], https://tc39.es/ecma262/#sec-get-regexp-@@species
-JS_DEFINE_NATIVE_FUNCTION(RegExpConstructor::symbol_species_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(RegExpConstructor::symbol_species_getter)
 {
 {
     return vm.this_value(global_object);
     return vm.this_value(global_object);
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/RegExpConstructor.h

@@ -24,7 +24,7 @@ public:
 private:
 private:
     virtual bool has_constructor() const override { return true; }
     virtual bool has_constructor() const override { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(symbol_species_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(symbol_species_getter);
 };
 };
 
 
 }
 }

+ 12 - 12
Userland/Libraries/LibJS/Runtime/RegExpPrototype.cpp

@@ -280,7 +280,7 @@ Value regexp_exec(GlobalObject& global_object, Object& regexp_object, Utf16Strin
 // 22.2.5.14 get RegExp.prototype.sticky, https://tc39.es/ecma262/#sec-get-regexp.prototype.sticky
 // 22.2.5.14 get RegExp.prototype.sticky, https://tc39.es/ecma262/#sec-get-regexp.prototype.sticky
 // 22.2.5.17 get RegExp.prototype.unicode, https://tc39.es/ecma262/#sec-get-regexp.prototype.unicode
 // 22.2.5.17 get RegExp.prototype.unicode, https://tc39.es/ecma262/#sec-get-regexp.prototype.unicode
 #define __JS_ENUMERATE(flagName, flag_name, flag_char)                                            \
 #define __JS_ENUMERATE(flagName, flag_name, flag_char)                                            \
-    JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::flag_name)                                         \
+    JS_DEFINE_OLD_NATIVE_FUNCTION(RegExpPrototype::flag_name)                                     \
     {                                                                                             \
     {                                                                                             \
         auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));                         \
         auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));                         \
         if (!is<RegExpObject>(regexp_object)) {                                                   \
         if (!is<RegExpObject>(regexp_object)) {                                                   \
@@ -297,7 +297,7 @@ JS_ENUMERATE_REGEXP_FLAGS
 #undef __JS_ENUMERATE
 #undef __JS_ENUMERATE
 
 
 // 22.2.5.4 get RegExp.prototype.flags, https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
 // 22.2.5.4 get RegExp.prototype.flags, https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
-JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::flags)
+JS_DEFINE_OLD_NATIVE_FUNCTION(RegExpPrototype::flags)
 {
 {
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     StringBuilder builder(8);
     StringBuilder builder(8);
@@ -313,7 +313,7 @@ JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::flags)
 }
 }
 
 
 // 22.2.5.12 get RegExp.prototype.source, https://tc39.es/ecma262/#sec-get-regexp.prototype.source
 // 22.2.5.12 get RegExp.prototype.source, https://tc39.es/ecma262/#sec-get-regexp.prototype.source
-JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::source)
+JS_DEFINE_OLD_NATIVE_FUNCTION(RegExpPrototype::source)
 {
 {
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     if (!is<RegExpObject>(regexp_object)) {
     if (!is<RegExpObject>(regexp_object)) {
@@ -327,7 +327,7 @@ JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::source)
 }
 }
 
 
 // 22.2.5.2 RegExp.prototype.exec ( string ), https://tc39.es/ecma262/#sec-regexp.prototype.exec
 // 22.2.5.2 RegExp.prototype.exec ( string ), https://tc39.es/ecma262/#sec-regexp.prototype.exec
-JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::exec)
+JS_DEFINE_OLD_NATIVE_FUNCTION(RegExpPrototype::exec)
 {
 {
     auto* regexp_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* regexp_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -337,7 +337,7 @@ JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::exec)
 }
 }
 
 
 // 22.2.5.15 RegExp.prototype.test ( S ), https://tc39.es/ecma262/#sec-regexp.prototype.test
 // 22.2.5.15 RegExp.prototype.test ( S ), https://tc39.es/ecma262/#sec-regexp.prototype.test
-JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::test)
+JS_DEFINE_OLD_NATIVE_FUNCTION(RegExpPrototype::test)
 {
 {
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     auto string = TRY_OR_DISCARD(vm.argument(0).to_utf16_string(global_object));
     auto string = TRY_OR_DISCARD(vm.argument(0).to_utf16_string(global_object));
@@ -350,7 +350,7 @@ JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::test)
 }
 }
 
 
 // 22.2.5.16 RegExp.prototype.toString ( ), https://tc39.es/ecma262/#sec-regexp.prototype.tostring
 // 22.2.5.16 RegExp.prototype.toString ( ), https://tc39.es/ecma262/#sec-regexp.prototype.tostring
-JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::to_string)
+JS_DEFINE_OLD_NATIVE_FUNCTION(RegExpPrototype::to_string)
 {
 {
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     auto source_attr = TRY_OR_DISCARD(regexp_object->get(vm.names.source));
     auto source_attr = TRY_OR_DISCARD(regexp_object->get(vm.names.source));
@@ -363,7 +363,7 @@ JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::to_string)
 }
 }
 
 
 // 22.2.5.7 RegExp.prototype [ @@match ] ( string ), https://tc39.es/ecma262/#sec-regexp.prototype-@@match
 // 22.2.5.7 RegExp.prototype [ @@match ] ( string ), https://tc39.es/ecma262/#sec-regexp.prototype-@@match
-JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::symbol_match)
+JS_DEFINE_OLD_NATIVE_FUNCTION(RegExpPrototype::symbol_match)
 {
 {
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     auto string = TRY_OR_DISCARD(vm.argument(0).to_utf16_string(global_object));
     auto string = TRY_OR_DISCARD(vm.argument(0).to_utf16_string(global_object));
@@ -412,7 +412,7 @@ JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::symbol_match)
 }
 }
 
 
 // 22.2.5.8 RegExp.prototype [ @@matchAll ] ( string ), https://tc39.es/ecma262/#sec-regexp-prototype-matchall
 // 22.2.5.8 RegExp.prototype [ @@matchAll ] ( string ), https://tc39.es/ecma262/#sec-regexp-prototype-matchall
-JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::symbol_match_all)
+JS_DEFINE_OLD_NATIVE_FUNCTION(RegExpPrototype::symbol_match_all)
 {
 {
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     auto string = TRY_OR_DISCARD(vm.argument(0).to_utf16_string(global_object));
     auto string = TRY_OR_DISCARD(vm.argument(0).to_utf16_string(global_object));
@@ -441,7 +441,7 @@ JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::symbol_match_all)
 }
 }
 
 
 // 22.2.5.10 RegExp.prototype [ @@replace ] ( string, replaceValue ), https://tc39.es/ecma262/#sec-regexp.prototype-@@replace
 // 22.2.5.10 RegExp.prototype [ @@replace ] ( string, replaceValue ), https://tc39.es/ecma262/#sec-regexp.prototype-@@replace
-JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::symbol_replace)
+JS_DEFINE_OLD_NATIVE_FUNCTION(RegExpPrototype::symbol_replace)
 {
 {
     auto string_value = vm.argument(0);
     auto string_value = vm.argument(0);
     auto replace_value = vm.argument(1);
     auto replace_value = vm.argument(1);
@@ -553,7 +553,7 @@ JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::symbol_replace)
 }
 }
 
 
 // 22.2.5.11 RegExp.prototype [ @@search ] ( string ), https://tc39.es/ecma262/#sec-regexp.prototype-@@search
 // 22.2.5.11 RegExp.prototype [ @@search ] ( string ), https://tc39.es/ecma262/#sec-regexp.prototype-@@search
-JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::symbol_search)
+JS_DEFINE_OLD_NATIVE_FUNCTION(RegExpPrototype::symbol_search)
 {
 {
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     auto string = TRY_OR_DISCARD(vm.argument(0).to_utf16_string(global_object));
     auto string = TRY_OR_DISCARD(vm.argument(0).to_utf16_string(global_object));
@@ -578,7 +578,7 @@ JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::symbol_search)
 }
 }
 
 
 // 22.2.5.13 RegExp.prototype [ @@split ] ( string, limit ), https://tc39.es/ecma262/#sec-regexp.prototype-@@split
 // 22.2.5.13 RegExp.prototype [ @@split ] ( string, limit ), https://tc39.es/ecma262/#sec-regexp.prototype-@@split
-JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::symbol_split)
+JS_DEFINE_OLD_NATIVE_FUNCTION(RegExpPrototype::symbol_split)
 {
 {
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     auto* regexp_object = TRY_OR_DISCARD(this_object(global_object));
     auto string = TRY_OR_DISCARD(vm.argument(0).to_utf16_string(global_object));
     auto string = TRY_OR_DISCARD(vm.argument(0).to_utf16_string(global_object));
@@ -670,7 +670,7 @@ JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::symbol_split)
 }
 }
 
 
 // B.2.4.1 RegExp.prototype.compile ( pattern, flags ), https://tc39.es/ecma262/#sec-regexp.prototype.compile
 // B.2.4.1 RegExp.prototype.compile ( pattern, flags ), https://tc39.es/ecma262/#sec-regexp.prototype.compile
-JS_DEFINE_NATIVE_FUNCTION(RegExpPrototype::compile)
+JS_DEFINE_OLD_NATIVE_FUNCTION(RegExpPrototype::compile)
 {
 {
     auto* regexp_object = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* regexp_object = TRY_OR_DISCARD(typed_this_object(global_object));
 
 

+ 13 - 13
Userland/Libraries/LibJS/Runtime/RegExpPrototype.h

@@ -24,21 +24,21 @@ public:
     virtual ~RegExpPrototype() override;
     virtual ~RegExpPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(flags);
-    JS_DECLARE_NATIVE_FUNCTION(source);
-
-    JS_DECLARE_NATIVE_FUNCTION(exec);
-    JS_DECLARE_NATIVE_FUNCTION(test);
-    JS_DECLARE_NATIVE_FUNCTION(to_string);
-    JS_DECLARE_NATIVE_FUNCTION(symbol_match);
-    JS_DECLARE_NATIVE_FUNCTION(symbol_match_all);
-    JS_DECLARE_NATIVE_FUNCTION(symbol_replace);
-    JS_DECLARE_NATIVE_FUNCTION(symbol_search);
-    JS_DECLARE_NATIVE_FUNCTION(symbol_split);
-    JS_DECLARE_NATIVE_FUNCTION(compile);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(flags);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(source);
+
+    JS_DECLARE_OLD_NATIVE_FUNCTION(exec);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(test);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(to_string);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(symbol_match);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(symbol_match_all);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(symbol_replace);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(symbol_search);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(symbol_split);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(compile);
 
 
 #define __JS_ENUMERATE(_, flag_name, ...) \
 #define __JS_ENUMERATE(_, flag_name, ...) \
-    JS_DECLARE_NATIVE_FUNCTION(flag_name);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(flag_name);
     JS_ENUMERATE_REGEXP_FLAGS
     JS_ENUMERATE_REGEXP_FLAGS
 #undef __JS_ENUMERATE
 #undef __JS_ENUMERATE
 };
 };

+ 1 - 1
Userland/Libraries/LibJS/Runtime/RegExpStringIteratorPrototype.cpp

@@ -30,7 +30,7 @@ void RegExpStringIteratorPrototype::initialize(GlobalObject& global_object)
 }
 }
 
 
 // 22.2.7.2.1 %RegExpStringIteratorPrototype%.next ( ), https://tc39.es/ecma262/#sec-%regexpstringiteratorprototype%.next
 // 22.2.7.2.1 %RegExpStringIteratorPrototype%.next ( ), https://tc39.es/ecma262/#sec-%regexpstringiteratorprototype%.next
-JS_DEFINE_NATIVE_FUNCTION(RegExpStringIteratorPrototype::next)
+JS_DEFINE_OLD_NATIVE_FUNCTION(RegExpStringIteratorPrototype::next)
 {
 {
     // For details, see the 'closure' of: https://tc39.es/ecma262/#sec-createregexpstringiterator
     // For details, see the 'closure' of: https://tc39.es/ecma262/#sec-createregexpstringiterator
     auto* iterator = TRY_OR_DISCARD(typed_this_value(global_object));
     auto* iterator = TRY_OR_DISCARD(typed_this_value(global_object));

+ 1 - 1
Userland/Libraries/LibJS/Runtime/RegExpStringIteratorPrototype.h

@@ -21,7 +21,7 @@ public:
     virtual void initialize(GlobalObject&) override;
     virtual void initialize(GlobalObject&) override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(next);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(next);
 };
 };
 
 
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/SetConstructor.cpp

@@ -71,7 +71,7 @@ Value SetConstructor::construct(FunctionObject& new_target)
 }
 }
 
 
 // 24.2.2.2 get Set [ @@species ], https://tc39.es/ecma262/#sec-get-set-@@species
 // 24.2.2.2 get Set [ @@species ], https://tc39.es/ecma262/#sec-get-set-@@species
-JS_DEFINE_NATIVE_FUNCTION(SetConstructor::symbol_species_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SetConstructor::symbol_species_getter)
 {
 {
     return vm.this_value(global_object);
     return vm.this_value(global_object);
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/SetConstructor.h

@@ -24,7 +24,7 @@ public:
 private:
 private:
     virtual bool has_constructor() const override { return true; }
     virtual bool has_constructor() const override { return true; }
 
 
-    JS_DECLARE_NATIVE_FUNCTION(symbol_species_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(symbol_species_getter);
 };
 };
 
 
 }
 }

+ 1 - 1
Userland/Libraries/LibJS/Runtime/SetIteratorPrototype.cpp

@@ -34,7 +34,7 @@ SetIteratorPrototype::~SetIteratorPrototype()
 }
 }
 
 
 // 24.2.5.2.1 %SetIteratorPrototype%.next ( ), https://tc39.es/ecma262/#sec-%setiteratorprototype%.next
 // 24.2.5.2.1 %SetIteratorPrototype%.next ( ), https://tc39.es/ecma262/#sec-%setiteratorprototype%.next
-JS_DEFINE_NATIVE_FUNCTION(SetIteratorPrototype::next)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SetIteratorPrototype::next)
 {
 {
     auto* set_iterator = TRY_OR_DISCARD(typed_this_value(global_object));
     auto* set_iterator = TRY_OR_DISCARD(typed_this_value(global_object));
     if (set_iterator->done())
     if (set_iterator->done())

+ 1 - 1
Userland/Libraries/LibJS/Runtime/SetIteratorPrototype.h

@@ -20,7 +20,7 @@ public:
     virtual ~SetIteratorPrototype() override;
     virtual ~SetIteratorPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(next);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(next);
 };
 };
 
 
 }
 }

+ 8 - 8
Userland/Libraries/LibJS/Runtime/SetPrototype.cpp

@@ -45,7 +45,7 @@ SetPrototype::~SetPrototype()
 }
 }
 
 
 // 24.2.3.1 Set.prototype.add ( value ), https://tc39.es/ecma262/#sec-set.prototype.add
 // 24.2.3.1 Set.prototype.add ( value ), https://tc39.es/ecma262/#sec-set.prototype.add
-JS_DEFINE_NATIVE_FUNCTION(SetPrototype::add)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SetPrototype::add)
 {
 {
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
     auto value = vm.argument(0);
     auto value = vm.argument(0);
@@ -56,7 +56,7 @@ JS_DEFINE_NATIVE_FUNCTION(SetPrototype::add)
 }
 }
 
 
 // 24.2.3.2 Set.prototype.clear ( ), https://tc39.es/ecma262/#sec-set.prototype.clear
 // 24.2.3.2 Set.prototype.clear ( ), https://tc39.es/ecma262/#sec-set.prototype.clear
-JS_DEFINE_NATIVE_FUNCTION(SetPrototype::clear)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SetPrototype::clear)
 {
 {
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
     set->values().clear();
     set->values().clear();
@@ -64,14 +64,14 @@ JS_DEFINE_NATIVE_FUNCTION(SetPrototype::clear)
 }
 }
 
 
 // 24.2.3.4 Set.prototype.delete ( value ), https://tc39.es/ecma262/#sec-set.prototype.delete
 // 24.2.3.4 Set.prototype.delete ( value ), https://tc39.es/ecma262/#sec-set.prototype.delete
-JS_DEFINE_NATIVE_FUNCTION(SetPrototype::delete_)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SetPrototype::delete_)
 {
 {
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
     return Value(set->values().remove(vm.argument(0)));
     return Value(set->values().remove(vm.argument(0)));
 }
 }
 
 
 // 24.2.3.5 Set.prototype.entries ( ), https://tc39.es/ecma262/#sec-set.prototype.entries
 // 24.2.3.5 Set.prototype.entries ( ), https://tc39.es/ecma262/#sec-set.prototype.entries
-JS_DEFINE_NATIVE_FUNCTION(SetPrototype::entries)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SetPrototype::entries)
 {
 {
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -79,7 +79,7 @@ JS_DEFINE_NATIVE_FUNCTION(SetPrototype::entries)
 }
 }
 
 
 // 24.2.3.6 Set.prototype.forEach ( callbackfn [ , thisArg ] ), https://tc39.es/ecma262/#sec-set.prototype.foreach
 // 24.2.3.6 Set.prototype.forEach ( callbackfn [ , thisArg ] ), https://tc39.es/ecma262/#sec-set.prototype.foreach
-JS_DEFINE_NATIVE_FUNCTION(SetPrototype::for_each)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SetPrototype::for_each)
 {
 {
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
     if (!vm.argument(0).is_function()) {
     if (!vm.argument(0).is_function()) {
@@ -96,7 +96,7 @@ JS_DEFINE_NATIVE_FUNCTION(SetPrototype::for_each)
 }
 }
 
 
 // 24.2.3.7 Set.prototype.has ( value ), https://tc39.es/ecma262/#sec-set.prototype.has
 // 24.2.3.7 Set.prototype.has ( value ), https://tc39.es/ecma262/#sec-set.prototype.has
-JS_DEFINE_NATIVE_FUNCTION(SetPrototype::has)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SetPrototype::has)
 {
 {
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
     auto& values = set->values();
     auto& values = set->values();
@@ -104,7 +104,7 @@ JS_DEFINE_NATIVE_FUNCTION(SetPrototype::has)
 }
 }
 
 
 // 24.2.3.10 Set.prototype.values ( ), https://tc39.es/ecma262/#sec-set.prototype.values
 // 24.2.3.10 Set.prototype.values ( ), https://tc39.es/ecma262/#sec-set.prototype.values
-JS_DEFINE_NATIVE_FUNCTION(SetPrototype::values)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SetPrototype::values)
 {
 {
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
 
 
@@ -112,7 +112,7 @@ JS_DEFINE_NATIVE_FUNCTION(SetPrototype::values)
 }
 }
 
 
 // 24.2.3.9 get Set.prototype.size, https://tc39.es/ecma262/#sec-get-set.prototype.size
 // 24.2.3.9 get Set.prototype.size, https://tc39.es/ecma262/#sec-get-set.prototype.size
-JS_DEFINE_NATIVE_FUNCTION(SetPrototype::size_getter)
+JS_DEFINE_OLD_NATIVE_FUNCTION(SetPrototype::size_getter)
 {
 {
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
     auto* set = TRY_OR_DISCARD(typed_this_object(global_object));
     return Value(set->values().size());
     return Value(set->values().size());

+ 9 - 9
Userland/Libraries/LibJS/Runtime/SetPrototype.h

@@ -20,15 +20,15 @@ public:
     virtual ~SetPrototype() override;
     virtual ~SetPrototype() override;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(add);
-    JS_DECLARE_NATIVE_FUNCTION(clear);
-    JS_DECLARE_NATIVE_FUNCTION(delete_);
-    JS_DECLARE_NATIVE_FUNCTION(entries);
-    JS_DECLARE_NATIVE_FUNCTION(for_each);
-    JS_DECLARE_NATIVE_FUNCTION(has);
-    JS_DECLARE_NATIVE_FUNCTION(values);
-
-    JS_DECLARE_NATIVE_FUNCTION(size_getter);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(add);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(clear);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(delete_);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(entries);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(for_each);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(has);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(values);
+
+    JS_DECLARE_OLD_NATIVE_FUNCTION(size_getter);
 };
 };
 
 
 }
 }

+ 2 - 2
Userland/Libraries/LibJS/Runtime/ShadowRealmPrototype.cpp

@@ -30,7 +30,7 @@ void ShadowRealmPrototype::initialize(GlobalObject& global_object)
 }
 }
 
 
 // 3.4.1 ShadowRealm.prototype.evaluate ( sourceText ), https://tc39.es/proposal-shadowrealm/#sec-shadowrealm.prototype.evaluate
 // 3.4.1 ShadowRealm.prototype.evaluate ( sourceText ), https://tc39.es/proposal-shadowrealm/#sec-shadowrealm.prototype.evaluate
-JS_DEFINE_NATIVE_FUNCTION(ShadowRealmPrototype::evaluate)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ShadowRealmPrototype::evaluate)
 {
 {
     auto source_text = vm.argument(0);
     auto source_text = vm.argument(0);
 
 
@@ -55,7 +55,7 @@ JS_DEFINE_NATIVE_FUNCTION(ShadowRealmPrototype::evaluate)
 }
 }
 
 
 // 3.4.2 ShadowRealm.prototype.importValue ( specifier, exportName ), https://tc39.es/proposal-shadowrealm/#sec-shadowrealm.prototype.importvalue
 // 3.4.2 ShadowRealm.prototype.importValue ( specifier, exportName ), https://tc39.es/proposal-shadowrealm/#sec-shadowrealm.prototype.importvalue
-JS_DEFINE_NATIVE_FUNCTION(ShadowRealmPrototype::import_value)
+JS_DEFINE_OLD_NATIVE_FUNCTION(ShadowRealmPrototype::import_value)
 {
 {
     auto specifier = vm.argument(0);
     auto specifier = vm.argument(0);
     auto export_name = vm.argument(1);
     auto export_name = vm.argument(1);

+ 2 - 2
Userland/Libraries/LibJS/Runtime/ShadowRealmPrototype.h

@@ -20,8 +20,8 @@ public:
     virtual ~ShadowRealmPrototype() override = default;
     virtual ~ShadowRealmPrototype() override = default;
 
 
 private:
 private:
-    JS_DECLARE_NATIVE_FUNCTION(evaluate);
-    JS_DECLARE_NATIVE_FUNCTION(import_value);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(evaluate);
+    JS_DECLARE_OLD_NATIVE_FUNCTION(import_value);
 };
 };
 
 
 }
 }

Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác