Fix the ESNext build with disabled JERRY_BUILTIN_PROXY (#4320)

With a disabled JERRY_BUILTIN_PROXY option the build fails becouse
of missing guards.

The run-test buildoption_test is also extended with this.

JerryScript-DCO-1.0-Signed-off-by: Adam Kallai kadam@inf.u-szeged.hu
This commit is contained in:
Ádám Kallai
2020-11-02 09:30:43 +01:00
committed by GitHub
parent 11f7463986
commit d0e385f9eb
4 changed files with 12 additions and 4 deletions
+4
View File
@@ -861,6 +861,7 @@ ecma_gc_mark (ecma_object_t *object_p) /**< object to mark from */
ecma_gc_set_object_visited (ecma_get_object_from_value (executor_p->remaining_elements)); ecma_gc_set_object_visited (ecma_get_object_from_value (executor_p->remaining_elements));
break; break;
} }
#if ENABLED (JERRY_BUILTIN_PROXY)
case ECMA_NATIVE_HANDLER_PROXY_REVOKE: case ECMA_NATIVE_HANDLER_PROXY_REVOKE:
{ {
ecma_revocable_proxy_object_t *rev_proxy_p = (ecma_revocable_proxy_object_t *) object_p; ecma_revocable_proxy_object_t *rev_proxy_p = (ecma_revocable_proxy_object_t *) object_p;
@@ -872,6 +873,7 @@ ecma_gc_mark (ecma_object_t *object_p) /**< object to mark from */
break; break;
} }
#endif /* ENABLED (JERRY_BUILTIN_PROXY) */
case ECMA_NATIVE_HANDLER_VALUE_THUNK: case ECMA_NATIVE_HANDLER_VALUE_THUNK:
case ECMA_NATIVE_HANDLER_VALUE_THROWER: case ECMA_NATIVE_HANDLER_VALUE_THROWER:
{ {
@@ -1311,11 +1313,13 @@ ecma_gc_free_object (ecma_object_t *object_p) /**< object to free */
ext_object_size = sizeof (ecma_promise_all_executor_t); ext_object_size = sizeof (ecma_promise_all_executor_t);
break; break;
} }
#if ENABLED (JERRY_BUILTIN_PROXY)
case ECMA_NATIVE_HANDLER_PROXY_REVOKE: case ECMA_NATIVE_HANDLER_PROXY_REVOKE:
{ {
ext_object_size = sizeof (ecma_revocable_proxy_object_t); ext_object_size = sizeof (ecma_revocable_proxy_object_t);
break; break;
} }
#endif /* ENABLED (JERRY_BUILTIN_PROXY) */
case ECMA_NATIVE_HANDLER_VALUE_THUNK: case ECMA_NATIVE_HANDLER_VALUE_THUNK:
case ECMA_NATIVE_HANDLER_VALUE_THROWER: case ECMA_NATIVE_HANDLER_VALUE_THROWER:
{ {
@@ -19,6 +19,8 @@ ECMA_NATIVE_HANDLER (ECMA_NATIVE_HANDLER_PROMISE_THEN_FINALLY, ecma_promise_then
ECMA_NATIVE_HANDLER (ECMA_NATIVE_HANDLER_PROMISE_CATCH_FINALLY, ecma_promise_catch_finally_cb, 1) ECMA_NATIVE_HANDLER (ECMA_NATIVE_HANDLER_PROMISE_CATCH_FINALLY, ecma_promise_catch_finally_cb, 1)
ECMA_NATIVE_HANDLER (ECMA_NATIVE_HANDLER_PROMISE_ALL_HELPER, ecma_promise_all_handler_cb, 1) ECMA_NATIVE_HANDLER (ECMA_NATIVE_HANDLER_PROMISE_ALL_HELPER, ecma_promise_all_handler_cb, 1)
ECMA_NATIVE_HANDLER (ECMA_NATIVE_HANDLER_PROMISE_CAPABILITY_EXECUTOR, ecma_op_get_capabilities_executor_cb, 2) ECMA_NATIVE_HANDLER (ECMA_NATIVE_HANDLER_PROMISE_CAPABILITY_EXECUTOR, ecma_op_get_capabilities_executor_cb, 2)
#if ENABLED (JERRY_BUILTIN_PROXY)
ECMA_NATIVE_HANDLER (ECMA_NATIVE_HANDLER_PROXY_REVOKE, ecma_proxy_revoke_cb, 0) ECMA_NATIVE_HANDLER (ECMA_NATIVE_HANDLER_PROXY_REVOKE, ecma_proxy_revoke_cb, 0)
#endif /* ENABLED (JERRY_BUILTIN_PROXY) */
ECMA_NATIVE_HANDLER (ECMA_NATIVE_HANDLER_VALUE_THUNK, ecma_value_thunk_helper_cb, 0) ECMA_NATIVE_HANDLER (ECMA_NATIVE_HANDLER_VALUE_THUNK, ecma_value_thunk_helper_cb, 0)
ECMA_NATIVE_HANDLER (ECMA_NATIVE_HANDLER_VALUE_THROWER, ecma_value_thunk_thrower_cb, 0) ECMA_NATIVE_HANDLER (ECMA_NATIVE_HANDLER_VALUE_THROWER, ecma_value_thunk_thrower_cb, 0)
+4 -4
View File
@@ -2318,12 +2318,12 @@ ecma_object_sort_property_names (ecma_collection_t *prop_names_p, /**< prop name
ecma_collection_t * ecma_collection_t *
ecma_op_object_own_property_keys (ecma_object_t *obj_p) /**< object */ ecma_op_object_own_property_keys (ecma_object_t *obj_p) /**< object */
{ {
#if ENABLED (JERRY_ESNEXT) #if ENABLED (JERRY_BUILTIN_PROXY)
if (ECMA_OBJECT_IS_PROXY (obj_p)) if (ECMA_OBJECT_IS_PROXY (obj_p))
{ {
return ecma_proxy_object_own_property_keys (obj_p); return ecma_proxy_object_own_property_keys (obj_p);
} }
#endif /* ENABLED (JERRY_ESNEXT) */ #endif /* ENABLED (JERRY_BUILTIN_PROXY) */
if (ecma_op_object_is_fast_array (obj_p)) if (ecma_op_object_is_fast_array (obj_p))
{ {
@@ -2677,7 +2677,7 @@ ecma_object_get_class_name (ecma_object_t *obj_p) /**< object */
{ {
return LIT_MAGIC_STRING_FUNCTION_UL; return LIT_MAGIC_STRING_FUNCTION_UL;
} }
#if ENABLED (JERRY_ESNEXT) #if ENABLED (JERRY_BUILTIN_PROXY)
case ECMA_OBJECT_TYPE_PROXY: case ECMA_OBJECT_TYPE_PROXY:
{ {
ecma_proxy_object_t *proxy_obj_p = (ecma_proxy_object_t *) obj_p; ecma_proxy_object_t *proxy_obj_p = (ecma_proxy_object_t *) obj_p;
@@ -2689,7 +2689,7 @@ ecma_object_get_class_name (ecma_object_t *obj_p) /**< object */
} }
return LIT_MAGIC_STRING_OBJECT_UL; return LIT_MAGIC_STRING_OBJECT_UL;
} }
#endif /* ENABLED (JERRY_ESNEXT) */ #endif /* ENABLED (JERRY_BUILTIN_PROXY) */
default: default:
{ {
JERRY_ASSERT (type == ECMA_OBJECT_TYPE_GENERAL || type == ECMA_OBJECT_TYPE_PROXY); JERRY_ASSERT (type == ECMA_OBJECT_TYPE_GENERAL || type == ECMA_OBJECT_TYPE_PROXY);
+2
View File
@@ -166,6 +166,8 @@ JERRY_BUILDOPTIONS = [
['--jerry-debugger=on']), ['--jerry-debugger=on']),
Options('buildoption_test-module-off', Options('buildoption_test-module-off',
['--compile-flag=-DJERRY_MODULE_SYSTEM=0', '--lto=off']), ['--compile-flag=-DJERRY_MODULE_SYSTEM=0', '--lto=off']),
Options('buildoption_test-builtin-proxy-off',
['--compile-flag=-DJERRY_BUILTIN_PROXY=0']),
] ]
def get_arguments(): def get_arguments():