diff --git a/flecs.c b/flecs.c index 2114af354..34722b53b 100644 --- a/flecs.c +++ b/flecs.c @@ -16824,7 +16824,8 @@ ecs_entity_t ecs_cpp_component_register_explicit( .name = name, .sep = "::", .root_sep = "::", - .symbol = symbol + .symbol = symbol, + .use_low_id = true }), .type.size = flecs_uto(int32_t, size), .type.alignment = flecs_uto(int32_t, alignment) @@ -16835,7 +16836,8 @@ ecs_entity_t ecs_cpp_component_register_explicit( .name = name, .sep = "::", .root_sep = "::", - .symbol = symbol + .symbol = symbol, + .use_low_id = true }); } diff --git a/src/addons/flecs_cpp.c b/src/addons/flecs_cpp.c index 02cac4246..de882dc53 100644 --- a/src/addons/flecs_cpp.c +++ b/src/addons/flecs_cpp.c @@ -358,7 +358,8 @@ ecs_entity_t ecs_cpp_component_register_explicit( .name = name, .sep = "::", .root_sep = "::", - .symbol = symbol + .symbol = symbol, + .use_low_id = true }), .type.size = flecs_uto(int32_t, size), .type.alignment = flecs_uto(int32_t, alignment) @@ -369,7 +370,8 @@ ecs_entity_t ecs_cpp_component_register_explicit( .name = name, .sep = "::", .root_sep = "::", - .symbol = symbol + .symbol = symbol, + .use_low_id = true }); } diff --git a/test/cpp_api/project.json b/test/cpp_api/project.json index 462ba04f5..da6bfce01 100644 --- a/test/cpp_api/project.json +++ b/test/cpp_api/project.json @@ -964,7 +964,8 @@ "register_w_root_name", "register_nested_w_root_name", "set_lookup_path", - "run_post_frame" + "run_post_frame", + "component_w_low_id" ] }, { "id": "Singleton", diff --git a/test/cpp_api/src/World.cpp b/test/cpp_api/src/World.cpp index deac3222c..45dca9f1b 100644 --- a/test/cpp_api/src/World.cpp +++ b/test/cpp_api/src/World.cpp @@ -1584,3 +1584,11 @@ void World_run_post_frame() { test_int(ctx, 11); } + +void World_component_w_low_id() { + flecs::world ecs; + + flecs::entity p = ecs.component(); + + test_assert(p.id() < ECS_HI_COMPONENT_ID); +} diff --git a/test/cpp_api/src/main.cpp b/test/cpp_api/src/main.cpp index 23d18e8c7..69c6becc4 100644 --- a/test/cpp_api/src/main.cpp +++ b/test/cpp_api/src/main.cpp @@ -917,6 +917,7 @@ void World_register_w_root_name(void); void World_register_nested_w_root_name(void); void World_set_lookup_path(void); void World_run_post_frame(void); +void World_component_w_low_id(void); // Testsuite 'Singleton' void Singleton_set_get_singleton(void); @@ -4505,6 +4506,10 @@ bake_test_case World_testcases[] = { { "run_post_frame", World_run_post_frame + }, + { + "component_w_low_id", + World_component_w_low_id } }; @@ -4871,7 +4876,7 @@ static bake_test_suite suites[] = { "World", NULL, NULL, - 88, + 89, World_testcases }, {