diff --git a/Makefile b/Makefile index 9906fe8..cbae6d5 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ BLENDER = ../../blender-3.3.1-linux-x64/blender SERVER = src/godot/bin/godot_server.x11.opt.tools.64 -.PHONY: all godot-editor-main export export-models export-clothes export-clean export-linux-demo export-windows-demo export-binaries patch +.PHONY: all godot-editor-main export export-models export-clothes export-clean export-linux-demo export-windows-demo export-binaries patch tests all: godot-editor-main godot-main ARCH=$(patsubst aarch64,arm64,$(shell uname -i)) godot-main: patch @@ -37,4 +37,7 @@ export-binaries: $(SERVER) --path godot --export windows_demo ../export/office-demo-windows.x86_64.exe $(SERVER) --path godot --export-debug windows_demo ../export/office-demo-debug-windows.x86_64.exe +tests: + make -C tests all + diff --git a/tests/Makefile b/tests/Makefile new file mode 100644 index 0000000..a5e997a --- /dev/null +++ b/tests/Makefile @@ -0,0 +1,17 @@ +all: graph_test entity_test rect2i + +CFLAGS = -I../src/flecs/distr +CXXFLAGS = -I../src/flecs/distr -I../src/modules/stream/ui -I../src/godot -I../src/godot/platform/x11 + +graph_test: graph_module.o flecs.o + $(CXX) -o $@ graph_module.o flecs.o + +entity_test: entity_test.o flecs.o + $(CXX) -o $@ entity_test.o flecs.o + +flecs.o: ../src/flecs/distr/flecs.c + $(CC) -o $@ -c $< +rect2i: rect2i.o + $(CXX) -o $@ rect2i.o + +.PHONY: all diff --git a/tests/entity_test b/tests/entity_test new file mode 100755 index 0000000..25f05a0 Binary files /dev/null and b/tests/entity_test differ diff --git a/tests/entity_test.cpp b/tests/entity_test.cpp new file mode 100644 index 0000000..a46866d --- /dev/null +++ b/tests/entity_test.cpp @@ -0,0 +1,4 @@ +int main() +{ + return 0; +} diff --git a/tests/graph_module.cpp b/tests/graph_module.cpp new file mode 100644 index 0000000..3af1595 --- /dev/null +++ b/tests/graph_module.cpp @@ -0,0 +1,74 @@ +#include +#include +#include +#include +#include "flecs.h" +#include "graph_module.h" +namespace WorldEditor +{ + namespace components + { + struct buildings_layout_zone + { + int type; + bool align_wall; + }; + struct buildings_layout_area + { + float area; + }; + struct buildings_layout_system + { + flecs::entity e; + }; + + } +} +struct graph_module +{ + graph_module(flecs::world &ecs) + { + // ecs.module(); + flecs::entity s = ecs.system("ZoneArea2") + .kind(0) + .without() + .write() + .each([](flecs::iter &it, size_t count, + WorldEditor::components::buildings_layout_zone &f) + { + flecs::entity zone_e = it.entity(count); + printf("running...2\n"); + zone_e.set< + WorldEditor::components::buildings_layout_area>( + { 0.0f }); }); + ecs.system("Zone2") + .kind(flecs::OnUpdate) + .each([](flecs::iter &it, size_t count, + WorldEditor::components::buildings_layout_zone &f) + { + flecs::entity zone_e = it.entity(count); + flecs::world w = zone_e.world(); + flecs::entity se = w.lookup("::graph_module::ZoneArea2"); + assert(se.is_valid()); + w.system(se).run(); }); + } +}; + +int main() +{ + flecs::world ecs; + ecs.import (); + printf("1\n"); + flecs::entity e0 = ecs.entity("base"); + flecs::entity e1 = ecs.entity("zone1").child_of(e0); + printf("2\n"); + e1.set({0, false}); + flecs::entity e2 = ecs.entity("zone2").child_of(e0); + printf("3\n"); + e2.set({1, true}); + printf("4\n"); + while (1) + ecs.progress(); + printf("5\n"); + return 0; +} diff --git a/tests/graph_test b/tests/graph_test new file mode 100755 index 0000000..c3c5c97 Binary files /dev/null and b/tests/graph_test differ diff --git a/tests/qqq.txt b/tests/qqq.txt new file mode 100644 index 0000000..3459d66 --- /dev/null +++ b/tests/qqq.txt @@ -0,0 +1,20720 @@ +../src/flecs/distr/flecs.c:1452:32: error: expected unqualified-id before ‘;’ token + 1452 | ecs_query_and_ctx_t and; + | ^ +../src/flecs/distr/flecs.c:1485:28: error: expected unqualified-id before ‘;’ token + 1485 | ecs_query_and_ctx_t and; + | ^ +../src/flecs/distr/flecs.c:1533:28: error: expected unqualified-id before ‘;’ token + 1533 | ecs_query_and_ctx_t and; + | ^ +../src/flecs/distr/flecs.c:1558:32: error: expected unqualified-id before ‘;’ token + 1558 | ecs_query_and_ctx_t and; + | ^ +../src/flecs/distr/flecs.c: In function ‘void flecs_register_trait(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:3601:35: error: invalid conversion from ‘void*’ to ‘ecs_on_trait_ctx_t*’ [-fpermissive] + 3601 | ecs_on_trait_ctx_t *ctx = it->ctx; + | ~~~~^~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_register_trait_pair(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:3608:35: error: invalid conversion from ‘void*’ to ‘ecs_on_trait_ctx_t*’ [-fpermissive] + 3608 | ecs_on_trait_ctx_t *ctx = it->ctx; + | ~~~~^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_register_symmetric(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:3665:41: error: taking address of rvalue [-fpermissive] + 3665 | .entity = ecs_entity(world, { .parent = r }), + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:53: note: in definition of macro ‘ecs_observer’ + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:3665:23: note: in expansion of macro ‘ecs_entity’ + 3665 | .entity = ecs_entity(world, { .parent = r }), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:3664:9: note: in expansion of macro ‘ecs_observer’ + 3664 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_bootstrap_builtin(ecs_world_t*, ecs_table_t*, ecs_entity_t, const char*, ecs_size_t, ecs_size_t)’: +../src/flecs/distr/flecs.c:3802:42: error: invalid conversion from ‘void*’ to ‘EcsComponent*’ [-fpermissive] + 3802 | EcsComponent *component = columns[0].data; + | ~~~~~~~~~~~^~~~ + | | + | void* +../src/flecs/distr/flecs.c:3810:42: error: invalid conversion from ‘void*’ to ‘EcsIdentifier*’ [-fpermissive] + 3810 | EcsIdentifier *name_col = columns[1].data; + | ~~~~~~~~~~~^~~~ + | | + | void* +../src/flecs/distr/flecs.c:3820:44: error: invalid conversion from ‘void*’ to ‘EcsIdentifier*’ [-fpermissive] + 3820 | EcsIdentifier *symbol_col = columns[2].data; + | ~~~~~~~~~~~^~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘ecs_table_t* flecs_bootstrap_component_table(ecs_world_t*)’: +../src/flecs/distr/flecs.c:3902:40: error: invalid conversion from ‘void*’ to ‘ecs_entity_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 3902 | result->data.entities = v_entities.array; + | ~~~~~~~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_bootstrap(ecs_world_t*)’: +../src/flecs/distr/flecs.c:3968:47: error: taking address of rvalue [-fpermissive] + 3968 | flecs_type_info_init(world, EcsComponent, { + | ^ + 3969 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3970 | .on_set = flecs_on_component, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3971 | .on_remove = flecs_on_component + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3972 | }); + | ~ +../src/flecs/distr/flecs.c:2849:28: note: in definition of macro ‘flecs_type_info_init’ + 2849 | &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:3974:48: error: taking address of rvalue [-fpermissive] + 3974 | flecs_type_info_init(world, EcsIdentifier, { + | ^ + 3975 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3976 | .dtor = ecs_dtor(EcsIdentifier), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3977 | .copy = ecs_copy(EcsIdentifier), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3978 | .move = ecs_move(EcsIdentifier), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3979 | .on_set = ecs_on_set(EcsIdentifier), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3980 | .on_remove = ecs_on_set(EcsIdentifier) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3981 | }); + | ~ +../src/flecs/distr/flecs.c:2849:28: note: in definition of macro ‘flecs_type_info_init’ + 2849 | &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:3988:5: error: designator order for field ‘ecs_type_hooks_t::dtor’ does not match declaration order in ‘ecs_type_hooks_t’ + 3988 | }); + | ^ +../src/flecs/distr/flecs.c:2849:28: note: in definition of macro ‘flecs_type_info_init’ + 2849 | &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:3983:42: error: taking address of rvalue [-fpermissive] + 3983 | flecs_type_info_init(world, EcsPoly, { + | ^ + 3984 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3985 | .copy = ecs_copy(EcsPoly), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3986 | .move = ecs_move(EcsPoly), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3987 | .dtor = ecs_dtor(EcsPoly) + | ~~~~~~~~~~~~~~~~~~~~~~~~~ + 3988 | }); + | ~ +../src/flecs/distr/flecs.c:2849:28: note: in definition of macro ‘flecs_type_info_init’ + 2849 | &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:3990:59: error: taking address of rvalue [-fpermissive] + 3990 | flecs_type_info_init(world, EcsDefaultChildComponent, { + | ^ + 3991 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3992 | }); + | ~ +../src/flecs/distr/flecs.c:2849:28: note: in definition of macro ‘flecs_type_info_init’ + 2849 | &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:4017:37: error: taking address of rvalue [-fpermissive] + 4017 | .entity = ecs_entity(world, { .parent = EcsFlecsInternals }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:53: note: in definition of macro ‘ecs_observer’ + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:4017:19: note: in expansion of macro ‘ecs_entity’ + 4017 | .entity = ecs_entity(world, { .parent = EcsFlecsInternals }), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4016:5: note: in expansion of macro ‘ecs_observer’ + 4016 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4171:5: note: in expansion of macro ‘ecs_observer’ + 4171 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4178:5: note: in expansion of macro ‘ecs_observer’ + 4178 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4187:5: note: in expansion of macro ‘ecs_observer’ + 4187 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4196:5: note: in expansion of macro ‘ecs_observer’ + 4196 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4205:5: note: in expansion of macro ‘ecs_observer’ + 4205 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4213:5: note: in expansion of macro ‘ecs_observer’ + 4213 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4222:5: note: in expansion of macro ‘ecs_observer’ + 4222 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4231:5: note: in expansion of macro ‘ecs_observer’ + 4231 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4240:5: note: in expansion of macro ‘ecs_observer’ + 4240 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4251:5: note: in expansion of macro ‘ecs_observer’ + 4251 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4260:5: note: in expansion of macro ‘ecs_observer’ + 4260 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4270:5: note: in expansion of macro ‘ecs_observer’ + 4270 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4281:5: note: in expansion of macro ‘ecs_observer’ + 4281 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4289:5: note: in expansion of macro ‘ecs_observer’ + 4289 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:4299:5: note: in expansion of macro ‘ecs_observer’ + 4299 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_iter_t ecs_each_id(const ecs_world_t*, ecs_id_t)’: +../src/flecs/distr/flecs.c:4379:5: error: designator order for field ‘ecs_iter_t::world’ does not match declaration order in ‘ecs_iter_t’ + 4379 | }; + | ^ +../src/flecs/distr/flecs.c:4398:1: error: jump to label ‘error’ + 4398 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:4368:5: note: in expansion of macro ‘ecs_check’ + 4368 | ecs_check(id != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:4386:22: note: crosses initialization of ‘ecs_each_iter_t* each_iter’ + 4386 | ecs_each_iter_t *each_iter = &it.priv_.iter.each; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:4381:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 4381 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c:4374:16: note: crosses initialization of ‘ecs_iter_t it’ + 4374 | ecs_iter_t it = { + | ^~ +../src/flecs/distr/flecs.c:4370:24: note: crosses initialization of ‘const ecs_world_t* world’ + 4370 | const ecs_world_t *world = ecs_get_world(stage); + | ^~~~~ +../src/flecs/distr/flecs.c:4398:1: error: jump to label ‘error’ + 4398 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:4367:5: note: in expansion of macro ‘ecs_check’ + 4367 | ecs_check(stage != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:4386:22: note: crosses initialization of ‘ecs_each_iter_t* each_iter’ + 4386 | ecs_each_iter_t *each_iter = &it.priv_.iter.each; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:4381:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 4381 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c:4374:16: note: crosses initialization of ‘ecs_iter_t it’ + 4374 | ecs_iter_t it = { + | ^~ +../src/flecs/distr/flecs.c:4370:24: note: crosses initialization of ‘const ecs_world_t* world’ + 4370 | const ecs_world_t *world = ecs_get_world(stage); + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘bool ecs_each_next(ecs_iter_t*)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:4406:38: note: in expansion of macro ‘flecs_table_cache_next’ + 4406 | const ecs_table_record_t *next = flecs_table_cache_next( + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: At global scope: +../src/flecs/distr/flecs.c:4885:28: error: expected unqualified-id before ‘template’ + 4885 | ecs_script_template_t *template; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:4889:15: error: expected unqualified-id before ‘using’ + 4889 | ecs_vec_t using; + | ^~~~~ +../src/flecs/distr/flecs.c:4929:33: error: expected ‘,’ or ‘...’ before ‘template’ + 4929 | ecs_script_template_node_t *template); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:4936:28: error: expected ‘,’ or ‘...’ before ‘template’ + 4936 | ecs_script_template_t *template); + | ^~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘flecs_component_ptr_t flecs_table_get_component(ecs_table_t*, int32_t, int32_t)’: +../src/flecs/distr/flecs.c:5038:1: error: jump to label ‘error’ + 5038 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:5032:5: note: in expansion of macro ‘ecs_check’ + 5032 | ecs_check(column_index < table->column_count, ECS_NOT_A_COMPONENT, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:5033:19: note: crosses initialization of ‘ecs_column_t* column’ + 5033 | ecs_column_t *column = &table->data.columns[column_index]; + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘flecs_component_ptr_t flecs_get_component_ptr(ecs_table_t*, int32_t, ecs_id_record_t*)’: +../src/flecs/distr/flecs.c:5058:46: error: invalid conversion from ‘void*’ to ‘const ecs_sparse_t*’ [-fpermissive] + 5058 | .ptr = flecs_sparse_get_any(idr->sparse, 0, entity) + | ~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1411:25: note: initializing argument 1 of ‘void* flecs_sparse_get_any(const ecs_sparse_t*, ecs_size_t, uint64_t)’ + 1411 | const ecs_sparse_t *sparse, + | ~~~~~~~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c: In function ‘void* flecs_get_base_component(const ecs_world_t*, ecs_table_t*, ecs_id_t, ecs_id_record_t*, int32_t)’: +../src/flecs/distr/flecs.c:5132:50: error: invalid conversion from ‘void*’ to ‘const ecs_sparse_t*’ [-fpermissive] + 5132 | return flecs_sparse_get_any(idr->sparse, 0, base); + | ~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1411:25: note: initializing argument 1 of ‘void* flecs_sparse_get_any(const ecs_sparse_t*, ecs_size_t, uint64_t)’ + 1411 | const ecs_sparse_t *sparse, + | ~~~~~~~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c:5141:1: error: jump to label ‘error’ + 5141 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:5107:5: note: in expansion of macro ‘ecs_check’ + 5107 | ecs_check(tr_isa != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:5112:11: note: crosses initialization of ‘void* ptr’ + 5112 | void *ptr = NULL; + | ^~~ +../src/flecs/distr/flecs.c:5111:32: note: crosses initialization of ‘int32_t end’ + 5111 | int32_t i = tr_isa->index, end = tr_isa->count + tr_isa->index; + | ^~~ +../src/flecs/distr/flecs.c:5111:13: note: crosses initialization of ‘int32_t i’ + 5111 | int32_t i = tr_isa->index, end = tr_isa->count + tr_isa->index; + | ^ +../src/flecs/distr/flecs.c:5110:15: note: crosses initialization of ‘ecs_id_t* ids’ + 5110 | ecs_id_t *ids = type.array; + | ^~~ +../src/flecs/distr/flecs.c:5109:16: note: crosses initialization of ‘ecs_type_t type’ + 5109 | ecs_type_t type = table->type; + | ^~~~ +../src/flecs/distr/flecs.c:5141:1: error: jump to label ‘error’ + 5141 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:5086:5: note: in expansion of macro ‘ecs_check’ + 5086 | ecs_check(recur_depth < ECS_MAX_RECURSION, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:5112:11: note: crosses initialization of ‘void* ptr’ + 5112 | void *ptr = NULL; + | ^~~ +../src/flecs/distr/flecs.c:5111:32: note: crosses initialization of ‘int32_t end’ + 5111 | int32_t i = tr_isa->index, end = tr_isa->count + tr_isa->index; + | ^~~ +../src/flecs/distr/flecs.c:5111:13: note: crosses initialization of ‘int32_t i’ + 5111 | int32_t i = tr_isa->index, end = tr_isa->count + tr_isa->index; + | ^ +../src/flecs/distr/flecs.c:5110:15: note: crosses initialization of ‘ecs_id_t* ids’ + 5110 | ecs_id_t *ids = type.array; + | ^~~ +../src/flecs/distr/flecs.c:5109:16: note: crosses initialization of ‘ecs_type_t type’ + 5109 | ecs_type_t type = table->type; + | ^~~~ +../src/flecs/distr/flecs.c:5105:25: note: crosses initialization of ‘ecs_table_record_t* tr_isa’ + 5105 | ecs_table_record_t *tr_isa = flecs_id_record_get_table( + | ^~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_instantiate_children(ecs_world_t*, ecs_entity_t, ecs_table_t*, int32_t, int32_t, ecs_table_t*, const ecs_instantiate_ctx_t*)’: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘ecs_entity_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2003:36: note: in expansion of macro ‘flecs_alloc’ + 2003 | #define flecs_alloc_n(a, T, count) flecs_alloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:2905:5: note: in expansion of macro ‘flecs_alloc_n’ + 2905 | flecs_alloc_n(&world->allocator, T, count) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:5396:31: note: in expansion of macro ‘flecs_walloc_n’ + 5396 | ecs_entity_t *child_ids = flecs_walloc_n(world, ecs_entity_t, child_count); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_instantiate(ecs_world_t*, ecs_entity_t, ecs_table_t*, int32_t, int32_t, const ecs_instantiate_ctx_t*)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:5513:22: note: in expansion of macro ‘flecs_table_cache_next’ + 5513 | while ((tr = flecs_table_cache_next(&it, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_sparse_on_add(ecs_world_t*, ecs_table_t*, int32_t, int32_t, const ecs_type_t*, bool)’: +../src/flecs/distr/flecs.c:5541:54: error: invalid conversion from ‘void*’ to ‘ecs_sparse_t*’ [-fpermissive] + 5541 | void *ptr = flecs_sparse_ensure(idr->sparse, 0, e); + | ~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1421:19: note: initializing argument 1 of ‘void* flecs_sparse_ensure(ecs_sparse_t*, ecs_size_t, uint64_t)’ + 1421 | ecs_sparse_t *sparse, + | ~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_sparse_on_remove(ecs_world_t*, ecs_table_t*, int32_t, int32_t, const ecs_type_t*)’: +../src/flecs/distr/flecs.c:5583:59: error: invalid conversion from ‘void*’ to ‘ecs_sparse_t*’ [-fpermissive] + 5583 | void *ptr = flecs_sparse_remove_fast(idr->sparse, 0, e); + | ~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1361:19: note: initializing argument 1 of ‘void* flecs_sparse_remove_fast(ecs_sparse_t*, ecs_size_t, uint64_t)’ + 1361 | ecs_sparse_t *sparse, + | ~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_union_on_add(ecs_world_t*, ecs_table_t*, int32_t, int32_t, const ecs_type_t*)’: +../src/flecs/distr/flecs.c:5612:30: error: invalid conversion from ‘void*’ to ‘ecs_switch_t*’ [-fpermissive] + 5612 | idr->sparse, (uint32_t)e, ecs_pair_second(world, id)); + | ~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1912:19: note: initializing argument 1 of ‘bool flecs_switch_set(ecs_switch_t*, uint32_t, uint64_t)’ + 1912 | ecs_switch_t *sw, + | ~~~~~~~~~~~~~~^~ +../src/flecs/distr/flecs.c: In function ‘void flecs_union_on_remove(ecs_world_t*, ecs_table_t*, int32_t, int32_t, const ecs_type_t*)’: +../src/flecs/distr/flecs.c:5637:45: error: invalid conversion from ‘void*’ to ‘ecs_switch_t*’ [-fpermissive] + 5637 | flecs_switch_reset(idr->sparse, (uint32_t)e); + | ~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1919:19: note: initializing argument 1 of ‘bool flecs_switch_reset(ecs_switch_t*, uint32_t)’ + 1919 | ecs_switch_t *sw, + | ~~~~~~~~~~~~~~^~ +../src/flecs/distr/flecs.c: In function ‘void flecs_notify_on_add(ecs_world_t*, ecs_table_t*, ecs_table_t*, int32_t, int32_t, const ecs_table_diff_t*, ecs_flags32_t, ecs_flags64_t, bool, bool)’: +../src/flecs/distr/flecs.c:5676:67: error: taking address of rvalue [-fpermissive] + 5676 | flecs_emit(world, world, set_mask, &(ecs_event_desc_t){ + | ^ + 5677 | .event = EcsOnAdd, + | ~~~~~~~~~~~~~~~~~~ + 5678 | .ids = added, + | ~~~~~~~~~~~~~ + 5679 | .table = table, + | ~~~~~~~~~~~~~~~ + 5680 | .other_table = other_table, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 5681 | .offset = row, + | ~~~~~~~~~~~~~~ + 5682 | .count = count, + | ~~~~~~~~~~~~~~~ + 5683 | .observable = world, + | ~~~~~~~~~~~~~~~~~~~~ + 5684 | .flags = flags + | ~~~~~~~~~~~~~~ + 5685 | }); + | ~ +../src/flecs/distr/flecs.c: In function ‘void flecs_notify_on_remove(ecs_world_t*, ecs_table_t*, ecs_table_t*, int32_t, int32_t, const ecs_table_diff_t*)’: +../src/flecs/distr/flecs.c:5714:61: error: taking address of rvalue [-fpermissive] + 5714 | flecs_emit(world, world, 0, &(ecs_event_desc_t) { + | ^ + 5715 | .event = EcsOnRemove, + | ~~~~~~~~~~~~~~~~~~~~~ + 5716 | .ids = removed, + | ~~~~~~~~~~~~~~~ + 5717 | .table = table, + | ~~~~~~~~~~~~~~~ + 5718 | .other_table = other_table, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 5719 | .offset = row, + | ~~~~~~~~~~~~~~ + 5720 | .count = count, + | ~~~~~~~~~~~~~~~ + 5721 | .observable = world + | ~~~~~~~~~~~~~~~~~~~ + 5722 | }); + | ~ +../src/flecs/distr/flecs.c: In function ‘void flecs_move_entity(ecs_world_t*, ecs_entity_t, ecs_record_t*, ecs_table_t*, ecs_table_diff_t*, bool, ecs_flags32_t)’: +../src/flecs/distr/flecs.c:5851:1: error: jump to label ‘error’ + 5851 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:5822:5: note: in expansion of macro ‘ecs_check’ + 5822 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:5829:13: note: crosses initialization of ‘int32_t dst_row’ + 5829 | int32_t dst_row = flecs_table_append(world, dst_table, entity, + | ^~~~~~~ +../src/flecs/distr/flecs.c: In function ‘flecs_component_ptr_t flecs_ensure(ecs_world_t*, ecs_entity_t, ecs_entity_t, ecs_record_t*)’: +../src/flecs/distr/flecs.c:6197:57: error: invalid conversion from ‘void*’ to ‘const ecs_sparse_t*’ [-fpermissive] + 6197 | dst.ptr = flecs_sparse_get_any(idr->sparse, 0, entity); + | ~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1411:25: note: initializing argument 1 of ‘void* flecs_sparse_get_any(const ecs_sparse_t*, ecs_size_t, uint64_t)’ + 1411 | const ecs_sparse_t *sparse, + | ~~~~~~~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c:6225:1: error: jump to label ‘error’ + 6225 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6176:5: note: in expansion of macro ‘ecs_check’ + 6176 | ecs_check((id & ECS_COMPONENT_MASK) == id || + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6180:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 6180 | ecs_id_record_t *idr = NULL; + | ^~~ +../src/flecs/distr/flecs.c:6225:1: error: jump to label ‘error’ + 6225 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6175:5: note: in expansion of macro ‘ecs_check’ + 6175 | ecs_check(r != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6180:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 6180 | ecs_id_record_t *idr = NULL; + | ^~~ +../src/flecs/distr/flecs.c:6225:1: error: jump to label ‘error’ + 6225 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6174:5: note: in expansion of macro ‘ecs_check’ + 6174 | ecs_check(id != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6180:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 6180 | ecs_id_record_t *idr = NULL; + | ^~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_notify_on_set(ecs_world_t*, ecs_table_t*, int32_t, int32_t, ecs_type_t*, bool)’: +../src/flecs/distr/flecs.c:6321:57: error: taking address of rvalue [-fpermissive] + 6321 | flecs_emit(world, world, 0, &(ecs_event_desc_t) { + | ^ + 6322 | .event = EcsOnSet, + | ~~~~~~~~~~~~~~~~~~ + 6323 | .ids = ids, + | ~~~~~~~~~~~ + 6324 | .table = table, + | ~~~~~~~~~~~~~~~ + 6325 | .offset = row, + | ~~~~~~~~~~~~~~ + 6326 | .count = count, + | ~~~~~~~~~~~~~~~ + 6327 | .observable = world + | ~~~~~~~~~~~~~~~~~~~ + 6328 | }); + | ~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_commit(ecs_world_t*, ecs_entity_t, ecs_record_t*, ecs_table_t*, const ecs_type_t*, const ecs_type_t*)’: +../src/flecs/distr/flecs.c:6395:1: error: jump to label ‘error’ + 6395 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6368:5: note: in expansion of macro ‘ecs_check’ + 6368 | ecs_check(!ecs_is_deferred(world), ECS_INVALID_OPERATION, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6377:22: note: crosses initialization of ‘ecs_table_diff_t diff’ + 6377 | ecs_table_diff_t diff = ECS_TABLE_DIFF_INIT; + | ^~~~ +../src/flecs/distr/flecs.c:6371:18: note: crosses initialization of ‘ecs_table_t* src_table’ + 6371 | ecs_table_t *src_table = NULL; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6395:1: error: jump to label ‘error’ + 6395 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6367:5: note: in expansion of macro ‘ecs_check’ + 6367 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6377:22: note: crosses initialization of ‘ecs_table_diff_t diff’ + 6377 | ecs_table_diff_t diff = ECS_TABLE_DIFF_INIT; + | ^~~~ +../src/flecs/distr/flecs.c:6371:18: note: crosses initialization of ‘ecs_table_t* src_table’ + 6371 | ecs_table_t *src_table = NULL; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_set_with(ecs_world_t*, ecs_id_t)’: +../src/flecs/distr/flecs.c:6408:1: error: jump to label ‘error’ + 6408 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6403:5: note: in expansion of macro ‘ecs_check’ + 6403 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6405:14: note: crosses initialization of ‘ecs_id_t prev’ + 6405 | ecs_id_t prev = stage->with; + | ^~~~ +../src/flecs/distr/flecs.c:6404:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 6404 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_id_t ecs_get_with(const ecs_world_t*)’: +../src/flecs/distr/flecs.c:6418:1: error: jump to label ‘error’ + 6418 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6415:5: note: in expansion of macro ‘ecs_check’ + 6415 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6416:24: note: crosses initialization of ‘const ecs_stage_t* stage’ + 6416 | const ecs_stage_t *stage = flecs_stage_from_readonly_world(world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_new(ecs_world_t*)’: +../src/flecs/distr/flecs.c:6457:1: error: jump to label ‘error’ + 6457 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6425:5: note: in expansion of macro ‘ecs_check’ + 6425 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6431:18: note: crosses initialization of ‘ecs_world_t* unsafe_world’ + 6431 | ecs_world_t *unsafe_world = + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_new_low_id(ecs_world_t*)’: +../src/flecs/distr/flecs.c:6495:1: error: jump to label ‘error’ + 6495 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6474:9: note: in expansion of macro ‘ecs_check’ + 6474 | ecs_check(ecs_get_stage_count(world) <= 1, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6478:18: note: crosses initialization of ‘ecs_entity_t id’ + 6478 | ecs_entity_t id = 0; + | ^~ +../src/flecs/distr/flecs.c:6495:1: error: jump to label ‘error’ + 6495 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6464:5: note: in expansion of macro ‘ecs_check’ + 6464 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6478:18: note: crosses initialization of ‘ecs_entity_t id’ + 6478 | ecs_entity_t id = 0; + | ^~ +../src/flecs/distr/flecs.c:6470:18: note: crosses initialization of ‘ecs_world_t* unsafe_world’ + 6470 | ecs_world_t *unsafe_world = + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_new_w_id(ecs_world_t*, ecs_id_t)’: +../src/flecs/distr/flecs.c:6528:1: error: jump to label ‘error’ + 6528 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6504:5: note: in expansion of macro ‘ecs_check’ + 6504 | ecs_check(ecs_id_is_valid(world, id), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6521:19: note: crosses initialization of ‘ecs_record_t* r’ + 6521 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:6515:18: note: crosses initialization of ‘ecs_table_t* table’ + 6515 | ecs_table_t *table = flecs_find_table_add( + | ^~~~~ +../src/flecs/distr/flecs.c:6513:30: note: crosses initialization of ‘ecs_table_diff_builder_t diff_builder’ + 6513 | ecs_table_diff_builder_t diff_builder = ECS_TABLE_DIFF_INIT; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6507:18: note: crosses initialization of ‘ecs_entity_t entity’ + 6507 | ecs_entity_t entity = ecs_new(world); + | ^~~~~~ +../src/flecs/distr/flecs.c:6506:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 6506 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:6528:1: error: jump to label ‘error’ + 6528 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6503:5: note: in expansion of macro ‘ecs_check’ + 6503 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6521:19: note: crosses initialization of ‘ecs_record_t* r’ + 6521 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:6515:18: note: crosses initialization of ‘ecs_table_t* table’ + 6515 | ecs_table_t *table = flecs_find_table_add( + | ^~~~~ +../src/flecs/distr/flecs.c:6513:30: note: crosses initialization of ‘ecs_table_diff_builder_t diff_builder’ + 6513 | ecs_table_diff_builder_t diff_builder = ECS_TABLE_DIFF_INIT; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6507:18: note: crosses initialization of ‘ecs_entity_t entity’ + 6507 | ecs_entity_t entity = ecs_new(world); + | ^~~~~~ +../src/flecs/distr/flecs.c:6506:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 6506 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_new_w_table(ecs_world_t*, ecs_table_t*)’: +../src/flecs/distr/flecs.c:6555:1: error: jump to label ‘error’ + 6555 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6537:5: note: in expansion of macro ‘ecs_check’ + 6537 | ecs_check(table != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6547:22: note: crosses initialization of ‘ecs_table_diff_t table_diff’ + 6547 | ecs_table_diff_t table_diff = { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:6542:19: note: crosses initialization of ‘ecs_flags32_t flags’ + 6542 | ecs_flags32_t flags = table->flags & EcsTableAddEdgeFlags; + | ^~~~~ +../src/flecs/distr/flecs.c:6541:19: note: crosses initialization of ‘ecs_record_t* r’ + 6541 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:6540:18: note: crosses initialization of ‘ecs_entity_t entity’ + 6540 | ecs_entity_t entity = ecs_new(world); + | ^~~~~~ +../src/flecs/distr/flecs.c:6555:1: error: jump to label ‘error’ + 6555 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6536:5: note: in expansion of macro ‘ecs_check’ + 6536 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6547:22: note: crosses initialization of ‘ecs_table_diff_t table_diff’ + 6547 | ecs_table_diff_t table_diff = { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:6542:19: note: crosses initialization of ‘ecs_flags32_t flags’ + 6542 | ecs_flags32_t flags = table->flags & EcsTableAddEdgeFlags; + | ^~~~~ +../src/flecs/distr/flecs.c:6541:19: note: crosses initialization of ‘ecs_record_t* r’ + 6541 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:6540:18: note: crosses initialization of ‘ecs_entity_t entity’ + 6540 | ecs_entity_t entity = ecs_new(world); + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_copy_id(ecs_world_t*, ecs_record_t*, ecs_id_t, size_t, void*, void*, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:6587:1: error: jump to label ‘error’ + 6587 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6570:5: note: in expansion of macro ‘ecs_check’ + 6570 | ecs_check(src_ptr != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6581:18: note: crosses initialization of ‘ecs_table_t* table’ + 6581 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:6572:16: note: crosses initialization of ‘void (* copy)(void*, const void*, int32_t, const ecs_type_info_t*)’ + 6572 | ecs_copy_t copy = ti->hooks.copy; + | ^~~~ +../src/flecs/distr/flecs.c:6587:1: error: jump to label ‘error’ + 6587 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6569:5: note: in expansion of macro ‘ecs_check’ + 6569 | ecs_check(dst_ptr != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6581:18: note: crosses initialization of ‘ecs_table_t* table’ + 6581 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:6572:16: note: crosses initialization of ‘void (* copy)(void*, const void*, int32_t, const ecs_type_info_t*)’ + 6572 | ecs_copy_t copy = ti->hooks.copy; + | ^~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_traverse_add(ecs_world_t*, ecs_entity_t, const char*, const ecs_entity_desc_t*, ecs_entity_t, ecs_id_t, bool, bool)’: +../src/flecs/distr/flecs.c:6740:43: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 6740 | ecs_id_t *expr_ids = ecs_vec_first(&ids); + | ~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:6797:1: error: jump to label ‘error’ + 6797 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:6690:18: note: from here + 6690 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:6714:19: note: crosses initialization of ‘ecs_record_t* r’ + 6714 | ecs_record_t *r = flecs_entities_get(world, result); + | ^ +../src/flecs/distr/flecs.c:6713:37: note: crosses initialization of ‘ecs_table_t* table’ + 6713 | ecs_table_t *src_table = NULL, *table = NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:6713:18: note: crosses initialization of ‘ecs_table_t* src_table’ + 6713 | ecs_table_t *src_table = NULL, *table = NULL; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_entity_init(ecs_world_t*, const ecs_entity_desc_t*)’: +../src/flecs/distr/flecs.c:7060:1: error: jump to label ‘error’ + 7060 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6915:21: note: in expansion of macro ‘ecs_check’ + 6915 | ecs_check(false, ECS_INVALID_PARAMETER, "%s: cannot set parent in " + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6961:17: note: crosses initialization of ‘const char* prefix’ + 6961 | const char *prefix = world->info.name_prefix; + | ^~~~~~ +../src/flecs/distr/flecs.c:6952:10: note: crosses initialization of ‘bool name_assigned’ + 6952 | bool name_assigned = false; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6951:10: note: crosses initialization of ‘bool flecs_new_entity’ + 6951 | bool flecs_new_entity = false; + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6950:17: note: crosses initialization of ‘const char* root_sep’ + 6950 | const char *root_sep = desc->root_sep; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:6928:17: note: crosses initialization of ‘const char* sep’ + 6928 | const char *sep = desc->sep; + | ^~~ +../src/flecs/distr/flecs.c:6927:17: note: crosses initialization of ‘const char* name’ + 6927 | const char *name = desc->name; + | ^~~~ +../src/flecs/distr/flecs.c:7060:1: error: jump to label ‘error’ + 7060 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6898:5: note: in expansion of macro ‘ecs_check’ + 6898 | ecs_check(desc->_canary == 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6961:17: note: crosses initialization of ‘const char* prefix’ + 6961 | const char *prefix = world->info.name_prefix; + | ^~~~~~ +../src/flecs/distr/flecs.c:6952:10: note: crosses initialization of ‘bool name_assigned’ + 6952 | bool name_assigned = false; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6951:10: note: crosses initialization of ‘bool flecs_new_entity’ + 6951 | bool flecs_new_entity = false; + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6950:17: note: crosses initialization of ‘const char* root_sep’ + 6950 | const char *root_sep = desc->root_sep; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:6928:17: note: crosses initialization of ‘const char* sep’ + 6928 | const char *sep = desc->sep; + | ^~~ +../src/flecs/distr/flecs.c:6927:17: note: crosses initialization of ‘const char* name’ + 6927 | const char *name = desc->name; + | ^~~~ +../src/flecs/distr/flecs.c:6904:18: note: crosses initialization of ‘ecs_entity_t result’ + 6904 | ecs_entity_t result = desc->id; + | ^~~~~~ +../src/flecs/distr/flecs.c:6903:14: note: crosses initialization of ‘ecs_id_t with’ + 6903 | ecs_id_t with = ecs_get_with(world); + | ^~~~ +../src/flecs/distr/flecs.c:6902:18: note: crosses initialization of ‘ecs_entity_t scope’ + 6902 | ecs_entity_t scope = stage->scope; + | ^~~~~ +../src/flecs/distr/flecs.c:6901:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 6901 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:7060:1: error: jump to label ‘error’ + 7060 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6897:5: note: in expansion of macro ‘ecs_check’ + 6897 | ecs_check(desc != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6961:17: note: crosses initialization of ‘const char* prefix’ + 6961 | const char *prefix = world->info.name_prefix; + | ^~~~~~ +../src/flecs/distr/flecs.c:6952:10: note: crosses initialization of ‘bool name_assigned’ + 6952 | bool name_assigned = false; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6951:10: note: crosses initialization of ‘bool flecs_new_entity’ + 6951 | bool flecs_new_entity = false; + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6950:17: note: crosses initialization of ‘const char* root_sep’ + 6950 | const char *root_sep = desc->root_sep; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:6928:17: note: crosses initialization of ‘const char* sep’ + 6928 | const char *sep = desc->sep; + | ^~~ +../src/flecs/distr/flecs.c:6927:17: note: crosses initialization of ‘const char* name’ + 6927 | const char *name = desc->name; + | ^~~~ +../src/flecs/distr/flecs.c:6904:18: note: crosses initialization of ‘ecs_entity_t result’ + 6904 | ecs_entity_t result = desc->id; + | ^~~~~~ +../src/flecs/distr/flecs.c:6903:14: note: crosses initialization of ‘ecs_id_t with’ + 6903 | ecs_id_t with = ecs_get_with(world); + | ^~~~ +../src/flecs/distr/flecs.c:6902:18: note: crosses initialization of ‘ecs_entity_t scope’ + 6902 | ecs_entity_t scope = stage->scope; + | ^~~~~ +../src/flecs/distr/flecs.c:6901:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 6901 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:7060:1: error: jump to label ‘error’ + 7060 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6896:5: note: in expansion of macro ‘ecs_check’ + 6896 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:6961:17: note: crosses initialization of ‘const char* prefix’ + 6961 | const char *prefix = world->info.name_prefix; + | ^~~~~~ +../src/flecs/distr/flecs.c:6952:10: note: crosses initialization of ‘bool name_assigned’ + 6952 | bool name_assigned = false; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6951:10: note: crosses initialization of ‘bool flecs_new_entity’ + 6951 | bool flecs_new_entity = false; + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:6950:17: note: crosses initialization of ‘const char* root_sep’ + 6950 | const char *root_sep = desc->root_sep; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:6928:17: note: crosses initialization of ‘const char* sep’ + 6928 | const char *sep = desc->sep; + | ^~~ +../src/flecs/distr/flecs.c:6927:17: note: crosses initialization of ‘const char* name’ + 6927 | const char *name = desc->name; + | ^~~~ +../src/flecs/distr/flecs.c:6904:18: note: crosses initialization of ‘ecs_entity_t result’ + 6904 | ecs_entity_t result = desc->id; + | ^~~~~~ +../src/flecs/distr/flecs.c:6903:14: note: crosses initialization of ‘ecs_id_t with’ + 6903 | ecs_id_t with = ecs_get_with(world); + | ^~~~ +../src/flecs/distr/flecs.c:6902:18: note: crosses initialization of ‘ecs_entity_t scope’ + 6902 | ecs_entity_t scope = stage->scope; + | ^~~~~ +../src/flecs/distr/flecs.c:6901:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 6901 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘const ecs_entity_t* ecs_bulk_init(ecs_world_t*, const ecs_bulk_desc_t*)’: +../src/flecs/distr/flecs.c:7112:13: error: expected primary-expression before ‘.’ token + 7112 | .added.array = table->type.array, + | ^ +../src/flecs/distr/flecs.c:7113:13: error: expected primary-expression before ‘.’ token + 7113 | .added.count = table->type.count + | ^ +../src/flecs/distr/flecs.c:7127:1: error: jump to label ‘error’ + 7127 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7071:5: note: in expansion of macro ‘ecs_check’ + 7071 | ecs_check(desc->_canary == 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7090:18: note: crosses initialization of ‘ecs_table_t* table’ + 7090 | ecs_table_t *table = desc->table; + | ^~~~~ +../src/flecs/distr/flecs.c:7077:13: note: crosses initialization of ‘int32_t sparse_count’ + 7077 | int32_t sparse_count = 0; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7075:13: note: crosses initialization of ‘int32_t count’ + 7075 | int32_t count = desc->count; + | ^~~~~ +../src/flecs/distr/flecs.c:7074:25: note: crosses initialization of ‘const ecs_entity_t* entities’ + 7074 | const ecs_entity_t *entities = desc->entities; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:7127:1: error: jump to label ‘error’ + 7127 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7070:5: note: in expansion of macro ‘ecs_check’ + 7070 | ecs_check(desc != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7090:18: note: crosses initialization of ‘ecs_table_t* table’ + 7090 | ecs_table_t *table = desc->table; + | ^~~~~ +../src/flecs/distr/flecs.c:7077:13: note: crosses initialization of ‘int32_t sparse_count’ + 7077 | int32_t sparse_count = 0; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7075:13: note: crosses initialization of ‘int32_t count’ + 7075 | int32_t count = desc->count; + | ^~~~~ +../src/flecs/distr/flecs.c:7074:25: note: crosses initialization of ‘const ecs_entity_t* entities’ + 7074 | const ecs_entity_t *entities = desc->entities; + | ^~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_component_init(ecs_world_t*, const ecs_component_desc_t*)’: +../src/flecs/distr/flecs.c:7205:27: error: taking address of rvalue [-fpermissive] + 7205 | ecs_entity(world, { .id = result, .name = desc->type.name }); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:7227:1: error: jump to label ‘error’ + 7227 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7157:5: note: in expansion of macro ‘ecs_check’ + 7157 | ecs_check(desc->_canary == 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7185:19: note: crosses initialization of ‘EcsComponent* ptr’ + 7185 | EcsComponent *ptr = ecs_ensure(world, result, EcsComponent); + | ^~~ +../src/flecs/distr/flecs.c:7177:10: note: crosses initialization of ‘bool new_component’ + 7177 | bool new_component = true; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7164:18: note: crosses initialization of ‘ecs_entity_t result’ + 7164 | ecs_entity_t result = desc->entity; + | ^~~~~~ +../src/flecs/distr/flecs.c:7227:1: error: jump to label ‘error’ + 7227 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7156:5: note: in expansion of macro ‘ecs_check’ + 7156 | ecs_check(desc != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7185:19: note: crosses initialization of ‘EcsComponent* ptr’ + 7185 | EcsComponent *ptr = ecs_ensure(world, result, EcsComponent); + | ^~~ +../src/flecs/distr/flecs.c:7177:10: note: crosses initialization of ‘bool new_component’ + 7177 | bool new_component = true; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7164:18: note: crosses initialization of ‘ecs_entity_t result’ + 7164 | ecs_entity_t result = desc->entity; + | ^~~~~~ +../src/flecs/distr/flecs.c:7227:1: error: jump to label ‘error’ + 7227 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7155:5: note: in expansion of macro ‘ecs_check’ + 7155 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7185:19: note: crosses initialization of ‘EcsComponent* ptr’ + 7185 | EcsComponent *ptr = ecs_ensure(world, result, EcsComponent); + | ^~~ +../src/flecs/distr/flecs.c:7177:10: note: crosses initialization of ‘bool new_component’ + 7177 | bool new_component = true; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7164:18: note: crosses initialization of ‘ecs_entity_t result’ + 7164 | ecs_entity_t result = desc->entity; + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘const ecs_entity_t* ecs_bulk_new_w_id(ecs_world_t*, ecs_id_t, int32_t)’: +../src/flecs/distr/flecs.c:7259:1: error: jump to label ‘error’ + 7259 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7236:5: note: in expansion of macro ‘ecs_check’ + 7236 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7245:30: note: crosses initialization of ‘ecs_table_diff_builder_t diff’ + 7245 | ecs_table_diff_builder_t diff = ECS_TABLE_DIFF_INIT; + | ^~~~ +../src/flecs/distr/flecs.c:7244:18: note: crosses initialization of ‘ecs_table_t* table’ + 7244 | ecs_table_t *table = &world->store.root; + | ^~~~~ +../src/flecs/distr/flecs.c:7237:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 7237 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_clear(ecs_world_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:7294:1: error: jump to label ‘error’ + 7294 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7268:5: note: in expansion of macro ‘ecs_check’ + 7268 | ecs_check(ecs_is_valid(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7278:18: note: crosses initialization of ‘ecs_table_t* table’ + 7278 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:7275:19: note: crosses initialization of ‘ecs_record_t* r’ + 7275 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:7270:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 7270 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:7294:1: error: jump to label ‘error’ + 7294 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7267:5: note: in expansion of macro ‘ecs_check’ + 7267 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7278:18: note: crosses initialization of ‘ecs_table_t* table’ + 7278 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:7275:19: note: crosses initialization of ‘ecs_record_t* r’ + 7275 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:7270:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 7270 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_update_monitors_for_delete(ecs_world_t*, ecs_id_t)’: +../src/flecs/distr/flecs.c:7448:30: error: taking address of temporary array + 7448 | .array = (ecs_id_t[]){id}, + | ^~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_id_mark_for_delete(ecs_world_t*, ecs_id_record_t*, ecs_entity_t, bool)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:7475:22: note: in expansion of macro ‘flecs_table_cache_next’ + 7475 | while ((tr = flecs_table_cache_next(&it, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:7499:22: note: in expansion of macro ‘flecs_table_cache_next’ + 7499 | while ((tr = flecs_table_cache_next(&it, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_remove_from_table(ecs_world_t*, ecs_table_t*)’: +../src/flecs/distr/flecs.c:7570:41: error: invalid conversion from ‘void*’ to ‘ecs_marked_id_t*’ [-fpermissive] + 7570 | ecs_marked_id_t *ids = ecs_vec_first(&world->store.marked_ids); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘bool flecs_on_delete_clear_tables(ecs_world_t*)’: +../src/flecs/distr/flecs.c:7622:41: error: invalid conversion from ‘void*’ to ‘ecs_marked_id_t*’ [-fpermissive] + 7622 | ecs_marked_id_t *ids = ecs_vec_first(&world->store.marked_ids); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:7633:34: note: in expansion of macro ‘flecs_table_cache_next’ + 7633 | while ((tr = flecs_table_cache_next(&it, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7658:32: error: invalid conversion from ‘void*’ to ‘ecs_marked_id_t*’ [-fpermissive] + 7658 | ids = ecs_vec_first(&world->store.marked_ids); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘bool flecs_on_delete_clear_ids(ecs_world_t*)’: +../src/flecs/distr/flecs.c:7681:41: error: invalid conversion from ‘void*’ to ‘ecs_marked_id_t*’ [-fpermissive] + 7681 | ecs_marked_id_t *ids = ecs_vec_first(&world->store.marked_ids); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_on_delete(ecs_world_t*, ecs_id_t, ecs_entity_t, bool)’: +../src/flecs/distr/flecs.c:7762:45: error: invalid conversion from ‘void*’ to ‘ecs_marked_id_t*’ [-fpermissive] + 7762 | ecs_marked_id_t *ids = ecs_vec_first(&world->store.marked_ids); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void ecs_delete(ecs_world_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:7873:1: error: jump to label ‘error’ + 7873 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7817:5: note: in expansion of macro ‘ecs_check’ + 7817 | ecs_check(entity != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7826:19: note: crosses initialization of ‘ecs_record_t* r’ + 7826 | ecs_record_t *r = flecs_entities_try(world, entity); + | ^ +../src/flecs/distr/flecs.c:7819:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 7819 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:7873:1: error: jump to label ‘error’ + 7873 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7816:5: note: in expansion of macro ‘ecs_check’ + 7816 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7826:19: note: crosses initialization of ‘ecs_record_t* r’ + 7826 | ecs_record_t *r = flecs_entities_try(world, entity); + | ^ +../src/flecs/distr/flecs.c:7819:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 7819 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_clone(ecs_world_t*, ecs_entity_t, ecs_entity_t, bool)’: +../src/flecs/distr/flecs.c:7974:1: error: jump to label ‘done’ + 7974 | done: + | ^~~~ +../src/flecs/distr/flecs.c:7940:14: note: from here + 7940 | goto done; + | ^~~~ +../src/flecs/distr/flecs.c:7958:13: note: crosses initialization of ‘int32_t row’ + 7958 | int32_t row = ECS_RECORD_TO_ROW(dst_r->row); + | ^~~ +../src/flecs/distr/flecs.c:7954:19: note: crosses initialization of ‘ecs_record_t* dst_r’ + 7954 | ecs_record_t *dst_r = flecs_entities_get(world, dst); + | ^~~~~ +../src/flecs/distr/flecs.c:7950:22: note: crosses initialization of ‘ecs_table_diff_t diff’ + 7950 | ecs_table_diff_t diff = { + | ^~~~ +../src/flecs/distr/flecs.c:7949:16: note: crosses initialization of ‘ecs_type_t dst_type’ + 7949 | ecs_type_t dst_type = dst_table->type; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:7943:18: note: crosses initialization of ‘ecs_table_t* dst_table’ + 7943 | ecs_table_t *dst_table = src_table; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7977:1: error: jump to label ‘error’ + 7977 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7925:5: note: in expansion of macro ‘ecs_check’ + 7925 | ecs_check(!dst || !ecs_get_table(world, dst), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7958:13: note: crosses initialization of ‘int32_t row’ + 7958 | int32_t row = ECS_RECORD_TO_ROW(dst_r->row); + | ^~~ +../src/flecs/distr/flecs.c:7954:19: note: crosses initialization of ‘ecs_record_t* dst_r’ + 7954 | ecs_record_t *dst_r = flecs_entities_get(world, dst); + | ^~~~~ +../src/flecs/distr/flecs.c:7950:22: note: crosses initialization of ‘ecs_table_diff_t diff’ + 7950 | ecs_table_diff_t diff = { + | ^~~~ +../src/flecs/distr/flecs.c:7949:16: note: crosses initialization of ‘ecs_type_t dst_type’ + 7949 | ecs_type_t dst_type = dst_table->type; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:7943:18: note: crosses initialization of ‘ecs_table_t* dst_table’ + 7943 | ecs_table_t *dst_table = src_table; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7938:18: note: crosses initialization of ‘ecs_table_t* src_table’ + 7938 | ecs_table_t *src_table = src_r->table; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7936:19: note: crosses initialization of ‘ecs_record_t* src_r’ + 7936 | ecs_record_t *src_r = flecs_entities_get(world, src); + | ^~~~~ +../src/flecs/distr/flecs.c:7927:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 7927 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:7977:1: error: jump to label ‘error’ + 7977 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7924:5: note: in expansion of macro ‘ecs_check’ + 7924 | ecs_check(ecs_is_alive(world, src), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7958:13: note: crosses initialization of ‘int32_t row’ + 7958 | int32_t row = ECS_RECORD_TO_ROW(dst_r->row); + | ^~~ +../src/flecs/distr/flecs.c:7954:19: note: crosses initialization of ‘ecs_record_t* dst_r’ + 7954 | ecs_record_t *dst_r = flecs_entities_get(world, dst); + | ^~~~~ +../src/flecs/distr/flecs.c:7950:22: note: crosses initialization of ‘ecs_table_diff_t diff’ + 7950 | ecs_table_diff_t diff = { + | ^~~~ +../src/flecs/distr/flecs.c:7949:16: note: crosses initialization of ‘ecs_type_t dst_type’ + 7949 | ecs_type_t dst_type = dst_table->type; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:7943:18: note: crosses initialization of ‘ecs_table_t* dst_table’ + 7943 | ecs_table_t *dst_table = src_table; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7938:18: note: crosses initialization of ‘ecs_table_t* src_table’ + 7938 | ecs_table_t *src_table = src_r->table; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7936:19: note: crosses initialization of ‘ecs_record_t* src_r’ + 7936 | ecs_record_t *src_r = flecs_entities_get(world, src); + | ^~~~~ +../src/flecs/distr/flecs.c:7927:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 7927 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:7977:1: error: jump to label ‘error’ + 7977 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7923:5: note: in expansion of macro ‘ecs_check’ + 7923 | ecs_check(src != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7958:13: note: crosses initialization of ‘int32_t row’ + 7958 | int32_t row = ECS_RECORD_TO_ROW(dst_r->row); + | ^~~ +../src/flecs/distr/flecs.c:7954:19: note: crosses initialization of ‘ecs_record_t* dst_r’ + 7954 | ecs_record_t *dst_r = flecs_entities_get(world, dst); + | ^~~~~ +../src/flecs/distr/flecs.c:7950:22: note: crosses initialization of ‘ecs_table_diff_t diff’ + 7950 | ecs_table_diff_t diff = { + | ^~~~ +../src/flecs/distr/flecs.c:7949:16: note: crosses initialization of ‘ecs_type_t dst_type’ + 7949 | ecs_type_t dst_type = dst_table->type; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:7943:18: note: crosses initialization of ‘ecs_table_t* dst_table’ + 7943 | ecs_table_t *dst_table = src_table; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7938:18: note: crosses initialization of ‘ecs_table_t* src_table’ + 7938 | ecs_table_t *src_table = src_r->table; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7936:19: note: crosses initialization of ‘ecs_record_t* src_r’ + 7936 | ecs_record_t *src_r = flecs_entities_get(world, src); + | ^~~~~ +../src/flecs/distr/flecs.c:7927:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 7927 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:7977:1: error: jump to label ‘error’ + 7977 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:7922:5: note: in expansion of macro ‘ecs_check’ + 7922 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7958:13: note: crosses initialization of ‘int32_t row’ + 7958 | int32_t row = ECS_RECORD_TO_ROW(dst_r->row); + | ^~~ +../src/flecs/distr/flecs.c:7954:19: note: crosses initialization of ‘ecs_record_t* dst_r’ + 7954 | ecs_record_t *dst_r = flecs_entities_get(world, dst); + | ^~~~~ +../src/flecs/distr/flecs.c:7950:22: note: crosses initialization of ‘ecs_table_diff_t diff’ + 7950 | ecs_table_diff_t diff = { + | ^~~~ +../src/flecs/distr/flecs.c:7949:16: note: crosses initialization of ‘ecs_type_t dst_type’ + 7949 | ecs_type_t dst_type = dst_table->type; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:7943:18: note: crosses initialization of ‘ecs_table_t* dst_table’ + 7943 | ecs_table_t *dst_table = src_table; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7938:18: note: crosses initialization of ‘ecs_table_t* src_table’ + 7938 | ecs_table_t *src_table = src_r->table; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:7936:19: note: crosses initialization of ‘ecs_record_t* src_r’ + 7936 | ecs_record_t *src_r = flecs_entities_get(world, src); + | ^~~~~ +../src/flecs/distr/flecs.c:7927:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 7927 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘const void* ecs_get_id(const ecs_world_t*, ecs_entity_t, ecs_id_t)’: +../src/flecs/distr/flecs.c:7993:46: error: invalid conversion from ‘void*’ to ‘const ecs_sparse_t*’ [-fpermissive] + 7993 | return flecs_sparse_get_any(idr->sparse, 0, entity);\ + | ~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:8016:9: note: in expansion of macro ‘ecs_get_low_id’ + 8016 | ecs_get_low_id(table, r, id); + | ^~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1411:25: note: initializing argument 1 of ‘void* flecs_sparse_get_any(const ecs_sparse_t*, ecs_size_t, uint64_t)’ + 1411 | const ecs_sparse_t *sparse, + | ~~~~~~~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c:8032:46: error: invalid conversion from ‘void*’ to ‘const ecs_sparse_t*’ [-fpermissive] + 8032 | return flecs_sparse_get_any(idr->sparse, 0, entity); + | ~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1411:25: note: initializing argument 1 of ‘void* flecs_sparse_get_any(const ecs_sparse_t*, ecs_size_t, uint64_t)’ + 1411 | const ecs_sparse_t *sparse, + | ~~~~~~~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c:8039:1: error: jump to label ‘error’ + 8039 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8034:9: note: in expansion of macro ‘ecs_check’ + 8034 | ecs_check(tr->column != -1, ECS_NOT_A_COMPONENT, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8037:13: note: crosses initialization of ‘int32_t row’ + 8037 | int32_t row = ECS_RECORD_TO_ROW(r->row); + | ^~~ +../src/flecs/distr/flecs.c:8039:1: error: jump to label ‘error’ + 8039 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8003:5: note: in expansion of macro ‘ecs_check’ + 8003 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8037:13: note: crosses initialization of ‘int32_t row’ + 8037 | int32_t row = ECS_RECORD_TO_ROW(r->row); + | ^~~ +../src/flecs/distr/flecs.c:8027:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ + 8027 | const ecs_table_record_t *tr = flecs_id_record_get_table(idr, table); + | ^~ +../src/flecs/distr/flecs.c:8022:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 8022 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c:8010:18: note: crosses initialization of ‘ecs_table_t* table’ + 8010 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8007:19: note: crosses initialization of ‘ecs_record_t* r’ + 8007 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8039:1: error: jump to label ‘error’ + 8039 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8002:5: note: in expansion of macro ‘ecs_check’ + 8002 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8037:13: note: crosses initialization of ‘int32_t row’ + 8037 | int32_t row = ECS_RECORD_TO_ROW(r->row); + | ^~~ +../src/flecs/distr/flecs.c:8027:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ + 8027 | const ecs_table_record_t *tr = flecs_id_record_get_table(idr, table); + | ^~ +../src/flecs/distr/flecs.c:8022:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 8022 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c:8010:18: note: crosses initialization of ‘ecs_table_t* table’ + 8010 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8007:19: note: crosses initialization of ‘ecs_record_t* r’ + 8007 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c: In function ‘void* ecs_get_mut_id(const ecs_world_t*, ecs_entity_t, ecs_id_t)’: +../src/flecs/distr/flecs.c:7993:46: error: invalid conversion from ‘void*’ to ‘const ecs_sparse_t*’ [-fpermissive] + 7993 | return flecs_sparse_get_any(idr->sparse, 0, entity);\ + | ~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:8062:9: note: in expansion of macro ‘ecs_get_low_id’ + 8062 | ecs_get_low_id(table, r, id); + | ^~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1411:25: note: initializing argument 1 of ‘void* flecs_sparse_get_any(const ecs_sparse_t*, ecs_size_t, uint64_t)’ + 1411 | const ecs_sparse_t *sparse, + | ~~~~~~~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c:8069:1: error: jump to label ‘error’ + 8069 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8049:5: note: in expansion of macro ‘ecs_check’ + 8049 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8067:13: note: crosses initialization of ‘int32_t row’ + 8067 | int32_t row = ECS_RECORD_TO_ROW(r->row); + | ^~~ +../src/flecs/distr/flecs.c:8066:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 8066 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c:8056:18: note: crosses initialization of ‘ecs_table_t* table’ + 8056 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8053:19: note: crosses initialization of ‘ecs_record_t* r’ + 8053 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8069:1: error: jump to label ‘error’ + 8069 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8048:5: note: in expansion of macro ‘ecs_check’ + 8048 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8067:13: note: crosses initialization of ‘int32_t row’ + 8067 | int32_t row = ECS_RECORD_TO_ROW(r->row); + | ^~~ +../src/flecs/distr/flecs.c:8066:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 8066 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c:8056:18: note: crosses initialization of ‘ecs_table_t* table’ + 8056 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8053:19: note: crosses initialization of ‘ecs_record_t* r’ + 8053 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c: In function ‘void* ecs_ensure_id(ecs_world_t*, ecs_entity_t, ecs_id_t)’: +../src/flecs/distr/flecs.c:8095:1: error: jump to label ‘error’ + 8095 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8080:5: note: in expansion of macro ‘ecs_check’ + 8080 | ecs_check(ecs_id_is_valid(world, id), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8090:11: note: crosses initialization of ‘void* result’ + 8090 | void *result = flecs_ensure(world, entity, id, r).ptr; + | ^~~~~~ +../src/flecs/distr/flecs.c:8088:19: note: crosses initialization of ‘ecs_record_t* r’ + 8088 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8082:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8082 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:8095:1: error: jump to label ‘error’ + 8095 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8079:5: note: in expansion of macro ‘ecs_check’ + 8079 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8090:11: note: crosses initialization of ‘void* result’ + 8090 | void *result = flecs_ensure(world, entity, id, r).ptr; + | ^~~~~~ +../src/flecs/distr/flecs.c:8088:19: note: crosses initialization of ‘ecs_record_t* r’ + 8088 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8082:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8082 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:8095:1: error: jump to label ‘error’ + 8095 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8078:5: note: in expansion of macro ‘ecs_check’ + 8078 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8090:11: note: crosses initialization of ‘void* result’ + 8090 | void *result = flecs_ensure(world, entity, id, r).ptr; + | ^~~~~~ +../src/flecs/distr/flecs.c:8088:19: note: crosses initialization of ‘ecs_record_t* r’ + 8088 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8082:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8082 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘void* ecs_ensure_modified_id(ecs_world_t*, ecs_entity_t, ecs_id_t)’: +../src/flecs/distr/flecs.c:8112:1: error: jump to label ‘error’ + 8112 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8106:5: note: in expansion of macro ‘ecs_check’ + 8106 | ecs_check(ecs_id_is_valid(world, id), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8108:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8108 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:8112:1: error: jump to label ‘error’ + 8112 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8105:5: note: in expansion of macro ‘ecs_check’ + 8105 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8108:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8108 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:8112:1: error: jump to label ‘error’ + 8112 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8104:5: note: in expansion of macro ‘ecs_check’ + 8104 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8108:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8108 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_record_t* flecs_access_begin(ecs_world_t*, ecs_entity_t, bool)’: +../src/flecs/distr/flecs.c:8140:1: error: jump to label ‘error’ + 8140 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8122:5: note: in expansion of macro ‘ecs_check’ + 8122 | ecs_check(ecs_os_has_threading(), ECS_MISSING_OS_API, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8133:13: note: crosses initialization of ‘int32_t count’ + 8133 | int32_t count = ecs_os_ainc(&table->_->lock); + | ^~~~~ +../src/flecs/distr/flecs.c:8125:19: note: crosses initialization of ‘ecs_record_t* r’ + 8125 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8124:24: note: crosses initialization of ‘const ecs_world_t* world’ + 8124 | const ecs_world_t *world = ecs_get_world(stage); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_access_end(const ecs_record_t*, bool)’: +../src/flecs/distr/flecs.c:8159:1: error: jump to label ‘error’ + 8159 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8151:5: note: in expansion of macro ‘ecs_check’ + 8151 | ecs_check(r->table != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8152:13: note: crosses initialization of ‘int32_t count’ + 8152 | int32_t count = ecs_os_adec(&r->table->_->lock); + | ^~~~~ +../src/flecs/distr/flecs.c:8159:1: error: jump to label ‘error’ + 8159 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8150:5: note: in expansion of macro ‘ecs_check’ + 8150 | ecs_check(r != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8152:13: note: crosses initialization of ‘int32_t count’ + 8152 | int32_t count = ecs_os_adec(&r->table->_->lock); + | ^~~~~ +../src/flecs/distr/flecs.c:8159:1: error: jump to label ‘error’ + 8159 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8149:5: note: in expansion of macro ‘ecs_check’ + 8149 | ecs_check(ecs_os_has_threading(), ECS_MISSING_OS_API, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8152:13: note: crosses initialization of ‘int32_t count’ + 8152 | int32_t count = ecs_os_adec(&r->table->_->lock); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_record_get_entity(const ecs_record_t*)’: +../src/flecs/distr/flecs.c:8199:1: error: jump to label ‘error’ + 8199 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8192:5: note: in expansion of macro ‘ecs_check’ + 8192 | ecs_check(record != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8193:18: note: crosses initialization of ‘ecs_table_t* table’ + 8193 | ecs_table_t *table = record->table; + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_ref_t ecs_ref_init_id(const ecs_world_t*, ecs_entity_t, ecs_id_t)’: +../src/flecs/distr/flecs.c:8262:1: error: jump to label ‘error’ + 8262 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8246:5: note: in expansion of macro ‘ecs_check’ + 8246 | ecs_check(record != NULL, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8255:18: note: crosses initialization of ‘ecs_table_t* table’ + 8255 | ecs_table_t *table = record->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8249:15: note: crosses initialization of ‘ecs_ref_t result’ + 8249 | ecs_ref_t result = { + | ^~~~~~ +../src/flecs/distr/flecs.c:8262:1: error: jump to label ‘error’ + 8262 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8241:5: note: in expansion of macro ‘ecs_check’ + 8241 | ecs_check(ecs_id_is_valid(world, id), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8255:18: note: crosses initialization of ‘ecs_table_t* table’ + 8255 | ecs_table_t *table = record->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8249:15: note: crosses initialization of ‘ecs_ref_t result’ + 8249 | ecs_ref_t result = { + | ^~~~~~ +../src/flecs/distr/flecs.c:8245:19: note: crosses initialization of ‘ecs_record_t* record’ + 8245 | ecs_record_t *record = flecs_entities_get(world, entity); + | ^~~~~~ +../src/flecs/distr/flecs.c:8262:1: error: jump to label ‘error’ + 8262 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8240:5: note: in expansion of macro ‘ecs_check’ + 8240 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8255:18: note: crosses initialization of ‘ecs_table_t* table’ + 8255 | ecs_table_t *table = record->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8249:15: note: crosses initialization of ‘ecs_ref_t result’ + 8249 | ecs_ref_t result = { + | ^~~~~~ +../src/flecs/distr/flecs.c:8245:19: note: crosses initialization of ‘ecs_record_t* record’ + 8245 | ecs_record_t *record = flecs_entities_get(world, entity); + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_ref_update(const ecs_world_t*, ecs_ref_t*)’: +../src/flecs/distr/flecs.c:8303:1: error: jump to label ‘error’ + 8303 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8285:5: note: in expansion of macro ‘ecs_check’ + 8285 | ecs_check(ref->record != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8293:25: note: crosses initialization of ‘ecs_table_record_t* tr’ + 8293 | ecs_table_record_t *tr = ref->tr; + | ^~ +../src/flecs/distr/flecs.c:8288:18: note: crosses initialization of ‘ecs_table_t* table’ + 8288 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8287:19: note: crosses initialization of ‘ecs_record_t* r’ + 8287 | ecs_record_t *r = ref->record; + | ^ +../src/flecs/distr/flecs.c:8303:1: error: jump to label ‘error’ + 8303 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8284:5: note: in expansion of macro ‘ecs_check’ + 8284 | ecs_check(ref->id != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8293:25: note: crosses initialization of ‘ecs_table_record_t* tr’ + 8293 | ecs_table_record_t *tr = ref->tr; + | ^~ +../src/flecs/distr/flecs.c:8288:18: note: crosses initialization of ‘ecs_table_t* table’ + 8288 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8287:19: note: crosses initialization of ‘ecs_record_t* r’ + 8287 | ecs_record_t *r = ref->record; + | ^ +../src/flecs/distr/flecs.c:8303:1: error: jump to label ‘error’ + 8303 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8283:5: note: in expansion of macro ‘ecs_check’ + 8283 | ecs_check(ref->entity != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8293:25: note: crosses initialization of ‘ecs_table_record_t* tr’ + 8293 | ecs_table_record_t *tr = ref->tr; + | ^~ +../src/flecs/distr/flecs.c:8288:18: note: crosses initialization of ‘ecs_table_t* table’ + 8288 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8287:19: note: crosses initialization of ‘ecs_record_t* r’ + 8287 | ecs_record_t *r = ref->record; + | ^ +../src/flecs/distr/flecs.c:8303:1: error: jump to label ‘error’ + 8303 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8282:5: note: in expansion of macro ‘ecs_check’ + 8282 | ecs_check(ref != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8293:25: note: crosses initialization of ‘ecs_table_record_t* tr’ + 8293 | ecs_table_record_t *tr = ref->tr; + | ^~ +../src/flecs/distr/flecs.c:8288:18: note: crosses initialization of ‘ecs_table_t* table’ + 8288 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8287:19: note: crosses initialization of ‘ecs_record_t* r’ + 8287 | ecs_record_t *r = ref->record; + | ^ +../src/flecs/distr/flecs.c:8303:1: error: jump to label ‘error’ + 8303 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8281:5: note: in expansion of macro ‘ecs_check’ + 8281 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8293:25: note: crosses initialization of ‘ecs_table_record_t* tr’ + 8293 | ecs_table_record_t *tr = ref->tr; + | ^~ +../src/flecs/distr/flecs.c:8288:18: note: crosses initialization of ‘ecs_table_t* table’ + 8288 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8287:19: note: crosses initialization of ‘ecs_record_t* r’ + 8287 | ecs_record_t *r = ref->record; + | ^ +../src/flecs/distr/flecs.c: In function ‘void* ecs_ref_get_id(const ecs_world_t*, ecs_ref_t*, ecs_id_t)’: +../src/flecs/distr/flecs.c:8343:46: error: invalid conversion from ‘void*’ to ‘const ecs_sparse_t*’ [-fpermissive] + 8343 | return flecs_sparse_get_any(idr->sparse, 0, ref->entity); + | ~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1411:25: note: initializing argument 1 of ‘void* flecs_sparse_get_any(const ecs_sparse_t*, ecs_size_t, uint64_t)’ + 1411 | const ecs_sparse_t *sparse, + | ~~~~~~~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c:8347:1: error: jump to label ‘error’ + 8347 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8326:5: note: in expansion of macro ‘ecs_check’ + 8326 | ecs_check(row < ecs_table_count(table), ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8339:13: note: crosses initialization of ‘int32_t column’ + 8339 | int32_t column = tr->column; + | ^~~~~~ +../src/flecs/distr/flecs.c:8328:25: note: crosses initialization of ‘ecs_table_record_t* tr’ + 8328 | ecs_table_record_t *tr = ref->tr; + | ^~ +../src/flecs/distr/flecs.c:8347:1: error: jump to label ‘error’ + 8347 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8317:5: note: in expansion of macro ‘ecs_check’ + 8317 | ecs_check(id == ref->id, ECS_INVALID_PARAMETER, "ref not initialized"); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8339:13: note: crosses initialization of ‘int32_t column’ + 8339 | int32_t column = tr->column; + | ^~~~~~ +../src/flecs/distr/flecs.c:8328:25: note: crosses initialization of ‘ecs_table_record_t* tr’ + 8328 | ecs_table_record_t *tr = ref->tr; + | ^~ +../src/flecs/distr/flecs.c:8325:13: note: crosses initialization of ‘int32_t row’ + 8325 | int32_t row = ECS_RECORD_TO_ROW(r->row); + | ^~~ +../src/flecs/distr/flecs.c:8320:18: note: crosses initialization of ‘ecs_table_t* table’ + 8320 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8319:19: note: crosses initialization of ‘ecs_record_t* r’ + 8319 | ecs_record_t *r = ref->record; + | ^ +../src/flecs/distr/flecs.c:8347:1: error: jump to label ‘error’ + 8347 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8316:5: note: in expansion of macro ‘ecs_check’ + 8316 | ecs_check(ref->record != NULL, ECS_INVALID_PARAMETER, "ref not initialized"); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8339:13: note: crosses initialization of ‘int32_t column’ + 8339 | int32_t column = tr->column; + | ^~~~~~ +../src/flecs/distr/flecs.c:8328:25: note: crosses initialization of ‘ecs_table_record_t* tr’ + 8328 | ecs_table_record_t *tr = ref->tr; + | ^~ +../src/flecs/distr/flecs.c:8325:13: note: crosses initialization of ‘int32_t row’ + 8325 | int32_t row = ECS_RECORD_TO_ROW(r->row); + | ^~~ +../src/flecs/distr/flecs.c:8320:18: note: crosses initialization of ‘ecs_table_t* table’ + 8320 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8319:19: note: crosses initialization of ‘ecs_record_t* r’ + 8319 | ecs_record_t *r = ref->record; + | ^ +../src/flecs/distr/flecs.c:8347:1: error: jump to label ‘error’ + 8347 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8315:5: note: in expansion of macro ‘ecs_check’ + 8315 | ecs_check(ref->id != 0, ECS_INVALID_PARAMETER, "ref not initialized"); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8339:13: note: crosses initialization of ‘int32_t column’ + 8339 | int32_t column = tr->column; + | ^~~~~~ +../src/flecs/distr/flecs.c:8328:25: note: crosses initialization of ‘ecs_table_record_t* tr’ + 8328 | ecs_table_record_t *tr = ref->tr; + | ^~ +../src/flecs/distr/flecs.c:8325:13: note: crosses initialization of ‘int32_t row’ + 8325 | int32_t row = ECS_RECORD_TO_ROW(r->row); + | ^~~ +../src/flecs/distr/flecs.c:8320:18: note: crosses initialization of ‘ecs_table_t* table’ + 8320 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8319:19: note: crosses initialization of ‘ecs_record_t* r’ + 8319 | ecs_record_t *r = ref->record; + | ^ +../src/flecs/distr/flecs.c:8347:1: error: jump to label ‘error’ + 8347 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8314:5: note: in expansion of macro ‘ecs_check’ + 8314 | ecs_check(ref->entity != 0, ECS_INVALID_PARAMETER, "ref not initialized"); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8339:13: note: crosses initialization of ‘int32_t column’ + 8339 | int32_t column = tr->column; + | ^~~~~~ +../src/flecs/distr/flecs.c:8328:25: note: crosses initialization of ‘ecs_table_record_t* tr’ + 8328 | ecs_table_record_t *tr = ref->tr; + | ^~ +../src/flecs/distr/flecs.c:8325:13: note: crosses initialization of ‘int32_t row’ + 8325 | int32_t row = ECS_RECORD_TO_ROW(r->row); + | ^~~ +../src/flecs/distr/flecs.c:8320:18: note: crosses initialization of ‘ecs_table_t* table’ + 8320 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8319:19: note: crosses initialization of ‘ecs_record_t* r’ + 8319 | ecs_record_t *r = ref->record; + | ^ +../src/flecs/distr/flecs.c:8347:1: error: jump to label ‘error’ + 8347 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8313:5: note: in expansion of macro ‘ecs_check’ + 8313 | ecs_check(ref != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8339:13: note: crosses initialization of ‘int32_t column’ + 8339 | int32_t column = tr->column; + | ^~~~~~ +../src/flecs/distr/flecs.c:8328:25: note: crosses initialization of ‘ecs_table_record_t* tr’ + 8328 | ecs_table_record_t *tr = ref->tr; + | ^~ +../src/flecs/distr/flecs.c:8325:13: note: crosses initialization of ‘int32_t row’ + 8325 | int32_t row = ECS_RECORD_TO_ROW(r->row); + | ^~~ +../src/flecs/distr/flecs.c:8320:18: note: crosses initialization of ‘ecs_table_t* table’ + 8320 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8319:19: note: crosses initialization of ‘ecs_record_t* r’ + 8319 | ecs_record_t *r = ref->record; + | ^ +../src/flecs/distr/flecs.c:8347:1: error: jump to label ‘error’ + 8347 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8312:5: note: in expansion of macro ‘ecs_check’ + 8312 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8339:13: note: crosses initialization of ‘int32_t column’ + 8339 | int32_t column = tr->column; + | ^~~~~~ +../src/flecs/distr/flecs.c:8328:25: note: crosses initialization of ‘ecs_table_record_t* tr’ + 8328 | ecs_table_record_t *tr = ref->tr; + | ^~ +../src/flecs/distr/flecs.c:8325:13: note: crosses initialization of ‘int32_t row’ + 8325 | int32_t row = ECS_RECORD_TO_ROW(r->row); + | ^~~ +../src/flecs/distr/flecs.c:8320:18: note: crosses initialization of ‘ecs_table_t* table’ + 8320 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8319:19: note: crosses initialization of ‘ecs_record_t* r’ + 8319 | ecs_record_t *r = ref->record; + | ^ +../src/flecs/distr/flecs.c: In function ‘void* ecs_emplace_id(ecs_world_t*, ecs_entity_t, ecs_id_t, bool*)’: +../src/flecs/distr/flecs.c:8387:1: error: jump to label ‘error’ + 8387 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8368:5: note: in expansion of macro ‘ecs_check’ + 8368 | ecs_check(is_new || !ecs_has_id(world, entity, id), ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8377:11: note: crosses initialization of ‘void* ptr’ + 8377 | void *ptr = flecs_get_component(r->table, ECS_RECORD_TO_ROW(r->row), idr); + | ^~~ +../src/flecs/distr/flecs.c:8376:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 8376 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c:8372:18: note: crosses initialization of ‘ecs_table_t* table’ + 8372 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8371:19: note: crosses initialization of ‘ecs_record_t* r’ + 8371 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8387:1: error: jump to label ‘error’ + 8387 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8359:5: note: in expansion of macro ‘ecs_check’ + 8359 | ecs_check(ecs_id_is_valid(world, id), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8377:11: note: crosses initialization of ‘void* ptr’ + 8377 | void *ptr = flecs_get_component(r->table, ECS_RECORD_TO_ROW(r->row), idr); + | ^~~ +../src/flecs/distr/flecs.c:8376:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 8376 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c:8372:18: note: crosses initialization of ‘ecs_table_t* table’ + 8372 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8371:19: note: crosses initialization of ‘ecs_record_t* r’ + 8371 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8361:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8361 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:8387:1: error: jump to label ‘error’ + 8387 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8358:5: note: in expansion of macro ‘ecs_check’ + 8358 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8377:11: note: crosses initialization of ‘void* ptr’ + 8377 | void *ptr = flecs_get_component(r->table, ECS_RECORD_TO_ROW(r->row), idr); + | ^~~ +../src/flecs/distr/flecs.c:8376:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 8376 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c:8372:18: note: crosses initialization of ‘ecs_table_t* table’ + 8372 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8371:19: note: crosses initialization of ‘ecs_record_t* r’ + 8371 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8361:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8361 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:8387:1: error: jump to label ‘error’ + 8387 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8357:5: note: in expansion of macro ‘ecs_check’ + 8357 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8377:11: note: crosses initialization of ‘void* ptr’ + 8377 | void *ptr = flecs_get_component(r->table, ECS_RECORD_TO_ROW(r->row), idr); + | ^~~ +../src/flecs/distr/flecs.c:8376:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 8376 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c:8372:18: note: crosses initialization of ‘ecs_table_t* table’ + 8372 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8371:19: note: crosses initialization of ‘ecs_record_t* r’ + 8371 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8361:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8361 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_modified_id_if(ecs_world_t*, ecs_entity_t, ecs_id_t, bool)’: +../src/flecs/distr/flecs.c:8420:1: error: jump to label ‘error’ + 8420 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8400:5: note: in expansion of macro ‘ecs_check’ + 8400 | ecs_check(ecs_id_is_valid(world, id), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8415:16: note: crosses initialization of ‘ecs_type_t ids’ + 8415 | ecs_type_t ids = { .array = &id, .count = 1 }; + | ^~~ +../src/flecs/distr/flecs.c:8409:18: note: crosses initialization of ‘ecs_table_t* table’ + 8409 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8408:19: note: crosses initialization of ‘ecs_record_t* r’ + 8408 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8402:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8402 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:8420:1: error: jump to label ‘error’ + 8420 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8399:5: note: in expansion of macro ‘ecs_check’ + 8399 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8415:16: note: crosses initialization of ‘ecs_type_t ids’ + 8415 | ecs_type_t ids = { .array = &id, .count = 1 }; + | ^~~ +../src/flecs/distr/flecs.c:8409:18: note: crosses initialization of ‘ecs_table_t* table’ + 8409 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8408:19: note: crosses initialization of ‘ecs_record_t* r’ + 8408 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8402:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8402 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:8420:1: error: jump to label ‘error’ + 8420 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8398:5: note: in expansion of macro ‘ecs_check’ + 8398 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8415:16: note: crosses initialization of ‘ecs_type_t ids’ + 8415 | ecs_type_t ids = { .array = &id, .count = 1 }; + | ^~~ +../src/flecs/distr/flecs.c:8409:18: note: crosses initialization of ‘ecs_table_t* table’ + 8409 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8408:19: note: crosses initialization of ‘ecs_record_t* r’ + 8408 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8402:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8402 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_modified_id(ecs_world_t*, ecs_entity_t, ecs_id_t)’: +../src/flecs/distr/flecs.c:8452:1: error: jump to label ‘error’ + 8452 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8443:5: note: in expansion of macro ‘ecs_check’ + 8443 | ecs_check(ecs_has_id(world, entity, id), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8447:16: note: crosses initialization of ‘ecs_type_t ids’ + 8447 | ecs_type_t ids = { .array = &id, .count = 1 }; + | ^~~ +../src/flecs/distr/flecs.c:8446:18: note: crosses initialization of ‘ecs_table_t* table’ + 8446 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8445:19: note: crosses initialization of ‘ecs_record_t* r’ + 8445 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8452:1: error: jump to label ‘error’ + 8452 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8431:5: note: in expansion of macro ‘ecs_check’ + 8431 | ecs_check(ecs_id_is_valid(world, id), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8447:16: note: crosses initialization of ‘ecs_type_t ids’ + 8447 | ecs_type_t ids = { .array = &id, .count = 1 }; + | ^~~ +../src/flecs/distr/flecs.c:8446:18: note: crosses initialization of ‘ecs_table_t* table’ + 8446 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8445:19: note: crosses initialization of ‘ecs_record_t* r’ + 8445 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8433:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8433 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:8452:1: error: jump to label ‘error’ + 8452 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8430:5: note: in expansion of macro ‘ecs_check’ + 8430 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8447:16: note: crosses initialization of ‘ecs_type_t ids’ + 8447 | ecs_type_t ids = { .array = &id, .count = 1 }; + | ^~~ +../src/flecs/distr/flecs.c:8446:18: note: crosses initialization of ‘ecs_table_t* table’ + 8446 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8445:19: note: crosses initialization of ‘ecs_record_t* r’ + 8445 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8433:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8433 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:8452:1: error: jump to label ‘error’ + 8452 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8429:5: note: in expansion of macro ‘ecs_check’ + 8429 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8447:16: note: crosses initialization of ‘ecs_type_t ids’ + 8447 | ecs_type_t ids = { .array = &id, .count = 1 }; + | ^~~ +../src/flecs/distr/flecs.c:8446:18: note: crosses initialization of ‘ecs_table_t* table’ + 8446 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8445:19: note: crosses initialization of ‘ecs_record_t* r’ + 8445 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8433:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8433 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_set_id_move(ecs_world_t*, ecs_stage_t*, ecs_entity_t, ecs_id_t, size_t, void*, ecs_cmd_kind_t)’: +../src/flecs/distr/flecs.c:8526:1: error: jump to label ‘error’ + 8526 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8497:5: note: in expansion of macro ‘ecs_check’ + 8497 | ecs_check(dst.ptr != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8499:28: note: crosses initialization of ‘const ecs_type_info_t* ti’ + 8499 | const ecs_type_info_t *ti = dst.ti; + | ^~ +../src/flecs/distr/flecs.c: In function ‘void ecs_set_id(ecs_world_t*, ecs_entity_t, ecs_id_t, size_t, const void*)’: +../src/flecs/distr/flecs.c:8546:1: error: jump to label ‘error’ + 8546 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8539:5: note: in expansion of macro ‘ecs_check’ + 8539 | ecs_check(ecs_id_is_valid(world, id), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8541:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8541 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:8546:1: error: jump to label ‘error’ + 8546 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8538:5: note: in expansion of macro ‘ecs_check’ + 8538 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8541:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8541 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:8546:1: error: jump to label ‘error’ + 8546 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8537:5: note: in expansion of macro ‘ecs_check’ + 8537 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8541:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8541 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_enable_id(ecs_world_t*, ecs_entity_t, ecs_id_t, bool)’: +../src/flecs/distr/flecs.c:8610:1: error: jump to label ‘error’ + 8610 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8576:5: note: in expansion of macro ‘ecs_check’ + 8576 | ecs_check(flecs_can_toggle(world, id), ECS_INVALID_OPERATION, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8604:19: note: crosses initialization of ‘ecs_bitset_t* bs’ + 8604 | ecs_bitset_t *bs = &table->_->bs_columns[index]; + | ^~ +../src/flecs/distr/flecs.c:8587:13: note: crosses initialization of ‘int32_t index’ + 8587 | int32_t index = -1; + | ^~~~~ +../src/flecs/distr/flecs.c:8586:18: note: crosses initialization of ‘ecs_table_t* table’ + 8586 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8584:18: note: crosses initialization of ‘ecs_entity_t bs_id’ + 8584 | ecs_entity_t bs_id = id | ECS_TOGGLE; + | ^~~~~ +../src/flecs/distr/flecs.c:8583:19: note: crosses initialization of ‘ecs_record_t* r’ + 8583 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8610:1: error: jump to label ‘error’ + 8610 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8575:5: note: in expansion of macro ‘ecs_check’ + 8575 | ecs_check(ecs_id_is_valid(world, id), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8604:19: note: crosses initialization of ‘ecs_bitset_t* bs’ + 8604 | ecs_bitset_t *bs = &table->_->bs_columns[index]; + | ^~ +../src/flecs/distr/flecs.c:8587:13: note: crosses initialization of ‘int32_t index’ + 8587 | int32_t index = -1; + | ^~~~~ +../src/flecs/distr/flecs.c:8586:18: note: crosses initialization of ‘ecs_table_t* table’ + 8586 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8584:18: note: crosses initialization of ‘ecs_entity_t bs_id’ + 8584 | ecs_entity_t bs_id = id | ECS_TOGGLE; + | ^~~~~ +../src/flecs/distr/flecs.c:8583:19: note: crosses initialization of ‘ecs_record_t* r’ + 8583 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8610:1: error: jump to label ‘error’ + 8610 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8574:5: note: in expansion of macro ‘ecs_check’ + 8574 | ecs_check(ecs_is_valid(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8604:19: note: crosses initialization of ‘ecs_bitset_t* bs’ + 8604 | ecs_bitset_t *bs = &table->_->bs_columns[index]; + | ^~ +../src/flecs/distr/flecs.c:8587:13: note: crosses initialization of ‘int32_t index’ + 8587 | int32_t index = -1; + | ^~~~~ +../src/flecs/distr/flecs.c:8586:18: note: crosses initialization of ‘ecs_table_t* table’ + 8586 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8584:18: note: crosses initialization of ‘ecs_entity_t bs_id’ + 8584 | ecs_entity_t bs_id = id | ECS_TOGGLE; + | ^~~~~ +../src/flecs/distr/flecs.c:8583:19: note: crosses initialization of ‘ecs_record_t* r’ + 8583 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8610:1: error: jump to label ‘error’ + 8610 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8571:5: note: in expansion of macro ‘ecs_check’ + 8571 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8604:19: note: crosses initialization of ‘ecs_bitset_t* bs’ + 8604 | ecs_bitset_t *bs = &table->_->bs_columns[index]; + | ^~ +../src/flecs/distr/flecs.c:8587:13: note: crosses initialization of ‘int32_t index’ + 8587 | int32_t index = -1; + | ^~~~~ +../src/flecs/distr/flecs.c:8586:18: note: crosses initialization of ‘ecs_table_t* table’ + 8586 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8584:18: note: crosses initialization of ‘ecs_entity_t bs_id’ + 8584 | ecs_entity_t bs_id = id | ECS_TOGGLE; + | ^~~~~ +../src/flecs/distr/flecs.c:8583:19: note: crosses initialization of ‘ecs_record_t* r’ + 8583 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8572:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 8572 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_is_enabled_id(const ecs_world_t*, ecs_entity_t, ecs_id_t)’: +../src/flecs/distr/flecs.c:8647:1: error: jump to label ‘error’ + 8647 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8621:5: note: in expansion of macro ‘ecs_check’ + 8621 | ecs_check(ecs_id_is_valid(world, id), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8644:19: note: crosses initialization of ‘ecs_bitset_t* bs’ + 8644 | ecs_bitset_t *bs = &table->_->bs_columns[index]; + | ^~ +../src/flecs/distr/flecs.c:8634:13: note: crosses initialization of ‘int32_t index’ + 8634 | int32_t index = ecs_table_get_type_index(world, table, bs_id); + | ^~~~~ +../src/flecs/distr/flecs.c:8633:18: note: crosses initialization of ‘ecs_entity_t bs_id’ + 8633 | ecs_entity_t bs_id = id | ECS_TOGGLE; + | ^~~~~ +../src/flecs/distr/flecs.c:8628:18: note: crosses initialization of ‘ecs_table_t* table’ + 8628 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8626:19: note: crosses initialization of ‘ecs_record_t* r’ + 8626 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8647:1: error: jump to label ‘error’ + 8647 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8620:5: note: in expansion of macro ‘ecs_check’ + 8620 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8644:19: note: crosses initialization of ‘ecs_bitset_t* bs’ + 8644 | ecs_bitset_t *bs = &table->_->bs_columns[index]; + | ^~ +../src/flecs/distr/flecs.c:8634:13: note: crosses initialization of ‘int32_t index’ + 8634 | int32_t index = ecs_table_get_type_index(world, table, bs_id); + | ^~~~~ +../src/flecs/distr/flecs.c:8633:18: note: crosses initialization of ‘ecs_entity_t bs_id’ + 8633 | ecs_entity_t bs_id = id | ECS_TOGGLE; + | ^~~~~ +../src/flecs/distr/flecs.c:8628:18: note: crosses initialization of ‘ecs_table_t* table’ + 8628 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8626:19: note: crosses initialization of ‘ecs_record_t* r’ + 8626 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8647:1: error: jump to label ‘error’ + 8647 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8619:5: note: in expansion of macro ‘ecs_check’ + 8619 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8644:19: note: crosses initialization of ‘ecs_bitset_t* bs’ + 8644 | ecs_bitset_t *bs = &table->_->bs_columns[index]; + | ^~ +../src/flecs/distr/flecs.c:8634:13: note: crosses initialization of ‘int32_t index’ + 8634 | int32_t index = ecs_table_get_type_index(world, table, bs_id); + | ^~~~~ +../src/flecs/distr/flecs.c:8633:18: note: crosses initialization of ‘ecs_entity_t bs_id’ + 8633 | ecs_entity_t bs_id = id | ECS_TOGGLE; + | ^~~~~ +../src/flecs/distr/flecs.c:8628:18: note: crosses initialization of ‘ecs_table_t* table’ + 8628 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8626:19: note: crosses initialization of ‘ecs_record_t* r’ + 8626 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c: In function ‘bool ecs_has_id(const ecs_world_t*, ecs_entity_t, ecs_id_t)’: +../src/flecs/distr/flecs.c:8692:52: error: invalid conversion from ‘void*’ to ‘const ecs_switch_t*’ [-fpermissive] + 8692 | uint64_t cur = flecs_switch_get(u_idr->sparse, (uint32_t)entity); + | ~~~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1925:25: note: initializing argument 1 of ‘uint64_t flecs_switch_get(const ecs_switch_t*, uint32_t)’ + 1925 | const ecs_switch_t *sw, + | ~~~~~~~~~~~~~~~~~~~~^~ +../src/flecs/distr/flecs.c:8705:1: error: jump to label ‘error’ + 8705 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8658:5: note: in expansion of macro ‘ecs_check’ + 8658 | ecs_check(id != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8698:13: note: crosses initialization of ‘int32_t column’ + 8698 | int32_t column = ecs_search_relation(world, table, 0, id, + | ^~~~~~ +../src/flecs/distr/flecs.c:8665:18: note: crosses initialization of ‘ecs_table_t* table’ + 8665 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8663:19: note: crosses initialization of ‘ecs_record_t* r’ + 8663 | ecs_record_t *r = flecs_entities_get_any(world, entity); + | ^ +../src/flecs/distr/flecs.c:8705:1: error: jump to label ‘error’ + 8705 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8657:5: note: in expansion of macro ‘ecs_check’ + 8657 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8698:13: note: crosses initialization of ‘int32_t column’ + 8698 | int32_t column = ecs_search_relation(world, table, 0, id, + | ^~~~~~ +../src/flecs/distr/flecs.c:8665:18: note: crosses initialization of ‘ecs_table_t* table’ + 8665 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8663:19: note: crosses initialization of ‘ecs_record_t* r’ + 8663 | ecs_record_t *r = flecs_entities_get_any(world, entity); + | ^ +../src/flecs/distr/flecs.c:8705:1: error: jump to label ‘error’ + 8705 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8656:5: note: in expansion of macro ‘ecs_check’ + 8656 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8698:13: note: crosses initialization of ‘int32_t column’ + 8698 | int32_t column = ecs_search_relation(world, table, 0, id, + | ^~~~~~ +../src/flecs/distr/flecs.c:8665:18: note: crosses initialization of ‘ecs_table_t* table’ + 8665 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8663:19: note: crosses initialization of ‘ecs_record_t* r’ + 8663 | ecs_record_t *r = flecs_entities_get_any(world, entity); + | ^ +../src/flecs/distr/flecs.c: In function ‘bool ecs_owns_id(const ecs_world_t*, ecs_entity_t, ecs_id_t)’: +../src/flecs/distr/flecs.c:8740:1: error: jump to label ‘error’ + 8740 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8716:5: note: in expansion of macro ‘ecs_check’ + 8716 | ecs_check(id != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8723:18: note: crosses initialization of ‘ecs_table_t* table’ + 8723 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8721:19: note: crosses initialization of ‘ecs_record_t* r’ + 8721 | ecs_record_t *r = flecs_entities_get_any(world, entity); + | ^ +../src/flecs/distr/flecs.c:8740:1: error: jump to label ‘error’ + 8740 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8715:5: note: in expansion of macro ‘ecs_check’ + 8715 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8723:18: note: crosses initialization of ‘ecs_table_t* table’ + 8723 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8721:19: note: crosses initialization of ‘ecs_record_t* r’ + 8721 | ecs_record_t *r = flecs_entities_get_any(world, entity); + | ^ +../src/flecs/distr/flecs.c:8740:1: error: jump to label ‘error’ + 8740 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8714:5: note: in expansion of macro ‘ecs_check’ + 8714 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8723:18: note: crosses initialization of ‘ecs_table_t* table’ + 8723 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8721:19: note: crosses initialization of ‘ecs_record_t* r’ + 8721 | ecs_record_t *r = flecs_entities_get_any(world, entity); + | ^ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_get_target(const ecs_world_t*, ecs_entity_t, ecs_entity_t, int32_t)’: +../src/flecs/distr/flecs.c:8789:43: error: invalid conversion from ‘void*’ to ‘const ecs_switch_t*’ [-fpermissive] + 8789 | result = flecs_switch_get(wc_idr->sparse, (uint32_t)entity); + | ~~~~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1925:25: note: initializing argument 1 of ‘uint64_t flecs_switch_get(const ecs_switch_t*, uint32_t)’ + 1925 | const ecs_switch_t *sw, + | ~~~~~~~~~~~~~~~~~~~~^~ +../src/flecs/distr/flecs.c:8793:1: error: jump to label ‘look_in_base’ + 8793 | look_in_base: + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8779:14: note: from here + 8779 | goto look_in_base; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8782:18: note: crosses initialization of ‘ecs_entity_t result’ + 8782 | ecs_entity_t result = + | ^~~~~~ +../src/flecs/distr/flecs.c:8793:1: error: jump to label ‘look_in_base’ + 8793 | look_in_base: + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8771:18: note: from here + 8771 | goto look_in_base; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8782:18: note: crosses initialization of ‘ecs_entity_t result’ + 8782 | ecs_entity_t result = + | ^~~~~~ +../src/flecs/distr/flecs.c:8812:1: error: jump to label ‘not_found’ + 8812 | not_found: + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8760:14: note: from here + 8760 | goto not_found; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8782:18: note: crosses initialization of ‘ecs_entity_t result’ + 8782 | ecs_entity_t result = + | ^~~~~~ +../src/flecs/distr/flecs.c:8765:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ + 8765 | const ecs_table_record_t *tr = NULL; + | ^~ +../src/flecs/distr/flecs.c:8764:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 8764 | ecs_id_record_t *idr = flecs_id_record_get(world, wc); + | ^~~ +../src/flecs/distr/flecs.c:8763:14: note: crosses initialization of ‘ecs_id_t wc’ + 8763 | ecs_id_t wc = ecs_pair(rel, EcsWildcard); + | ^~ +../src/flecs/distr/flecs.c:8813:1: error: jump to label ‘error’ + 8813 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8752:5: note: in expansion of macro ‘ecs_check’ + 8752 | ecs_check(rel != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8782:18: note: crosses initialization of ‘ecs_entity_t result’ + 8782 | ecs_entity_t result = + | ^~~~~~ +../src/flecs/distr/flecs.c:8765:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ + 8765 | const ecs_table_record_t *tr = NULL; + | ^~ +../src/flecs/distr/flecs.c:8764:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 8764 | ecs_id_record_t *idr = flecs_id_record_get(world, wc); + | ^~~ +../src/flecs/distr/flecs.c:8763:14: note: crosses initialization of ‘ecs_id_t wc’ + 8763 | ecs_id_t wc = ecs_pair(rel, EcsWildcard); + | ^~ +../src/flecs/distr/flecs.c:8758:18: note: crosses initialization of ‘ecs_table_t* table’ + 8758 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8756:19: note: crosses initialization of ‘ecs_record_t* r’ + 8756 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8813:1: error: jump to label ‘error’ + 8813 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8751:5: note: in expansion of macro ‘ecs_check’ + 8751 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8782:18: note: crosses initialization of ‘ecs_entity_t result’ + 8782 | ecs_entity_t result = + | ^~~~~~ +../src/flecs/distr/flecs.c:8765:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ + 8765 | const ecs_table_record_t *tr = NULL; + | ^~ +../src/flecs/distr/flecs.c:8764:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 8764 | ecs_id_record_t *idr = flecs_id_record_get(world, wc); + | ^~~ +../src/flecs/distr/flecs.c:8763:14: note: crosses initialization of ‘ecs_id_t wc’ + 8763 | ecs_id_t wc = ecs_pair(rel, EcsWildcard); + | ^~ +../src/flecs/distr/flecs.c:8758:18: note: crosses initialization of ‘ecs_table_t* table’ + 8758 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8756:19: note: crosses initialization of ‘ecs_record_t* r’ + 8756 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:8813:1: error: jump to label ‘error’ + 8813 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8750:5: note: in expansion of macro ‘ecs_check’ + 8750 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8782:18: note: crosses initialization of ‘ecs_entity_t result’ + 8782 | ecs_entity_t result = + | ^~~~~~ +../src/flecs/distr/flecs.c:8765:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ + 8765 | const ecs_table_record_t *tr = NULL; + | ^~ +../src/flecs/distr/flecs.c:8764:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 8764 | ecs_id_record_t *idr = flecs_id_record_get(world, wc); + | ^~~ +../src/flecs/distr/flecs.c:8763:14: note: crosses initialization of ‘ecs_id_t wc’ + 8763 | ecs_id_t wc = ecs_pair(rel, EcsWildcard); + | ^~ +../src/flecs/distr/flecs.c:8758:18: note: crosses initialization of ‘ecs_table_t* table’ + 8758 | ecs_table_t *table = r->table; + | ^~~~~ +../src/flecs/distr/flecs.c:8756:19: note: crosses initialization of ‘ecs_record_t* r’ + 8756 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_get_target_for_id(const ecs_world_t*, ecs_entity_t, ecs_entity_t, ecs_id_t)’: +../src/flecs/distr/flecs.c:8875:1: error: jump to label ‘error’ + 8875 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8831:5: note: in expansion of macro ‘ecs_check’ + 8831 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8840:18: note: crosses initialization of ‘ecs_entity_t subject’ + 8840 | ecs_entity_t subject = 0; + | ^~~~~~~ +../src/flecs/distr/flecs.c:8839:18: note: crosses initialization of ‘ecs_table_t* table’ + 8839 | ecs_table_t *table = ecs_get_table(world, entity); + | ^~~~~ +../src/flecs/distr/flecs.c:8875:1: error: jump to label ‘error’ + 8875 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8830:5: note: in expansion of macro ‘ecs_check’ + 8830 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8840:18: note: crosses initialization of ‘ecs_entity_t subject’ + 8840 | ecs_entity_t subject = 0; + | ^~~~~~~ +../src/flecs/distr/flecs.c:8839:18: note: crosses initialization of ‘ecs_table_t* table’ + 8839 | ecs_table_t *table = ecs_get_table(world, entity); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘int32_t ecs_get_depth(const ecs_world_t*, ecs_entity_t, ecs_entity_t)’: +../src/flecs/distr/flecs.c:8895:1: error: jump to label ‘error’ + 8895 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8885:5: note: in expansion of macro ‘ecs_check’ + 8885 | ecs_check(ecs_has_id(world, rel, EcsAcyclic), ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8889:18: note: crosses initialization of ‘ecs_table_t* table’ + 8889 | ecs_table_t *table = ecs_get_table(world, entity); + | ^~~~~ +../src/flecs/distr/flecs.c:8895:1: error: jump to label ‘error’ + 8895 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8884:5: note: in expansion of macro ‘ecs_check’ + 8884 | ecs_check(ecs_is_valid(world, rel), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8889:18: note: crosses initialization of ‘ecs_table_t* table’ + 8889 | ecs_table_t *table = ecs_get_table(world, entity); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘const char* flecs_get_identifier(const ecs_world_t*, ecs_entity_t, ecs_entity_t)’: +../src/flecs/distr/flecs.c:8916:1: error: jump to label ‘error’ + 8916 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8906:5: note: in expansion of macro ‘ecs_check’ + 8906 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8908:26: note: crosses initialization of ‘const EcsIdentifier* ptr’ + 8908 | const EcsIdentifier *ptr = ecs_get_pair( + | ^~~ +../src/flecs/distr/flecs.c:8916:1: error: jump to label ‘error’ + 8916 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8905:5: note: in expansion of macro ‘ecs_check’ + 8905 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8908:26: note: crosses initialization of ‘const EcsIdentifier* ptr’ + 8908 | const EcsIdentifier *ptr = ecs_get_pair( + | ^~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t flecs_set_identifier(ecs_world_t*, ecs_stage_t*, ecs_entity_t, ecs_entity_t, const char*)’: +../src/flecs/distr/flecs.c:8974:1: error: jump to label ‘error’ + 8974 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8948:5: note: in expansion of macro ‘ecs_check’ + 8948 | ecs_check(entity != 0 || name != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8959:20: note: crosses initialization of ‘EcsIdentifier* ptr’ + 8959 | EcsIdentifier *ptr = ecs_ensure_pair(world, entity, EcsIdentifier, tag); + | ^~~ +../src/flecs/distr/flecs.c:8974:1: error: jump to label ‘error’ + 8974 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:8947:5: note: in expansion of macro ‘ecs_check’ + 8947 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:8959:20: note: crosses initialization of ‘EcsIdentifier* ptr’ + 8959 | EcsIdentifier *ptr = ecs_ensure_pair(world, entity, EcsIdentifier, tag); + | ^~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_set_name(ecs_world_t*, ecs_entity_t, const char*)’: +../src/flecs/distr/flecs.c:8984:34: error: taking address of rvalue [-fpermissive] + 8984 | return ecs_entity(world, { + | ^ + 8985 | .name = name + | ~~~~~~~~~~~~ + 8986 | }); + | ~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_get_alive(const ecs_world_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:9101:1: error: jump to label ‘error’ + 9101 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9076:5: note: in expansion of macro ‘ecs_check’ + 9076 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:9095:18: note: crosses initialization of ‘ecs_entity_t current’ + 9095 | ecs_entity_t current = flecs_entities_get_alive(world, entity); + | ^~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_make_alive(ecs_world_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:9145:1: error: jump to label ‘error’ + 9145 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9110:5: note: in expansion of macro ‘ecs_check’ + 9110 | ecs_check(entity != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:9122:18: note: crosses initialization of ‘ecs_entity_t any’ + 9122 | ecs_entity_t any = ecs_get_alive(world, (uint32_t)entity); + | ^~~ +../src/flecs/distr/flecs.c: In function ‘ecs_table_t* ecs_get_table(const ecs_world_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:9224:1: error: jump to label ‘error’ + 9224 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9217:5: note: in expansion of macro ‘ecs_check’ + 9217 | ecs_check(ecs_is_valid(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:9221:19: note: crosses initialization of ‘ecs_record_t* record’ + 9221 | ecs_record_t *record = flecs_entities_get(world, entity); + | ^~~~~~ +../src/flecs/distr/flecs.c:9224:1: error: jump to label ‘error’ + 9224 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9216:5: note: in expansion of macro ‘ecs_check’ + 9216 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:9221:19: note: crosses initialization of ‘ecs_record_t* record’ + 9221 | ecs_record_t *record = flecs_entities_get(world, entity); + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘const ecs_type_info_t* ecs_get_type_info(const ecs_world_t*, ecs_id_t)’: +../src/flecs/distr/flecs.c:9273:1: error: jump to label ‘error’ + 9273 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9245:5: note: in expansion of macro ‘ecs_check’ + 9245 | ecs_check(id != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:9249:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 9249 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c:9273:1: error: jump to label ‘error’ + 9273 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9244:5: note: in expansion of macro ‘ecs_check’ + 9244 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:9249:22: note: crosses initialization of ‘ecs_id_record_t* idr’ + 9249 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_get_typeid(const ecs_world_t*, ecs_id_t)’: +../src/flecs/distr/flecs.c:9287:1: error: jump to label ‘error’ + 9287 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9281:5: note: in expansion of macro ‘ecs_check’ + 9281 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:9282:28: note: crosses initialization of ‘const ecs_type_info_t* ti’ + 9282 | const ecs_type_info_t *ti = ecs_get_type_info(world, id); + | ^~ +../src/flecs/distr/flecs.c: In function ‘int32_t ecs_count_id(const ecs_world_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:9345:1: error: jump to label ‘error’ + 9345 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9332:5: note: in expansion of macro ‘ecs_check’ + 9332 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:9339:16: note: crosses initialization of ‘ecs_iter_t it’ + 9339 | ecs_iter_t it = ecs_each_id(world, id); + | ^~ +../src/flecs/distr/flecs.c:9338:13: note: crosses initialization of ‘int32_t count’ + 9338 | int32_t count = 0; + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_defer_begin(ecs_world_t*)’: +../src/flecs/distr/flecs.c:9381:1: error: jump to label ‘error’ + 9381 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9378:5: note: in expansion of macro ‘ecs_check’ + 9378 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:9379:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 9379 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_defer_end(ecs_world_t*)’: +../src/flecs/distr/flecs.c:9391:1: error: jump to label ‘error’ + 9391 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9388:5: note: in expansion of macro ‘ecs_check’ + 9388 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:9389:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 9389 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_defer_suspend(ecs_world_t*)’: +../src/flecs/distr/flecs.c:9405:1: error: jump to label ‘error’ + 9405 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9399:5: note: in expansion of macro ‘ecs_check’ + 9399 | ecs_check(ecs_is_deferred(world), ECS_INVALID_OPERATION, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:9401:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 9401 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:9405:1: error: jump to label ‘error’ + 9405 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9398:5: note: in expansion of macro ‘ecs_check’ + 9398 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:9401:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 9401 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_defer_resume(ecs_world_t*)’: +../src/flecs/distr/flecs.c:9417:1: error: jump to label ‘error’ + 9417 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9412:5: note: in expansion of macro ‘ecs_check’ + 9412 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:9413:18: note: crosses initialization of ‘ecs_stage_t* stage’ + 9413 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘char* ecs_entity_str(const ecs_world_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:9557:1: error: jump to label ‘error’ + 9557 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9545:5: note: in expansion of macro ‘ecs_check’ + 9545 | ecs_check(ecs_is_alive(world, entity), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:9550:23: note: crosses initialization of ‘const ecs_type_t* type’ + 9550 | const ecs_type_t *type = ecs_get_type(world, entity); + | ^~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_discard_cmd(ecs_world_t*, ecs_cmd_t*)’: +../src/flecs/distr/flecs.c:9627:48: error: invalid conversion from ‘void*’ to ‘ecs_event_desc_t*’ [-fpermissive] + 9627 | flecs_free_cmd_event(world, cmd->is._1.value); + | ~~~~~~~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:9602:23: note: initializing argument 2 of ‘void flecs_free_cmd_event(ecs_world_t*, ecs_event_desc_t*)’ + 9602 | ecs_event_desc_t *desc) + | ~~~~~~~~~~~~~~~~~~^~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_cmd_batch_for_entity(ecs_world_t*, ecs_table_diff_builder_t*, ecs_entity_t, ecs_cmd_t*, int32_t)’: +../src/flecs/distr/flecs.c:9842:41: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 9842 | ecs_id_t *ids = diff->added.array; + | ~~~~~~~~~~~~^~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1233:17: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 1233 | ecs_vec_grow(allocator, vec, ECS_SIZEOF(T), elem_count) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:9878:33: note: in expansion of macro ‘ecs_vec_grow_t’ + 9878 | ecs_id_t *ids = ecs_vec_grow_t(&world->allocator, + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:9910:38: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 9910 | ecs_type_t added = { diff->added.array, diff->added.count }; + | ~~~~~~~~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘bool flecs_defer_end(ecs_world_t*, ecs_stage_t*)’: +../src/flecs/distr/flecs.c:10068:44: error: invalid conversion from ‘void*’ to ‘ecs_cmd_t*’ [-fpermissive] +10068 | ecs_cmd_t *cmds = ecs_vec_first(queue); + | ~~~~~~~~~~~~~^~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:10207:59: error: invalid conversion from ‘void*’ to ‘const char*’ [-fpermissive] +10207 | ecs_set_name(world, e, cmd->is._1.value); + | ~~~~~~~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:8981:17: note: initializing argument 3 of ‘ecs_entity_t ecs_set_name(ecs_world_t*, ecs_entity_t, const char*)’ + 8981 | const char *name) + | ~~~~~~~~~~~~^~~~ +../src/flecs/distr/flecs.c:10215:57: error: invalid conversion from ‘void*’ to ‘ecs_event_desc_t*’ [-fpermissive] +10215 | ecs_event_desc_t *desc = cmd->is._1.value; + | ~~~~~~~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘bool flecs_defer_purge(ecs_world_t*, ecs_stage_t*)’: +../src/flecs/distr/flecs.c:10264:44: error: invalid conversion from ‘void*’ to ‘ecs_cmd_t*’ [-fpermissive] +10264 | ecs_cmd_t *cmds = ecs_vec_first(&commands); + | ~~~~~~~~~~~~~^~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘const char* flecs_path_elem(const char*, const char*, char**, ecs_size_t*)’: +../src/flecs/distr/flecs.h:2607:47: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive] + 2607 | #define ecs_os_malloc(size) ecs_os_api.malloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:10475:40: note: in expansion of macro ‘ecs_os_malloc’ +10475 | char *new_buffer = ecs_os_malloc(size * 2 + 1); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2613:54: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive] + 2613 | #define ecs_os_realloc(ptr, size) ecs_os_api.realloc_(ptr, size) + | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:10479:30: note: in expansion of macro ‘ecs_os_realloc’ +10479 | buffer = ecs_os_realloc(buffer, size * 2 + 1); + | ^~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_bootstrap_hierarchy(ecs_world_t*)’: +../src/flecs/distr/flecs.c:10577:37: error: taking address of rvalue [-fpermissive] +10577 | .entity = ecs_entity(world, { .parent = EcsFlecsInternals }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:53: note: in definition of macro ‘ecs_observer’ + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:10577:19: note: in expansion of macro ‘ecs_entity’ +10577 | .entity = ecs_entity(world, { .parent = EcsFlecsInternals }), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:10576:5: note: in expansion of macro ‘ecs_observer’ +10576 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_lookup_child(const ecs_world_t*, ecs_entity_t, const char*)’: +../src/flecs/distr/flecs.c:10663:1: error: jump to label ‘error’ +10663 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:10643:5: note: in expansion of macro ‘ecs_check’ +10643 | ecs_check(world != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:10657:20: note: crosses initialization of ‘ecs_hashmap_t* index’ +10657 | ecs_hashmap_t *index = flecs_id_name_index_get(world, pair); + | ^~~~~ +../src/flecs/distr/flecs.c:10656:14: note: crosses initialization of ‘ecs_id_t pair’ +10656 | ecs_id_t pair = ecs_childof(parent); + | ^~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_lookup_symbol(const ecs_world_t*, const char*, bool, bool)’: +../src/flecs/distr/flecs.c:10697:1: error: jump to label ‘error’ +10697 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:10684:5: note: in expansion of macro ‘ecs_check’ +10684 | ecs_check(world != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:10687:18: note: crosses initialization of ‘ecs_entity_t e’ +10687 | ecs_entity_t e = 0; + | ^ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_lookup_path_w_sep(const ecs_world_t*, ecs_entity_t, const char*, const char*, const char*, bool)’: +../src/flecs/distr/flecs.c:10794:1: error: jump to label ‘error’ +10794 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:10713:5: note: in expansion of macro ‘ecs_check’ +10713 | ecs_check(world != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:10734:25: note: crosses initialization of ‘const ecs_entity_t* lookup_path_cur’ +10734 | const ecs_entity_t *lookup_path_cur = lookup_path; + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:10733:25: note: crosses initialization of ‘const ecs_entity_t* lookup_path’ +10733 | const ecs_entity_t *lookup_path = ecs_get_lookup_path(stage); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:10731:10: note: crosses initialization of ‘bool lookup_path_search’ +10731 | bool lookup_path_search = false; + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:10729:13: note: crosses initialization of ‘int32_t size’ +10729 | int32_t size = ECS_NAME_BUFFER_LENGTH; + | ^~~~ +../src/flecs/distr/flecs.c:10727:41: note: crosses initialization of ‘char* elem’ +10727 | char buff[ECS_NAME_BUFFER_LENGTH], *elem = buff; + | ^~~~ +../src/flecs/distr/flecs.c:10717:18: note: crosses initialization of ‘ecs_entity_t e’ +10717 | ecs_entity_t e = flecs_get_builtin(path); + | ^ +../src/flecs/distr/flecs.c:10714:24: note: crosses initialization of ‘const ecs_world_t* stage’ +10714 | const ecs_world_t *stage = world; + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_set_scope(ecs_world_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:10809:1: error: jump to label ‘error’ +10809 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:10802:5: note: in expansion of macro ‘ecs_check’ +10802 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:10805:18: note: crosses initialization of ‘ecs_entity_t cur’ +10805 | ecs_entity_t cur = stage->scope; + | ^~~ +../src/flecs/distr/flecs.c:10803:18: note: crosses initialization of ‘ecs_stage_t* stage’ +10803 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_get_scope(const ecs_world_t*)’: +../src/flecs/distr/flecs.c:10819:1: error: jump to label ‘error’ +10819 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:10816:5: note: in expansion of macro ‘ecs_check’ +10816 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:10817:24: note: crosses initialization of ‘const ecs_stage_t* stage’ +10817 | const ecs_stage_t *stage = flecs_stage_from_readonly_world(world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t* ecs_set_lookup_path(ecs_world_t*, const ecs_entity_t*)’: +../src/flecs/distr/flecs.c:10835:1: error: jump to label ‘error’ +10835 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:10827:5: note: in expansion of macro ‘ecs_check’ +10827 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:10831:19: note: crosses initialization of ‘ecs_entity_t* cur’ +10831 | ecs_entity_t *cur = ECS_CONST_CAST(ecs_entity_t*, stage->lookup_path); + | ^~~ +../src/flecs/distr/flecs.c:10828:18: note: crosses initialization of ‘ecs_stage_t* stage’ +10828 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t* ecs_get_lookup_path(const ecs_world_t*)’: +../src/flecs/distr/flecs.c:10846:1: error: jump to label ‘error’ +10846 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:10842:5: note: in expansion of macro ‘ecs_check’ +10842 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:10843:24: note: crosses initialization of ‘const ecs_stage_t* stage’ +10843 | const ecs_stage_t *stage = flecs_stage_from_readonly_world(world); + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_add_path_w_sep(ecs_world_t*, ecs_entity_t, ecs_entity_t, const char*, const char*, const char*)’: +../src/flecs/distr/flecs.c:10955:47: error: taking address of rvalue [-fpermissive] +10955 | e = ecs_entity(world, {0}); + | ^~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:10988:1: error: jump to label ‘error’ +10988 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:10899:5: note: in expansion of macro ‘ecs_check’ +10899 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:10933:11: note: crosses initialization of ‘char* name’ +10933 | char *name = NULL; + | ^~~~ +../src/flecs/distr/flecs.c:10932:18: note: crosses initialization of ‘ecs_entity_t cur’ +10932 | ecs_entity_t cur = parent; + | ^~~ +../src/flecs/distr/flecs.c:10929:10: note: crosses initialization of ‘bool suspend_defer’ +10929 | bool suspend_defer = ecs_is_deferred(world) && + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:10924:13: note: crosses initialization of ‘int32_t size’ +10924 | int32_t size = ECS_NAME_BUFFER_LENGTH; + | ^~~~ +../src/flecs/distr/flecs.c:10923:11: note: crosses initialization of ‘char* elem’ +10923 | char *elem = buff; + | ^~~~ +../src/flecs/distr/flecs.c:10922:17: note: crosses initialization of ‘const char* ptr’ +10922 | const char *ptr = path; + | ^~~ +../src/flecs/distr/flecs.c:10917:10: note: crosses initialization of ‘bool root_path’ +10917 | bool root_path = flecs_is_root_path(path, prefix); + | ^~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_iter_init(const ecs_world_t*, ecs_iter_t*, ecs_flags8_t)’: +../src/flecs/distr/flecs.h:1650:23: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 1650 | flecs_stack_calloc(stack, ECS_SIZEOF(T) * count, ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:11178:17: note: in expansion of macro ‘flecs_stack_calloc_n’ +11178 | it->f = flecs_stack_calloc_n(stack, T, count);\ + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11222:5: note: in expansion of macro ‘INIT_CACHE’ +11222 | INIT_CACHE(it, stack, fields, ids, ecs_id_t, it->field_count); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:1650:23: error: invalid conversion from ‘void*’ to ‘ecs_entity_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 1650 | flecs_stack_calloc(stack, ECS_SIZEOF(T) * count, ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:11178:17: note: in expansion of macro ‘flecs_stack_calloc_n’ +11178 | it->f = flecs_stack_calloc_n(stack, T, count);\ + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11223:5: note: in expansion of macro ‘INIT_CACHE’ +11223 | INIT_CACHE(it, stack, fields, sources, ecs_entity_t, it->field_count); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:1650:23: error: invalid conversion from ‘void*’ to ‘const ecs_table_record_t**’ [-fpermissive] + 1650 | flecs_stack_calloc(stack, ECS_SIZEOF(T) * count, ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:11178:17: note: in expansion of macro ‘flecs_stack_calloc_n’ +11178 | it->f = flecs_stack_calloc_n(stack, T, count);\ + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11224:5: note: in expansion of macro ‘INIT_CACHE’ +11224 | INIT_CACHE(it, stack, fields, trs, ecs_table_record_t*, it->field_count); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:1650:23: error: invalid conversion from ‘void*’ to ‘ecs_var_t*’ [-fpermissive] + 1650 | flecs_stack_calloc(stack, ECS_SIZEOF(T) * count, ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:11178:17: note: in expansion of macro ‘flecs_stack_calloc_n’ +11178 | it->f = flecs_stack_calloc_n(stack, T, count);\ + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11225:5: note: in expansion of macro ‘INIT_CACHE’ +11225 | INIT_CACHE(it, stack, fields, variables, ecs_var_t, it->variable_count); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void* ecs_field_w_size(const ecs_iter_t*, size_t, int8_t)’: +../src/flecs/distr/flecs.c:11312:1: error: jump to label ‘error’ +11312 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11265:5: note: in expansion of macro ‘ecs_check’ +11265 | ecs_check(!size || ecs_field_size(it, index) == size || + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11302:19: note: crosses initialization of ‘ecs_column_t* column’ +11302 | ecs_column_t *column = &table->data.columns[column_index]; + | ^~~~~~ +../src/flecs/distr/flecs.c:11296:13: note: crosses initialization of ‘int32_t column_index’ +11296 | int32_t column_index = tr->column; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11281:18: note: crosses initialization of ‘ecs_entity_t src’ +11281 | ecs_entity_t src = it->sources[index]; + | ^~~ +../src/flecs/distr/flecs.c:11276:22: note: crosses initialization of ‘ecs_id_record_t* idr’ +11276 | ecs_id_record_t *idr = (ecs_id_record_t*)tr->hdr.cache; + | ^~~ +../src/flecs/distr/flecs.c:11270:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ +11270 | const ecs_table_record_t *tr = it->trs[index]; + | ^~ +../src/flecs/distr/flecs.c:11312:1: error: jump to label ‘error’ +11312 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11263:5: note: in expansion of macro ‘ecs_check’ +11263 | ecs_check(index < it->field_count, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11302:19: note: crosses initialization of ‘ecs_column_t* column’ +11302 | ecs_column_t *column = &table->data.columns[column_index]; + | ^~~~~~ +../src/flecs/distr/flecs.c:11296:13: note: crosses initialization of ‘int32_t column_index’ +11296 | int32_t column_index = tr->column; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11281:18: note: crosses initialization of ‘ecs_entity_t src’ +11281 | ecs_entity_t src = it->sources[index]; + | ^~~ +../src/flecs/distr/flecs.c:11276:22: note: crosses initialization of ‘ecs_id_record_t* idr’ +11276 | ecs_id_record_t *idr = (ecs_id_record_t*)tr->hdr.cache; + | ^~~ +../src/flecs/distr/flecs.c:11270:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ +11270 | const ecs_table_record_t *tr = it->trs[index]; + | ^~ +../src/flecs/distr/flecs.c:11312:1: error: jump to label ‘error’ +11312 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11261:5: note: in expansion of macro ‘ecs_check’ +11261 | ecs_check(index >= 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11302:19: note: crosses initialization of ‘ecs_column_t* column’ +11302 | ecs_column_t *column = &table->data.columns[column_index]; + | ^~~~~~ +../src/flecs/distr/flecs.c:11296:13: note: crosses initialization of ‘int32_t column_index’ +11296 | int32_t column_index = tr->column; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11281:18: note: crosses initialization of ‘ecs_entity_t src’ +11281 | ecs_entity_t src = it->sources[index]; + | ^~~ +../src/flecs/distr/flecs.c:11276:22: note: crosses initialization of ‘ecs_id_record_t* idr’ +11276 | ecs_id_record_t *idr = (ecs_id_record_t*)tr->hdr.cache; + | ^~~ +../src/flecs/distr/flecs.c:11270:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ +11270 | const ecs_table_record_t *tr = it->trs[index]; + | ^~ +../src/flecs/distr/flecs.c:11312:1: error: jump to label ‘error’ +11312 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11259:5: note: in expansion of macro ‘ecs_check’ +11259 | ecs_check(it->flags & EcsIterIsValid, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11302:19: note: crosses initialization of ‘ecs_column_t* column’ +11302 | ecs_column_t *column = &table->data.columns[column_index]; + | ^~~~~~ +../src/flecs/distr/flecs.c:11296:13: note: crosses initialization of ‘int32_t column_index’ +11296 | int32_t column_index = tr->column; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11281:18: note: crosses initialization of ‘ecs_entity_t src’ +11281 | ecs_entity_t src = it->sources[index]; + | ^~~ +../src/flecs/distr/flecs.c:11276:22: note: crosses initialization of ‘ecs_id_record_t* idr’ +11276 | ecs_id_record_t *idr = (ecs_id_record_t*)tr->hdr.cache; + | ^~~ +../src/flecs/distr/flecs.c:11270:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ +11270 | const ecs_table_record_t *tr = it->trs[index]; + | ^~ +../src/flecs/distr/flecs.c: In function ‘void* ecs_field_at_w_size(const ecs_iter_t*, size_t, int8_t, int32_t)’: +../src/flecs/distr/flecs.c:11348:38: error: invalid conversion from ‘void*’ to ‘const ecs_sparse_t*’ [-fpermissive] +11348 | return flecs_sparse_get_any(idr->sparse, flecs_uto(int32_t, size), src); + | ~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1411:25: note: initializing argument 1 of ‘void* flecs_sparse_get_any(const ecs_sparse_t*, ecs_size_t, uint64_t)’ + 1411 | const ecs_sparse_t *sparse, + | ~~~~~~~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c:11349:1: error: jump to label ‘error’ +11349 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11328:5: note: in expansion of macro ‘ecs_check’ +11328 | ecs_check(!size || ecs_field_size(it, index) == size || + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11343:18: note: crosses initialization of ‘ecs_entity_t src’ +11343 | ecs_entity_t src = it->sources[index]; + | ^~~ +../src/flecs/distr/flecs.c:11338:22: note: crosses initialization of ‘ecs_id_record_t* idr’ +11338 | ecs_id_record_t *idr = (ecs_id_record_t*)tr->hdr.cache; + | ^~~ +../src/flecs/distr/flecs.c:11332:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ +11332 | const ecs_table_record_t *tr = it->trs[index]; + | ^~ +../src/flecs/distr/flecs.c:11349:1: error: jump to label ‘error’ +11349 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11326:5: note: in expansion of macro ‘ecs_check’ +11326 | ecs_check(index < it->field_count, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11343:18: note: crosses initialization of ‘ecs_entity_t src’ +11343 | ecs_entity_t src = it->sources[index]; + | ^~~ +../src/flecs/distr/flecs.c:11338:22: note: crosses initialization of ‘ecs_id_record_t* idr’ +11338 | ecs_id_record_t *idr = (ecs_id_record_t*)tr->hdr.cache; + | ^~~ +../src/flecs/distr/flecs.c:11332:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ +11332 | const ecs_table_record_t *tr = it->trs[index]; + | ^~ +../src/flecs/distr/flecs.c:11349:1: error: jump to label ‘error’ +11349 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11324:5: note: in expansion of macro ‘ecs_check’ +11324 | ecs_check(index >= 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11343:18: note: crosses initialization of ‘ecs_entity_t src’ +11343 | ecs_entity_t src = it->sources[index]; + | ^~~ +../src/flecs/distr/flecs.c:11338:22: note: crosses initialization of ‘ecs_id_record_t* idr’ +11338 | ecs_id_record_t *idr = (ecs_id_record_t*)tr->hdr.cache; + | ^~~ +../src/flecs/distr/flecs.c:11332:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ +11332 | const ecs_table_record_t *tr = it->trs[index]; + | ^~ +../src/flecs/distr/flecs.c:11349:1: error: jump to label ‘error’ +11349 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11322:5: note: in expansion of macro ‘ecs_check’ +11322 | ecs_check(it->flags & EcsIterIsValid, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11343:18: note: crosses initialization of ‘ecs_entity_t src’ +11343 | ecs_entity_t src = it->sources[index]; + | ^~~ +../src/flecs/distr/flecs.c:11338:22: note: crosses initialization of ‘ecs_id_record_t* idr’ +11338 | ecs_id_record_t *idr = (ecs_id_record_t*)tr->hdr.cache; + | ^~~ +../src/flecs/distr/flecs.c:11332:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ +11332 | const ecs_table_record_t *tr = it->trs[index]; + | ^~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_field_is_readonly(const ecs_iter_t*, int8_t)’: +../src/flecs/distr/flecs.c:11380:1: error: jump to label ‘error’ +11380 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11364:5: note: in expansion of macro ‘ecs_check’ +11364 | ecs_check(index < it->field_count, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11366:23: note: crosses initialization of ‘const ecs_term_t* term’ +11366 | const ecs_term_t *term = &it->query->terms[index]; + | ^~~~ +../src/flecs/distr/flecs.c:11380:1: error: jump to label ‘error’ +11380 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11362:5: note: in expansion of macro ‘ecs_check’ +11362 | ecs_check(index >= 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11366:23: note: crosses initialization of ‘const ecs_term_t* term’ +11366 | const ecs_term_t *term = &it->query->terms[index]; + | ^~~~ +../src/flecs/distr/flecs.c:11380:1: error: jump to label ‘error’ +11380 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11361:5: note: in expansion of macro ‘ecs_check’ +11361 | ecs_check(it->query->terms != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11366:23: note: crosses initialization of ‘const ecs_term_t* term’ +11366 | const ecs_term_t *term = &it->query->terms[index]; + | ^~~~ +../src/flecs/distr/flecs.c:11380:1: error: jump to label ‘error’ +11380 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11359:5: note: in expansion of macro ‘ecs_check’ +11359 | ecs_check(it->query != NULL, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11366:23: note: crosses initialization of ‘const ecs_term_t* term’ +11366 | const ecs_term_t *term = &it->query->terms[index]; + | ^~~~ +../src/flecs/distr/flecs.c:11380:1: error: jump to label ‘error’ +11380 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11357:5: note: in expansion of macro ‘ecs_check’ +11357 | ecs_check(it->flags & EcsIterIsValid, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11366:23: note: crosses initialization of ‘const ecs_term_t* term’ +11366 | const ecs_term_t *term = &it->query->terms[index]; + | ^~~~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_field_is_writeonly(const ecs_iter_t*, int8_t)’: +../src/flecs/distr/flecs.c:11400:1: error: jump to label ‘error’ +11400 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11395:5: note: in expansion of macro ‘ecs_check’ +11395 | ecs_check(index < it->field_count, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11398:23: note: crosses initialization of ‘const ecs_term_t* term’ +11398 | const ecs_term_t *term = &it->query->terms[index]; + | ^~~~ +../src/flecs/distr/flecs.c:11400:1: error: jump to label ‘error’ +11400 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11393:5: note: in expansion of macro ‘ecs_check’ +11393 | ecs_check(index >= 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11398:23: note: crosses initialization of ‘const ecs_term_t* term’ +11398 | const ecs_term_t *term = &it->query->terms[index]; + | ^~~~ +../src/flecs/distr/flecs.c:11400:1: error: jump to label ‘error’ +11400 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11392:5: note: in expansion of macro ‘ecs_check’ +11392 | ecs_check(it->query->terms != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11398:23: note: crosses initialization of ‘const ecs_term_t* term’ +11398 | const ecs_term_t *term = &it->query->terms[index]; + | ^~~~ +../src/flecs/distr/flecs.c:11400:1: error: jump to label ‘error’ +11400 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11390:5: note: in expansion of macro ‘ecs_check’ +11390 | ecs_check(it->query != NULL, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11398:23: note: crosses initialization of ‘const ecs_term_t* term’ +11398 | const ecs_term_t *term = &it->query->terms[index]; + | ^~~~ +../src/flecs/distr/flecs.c:11400:1: error: jump to label ‘error’ +11400 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11388:5: note: in expansion of macro ‘ecs_check’ +11388 | ecs_check(it->flags & EcsIterIsValid, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11398:23: note: crosses initialization of ‘const ecs_term_t* term’ +11398 | const ecs_term_t *term = &it->query->terms[index]; + | ^~~~ +../src/flecs/distr/flecs.c: In function ‘int32_t ecs_field_column(const ecs_iter_t*, int8_t)’: +../src/flecs/distr/flecs.c:11463:1: error: jump to label ‘error’ +11463 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11454:5: note: in expansion of macro ‘ecs_check’ +11454 | ecs_check(index < it->field_count, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11457:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ +11457 | const ecs_table_record_t *tr = it->trs[index]; + | ^~ +../src/flecs/distr/flecs.c:11463:1: error: jump to label ‘error’ +11463 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11452:5: note: in expansion of macro ‘ecs_check’ +11452 | ecs_check(index >= 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11457:31: note: crosses initialization of ‘const ecs_table_record_t* tr’ +11457 | const ecs_table_record_t *tr = it->trs[index]; + | ^~ +../src/flecs/distr/flecs.c: In function ‘int32_t ecs_iter_count(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:11607:1: error: jump to label ‘error’ +11607 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11598:5: note: in expansion of macro ‘ecs_check’ +11598 | ecs_check(it != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11602:13: note: crosses initialization of ‘int32_t count’ +11602 | int32_t count = 0; + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_iter_first(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:11625:1: error: jump to label ‘error’ +11625 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11614:5: note: in expansion of macro ‘ecs_check’ +11614 | ecs_check(it != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11618:18: note: crosses initialization of ‘ecs_entity_t result’ +11618 | ecs_entity_t result = 0; + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_iter_is_true(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:11641:1: error: jump to label ‘error’ +11641 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11632:5: note: in expansion of macro ‘ecs_check’ +11632 | ecs_check(it != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11636:10: note: crosses initialization of ‘bool result’ +11636 | bool result = ecs_iter_next(it); + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_iter_get_var(ecs_iter_t*, int32_t)’: +../src/flecs/distr/flecs.c:11674:1: error: jump to label ‘error’ +11674 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11653:5: note: in expansion of macro ‘ecs_check’ +11653 | ecs_check(it->variables != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11656:18: note: crosses initialization of ‘ecs_entity_t e’ +11656 | ecs_entity_t e = var->entity; + | ^ +../src/flecs/distr/flecs.c:11655:16: note: crosses initialization of ‘ecs_var_t* var’ +11655 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11674:1: error: jump to label ‘error’ +11674 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11651:5: note: in expansion of macro ‘ecs_check’ +11651 | ecs_check(var_id < it->variable_count, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11656:18: note: crosses initialization of ‘ecs_entity_t e’ +11656 | ecs_entity_t e = var->entity; + | ^ +../src/flecs/distr/flecs.c:11655:16: note: crosses initialization of ‘ecs_var_t* var’ +11655 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11674:1: error: jump to label ‘error’ +11674 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11649:5: note: in expansion of macro ‘ecs_check’ +11649 | ecs_check(var_id >= 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11656:18: note: crosses initialization of ‘ecs_entity_t e’ +11656 | ecs_entity_t e = var->entity; + | ^ +../src/flecs/distr/flecs.c:11655:16: note: crosses initialization of ‘ecs_var_t* var’ +11655 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c: In function ‘ecs_table_t* ecs_iter_get_var_as_table(ecs_iter_t*, int32_t)’: +../src/flecs/distr/flecs.c:11722:1: error: jump to label ‘error’ +11722 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11686:5: note: in expansion of macro ‘ecs_check’ +11686 | ecs_check(it->variables != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11689:18: note: crosses initialization of ‘ecs_table_t* table’ +11689 | ecs_table_t *table = var->range.table; + | ^~~~~ +../src/flecs/distr/flecs.c:11688:16: note: crosses initialization of ‘ecs_var_t* var’ +11688 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11722:1: error: jump to label ‘error’ +11722 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11684:5: note: in expansion of macro ‘ecs_check’ +11684 | ecs_check(var_id < it->variable_count, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11689:18: note: crosses initialization of ‘ecs_table_t* table’ +11689 | ecs_table_t *table = var->range.table; + | ^~~~~ +../src/flecs/distr/flecs.c:11688:16: note: crosses initialization of ‘ecs_var_t* var’ +11688 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11722:1: error: jump to label ‘error’ +11722 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11682:5: note: in expansion of macro ‘ecs_check’ +11682 | ecs_check(var_id >= 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11689:18: note: crosses initialization of ‘ecs_table_t* table’ +11689 | ecs_table_t *table = var->range.table; + | ^~~~~ +../src/flecs/distr/flecs.c:11688:16: note: crosses initialization of ‘ecs_var_t* var’ +11688 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c: In function ‘ecs_table_range_t ecs_iter_get_var_as_range(ecs_iter_t*, int32_t)’: +../src/flecs/distr/flecs.c:11764:1: error: jump to label ‘error’ +11764 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11734:5: note: in expansion of macro ‘ecs_check’ +11734 | ecs_check(it->variables != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11739:18: note: crosses initialization of ‘ecs_table_t* table’ +11739 | ecs_table_t *table = var->range.table; + | ^~~~~ +../src/flecs/distr/flecs.c:11738:16: note: crosses initialization of ‘ecs_var_t* var’ +11738 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11736:23: note: crosses initialization of ‘ecs_table_range_t result’ +11736 | ecs_table_range_t result = { 0 }; + | ^~~~~~ +../src/flecs/distr/flecs.c:11764:1: error: jump to label ‘error’ +11764 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11732:5: note: in expansion of macro ‘ecs_check’ +11732 | ecs_check(var_id < it->variable_count, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11739:18: note: crosses initialization of ‘ecs_table_t* table’ +11739 | ecs_table_t *table = var->range.table; + | ^~~~~ +../src/flecs/distr/flecs.c:11738:16: note: crosses initialization of ‘ecs_var_t* var’ +11738 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11736:23: note: crosses initialization of ‘ecs_table_range_t result’ +11736 | ecs_table_range_t result = { 0 }; + | ^~~~~~ +../src/flecs/distr/flecs.c:11764:1: error: jump to label ‘error’ +11764 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11730:5: note: in expansion of macro ‘ecs_check’ +11730 | ecs_check(var_id >= 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11739:18: note: crosses initialization of ‘ecs_table_t* table’ +11739 | ecs_table_t *table = var->range.table; + | ^~~~~ +../src/flecs/distr/flecs.c:11738:16: note: crosses initialization of ‘ecs_var_t* var’ +11738 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11736:23: note: crosses initialization of ‘ecs_table_range_t result’ +11736 | ecs_table_range_t result = { 0 }; + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_iter_set_var(ecs_iter_t*, int32_t, ecs_entity_t)’: +../src/flecs/distr/flecs.c:11803:1: error: jump to label ‘error’ +11803 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11782:5: note: in expansion of macro ‘ecs_check’ +11782 | ecs_check(it->variables != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11787:19: note: crosses initialization of ‘ecs_record_t* r’ +11787 | ecs_record_t *r = flecs_entities_get(it->real_world, entity); + | ^ +../src/flecs/distr/flecs.c:11784:16: note: crosses initialization of ‘ecs_var_t* var’ +11784 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11803:1: error: jump to label ‘error’ +11803 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11780:5: note: in expansion of macro ‘ecs_check’ +11780 | ecs_check(!(it->flags & EcsIterIsValid), ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11787:19: note: crosses initialization of ‘ecs_record_t* r’ +11787 | ecs_record_t *r = flecs_entities_get(it->real_world, entity); + | ^ +../src/flecs/distr/flecs.c:11784:16: note: crosses initialization of ‘ecs_var_t* var’ +11784 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11803:1: error: jump to label ‘error’ +11803 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11779:5: note: in expansion of macro ‘ecs_check’ +11779 | ecs_check(entity != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11787:19: note: crosses initialization of ‘ecs_record_t* r’ +11787 | ecs_record_t *r = flecs_entities_get(it->real_world, entity); + | ^ +../src/flecs/distr/flecs.c:11784:16: note: crosses initialization of ‘ecs_var_t* var’ +11784 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11803:1: error: jump to label ‘error’ +11803 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11777:5: note: in expansion of macro ‘ecs_check’ +11777 | ecs_check(var_id < it->variable_count, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11787:19: note: crosses initialization of ‘ecs_record_t* r’ +11787 | ecs_record_t *r = flecs_entities_get(it->real_world, entity); + | ^ +../src/flecs/distr/flecs.c:11784:16: note: crosses initialization of ‘ecs_var_t* var’ +11784 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11803:1: error: jump to label ‘error’ +11803 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11776:5: note: in expansion of macro ‘ecs_check’ +11776 | ecs_check(var_id < FLECS_QUERY_VARIABLE_COUNT_MAX, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11787:19: note: crosses initialization of ‘ecs_record_t* r’ +11787 | ecs_record_t *r = flecs_entities_get(it->real_world, entity); + | ^ +../src/flecs/distr/flecs.c:11784:16: note: crosses initialization of ‘ecs_var_t* var’ +11784 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11803:1: error: jump to label ‘error’ +11803 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11774:5: note: in expansion of macro ‘ecs_check’ +11774 | ecs_check(var_id >= 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11787:19: note: crosses initialization of ‘ecs_record_t* r’ +11787 | ecs_record_t *r = flecs_entities_get(it->real_world, entity); + | ^ +../src/flecs/distr/flecs.c:11784:16: note: crosses initialization of ‘ecs_var_t* var’ +11784 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11803:1: error: jump to label ‘error’ +11803 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11773:5: note: in expansion of macro ‘ecs_check’ +11773 | ecs_check(it != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11787:19: note: crosses initialization of ‘ecs_record_t* r’ +11787 | ecs_record_t *r = flecs_entities_get(it->real_world, entity); + | ^ +../src/flecs/distr/flecs.c:11784:16: note: crosses initialization of ‘ecs_var_t* var’ +11784 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_iter_set_var_as_range(ecs_iter_t*, int32_t, const ecs_table_range_t*)’: +../src/flecs/distr/flecs.c:11851:1: error: jump to label ‘error’ +11851 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11833:5: note: in expansion of macro ‘ecs_check’ +11833 | ecs_check(!(it->flags & EcsIterIsValid), ECS_INVALID_OPERATION, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11836:16: note: crosses initialization of ‘ecs_var_t* var’ +11836 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11851:1: error: jump to label ‘error’ +11851 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11830:5: note: in expansion of macro ‘ecs_check’ +11830 | ecs_check((range->offset + range->count) <= ecs_table_count(range->table), + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11836:16: note: crosses initialization of ‘ecs_var_t* var’ +11836 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11851:1: error: jump to label ‘error’ +11851 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11828:5: note: in expansion of macro ‘ecs_check’ +11828 | ecs_check(!range->offset || range->offset < ecs_table_count(range->table), + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11836:16: note: crosses initialization of ‘ecs_var_t* var’ +11836 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11851:1: error: jump to label ‘error’ +11851 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11827:5: note: in expansion of macro ‘ecs_check’ +11827 | ecs_check(range->table != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11836:16: note: crosses initialization of ‘ecs_var_t* var’ +11836 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11851:1: error: jump to label ‘error’ +11851 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11826:5: note: in expansion of macro ‘ecs_check’ +11826 | ecs_check(range != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11836:16: note: crosses initialization of ‘ecs_var_t* var’ +11836 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11851:1: error: jump to label ‘error’ +11851 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11824:5: note: in expansion of macro ‘ecs_check’ +11824 | ecs_check(var_id < it->variable_count, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11836:16: note: crosses initialization of ‘ecs_var_t* var’ +11836 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11851:1: error: jump to label ‘error’ +11851 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11822:5: note: in expansion of macro ‘ecs_check’ +11822 | ecs_check(var_id >= 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11836:16: note: crosses initialization of ‘ecs_var_t* var’ +11836 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c:11851:1: error: jump to label ‘error’ +11851 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11821:5: note: in expansion of macro ‘ecs_check’ +11821 | ecs_check(it != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11836:16: note: crosses initialization of ‘ecs_var_t* var’ +11836 | ecs_var_t *var = &it->variables[var_id]; + | ^~~ +../src/flecs/distr/flecs.c: In function ‘ecs_iter_t ecs_page_iter(const ecs_iter_t*, int32_t, int32_t)’: +../src/flecs/distr/flecs.c:11895:1: error: jump to label ‘error’ +11895 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11880:5: note: in expansion of macro ‘ecs_check’ +11880 | ecs_check(it->next != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11882:16: note: crosses initialization of ‘ecs_iter_t result’ +11882 | ecs_iter_t result = *it; + | ^~~~~~ +../src/flecs/distr/flecs.c:11895:1: error: jump to label ‘error’ +11895 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11879:5: note: in expansion of macro ‘ecs_check’ +11879 | ecs_check(it != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11882:16: note: crosses initialization of ‘ecs_iter_t result’ +11882 | ecs_iter_t result = *it; + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_page_next(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:11971:1: error: jump to label ‘error’ +11971 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11904:5: note: in expansion of macro ‘ecs_check’ +11904 | ecs_check(it->next == ecs_page_next, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11906:17: note: crosses initialization of ‘ecs_iter_t* chain_it’ +11906 | ecs_iter_t *chain_it = it->chain_it; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:11971:1: error: jump to label ‘error’ +11971 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11903:5: note: in expansion of macro ‘ecs_check’ +11903 | ecs_check(it->chain_it != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11906:17: note: crosses initialization of ‘ecs_iter_t* chain_it’ +11906 | ecs_iter_t *chain_it = it->chain_it; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:11971:1: error: jump to label ‘error’ +11971 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11902:5: note: in expansion of macro ‘ecs_check’ +11902 | ecs_check(it != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11906:17: note: crosses initialization of ‘ecs_iter_t* chain_it’ +11906 | ecs_iter_t *chain_it = it->chain_it; + | ^~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_iter_t ecs_worker_iter(const ecs_iter_t*, int32_t, int32_t)’: +../src/flecs/distr/flecs.c:11999:1: error: jump to label ‘error’ +11999 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11985:5: note: in expansion of macro ‘ecs_check’ +11985 | ecs_check(index < count, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11987:16: note: crosses initialization of ‘ecs_iter_t result’ +11987 | ecs_iter_t result = *it; + | ^~~~~~ +../src/flecs/distr/flecs.c:11999:1: error: jump to label ‘error’ +11999 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11983:5: note: in expansion of macro ‘ecs_check’ +11983 | ecs_check(index >= 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11987:16: note: crosses initialization of ‘ecs_iter_t result’ +11987 | ecs_iter_t result = *it; + | ^~~~~~ +../src/flecs/distr/flecs.c:11999:1: error: jump to label ‘error’ +11999 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11982:5: note: in expansion of macro ‘ecs_check’ +11982 | ecs_check(count > 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11987:16: note: crosses initialization of ‘ecs_iter_t result’ +11987 | ecs_iter_t result = *it; + | ^~~~~~ +../src/flecs/distr/flecs.c:11999:1: error: jump to label ‘error’ +11999 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11981:5: note: in expansion of macro ‘ecs_check’ +11981 | ecs_check(it->next != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11987:16: note: crosses initialization of ‘ecs_iter_t result’ +11987 | ecs_iter_t result = *it; + | ^~~~~~ +../src/flecs/distr/flecs.c:11999:1: error: jump to label ‘error’ +11999 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:11980:5: note: in expansion of macro ‘ecs_check’ +11980 | ecs_check(it != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:11987:16: note: crosses initialization of ‘ecs_iter_t result’ +11987 | ecs_iter_t result = *it; + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_worker_next(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:12056:1: error: jump to label ‘error’ +12056 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:12008:5: note: in expansion of macro ‘ecs_check’ +12008 | ecs_check(it->next == ecs_worker_next, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:12012:38: note: crosses initialization of ‘int32_t res_index’ +12012 | int32_t res_count = iter->count, res_index = iter->index; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:12012:13: note: crosses initialization of ‘int32_t res_count’ +12012 | int32_t res_count = iter->count, res_index = iter->index; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:12011:24: note: crosses initialization of ‘ecs_worker_iter_t* iter’ +12011 | ecs_worker_iter_t *iter = &it->priv_.iter.worker; + | ^~~~ +../src/flecs/distr/flecs.c:12010:17: note: crosses initialization of ‘ecs_iter_t* chain_it’ +12010 | ecs_iter_t *chain_it = it->chain_it; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:12056:1: error: jump to label ‘error’ +12056 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:12007:5: note: in expansion of macro ‘ecs_check’ +12007 | ecs_check(it->chain_it != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:12012:38: note: crosses initialization of ‘int32_t res_index’ +12012 | int32_t res_count = iter->count, res_index = iter->index; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:12012:13: note: crosses initialization of ‘int32_t res_count’ +12012 | int32_t res_count = iter->count, res_index = iter->index; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:12011:24: note: crosses initialization of ‘ecs_worker_iter_t* iter’ +12011 | ecs_worker_iter_t *iter = &it->priv_.iter.worker; + | ^~~~ +../src/flecs/distr/flecs.c:12010:17: note: crosses initialization of ‘ecs_iter_t* chain_it’ +12010 | ecs_iter_t *chain_it = it->chain_it; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:12056:1: error: jump to label ‘error’ +12056 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:12006:5: note: in expansion of macro ‘ecs_check’ +12006 | ecs_check(it != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:12012:38: note: crosses initialization of ‘int32_t res_index’ +12012 | int32_t res_count = iter->count, res_index = iter->index; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:12012:13: note: crosses initialization of ‘int32_t res_count’ +12012 | int32_t res_count = iter->count, res_index = iter->index; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:12011:24: note: crosses initialization of ‘ecs_worker_iter_t* iter’ +12011 | ecs_worker_iter_t *iter = &it->priv_.iter.worker; + | ^~~~ +../src/flecs/distr/flecs.c:12010:17: note: crosses initialization of ‘ecs_iter_t* chain_it’ +12010 | ecs_iter_t *chain_it = it->chain_it; + | ^~~~~~~~ +../src/flecs/distr/flecs.c: At global scope: +../src/flecs/distr/flecs.c:12070:71: sorry, unimplemented: non-trivial designated initializers not supported +12070 | [1] = INT8_MIN, [2] = INT16_MIN, [4] = INT32_MIN, [8] = INT64_MIN }; + | ^ +../src/flecs/distr/flecs.c:12070:71: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:12070:71: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:12070:71: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:12072:71: sorry, unimplemented: non-trivial designated initializers not supported +12072 | [1] = INT8_MAX, [2] = INT16_MAX, [4] = INT32_MAX, [8] = INT64_MAX }; + | ^ +../src/flecs/distr/flecs.c:12072:71: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:12072:71: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:12072:71: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:12074:75: sorry, unimplemented: non-trivial designated initializers not supported +12074 | [1] = UINT8_MAX, [2] = UINT16_MAX, [4] = UINT32_MAX, [8] = UINT64_MAX }; + | ^ +../src/flecs/distr/flecs.c:12074:75: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:12074:75: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:12074:75: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c: In function ‘uint64_t flecs_string_hash(const void*)’: +../src/flecs/distr/flecs.c:12197:38: error: invalid conversion from ‘const void*’ to ‘const ecs_hashed_string_t*’ [-fpermissive] +12197 | const ecs_hashed_string_t *str = ptr; + | ^~~ + | | + | const void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘char* flecs_load_from_file(const char*)’: +../src/flecs/distr/flecs.h:2607:47: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive] + 2607 | #define ecs_os_malloc(size) ecs_os_api.malloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:12298:15: note: in expansion of macro ‘ecs_os_malloc’ +12298 | content = ecs_os_malloc(bytes + 1); + | ^~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_emit_propagate_id(ecs_world_t*, ecs_iter_t*, ecs_id_record_t*, ecs_id_record_t*, ecs_entity_t, ecs_event_id_record_t**, int32_t)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:12796:18: note: in expansion of macro ‘flecs_table_cache_next’ +12796 | while ((tr = flecs_table_cache_next(&idt, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_emit_propagate_invalidate_tables(ecs_world_t*, ecs_id_record_t*)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:12921:22: note: in expansion of macro ‘flecs_table_cache_next’ +12921 | while ((tr = flecs_table_cache_next(&idt, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int32_t flecs_emit_stack_at(ecs_vec_t*, ecs_id_record_t*)’: +../src/flecs/distr/flecs.c:13247:46: error: invalid conversion from ‘void*’ to ‘ecs_table_t**’ [-fpermissive] +13247 | ecs_table_t **stack_elems = ecs_vec_first(stack); + | ~~~~~~~~~~~~~^~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_emit_forward(ecs_world_t*, const ecs_event_record_t*, const ecs_event_record_t*, const ecs_type_t*, ecs_iter_t*, ecs_table_t*, ecs_id_record_t*)’: +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘const ecs_entity_t*’ {aka ‘const long unsigned int*’} [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:3948:36: note: in expansion of macro ‘ECS_OFFSET’ + 3948 | #define ECS_ELEM(ptr, size, index) ECS_OFFSET(ptr, (size) * (index)) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:3949:33: note: in expansion of macro ‘ECS_ELEM’ + 3949 | #define ECS_ELEM_T(o, T, index) ECS_ELEM(o, ECS_SIZEOF(T), index) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13581:20: note: in expansion of macro ‘ECS_ELEM_T’ +13581 | entities = ECS_ELEM_T(entities, ecs_entity_t, it->offset); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_emit(ecs_world_t*, ecs_world_t*, ecs_flags64_t, ecs_event_desc_t*)’: +../src/flecs/distr/flecs.c:13695:5: error: designator order for field ‘ecs_iter_t::table’ does not match declaration order in ‘ecs_iter_t’ +13695 | }; + | ^ +../src/flecs/distr/flecs.c:13825:38: error: invalid conversion from ‘void*’ to ‘const ecs_sparse_t*’ [-fpermissive] +13825 | idr->sparse, 0, base); + | ~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1411:25: note: initializing argument 1 of ‘void* flecs_sparse_get_any(const ecs_sparse_t*, ecs_size_t, uint64_t)’ + 1411 | const ecs_sparse_t *sparse, + | ~~~~~~~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c:13883:49: error: invalid conversion from ‘void*’ to ‘const ecs_sparse_t*’ [-fpermissive] +13883 | ptr = flecs_sparse_get(idr->sparse, 0, e); + | ~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1391:25: note: initializing argument 1 of ‘void* flecs_sparse_get(const ecs_sparse_t*, ecs_size_t, uint64_t)’ + 1391 | const ecs_sparse_t *sparse, + | ~~~~~~~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c:13966:1: error: jump to label ‘error’ +13966 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13698:5: note: in expansion of macro ‘ecs_check’ +13698 | ecs_check(observable != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13737:28: note: crosses initialization of ‘ecs_event_id_record_t* iders [5]’ +13737 | ecs_event_id_record_t *iders[5] = {0}; + | ^~~~~ +../src/flecs/distr/flecs.c:13735:10: note: crosses initialization of ‘bool has_observed’ +13735 | bool has_observed = table_flags & EcsTableHasTraversable; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13732:10: note: crosses initialization of ‘bool can_forward’ +13732 | bool can_forward = event != EcsOnSet; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13725:10: note: crosses initialization of ‘bool can_override’ +13725 | bool can_override = count && (table_flags & EcsTableHasIsA) && ( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13720:15: note: crosses initialization of ‘ecs_id_t* id_array’ +13720 | ecs_id_t *id_array = ids->array; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13719:13: note: crosses initialization of ‘int32_t id_count’ +13719 | int32_t id_count = ids->count; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13712:19: note: crosses initialization of ‘ecs_column_t* columns’ +13712 | ecs_column_t *columns = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13711:17: note: crosses initialization of ‘ecs_data_t* storage’ +13711 | ecs_data_t *storage = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13709:31: note: crosses initialization of ‘const ecs_event_record_t* er_onset’ +13709 | const ecs_event_record_t *er_onset = flecs_event_record_get_if(observable, EcsOnSet); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13708:31: note: crosses initialization of ‘const ecs_event_record_t* wcer’ +13708 | const ecs_event_record_t *wcer = flecs_event_record_get_if(observable, EcsWildcard); + | ^~~~ +../src/flecs/distr/flecs.c:13707:31: note: crosses initialization of ‘const ecs_event_record_t* er’ +13707 | const ecs_event_record_t *er = flecs_event_record_get_if(observable, event); + | ^~ +../src/flecs/distr/flecs.c:13966:1: error: jump to label ‘error’ +13966 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13636:5: note: in expansion of macro ‘ecs_check’ +13636 | ecs_check(desc->observable != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13737:28: note: crosses initialization of ‘ecs_event_id_record_t* iders [5]’ +13737 | ecs_event_id_record_t *iders[5] = {0}; + | ^~~~~ +../src/flecs/distr/flecs.c:13735:10: note: crosses initialization of ‘bool has_observed’ +13735 | bool has_observed = table_flags & EcsTableHasTraversable; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13732:10: note: crosses initialization of ‘bool can_forward’ +13732 | bool can_forward = event != EcsOnSet; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13725:10: note: crosses initialization of ‘bool can_override’ +13725 | bool can_override = count && (table_flags & EcsTableHasIsA) && ( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13720:15: note: crosses initialization of ‘ecs_id_t* id_array’ +13720 | ecs_id_t *id_array = ids->array; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13719:13: note: crosses initialization of ‘int32_t id_count’ +13719 | int32_t id_count = ids->count; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13712:19: note: crosses initialization of ‘ecs_column_t* columns’ +13712 | ecs_column_t *columns = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13711:17: note: crosses initialization of ‘ecs_data_t* storage’ +13711 | ecs_data_t *storage = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13709:31: note: crosses initialization of ‘const ecs_event_record_t* er_onset’ +13709 | const ecs_event_record_t *er_onset = flecs_event_record_get_if(observable, EcsOnSet); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13708:31: note: crosses initialization of ‘const ecs_event_record_t* wcer’ +13708 | const ecs_event_record_t *wcer = flecs_event_record_get_if(observable, EcsWildcard); + | ^~~~ +../src/flecs/distr/flecs.c:13707:31: note: crosses initialization of ‘const ecs_event_record_t* er’ +13707 | const ecs_event_record_t *er = flecs_event_record_get_if(observable, event); + | ^~ +../src/flecs/distr/flecs.c:13697:23: note: crosses initialization of ‘ecs_observable_t* observable’ +13697 | ecs_observable_t *observable = ecs_get_observable(desc->observable); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:13679:16: note: crosses initialization of ‘ecs_iter_t it’ +13679 | ecs_iter_t it = { + | ^~ +../src/flecs/distr/flecs.c:13677:18: note: crosses initialization of ‘ecs_entity_t sources_cache’ +13677 | ecs_entity_t sources_cache = 0; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13676:31: note: crosses initialization of ‘const ecs_table_record_t* trs_cache’ +13676 | const ecs_table_record_t* trs_cache = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13675:16: note: crosses initialization of ‘ecs_size_t sizes_cache’ +13675 | ecs_size_t sizes_cache = 0; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13674:14: note: crosses initialization of ‘ecs_id_t ids_cache’ +13674 | ecs_id_t ids_cache = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13672:13: note: crosses initialization of ‘int32_t evtx’ +13672 | int32_t evtx = ++world->event_id; + | ^~~~ +../src/flecs/distr/flecs.c:13661:10: note: crosses initialization of ‘bool table_event’ +13661 | bool table_event = desc->flags & EcsEventTableOnly; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13654:13: note: crosses initialization of ‘int32_t defer’ +13654 | int32_t defer = world->stages[0]->defer; + | ^~~~~ +../src/flecs/distr/flecs.c:13651:19: note: crosses initialization of ‘ecs_flags32_t table_flags’ +13651 | ecs_flags32_t table_flags = table->flags; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13650:16: note: crosses initialization of ‘int32_t count’ +13650 | int32_t i, count = desc->count; + | ^~~~~ +../src/flecs/distr/flecs.c:13649:13: note: crosses initialization of ‘int32_t offset’ +13649 | int32_t offset = desc->offset; + | ^~~~~~ +../src/flecs/distr/flecs.c:13648:40: note: crosses initialization of ‘ecs_table_t* other_table’ +13648 | ecs_table_t *table = desc->table, *other_table = desc->other_table; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13648:18: note: crosses initialization of ‘ecs_table_t* table’ +13648 | ecs_table_t *table = desc->table, *other_table = desc->other_table; + | ^~~~~ +../src/flecs/distr/flecs.c:13647:18: note: crosses initialization of ‘ecs_entity_t event’ +13647 | ecs_entity_t event = desc->event; + | ^~~~~ +../src/flecs/distr/flecs.c:13646:23: note: crosses initialization of ‘const ecs_type_t* ids’ +13646 | const ecs_type_t *ids = desc->ids; + | ^~~ +../src/flecs/distr/flecs.c:13641:10: note: crosses initialization of ‘bool measure_time’ +13641 | bool measure_time = world->flags & EcsWorldMeasureSystemTime; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13640:16: note: crosses initialization of ‘ecs_time_t t’ +13640 | ecs_time_t t = {0}; + | ^ +../src/flecs/distr/flecs.c:13966:1: error: jump to label ‘error’ +13966 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13635:5: note: in expansion of macro ‘ecs_check’ +13635 | ecs_check(desc->table != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13737:28: note: crosses initialization of ‘ecs_event_id_record_t* iders [5]’ +13737 | ecs_event_id_record_t *iders[5] = {0}; + | ^~~~~ +../src/flecs/distr/flecs.c:13735:10: note: crosses initialization of ‘bool has_observed’ +13735 | bool has_observed = table_flags & EcsTableHasTraversable; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13732:10: note: crosses initialization of ‘bool can_forward’ +13732 | bool can_forward = event != EcsOnSet; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13725:10: note: crosses initialization of ‘bool can_override’ +13725 | bool can_override = count && (table_flags & EcsTableHasIsA) && ( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13720:15: note: crosses initialization of ‘ecs_id_t* id_array’ +13720 | ecs_id_t *id_array = ids->array; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13719:13: note: crosses initialization of ‘int32_t id_count’ +13719 | int32_t id_count = ids->count; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13712:19: note: crosses initialization of ‘ecs_column_t* columns’ +13712 | ecs_column_t *columns = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13711:17: note: crosses initialization of ‘ecs_data_t* storage’ +13711 | ecs_data_t *storage = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13709:31: note: crosses initialization of ‘const ecs_event_record_t* er_onset’ +13709 | const ecs_event_record_t *er_onset = flecs_event_record_get_if(observable, EcsOnSet); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13708:31: note: crosses initialization of ‘const ecs_event_record_t* wcer’ +13708 | const ecs_event_record_t *wcer = flecs_event_record_get_if(observable, EcsWildcard); + | ^~~~ +../src/flecs/distr/flecs.c:13707:31: note: crosses initialization of ‘const ecs_event_record_t* er’ +13707 | const ecs_event_record_t *er = flecs_event_record_get_if(observable, event); + | ^~ +../src/flecs/distr/flecs.c:13697:23: note: crosses initialization of ‘ecs_observable_t* observable’ +13697 | ecs_observable_t *observable = ecs_get_observable(desc->observable); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:13679:16: note: crosses initialization of ‘ecs_iter_t it’ +13679 | ecs_iter_t it = { + | ^~ +../src/flecs/distr/flecs.c:13677:18: note: crosses initialization of ‘ecs_entity_t sources_cache’ +13677 | ecs_entity_t sources_cache = 0; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13676:31: note: crosses initialization of ‘const ecs_table_record_t* trs_cache’ +13676 | const ecs_table_record_t* trs_cache = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13675:16: note: crosses initialization of ‘ecs_size_t sizes_cache’ +13675 | ecs_size_t sizes_cache = 0; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13674:14: note: crosses initialization of ‘ecs_id_t ids_cache’ +13674 | ecs_id_t ids_cache = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13672:13: note: crosses initialization of ‘int32_t evtx’ +13672 | int32_t evtx = ++world->event_id; + | ^~~~ +../src/flecs/distr/flecs.c:13661:10: note: crosses initialization of ‘bool table_event’ +13661 | bool table_event = desc->flags & EcsEventTableOnly; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13654:13: note: crosses initialization of ‘int32_t defer’ +13654 | int32_t defer = world->stages[0]->defer; + | ^~~~~ +../src/flecs/distr/flecs.c:13651:19: note: crosses initialization of ‘ecs_flags32_t table_flags’ +13651 | ecs_flags32_t table_flags = table->flags; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13650:16: note: crosses initialization of ‘int32_t count’ +13650 | int32_t i, count = desc->count; + | ^~~~~ +../src/flecs/distr/flecs.c:13649:13: note: crosses initialization of ‘int32_t offset’ +13649 | int32_t offset = desc->offset; + | ^~~~~~ +../src/flecs/distr/flecs.c:13648:40: note: crosses initialization of ‘ecs_table_t* other_table’ +13648 | ecs_table_t *table = desc->table, *other_table = desc->other_table; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13648:18: note: crosses initialization of ‘ecs_table_t* table’ +13648 | ecs_table_t *table = desc->table, *other_table = desc->other_table; + | ^~~~~ +../src/flecs/distr/flecs.c:13647:18: note: crosses initialization of ‘ecs_entity_t event’ +13647 | ecs_entity_t event = desc->event; + | ^~~~~ +../src/flecs/distr/flecs.c:13646:23: note: crosses initialization of ‘const ecs_type_t* ids’ +13646 | const ecs_type_t *ids = desc->ids; + | ^~~ +../src/flecs/distr/flecs.c:13641:10: note: crosses initialization of ‘bool measure_time’ +13641 | bool measure_time = world->flags & EcsWorldMeasureSystemTime; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13640:16: note: crosses initialization of ‘ecs_time_t t’ +13640 | ecs_time_t t = {0}; + | ^ +../src/flecs/distr/flecs.c:13966:1: error: jump to label ‘error’ +13966 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13634:5: note: in expansion of macro ‘ecs_check’ +13634 | ecs_check(desc->ids->count != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13737:28: note: crosses initialization of ‘ecs_event_id_record_t* iders [5]’ +13737 | ecs_event_id_record_t *iders[5] = {0}; + | ^~~~~ +../src/flecs/distr/flecs.c:13735:10: note: crosses initialization of ‘bool has_observed’ +13735 | bool has_observed = table_flags & EcsTableHasTraversable; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13732:10: note: crosses initialization of ‘bool can_forward’ +13732 | bool can_forward = event != EcsOnSet; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13725:10: note: crosses initialization of ‘bool can_override’ +13725 | bool can_override = count && (table_flags & EcsTableHasIsA) && ( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13720:15: note: crosses initialization of ‘ecs_id_t* id_array’ +13720 | ecs_id_t *id_array = ids->array; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13719:13: note: crosses initialization of ‘int32_t id_count’ +13719 | int32_t id_count = ids->count; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13712:19: note: crosses initialization of ‘ecs_column_t* columns’ +13712 | ecs_column_t *columns = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13711:17: note: crosses initialization of ‘ecs_data_t* storage’ +13711 | ecs_data_t *storage = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13709:31: note: crosses initialization of ‘const ecs_event_record_t* er_onset’ +13709 | const ecs_event_record_t *er_onset = flecs_event_record_get_if(observable, EcsOnSet); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13708:31: note: crosses initialization of ‘const ecs_event_record_t* wcer’ +13708 | const ecs_event_record_t *wcer = flecs_event_record_get_if(observable, EcsWildcard); + | ^~~~ +../src/flecs/distr/flecs.c:13707:31: note: crosses initialization of ‘const ecs_event_record_t* er’ +13707 | const ecs_event_record_t *er = flecs_event_record_get_if(observable, event); + | ^~ +../src/flecs/distr/flecs.c:13697:23: note: crosses initialization of ‘ecs_observable_t* observable’ +13697 | ecs_observable_t *observable = ecs_get_observable(desc->observable); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:13679:16: note: crosses initialization of ‘ecs_iter_t it’ +13679 | ecs_iter_t it = { + | ^~ +../src/flecs/distr/flecs.c:13677:18: note: crosses initialization of ‘ecs_entity_t sources_cache’ +13677 | ecs_entity_t sources_cache = 0; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13676:31: note: crosses initialization of ‘const ecs_table_record_t* trs_cache’ +13676 | const ecs_table_record_t* trs_cache = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13675:16: note: crosses initialization of ‘ecs_size_t sizes_cache’ +13675 | ecs_size_t sizes_cache = 0; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13674:14: note: crosses initialization of ‘ecs_id_t ids_cache’ +13674 | ecs_id_t ids_cache = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13672:13: note: crosses initialization of ‘int32_t evtx’ +13672 | int32_t evtx = ++world->event_id; + | ^~~~ +../src/flecs/distr/flecs.c:13661:10: note: crosses initialization of ‘bool table_event’ +13661 | bool table_event = desc->flags & EcsEventTableOnly; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13654:13: note: crosses initialization of ‘int32_t defer’ +13654 | int32_t defer = world->stages[0]->defer; + | ^~~~~ +../src/flecs/distr/flecs.c:13651:19: note: crosses initialization of ‘ecs_flags32_t table_flags’ +13651 | ecs_flags32_t table_flags = table->flags; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13650:16: note: crosses initialization of ‘int32_t count’ +13650 | int32_t i, count = desc->count; + | ^~~~~ +../src/flecs/distr/flecs.c:13649:13: note: crosses initialization of ‘int32_t offset’ +13649 | int32_t offset = desc->offset; + | ^~~~~~ +../src/flecs/distr/flecs.c:13648:40: note: crosses initialization of ‘ecs_table_t* other_table’ +13648 | ecs_table_t *table = desc->table, *other_table = desc->other_table; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13648:18: note: crosses initialization of ‘ecs_table_t* table’ +13648 | ecs_table_t *table = desc->table, *other_table = desc->other_table; + | ^~~~~ +../src/flecs/distr/flecs.c:13647:18: note: crosses initialization of ‘ecs_entity_t event’ +13647 | ecs_entity_t event = desc->event; + | ^~~~~ +../src/flecs/distr/flecs.c:13646:23: note: crosses initialization of ‘const ecs_type_t* ids’ +13646 | const ecs_type_t *ids = desc->ids; + | ^~~ +../src/flecs/distr/flecs.c:13641:10: note: crosses initialization of ‘bool measure_time’ +13641 | bool measure_time = world->flags & EcsWorldMeasureSystemTime; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13640:16: note: crosses initialization of ‘ecs_time_t t’ +13640 | ecs_time_t t = {0}; + | ^ +../src/flecs/distr/flecs.c:13966:1: error: jump to label ‘error’ +13966 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13633:5: note: in expansion of macro ‘ecs_check’ +13633 | ecs_check(desc->ids != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13737:28: note: crosses initialization of ‘ecs_event_id_record_t* iders [5]’ +13737 | ecs_event_id_record_t *iders[5] = {0}; + | ^~~~~ +../src/flecs/distr/flecs.c:13735:10: note: crosses initialization of ‘bool has_observed’ +13735 | bool has_observed = table_flags & EcsTableHasTraversable; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13732:10: note: crosses initialization of ‘bool can_forward’ +13732 | bool can_forward = event != EcsOnSet; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13725:10: note: crosses initialization of ‘bool can_override’ +13725 | bool can_override = count && (table_flags & EcsTableHasIsA) && ( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13720:15: note: crosses initialization of ‘ecs_id_t* id_array’ +13720 | ecs_id_t *id_array = ids->array; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13719:13: note: crosses initialization of ‘int32_t id_count’ +13719 | int32_t id_count = ids->count; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13712:19: note: crosses initialization of ‘ecs_column_t* columns’ +13712 | ecs_column_t *columns = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13711:17: note: crosses initialization of ‘ecs_data_t* storage’ +13711 | ecs_data_t *storage = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13709:31: note: crosses initialization of ‘const ecs_event_record_t* er_onset’ +13709 | const ecs_event_record_t *er_onset = flecs_event_record_get_if(observable, EcsOnSet); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13708:31: note: crosses initialization of ‘const ecs_event_record_t* wcer’ +13708 | const ecs_event_record_t *wcer = flecs_event_record_get_if(observable, EcsWildcard); + | ^~~~ +../src/flecs/distr/flecs.c:13707:31: note: crosses initialization of ‘const ecs_event_record_t* er’ +13707 | const ecs_event_record_t *er = flecs_event_record_get_if(observable, event); + | ^~ +../src/flecs/distr/flecs.c:13697:23: note: crosses initialization of ‘ecs_observable_t* observable’ +13697 | ecs_observable_t *observable = ecs_get_observable(desc->observable); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:13679:16: note: crosses initialization of ‘ecs_iter_t it’ +13679 | ecs_iter_t it = { + | ^~ +../src/flecs/distr/flecs.c:13677:18: note: crosses initialization of ‘ecs_entity_t sources_cache’ +13677 | ecs_entity_t sources_cache = 0; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13676:31: note: crosses initialization of ‘const ecs_table_record_t* trs_cache’ +13676 | const ecs_table_record_t* trs_cache = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13675:16: note: crosses initialization of ‘ecs_size_t sizes_cache’ +13675 | ecs_size_t sizes_cache = 0; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13674:14: note: crosses initialization of ‘ecs_id_t ids_cache’ +13674 | ecs_id_t ids_cache = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13672:13: note: crosses initialization of ‘int32_t evtx’ +13672 | int32_t evtx = ++world->event_id; + | ^~~~ +../src/flecs/distr/flecs.c:13661:10: note: crosses initialization of ‘bool table_event’ +13661 | bool table_event = desc->flags & EcsEventTableOnly; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13654:13: note: crosses initialization of ‘int32_t defer’ +13654 | int32_t defer = world->stages[0]->defer; + | ^~~~~ +../src/flecs/distr/flecs.c:13651:19: note: crosses initialization of ‘ecs_flags32_t table_flags’ +13651 | ecs_flags32_t table_flags = table->flags; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13650:16: note: crosses initialization of ‘int32_t count’ +13650 | int32_t i, count = desc->count; + | ^~~~~ +../src/flecs/distr/flecs.c:13649:13: note: crosses initialization of ‘int32_t offset’ +13649 | int32_t offset = desc->offset; + | ^~~~~~ +../src/flecs/distr/flecs.c:13648:40: note: crosses initialization of ‘ecs_table_t* other_table’ +13648 | ecs_table_t *table = desc->table, *other_table = desc->other_table; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13648:18: note: crosses initialization of ‘ecs_table_t* table’ +13648 | ecs_table_t *table = desc->table, *other_table = desc->other_table; + | ^~~~~ +../src/flecs/distr/flecs.c:13647:18: note: crosses initialization of ‘ecs_entity_t event’ +13647 | ecs_entity_t event = desc->event; + | ^~~~~ +../src/flecs/distr/flecs.c:13646:23: note: crosses initialization of ‘const ecs_type_t* ids’ +13646 | const ecs_type_t *ids = desc->ids; + | ^~~ +../src/flecs/distr/flecs.c:13641:10: note: crosses initialization of ‘bool measure_time’ +13641 | bool measure_time = world->flags & EcsWorldMeasureSystemTime; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13640:16: note: crosses initialization of ‘ecs_time_t t’ +13640 | ecs_time_t t = {0}; + | ^ +../src/flecs/distr/flecs.c:13966:1: error: jump to label ‘error’ +13966 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13632:5: note: in expansion of macro ‘ecs_check’ +13632 | ecs_check(desc->event != EcsWildcard, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13737:28: note: crosses initialization of ‘ecs_event_id_record_t* iders [5]’ +13737 | ecs_event_id_record_t *iders[5] = {0}; + | ^~~~~ +../src/flecs/distr/flecs.c:13735:10: note: crosses initialization of ‘bool has_observed’ +13735 | bool has_observed = table_flags & EcsTableHasTraversable; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13732:10: note: crosses initialization of ‘bool can_forward’ +13732 | bool can_forward = event != EcsOnSet; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13725:10: note: crosses initialization of ‘bool can_override’ +13725 | bool can_override = count && (table_flags & EcsTableHasIsA) && ( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13720:15: note: crosses initialization of ‘ecs_id_t* id_array’ +13720 | ecs_id_t *id_array = ids->array; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13719:13: note: crosses initialization of ‘int32_t id_count’ +13719 | int32_t id_count = ids->count; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13712:19: note: crosses initialization of ‘ecs_column_t* columns’ +13712 | ecs_column_t *columns = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13711:17: note: crosses initialization of ‘ecs_data_t* storage’ +13711 | ecs_data_t *storage = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13709:31: note: crosses initialization of ‘const ecs_event_record_t* er_onset’ +13709 | const ecs_event_record_t *er_onset = flecs_event_record_get_if(observable, EcsOnSet); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13708:31: note: crosses initialization of ‘const ecs_event_record_t* wcer’ +13708 | const ecs_event_record_t *wcer = flecs_event_record_get_if(observable, EcsWildcard); + | ^~~~ +../src/flecs/distr/flecs.c:13707:31: note: crosses initialization of ‘const ecs_event_record_t* er’ +13707 | const ecs_event_record_t *er = flecs_event_record_get_if(observable, event); + | ^~ +../src/flecs/distr/flecs.c:13697:23: note: crosses initialization of ‘ecs_observable_t* observable’ +13697 | ecs_observable_t *observable = ecs_get_observable(desc->observable); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:13679:16: note: crosses initialization of ‘ecs_iter_t it’ +13679 | ecs_iter_t it = { + | ^~ +../src/flecs/distr/flecs.c:13677:18: note: crosses initialization of ‘ecs_entity_t sources_cache’ +13677 | ecs_entity_t sources_cache = 0; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13676:31: note: crosses initialization of ‘const ecs_table_record_t* trs_cache’ +13676 | const ecs_table_record_t* trs_cache = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13675:16: note: crosses initialization of ‘ecs_size_t sizes_cache’ +13675 | ecs_size_t sizes_cache = 0; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13674:14: note: crosses initialization of ‘ecs_id_t ids_cache’ +13674 | ecs_id_t ids_cache = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13672:13: note: crosses initialization of ‘int32_t evtx’ +13672 | int32_t evtx = ++world->event_id; + | ^~~~ +../src/flecs/distr/flecs.c:13661:10: note: crosses initialization of ‘bool table_event’ +13661 | bool table_event = desc->flags & EcsEventTableOnly; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13654:13: note: crosses initialization of ‘int32_t defer’ +13654 | int32_t defer = world->stages[0]->defer; + | ^~~~~ +../src/flecs/distr/flecs.c:13651:19: note: crosses initialization of ‘ecs_flags32_t table_flags’ +13651 | ecs_flags32_t table_flags = table->flags; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13650:16: note: crosses initialization of ‘int32_t count’ +13650 | int32_t i, count = desc->count; + | ^~~~~ +../src/flecs/distr/flecs.c:13649:13: note: crosses initialization of ‘int32_t offset’ +13649 | int32_t offset = desc->offset; + | ^~~~~~ +../src/flecs/distr/flecs.c:13648:40: note: crosses initialization of ‘ecs_table_t* other_table’ +13648 | ecs_table_t *table = desc->table, *other_table = desc->other_table; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13648:18: note: crosses initialization of ‘ecs_table_t* table’ +13648 | ecs_table_t *table = desc->table, *other_table = desc->other_table; + | ^~~~~ +../src/flecs/distr/flecs.c:13647:18: note: crosses initialization of ‘ecs_entity_t event’ +13647 | ecs_entity_t event = desc->event; + | ^~~~~ +../src/flecs/distr/flecs.c:13646:23: note: crosses initialization of ‘const ecs_type_t* ids’ +13646 | const ecs_type_t *ids = desc->ids; + | ^~~ +../src/flecs/distr/flecs.c:13641:10: note: crosses initialization of ‘bool measure_time’ +13641 | bool measure_time = world->flags & EcsWorldMeasureSystemTime; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13640:16: note: crosses initialization of ‘ecs_time_t t’ +13640 | ecs_time_t t = {0}; + | ^ +../src/flecs/distr/flecs.c:13966:1: error: jump to label ‘error’ +13966 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13631:5: note: in expansion of macro ‘ecs_check’ +13631 | ecs_check(desc->event != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13737:28: note: crosses initialization of ‘ecs_event_id_record_t* iders [5]’ +13737 | ecs_event_id_record_t *iders[5] = {0}; + | ^~~~~ +../src/flecs/distr/flecs.c:13735:10: note: crosses initialization of ‘bool has_observed’ +13735 | bool has_observed = table_flags & EcsTableHasTraversable; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13732:10: note: crosses initialization of ‘bool can_forward’ +13732 | bool can_forward = event != EcsOnSet; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13725:10: note: crosses initialization of ‘bool can_override’ +13725 | bool can_override = count && (table_flags & EcsTableHasIsA) && ( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13720:15: note: crosses initialization of ‘ecs_id_t* id_array’ +13720 | ecs_id_t *id_array = ids->array; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13719:13: note: crosses initialization of ‘int32_t id_count’ +13719 | int32_t id_count = ids->count; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13712:19: note: crosses initialization of ‘ecs_column_t* columns’ +13712 | ecs_column_t *columns = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13711:17: note: crosses initialization of ‘ecs_data_t* storage’ +13711 | ecs_data_t *storage = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13709:31: note: crosses initialization of ‘const ecs_event_record_t* er_onset’ +13709 | const ecs_event_record_t *er_onset = flecs_event_record_get_if(observable, EcsOnSet); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13708:31: note: crosses initialization of ‘const ecs_event_record_t* wcer’ +13708 | const ecs_event_record_t *wcer = flecs_event_record_get_if(observable, EcsWildcard); + | ^~~~ +../src/flecs/distr/flecs.c:13707:31: note: crosses initialization of ‘const ecs_event_record_t* er’ +13707 | const ecs_event_record_t *er = flecs_event_record_get_if(observable, event); + | ^~ +../src/flecs/distr/flecs.c:13697:23: note: crosses initialization of ‘ecs_observable_t* observable’ +13697 | ecs_observable_t *observable = ecs_get_observable(desc->observable); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:13679:16: note: crosses initialization of ‘ecs_iter_t it’ +13679 | ecs_iter_t it = { + | ^~ +../src/flecs/distr/flecs.c:13677:18: note: crosses initialization of ‘ecs_entity_t sources_cache’ +13677 | ecs_entity_t sources_cache = 0; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13676:31: note: crosses initialization of ‘const ecs_table_record_t* trs_cache’ +13676 | const ecs_table_record_t* trs_cache = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13675:16: note: crosses initialization of ‘ecs_size_t sizes_cache’ +13675 | ecs_size_t sizes_cache = 0; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13674:14: note: crosses initialization of ‘ecs_id_t ids_cache’ +13674 | ecs_id_t ids_cache = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13672:13: note: crosses initialization of ‘int32_t evtx’ +13672 | int32_t evtx = ++world->event_id; + | ^~~~ +../src/flecs/distr/flecs.c:13661:10: note: crosses initialization of ‘bool table_event’ +13661 | bool table_event = desc->flags & EcsEventTableOnly; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13654:13: note: crosses initialization of ‘int32_t defer’ +13654 | int32_t defer = world->stages[0]->defer; + | ^~~~~ +../src/flecs/distr/flecs.c:13651:19: note: crosses initialization of ‘ecs_flags32_t table_flags’ +13651 | ecs_flags32_t table_flags = table->flags; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13650:16: note: crosses initialization of ‘int32_t count’ +13650 | int32_t i, count = desc->count; + | ^~~~~ +../src/flecs/distr/flecs.c:13649:13: note: crosses initialization of ‘int32_t offset’ +13649 | int32_t offset = desc->offset; + | ^~~~~~ +../src/flecs/distr/flecs.c:13648:40: note: crosses initialization of ‘ecs_table_t* other_table’ +13648 | ecs_table_t *table = desc->table, *other_table = desc->other_table; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13648:18: note: crosses initialization of ‘ecs_table_t* table’ +13648 | ecs_table_t *table = desc->table, *other_table = desc->other_table; + | ^~~~~ +../src/flecs/distr/flecs.c:13647:18: note: crosses initialization of ‘ecs_entity_t event’ +13647 | ecs_entity_t event = desc->event; + | ^~~~~ +../src/flecs/distr/flecs.c:13646:23: note: crosses initialization of ‘const ecs_type_t* ids’ +13646 | const ecs_type_t *ids = desc->ids; + | ^~~ +../src/flecs/distr/flecs.c:13641:10: note: crosses initialization of ‘bool measure_time’ +13641 | bool measure_time = world->flags & EcsWorldMeasureSystemTime; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13640:16: note: crosses initialization of ‘ecs_time_t t’ +13640 | ecs_time_t t = {0}; + | ^ +../src/flecs/distr/flecs.c:13966:1: error: jump to label ‘error’ +13966 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13630:5: note: in expansion of macro ‘ecs_check’ +13630 | ecs_check(desc != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13737:28: note: crosses initialization of ‘ecs_event_id_record_t* iders [5]’ +13737 | ecs_event_id_record_t *iders[5] = {0}; + | ^~~~~ +../src/flecs/distr/flecs.c:13735:10: note: crosses initialization of ‘bool has_observed’ +13735 | bool has_observed = table_flags & EcsTableHasTraversable; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13732:10: note: crosses initialization of ‘bool can_forward’ +13732 | bool can_forward = event != EcsOnSet; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13725:10: note: crosses initialization of ‘bool can_override’ +13725 | bool can_override = count && (table_flags & EcsTableHasIsA) && ( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13720:15: note: crosses initialization of ‘ecs_id_t* id_array’ +13720 | ecs_id_t *id_array = ids->array; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13719:13: note: crosses initialization of ‘int32_t id_count’ +13719 | int32_t id_count = ids->count; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13712:19: note: crosses initialization of ‘ecs_column_t* columns’ +13712 | ecs_column_t *columns = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13711:17: note: crosses initialization of ‘ecs_data_t* storage’ +13711 | ecs_data_t *storage = NULL; + | ^~~~~~~ +../src/flecs/distr/flecs.c:13709:31: note: crosses initialization of ‘const ecs_event_record_t* er_onset’ +13709 | const ecs_event_record_t *er_onset = flecs_event_record_get_if(observable, EcsOnSet); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:13708:31: note: crosses initialization of ‘const ecs_event_record_t* wcer’ +13708 | const ecs_event_record_t *wcer = flecs_event_record_get_if(observable, EcsWildcard); + | ^~~~ +../src/flecs/distr/flecs.c:13707:31: note: crosses initialization of ‘const ecs_event_record_t* er’ +13707 | const ecs_event_record_t *er = flecs_event_record_get_if(observable, event); + | ^~ +../src/flecs/distr/flecs.c:13697:23: note: crosses initialization of ‘ecs_observable_t* observable’ +13697 | ecs_observable_t *observable = ecs_get_observable(desc->observable); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:13679:16: note: crosses initialization of ‘ecs_iter_t it’ +13679 | ecs_iter_t it = { + | ^~ +../src/flecs/distr/flecs.c:13677:18: note: crosses initialization of ‘ecs_entity_t sources_cache’ +13677 | ecs_entity_t sources_cache = 0; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13676:31: note: crosses initialization of ‘const ecs_table_record_t* trs_cache’ +13676 | const ecs_table_record_t* trs_cache = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13675:16: note: crosses initialization of ‘ecs_size_t sizes_cache’ +13675 | ecs_size_t sizes_cache = 0; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13674:14: note: crosses initialization of ‘ecs_id_t ids_cache’ +13674 | ecs_id_t ids_cache = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:13672:13: note: crosses initialization of ‘int32_t evtx’ +13672 | int32_t evtx = ++world->event_id; + | ^~~~ +../src/flecs/distr/flecs.c:13661:10: note: crosses initialization of ‘bool table_event’ +13661 | bool table_event = desc->flags & EcsEventTableOnly; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13654:13: note: crosses initialization of ‘int32_t defer’ +13654 | int32_t defer = world->stages[0]->defer; + | ^~~~~ +../src/flecs/distr/flecs.c:13651:19: note: crosses initialization of ‘ecs_flags32_t table_flags’ +13651 | ecs_flags32_t table_flags = table->flags; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13650:16: note: crosses initialization of ‘int32_t count’ +13650 | int32_t i, count = desc->count; + | ^~~~~ +../src/flecs/distr/flecs.c:13649:13: note: crosses initialization of ‘int32_t offset’ +13649 | int32_t offset = desc->offset; + | ^~~~~~ +../src/flecs/distr/flecs.c:13648:40: note: crosses initialization of ‘ecs_table_t* other_table’ +13648 | ecs_table_t *table = desc->table, *other_table = desc->other_table; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:13648:18: note: crosses initialization of ‘ecs_table_t* table’ +13648 | ecs_table_t *table = desc->table, *other_table = desc->other_table; + | ^~~~~ +../src/flecs/distr/flecs.c:13647:18: note: crosses initialization of ‘ecs_entity_t event’ +13647 | ecs_entity_t event = desc->event; + | ^~~~~ +../src/flecs/distr/flecs.c:13646:23: note: crosses initialization of ‘const ecs_type_t* ids’ +13646 | const ecs_type_t *ids = desc->ids; + | ^~~ +../src/flecs/distr/flecs.c:13641:10: note: crosses initialization of ‘bool measure_time’ +13641 | bool measure_time = world->flags & EcsWorldMeasureSystemTime; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13640:16: note: crosses initialization of ‘ecs_time_t t’ +13640 | ecs_time_t t = {0}; + | ^ +../src/flecs/distr/flecs.c: In function ‘void ecs_emit(ecs_world_t*, ecs_event_desc_t*)’: +../src/flecs/distr/flecs.c:14008:5: error: designator order for field ‘ecs_type_t::array’ does not match declaration order in ‘ecs_type_t’ +14008 | }; + | ^ +../src/flecs/distr/flecs.c:14026:1: error: jump to label ‘error’ +14026 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13983:5: note: in expansion of macro ‘ecs_check’ +13983 | ecs_check(!(desc->param && desc->const_param), ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:14005:16: note: crosses initialization of ‘ecs_type_t default_ids’ +14005 | ecs_type_t default_ids = (ecs_type_t){ + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:14026:1: error: jump to label ‘error’ +14026 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:13982:5: note: in expansion of macro ‘ecs_check’ +13982 | ecs_check(desc != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:14005:16: note: crosses initialization of ‘ecs_type_t default_ids’ +14005 | ecs_type_t default_ids = (ecs_type_t){ + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_inc_observer_count(ecs_world_t*, ecs_entity_t, ecs_event_record_t*, ecs_id_t, int32_t)’: +../src/flecs/distr/flecs.c:14120:60: error: taking address of rvalue [-fpermissive] +14120 | flecs_notify_tables(world, id, &(ecs_table_event_t){ + | ^ +14121 | .kind = EcsTableTriggersForId, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +14122 | .event = event + | ~~~~~~~~~~~~~~ +14123 | }); + | ~ +../src/flecs/distr/flecs.c:14134:60: error: taking address of rvalue [-fpermissive] +14134 | flecs_notify_tables(world, id, &(ecs_table_event_t){ + | ^ +14135 | .kind = EcsTableNoTriggersForId, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +14136 | .event = event + | ~~~~~~~~~~~~~~ +14137 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_register_observer_for_id(ecs_world_t*, ecs_observable_t*, ecs_observer_t*, size_t)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:14175:33: note: in expansion of macro ‘flecs_observer_impl’ +14175 | ecs_observer_impl_t *impl = flecs_observer_impl(o); + | ^~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_map_t*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:14194:32: note: in expansion of macro ‘ECS_OFFSET’ +14194 | ecs_map_t *observers = ECS_OFFSET(idt, offset); + | ^~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_unregister_observer_for_id(ecs_world_t*, ecs_observable_t*, ecs_observer_t*, size_t)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:14235:33: note: in expansion of macro ‘flecs_observer_impl’ +14235 | ecs_observer_impl_t *impl = flecs_observer_impl(o); + | ^~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_map_t*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:14253:35: note: in expansion of macro ‘ECS_OFFSET’ +14253 | ecs_map_t *id_observers = ECS_OFFSET(idt, offset); + | ^~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘bool flecs_ignore_observer(ecs_observer_t*, ecs_table_t*, ecs_iter_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:14302:33: note: in expansion of macro ‘flecs_observer_impl’ +14302 | ecs_observer_impl_t *impl = flecs_observer_impl(o); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_default_uni_observer_run_callback(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:14402:29: error: invalid conversion from ‘void*’ to ‘ecs_observer_t*’ [-fpermissive] +14402 | ecs_observer_t *o = it->ctx; + | ~~~~^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_uni_observer_invoke(ecs_world_t*, ecs_observer_t*, ecs_iter_t*, ecs_table_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:14436:33: note: in expansion of macro ‘flecs_observer_impl’ +14436 | ecs_observer_impl_t *impl = flecs_observer_impl(o); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_observers_invoke(ecs_world_t*, ecs_map_t*, ecs_iter_t*, ecs_table_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_observer_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:14479:33: note: in expansion of macro ‘ecs_map_ptr’ +14479 | ecs_observer_t *o = ecs_map_ptr(&oit); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_multi_observer_invoke(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:14493:29: error: invalid conversion from ‘void*’ to ‘ecs_observer_t*’ [-fpermissive] +14493 | ecs_observer_t *o = it->ctx; + | ~~~~^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:14496:33: note: in expansion of macro ‘flecs_observer_impl’ +14496 | ecs_observer_impl_t *impl = flecs_observer_impl(o); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_multi_observer_invoke_no_query(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:14609:29: error: invalid conversion from ‘void*’ to ‘ecs_observer_t*’ [-fpermissive] +14609 | ecs_observer_t *o = it->ctx; + | ~~~~^~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_multi_observer_builtin_run(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:14655:29: error: invalid conversion from ‘void*’ to ‘ecs_observer_t*’ [-fpermissive] +14655 | ecs_observer_t *o = it->ctx; + | ~~~~^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:14659:13: note: in expansion of macro ‘flecs_observer_impl’ +14659 | if (flecs_observer_impl(o)->flags & EcsObserverBypassQuery) { + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_uni_observer_init(ecs_world_t*, ecs_observer_t*, const ecs_observer_desc_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:14732:33: note: in expansion of macro ‘flecs_observer_impl’ +14732 | ecs_observer_impl_t *impl = flecs_observer_impl(o); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_observer_add_child(ecs_world_t*, ecs_observer_t*, const ecs_observer_desc_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:14780:33: note: in expansion of macro ‘flecs_observer_impl’ +14780 | ecs_observer_impl_t *impl = flecs_observer_impl(o); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_multi_observer_init(ecs_world_t*, ecs_observer_t*, const ecs_observer_desc_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:14793:33: note: in expansion of macro ‘flecs_observer_impl’ +14793 | ecs_observer_impl_t *impl = flecs_observer_impl(o); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:14967:9: note: in expansion of macro ‘flecs_observer_impl’ +14967 | flecs_observer_impl(o)->not_query = + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_observer_poly_fini(void*)’: +../src/flecs/distr/flecs.c:14978:25: error: invalid conversion from ‘void*’ to ‘ecs_observer_t*’ [-fpermissive] +14978 | flecs_observer_fini(ptr); + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c:2540:21: note: initializing argument 1 of ‘void flecs_observer_fini(ecs_observer_t*)’ + 2540 | ecs_observer_t *observer); + | ~~~~~~~~~~~~~~~~^~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_observer_t* flecs_observer_init(ecs_world_t*, ecs_entity_t, const ecs_observer_desc_t*)’: +../src/flecs/distr/flecs.c:15020:42: error: invalid conversion from ‘ecs_poly_t*’ {aka ‘void*’} to ‘ecs_observable_t*’ [-fpermissive] +15020 | ecs_observable_t *observable = desc->observable; + | ~~~~~~^~~~~~~~~~ + | | + | ecs_poly_t* {aka void*} +../src/flecs/distr/flecs.c:15112:1: error: jump to label ‘error’ +15112 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:15080:5: note: in expansion of macro ‘ecs_check’ +15080 | ecs_check(o->event_count != 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:15096:10: note: crosses initialization of ‘bool is_monitor’ +15096 | bool is_monitor = impl->flags & EcsObserverIsMonitor; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:15083:10: note: crosses initialization of ‘bool multi’ +15083 | bool multi = false; + | ^~~~~ +../src/flecs/distr/flecs.c:15112:1: error: jump to label ‘error’ +15112 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:15054:13: note: in expansion of macro ‘ecs_check’ +15054 | ecs_check(i == 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:15096:10: note: crosses initialization of ‘bool is_monitor’ +15096 | bool is_monitor = impl->flags & EcsObserverIsMonitor; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:15083:10: note: crosses initialization of ‘bool multi’ +15083 | bool multi = false; + | ^~~~~ +../src/flecs/distr/flecs.c:15112:1: error: jump to label ‘error’ +15112 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:15038:5: note: in expansion of macro ‘ecs_check’ +15038 | ecs_check(!(desc->yield_existing && + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:15096:10: note: crosses initialization of ‘bool is_monitor’ +15096 | bool is_monitor = impl->flags & EcsObserverIsMonitor; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:15083:10: note: crosses initialization of ‘bool multi’ +15083 | bool multi = false; + | ^~~~~ +../src/flecs/distr/flecs.c:15112:1: error: jump to label ‘error’ +15112 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:15017:5: note: in expansion of macro ‘ecs_check’ +15017 | ecs_check(o->query->term_count > 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:15096:10: note: crosses initialization of ‘bool is_monitor’ +15096 | bool is_monitor = impl->flags & EcsObserverIsMonitor; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:15083:10: note: crosses initialization of ‘bool multi’ +15083 | bool multi = false; + | ^~~~~ +../src/flecs/distr/flecs.c:15020:23: note: crosses initialization of ‘ecs_observable_t* observable’ +15020 | ecs_observable_t *observable = desc->observable; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:15112:1: error: jump to label ‘error’ +15112 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:14988:5: note: in expansion of macro ‘ecs_check’ +14988 | ecs_check(desc->callback != NULL || desc->run != NULL, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:15096:10: note: crosses initialization of ‘bool is_monitor’ +15096 | bool is_monitor = impl->flags & EcsObserverIsMonitor; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:15083:10: note: crosses initialization of ‘bool multi’ +15083 | bool multi = false; + | ^~~~~ +../src/flecs/distr/flecs.c:15020:23: note: crosses initialization of ‘ecs_observable_t* observable’ +15020 | ecs_observable_t *observable = desc->observable; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:15008:18: note: crosses initialization of ‘ecs_query_t* query’ +15008 | ecs_query_t *query = o->query = ecs_query_init( + | ^~~~~ +../src/flecs/distr/flecs.c:15003:22: note: crosses initialization of ‘ecs_query_desc_t query_desc’ +15003 | ecs_query_desc_t query_desc = desc->query; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:14996:21: note: crosses initialization of ‘ecs_observer_t* o’ +14996 | ecs_observer_t *o = &impl->pub; + | ^ +../src/flecs/distr/flecs.c:14992:26: note: crosses initialization of ‘ecs_observer_impl_t* impl’ +14992 | ecs_observer_impl_t *impl = flecs_sparse_add_t( + | ^~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_observer_init(ecs_world_t*, const ecs_observer_desc_t*)’: +../src/flecs/distr/flecs.c:15130:36: error: taking address of rvalue [-fpermissive] +15130 | entity = ecs_entity(world, {0}); + | ^~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:15211:1: error: jump to label ‘error’ +15211 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:15125:5: note: in expansion of macro ‘ecs_check’ +15125 | ecs_check(!(world->flags & EcsWorldFini), ECS_INVALID_OPERATION, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:15133:14: note: crosses initialization of ‘EcsPoly* poly’ +15133 | EcsPoly *poly = flecs_poly_bind(world, entity, ecs_observer_t); + | ^~~~ +../src/flecs/distr/flecs.c:15211:1: error: jump to label ‘error’ +15211 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:15123:5: note: in expansion of macro ‘ecs_check’ +15123 | ecs_check(desc->_canary == 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:15133:14: note: crosses initialization of ‘EcsPoly* poly’ +15133 | EcsPoly *poly = flecs_poly_bind(world, entity, ecs_observer_t); + | ^~~~ +../src/flecs/distr/flecs.c:15211:1: error: jump to label ‘error’ +15211 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:15122:5: note: in expansion of macro ‘ecs_check’ +15122 | ecs_check(desc != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:15133:14: note: crosses initialization of ‘EcsPoly* poly’ +15133 | EcsPoly *poly = flecs_poly_bind(world, entity, ecs_observer_t); + | ^~~~ +../src/flecs/distr/flecs.c:15211:1: error: jump to label ‘error’ +15211 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:15121:5: note: in expansion of macro ‘ecs_check’ +15121 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:15133:14: note: crosses initialization of ‘EcsPoly* poly’ +15133 | EcsPoly *poly = flecs_poly_bind(world, entity, ecs_observer_t); + | ^~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_observer_fini(ecs_observer_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:15231:33: note: in expansion of macro ‘flecs_observer_impl’ +15231 | ecs_observer_impl_t *impl = flecs_observer_impl(o); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:15238:50: error: invalid conversion from ‘void*’ to ‘ecs_observer_t**’ [-fpermissive] +15238 | ecs_observer_t **children = ecs_vec_first(&impl->children); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_observer_set_disable_bit(ecs_world_t*, ecs_entity_t, ecs_flags32_t, bool)’: +../src/flecs/distr/flecs.c:15291:31: error: invalid conversion from ‘ecs_poly_t*’ {aka ‘void*’} to ‘ecs_observer_t*’ [-fpermissive] +15291 | ecs_observer_t *o = poly->poly; + | ~~~~~~^~~~ + | | + | ecs_poly_t* {aka void*} +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:15292:33: note: in expansion of macro ‘flecs_observer_impl’ +15292 | ecs_observer_impl_t *impl = flecs_observer_impl(o); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:15294:50: error: invalid conversion from ‘void*’ to ‘ecs_observer_t**’ [-fpermissive] +15294 | ecs_observer_t **children = ecs_vec_first(&impl->children); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:3952:34: note: in definition of macro ‘ECS_BIT_SET’ + 3952 | #define ECS_BIT_SET(flags, bit) (flags) |= (bit) + | ^~~~~ +../src/flecs/distr/flecs.c:15298:17: note: in expansion of macro ‘ECS_BIT_COND’ +15298 | ECS_BIT_COND(flecs_observer_impl(children[i])->flags, bit, cond); + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:15298:30: note: in expansion of macro ‘flecs_observer_impl’ +15298 | ECS_BIT_COND(flecs_observer_impl(children[i])->flags, bit, cond); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:3953:36: note: in definition of macro ‘ECS_BIT_CLEAR’ + 3953 | #define ECS_BIT_CLEAR(flags, bit) (flags) &= ~(bit) + | ^~~~~ +../src/flecs/distr/flecs.c:15298:17: note: in expansion of macro ‘ECS_BIT_COND’ +15298 | ECS_BIT_COND(flecs_observer_impl(children[i])->flags, bit, cond); + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:15298:30: note: in expansion of macro ‘flecs_observer_impl’ +15298 | ECS_BIT_COND(flecs_observer_impl(children[i])->flags, bit, cond); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: At global scope: +../src/flecs/distr/flecs.c:15328:1: error: designator order for field ‘ecs_os_api_t::log_level_’ does not match declaration order in ‘ecs_os_api_t’ +15328 | }; + | ^ +../src/flecs/distr/flecs.c: In function ‘void flecs_dump_backtrace(void*)’: +../src/flecs/distr/flecs.c:15398:17: error: invalid conversion from ‘void*’ to ‘FILE*’ [-fpermissive] +15398 | fprintf(stream, "%s\n", strings[j]); + | ^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.h:2234, + from ../src/flecs/distr/flecs.c:19: +/usr/include/stdio.h:350:38: note: initializing argument 1 of ‘int fprintf(FILE*, const char*, ...)’ + 350 | extern int fprintf (FILE *__restrict __stream, + | ~~~~~~~~~~~~~~~~~^~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘char* ecs_os_api_strdup(const char*)’: +../src/flecs/distr/flecs.h:2607:47: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive] + 2607 | #define ecs_os_malloc(size) ecs_os_api.malloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:15643:24: note: in expansion of macro ‘ecs_os_malloc’ +15643 | char *result = ecs_os_malloc(len + 1); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: At global scope: +../src/flecs/distr/flecs.c:15886:1: sorry, unimplemented: non-trivial designated initializers not supported +15886 | }; + | ^ +../src/flecs/distr/flecs.c:15902:1: sorry, unimplemented: non-trivial designated initializers not supported +15902 | }; + | ^ +../src/flecs/distr/flecs.c: In function ‘void* assert_mixin(const ecs_poly_t*, ecs_mixin_kind_t)’: +../src/flecs/distr/flecs.c:15912:31: error: invalid conversion from ‘const ecs_poly_t*’ {aka ‘const void*’} to ‘const ecs_header_t*’ [-fpermissive] +15912 | const ecs_header_t *hdr = poly; + | ^~~~ + | | + | const ecs_poly_t* {aka const void*} +../src/flecs/distr/flecs.c: In function ‘void* flecs_poly_init_(ecs_poly_t*, int32_t, ecs_size_t, ecs_mixins_t*)’: +../src/flecs/distr/flecs.c:15938:25: error: invalid conversion from ‘ecs_poly_t*’ {aka ‘void*’} to ‘ecs_header_t*’ [-fpermissive] +15938 | ecs_header_t *hdr = poly; + | ^~~~ + | | + | ecs_poly_t* {aka void*} +../src/flecs/distr/flecs.c: In function ‘void flecs_poly_fini_(ecs_poly_t*, int32_t)’: +../src/flecs/distr/flecs.c:15956:25: error: invalid conversion from ‘ecs_poly_t*’ {aka ‘void*’} to ‘ecs_header_t*’ [-fpermissive] +15956 | ecs_header_t *hdr = poly; + | ^~~~ + | | + | ecs_poly_t* {aka void*} +../src/flecs/distr/flecs.c: In function ‘int32_t flecs_poly_claim_(ecs_poly_t*)’: +../src/flecs/distr/flecs.c:15970:25: error: invalid conversion from ‘ecs_poly_t*’ {aka ‘void*’} to ‘ecs_header_t*’ [-fpermissive] +15970 | ecs_header_t *hdr = poly; + | ^~~~ + | | + | ecs_poly_t* {aka void*} +../src/flecs/distr/flecs.c: In function ‘int32_t flecs_poly_release_(ecs_poly_t*)’: +../src/flecs/distr/flecs.c:15984:25: error: invalid conversion from ‘ecs_poly_t*’ {aka ‘void*’} to ‘ecs_header_t*’ [-fpermissive] +15984 | ecs_header_t *hdr = poly; + | ^~~~ + | | + | ecs_poly_t* {aka void*} +../src/flecs/distr/flecs.c: In function ‘int32_t flecs_poly_refcount(ecs_poly_t*)’: +../src/flecs/distr/flecs.c:15998:25: error: invalid conversion from ‘ecs_poly_t*’ {aka ‘void*’} to ‘ecs_header_t*’ [-fpermissive] +15998 | ecs_header_t *hdr = poly; + | ^~~~ + | | + | ecs_poly_t* {aka void*} +../src/flecs/distr/flecs.c: In function ‘bool flecs_poly_is_(const ecs_poly_t*, int32_t)’: +../src/flecs/distr/flecs.c:16067:31: error: invalid conversion from ‘const ecs_poly_t*’ {aka ‘const void*’} to ‘const ecs_header_t*’ [-fpermissive] +16067 | const ecs_header_t *hdr = poly; + | ^~~~ + | | + | const ecs_poly_t* {aka const void*} +../src/flecs/distr/flecs.c: In function ‘const ecs_world_t* ecs_get_world(const ecs_poly_t*)’: +../src/flecs/distr/flecs.c:16083:16: error: invalid conversion from ‘const ecs_poly_t*’ {aka ‘const void*’} to ‘const ecs_world_t*’ [-fpermissive] +16083 | return poly; + | ^~~~ + | | + | const ecs_poly_t* {aka const void*} +../src/flecs/distr/flecs.c: In function ‘int32_t flecs_type_search(const ecs_table_t*, ecs_id_record_t*, ecs_id_t*, ecs_id_t*, ecs_table_record_t**)’: +../src/flecs/distr/flecs.c:16118:49: error: invalid conversion from ‘void*’ to ‘ecs_table_record_t*’ [-fpermissive] +16118 | ecs_table_record_t *tr = ecs_table_cache_get(&idr->cache, table); + | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘bool flecs_defer_bulk_new(ecs_world_t*, ecs_stage_t*, int32_t, ecs_id_t, const ecs_entity_t**)’: +../src/flecs/distr/flecs.h:2607:47: error: invalid conversion from ‘void*’ to ‘ecs_entity_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 2607 | #define ecs_os_malloc(size) ecs_os_api.malloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:16724:29: note: in expansion of macro ‘ecs_os_malloc’ +16724 | ecs_entity_t *ids = ecs_os_malloc(count * ECS_SIZEOF(ecs_entity_t)); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void* flecs_defer_set(ecs_world_t*, ecs_stage_t*, ecs_cmd_kind_t, ecs_entity_t, ecs_id_t, ecs_size_t, void*, bool*)’: +../src/flecs/distr/flecs.c:16843:58: error: invalid conversion from ‘void*’ to ‘const ecs_sparse_t*’ [-fpermissive] +16843 | existing = flecs_sparse_get_any(idr->sparse, 0, entity); + | ~~~~~^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:1411:25: note: initializing argument 1 of ‘void* flecs_sparse_get_any(const ecs_sparse_t*, ecs_size_t, uint64_t)’ + 1411 | const ecs_sparse_t *sparse, + | ~~~~~~~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c:16959:1: error: jump to label ‘error’ +16959 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:16815:5: note: in expansion of macro ‘ecs_check’ +16815 | ecs_check(ti != NULL, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:16851:10: note: crosses initialization of ‘bool emplace’ +16851 | bool emplace = cmd_kind == EcsCmdEmplace; + | ^~~~~~~ +../src/flecs/distr/flecs.c:16850:11: note: crosses initialization of ‘void* cmd_value’ +16850 | void *cmd_value = existing; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:16826:18: note: crosses initialization of ‘ecs_table_t* table’ +16826 | ecs_table_t *table = NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:16825:11: note: crosses initialization of ‘void* existing’ +16825 | void *existing = NULL; + | ^~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_enqueue(ecs_world_t*, ecs_stage_t*, ecs_event_desc_t*)’: +../src/flecs/distr/flecs.h:1635:22: error: invalid conversion from ‘void*’ to ‘ecs_event_desc_t*’ [-fpermissive] + 1635 | flecs_stack_alloc(stack, ECS_SIZEOF(T), ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:16973:34: note: in expansion of macro ‘flecs_stack_alloc_t’ +16973 | ecs_event_desc_t *desc_cmd = flecs_stack_alloc_t(stack, ecs_event_desc_t); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:1635:22: error: invalid conversion from ‘void*’ to ‘ecs_type_t*’ [-fpermissive] + 1635 | flecs_stack_alloc(stack, ECS_SIZEOF(T), ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:16977:32: note: in expansion of macro ‘flecs_stack_alloc_t’ +16977 | ecs_type_t *type_cmd = flecs_stack_alloc_t(stack, ecs_type_t); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:1638:22: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 1638 | flecs_stack_alloc(stack, ECS_SIZEOF(T) * count, ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:16980:27: note: in expansion of macro ‘flecs_stack_alloc_n’ +16980 | type_cmd->array = flecs_stack_alloc_n(stack, ecs_id_t, id_count); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_stage_merge_post_frame(ecs_world_t*, ecs_stage_t*)’: +../src/flecs/distr/flecs.c:17025:45: error: invalid conversion from ‘void*’ to ‘ecs_action_elem_t*’ [-fpermissive] +17025 | ecs_action_elem_t *elems = ecs_vec_first(&stage->post_frame_actions); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_stage_t* flecs_stage_new(ecs_world_t*)’: +../src/flecs/distr/flecs.h:2616:47: error: invalid conversion from ‘void*’ to ‘ecs_stage_t*’ [-fpermissive] + 2616 | #define ecs_os_calloc(size) ecs_os_api.calloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:17087:26: note: in expansion of macro ‘ecs_os_calloc’ +17087 | ecs_stage_t *stage = ecs_os_calloc(sizeof(ecs_stage_t)); + | ^~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int32_t ecs_stage_get_id(const ecs_world_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_world_t*’ to type ‘ecs_stage_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:17257:30: note: in expansion of macro ‘ECS_CONST_CAST’ +17257 | ecs_stage_t *stage = ECS_CONST_CAST(ecs_stage_t*, world); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_is_deferred(const ecs_world_t*)’: +../src/flecs/distr/flecs.c:17371:1: error: jump to label ‘error’ +17371 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:17368:5: note: in expansion of macro ‘ecs_check’ +17368 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:17369:24: note: crosses initialization of ‘const ecs_stage_t* stage’ +17369 | const ecs_stage_t *stage = flecs_stage_from_readonly_world(world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘void* ecs_value_new_w_type_info(ecs_world_t*, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:17430:1: error: jump to label ‘error’ +17430 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:17420:5: note: in expansion of macro ‘ecs_check’ +17420 | ecs_check(ti != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:17423:11: note: crosses initialization of ‘void* result’ +17423 | void *result = flecs_alloc(&world->allocator, ti->size); + | ^~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_stage_t* flecs_stage_from_readonly_world(const ecs_world_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_world_t*’ to type ‘ecs_stage_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:17955:16: note: in expansion of macro ‘ECS_CONST_CAST’ +17955 | return ECS_CONST_CAST(ecs_stage_t*, world); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_stage_t* flecs_stage_from_world(ecs_world_t**)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_world_t*’ to type ‘ecs_stage_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:17976:12: note: in expansion of macro ‘ECS_CONST_CAST’ +17976 | return ECS_CONST_CAST(ecs_stage_t*, world); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_eval_component_monitor(ecs_world_t*)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_monitor_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:18074:28: note: in expansion of macro ‘ecs_map_ptr’ +18074 | ecs_monitor_t *m = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:18082:44: error: invalid conversion from ‘void*’ to ‘ecs_query_t**’ [-fpermissive] +18082 | ecs_query_t **elems = ecs_vec_first(&m->queries); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:18086:75: error: taking address of rvalue [-fpermissive] +18086 | flecs_query_cache_notify(world, q, &(ecs_query_cache_event_t) { + | ^ +18087 | .kind = EcsQueryTableRematch + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +18088 | }); + | ~ +../src/flecs/distr/flecs.c: In function ‘void flecs_monitor_unregister(ecs_world_t*, ecs_entity_t, ecs_query_t*)’: +../src/flecs/distr/flecs.c:18155:42: error: invalid conversion from ‘void*’ to ‘ecs_query_t**’ [-fpermissive] +18155 | ecs_query_t **queries = ecs_vec_first(&m->queries); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_fini_root_tables(ecs_world_t*, ecs_id_record_t*, bool)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:18249:18: note: in expansion of macro ‘flecs_table_cache_next’ +18249 | while ((tr = flecs_table_cache_next(&it, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: At global scope: +../src/flecs/distr/flecs.c:18466:1: error: designator order for field ‘ecs_build_info_t::version’ does not match declaration order in ‘const ecs_build_info_t’ +18466 | }; + | ^ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_world_t* ecs_init_w_args(int, char**)’: +../src/flecs/distr/flecs.c:18638:67: error: taking address of rvalue [-fpermissive] +18638 | ecs_set_pair(world, EcsWorld, EcsDocDescription, EcsName, {app}); + | ^~~~~ +../src/flecs/distr/flecs.h:9793:32: note: in definition of macro ‘ecs_set_pair’ + 9793 | sizeof(First), &(First)__VA_ARGS__) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_notify_tables(ecs_world_t*, ecs_id_t, ecs_table_event_t*)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:18692:22: note: in expansion of macro ‘flecs_table_cache_next’ +18692 | while ((tr = flecs_table_cache_next(&it, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_set_hooks_id(ecs_world_t*, ecs_entity_t, const ecs_type_hooks_t*)’: +../src/flecs/distr/flecs.c:18890:1: error: jump to label ‘error’ +18890 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:18780:5: note: in expansion of macro ‘ecs_check’ +18780 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:18790:22: note: crosses initialization of ‘ecs_type_info_t* ti’ +18790 | ecs_type_info_t *ti = flecs_type_info_ensure(world, component); + | ^~ +../src/flecs/distr/flecs.c: In function ‘void ecs_atfini(ecs_world_t*, ecs_fini_action_t, void*)’: +../src/flecs/distr/flecs.c:18919:1: error: jump to label ‘error’ +18919 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:18911:5: note: in expansion of macro ‘ecs_check’ +18911 | ecs_check(action != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:18913:24: note: crosses initialization of ‘ecs_action_elem_t* elem’ +18913 | ecs_action_elem_t *elem = ecs_vec_append_t(NULL, &world->fini_actions, + | ^~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_run_post_frame(ecs_world_t*, ecs_fini_action_t, void*)’: +../src/flecs/distr/flecs.c:18941:1: error: jump to label ‘error’ +18941 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:18932:5: note: in expansion of macro ‘ecs_check’ +18932 | ecs_check((world->flags & EcsWorldFrameInProgress), ECS_INVALID_OPERATION, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:18935:24: note: crosses initialization of ‘ecs_action_elem_t* elem’ +18935 | ecs_action_elem_t *elem = ecs_vec_append_t(&stage->allocator, + | ^~~~ +../src/flecs/distr/flecs.c:18941:1: error: jump to label ‘error’ +18941 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:18929:5: note: in expansion of macro ‘ecs_check’ +18929 | ecs_check(action != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:18935:24: note: crosses initialization of ‘ecs_action_elem_t* elem’ +18935 | ecs_action_elem_t *elem = ecs_vec_append_t(&stage->allocator, + | ^~~~ +../src/flecs/distr/flecs.c:18931:18: note: crosses initialization of ‘ecs_stage_t* stage’ +18931 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:18941:1: error: jump to label ‘error’ +18941 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:18928:5: note: in expansion of macro ‘ecs_check’ +18928 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:18935:24: note: crosses initialization of ‘ecs_action_elem_t* elem’ +18935 | ecs_action_elem_t *elem = ecs_vec_append_t(&stage->allocator, + | ^~~~ +../src/flecs/distr/flecs.c:18931:18: note: crosses initialization of ‘ecs_stage_t* stage’ +18931 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_fini_actions(ecs_world_t*)’: +../src/flecs/distr/flecs.c:18965:45: error: invalid conversion from ‘void*’ to ‘ecs_action_elem_t*’ [-fpermissive] +18965 | ecs_action_elem_t *elems = ecs_vec_first(&world->fini_actions); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void ecs_measure_frame_time(ecs_world_t*, bool)’: +../src/flecs/distr/flecs.h:885:43: error: taking address of rvalue [-fpermissive] + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:885:23: note: in expansion of macro ‘ECS_EQ’ + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^~~~~~ +../src/flecs/distr/flecs.c:19127:9: note: in expansion of macro ‘ECS_EQZERO’ +19127 | if (ECS_EQZERO(world->info.target_fps) || enable) { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_set_entity_range(ecs_world_t*, ecs_entity_t, ecs_entity_t)’: +../src/flecs/distr/flecs.c:19226:1: error: jump to label ‘error’ +19226 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:19213:5: note: in expansion of macro ‘ecs_check’ +19213 | ecs_check(!id_end || id_end > id_start, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:19220:14: note: crosses initialization of ‘uint32_t end’ +19220 | uint32_t end = (uint32_t)id_end; + | ^~~ +../src/flecs/distr/flecs.c:19219:14: note: crosses initialization of ‘uint32_t start’ +19219 | uint32_t start = (uint32_t)id_start; + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘float flecs_insert_sleep(ecs_world_t*, ecs_time_t*)’: +../src/flecs/distr/flecs.h:885:43: error: taking address of rvalue [-fpermissive] + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:885:23: note: in expansion of macro ‘ECS_EQ’ + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^~~~~~ +../src/flecs/distr/flecs.c:19408:9: note: in expansion of macro ‘ECS_EQZERO’ +19408 | if (ECS_EQZERO(world->info.target_fps)) { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:19428:13: note: in expansion of macro ‘ECS_NEQZERO’ +19428 | if (ECS_NEQZERO(sleep_time)) { + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘float flecs_start_measure_frame(ecs_world_t*, float)’: +../src/flecs/distr/flecs.h:885:43: error: taking address of rvalue [-fpermissive] + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:885:23: note: in expansion of macro ‘ECS_EQ’ + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^~~~~~ +../src/flecs/distr/flecs.c:19453:10: note: in expansion of macro ‘ECS_EQZERO’ +19453 | (ECS_EQZERO(user_delta_time))) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:19461:21: note: in expansion of macro ‘ECS_NEQZERO’ +19461 | if (ECS_NEQZERO(world->info.target_fps)) { + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:885:43: error: taking address of rvalue [-fpermissive] + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:885:23: note: in expansion of macro ‘ECS_EQ’ + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^~~~~~ +../src/flecs/distr/flecs.c:19467:25: note: in expansion of macro ‘ECS_EQZERO’ +19467 | if (ECS_EQZERO(delta_time)) { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:885:43: error: taking address of rvalue [-fpermissive] + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:885:23: note: in expansion of macro ‘ECS_EQ’ + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^~~~~~ +../src/flecs/distr/flecs.c:19475:18: note: in expansion of macro ‘ECS_EQZERO’ +19475 | } while (ECS_EQZERO(delta_time)); + | ^~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘float ecs_frame_begin(ecs_world_t*, float)’: +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:10810:11: note: in definition of macro ‘ecs_assert’ +10810 | if (!(condition)) {\ + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:19507:5: note: in expansion of macro ‘ecs_check’ +19507 | ecs_check(ECS_NEQZERO(user_delta_time) || ecs_os_has_time(), + | ^~~~~~~~~ +../src/flecs/distr/flecs.h:883:23: note: in expansion of macro ‘ecs_os_memcmp’ + 883 | #define ECS_EQ(a, b) (ecs_os_memcmp(&(a), &(b), sizeof(a)) == 0) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:19507:15: note: in expansion of macro ‘ECS_NEQZERO’ +19507 | ecs_check(ECS_NEQZERO(user_delta_time) || ecs_os_has_time(), + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.h:713, + from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:10857:5: note: in expansion of macro ‘ecs_assert’ +10857 | ecs_assert(condition, error_code, __VA_ARGS__);\ + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:19507:5: note: in expansion of macro ‘ecs_check’ +19507 | ecs_check(ECS_NEQZERO(user_delta_time) || ecs_os_has_time(), + | ^~~~~~~~~ +../src/flecs/distr/flecs.h:883:23: note: in expansion of macro ‘ecs_os_memcmp’ + 883 | #define ECS_EQ(a, b) (ecs_os_memcmp(&(a), &(b), sizeof(a)) == 0) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:19507:15: note: in expansion of macro ‘ECS_NEQZERO’ +19507 | ecs_check(ECS_NEQZERO(user_delta_time) || ecs_os_has_time(), + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:885:43: error: taking address of rvalue [-fpermissive] + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:885:23: note: in expansion of macro ‘ECS_EQ’ + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^~~~~~ +../src/flecs/distr/flecs.c:19512:9: note: in expansion of macro ‘ECS_EQZERO’ +19512 | if (ECS_EQZERO(user_delta_time)) { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:19534:1: error: jump to label ‘error’ +19534 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:19507:5: note: in expansion of macro ‘ecs_check’ +19507 | ecs_check(ECS_NEQZERO(user_delta_time) || ecs_os_has_time(), + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:19511:17: note: crosses initialization of ‘float delta_time’ +19511 | ecs_ftime_t delta_time = flecs_start_measure_frame(world, user_delta_time); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:19534:1: error: jump to label ‘error’ +19534 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:19505:5: note: in expansion of macro ‘ecs_check’ +19505 | ecs_check(!(world->flags & EcsWorldFrameInProgress), ECS_INVALID_OPERATION, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:19511:17: note: crosses initialization of ‘float delta_time’ +19511 | ecs_ftime_t delta_time = flecs_start_measure_frame(world, user_delta_time); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:19534:1: error: jump to label ‘error’ +19534 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:19503:5: note: in expansion of macro ‘ecs_check’ +19503 | ecs_check(!(world->flags & EcsWorldReadonly), ECS_INVALID_OPERATION, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:19511:17: note: crosses initialization of ‘float delta_time’ +19511 | ecs_ftime_t delta_time = flecs_start_measure_frame(world, user_delta_time); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_frame_end(ecs_world_t*)’: +../src/flecs/distr/flecs.c:19562:1: error: jump to label ‘error’ +19562 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:19544:5: note: in expansion of macro ‘ecs_check’ +19544 | ecs_check((world->flags & EcsWorldFrameInProgress), ECS_INVALID_OPERATION, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:19549:16: note: crosses initialization of ‘int32_t count’ +19549 | int32_t i, count = world->stage_count; + | ^~~~~ +../src/flecs/distr/flecs.c:19562:1: error: jump to label ‘error’ +19562 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:19542:5: note: in expansion of macro ‘ecs_check’ +19542 | ecs_check(!(world->flags & EcsWorldReadonly), ECS_INVALID_OPERATION, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:19549:16: note: crosses initialization of ‘int32_t count’ +19549 | int32_t i, count = world->stage_count; + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_process_empty_queries(ecs_world_t*)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:19595:22: note: in expansion of macro ‘flecs_table_cache_next’ +19595 | while ((tr = flecs_table_cache_next(&it, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:19597:52: error: invalid conversion from ‘void*’ to ‘EcsPoly*’ [-fpermissive] +19597 | EcsPoly *queries = ecs_table_get_column(table, tr->column, 0); + | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:19601:49: error: invalid conversion from ‘ecs_poly_t*’ {aka ‘void*’} to ‘ecs_query_t*’ [-fpermissive] +19601 | ecs_query_t *query = queries[i].poly; + | ~~~~~~~~~~~^~~~ + | | + | ecs_poly_t* {aka void*} +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int32_t ecs_delete_empty_tables(ecs_world_t*, ecs_id_t, uint16_t, uint16_t, int32_t, double)’: +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:19776:9: note: in expansion of macro ‘ECS_NEQZERO’ +19776 | if (ECS_NEQZERO(time_budget_seconds) || (ecs_should_log_1() && ecs_os_has_time())) { + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:19780:9: note: in expansion of macro ‘ECS_NEQZERO’ +19780 | if (ECS_NEQZERO(time_budget_seconds)) { + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:19792:22: note: in expansion of macro ‘flecs_table_cache_next’ +19792 | while ((tr = flecs_table_cache_next(&it, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t flecs_alert_get_severity(ecs_world_t*, ecs_iter_t*, EcsAlert*)’: +../src/flecs/distr/flecs.c:20013:22: error: invalid conversion from ‘void*’ to ‘ecs_alert_severity_filter_t*’ [-fpermissive] +20013 | ecs_vec_first(&alert->severity_filters); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void MonitorAlerts(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:20088:34: error: invalid conversion from ‘ecs_poly_t*’ {aka ‘void*’} to ‘ecs_query_t*’ [-fpermissive] +20088 | ecs_query_t *q = poly[i].poly; + | ~~~~~~~~^~~~ + | | + | ecs_poly_t* {aka void*} +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:20156:58: error: taking address of rvalue [-fpermissive] +20156 | ecs_set(world, ai, EcsAlertInstance, { .message = NULL }); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:20157:57: error: taking address of rvalue [-fpermissive] +20157 | ecs_set(world, ai, EcsMetricSource, { .entity = e }); + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:20158:56: error: taking address of rvalue [-fpermissive] +20158 | ecs_set(world, ai, EcsMetricValue, { .value = 0 }); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:20160:25: note: in expansion of macro ‘ECS_NEQZERO’ +20160 | if (ECS_NEQZERO(alert[i].retain_period)) { + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:20161:61: error: taking address of rvalue [-fpermissive] +20161 | ecs_set(world, ai, EcsAlertTimeout, { + | ^ +20162 | .inactive_time = 0, + | ~~~~~~~~~~~~~~~~~~~ +20163 | .expire_time = alert[i].retain_period + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20164 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void MonitorAlertInstances(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:20212:32: error: invalid conversion from ‘ecs_poly_t*’ {aka ‘void*’} to ‘ecs_query_t*’ [-fpermissive] +20212 | ecs_query_t *query = poly->poly; + | ~~~~~~^~~~ + | | + | ecs_poly_t* {aka void*} +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:20292:25: note: in expansion of macro ‘ECS_NEQZERO’ +20292 | if (ECS_NEQZERO(timeout[i].inactive_time)) { + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:885:43: error: taking address of rvalue [-fpermissive] + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:885:23: note: in expansion of macro ‘ECS_EQ’ + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^~~~~~ +../src/flecs/distr/flecs.c:20310:17: note: in expansion of macro ‘ECS_EQZERO’ +20310 | if (ECS_EQZERO(timeout[i].inactive_time)) { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_alert_init(ecs_world_t*, const ecs_alert_desc_t*)’: +../src/flecs/distr/flecs.c:20492:1: error: jump to label ‘error’ +20492 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:20448:22: note: from here +20448 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:20466:18: note: crosses initialization of ‘ecs_entity_t severity’ +20466 | ecs_entity_t severity = desc->severity; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:20492:1: error: jump to label ‘error’ +20492 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:20440:18: note: from here +20440 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:20466:18: note: crosses initialization of ‘ecs_entity_t severity’ +20466 | ecs_entity_t severity = desc->severity; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:20492:1: error: jump to label ‘error’ +20492 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:20435:18: note: from here +20435 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:20466:18: note: crosses initialization of ‘ecs_entity_t severity’ +20466 | ecs_entity_t severity = desc->severity; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:20492:1: error: jump to label ‘error’ +20492 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:20429:18: note: from here +20429 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:20466:18: note: crosses initialization of ‘ecs_entity_t severity’ +20466 | ecs_entity_t severity = desc->severity; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:20492:1: error: jump to label ‘error’ +20492 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:20425:18: note: from here +20425 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:20466:18: note: crosses initialization of ‘ecs_entity_t severity’ +20466 | ecs_entity_t severity = desc->severity; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:20492:1: error: jump to label ‘error’ +20492 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:20419:18: note: from here +20419 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:20466:18: note: crosses initialization of ‘ecs_entity_t severity’ +20466 | ecs_entity_t severity = desc->severity; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:20492:1: error: jump to label ‘error’ +20492 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:20399:22: note: from here +20399 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:20466:18: note: crosses initialization of ‘ecs_entity_t severity’ +20466 | ecs_entity_t severity = desc->severity; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:20492:1: error: jump to label ‘error’ +20492 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:20376:22: note: from here +20376 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:20466:18: note: crosses initialization of ‘ecs_entity_t severity’ +20466 | ecs_entity_t severity = desc->severity; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:20492:1: error: jump to label ‘error’ +20492 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:20341:5: note: in expansion of macro ‘ecs_check’ +20341 | ecs_check(!desc->query.entity || desc->entity == desc->query.entity, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:20466:18: note: crosses initialization of ‘ecs_entity_t severity’ +20466 | ecs_entity_t severity = desc->severity; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:20365:15: note: crosses initialization of ‘EcsAlert* alert’ +20365 | EcsAlert *alert = ecs_ensure(world, result, EcsAlert); + | ^~~~~ +../src/flecs/distr/flecs.c:20352:18: note: crosses initialization of ‘ecs_query_t* q’ +20352 | ecs_query_t *q = ecs_query_init(world, &private_desc); + | ^ +../src/flecs/distr/flecs.c:20349:22: note: crosses initialization of ‘ecs_query_desc_t private_desc’ +20349 | ecs_query_desc_t private_desc = desc->query; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:20344:18: note: crosses initialization of ‘ecs_entity_t result’ +20344 | ecs_entity_t result = desc->entity; + | ^~~~~~ +../src/flecs/distr/flecs.c:20492:1: error: jump to label ‘error’ +20492 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:20339:5: note: in expansion of macro ‘ecs_check’ +20339 | ecs_check(desc->_canary == 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:20466:18: note: crosses initialization of ‘ecs_entity_t severity’ +20466 | ecs_entity_t severity = desc->severity; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:20365:15: note: crosses initialization of ‘EcsAlert* alert’ +20365 | EcsAlert *alert = ecs_ensure(world, result, EcsAlert); + | ^~~~~ +../src/flecs/distr/flecs.c:20352:18: note: crosses initialization of ‘ecs_query_t* q’ +20352 | ecs_query_t *q = ecs_query_init(world, &private_desc); + | ^ +../src/flecs/distr/flecs.c:20349:22: note: crosses initialization of ‘ecs_query_desc_t private_desc’ +20349 | ecs_query_desc_t private_desc = desc->query; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:20344:18: note: crosses initialization of ‘ecs_entity_t result’ +20344 | ecs_entity_t result = desc->entity; + | ^~~~~~ +../src/flecs/distr/flecs.c:20492:1: error: jump to label ‘error’ +20492 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:20338:5: note: in expansion of macro ‘ecs_check’ +20338 | ecs_check(desc != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:20466:18: note: crosses initialization of ‘ecs_entity_t severity’ +20466 | ecs_entity_t severity = desc->severity; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:20365:15: note: crosses initialization of ‘EcsAlert* alert’ +20365 | EcsAlert *alert = ecs_ensure(world, result, EcsAlert); + | ^~~~~ +../src/flecs/distr/flecs.c:20352:18: note: crosses initialization of ‘ecs_query_t* q’ +20352 | ecs_query_t *q = ecs_query_init(world, &private_desc); + | ^ +../src/flecs/distr/flecs.c:20349:22: note: crosses initialization of ‘ecs_query_desc_t private_desc’ +20349 | ecs_query_desc_t private_desc = desc->query; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:20344:18: note: crosses initialization of ‘ecs_entity_t result’ +20344 | ecs_entity_t result = desc->entity; + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘int32_t ecs_get_alert_count(const ecs_world_t*, ecs_entity_t, ecs_entity_t)’: +../src/flecs/distr/flecs.c:20519:1: error: jump to label ‘error’ +20519 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:20506:5: note: in expansion of macro ‘ecs_check’ +20506 | ecs_check(!alert || ecs_has(world, alert, EcsAlert), + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:20509:28: note: crosses initialization of ‘const EcsAlertsActive* active’ +20509 | const EcsAlertsActive *active = ecs_get(world, entity, EcsAlertsActive); + | ^~~~~~ +../src/flecs/distr/flecs.c:20519:1: error: jump to label ‘error’ +20519 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:20505:5: note: in expansion of macro ‘ecs_check’ +20505 | ecs_check(entity != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:20509:28: note: crosses initialization of ‘const EcsAlertsActive* active’ +20509 | const EcsAlertsActive *active = ecs_get(world, entity, EcsAlertsActive); + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_get_alert(const ecs_world_t*, ecs_entity_t, ecs_entity_t)’: +../src/flecs/distr/flecs.c:20542:1: error: jump to label ‘error’ +20542 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:20530:5: note: in expansion of macro ‘ecs_check’ +20530 | ecs_check(alert != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:20537:19: note: crosses initialization of ‘ecs_entity_t* ptr’ +20537 | ecs_entity_t *ptr = ecs_map_get(&active->alerts, alert); + | ^~~ +../src/flecs/distr/flecs.c:20532:28: note: crosses initialization of ‘const EcsAlertsActive* active’ +20532 | const EcsAlertsActive *active = ecs_get(world, entity, EcsAlertsActive); + | ^~~~~~ +../src/flecs/distr/flecs.c:20542:1: error: jump to label ‘error’ +20542 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:20529:5: note: in expansion of macro ‘ecs_check’ +20529 | ecs_check(entity != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:20537:19: note: crosses initialization of ‘ecs_entity_t* ptr’ +20537 | ecs_entity_t *ptr = ecs_map_get(&active->alerts, alert); + | ^~~ +../src/flecs/distr/flecs.c:20532:28: note: crosses initialization of ‘const EcsAlertsActive* active’ +20532 | const EcsAlertsActive *active = ecs_get(world, entity, EcsAlertsActive); + | ^~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void FlecsAlertsImport(ecs_world_t*)’: +../src/flecs/distr/flecs.c:20574:23: error: taking address of rvalue [-fpermissive] +20574 | ecs_struct(world, { + | ^ +20575 | .entity = ecs_id(EcsAlertInstance), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20576 | .members = { + | ~~~~~~~~~~~~ +20577 | { .name = "message", .type = ecs_id(ecs_string_t) } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20578 | } + | ~ +20579 | }); + | ~ +../src/flecs/distr/flecs.h:16131:49: note: in definition of macro ‘ecs_struct’ +16131 | ecs_struct_init(world, &(ecs_struct_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:20581:36: error: taking address of rvalue [-fpermissive] +20581 | ecs_set_hooks(world, EcsAlert, { + | ^ +20582 | .ctor = ecs_ctor(EcsAlert), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20583 | .dtor = ecs_dtor(EcsAlert), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20584 | .move = ecs_move(EcsAlert) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +20585 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:20587:43: error: taking address of rvalue [-fpermissive] +20587 | ecs_set_hooks(world, EcsAlertsActive, { + | ^ +20588 | .ctor = ecs_ctor(EcsAlertsActive), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20589 | .dtor = ecs_dtor(EcsAlertsActive), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20590 | .move = ecs_move(EcsAlertsActive) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20591 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:20598:5: error: designator order for field ‘ecs_type_hooks_t::copy’ does not match declaration order in ‘ecs_type_hooks_t’ +20598 | }); + | ^ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:20593:44: error: taking address of rvalue [-fpermissive] +20593 | ecs_set_hooks(world, EcsAlertInstance, { + | ^ +20594 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20595 | .dtor = ecs_dtor(EcsAlertInstance), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20596 | .move = ecs_move(EcsAlertInstance), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20597 | .copy = ecs_copy(EcsAlertInstance) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20598 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:20600:23: error: taking address of rvalue [-fpermissive] +20600 | ecs_struct(world, { + | ^ +20601 | .entity = ecs_id(EcsAlertsActive), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20602 | .members = { + | ~~~~~~~~~~~~ +20603 | { .name = "info_count", .type = ecs_id(ecs_i32_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20604 | { .name = "warning_count", .type = ecs_id(ecs_i32_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20605 | { .name = "error_count", .type = ecs_id(ecs_i32_t) } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20606 | } + | ~ +20607 | }); + | ~ +../src/flecs/distr/flecs.h:16131:49: note: in definition of macro ‘ecs_struct’ +16131 | ecs_struct_init(world, &(ecs_struct_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:20623:5: error: designator order for field ‘ecs_system_desc_t::interval’ does not match declaration order in ‘ecs_system_desc_t’ +20623 | }); + | ^ +../src/flecs/distr/flecs.h:12349:49: note: in definition of macro ‘ecs_system’ +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:20619:23: error: taking address of rvalue [-fpermissive] +20619 | ecs_system(world, { + | ^ +20620 | .entity = ecs_id(MonitorAlerts), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20621 | .immediate = true, + | ~~~~~~~~~~~~~~~~~~ +20622 | .interval = (ecs_ftime_t)0.5 + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20623 | }); + | ~ +../src/flecs/distr/flecs.h:12349:49: note: in definition of macro ‘ecs_system’ +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:20625:23: error: taking address of rvalue [-fpermissive] +20625 | ecs_system(world, { + | ^ +20626 | .entity = ecs_id(MonitorAlertInstances), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20627 | .interval = (ecs_ftime_t)0.5 + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20628 | }); + | ~ +../src/flecs/distr/flecs.h:12349:49: note: in definition of macro ‘ecs_system’ +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int ecs_app_run(ecs_world_t*, ecs_app_desc_t*)’: +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:20719:9: note: in expansion of macro ‘ECS_NEQZERO’ +20719 | if (ECS_NEQZERO(ecs_app_desc.target_fps)) { + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:20734:43: error: taking address of rvalue [-fpermissive] +20734 | ecs_set(world, EcsWorld, EcsRest, {.port = desc->port }); + | ^~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_doc_set(ecs_world_t*, ecs_entity_t, ecs_entity_t, const char*)’: +../src/flecs/distr/flecs.c:20819:62: error: taking address of rvalue [-fpermissive] +20819 | ecs_set_pair(world, entity, EcsDocDescription, kind, { + | ^ +20820 | /* Safe, value gets copied by copy hook */ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20821 | .value = ECS_CONST_CAST(char*, value) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +20822 | }); + | ~ +../src/flecs/distr/flecs.h:9793:32: note: in definition of macro ‘ecs_set_pair’ + 9793 | sizeof(First), &(First)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void FlecsDocImport(ecs_world_t*)’: +../src/flecs/distr/flecs.c:3008:37: error: taking address of rvalue [-fpermissive] + 3008 | .entity = ecs_entity(world, { .id = ecs_id(id_), .name = #id_, .symbol = #id_ }),\ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:21050:5: note: in expansion of macro ‘flecs_bootstrap_component’ +21050 | flecs_bootstrap_component(world, EcsDocDescription); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:3007:53: error: expected primary-expression before ‘)’ token + 3007 | ecs_component_init(world, &(ecs_component_desc_t){\ + | ^ +../src/flecs/distr/flecs.c:21050:5: note: in expansion of macro ‘flecs_bootstrap_component’ +21050 | flecs_bootstrap_component(world, EcsDocDescription); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:21062:5: error: designator order for field ‘ecs_type_hooks_t::copy’ does not match declaration order in ‘ecs_type_hooks_t’ +21062 | }); + | ^ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:21057:45: error: taking address of rvalue [-fpermissive] +21057 | ecs_set_hooks(world, EcsDocDescription, { + | ^ +21058 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +21059 | .move = ecs_move(EcsDocDescription), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +21060 | .copy = ecs_copy(EcsDocDescription), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +21061 | .dtor = ecs_dtor(EcsDocDescription) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +21062 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘const char* ecs_cpp_trim_module(ecs_world_t*, const char*)’: +../src/flecs/distr/flecs.c:21266:32: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive] +21266 | char *ptr = strrchr(type_name, ':'); + | ~~~~~~~^~~~~~~~~~~~~~~~ + | | + | const char* +../src/flecs/distr/flecs.c: In function ‘void ecs_cpp_component_validate(ecs_world_t*, ecs_entity_t, const char*, const char*, size_t, size_t, bool)’: +../src/flecs/distr/flecs.c:21333:72: error: expected primary-expression before ‘)’ token +21333 | ecs_entity_t ent = ecs_component_init(world, &(ecs_component_desc_t){ + | ^ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_cpp_component_register_explicit(ecs_world_t*, ecs_entity_t, ecs_entity_t, const char*, const char*, const char*, size_t, size_t, bool, bool*)’: +../src/flecs/distr/flecs.c:21465:36: error: taking address of rvalue [-fpermissive] +21465 | entity = ecs_entity(world, { + | ^ +21466 | .id = s_id, + | ~~~~~~~~~~~ +21467 | .name = name, + | ~~~~~~~~~~~~~ +21468 | .sep = "::", + | ~~~~~~~~~~~~ +21469 | .root_sep = "::", + | ~~~~~~~~~~~~~~~~~ +21470 | .symbol = symbol, + | ~~~~~~~~~~~~~~~~~ +21471 | .use_low_id = true + | ~~~~~~~~~~~~~~~~~~ +21472 | }); + | ~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:21476:66: error: expected primary-expression before ‘)’ token +21476 | entity = ecs_component_init(world, &(ecs_component_desc_t){ + | ^ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:21484:36: error: taking address of rvalue [-fpermissive] +21484 | entity = ecs_entity(world, { + | ^ +21485 | .id = s_id, + | ~~~~~~~~~~~ +21486 | .name = name, + | ~~~~~~~~~~~~~ +21487 | .sep = "::", + | ~~~~~~~~~~~~ +21488 | .root_sep = "::", + | ~~~~~~~~~~~~~~~~~ +21489 | .symbol = symbol, + | ~~~~~~~~~~~~~~~~~ +21490 | .use_low_id = true + | ~~~~~~~~~~~~~~~~~~ +21491 | }); + | ~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_cpp_enum_init(ecs_world_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:21510:33: error: taking address of rvalue [-fpermissive] +21510 | ecs_set(world, id, EcsEnum, {0}); + | ^~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_cpp_enum_constant_register(ecs_world_t*, ecs_entity_t, ecs_entity_t, const char*, int)’: +../src/flecs/distr/flecs.c:21535:28: error: taking address of rvalue [-fpermissive] +21535 | id = ecs_entity(world, { + | ^ +21536 | .id = id, + | ~~~~~~~~~ +21537 | .name = name + | ~~~~~~~~~~~~ +21538 | }); + | ~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘uint64_t http_request_key_hash(const void*)’: +../src/flecs/distr/flecs.c:22116:41: error: invalid conversion from ‘const void*’ to ‘const ecs_http_request_key_t*’ [-fpermissive] +22116 | const ecs_http_request_key_t *key = ptr; + | ^~~ + | | + | const void* +../src/flecs/distr/flecs.c: In function ‘int http_request_key_compare(const void*, const void*)’: +../src/flecs/distr/flecs.c:22124:44: error: invalid conversion from ‘const void*’ to ‘const ecs_http_request_key_t*’ [-fpermissive] +22124 | const ecs_http_request_key_t *type_1 = ptr_1; + | ^~~~~ + | | + | const void* +../src/flecs/distr/flecs.c:22125:44: error: invalid conversion from ‘const void*’ to ‘const ecs_http_request_key_t*’ [-fpermissive] +22125 | const ecs_http_request_key_t *type_2 = ptr_2; + | ^~~~~ + | | + | const void* +../src/flecs/distr/flecs.c: In function ‘void http_insert_request_entry(ecs_http_server_t*, ecs_http_request_impl_t*, ecs_http_reply_t*)’: +../src/flecs/distr/flecs.c:22179:49: error: invalid conversion from ‘void*’ to ‘ecs_http_request_key_t*’ [-fpermissive] +22179 | ecs_http_request_key_t *elem_key = elem.key; + | ~~~~~^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:2669:53: error: invalid conversion from ‘void*’ to ‘const char*’ [-fpermissive] + 2669 | #define ecs_os_memdup_n(ptr, T, count) ecs_os_memdup(ptr, ECS_SIZEOF(T) * count) + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:22180:27: note: in expansion of macro ‘ecs_os_memdup_n’ +22180 | elem_key->array = ecs_os_memdup_n(key.array, char, key.count); + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:22181:22: error: invalid conversion from ‘void*’ to ‘ecs_http_request_entry_t*’ [-fpermissive] +22181 | entry = elem.value; + | ~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void* http_server_send_queue(void*)’: +../src/flecs/distr/flecs.c:22492:30: error: invalid conversion from ‘void*’ to ‘ecs_http_server_t*’ [-fpermissive] +22492 | ecs_http_server_t *srv = arg; + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void http_recv_connection(ecs_http_server_t*, ecs_http_connection_impl_t*, uint64_t, ecs_http_socket_t)’: +../src/flecs/distr/flecs.c:22652:33: error: invalid conversion from ‘int’ to ‘HttpFragState’ [-fpermissive] +22652 | ecs_http_fragment_t frag = {0}; + | ^ + | | + | int +../src/flecs/distr/flecs.c: In function ‘int http_accept_connections(ecs_http_server_t*, const sockaddr*, ecs_size_t)’: +../src/flecs/distr/flecs.c:22874:1: error: jump to label ‘done’ +22874 | done: + | ^~~~ +../src/flecs/distr/flecs.c:22802:18: note: from here +22802 | goto done; + | ^~~~ +../src/flecs/distr/flecs.c:22855:16: note: crosses initialization of ‘ecs_size_t remote_addr_len’ +22855 | ecs_size_t remote_addr_len = 0; + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void* http_server_thread(void*)’: +../src/flecs/distr/flecs.c:22890:30: error: invalid conversion from ‘void*’ to ‘ecs_http_server_t*’ [-fpermissive] +22890 | ecs_http_server_t *srv = arg; + | ^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void http_do_request(ecs_http_server_t*, ecs_http_reply_t*, const ecs_http_request_impl_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_http_request_impl_t*’ to type ‘ecs_http_request_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:22930:23: note: in expansion of macro ‘ECS_CONST_CAST’ +22930 | if (srv->callback(ECS_CONST_CAST(ecs_http_request_t*, req), reply, + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void http_purge_request_cache(ecs_http_server_t*, bool)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_hm_bucket_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:22993:35: note: in expansion of macro ‘ecs_map_ptr’ +22993 | ecs_hm_bucket_t *bucket = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:22995:53: error: invalid conversion from ‘void*’ to ‘ecs_http_request_key_t*’ [-fpermissive] +22995 | ecs_http_request_key_t *keys = ecs_vec_first(&bucket->keys); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:22996:58: error: invalid conversion from ‘void*’ to ‘ecs_http_request_entry_t*’ [-fpermissive] +22996 | ecs_http_request_entry_t *entries = ecs_vec_first(&bucket->values); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_http_server_t* ecs_http_server_init(const ecs_http_server_desc_t*)’: +../src/flecs/distr/flecs.h:885:43: error: taking address of rvalue [-fpermissive] + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:885:23: note: in expansion of macro ‘ECS_EQ’ + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^~~~~~ +../src/flecs/distr/flecs.c:23093:10: note: in expansion of macro ‘ECS_EQZERO’ +23093 | if (!ECS_EQZERO(srv->cache_timeout) && + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:885:43: error: taking address of rvalue [-fpermissive] + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:885:23: note: in expansion of macro ‘ECS_EQ’ + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^~~~~~ +../src/flecs/distr/flecs.c:23094:10: note: in expansion of macro ‘ECS_EQZERO’ +23094 | ECS_EQZERO(srv->cache_purge_timeout)) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:23127:1: error: jump to label ‘error’ +23127 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:23080:5: note: in expansion of macro ‘ecs_check’ +23080 | ecs_check(ecs_os_has_threading(), ECS_UNSUPPORTED, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:23083:24: note: crosses initialization of ‘ecs_http_server_t* srv’ +23083 | ecs_http_server_t* srv = ecs_os_calloc_t(ecs_http_server_t); + | ^~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_http_server_stop(ecs_http_server_t*)’: +../src/flecs/distr/flecs.c:23214:1: error: jump to label ‘error’ +23214 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:23177:5: note: in expansion of macro ‘ecs_check’ +23177 | ecs_check(srv->should_run, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:23195:12: note: crosses initialization of ‘int count’ +23195 | int i, count = flecs_sparse_count(&srv->requests); + | ^~~~~ +../src/flecs/distr/flecs.c:23214:1: error: jump to label ‘error’ +23214 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:23175:5: note: in expansion of macro ‘ecs_check’ +23175 | ecs_check(srv->initialized, ECS_INVALID_OPERATION, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:23195:12: note: crosses initialization of ‘int count’ +23195 | int i, count = flecs_sparse_count(&srv->requests); + | ^~~~~ +../src/flecs/distr/flecs.c:23214:1: error: jump to label ‘error’ +23214 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:23174:5: note: in expansion of macro ‘ecs_check’ +23174 | ecs_check(srv != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:23195:12: note: crosses initialization of ‘int count’ +23195 | int i, count = flecs_sparse_count(&srv->requests); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘int ecs_http_server_http_request(ecs_http_server_t*, const char*, ecs_size_t, ecs_http_reply_t*)’: +../src/flecs/distr/flecs.c:23267:33: error: invalid conversion from ‘int’ to ‘HttpFragState’ [-fpermissive] +23267 | ecs_http_fragment_t frag = {0}; + | ^ + | | + | int +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int ecs_http_server_request(ecs_http_server_t*, const char*, const char*, ecs_http_reply_t*)’: +../src/flecs/distr/flecs.h:2607:47: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive] + 2607 | #define ecs_os_malloc(size) ecs_os_api.malloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:23320:18: note: in expansion of macro ‘ecs_os_malloc’ +23320 | reqstr = ecs_os_malloc(len + 1); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_parser_errorv_(const char*, const char*, int64_t, const char*, __va_list_tag*)’: +../src/flecs/distr/flecs.c:23769:39: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive] +23769 | char *newline_ptr = strchr(expr, '\n'); + | ~~~~~~^~~~~~~~~~~~ + | | + | const char* +../src/flecs/distr/flecs.c: In function ‘void flecs_metrics_on_member_metric(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:24196:40: error: invalid conversion from ‘void*’ to ‘ecs_member_metric_ctx_t*’ [-fpermissive] +24196 | ecs_member_metric_ctx_t *ctx = it->ctx; + | ~~~~^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:24209:43: error: taking address of rvalue [-fpermissive] +24209 | ecs_set(world, m, EcsMetricValue, { 0 }); + | ^~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:24210:44: error: taking address of rvalue [-fpermissive] +24210 | ecs_set(world, m, EcsMetricSource, { e }); + | ^~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_metrics_on_id_metric(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:24219:36: error: invalid conversion from ‘void*’ to ‘ecs_id_metric_ctx_t*’ [-fpermissive] +24219 | ecs_id_metric_ctx_t *ctx = it->ctx; + | ~~~~^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:24231:43: error: taking address of rvalue [-fpermissive] +24231 | ecs_set(world, m, EcsMetricValue, { 0 }); + | ^~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:24232:44: error: taking address of rvalue [-fpermissive] +24232 | ecs_set(world, m, EcsMetricSource, { e }); + | ^~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_metrics_on_oneof_metric(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:24245:39: error: invalid conversion from ‘void*’ to ‘ecs_oneof_metric_ctx_t*’ [-fpermissive] +24245 | ecs_oneof_metric_ctx_t *ctx = it->ctx; + | ~~~~^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:24258:44: error: taking address of rvalue [-fpermissive] +24258 | ecs_set(world, m, EcsMetricSource, { e }); + | ^~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void UpdateOneOfInstance(ecs_iter_t*, bool)’: +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘double*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:3948:36: note: in expansion of macro ‘ECS_OFFSET’ + 3948 | #define ECS_ELEM(ptr, size, index) ECS_OFFSET(ptr, (size) * (index)) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:24397:25: note: in expansion of macro ‘ECS_ELEM’ +24397 | double *value = ECS_ELEM(m, ctx->size, i); + | ^~~~~~~~ +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘double*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:24421:17: note: in expansion of macro ‘ECS_OFFSET’ +24421 | value = ECS_OFFSET(value, *offset); + | ^~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_member_metric_init(ecs_world_t*, ecs_entity_t, const ecs_metric_desc_t*)’: +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:24612:5: note: in expansion of macro ‘ecs_observer’ +24612 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:24621:58: error: taking address of rvalue [-fpermissive] +24621 | ecs_set_pair(world, metric, EcsMetricMember, member, { .ctx = ctx }); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9793:32: note: in definition of macro ‘ecs_set_pair’ + 9793 | sizeof(First), &(First)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:24626:1: error: jump to label ‘error’ +24626 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:24603:14: note: from here +24603 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:24606:30: note: crosses initialization of ‘ecs_member_metric_ctx_t* ctx’ +24606 | ecs_member_metric_ctx_t *ctx = ecs_os_calloc_t(ecs_member_metric_ctx_t); + | ^~~ +../src/flecs/distr/flecs.c:24626:1: error: jump to label ‘error’ +24626 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:24593:14: note: from here +24593 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:24606:30: note: crosses initialization of ‘ecs_member_metric_ctx_t* ctx’ +24606 | ecs_member_metric_ctx_t *ctx = ecs_os_calloc_t(ecs_member_metric_ctx_t); + | ^~~ +../src/flecs/distr/flecs.c:24626:1: error: jump to label ‘error’ +24626 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:24582:14: note: from here +24582 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:24606:30: note: crosses initialization of ‘ecs_member_metric_ctx_t* ctx’ +24606 | ecs_member_metric_ctx_t *ctx = ecs_os_calloc_t(ecs_member_metric_ctx_t); + | ^~~ +../src/flecs/distr/flecs.c:24585:20: note: crosses initialization of ‘const EcsType* mt’ +24585 | const EcsType *mt = ecs_get(world, type, EcsType); + | ^~ +../src/flecs/distr/flecs.c:24626:1: error: jump to label ‘error’ +24626 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:24564:22: note: from here +24564 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:24606:30: note: crosses initialization of ‘ecs_member_metric_ctx_t* ctx’ +24606 | ecs_member_metric_ctx_t *ctx = ecs_os_calloc_t(ecs_member_metric_ctx_t); + | ^~~ +../src/flecs/distr/flecs.c:24585:20: note: crosses initialization of ‘const EcsType* mt’ +24585 | const EcsType *mt = ecs_get(world, type, EcsType); + | ^~ +../src/flecs/distr/flecs.c:24574:25: note: crosses initialization of ‘const EcsPrimitive* p’ +24574 | const EcsPrimitive *p = ecs_get(world, member_type, EcsPrimitive); + | ^ +../src/flecs/distr/flecs.c:24626:1: error: jump to label ‘error’ +24626 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:24550:18: note: from here +24550 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:24606:30: note: crosses initialization of ‘ecs_member_metric_ctx_t* ctx’ +24606 | ecs_member_metric_ctx_t *ctx = ecs_os_calloc_t(ecs_member_metric_ctx_t); + | ^~~ +../src/flecs/distr/flecs.c:24585:20: note: crosses initialization of ‘const EcsType* mt’ +24585 | const EcsType *mt = ecs_get(world, type, EcsType); + | ^~ +../src/flecs/distr/flecs.c:24574:25: note: crosses initialization of ‘const EcsPrimitive* p’ +24574 | const EcsPrimitive *p = ecs_get(world, member_type, EcsPrimitive); + | ^ +../src/flecs/distr/flecs.c:24626:1: error: jump to label ‘error’ +24626 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:24539:18: note: from here +24539 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:24606:30: note: crosses initialization of ‘ecs_member_metric_ctx_t* ctx’ +24606 | ecs_member_metric_ctx_t *ctx = ecs_os_calloc_t(ecs_member_metric_ctx_t); + | ^~~ +../src/flecs/distr/flecs.c:24585:20: note: crosses initialization of ‘const EcsType* mt’ +24585 | const EcsType *mt = ecs_get(world, type, EcsType); + | ^~ +../src/flecs/distr/flecs.c:24574:25: note: crosses initialization of ‘const EcsPrimitive* p’ +24574 | const EcsPrimitive *p = ecs_get(world, member_type, EcsPrimitive); + | ^ +../src/flecs/distr/flecs.c:24626:1: error: jump to label ‘error’ +24626 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:24523:18: note: from here +24523 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:24606:30: note: crosses initialization of ‘ecs_member_metric_ctx_t* ctx’ +24606 | ecs_member_metric_ctx_t *ctx = ecs_os_calloc_t(ecs_member_metric_ctx_t); + | ^~~ +../src/flecs/distr/flecs.c:24585:20: note: crosses initialization of ‘const EcsType* mt’ +24585 | const EcsType *mt = ecs_get(world, type, EcsType); + | ^~ +../src/flecs/distr/flecs.c:24574:25: note: crosses initialization of ‘const EcsPrimitive* p’ +24574 | const EcsPrimitive *p = ecs_get(world, member_type, EcsPrimitive); + | ^ +../src/flecs/distr/flecs.c:24626:1: error: jump to label ‘error’ +24626 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:24516:18: note: from here +24516 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:24606:30: note: crosses initialization of ‘ecs_member_metric_ctx_t* ctx’ +24606 | ecs_member_metric_ctx_t *ctx = ecs_os_calloc_t(ecs_member_metric_ctx_t); + | ^~~ +../src/flecs/distr/flecs.c:24585:20: note: crosses initialization of ‘const EcsType* mt’ +24585 | const EcsType *mt = ecs_get(world, type, EcsType); + | ^~ +../src/flecs/distr/flecs.c:24574:25: note: crosses initialization of ‘const EcsPrimitive* p’ +24574 | const EcsPrimitive *p = ecs_get(world, member_type, EcsPrimitive); + | ^ +../src/flecs/distr/flecs.c:24626:1: error: jump to label ‘error’ +24626 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:24506:18: note: from here +24506 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:24606:30: note: crosses initialization of ‘ecs_member_metric_ctx_t* ctx’ +24606 | ecs_member_metric_ctx_t *ctx = ecs_os_calloc_t(ecs_member_metric_ctx_t); + | ^~~ +../src/flecs/distr/flecs.c:24585:20: note: crosses initialization of ‘const EcsType* mt’ +24585 | const EcsType *mt = ecs_get(world, type, EcsType); + | ^~ +../src/flecs/distr/flecs.c:24574:25: note: crosses initialization of ‘const EcsPrimitive* p’ +24574 | const EcsPrimitive *p = ecs_get(world, member_type, EcsPrimitive); + | ^ +../src/flecs/distr/flecs.c:24626:1: error: jump to label ‘error’ +24626 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:24498:18: note: from here +24498 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:24606:30: note: crosses initialization of ‘ecs_member_metric_ctx_t* ctx’ +24606 | ecs_member_metric_ctx_t *ctx = ecs_os_calloc_t(ecs_member_metric_ctx_t); + | ^~~ +../src/flecs/distr/flecs.c:24585:20: note: crosses initialization of ‘const EcsType* mt’ +24585 | const EcsType *mt = ecs_get(world, type, EcsType); + | ^~ +../src/flecs/distr/flecs.c:24574:25: note: crosses initialization of ‘const EcsPrimitive* p’ +24574 | const EcsPrimitive *p = ecs_get(world, member_type, EcsPrimitive); + | ^ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_id_metric_init(ecs_world_t*, ecs_entity_t, const ecs_metric_desc_t*)’: +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:24643:5: note: in expansion of macro ‘ecs_observer’ +24643 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:24652:41: error: taking address of rvalue [-fpermissive] +24652 | ecs_set(world, metric, EcsMetricId, { .ctx = ctx }); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_oneof_metric_init(ecs_world_t*, ecs_entity_t, ecs_entity_t, const ecs_metric_desc_t*)’: +../src/flecs/distr/flecs.c:24695:13: error: designator order for field ‘ecs_entity_desc_t::parent’ does not match declaration order in ‘ecs_entity_desc_t’ +24695 | }); + | ^ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:24692:50: error: taking address of rvalue [-fpermissive] +24692 | ecs_entity_t mbr = ecs_entity(world, { + | ^ +24693 | .name = to_snake_case, + | ~~~~~~~~~~~~~~~~~~~~~~ +24694 | .parent = ecs_childof(metric) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24695 | }); + | ~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:24699:44: error: taking address of rvalue [-fpermissive] +24699 | ecs_set(world, mbr, EcsMember, { + | ^ +24700 | .type = ecs_id(ecs_f64_t), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +24701 | .unit = EcsSeconds + | ~~~~~~~~~~~~~~~~~~ +24702 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:24714:5: note: in expansion of macro ‘ecs_observer’ +24714 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:24723:44: error: taking address of rvalue [-fpermissive] +24723 | ecs_set(world, metric, EcsMetricOneOf, { .ctx = ctx }); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:24728:1: error: jump to label ‘error’ +24728 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:24673:5: note: in expansion of macro ‘ecs_check’ +24673 | ecs_check(ctx->idr != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:24679:14: note: crosses initialization of ‘uint64_t offset’ +24679 | uint64_t offset = 0; + | ^~~~~~ +../src/flecs/distr/flecs.c:24678:16: note: crosses initialization of ‘ecs_iter_t it’ +24678 | ecs_iter_t it = ecs_children(world, scope); + | ^~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_count_id_targets_metric_init(ecs_world_t*, ecs_entity_t, const ecs_metric_desc_t*)’: +../src/flecs/distr/flecs.c:24745:51: error: taking address of rvalue [-fpermissive] +24745 | ecs_set(world, metric, EcsMetricCountTargets, { .ctx = ctx }); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_count_ids_metric_init(ecs_world_t*, ecs_entity_t, const ecs_metric_desc_t*)’: +../src/flecs/distr/flecs.c:24760:47: error: taking address of rvalue [-fpermissive] +24760 | ecs_set(world, metric, EcsMetricCountIds, { .id = desc->id }); + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:24761:44: error: taking address of rvalue [-fpermissive] +24761 | ecs_set(world, metric, EcsMetricValue, { .value = 0 }); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_metric_init(ecs_world_t*, const ecs_metric_desc_t*)’: +../src/flecs/distr/flecs.c:24867:1: error: jump to label ‘error’ +24867 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:24770:5: note: in expansion of macro ‘ecs_check’ +24770 | ecs_check(desc->_canary == 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:24779:18: note: crosses initialization of ‘ecs_entity_t kind’ +24779 | ecs_entity_t kind = desc->kind; + | ^~~~ +../src/flecs/distr/flecs.c:24774:18: note: crosses initialization of ‘ecs_entity_t result’ +24774 | ecs_entity_t result = desc->entity; + | ^~~~~~ +../src/flecs/distr/flecs.c:24867:1: error: jump to label ‘error’ +24867 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:24769:5: note: in expansion of macro ‘ecs_check’ +24769 | ecs_check(desc != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:24779:18: note: crosses initialization of ‘ecs_entity_t kind’ +24779 | ecs_entity_t kind = desc->kind; + | ^~~~ +../src/flecs/distr/flecs.c:24774:18: note: crosses initialization of ‘ecs_entity_t result’ +24774 | ecs_entity_t result = desc->entity; + | ^~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void FlecsMetricsImport(ecs_world_t*)’: +../src/flecs/distr/flecs.c:24907:23: error: taking address of rvalue [-fpermissive] +24907 | ecs_struct(world, { + | ^ +24908 | .entity = ecs_id(EcsMetricValue), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24909 | .members = { + | ~~~~~~~~~~~~ +24910 | { .name = "value", .type = ecs_id(ecs_f64_t) } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24911 | } + | ~ +24912 | }); + | ~ +../src/flecs/distr/flecs.h:16131:49: note: in definition of macro ‘ecs_struct’ +16131 | ecs_struct_init(world, &(ecs_struct_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:24914:23: error: taking address of rvalue [-fpermissive] +24914 | ecs_struct(world, { + | ^ +24915 | .entity = ecs_id(EcsMetricSource), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24916 | .members = { + | ~~~~~~~~~~~~ +24917 | { .name = "entity", .type = ecs_id(ecs_entity_t) } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24918 | } + | ~ +24919 | }); + | ~ +../src/flecs/distr/flecs.h:16131:49: note: in definition of macro ‘ecs_struct’ +16131 | ecs_struct_init(world, &(ecs_struct_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:24921:43: error: taking address of rvalue [-fpermissive] +24921 | ecs_set_hooks(world, EcsMetricMember, { + | ^ +24922 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24923 | .dtor = ecs_dtor(EcsMetricMember), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24924 | .move = ecs_move(EcsMetricMember) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24925 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:24927:39: error: taking address of rvalue [-fpermissive] +24927 | ecs_set_hooks(world, EcsMetricId, { + | ^ +24928 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24929 | .dtor = ecs_dtor(EcsMetricId), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24930 | .move = ecs_move(EcsMetricId) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24931 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:24933:42: error: taking address of rvalue [-fpermissive] +24933 | ecs_set_hooks(world, EcsMetricOneOf, { + | ^ +24934 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24935 | .dtor = ecs_dtor(EcsMetricOneOf), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24936 | .move = ecs_move(EcsMetricOneOf) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24937 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:24939:49: error: taking address of rvalue [-fpermissive] +24939 | ecs_set_hooks(world, EcsMetricCountTargets, { + | ^ +24940 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24941 | .dtor = ecs_dtor(EcsMetricCountTargets), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24942 | .move = ecs_move(EcsMetricCountTargets) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +24943 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_import(ecs_world_t*, ecs_module_action_t, const char*)’: +../src/flecs/distr/flecs.c:25064:1: error: jump to label ‘error’ +25064 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:25035:5: note: in expansion of macro ‘ecs_check’ +25035 | ecs_check(!(world->flags & EcsWorldReadonly), + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:25042:18: note: crosses initialization of ‘ecs_entity_t e’ +25042 | ecs_entity_t e = ecs_lookup(world, path); + | ^ +../src/flecs/distr/flecs.c:25041:11: note: crosses initialization of ‘char* path’ +25041 | char *path = flecs_module_path_from_c(module_name); + | ^~~~ +../src/flecs/distr/flecs.c:25039:17: note: crosses initialization of ‘const char* old_name_prefix’ +25039 | const char *old_name_prefix = world->info.name_prefix; + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:25038:18: note: crosses initialization of ‘ecs_entity_t old_scope’ +25038 | ecs_entity_t old_scope = ecs_set_scope(world, 0); + | ^~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_import_from_library(ecs_world_t*, const char*, const char*)’: +../src/flecs/distr/flecs.h:2607:47: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive] + 2607 | #define ecs_os_malloc(size) ecs_os_api.malloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:25099:23: note: in expansion of macro ‘ecs_os_malloc’ +25099 | import_func = ecs_os_malloc(ecs_os_strlen(library_name) + ECS_SIZEOF("Import")); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:25184:1: error: jump to label ‘error’ +25184 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:25084:5: note: in expansion of macro ‘ecs_check’ +25084 | ecs_check(library_name != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:25171:18: note: crosses initialization of ‘ecs_entity_t result’ +25171 | ecs_entity_t result = ecs_import(world, action, module); + | ^~~~~~ +../src/flecs/distr/flecs.c:25157:25: note: crosses initialization of ‘void (* action)(ecs_world_t*)’ +25157 | ecs_module_action_t action = (ecs_module_action_t) + | ^~~~~~ +../src/flecs/distr/flecs.c:25140:17: note: crosses initialization of ‘ecs_os_dl_t dl’ +25140 | ecs_os_dl_t dl = ecs_os_dlopen(library_filename); + | ^~ +../src/flecs/distr/flecs.c:25128:11: note: crosses initialization of ‘char* library_filename’ +25128 | char *library_filename = ecs_os_module_to_dl(library_name); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:25087:11: note: crosses initialization of ‘char* module’ +25087 | char *module = ECS_CONST_CAST(char*, module_name); + | ^~~~~~ +../src/flecs/distr/flecs.c:25086:11: note: crosses initialization of ‘char* import_func’ +25086 | char *import_func = ECS_CONST_CAST(char*, module_name); + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_module_init(ecs_world_t*, const char*, const ecs_component_desc_t*)’: +../src/flecs/distr/flecs.c:25201:31: error: taking address of rvalue [-fpermissive] +25201 | e = ecs_entity(world, { .name = module_path }); + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:25227:1: error: jump to label ‘error’ +25227 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:25193:5: note: in expansion of macro ‘ecs_check’ +25193 | ecs_check(desc != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:25214:26: note: crosses initialization of ‘ecs_component_desc_t private_desc’ +25214 | ecs_component_desc_t private_desc = *desc; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:25198:18: note: crosses initialization of ‘ecs_entity_t e’ +25198 | ecs_entity_t e = desc->entity; + | ^ +../src/flecs/distr/flecs.c:25196:18: note: crosses initialization of ‘ecs_entity_t old_scope’ +25196 | ecs_entity_t old_scope = ecs_set_scope(world, 0); + | ^~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void EcsRest_copy(void*, const void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:25354:33: error: invalid conversion from ‘void*’ to ‘ecs_rest_ctx_t*’ [-fpermissive] +25354 | ecs_rest_ctx_t *impl = src->impl; + | ~~~~~^~~~ + | | + | void* +../src/flecs/distr/flecs.h:1018:13: note: in definition of macro ‘ECS_COPY_IMPL’ + 1018 | __VA_ARGS__\ + | ^~~~~~~~~~~~ + 1019 | }\ + | +../src/flecs/distr/flecs.c:25353:8: note: in expansion of macro ‘ECS_COPY’ +25353 | static ECS_COPY(EcsRest, dst, src, { + | ^~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void EcsRest_dtor(void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:25371:33: error: invalid conversion from ‘void*’ to ‘ecs_rest_ctx_t*’ [-fpermissive] +25371 | ecs_rest_ctx_t *impl = ptr->impl; + | ~~~~~^~~~ + | | + | void* +../src/flecs/distr/flecs.h:997:13: note: in definition of macro ‘ECS_XTOR_IMPL’ + 997 | __VA_ARGS__\ + | ^~~~~~~~~~~~ + 998 | }\ + | +../src/flecs/distr/flecs.c:25370:8: note: in expansion of macro ‘ECS_DTOR’ +25370 | static ECS_DTOR(EcsRest, ptr, { + | ^~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘bool flecs_rest_put_entity(ecs_world_t*, ecs_http_reply_t*, const char*)’: +../src/flecs/distr/flecs.c:25563:45: error: taking address of rvalue [-fpermissive] +25563 | ecs_entity_t result = ecs_entity(world, { + | ^ +25564 | .name = path, + | ~~~~~~~~~~~~~ +25565 | .sep = "/" + | ~~~~~~~~~~ +25566 | }); + | ~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_rest_script(ecs_world_t*, const ecs_http_request_t*, ecs_http_reply_t*, const char*)’: +../src/flecs/distr/flecs.c:25821:36: error: taking address of rvalue [-fpermissive] +25821 | script = ecs_entity(world, { .name = path }); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:25830:10: error: expected unqualified-id before ‘try’ +25830 | bool try = false; + | ^~~ +../src/flecs/distr/flecs.c:25831:40: error: expected primary-expression before ‘try’ +25831 | flecs_rest_bool_param(req, "try", &try); + | ^~~ +../src/flecs/distr/flecs.c:25835:21: error: expected primary-expression before ‘try’ +25835 | rest_prev_log = try ? NULL : prev_log; + | ^~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:25838:32: error: taking address of rvalue [-fpermissive] +25838 | script = ecs_script(world, { + | ^ +25839 | .entity = script, + | ~~~~~~~~~~~~~~~~~ +25840 | .code = code + | ~~~~~~~~~~~~ +25841 | }); + | ~ +../src/flecs/distr/flecs.h:14313:49: note: in definition of macro ‘ecs_script’ +14313 | ecs_script_init(world, &(ecs_script_desc_t) __VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:25851:14: error: expected primary-expression before ‘try’ +25851 | if (!try) { + | ^~~ +../src/flecs/distr/flecs.c:25851:14: error: expected ‘)’ before ‘try’ +25851 | if (!try) { + | ~ ^~~ + | ) +../src/flecs/distr/flecs.c: In function ‘bool flecs_rest_reply_existing_query(ecs_world_t*, const ecs_http_request_t*, ecs_http_reply_t*, const char*)’: +../src/flecs/distr/flecs.c:25939:24: error: invalid conversion from ‘ecs_poly_t*’ {aka ‘void*’} to ‘ecs_query_t*’ [-fpermissive] +25939 | q = poly_comp->poly; + | ~~~~~~~~~~~^~~~ + | | + | ecs_poly_t* {aka void*} +../src/flecs/distr/flecs.c: In function ‘bool flecs_rest_get_query(ecs_world_t*, const ecs_http_request_t*, ecs_http_reply_t*)’: +../src/flecs/distr/flecs.c:25996:10: error: expected unqualified-id before ‘try’ +25996 | bool try = false; + | ^~~ +../src/flecs/distr/flecs.c:25997:40: error: expected primary-expression before ‘try’ +25997 | flecs_rest_bool_param(req, "try", &try); + | ^~~ +../src/flecs/distr/flecs.c:26002:21: error: expected primary-expression before ‘try’ +26002 | rest_prev_log = try ? NULL : prev_log; + | ^~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:26005:39: error: taking address of rvalue [-fpermissive] +26005 | ecs_query_t *q = ecs_query(world, { .expr = expr }); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9700:47: note: in definition of macro ‘ecs_query’ + 9700 | ecs_query_init(world, &(ecs_query_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:26008:13: error: expected primary-expression before ‘try’ +26008 | if (try) { + | ^~~ +../src/flecs/distr/flecs.c:26008:13: error: expected ‘)’ before ‘try’ +26008 | if (try) { + | ~^~~ + | ) +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_all_systems_stats_to_json(ecs_world_t*, ecs_http_reply_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_system_stats_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:26242:45: note: in expansion of macro ‘ecs_map_ptr’ +26242 | ecs_system_stats_t *sys_stats = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_pipeline_stats_to_json(ecs_world_t*, const ecs_http_request_t*, ecs_http_reply_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:26323:1: error: jump to label ‘noresults’ +26323 | noresults: + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:26289:14: note: from here +26289 | goto noresults; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:26301:19: note: crosses initialization of ‘int32_t op_count’ +26301 | int32_t s, o, op_count = ecs_vec_count(&p->state->ops); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:26298:23: note: crosses initialization of ‘ecs_sync_stats_t* syncs’ +26298 | ecs_sync_stats_t *syncs = ecs_vec_first_t( + | ^~~~~ +../src/flecs/distr/flecs.c:26297:19: note: crosses initialization of ‘ecs_entity_t* systems’ +26297 | ecs_entity_t *systems = ecs_vec_first_t(&p->state->systems, ecs_entity_t); + | ^~~~~~~ +../src/flecs/distr/flecs.c:26296:24: note: crosses initialization of ‘ecs_pipeline_op_t* ops’ +26296 | ecs_pipeline_op_t *ops = ecs_vec_first_t(&p->state->ops, ecs_pipeline_op_t); + | ^~~ +../src/flecs/distr/flecs.c:26292:24: note: crosses initialization of ‘const EcsPipeline* p’ +26292 | const EcsPipeline *p = ecs_get(world, e, EcsPipeline); + | ^ +../src/flecs/distr/flecs.c:26323:1: error: jump to label ‘noresults’ +26323 | noresults: + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:26283:14: note: from here +26283 | goto noresults; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:26301:19: note: crosses initialization of ‘int32_t op_count’ +26301 | int32_t s, o, op_count = ecs_vec_count(&p->state->ops); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:26298:23: note: crosses initialization of ‘ecs_sync_stats_t* syncs’ +26298 | ecs_sync_stats_t *syncs = ecs_vec_first_t( + | ^~~~~ +../src/flecs/distr/flecs.c:26297:19: note: crosses initialization of ‘ecs_entity_t* systems’ +26297 | ecs_entity_t *systems = ecs_vec_first_t(&p->state->systems, ecs_entity_t); + | ^~~~~~~ +../src/flecs/distr/flecs.c:26296:24: note: crosses initialization of ‘ecs_pipeline_op_t* ops’ +26296 | ecs_pipeline_op_t *ops = ecs_vec_first_t(&p->state->ops, ecs_pipeline_op_t); + | ^~~ +../src/flecs/distr/flecs.c:26292:24: note: crosses initialization of ‘const EcsPipeline* p’ +26292 | const EcsPipeline *p = ecs_get(world, e, EcsPipeline); + | ^ +../src/flecs/distr/flecs.c:26286:27: note: crosses initialization of ‘ecs_pipeline_stats_t* pstats’ +26286 | ecs_pipeline_stats_t *pstats = ecs_map_get_deref( + | ^~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_rest_server_garbage_collect_all(ecs_rest_ctx_t*)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_rest_cmd_capture_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:26526:43: note: in expansion of macro ‘ecs_map_ptr’ +26526 | ecs_rest_cmd_capture_t *capture = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:26528:59: error: invalid conversion from ‘void*’ to ‘ecs_rest_cmd_sync_capture_t*’ [-fpermissive] +26528 | ecs_rest_cmd_sync_capture_t *syncs = ecs_vec_first(&capture->syncs); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_rest_server_garbage_collect(ecs_world_t*, ecs_rest_ctx_t*)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_rest_cmd_capture_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:26552:47: note: in expansion of macro ‘ecs_map_ptr’ +26552 | ecs_rest_cmd_capture_t *capture = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:26554:63: error: invalid conversion from ‘void*’ to ‘ecs_rest_cmd_sync_capture_t*’ [-fpermissive] +26554 | ecs_rest_cmd_sync_capture_t *syncs = ecs_vec_first(&capture->syncs); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:26569:40: error: invalid conversion from ‘void*’ to ‘int64_t*’ {aka ‘long int*’} [-fpermissive] +26569 | int64_t *frames = ecs_vec_first(&removed_frames); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_rest_on_commands(const ecs_stage_t*, const ecs_vec_t*, void*)’: +../src/flecs/distr/flecs.c:26643:39: error: invalid conversion from ‘void*’ to ‘ecs_rest_cmd_capture_t*’ [-fpermissive] +26643 | ecs_rest_cmd_capture_t *capture = ctx; + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c:26652:40: error: invalid conversion from ‘void*’ to ‘ecs_cmd_t*’ [-fpermissive] +26652 | ecs_cmd_t *cmds = ecs_vec_first(commands); + | ~~~~~~~~~~~~~^~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘bool flecs_rest_get_commands_request(ecs_world_t*, ecs_rest_ctx_t*, const ecs_http_request_t*, ecs_http_reply_t*)’: +../src/flecs/distr/flecs.c:26738:55: error: invalid conversion from ‘void*’ to ‘ecs_rest_cmd_sync_capture_t*’ [-fpermissive] +26738 | ecs_rest_cmd_sync_capture_t *syncs = ecs_vec_first(&capture->syncs); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘bool flecs_rest_reply(const ecs_http_request_t*, ecs_http_reply_t*, void*)’: +../src/flecs/distr/flecs.c:26757:28: error: invalid conversion from ‘void*’ to ‘ecs_rest_ctx_t*’ [-fpermissive] +26757 | ecs_rest_ctx_t *impl = ctx; + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void ecs_rest_server_fini(ecs_http_server_t*)’: +../src/flecs/distr/flecs.c:26860:47: error: invalid conversion from ‘void*’ to ‘ecs_rest_ctx_t*’ [-fpermissive] +26860 | ecs_rest_ctx_t *impl = ecs_http_server_ctx(srv); + | ~~~~~~~~~~~~~~~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_on_set_rest(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:26881:13: error: designator order for field ‘ecs_http_server_desc_t::port’ does not match declaration order in ‘ecs_http_server_desc_t’ +26881 | }); + | ^ +../src/flecs/distr/flecs.c:26877:38: error: taking address of rvalue [-fpermissive] +26877 | &(ecs_http_server_desc_t){ + | ^ +26878 | .ipaddr = rest[i].ipaddr, + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +26879 | .port = rest[i].port, + | ~~~~~~~~~~~~~~~~~~~~~ +26880 | .cache_timeout = 0.2 + | ~~~~~~~~~~~~~~~~~~~~ +26881 | }); + | ~ +../src/flecs/distr/flecs.c: In function ‘void DequeueRest(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:26910:39: error: invalid conversion from ‘void*’ to ‘ecs_rest_ctx_t*’ [-fpermissive] +26910 | ecs_rest_ctx_t *ctx = rest[i].impl; + | ~~~~~~~~^~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void DisableRest(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:26932:47: error: invalid conversion from ‘void*’ to ‘ecs_rest_ctx_t*’ [-fpermissive] +26932 | ecs_rest_ctx_t *ctx = rest[i].impl; + | ~~~~~~~~^~~~ + | | + | void* +../src/flecs/distr/flecs.c:26942:47: error: invalid conversion from ‘void*’ to ‘ecs_rest_ctx_t*’ [-fpermissive] +26942 | ecs_rest_ctx_t *ctx = rest[i].impl; + | ~~~~~~~~^~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void FlecsRestImport(ecs_world_t*)’: +../src/flecs/distr/flecs.c:3008:37: error: taking address of rvalue [-fpermissive] + 3008 | .entity = ecs_entity(world, { .id = ecs_id(id_), .name = #id_, .symbol = #id_ }),\ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:26966:5: note: in expansion of macro ‘flecs_bootstrap_component’ +26966 | flecs_bootstrap_component(world, EcsRest); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:3007:53: error: expected primary-expression before ‘)’ token + 3007 | ecs_component_init(world, &(ecs_component_desc_t){\ + | ^ +../src/flecs/distr/flecs.c:26966:5: note: in expansion of macro ‘flecs_bootstrap_component’ +26966 | flecs_bootstrap_component(world, EcsRest); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:26974:5: error: designator order for field ‘ecs_type_hooks_t::copy’ does not match declaration order in ‘ecs_type_hooks_t’ +26974 | }); + | ^ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:26968:35: error: taking address of rvalue [-fpermissive] +26968 | ecs_set_hooks(world, EcsRest, { + | ^ +26969 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +26970 | .move = ecs_move(EcsRest), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +26971 | .copy = ecs_copy(EcsRest), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +26972 | .dtor = ecs_dtor(EcsRest), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +26973 | .on_set = flecs_on_set_rest + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +26974 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:12349:49: note: in definition of macro ‘ecs_system’ +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:26977:19: note: in expansion of macro ‘ecs_entity’ +26977 | .entity = ecs_entity(world, {.name = "DequeueRest", .add = ecs_ids( ecs_dependson(EcsPostFrame))}), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:26977:68: note: in expansion of macro ‘ecs_ids’ +26977 | .entity = ecs_entity(world, {.name = "DequeueRest", .add = ecs_ids( ecs_dependson(EcsPostFrame))}), + | ^~~~~~~ +../src/flecs/distr/flecs.h:12349:47: error: expected primary-expression before ‘)’ token +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:26976:5: note: in expansion of macro ‘ecs_system’ +26976 | ecs_system(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:26985:5: note: in expansion of macro ‘ecs_observer’ +26985 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void AddTickSource(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:27055:60: error: taking address of rvalue [-fpermissive] +27055 | ecs_set(it->world, it->entities[i], EcsTickSource, {0}); + | ^~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_set_timeout(ecs_world_t*, ecs_entity_t, float)’: +../src/flecs/distr/flecs.c:27157:35: error: taking address of rvalue [-fpermissive] +27157 | timer = ecs_entity(world, {0}); + | ^~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27164:5: error: designator order for field ‘EcsTimer::active’ does not match declaration order in ‘EcsTimer’ +27164 | }); + | ^ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27160:37: error: taking address of rvalue [-fpermissive] +27160 | ecs_set(world, timer, EcsTimer, { + | ^ +27161 | .timeout = timeout, + | ~~~~~~~~~~~~~~~~~~~ +27162 | .single_shot = true, + | ~~~~~~~~~~~~~~~~~~~~ +27163 | .active = true + | ~~~~~~~~~~~~~~ +27164 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27171:1: error: jump to label ‘error’ +27171 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27154:5: note: in expansion of macro ‘ecs_check’ +27154 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:27166:19: note: crosses initialization of ‘ecs_system_t* system_data’ +27166 | ecs_system_t *system_data = flecs_poly_get(world, timer, ecs_system_t); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘float ecs_get_timeout(const ecs_world_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:27186:1: error: jump to label ‘error’ +27186 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27180:5: note: in expansion of macro ‘ecs_check’ +27180 | ecs_check(timer != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:27182:21: note: crosses initialization of ‘const EcsTimer* value’ +27182 | const EcsTimer *value = ecs_get(world, timer, EcsTimer); + | ^~~~~ +../src/flecs/distr/flecs.c:27186:1: error: jump to label ‘error’ +27186 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27179:5: note: in expansion of macro ‘ecs_check’ +27179 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:27182:21: note: crosses initialization of ‘const EcsTimer* value’ +27182 | const EcsTimer *value = ecs_get(world, timer, EcsTimer); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_set_interval(ecs_world_t*, ecs_entity_t, float)’: +../src/flecs/distr/flecs.c:27211:1: error: jump to label ‘error’ +27211 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27202:5: note: in expansion of macro ‘ecs_check’ +27202 | ecs_check(t != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:27207:19: note: crosses initialization of ‘ecs_system_t* system_data’ +27207 | ecs_system_t *system_data = flecs_poly_get(world, timer, ecs_system_t); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27211:1: error: jump to label ‘error’ +27211 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27195:5: note: in expansion of macro ‘ecs_check’ +27195 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:27207:19: note: crosses initialization of ‘ecs_system_t* system_data’ +27207 | ecs_system_t *system_data = flecs_poly_get(world, timer, ecs_system_t); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27201:15: note: crosses initialization of ‘EcsTimer* t’ +27201 | EcsTimer *t = ecs_ensure(world, timer, EcsTimer); + | ^ +../src/flecs/distr/flecs.c: In function ‘float ecs_get_interval(const ecs_world_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:27229:1: error: jump to label ‘error’ +27229 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27219:5: note: in expansion of macro ‘ecs_check’ +27219 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:27225:21: note: crosses initialization of ‘const EcsTimer* value’ +27225 | const EcsTimer *value = ecs_get(world, timer, EcsTimer); + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_set_rate(ecs_world_t*, ecs_entity_t, int32_t, ecs_entity_t)’: +../src/flecs/distr/flecs.c:27276:36: error: taking address of rvalue [-fpermissive] +27276 | filter = ecs_entity(world, {0}); + | ^~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27282:5: error: designator order for field ‘EcsRateFilter::src’ does not match declaration order in ‘EcsRateFilter’ +27282 | }); + | ^ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27279:43: error: taking address of rvalue [-fpermissive] +27279 | ecs_set(world, filter, EcsRateFilter, { + | ^ +27280 | .rate = rate, + | ~~~~~~~~~~~~~ +27281 | .src = source + | ~~~~~~~~~~~~~ +27282 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27289:1: error: jump to label ‘error’ +27289 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27273:5: note: in expansion of macro ‘ecs_check’ +27273 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:27284:19: note: crosses initialization of ‘ecs_system_t* system_data’ +27284 | ecs_system_t *system_data = flecs_poly_get(world, filter, ecs_system_t); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_set_tick_source(ecs_world_t*, ecs_entity_t, ecs_entity_t)’: +../src/flecs/distr/flecs.c:27306:1: error: jump to label ‘error’ +27306 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27300:5: note: in expansion of macro ‘ecs_check’ +27300 | ecs_check(tick_source != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:27302:19: note: crosses initialization of ‘ecs_system_t* system_data’ +27302 | ecs_system_t *system_data = flecs_poly_get(world, system, ecs_system_t); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27306:1: error: jump to label ‘error’ +27306 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27299:5: note: in expansion of macro ‘ecs_check’ +27299 | ecs_check(system != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:27302:19: note: crosses initialization of ‘ecs_system_t* system_data’ +27302 | ecs_system_t *system_data = flecs_poly_get(world, system, ecs_system_t); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27306:1: error: jump to label ‘error’ +27306 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27298:5: note: in expansion of macro ‘ecs_check’ +27298 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:27302:19: note: crosses initialization of ‘ecs_system_t* system_data’ +27302 | ecs_system_t *system_data = flecs_poly_get(world, system, ecs_system_t); + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void ecs_randomize_timers(ecs_world_t*)’: +../src/flecs/distr/flecs.c:27324:37: error: taking address of rvalue [-fpermissive] +27324 | .entity = ecs_entity(world, { .name = "flecs.timer.RandomizeTimers" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:53: note: in definition of macro ‘ecs_observer’ + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27324:19: note: in expansion of macro ‘ecs_entity’ +27324 | .entity = ecs_entity(world, { .name = "flecs.timer.RandomizeTimers" }), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:27323:5: note: in expansion of macro ‘ecs_observer’ +27323 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void FlecsTimerImport(ecs_world_t*)’: +../src/flecs/distr/flecs.c:3008:37: error: taking address of rvalue [-fpermissive] + 3008 | .entity = ecs_entity(world, { .id = ecs_id(id_), .name = #id_, .symbol = #id_ }),\ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27347:5: note: in expansion of macro ‘flecs_bootstrap_component’ +27347 | flecs_bootstrap_component(world, EcsTimer); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:3007:53: error: expected primary-expression before ‘)’ token + 3007 | ecs_component_init(world, &(ecs_component_desc_t){\ + | ^ +../src/flecs/distr/flecs.c:27347:5: note: in expansion of macro ‘flecs_bootstrap_component’ +27347 | flecs_bootstrap_component(world, EcsTimer); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:3008:37: error: taking address of rvalue [-fpermissive] + 3008 | .entity = ecs_entity(world, { .id = ecs_id(id_), .name = #id_, .symbol = #id_ }),\ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27348:5: note: in expansion of macro ‘flecs_bootstrap_component’ +27348 | flecs_bootstrap_component(world, EcsRateFilter); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:3007:53: error: expected primary-expression before ‘)’ token + 3007 | ecs_component_init(world, &(ecs_component_desc_t){\ + | ^ +../src/flecs/distr/flecs.c:27348:5: note: in expansion of macro ‘flecs_bootstrap_component’ +27348 | flecs_bootstrap_component(world, EcsRateFilter); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27350:36: error: taking address of rvalue [-fpermissive] +27350 | ecs_set_hooks(world, EcsTimer, { + | ^ +27351 | .ctor = flecs_default_ctor + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +27352 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:12349:49: note: in definition of macro ‘ecs_system’ +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27356:19: note: in expansion of macro ‘ecs_entity’ +27356 | .entity = ecs_entity(world, {.name = "AddTickSource", .add = ecs_ids( ecs_dependson(EcsPreFrame) )}), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:27356:70: note: in expansion of macro ‘ecs_ids’ +27356 | .entity = ecs_entity(world, {.name = "AddTickSource", .add = ecs_ids( ecs_dependson(EcsPreFrame) )}), + | ^~~~~~~ +../src/flecs/distr/flecs.h:12349:47: error: expected primary-expression before ‘)’ token +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:27355:5: note: in expansion of macro ‘ecs_system’ +27355 | ecs_system(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:12349:49: note: in definition of macro ‘ecs_system’ +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27367:19: note: in expansion of macro ‘ecs_entity’ +27367 | .entity = ecs_entity(world, {.name = "ProgressTimers", .add = ecs_ids( ecs_dependson(EcsPreFrame))}), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:27367:71: note: in expansion of macro ‘ecs_ids’ +27367 | .entity = ecs_entity(world, {.name = "ProgressTimers", .add = ecs_ids( ecs_dependson(EcsPreFrame))}), + | ^~~~~~~ +../src/flecs/distr/flecs.h:12349:47: error: expected primary-expression before ‘)’ token +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:27366:5: note: in expansion of macro ‘ecs_system’ +27366 | ecs_system(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:12349:49: note: in definition of macro ‘ecs_system’ +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27377:19: note: in expansion of macro ‘ecs_entity’ +27377 | .entity = ecs_entity(world, {.name = "ProgressRateFilters", .add = ecs_ids( ecs_dependson(EcsPreFrame))}), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:27377:76: note: in expansion of macro ‘ecs_ids’ +27377 | .entity = ecs_entity(world, {.name = "ProgressRateFilters", .add = ecs_ids( ecs_dependson(EcsPreFrame))}), + | ^~~~~~~ +../src/flecs/distr/flecs.h:12349:47: error: expected primary-expression before ‘)’ token +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:27376:5: note: in expansion of macro ‘ecs_system’ +27376 | ecs_system(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:12349:49: note: in definition of macro ‘ecs_system’ +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27387:19: note: in expansion of macro ‘ecs_entity’ +27387 | .entity = ecs_entity(world, { .name = "ProgressTickSource", .add = ecs_ids( ecs_dependson(EcsPreFrame))}), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:27387:76: note: in expansion of macro ‘ecs_ids’ +27387 | .entity = ecs_entity(world, { .name = "ProgressTickSource", .add = ecs_ids( ecs_dependson(EcsPreFrame))}), + | ^~~~~~~ +../src/flecs/distr/flecs.h:12349:47: error: expected primary-expression before ‘)’ token +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:27386:5: note: in expansion of macro ‘ecs_system’ +27386 | ecs_system(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void FlecsUnitsImport(ecs_world_t*)’: +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27423:16: note: in expansion of macro ‘ecs_ids’ +27423 | .add = ecs_ids( EcsModule ) + | ^~~~~~~ +../src/flecs/distr/flecs.c:27431:37: error: taking address of rvalue [-fpermissive] +27431 | .entity = ecs_entity(world, { .name = "Yocto" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27430:69: error: taking address of rvalue [-fpermissive] +27430 | EcsYocto = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27431 | .entity = ecs_entity(world, { .name = "Yocto" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27432 | .symbol = "y", + | ~~~~~~~~~~~~~~ +27433 | .translation = { .factor = 10, .power = -24 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27434 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27436:37: error: taking address of rvalue [-fpermissive] +27436 | .entity = ecs_entity(world, { .name = "Zepto" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27435:69: error: taking address of rvalue [-fpermissive] +27435 | EcsZepto = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27436 | .entity = ecs_entity(world, { .name = "Zepto" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27437 | .symbol = "z", + | ~~~~~~~~~~~~~~ +27438 | .translation = { .factor = 10, .power = -21 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27439 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27441:37: error: taking address of rvalue [-fpermissive] +27441 | .entity = ecs_entity(world, { .name = "Atto" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27440:68: error: taking address of rvalue [-fpermissive] +27440 | EcsAtto = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27441 | .entity = ecs_entity(world, { .name = "Atto" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27442 | .symbol = "a", + | ~~~~~~~~~~~~~~ +27443 | .translation = { .factor = 10, .power = -18 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27444 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27446:37: error: taking address of rvalue [-fpermissive] +27446 | .entity = ecs_entity(world, { .name = "Femto" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27445:69: error: taking address of rvalue [-fpermissive] +27445 | EcsFemto = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27446 | .entity = ecs_entity(world, { .name = "Femto" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27447 | .symbol = "a", + | ~~~~~~~~~~~~~~ +27448 | .translation = { .factor = 10, .power = -15 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27449 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27451:37: error: taking address of rvalue [-fpermissive] +27451 | .entity = ecs_entity(world, { .name = "Pico" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27450:68: error: taking address of rvalue [-fpermissive] +27450 | EcsPico = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27451 | .entity = ecs_entity(world, { .name = "Pico" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27452 | .symbol = "p", + | ~~~~~~~~~~~~~~ +27453 | .translation = { .factor = 10, .power = -12 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27454 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27456:37: error: taking address of rvalue [-fpermissive] +27456 | .entity = ecs_entity(world, { .name = "Nano" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27455:68: error: taking address of rvalue [-fpermissive] +27455 | EcsNano = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27456 | .entity = ecs_entity(world, { .name = "Nano" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27457 | .symbol = "n", + | ~~~~~~~~~~~~~~ +27458 | .translation = { .factor = 10, .power = -9 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27459 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27461:37: error: taking address of rvalue [-fpermissive] +27461 | .entity = ecs_entity(world, { .name = "Micro" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27460:69: error: taking address of rvalue [-fpermissive] +27460 | EcsMicro = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27461 | .entity = ecs_entity(world, { .name = "Micro" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27462 | .symbol = "μ", + | ~~~~~~~~~~~~~~ +27463 | .translation = { .factor = 10, .power = -6 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27464 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27466:37: error: taking address of rvalue [-fpermissive] +27466 | .entity = ecs_entity(world, { .name = "Milli" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27465:69: error: taking address of rvalue [-fpermissive] +27465 | EcsMilli = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27466 | .entity = ecs_entity(world, { .name = "Milli" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27467 | .symbol = "m", + | ~~~~~~~~~~~~~~ +27468 | .translation = { .factor = 10, .power = -3 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27469 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27471:37: error: taking address of rvalue [-fpermissive] +27471 | .entity = ecs_entity(world, { .name = "Centi" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27470:69: error: taking address of rvalue [-fpermissive] +27470 | EcsCenti = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27471 | .entity = ecs_entity(world, { .name = "Centi" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27472 | .symbol = "c", + | ~~~~~~~~~~~~~~ +27473 | .translation = { .factor = 10, .power = -2 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27474 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27476:37: error: taking address of rvalue [-fpermissive] +27476 | .entity = ecs_entity(world, { .name = "Deci" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27475:68: error: taking address of rvalue [-fpermissive] +27475 | EcsDeci = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27476 | .entity = ecs_entity(world, { .name = "Deci" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27477 | .symbol = "d", + | ~~~~~~~~~~~~~~ +27478 | .translation = { .factor = 10, .power = -1 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27479 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27481:37: error: taking address of rvalue [-fpermissive] +27481 | .entity = ecs_entity(world, { .name = "Deca" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27480:68: error: taking address of rvalue [-fpermissive] +27480 | EcsDeca = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27481 | .entity = ecs_entity(world, { .name = "Deca" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27482 | .symbol = "da", + | ~~~~~~~~~~~~~~~ +27483 | .translation = { .factor = 10, .power = 1 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27484 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27486:37: error: taking address of rvalue [-fpermissive] +27486 | .entity = ecs_entity(world, { .name = "Hecto" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27485:69: error: taking address of rvalue [-fpermissive] +27485 | EcsHecto = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27486 | .entity = ecs_entity(world, { .name = "Hecto" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27487 | .symbol = "h", + | ~~~~~~~~~~~~~~ +27488 | .translation = { .factor = 10, .power = 2 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27489 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27491:37: error: taking address of rvalue [-fpermissive] +27491 | .entity = ecs_entity(world, { .name = "Kilo" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27490:68: error: taking address of rvalue [-fpermissive] +27490 | EcsKilo = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27491 | .entity = ecs_entity(world, { .name = "Kilo" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27492 | .symbol = "k", + | ~~~~~~~~~~~~~~ +27493 | .translation = { .factor = 10, .power = 3 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27494 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27496:37: error: taking address of rvalue [-fpermissive] +27496 | .entity = ecs_entity(world, { .name = "Mega" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27495:68: error: taking address of rvalue [-fpermissive] +27495 | EcsMega = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27496 | .entity = ecs_entity(world, { .name = "Mega" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27497 | .symbol = "M", + | ~~~~~~~~~~~~~~ +27498 | .translation = { .factor = 10, .power = 6 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27499 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27501:37: error: taking address of rvalue [-fpermissive] +27501 | .entity = ecs_entity(world, { .name = "Giga" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27500:68: error: taking address of rvalue [-fpermissive] +27500 | EcsGiga = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27501 | .entity = ecs_entity(world, { .name = "Giga" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27502 | .symbol = "G", + | ~~~~~~~~~~~~~~ +27503 | .translation = { .factor = 10, .power = 9 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27504 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27506:37: error: taking address of rvalue [-fpermissive] +27506 | .entity = ecs_entity(world, { .name = "Tera" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27505:68: error: taking address of rvalue [-fpermissive] +27505 | EcsTera = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27506 | .entity = ecs_entity(world, { .name = "Tera" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27507 | .symbol = "T", + | ~~~~~~~~~~~~~~ +27508 | .translation = { .factor = 10, .power = 12 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27509 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27511:37: error: taking address of rvalue [-fpermissive] +27511 | .entity = ecs_entity(world, { .name = "Peta" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27510:68: error: taking address of rvalue [-fpermissive] +27510 | EcsPeta = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27511 | .entity = ecs_entity(world, { .name = "Peta" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27512 | .symbol = "P", + | ~~~~~~~~~~~~~~ +27513 | .translation = { .factor = 10, .power = 15 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27514 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27516:37: error: taking address of rvalue [-fpermissive] +27516 | .entity = ecs_entity(world, { .name = "Exa" }), + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27515:67: error: taking address of rvalue [-fpermissive] +27515 | EcsExa = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27516 | .entity = ecs_entity(world, { .name = "Exa" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27517 | .symbol = "E", + | ~~~~~~~~~~~~~~ +27518 | .translation = { .factor = 10, .power = 18 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27519 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27521:37: error: taking address of rvalue [-fpermissive] +27521 | .entity = ecs_entity(world, { .name = "Zetta" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27520:69: error: taking address of rvalue [-fpermissive] +27520 | EcsZetta = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27521 | .entity = ecs_entity(world, { .name = "Zetta" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27522 | .symbol = "Z", + | ~~~~~~~~~~~~~~ +27523 | .translation = { .factor = 10, .power = 21 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27524 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27526:37: error: taking address of rvalue [-fpermissive] +27526 | .entity = ecs_entity(world, { .name = "Yotta" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27525:69: error: taking address of rvalue [-fpermissive] +27525 | EcsYotta = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27526 | .entity = ecs_entity(world, { .name = "Yotta" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27527 | .symbol = "Y", + | ~~~~~~~~~~~~~~ +27528 | .translation = { .factor = 10, .power = 24 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27529 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27532:37: error: taking address of rvalue [-fpermissive] +27532 | .entity = ecs_entity(world, { .name = "Kibi" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27531:68: error: taking address of rvalue [-fpermissive] +27531 | EcsKibi = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27532 | .entity = ecs_entity(world, { .name = "Kibi" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27533 | .symbol = "Ki", + | ~~~~~~~~~~~~~~~ +27534 | .translation = { .factor = 1024, .power = 1 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27535 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27537:37: error: taking address of rvalue [-fpermissive] +27537 | .entity = ecs_entity(world, { .name = "Mebi" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27536:68: error: taking address of rvalue [-fpermissive] +27536 | EcsMebi = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27537 | .entity = ecs_entity(world, { .name = "Mebi" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27538 | .symbol = "Mi", + | ~~~~~~~~~~~~~~~ +27539 | .translation = { .factor = 1024, .power = 2 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27540 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27542:37: error: taking address of rvalue [-fpermissive] +27542 | .entity = ecs_entity(world, { .name = "Gibi" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27541:68: error: taking address of rvalue [-fpermissive] +27541 | EcsGibi = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27542 | .entity = ecs_entity(world, { .name = "Gibi" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27543 | .symbol = "Gi", + | ~~~~~~~~~~~~~~~ +27544 | .translation = { .factor = 1024, .power = 3 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27545 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27547:37: error: taking address of rvalue [-fpermissive] +27547 | .entity = ecs_entity(world, { .name = "Tebi" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27546:68: error: taking address of rvalue [-fpermissive] +27546 | EcsTebi = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27547 | .entity = ecs_entity(world, { .name = "Tebi" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27548 | .symbol = "Ti", + | ~~~~~~~~~~~~~~~ +27549 | .translation = { .factor = 1024, .power = 4 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27550 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27552:37: error: taking address of rvalue [-fpermissive] +27552 | .entity = ecs_entity(world, { .name = "Pebi" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27551:68: error: taking address of rvalue [-fpermissive] +27551 | EcsPebi = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27552 | .entity = ecs_entity(world, { .name = "Pebi" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27553 | .symbol = "Pi", + | ~~~~~~~~~~~~~~~ +27554 | .translation = { .factor = 1024, .power = 5 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27555 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27557:37: error: taking address of rvalue [-fpermissive] +27557 | .entity = ecs_entity(world, { .name = "Exbi" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27556:68: error: taking address of rvalue [-fpermissive] +27556 | EcsExbi = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27557 | .entity = ecs_entity(world, { .name = "Exbi" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27558 | .symbol = "Ei", + | ~~~~~~~~~~~~~~~ +27559 | .translation = { .factor = 1024, .power = 6 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27560 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27562:37: error: taking address of rvalue [-fpermissive] +27562 | .entity = ecs_entity(world, { .name = "Zebi" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27561:68: error: taking address of rvalue [-fpermissive] +27561 | EcsZebi = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27562 | .entity = ecs_entity(world, { .name = "Zebi" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27563 | .symbol = "Zi", + | ~~~~~~~~~~~~~~~ +27564 | .translation = { .factor = 1024, .power = 7 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27565 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27567:37: error: taking address of rvalue [-fpermissive] +27567 | .entity = ecs_entity(world, { .name = "Yobi" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27566:68: error: taking address of rvalue [-fpermissive] +27566 | EcsYobi = ecs_unit_prefix_init(world, &(ecs_unit_prefix_desc_t){ + | ^ +27567 | .entity = ecs_entity(world, { .name = "Yobi" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27568 | .symbol = "Yi", + | ~~~~~~~~~~~~~~~ +27569 | .translation = { .factor = 1024, .power = 8 } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27570 | }); + | ~ +../src/flecs/distr/flecs.c:27576:64: error: taking address of rvalue [-fpermissive] +27576 | EcsDuration = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +27577 | .name = "Duration" }); + | ~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27581:41: error: taking address of rvalue [-fpermissive] +27581 | .entity = ecs_entity(world, { .name = "Seconds" }), + | ^~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27583:27: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27583 | .symbol = "s" }); + | ^ +../src/flecs/distr/flecs.c:27580:61: error: taking address of rvalue [-fpermissive] +27580 | EcsSeconds = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27581 | .entity = ecs_entity(world, { .name = "Seconds" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27582 | .quantity = EcsDuration, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +27583 | .symbol = "s" }); + | ~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27584:58: error: taking address of rvalue [-fpermissive] +27584 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27585 | .entity = EcsSeconds, + | ~~~~~~~~~~~~~~~~~~~~~ +27586 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27587 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27589:45: error: taking address of rvalue [-fpermissive] +27589 | .entity = ecs_entity(world, { .name = "PicoSeconds" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27588:69: error: taking address of rvalue [-fpermissive] +27588 | EcsPicoSeconds = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27589 | .entity = ecs_entity(world, { .name = "PicoSeconds" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27590 | .quantity = EcsDuration, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +27591 | .base = EcsSeconds, + | ~~~~~~~~~~~~~~~~~~~ +27592 | .prefix = EcsPico }); + | ~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27593:62: error: taking address of rvalue [-fpermissive] +27593 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27594 | .entity = EcsPicoSeconds, + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +27595 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27596 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27600:45: error: taking address of rvalue [-fpermissive] +27600 | .entity = ecs_entity(world, { .name = "NanoSeconds" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27599:69: error: taking address of rvalue [-fpermissive] +27599 | EcsNanoSeconds = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27600 | .entity = ecs_entity(world, { .name = "NanoSeconds" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27601 | .quantity = EcsDuration, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +27602 | .base = EcsSeconds, + | ~~~~~~~~~~~~~~~~~~~ +27603 | .prefix = EcsNano }); + | ~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27604:62: error: taking address of rvalue [-fpermissive] +27604 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27605 | .entity = EcsNanoSeconds, + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +27606 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27607 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27610:45: error: taking address of rvalue [-fpermissive] +27610 | .entity = ecs_entity(world, { .name = "MicroSeconds" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27609:70: error: taking address of rvalue [-fpermissive] +27609 | EcsMicroSeconds = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27610 | .entity = ecs_entity(world, { .name = "MicroSeconds" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27611 | .quantity = EcsDuration, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +27612 | .base = EcsSeconds, + | ~~~~~~~~~~~~~~~~~~~ +27613 | .prefix = EcsMicro }); + | ~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27614:62: error: taking address of rvalue [-fpermissive] +27614 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27615 | .entity = EcsMicroSeconds, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +27616 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27617 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27620:45: error: taking address of rvalue [-fpermissive] +27620 | .entity = ecs_entity(world, { .name = "MilliSeconds" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27619:70: error: taking address of rvalue [-fpermissive] +27619 | EcsMilliSeconds = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27620 | .entity = ecs_entity(world, { .name = "MilliSeconds" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27621 | .quantity = EcsDuration, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +27622 | .base = EcsSeconds, + | ~~~~~~~~~~~~~~~~~~~ +27623 | .prefix = EcsMilli }); + | ~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27624:62: error: taking address of rvalue [-fpermissive] +27624 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27625 | .entity = EcsMilliSeconds, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +27626 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27627 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27630:41: error: taking address of rvalue [-fpermissive] +27630 | .entity = ecs_entity(world, { .name = "Minutes" }), + | ^~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27634:57: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27634 | .translation = { .factor = 60, .power = 1 } }); + | ^ +../src/flecs/distr/flecs.c:27629:61: error: taking address of rvalue [-fpermissive] +27629 | EcsMinutes = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27630 | .entity = ecs_entity(world, { .name = "Minutes" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27631 | .quantity = EcsDuration, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +27632 | .base = EcsSeconds, + | ~~~~~~~~~~~~~~~~~~~ +27633 | .symbol = "min", + | ~~~~~~~~~~~~~~~~ +27634 | .translation = { .factor = 60, .power = 1 } }); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27635:58: error: taking address of rvalue [-fpermissive] +27635 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27636 | .entity = EcsMinutes, + | ~~~~~~~~~~~~~~~~~~~~~ +27637 | .kind = EcsU32 + | ~~~~~~~~~~~~~~ +27638 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27641:41: error: taking address of rvalue [-fpermissive] +27641 | .entity = ecs_entity(world, { .name = "Hours" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27645:57: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27645 | .translation = { .factor = 60, .power = 1 } }); + | ^ +../src/flecs/distr/flecs.c:27640:59: error: taking address of rvalue [-fpermissive] +27640 | EcsHours = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27641 | .entity = ecs_entity(world, { .name = "Hours" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27642 | .quantity = EcsDuration, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +27643 | .base = EcsMinutes, + | ~~~~~~~~~~~~~~~~~~~ +27644 | .symbol = "h", + | ~~~~~~~~~~~~~~ +27645 | .translation = { .factor = 60, .power = 1 } }); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27646:58: error: taking address of rvalue [-fpermissive] +27646 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27647 | .entity = EcsHours, + | ~~~~~~~~~~~~~~~~~~~ +27648 | .kind = EcsU32 + | ~~~~~~~~~~~~~~ +27649 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27652:41: error: taking address of rvalue [-fpermissive] +27652 | .entity = ecs_entity(world, { .name = "Days" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27656:57: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27656 | .translation = { .factor = 24, .power = 1 } }); + | ^ +../src/flecs/distr/flecs.c:27651:58: error: taking address of rvalue [-fpermissive] +27651 | EcsDays = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27652 | .entity = ecs_entity(world, { .name = "Days" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27653 | .quantity = EcsDuration, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +27654 | .base = EcsHours, + | ~~~~~~~~~~~~~~~~~ +27655 | .symbol = "d", + | ~~~~~~~~~~~~~~ +27656 | .translation = { .factor = 24, .power = 1 } }); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27657:58: error: taking address of rvalue [-fpermissive] +27657 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27658 | .entity = EcsDays, + | ~~~~~~~~~~~~~~~~~~ +27659 | .kind = EcsU32 + | ~~~~~~~~~~~~~~ +27660 | }); + | ~ +../src/flecs/distr/flecs.c:27665:60: error: taking address of rvalue [-fpermissive] +27665 | EcsTime = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +27666 | .name = "Time" }); + | ~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27670:41: error: taking address of rvalue [-fpermissive] +27670 | .entity = ecs_entity(world, { .name = "Date" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27669:58: error: taking address of rvalue [-fpermissive] +27669 | EcsDate = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27670 | .entity = ecs_entity(world, { .name = "Date" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27671 | .quantity = EcsTime }); + | ~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27672:58: error: taking address of rvalue [-fpermissive] +27672 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27673 | .entity = EcsDate, + | ~~~~~~~~~~~~~~~~~~ +27674 | .kind = EcsU32 + | ~~~~~~~~~~~~~~ +27675 | }); + | ~ +../src/flecs/distr/flecs.c:27680:60: error: taking address of rvalue [-fpermissive] +27680 | EcsMass = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +27681 | .name = "Mass" }); + | ~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27684:41: error: taking address of rvalue [-fpermissive] +27684 | .entity = ecs_entity(world, { .name = "Grams" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27686:27: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27686 | .symbol = "g" }); + | ^ +../src/flecs/distr/flecs.c:27683:59: error: taking address of rvalue [-fpermissive] +27683 | EcsGrams = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27684 | .entity = ecs_entity(world, { .name = "Grams" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27685 | .quantity = EcsMass, + | ~~~~~~~~~~~~~~~~~~~~ +27686 | .symbol = "g" }); + | ~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27687:58: error: taking address of rvalue [-fpermissive] +27687 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27688 | .entity = EcsGrams, + | ~~~~~~~~~~~~~~~~~~~ +27689 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27690 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27692:41: error: taking address of rvalue [-fpermissive] +27692 | .entity = ecs_entity(world, { .name = "KiloGrams" }), + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27695:30: error: designator order for field ‘ecs_unit_desc_t::base’ does not match declaration order in ‘ecs_unit_desc_t’ +27695 | .base = EcsGrams }); + | ^ +../src/flecs/distr/flecs.c:27691:63: error: taking address of rvalue [-fpermissive] +27691 | EcsKiloGrams = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27692 | .entity = ecs_entity(world, { .name = "KiloGrams" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27693 | .quantity = EcsMass, + | ~~~~~~~~~~~~~~~~~~~~ +27694 | .prefix = EcsKilo, + | ~~~~~~~~~~~~~~~~~~ +27695 | .base = EcsGrams }); + | ~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27696:58: error: taking address of rvalue [-fpermissive] +27696 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27697 | .entity = EcsKiloGrams, + | ~~~~~~~~~~~~~~~~~~~~~~~ +27698 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27699 | }); + | ~ +../src/flecs/distr/flecs.c:27704:71: error: taking address of rvalue [-fpermissive] +27704 | EcsElectricCurrent = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +27705 | .name = "ElectricCurrent" }); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27708:41: error: taking address of rvalue [-fpermissive] +27708 | .entity = ecs_entity(world, { .name = "Ampere" }), + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27710:27: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27710 | .symbol = "A" }); + | ^ +../src/flecs/distr/flecs.c:27707:60: error: taking address of rvalue [-fpermissive] +27707 | EcsAmpere = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27708 | .entity = ecs_entity(world, { .name = "Ampere" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27709 | .quantity = EcsElectricCurrent, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27710 | .symbol = "A" }); + | ~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27711:58: error: taking address of rvalue [-fpermissive] +27711 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27712 | .entity = EcsAmpere, + | ~~~~~~~~~~~~~~~~~~~~ +27713 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27714 | }); + | ~ +../src/flecs/distr/flecs.c:27719:62: error: taking address of rvalue [-fpermissive] +27719 | EcsAmount = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +27720 | .name = "Amount" }); + | ~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27723:41: error: taking address of rvalue [-fpermissive] +27723 | .entity = ecs_entity(world, { .name = "Mole" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27725:29: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27725 | .symbol = "mol" }); + | ^ +../src/flecs/distr/flecs.c:27722:58: error: taking address of rvalue [-fpermissive] +27722 | EcsMole = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27723 | .entity = ecs_entity(world, { .name = "Mole" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27724 | .quantity = EcsAmount, + | ~~~~~~~~~~~~~~~~~~~~~~ +27725 | .symbol = "mol" }); + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27726:58: error: taking address of rvalue [-fpermissive] +27726 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27727 | .entity = EcsMole, + | ~~~~~~~~~~~~~~~~~~ +27728 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27729 | }); + | ~ +../src/flecs/distr/flecs.c:27734:73: error: taking address of rvalue [-fpermissive] +27734 | EcsLuminousIntensity = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +27735 | .name = "LuminousIntensity" }); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27738:41: error: taking address of rvalue [-fpermissive] +27738 | .entity = ecs_entity(world, { .name = "Candela" }), + | ^~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27740:28: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27740 | .symbol = "cd" }); + | ^ +../src/flecs/distr/flecs.c:27737:61: error: taking address of rvalue [-fpermissive] +27737 | EcsCandela = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27738 | .entity = ecs_entity(world, { .name = "Candela" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27739 | .quantity = EcsLuminousIntensity, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27740 | .symbol = "cd" }); + | ~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27741:58: error: taking address of rvalue [-fpermissive] +27741 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27742 | .entity = EcsCandela, + | ~~~~~~~~~~~~~~~~~~~~~ +27743 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27744 | }); + | ~ +../src/flecs/distr/flecs.c:27749:61: error: taking address of rvalue [-fpermissive] +27749 | EcsForce = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +27750 | .name = "Force" }); + | ~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27753:41: error: taking address of rvalue [-fpermissive] +27753 | .entity = ecs_entity(world, { .name = "Newton" }), + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27755:27: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27755 | .symbol = "N" }); + | ^ +../src/flecs/distr/flecs.c:27752:60: error: taking address of rvalue [-fpermissive] +27752 | EcsNewton = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27753 | .entity = ecs_entity(world, { .name = "Newton" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27754 | .quantity = EcsForce, + | ~~~~~~~~~~~~~~~~~~~~~ +27755 | .symbol = "N" }); + | ~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27756:58: error: taking address of rvalue [-fpermissive] +27756 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27757 | .entity = EcsNewton, + | ~~~~~~~~~~~~~~~~~~~~ +27758 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27759 | }); + | ~ +../src/flecs/distr/flecs.c:27764:62: error: taking address of rvalue [-fpermissive] +27764 | EcsLength = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +27765 | .name = "Length" }); + | ~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27768:41: error: taking address of rvalue [-fpermissive] +27768 | .entity = ecs_entity(world, { .name = "Meters" }), + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27770:27: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27770 | .symbol = "m" }); + | ^ +../src/flecs/distr/flecs.c:27767:60: error: taking address of rvalue [-fpermissive] +27767 | EcsMeters = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27768 | .entity = ecs_entity(world, { .name = "Meters" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27769 | .quantity = EcsLength, + | ~~~~~~~~~~~~~~~~~~~~~~ +27770 | .symbol = "m" }); + | ~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27771:58: error: taking address of rvalue [-fpermissive] +27771 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27772 | .entity = EcsMeters, + | ~~~~~~~~~~~~~~~~~~~~ +27773 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27774 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27777:45: error: taking address of rvalue [-fpermissive] +27777 | .entity = ecs_entity(world, { .name = "PicoMeters" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27776:68: error: taking address of rvalue [-fpermissive] +27776 | EcsPicoMeters = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27777 | .entity = ecs_entity(world, { .name = "PicoMeters" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27778 | .quantity = EcsLength, + | ~~~~~~~~~~~~~~~~~~~~~~ +27779 | .base = EcsMeters, + | ~~~~~~~~~~~~~~~~~~ +27780 | .prefix = EcsPico }); + | ~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27781:62: error: taking address of rvalue [-fpermissive] +27781 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27782 | .entity = EcsPicoMeters, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +27783 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27784 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27787:45: error: taking address of rvalue [-fpermissive] +27787 | .entity = ecs_entity(world, { .name = "NanoMeters" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27786:68: error: taking address of rvalue [-fpermissive] +27786 | EcsNanoMeters = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27787 | .entity = ecs_entity(world, { .name = "NanoMeters" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27788 | .quantity = EcsLength, + | ~~~~~~~~~~~~~~~~~~~~~~ +27789 | .base = EcsMeters, + | ~~~~~~~~~~~~~~~~~~ +27790 | .prefix = EcsNano }); + | ~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27791:62: error: taking address of rvalue [-fpermissive] +27791 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27792 | .entity = EcsNanoMeters, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +27793 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27794 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27797:45: error: taking address of rvalue [-fpermissive] +27797 | .entity = ecs_entity(world, { .name = "MicroMeters" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27796:69: error: taking address of rvalue [-fpermissive] +27796 | EcsMicroMeters = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27797 | .entity = ecs_entity(world, { .name = "MicroMeters" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27798 | .quantity = EcsLength, + | ~~~~~~~~~~~~~~~~~~~~~~ +27799 | .base = EcsMeters, + | ~~~~~~~~~~~~~~~~~~ +27800 | .prefix = EcsMicro }); + | ~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27801:62: error: taking address of rvalue [-fpermissive] +27801 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27802 | .entity = EcsMicroMeters, + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +27803 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27804 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27807:45: error: taking address of rvalue [-fpermissive] +27807 | .entity = ecs_entity(world, { .name = "MilliMeters" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27806:69: error: taking address of rvalue [-fpermissive] +27806 | EcsMilliMeters = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27807 | .entity = ecs_entity(world, { .name = "MilliMeters" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27808 | .quantity = EcsLength, + | ~~~~~~~~~~~~~~~~~~~~~~ +27809 | .base = EcsMeters, + | ~~~~~~~~~~~~~~~~~~ +27810 | .prefix = EcsMilli }); + | ~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27811:62: error: taking address of rvalue [-fpermissive] +27811 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27812 | .entity = EcsMilliMeters, + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +27813 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27814 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27817:45: error: taking address of rvalue [-fpermissive] +27817 | .entity = ecs_entity(world, { .name = "CentiMeters" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27816:69: error: taking address of rvalue [-fpermissive] +27816 | EcsCentiMeters = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27817 | .entity = ecs_entity(world, { .name = "CentiMeters" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27818 | .quantity = EcsLength, + | ~~~~~~~~~~~~~~~~~~~~~~ +27819 | .base = EcsMeters, + | ~~~~~~~~~~~~~~~~~~ +27820 | .prefix = EcsCenti }); + | ~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27821:62: error: taking address of rvalue [-fpermissive] +27821 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27822 | .entity = EcsCentiMeters, + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +27823 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27824 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27827:45: error: taking address of rvalue [-fpermissive] +27827 | .entity = ecs_entity(world, { .name = "KiloMeters" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27826:68: error: taking address of rvalue [-fpermissive] +27826 | EcsKiloMeters = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27827 | .entity = ecs_entity(world, { .name = "KiloMeters" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27828 | .quantity = EcsLength, + | ~~~~~~~~~~~~~~~~~~~~~~ +27829 | .base = EcsMeters, + | ~~~~~~~~~~~~~~~~~~ +27830 | .prefix = EcsKilo }); + | ~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27831:62: error: taking address of rvalue [-fpermissive] +27831 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27832 | .entity = EcsKiloMeters, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +27833 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27834 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27837:41: error: taking address of rvalue [-fpermissive] +27837 | .entity = ecs_entity(world, { .name = "Miles" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27840:9: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27840 | }); + | ^ +../src/flecs/distr/flecs.c:27836:59: error: taking address of rvalue [-fpermissive] +27836 | EcsMiles = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27837 | .entity = ecs_entity(world, { .name = "Miles" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27838 | .quantity = EcsLength, + | ~~~~~~~~~~~~~~~~~~~~~~ +27839 | .symbol = "mi" + | ~~~~~~~~~~~~~~ +27840 | }); + | ~ +../src/flecs/distr/flecs.c:27841:58: error: taking address of rvalue [-fpermissive] +27841 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27842 | .entity = EcsMiles, + | ~~~~~~~~~~~~~~~~~~~ +27843 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27844 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27847:41: error: taking address of rvalue [-fpermissive] +27847 | .entity = ecs_entity(world, { .name = "Pixels" }), + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27850:9: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27850 | }); + | ^ +../src/flecs/distr/flecs.c:27846:60: error: taking address of rvalue [-fpermissive] +27846 | EcsPixels = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27847 | .entity = ecs_entity(world, { .name = "Pixels" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27848 | .quantity = EcsLength, + | ~~~~~~~~~~~~~~~~~~~~~~ +27849 | .symbol = "px" + | ~~~~~~~~~~~~~~ +27850 | }); + | ~ +../src/flecs/distr/flecs.c:27851:58: error: taking address of rvalue [-fpermissive] +27851 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27852 | .entity = EcsPixels, + | ~~~~~~~~~~~~~~~~~~~~ +27853 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27854 | }); + | ~ +../src/flecs/distr/flecs.c:27859:64: error: taking address of rvalue [-fpermissive] +27859 | EcsPressure = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +27860 | .name = "Pressure" }); + | ~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27863:41: error: taking address of rvalue [-fpermissive] +27863 | .entity = ecs_entity(world, { .name = "Pascal" }), + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27865:28: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27865 | .symbol = "Pa" }); + | ^ +../src/flecs/distr/flecs.c:27862:60: error: taking address of rvalue [-fpermissive] +27862 | EcsPascal = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27863 | .entity = ecs_entity(world, { .name = "Pascal" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27864 | .quantity = EcsPressure, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +27865 | .symbol = "Pa" }); + | ~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27866:58: error: taking address of rvalue [-fpermissive] +27866 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27867 | .entity = EcsPascal, + | ~~~~~~~~~~~~~~~~~~~~ +27868 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27869 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27871:41: error: taking address of rvalue [-fpermissive] +27871 | .entity = ecs_entity(world, { .name = "Bar" }), + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27873:29: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27873 | .symbol = "bar" }); + | ^ +../src/flecs/distr/flecs.c:27870:57: error: taking address of rvalue [-fpermissive] +27870 | EcsBar = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27871 | .entity = ecs_entity(world, { .name = "Bar" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27872 | .quantity = EcsPressure, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +27873 | .symbol = "bar" }); + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27874:58: error: taking address of rvalue [-fpermissive] +27874 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27875 | .entity = EcsBar, + | ~~~~~~~~~~~~~~~~~ +27876 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27877 | }); + | ~ +../src/flecs/distr/flecs.c:27882:61: error: taking address of rvalue [-fpermissive] +27882 | EcsSpeed = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +27883 | .name = "Speed" }); + | ~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27886:41: error: taking address of rvalue [-fpermissive] +27886 | .entity = ecs_entity(world, { .name = "MetersPerSecond" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27885:69: error: taking address of rvalue [-fpermissive] +27885 | EcsMetersPerSecond = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27886 | .entity = ecs_entity(world, { .name = "MetersPerSecond" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27887 | .quantity = EcsSpeed, + | ~~~~~~~~~~~~~~~~~~~~~ +27888 | .base = EcsMeters, + | ~~~~~~~~~~~~~~~~~~ +27889 | .over = EcsSeconds }); + | ~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27890:58: error: taking address of rvalue [-fpermissive] +27890 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27891 | .entity = EcsMetersPerSecond, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27892 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27893 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27895:41: error: taking address of rvalue [-fpermissive] +27895 | .entity = ecs_entity(world, { .name = "KiloMetersPerSecond" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27894:73: error: taking address of rvalue [-fpermissive] +27894 | EcsKiloMetersPerSecond = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27895 | .entity = ecs_entity(world, { .name = "KiloMetersPerSecond" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27896 | .quantity = EcsSpeed, + | ~~~~~~~~~~~~~~~~~~~~~ +27897 | .base = EcsKiloMeters, + | ~~~~~~~~~~~~~~~~~~~~~~ +27898 | .over = EcsSeconds }); + | ~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27899:58: error: taking address of rvalue [-fpermissive] +27899 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27900 | .entity = EcsKiloMetersPerSecond, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27901 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27902 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27904:41: error: taking address of rvalue [-fpermissive] +27904 | .entity = ecs_entity(world, { .name = "KiloMetersPerHour" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27903:71: error: taking address of rvalue [-fpermissive] +27903 | EcsKiloMetersPerHour = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27904 | .entity = ecs_entity(world, { .name = "KiloMetersPerHour" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27905 | .quantity = EcsSpeed, + | ~~~~~~~~~~~~~~~~~~~~~ +27906 | .base = EcsKiloMeters, + | ~~~~~~~~~~~~~~~~~~~~~~ +27907 | .over = EcsHours }); + | ~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27908:58: error: taking address of rvalue [-fpermissive] +27908 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27909 | .entity = EcsKiloMetersPerHour, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27910 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27911 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27913:41: error: taking address of rvalue [-fpermissive] +27913 | .entity = ecs_entity(world, { .name = "MilesPerHour" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27912:66: error: taking address of rvalue [-fpermissive] +27912 | EcsMilesPerHour = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27913 | .entity = ecs_entity(world, { .name = "MilesPerHour" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27914 | .quantity = EcsSpeed, + | ~~~~~~~~~~~~~~~~~~~~~ +27915 | .base = EcsMiles, + | ~~~~~~~~~~~~~~~~~ +27916 | .over = EcsHours }); + | ~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27917:58: error: taking address of rvalue [-fpermissive] +27917 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27918 | .entity = EcsMilesPerHour, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +27919 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27920 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27926:37: error: taking address of rvalue [-fpermissive] +27926 | .entity = ecs_entity(world, { .name = "Acceleration" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27925:62: error: taking address of rvalue [-fpermissive] +27925 | EcsAcceleration = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27926 | .entity = ecs_entity(world, { .name = "Acceleration" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27927 | .base = EcsMetersPerSecond, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27928 | .over = EcsSeconds }); + | ~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27929:50: error: taking address of rvalue [-fpermissive] +27929 | ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +27930 | .id = EcsAcceleration + | ~~~~~~~~~~~~~~~~~~~~~ +27931 | }); + | ~ +../src/flecs/distr/flecs.c:27932:54: error: taking address of rvalue [-fpermissive] +27932 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27933 | .entity = EcsAcceleration, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +27934 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27935 | }); + | ~ +../src/flecs/distr/flecs.c:27939:67: error: taking address of rvalue [-fpermissive] +27939 | EcsTemperature = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +27940 | .name = "Temperature" }); + | ~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27943:41: error: taking address of rvalue [-fpermissive] +27943 | .entity = ecs_entity(world, { .name = "Kelvin" }), + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27945:27: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27945 | .symbol = "K" }); + | ^ +../src/flecs/distr/flecs.c:27942:60: error: taking address of rvalue [-fpermissive] +27942 | EcsKelvin = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27943 | .entity = ecs_entity(world, { .name = "Kelvin" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27944 | .quantity = EcsTemperature, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27945 | .symbol = "K" }); + | ~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27946:58: error: taking address of rvalue [-fpermissive] +27946 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27947 | .entity = EcsKelvin, + | ~~~~~~~~~~~~~~~~~~~~ +27948 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27949 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27951:41: error: taking address of rvalue [-fpermissive] +27951 | .entity = ecs_entity(world, { .name = "Celsius" }), + | ^~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27953:28: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27953 | .symbol = "°C" }); + | ^ +../src/flecs/distr/flecs.c:27950:61: error: taking address of rvalue [-fpermissive] +27950 | EcsCelsius = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27951 | .entity = ecs_entity(world, { .name = "Celsius" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27952 | .quantity = EcsTemperature, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27953 | .symbol = "°C" }); + | ~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27954:58: error: taking address of rvalue [-fpermissive] +27954 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27955 | .entity = EcsCelsius, + | ~~~~~~~~~~~~~~~~~~~~~ +27956 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27957 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27959:41: error: taking address of rvalue [-fpermissive] +27959 | .entity = ecs_entity(world, { .name = "Fahrenheit" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27961:27: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27961 | .symbol = "F" }); + | ^ +../src/flecs/distr/flecs.c:27958:64: error: taking address of rvalue [-fpermissive] +27958 | EcsFahrenheit = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27959 | .entity = ecs_entity(world, { .name = "Fahrenheit" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27960 | .quantity = EcsTemperature, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27961 | .symbol = "F" }); + | ~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27962:58: error: taking address of rvalue [-fpermissive] +27962 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27963 | .entity = EcsFahrenheit, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +27964 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +27965 | }); + | ~ +../src/flecs/distr/flecs.c:27970:60: error: taking address of rvalue [-fpermissive] +27970 | EcsData = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +27971 | .name = "Data" }); + | ~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27975:41: error: taking address of rvalue [-fpermissive] +27975 | .entity = ecs_entity(world, { .name = "Bits" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27977:29: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +27977 | .symbol = "bit" }); + | ^ +../src/flecs/distr/flecs.c:27974:58: error: taking address of rvalue [-fpermissive] +27974 | EcsBits = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27975 | .entity = ecs_entity(world, { .name = "Bits" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27976 | .quantity = EcsData, + | ~~~~~~~~~~~~~~~~~~~~ +27977 | .symbol = "bit" }); + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27978:58: error: taking address of rvalue [-fpermissive] +27978 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27979 | .entity = EcsBits, + | ~~~~~~~~~~~~~~~~~~ +27980 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +27981 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27984:45: error: taking address of rvalue [-fpermissive] +27984 | .entity = ecs_entity(world, { .name = "KiloBits" }), + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27983:66: error: taking address of rvalue [-fpermissive] +27983 | EcsKiloBits = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27984 | .entity = ecs_entity(world, { .name = "KiloBits" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27985 | .quantity = EcsData, + | ~~~~~~~~~~~~~~~~~~~~ +27986 | .base = EcsBits, + | ~~~~~~~~~~~~~~~~ +27987 | .prefix = EcsKilo }); + | ~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27988:62: error: taking address of rvalue [-fpermissive] +27988 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27989 | .entity = EcsKiloBits, + | ~~~~~~~~~~~~~~~~~~~~~~ +27990 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +27991 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:27994:45: error: taking address of rvalue [-fpermissive] +27994 | .entity = ecs_entity(world, { .name = "MegaBits" }), + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:27993:66: error: taking address of rvalue [-fpermissive] +27993 | EcsMegaBits = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +27994 | .entity = ecs_entity(world, { .name = "MegaBits" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +27995 | .quantity = EcsData, + | ~~~~~~~~~~~~~~~~~~~~ +27996 | .base = EcsBits, + | ~~~~~~~~~~~~~~~~ +27997 | .prefix = EcsMega }); + | ~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:27998:62: error: taking address of rvalue [-fpermissive] +27998 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +27999 | .entity = EcsMegaBits, + | ~~~~~~~~~~~~~~~~~~~~~~ +28000 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28001 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28004:45: error: taking address of rvalue [-fpermissive] +28004 | .entity = ecs_entity(world, { .name = "GigaBits" }), + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28003:66: error: taking address of rvalue [-fpermissive] +28003 | EcsGigaBits = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28004 | .entity = ecs_entity(world, { .name = "GigaBits" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28005 | .quantity = EcsData, + | ~~~~~~~~~~~~~~~~~~~~ +28006 | .base = EcsBits, + | ~~~~~~~~~~~~~~~~ +28007 | .prefix = EcsGiga }); + | ~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28008:62: error: taking address of rvalue [-fpermissive] +28008 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28009 | .entity = EcsGigaBits, + | ~~~~~~~~~~~~~~~~~~~~~~ +28010 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28011 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28014:41: error: taking address of rvalue [-fpermissive] +28014 | .entity = ecs_entity(world, { .name = "Bytes" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28018:56: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +28018 | .translation = { .factor = 8, .power = 1 } }); + | ^ +../src/flecs/distr/flecs.c:28013:59: error: taking address of rvalue [-fpermissive] +28013 | EcsBytes = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28014 | .entity = ecs_entity(world, { .name = "Bytes" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28015 | .quantity = EcsData, + | ~~~~~~~~~~~~~~~~~~~~ +28016 | .symbol = "B", + | ~~~~~~~~~~~~~~ +28017 | .base = EcsBits, + | ~~~~~~~~~~~~~~~~ +28018 | .translation = { .factor = 8, .power = 1 } }); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28019:58: error: taking address of rvalue [-fpermissive] +28019 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28020 | .entity = EcsBytes, + | ~~~~~~~~~~~~~~~~~~~ +28021 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28022 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28025:45: error: taking address of rvalue [-fpermissive] +28025 | .entity = ecs_entity(world, { .name = "KiloBytes" }), + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28024:67: error: taking address of rvalue [-fpermissive] +28024 | EcsKiloBytes = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28025 | .entity = ecs_entity(world, { .name = "KiloBytes" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28026 | .quantity = EcsData, + | ~~~~~~~~~~~~~~~~~~~~ +28027 | .base = EcsBytes, + | ~~~~~~~~~~~~~~~~~ +28028 | .prefix = EcsKilo }); + | ~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28029:62: error: taking address of rvalue [-fpermissive] +28029 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28030 | .entity = EcsKiloBytes, + | ~~~~~~~~~~~~~~~~~~~~~~~ +28031 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28032 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28035:45: error: taking address of rvalue [-fpermissive] +28035 | .entity = ecs_entity(world, { .name = "MegaBytes" }), + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28034:67: error: taking address of rvalue [-fpermissive] +28034 | EcsMegaBytes = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28035 | .entity = ecs_entity(world, { .name = "MegaBytes" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28036 | .quantity = EcsData, + | ~~~~~~~~~~~~~~~~~~~~ +28037 | .base = EcsBytes, + | ~~~~~~~~~~~~~~~~~ +28038 | .prefix = EcsMega }); + | ~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28039:62: error: taking address of rvalue [-fpermissive] +28039 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28040 | .entity = EcsMegaBytes, + | ~~~~~~~~~~~~~~~~~~~~~~~ +28041 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28042 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28045:45: error: taking address of rvalue [-fpermissive] +28045 | .entity = ecs_entity(world, { .name = "GigaBytes" }), + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28044:67: error: taking address of rvalue [-fpermissive] +28044 | EcsGigaBytes = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28045 | .entity = ecs_entity(world, { .name = "GigaBytes" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28046 | .quantity = EcsData, + | ~~~~~~~~~~~~~~~~~~~~ +28047 | .base = EcsBytes, + | ~~~~~~~~~~~~~~~~~ +28048 | .prefix = EcsGiga }); + | ~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28049:62: error: taking address of rvalue [-fpermissive] +28049 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28050 | .entity = EcsGigaBytes, + | ~~~~~~~~~~~~~~~~~~~~~~~ +28051 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28052 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28055:45: error: taking address of rvalue [-fpermissive] +28055 | .entity = ecs_entity(world, { .name = "KibiBytes" }), + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28054:67: error: taking address of rvalue [-fpermissive] +28054 | EcsKibiBytes = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28055 | .entity = ecs_entity(world, { .name = "KibiBytes" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28056 | .quantity = EcsData, + | ~~~~~~~~~~~~~~~~~~~~ +28057 | .base = EcsBytes, + | ~~~~~~~~~~~~~~~~~ +28058 | .prefix = EcsKibi }); + | ~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28059:62: error: taking address of rvalue [-fpermissive] +28059 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28060 | .entity = EcsKibiBytes, + | ~~~~~~~~~~~~~~~~~~~~~~~ +28061 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28062 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28065:45: error: taking address of rvalue [-fpermissive] +28065 | .entity = ecs_entity(world, { .name = "MebiBytes" }), + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28064:67: error: taking address of rvalue [-fpermissive] +28064 | EcsMebiBytes = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28065 | .entity = ecs_entity(world, { .name = "MebiBytes" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28066 | .quantity = EcsData, + | ~~~~~~~~~~~~~~~~~~~~ +28067 | .base = EcsBytes, + | ~~~~~~~~~~~~~~~~~ +28068 | .prefix = EcsMebi }); + | ~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28069:62: error: taking address of rvalue [-fpermissive] +28069 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28070 | .entity = EcsMebiBytes, + | ~~~~~~~~~~~~~~~~~~~~~~~ +28071 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28072 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28075:45: error: taking address of rvalue [-fpermissive] +28075 | .entity = ecs_entity(world, { .name = "GibiBytes" }), + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28074:67: error: taking address of rvalue [-fpermissive] +28074 | EcsGibiBytes = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28075 | .entity = ecs_entity(world, { .name = "GibiBytes" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28076 | .quantity = EcsData, + | ~~~~~~~~~~~~~~~~~~~~ +28077 | .base = EcsBytes, + | ~~~~~~~~~~~~~~~~~ +28078 | .prefix = EcsGibi }); + | ~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28079:62: error: taking address of rvalue [-fpermissive] +28079 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28080 | .entity = EcsGibiBytes, + | ~~~~~~~~~~~~~~~~~~~~~~~ +28081 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28082 | }); + | ~ +../src/flecs/distr/flecs.c:28088:64: error: taking address of rvalue [-fpermissive] +28088 | EcsDataRate = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +28089 | .name = "DataRate" }); + | ~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28093:41: error: taking address of rvalue [-fpermissive] +28093 | .entity = ecs_entity(world, { .name = "BitsPerSecond" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28092:67: error: taking address of rvalue [-fpermissive] +28092 | EcsBitsPerSecond = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28093 | .entity = ecs_entity(world, { .name = "BitsPerSecond" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28094 | .quantity = EcsDataRate, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +28095 | .base = EcsBits, + | ~~~~~~~~~~~~~~~~ +28096 | .over = EcsSeconds }); + | ~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28097:58: error: taking address of rvalue [-fpermissive] +28097 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28098 | .entity = EcsBitsPerSecond, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28099 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28100 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28103:45: error: taking address of rvalue [-fpermissive] +28103 | .entity = ecs_entity(world, { .name = "KiloBitsPerSecond" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28102:75: error: taking address of rvalue [-fpermissive] +28102 | EcsKiloBitsPerSecond = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28103 | .entity = ecs_entity(world, { .name = "KiloBitsPerSecond" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28104 | .quantity = EcsDataRate, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +28105 | .base = EcsKiloBits, + | ~~~~~~~~~~~~~~~~~~~~ +28106 | .over = EcsSeconds + | ~~~~~~~~~~~~~~~~~~ +28107 | }); + | ~ +../src/flecs/distr/flecs.c:28108:62: error: taking address of rvalue [-fpermissive] +28108 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28109 | .entity = EcsKiloBitsPerSecond, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28110 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28111 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28114:45: error: taking address of rvalue [-fpermissive] +28114 | .entity = ecs_entity(world, { .name = "MegaBitsPerSecond" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28113:75: error: taking address of rvalue [-fpermissive] +28113 | EcsMegaBitsPerSecond = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28114 | .entity = ecs_entity(world, { .name = "MegaBitsPerSecond" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28115 | .quantity = EcsDataRate, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +28116 | .base = EcsMegaBits, + | ~~~~~~~~~~~~~~~~~~~~ +28117 | .over = EcsSeconds + | ~~~~~~~~~~~~~~~~~~ +28118 | }); + | ~ +../src/flecs/distr/flecs.c:28119:62: error: taking address of rvalue [-fpermissive] +28119 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28120 | .entity = EcsMegaBitsPerSecond, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28121 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28122 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28125:45: error: taking address of rvalue [-fpermissive] +28125 | .entity = ecs_entity(world, { .name = "GigaBitsPerSecond" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28124:75: error: taking address of rvalue [-fpermissive] +28124 | EcsGigaBitsPerSecond = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28125 | .entity = ecs_entity(world, { .name = "GigaBitsPerSecond" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28126 | .quantity = EcsDataRate, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +28127 | .base = EcsGigaBits, + | ~~~~~~~~~~~~~~~~~~~~ +28128 | .over = EcsSeconds + | ~~~~~~~~~~~~~~~~~~ +28129 | }); + | ~ +../src/flecs/distr/flecs.c:28130:62: error: taking address of rvalue [-fpermissive] +28130 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28131 | .entity = EcsGigaBitsPerSecond, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28132 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28133 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28136:41: error: taking address of rvalue [-fpermissive] +28136 | .entity = ecs_entity(world, { .name = "BytesPerSecond" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28135:68: error: taking address of rvalue [-fpermissive] +28135 | EcsBytesPerSecond = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28136 | .entity = ecs_entity(world, { .name = "BytesPerSecond" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28137 | .quantity = EcsDataRate, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +28138 | .base = EcsBytes, + | ~~~~~~~~~~~~~~~~~ +28139 | .over = EcsSeconds }); + | ~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28140:58: error: taking address of rvalue [-fpermissive] +28140 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28141 | .entity = EcsBytesPerSecond, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28142 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28143 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28146:45: error: taking address of rvalue [-fpermissive] +28146 | .entity = ecs_entity(world, { .name = "KiloBytesPerSecond" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28145:76: error: taking address of rvalue [-fpermissive] +28145 | EcsKiloBytesPerSecond = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28146 | .entity = ecs_entity(world, { .name = "KiloBytesPerSecond" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28147 | .quantity = EcsDataRate, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +28148 | .base = EcsKiloBytes, + | ~~~~~~~~~~~~~~~~~~~~~ +28149 | .over = EcsSeconds + | ~~~~~~~~~~~~~~~~~~ +28150 | }); + | ~ +../src/flecs/distr/flecs.c:28151:62: error: taking address of rvalue [-fpermissive] +28151 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28152 | .entity = EcsKiloBytesPerSecond, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28153 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28154 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28157:45: error: taking address of rvalue [-fpermissive] +28157 | .entity = ecs_entity(world, { .name = "MegaBytesPerSecond" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28156:76: error: taking address of rvalue [-fpermissive] +28156 | EcsMegaBytesPerSecond = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28157 | .entity = ecs_entity(world, { .name = "MegaBytesPerSecond" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28158 | .quantity = EcsDataRate, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +28159 | .base = EcsMegaBytes, + | ~~~~~~~~~~~~~~~~~~~~~ +28160 | .over = EcsSeconds + | ~~~~~~~~~~~~~~~~~~ +28161 | }); + | ~ +../src/flecs/distr/flecs.c:28162:62: error: taking address of rvalue [-fpermissive] +28162 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28163 | .entity = EcsMegaBytesPerSecond, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28164 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28165 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28168:45: error: taking address of rvalue [-fpermissive] +28168 | .entity = ecs_entity(world, { .name = "GigaBytesPerSecond" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28167:76: error: taking address of rvalue [-fpermissive] +28167 | EcsGigaBytesPerSecond = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28168 | .entity = ecs_entity(world, { .name = "GigaBytesPerSecond" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28169 | .quantity = EcsDataRate, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +28170 | .base = EcsGigaBytes, + | ~~~~~~~~~~~~~~~~~~~~~ +28171 | .over = EcsSeconds + | ~~~~~~~~~~~~~~~~~~ +28172 | }); + | ~ +../src/flecs/distr/flecs.c:28173:62: error: taking address of rvalue [-fpermissive] +28173 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28174 | .entity = EcsGigaBytesPerSecond, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28175 | .kind = EcsU64 + | ~~~~~~~~~~~~~~ +28176 | }); + | ~ +../src/flecs/distr/flecs.c:28182:66: error: taking address of rvalue [-fpermissive] +28182 | EcsPercentage = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +28183 | .name = "Percentage" }); + | ~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28184:44: error: taking address of rvalue [-fpermissive] +28184 | ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28185 | .entity = EcsPercentage, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +28186 | .symbol = "%" + | ~~~~~~~~~~~~~ +28187 | }); + | ~ +../src/flecs/distr/flecs.c:28188:54: error: taking address of rvalue [-fpermissive] +28188 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28189 | .entity = EcsPercentage, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +28190 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +28191 | }); + | ~ +../src/flecs/distr/flecs.c:28195:61: error: taking address of rvalue [-fpermissive] +28195 | EcsAngle = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +28196 | .name = "Angle" }); + | ~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28199:41: error: taking address of rvalue [-fpermissive] +28199 | .entity = ecs_entity(world, { .name = "Radians" }), + | ^~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28201:29: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +28201 | .symbol = "rad" }); + | ^ +../src/flecs/distr/flecs.c:28198:61: error: taking address of rvalue [-fpermissive] +28198 | EcsRadians = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28199 | .entity = ecs_entity(world, { .name = "Radians" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28200 | .quantity = EcsAngle, + | ~~~~~~~~~~~~~~~~~~~~~ +28201 | .symbol = "rad" }); + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28202:58: error: taking address of rvalue [-fpermissive] +28202 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28203 | .entity = EcsRadians, + | ~~~~~~~~~~~~~~~~~~~~~ +28204 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +28205 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28208:41: error: taking address of rvalue [-fpermissive] +28208 | .entity = ecs_entity(world, { .name = "Degrees" }), + | ^~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28210:27: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +28210 | .symbol = "°" }); + | ^ +../src/flecs/distr/flecs.c:28207:61: error: taking address of rvalue [-fpermissive] +28207 | EcsDegrees = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28208 | .entity = ecs_entity(world, { .name = "Degrees" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28209 | .quantity = EcsAngle, + | ~~~~~~~~~~~~~~~~~~~~~ +28210 | .symbol = "°" }); + | ~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28211:58: error: taking address of rvalue [-fpermissive] +28211 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28212 | .entity = EcsDegrees, + | ~~~~~~~~~~~~~~~~~~~~~ +28213 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +28214 | }); + | ~ +../src/flecs/distr/flecs.c:28219:61: error: taking address of rvalue [-fpermissive] +28219 | EcsColor = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +28220 | .name = "Color" }); + | ~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28223:41: error: taking address of rvalue [-fpermissive] +28223 | .entity = ecs_entity(world, { .name = "Rgb" }), + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28222:62: error: taking address of rvalue [-fpermissive] +28222 | EcsColorRgb = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28223 | .entity = ecs_entity(world, { .name = "Rgb" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28224 | .quantity = EcsColor }); + | ~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28227:41: error: taking address of rvalue [-fpermissive] +28227 | .entity = ecs_entity(world, { .name = "Hsl" }), + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28226:62: error: taking address of rvalue [-fpermissive] +28226 | EcsColorHsl = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28227 | .entity = ecs_entity(world, { .name = "Hsl" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28228 | .quantity = EcsColor }); + | ~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28231:41: error: taking address of rvalue [-fpermissive] +28231 | .entity = ecs_entity(world, { .name = "Css" }), + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28230:62: error: taking address of rvalue [-fpermissive] +28230 | EcsColorCss = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28231 | .entity = ecs_entity(world, { .name = "Css" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28232 | .quantity = EcsColor }); + | ~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28233:58: error: taking address of rvalue [-fpermissive] +28233 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28234 | .entity = EcsColorCss, + | ~~~~~~~~~~~~~~~~~~~~~~ +28235 | .kind = EcsString + | ~~~~~~~~~~~~~~~~~ +28236 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28243:37: error: taking address of rvalue [-fpermissive] +28243 | .entity = ecs_entity(world, { .name = "Bel" }), + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28242:53: error: taking address of rvalue [-fpermissive] +28242 | EcsBel = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28243 | .entity = ecs_entity(world, { .name = "Bel" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28244 | .symbol = "B" }); + | ~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28245:54: error: taking address of rvalue [-fpermissive] +28245 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28246 | .entity = EcsBel, + | ~~~~~~~~~~~~~~~~~ +28247 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +28248 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28250:37: error: taking address of rvalue [-fpermissive] +28250 | .entity = ecs_entity(world, { .name = "DeciBel" }), + | ^~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28252:24: error: designator order for field ‘ecs_unit_desc_t::base’ does not match declaration order in ‘ecs_unit_desc_t’ +28252 | .base = EcsBel }); + | ^ +../src/flecs/distr/flecs.c:28249:57: error: taking address of rvalue [-fpermissive] +28249 | EcsDeciBel = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28250 | .entity = ecs_entity(world, { .name = "DeciBel" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28251 | .prefix = EcsDeci, + | ~~~~~~~~~~~~~~~~~~ +28252 | .base = EcsBel }); + | ~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28253:54: error: taking address of rvalue [-fpermissive] +28253 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28254 | .entity = EcsDeciBel, + | ~~~~~~~~~~~~~~~~~~~~~ +28255 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +28256 | }); + | ~ +../src/flecs/distr/flecs.c:28260:65: error: taking address of rvalue [-fpermissive] +28260 | EcsFrequency = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +28261 | .name = "Frequency" }); + | ~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28265:41: error: taking address of rvalue [-fpermissive] +28265 | .entity = ecs_entity(world, { .name = "Hertz" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28267:28: error: designator order for field ‘ecs_unit_desc_t::symbol’ does not match declaration order in ‘ecs_unit_desc_t’ +28267 | .symbol = "Hz" }); + | ^ +../src/flecs/distr/flecs.c:28264:59: error: taking address of rvalue [-fpermissive] +28264 | EcsHertz = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28265 | .entity = ecs_entity(world, { .name = "Hertz" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28266 | .quantity = EcsFrequency, + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +28267 | .symbol = "Hz" }); + | ~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28268:58: error: taking address of rvalue [-fpermissive] +28268 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28269 | .entity = EcsHertz, + | ~~~~~~~~~~~~~~~~~~~ +28270 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +28271 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28274:41: error: taking address of rvalue [-fpermissive] +28274 | .entity = ecs_entity(world, { .name = "KiloHertz" }), + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28276:30: error: designator order for field ‘ecs_unit_desc_t::base’ does not match declaration order in ‘ecs_unit_desc_t’ +28276 | .base = EcsHertz }); + | ^ +../src/flecs/distr/flecs.c:28273:63: error: taking address of rvalue [-fpermissive] +28273 | EcsKiloHertz = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28274 | .entity = ecs_entity(world, { .name = "KiloHertz" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28275 | .prefix = EcsKilo, + | ~~~~~~~~~~~~~~~~~~ +28276 | .base = EcsHertz }); + | ~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28277:58: error: taking address of rvalue [-fpermissive] +28277 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28278 | .entity = EcsKiloHertz, + | ~~~~~~~~~~~~~~~~~~~~~~~ +28279 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +28280 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28283:41: error: taking address of rvalue [-fpermissive] +28283 | .entity = ecs_entity(world, { .name = "MegaHertz" }), + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28285:30: error: designator order for field ‘ecs_unit_desc_t::base’ does not match declaration order in ‘ecs_unit_desc_t’ +28285 | .base = EcsHertz }); + | ^ +../src/flecs/distr/flecs.c:28282:63: error: taking address of rvalue [-fpermissive] +28282 | EcsMegaHertz = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28283 | .entity = ecs_entity(world, { .name = "MegaHertz" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28284 | .prefix = EcsMega, + | ~~~~~~~~~~~~~~~~~~ +28285 | .base = EcsHertz }); + | ~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28286:58: error: taking address of rvalue [-fpermissive] +28286 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28287 | .entity = EcsMegaHertz, + | ~~~~~~~~~~~~~~~~~~~~~~~ +28288 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +28289 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28292:41: error: taking address of rvalue [-fpermissive] +28292 | .entity = ecs_entity(world, { .name = "GigaHertz" }), + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28294:30: error: designator order for field ‘ecs_unit_desc_t::base’ does not match declaration order in ‘ecs_unit_desc_t’ +28294 | .base = EcsHertz }); + | ^ +../src/flecs/distr/flecs.c:28291:63: error: taking address of rvalue [-fpermissive] +28291 | EcsGigaHertz = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28292 | .entity = ecs_entity(world, { .name = "GigaHertz" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28293 | .prefix = EcsGiga, + | ~~~~~~~~~~~~~~~~~~ +28294 | .base = EcsHertz }); + | ~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28295:58: error: taking address of rvalue [-fpermissive] +28295 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28296 | .entity = EcsGigaHertz, + | ~~~~~~~~~~~~~~~~~~~~~~~ +28297 | .kind = EcsF32 + | ~~~~~~~~~~~~~~ +28298 | }); + | ~ +../src/flecs/distr/flecs.c:28301:59: error: taking address of rvalue [-fpermissive] +28301 | EcsUri = ecs_quantity_init(world, &(ecs_entity_desc_t){ + | ^ +28302 | .name = "Uri" }); + | ~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28306:41: error: taking address of rvalue [-fpermissive] +28306 | .entity = ecs_entity(world, { .name = "Hyperlink" }), + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28305:66: error: taking address of rvalue [-fpermissive] +28305 | EcsUriHyperlink = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28306 | .entity = ecs_entity(world, { .name = "Hyperlink" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28307 | .quantity = EcsUri }); + | ~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28308:58: error: taking address of rvalue [-fpermissive] +28308 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28309 | .entity = EcsUriHyperlink, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +28310 | .kind = EcsString + | ~~~~~~~~~~~~~~~~~ +28311 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28314:41: error: taking address of rvalue [-fpermissive] +28314 | .entity = ecs_entity(world, { .name = "Image" }), + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28313:62: error: taking address of rvalue [-fpermissive] +28313 | EcsUriImage = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28314 | .entity = ecs_entity(world, { .name = "Image" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28315 | .quantity = EcsUri }); + | ~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28316:58: error: taking address of rvalue [-fpermissive] +28316 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28317 | .entity = EcsUriImage, + | ~~~~~~~~~~~~~~~~~~~~~~ +28318 | .kind = EcsString + | ~~~~~~~~~~~~~~~~~ +28319 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:28322:41: error: taking address of rvalue [-fpermissive] +28322 | .entity = ecs_entity(world, { .name = "File" }), + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28321:61: error: taking address of rvalue [-fpermissive] +28321 | EcsUriFile = ecs_unit_init(world, &(ecs_unit_desc_t){ + | ^ +28322 | .entity = ecs_entity(world, { .name = "File" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +28323 | .quantity = EcsUri }); + | ~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28324:58: error: taking address of rvalue [-fpermissive] +28324 | ecs_primitive_init(world, &(ecs_primitive_desc_t){ + | ^ +28325 | .entity = EcsUriFile, + | ~~~~~~~~~~~~~~~~~~~~~ +28326 | .kind = EcsString + | ~~~~~~~~~~~~~~~~~ +28327 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘char* flecs_strdup(ecs_allocator_t*, const char*)’: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2003:36: note: in expansion of macro ‘flecs_alloc’ + 2003 | #define flecs_alloc_n(a, T, count) flecs_alloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:28470:20: note: in expansion of macro ‘flecs_alloc_n’ +28470 | char *result = flecs_alloc_n(a, char, len + 1); + | ^~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void ensure(ecs_bitset_t*, ecs_size_t)’: +../src/flecs/distr/flecs.h:2616:47: error: invalid conversion from ‘void*’ to ‘uint64_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 2616 | #define ecs_os_calloc(size) ecs_os_api.calloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:28515:20: note: in expansion of macro ‘ecs_os_calloc’ +28515 | bs->data = ecs_os_calloc(new_size); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2613:54: error: invalid conversion from ‘void*’ to ‘uint64_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 2613 | #define ecs_os_realloc(ptr, size) ecs_os_api.realloc_(ptr, size) + | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:28520:20: note: in expansion of macro ‘ecs_os_realloc’ +28520 | bs->data = ecs_os_realloc(bs->data, new_size); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_bitset_set(ecs_bitset_t*, int32_t, bool)’: +../src/flecs/distr/flecs.c:28569:1: error: jump to label ‘error’ +28569 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28564:5: note: in expansion of macro ‘ecs_check’ +28564 | ecs_check(elem < bs->count, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:28567:14: note: crosses initialization of ‘uint64_t v’ +28567 | uint64_t v = bs->data[hi]; + | ^ +../src/flecs/distr/flecs.c:28566:14: note: crosses initialization of ‘uint32_t lo’ +28566 | uint32_t lo = ((uint32_t)elem) & 0x3F; + | ^~ +../src/flecs/distr/flecs.c:28565:14: note: crosses initialization of ‘uint32_t hi’ +28565 | uint32_t hi = ((uint32_t)elem) >> 6; + | ^~ +../src/flecs/distr/flecs.c: In function ‘void flecs_bitset_remove(ecs_bitset_t*, int32_t)’: +../src/flecs/distr/flecs.c:28599:1: error: jump to label ‘error’ +28599 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28593:5: note: in expansion of macro ‘ecs_check’ +28593 | ecs_check(elem < bs->count, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:28595:10: note: crosses initialization of ‘bool last_value’ +28595 | bool last_value = flecs_bitset_get(bs, last); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:28594:13: note: crosses initialization of ‘int32_t last’ +28594 | int32_t last = bs->count - 1; + | ^~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_bitset_swap(ecs_bitset_t*, int32_t, int32_t)’: +../src/flecs/distr/flecs.c:28615:1: error: jump to label ‘error’ +28615 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28609:5: note: in expansion of macro ‘ecs_check’ +28609 | ecs_check(elem_b < bs->count, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:28612:10: note: crosses initialization of ‘bool b’ +28612 | bool b = flecs_bitset_get(bs, elem_b); + | ^ +../src/flecs/distr/flecs.c:28611:10: note: crosses initialization of ‘bool a’ +28611 | bool a = flecs_bitset_get(bs, elem_a); + | ^ +../src/flecs/distr/flecs.c:28615:1: error: jump to label ‘error’ +28615 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:28608:5: note: in expansion of macro ‘ecs_check’ +28608 | ecs_check(elem_a < bs->count, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:28612:10: note: crosses initialization of ‘bool b’ +28612 | bool b = flecs_bitset_get(bs, elem_b); + | ^ +../src/flecs/distr/flecs.c:28611:10: note: crosses initialization of ‘bool a’ +28611 | bool a = flecs_bitset_get(bs, elem_a); + | ^ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_block_allocator_chunk_header_t* flecs_balloc_block(ecs_block_allocator_t*)’: +../src/flecs/distr/flecs.h:2607:47: error: invalid conversion from ‘void*’ to ‘ecs_block_allocator_block_t*’ [-fpermissive] + 2607 | #define ecs_os_malloc(size) ecs_os_api.malloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:28646:9: note: in expansion of macro ‘ecs_os_malloc’ +28646 | ecs_os_malloc(ECS_SIZEOF(ecs_block_allocator_block_t) + + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_block_allocator_chunk_header_t*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:28648:55: note: in expansion of macro ‘ECS_OFFSET’ +28648 | ecs_block_allocator_chunk_header_t *first_chunk = ECS_OFFSET(block, + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_block_allocator_chunk_header_t*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:28666:23: note: in expansion of macro ‘ECS_OFFSET’ +28666 | chunk->next = ECS_OFFSET(chunk, allocator->chunk_size); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_bfree_w_dbg_info(ecs_block_allocator_t*, void*, const char*)’: +../src/flecs/distr/flecs.c:28826:49: error: invalid conversion from ‘void*’ to ‘ecs_block_allocator_chunk_header_t*’ [-fpermissive] +28826 | ecs_block_allocator_chunk_header_t *chunk = memory; + | ^~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_hashmap_fini(ecs_hashmap_t*)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_hm_bucket_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:29094:35: note: in expansion of macro ‘ecs_map_ptr’ +29094 | ecs_hm_bucket_t *bucket = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_hashmap_copy(ecs_hashmap_t*, const ecs_hashmap_t*)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_map_data_t*’ {aka ‘long unsigned int*’} to type ‘ecs_hm_bucket_t**’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:1862:29: note: in expansion of macro ‘ECS_CAST’ + 1862 | #define ecs_map_ref(it, T) (ECS_CAST(T**, &((it)->res[1]))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:29119:40: note: in expansion of macro ‘ecs_map_ref’ +29119 | ecs_hm_bucket_t **bucket_ptr = ecs_map_ref(&it, ecs_hm_bucket_t); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:29121:51: error: invalid conversion from ‘void*’ to ‘ecs_hm_bucket_t*’ [-fpermissive] +29121 | ecs_hm_bucket_t *dst_bucket = flecs_balloc(&dst->bucket_allocator); + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘flecs_hashmap_result_t flecs_hashmap_ensure_(ecs_hashmap_t*, ecs_size_t, const void*, ecs_size_t)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_map_val_t*’ {aka ‘long unsigned int*’} to type ‘ecs_hm_bucket_t**’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:1852:37: note: in expansion of macro ‘ECS_CAST’ + 1852 | #define ecs_map_ensure_ref(m, T, k) ECS_CAST(T**, ecs_map_ensure(m, k)) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:29162:27: note: in expansion of macro ‘ecs_map_ensure_ref’ +29162 | ecs_hm_bucket_t **r = ecs_map_ensure_ref(&map->impl, ecs_hm_bucket_t, hash); + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:29165:38: error: invalid conversion from ‘void*’ to ‘ecs_hm_bucket_t*’ [-fpermissive] +29165 | bucket = r[0] = flecs_bcalloc(&map->bucket_allocator); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_hm_bucket_remove(ecs_hashmap_t*, ecs_hm_bucket_t*, uint64_t, int32_t)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_hm_bucket_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ^ + | | + | void* +../src/flecs/distr/flecs.h:1857:35: note: in expansion of macro ‘ECS_PTR_CAST’ + 1857 | #define ecs_map_remove_ptr(m, k) (ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, (ecs_map_remove(m, k))))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:29232:30: note: in expansion of macro ‘ecs_map_remove_ptr’ +29232 | ecs_hm_bucket_t *b = ecs_map_remove_ptr(&map->impl, hash); + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void* flecs_hashmap_next_(flecs_hashmap_iter_t*, ecs_size_t, void*, ecs_size_t)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_hm_bucket_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:29294:31: note: in expansion of macro ‘ecs_map_ptr’ +29294 | bucket = it->bucket = ecs_map_ptr(&it->it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_map_val_t* flecs_map_bucket_add(ecs_block_allocator_t*, ecs_bucket_t*, ecs_map_key_t)’: +../src/flecs/distr/flecs.c:29380:49: error: invalid conversion from ‘void*’ to ‘ecs_bucket_entry_t*’ [-fpermissive] +29380 | ecs_bucket_entry_t *new_entry = flecs_balloc(allocator); + | ~~~~~~~~~~~~^~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_map_rehash(ecs_map_t*, int32_t)’: +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_bucket_t*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:3948:36: note: in expansion of macro ‘ECS_OFFSET’ + 3948 | #define ECS_ELEM(ptr, size, index) ECS_OFFSET(ptr, (size) * (index)) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:3949:33: note: in expansion of macro ‘ECS_ELEM’ + 3949 | #define ECS_ELEM_T(o, T, index) ECS_ELEM(o, ECS_SIZEOF(T), index) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:29319:30: note: in expansion of macro ‘ECS_ELEM_T’ +29319 | #define ECS_BUCKET_END(b, c) ECS_ELEM_T(b, ecs_bucket_t, c) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:29454:54: note: in expansion of macro ‘ECS_BUCKET_END’ +29454 | ecs_bucket_t *buckets = map->buckets, *b, *end = ECS_BUCKET_END(buckets, old_count); + | ^~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:2005:44: error: invalid conversion from ‘void*’ to ‘ecs_bucket_t*’ [-fpermissive] + 2005 | #define flecs_calloc(a, size) flecs_bcalloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2007:37: note: in expansion of macro ‘flecs_calloc’ + 2007 | #define flecs_calloc_n(a, T, count) flecs_calloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:29457:24: note: in expansion of macro ‘flecs_calloc_n’ +29457 | map->buckets = flecs_calloc_n(map->allocator, ecs_bucket_t, count); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_map_init(ecs_map_t*, ecs_allocator_t*)’: +../src/flecs/distr/flecs.c:29530:55: error: taking address of rvalue [-fpermissive] +29530 | ecs_map_init_w_params(result, &(ecs_map_params_t) { + | ^ +29531 | .allocator = allocator + | ~~~~~~~~~~~~~~~~~~~~~~ +29532 | }); + | ~ +../src/flecs/distr/flecs.c: In function ‘uint64_t flecs_name_index_hash(const void*)’: +../src/flecs/distr/flecs.c:29786:38: error: invalid conversion from ‘const void*’ to ‘const ecs_hashed_string_t*’ [-fpermissive] +29786 | const ecs_hashed_string_t *str = ptr; + | ^~~ + | | + | const void* +../src/flecs/distr/flecs.c: In function ‘int flecs_name_index_compare(const void*, const void*)’: +../src/flecs/distr/flecs.c:29796:39: error: invalid conversion from ‘const void*’ to ‘const ecs_hashed_string_t*’ [-fpermissive] +29796 | const ecs_hashed_string_t *str1 = ptr1; + | ^~~~ + | | + | const void* +../src/flecs/distr/flecs.c:29797:39: error: invalid conversion from ‘const void*’ to ‘const ecs_hashed_string_t*’ [-fpermissive] +29797 | const ecs_hashed_string_t *str2 = ptr2; + | ^~~~ + | | + | const void* +../src/flecs/distr/flecs.c: In function ‘ecs_hashmap_t* flecs_name_index_new(ecs_world_t*, ecs_allocator_t*)’: +../src/flecs/distr/flecs.c:29837:42: error: invalid conversion from ‘void*’ to ‘ecs_hashmap_t*’ [-fpermissive] +29837 | ecs_hashmap_t *result = flecs_bcalloc(&world->allocators.hashmap); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘ecs_hashmap_t* flecs_name_index_copy(ecs_hashmap_t*)’: +../src/flecs/distr/flecs.c:29861:42: error: invalid conversion from ‘void*’ to ‘ecs_hashmap_t*’ [-fpermissive] +29861 | ecs_hashmap_t *result = flecs_bcalloc(map->hashmap_allocator); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘const uint64_t* flecs_name_index_find_ptr(const ecs_hashmap_t*, const char*, ecs_size_t, uint64_t)’: +../src/flecs/distr/flecs.c:29903:46: error: invalid conversion from ‘void*’ to ‘ecs_hashed_string_t*’ [-fpermissive] +29903 | ecs_hashed_string_t *keys = ecs_vec_first(&b->keys); + | ~~~~~~~~~~~~~^~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_name_index_remove(ecs_hashmap_t*, uint64_t, uint64_t)’: +../src/flecs/distr/flecs.c:29947:34: error: invalid conversion from ‘void*’ to ‘uint64_t*’ {aka ‘long unsigned int*’} [-fpermissive] +29947 | uint64_t *ids = ecs_vec_first(&b->values); + | ~~~~~~~~~~~~~^~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_name_index_update_name(ecs_hashmap_t*, uint64_t, uint64_t, const char*)’: +../src/flecs/distr/flecs.c:29968:34: error: invalid conversion from ‘void*’ to ‘uint64_t*’ {aka ‘long unsigned int*’} [-fpermissive] +29968 | uint64_t *ids = ecs_vec_first(&b->values); + | ~~~~~~~~~~~~~^~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_name_index_ensure(ecs_hashmap_t*, uint64_t, const char*, ecs_size_t, uint64_t)’: +../src/flecs/distr/flecs.c:30010:1: error: jump to label ‘error’ +30010 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:29994:5: note: in expansion of macro ‘ecs_check’ +29994 | ecs_check(name != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:30007:28: note: crosses initialization of ‘flecs_hashmap_result_t hmr’ +30007 | flecs_hashmap_result_t hmr = flecs_hashmap_ensure( + | ^~~ +../src/flecs/distr/flecs.c:29998:14: note: crosses initialization of ‘uint64_t existing’ +29998 | uint64_t existing = flecs_name_index_find( + | ^~~~~~~~ +../src/flecs/distr/flecs.c:29996:25: note: crosses initialization of ‘ecs_hashed_string_t key’ +29996 | ecs_hashed_string_t key = flecs_get_hashed_string(name, length, hash); + | ^~~ +../src/flecs/distr/flecs.c: In function ‘ecs_page_t* flecs_sparse_page_new(ecs_sparse_t*, int32_t)’: +../src/flecs/distr/flecs.c:30057:25: error: invalid conversion from ‘void*’ to ‘int32_t*’ {aka ‘int*’} [-fpermissive] +30057 | result->sparse = ca ? flecs_bcalloc(ca) +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_stack_page_t* flecs_stack_page_new(uint32_t)’: +../src/flecs/distr/flecs.h:2607:47: error: invalid conversion from ‘void*’ to ‘ecs_stack_page_t*’ [-fpermissive] + 2607 | #define ecs_os_malloc(size) ecs_os_api.malloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:30746:32: note: in expansion of macro ‘ecs_os_malloc’ +30746 | ecs_stack_page_t *result = ecs_os_malloc( + | ^~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_stack_cursor_t* flecs_stack_get_cursor(ecs_stack_t*)’: +../src/flecs/distr/flecs.h:1635:22: error: invalid conversion from ‘void*’ to ‘ecs_stack_cursor_t*’ [-fpermissive] + 1635 | flecs_stack_alloc(stack, ECS_SIZEOF(T), ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:30824:34: note: in expansion of macro ‘flecs_stack_alloc_t’ +30824 | ecs_stack_cursor_t *result = flecs_stack_alloc_t(stack, ecs_stack_cursor_t); + | ^~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘char* ecs_strbuf_get(ecs_strbuf_t*)’: +../src/flecs/distr/flecs.h:2669:53: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive] + 2669 | #define ecs_os_memdup_n(ptr, T, count) ecs_os_memdup(ptr, ECS_SIZEOF(T) * count) + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:31371:18: note: in expansion of macro ‘ecs_os_memdup_n’ +31371 | result = ecs_os_memdup_n(result, char, b->length + 1); + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_switch_fini(ecs_switch_t*)’: +../src/flecs/distr/flecs.c:31605:45: error: invalid conversion from ‘void*’ to ‘ecs_switch_page_t*’ [-fpermissive] +31605 | ecs_switch_page_t *pages = ecs_vec_first(&sw->pages); + | ~~~~~~~~~~~~~^~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘ecs_vec_t ecs_vec_copy(ecs_allocator_t*, const ecs_vec_t*, ecs_size_t)’: +../src/flecs/distr/flecs.c:31827:5: error: designator order for field ‘ecs_vec_t::array’ does not match declaration order in ‘ecs_vec_t’ +31827 | }; + | ^ +../src/flecs/distr/flecs.c: In function ‘ecs_vec_t ecs_vec_copy_shrink(ecs_allocator_t*, const ecs_vec_t*, ecs_size_t)’: +../src/flecs/distr/flecs.c:31852:5: error: designator order for field ‘ecs_vec_t::array’ does not match declaration order in ‘ecs_vec_t’ +31852 | }; + | ^ +../src/flecs/distr/flecs.c: At global scope: +../src/flecs/distr/flecs.c:32067:1: sorry, unimplemented: non-trivial designated initializers not supported +32067 | }; + | ^ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int32_t ecs_query_find_var(const ecs_query_t*, const char*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:32075:30: note: in expansion of macro ‘flecs_query_impl’ +32075 | ecs_query_impl_t *impl = flecs_query_impl(q); + | ^~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘const char* ecs_query_var_name(const ecs_query_t*, int32_t)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:10810:11: note: in definition of macro ‘ecs_assert’ +10810 | if (!(condition)) {\ + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:32097:29: note: in expansion of macro ‘flecs_query_impl’ +32097 | ecs_assert(var_id < flecs_query_impl(q)->var_count, + | ^~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.h:713, + from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:32097:9: note: in expansion of macro ‘ecs_assert’ +32097 | ecs_assert(var_id < flecs_query_impl(q)->var_count, + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:32097:29: note: in expansion of macro ‘flecs_query_impl’ +32097 | ecs_assert(var_id < flecs_query_impl(q)->var_count, + | ^~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:32099:16: note: in expansion of macro ‘flecs_query_impl’ +32099 | return flecs_query_impl(q)->vars[var_id].name; + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_query_var_is_entity(const ecs_query_t*, int32_t)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:32111:12: note: in expansion of macro ‘flecs_query_impl’ +32111 | return flecs_query_impl(q)->vars[var_id].kind == EcsVarEntity; + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_query_create_cache(ecs_query_impl_t*, ecs_query_desc_t*)’: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘int8_t*’ {aka ‘signed char*’} [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2003:36: note: in expansion of macro ‘flecs_alloc’ + 2003 | #define flecs_alloc_n(a, T, count) flecs_alloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:32254:38: note: in expansion of macro ‘flecs_alloc_n’ +32254 | impl->cache->field_map = flecs_alloc_n(&impl->stage->allocator, + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_query_poly_fini(void*)’: +../src/flecs/distr/flecs.c:32331:22: error: invalid conversion from ‘void*’ to ‘ecs_query_impl_t*’ [-fpermissive] +32331 | flecs_query_fini(ptr); + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c:32268:23: note: initializing argument 1 of ‘void flecs_query_fini(ecs_query_impl_t*)’ +32268 | ecs_query_impl_t *impl) + | ~~~~~~~~~~~~~~~~~~^~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void ecs_query_fini(ecs_query_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:32360:26: note: in expansion of macro ‘flecs_query_impl’ +32360 | flecs_query_fini(flecs_query_impl(q)); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_query_t* ecs_query_init(ecs_world_t*, const ecs_query_desc_t*)’: +../src/flecs/distr/flecs.c:32370:45: error: invalid conversion from ‘void*’ to ‘ecs_query_impl_t*’ [-fpermissive] +32370 | ecs_query_impl_t *result = flecs_bcalloc(&stage->allocators.query_impl); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_query_count_t ecs_query_count(const ecs_query_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:32508:30: note: in expansion of macro ‘flecs_query_impl’ +32508 | ecs_query_impl_t *impl = flecs_query_impl(q); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_query_is_true(const ecs_query_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:32535:30: note: in expansion of macro ‘flecs_query_impl’ +32535 | ecs_query_impl_t *impl = flecs_query_impl(q); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int32_t ecs_query_match_count(const ecs_query_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:32549:30: note: in expansion of macro ‘flecs_query_impl’ +32549 | ecs_query_impl_t *impl = flecs_query_impl(q); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘const ecs_query_t* ecs_query_get_cache_query(const ecs_query_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:32560:30: note: in expansion of macro ‘flecs_query_impl’ +32560 | ecs_query_impl_t *impl = flecs_query_impl(q); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_query_plan_w_profile(const ecs_query_t*, const ecs_iter_t*, ecs_strbuf_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:32865:30: note: in expansion of macro ‘flecs_query_impl’ +32865 | ecs_query_impl_t *impl = flecs_query_impl(q); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘char* ecs_query_str(const ecs_query_t*)’: +../src/flecs/distr/flecs.c:33255:1: error: jump to label ‘error’ +33255 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:33229:5: note: in expansion of macro ‘ecs_check’ +33229 | ecs_check(q != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:33234:16: note: crosses initialization of ‘int32_t count’ +33234 | int32_t i, count = q->term_count; + | ^~~~~ +../src/flecs/distr/flecs.c:33233:23: note: crosses initialization of ‘const ecs_term_t* terms’ +33233 | const ecs_term_t *terms = q->terms; + | ^~~~~ +../src/flecs/distr/flecs.c:33232:18: note: crosses initialization of ‘ecs_strbuf_t buf’ +33232 | ecs_strbuf_t buf = ECS_STRBUF_INIT; + | ^~~ +../src/flecs/distr/flecs.c:33230:18: note: crosses initialization of ‘ecs_world_t* world’ +33230 | ecs_world_t *world = q->world; + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘int32_t flecs_query_pivot_term(const ecs_world_t*, const ecs_query_t*)’: +../src/flecs/distr/flecs.c:33304:1: error: jump to label ‘error’ +33304 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:33264:5: note: in expansion of macro ‘ecs_check’ +33264 | ecs_check(query != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:33268:46: note: crosses initialization of ‘int32_t self_pivot_term’ +33268 | int32_t pivot_term = -1, min_count = -1, self_pivot_term = -1; + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:33268:30: note: crosses initialization of ‘int32_t min_count’ +33268 | int32_t pivot_term = -1, min_count = -1, self_pivot_term = -1; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:33268:13: note: crosses initialization of ‘int32_t pivot_term’ +33268 | int32_t pivot_term = -1, min_count = -1, self_pivot_term = -1; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:33267:16: note: crosses initialization of ‘int32_t term_count’ +33267 | int32_t i, term_count = query->term_count; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:33266:23: note: crosses initialization of ‘const ecs_term_t* terms’ +33266 | const ecs_term_t *terms = query->terms; + | ^~~~~ +../src/flecs/distr/flecs.c:33304:1: error: jump to label ‘error’ +33304 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:33263:5: note: in expansion of macro ‘ecs_check’ +33263 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:33268:46: note: crosses initialization of ‘int32_t self_pivot_term’ +33268 | int32_t pivot_term = -1, min_count = -1, self_pivot_term = -1; + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:33268:30: note: crosses initialization of ‘int32_t min_count’ +33268 | int32_t pivot_term = -1, min_count = -1, self_pivot_term = -1; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:33268:13: note: crosses initialization of ‘int32_t pivot_term’ +33268 | int32_t pivot_term = -1, min_count = -1, self_pivot_term = -1; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:33267:16: note: crosses initialization of ‘int32_t term_count’ +33267 | int32_t i, term_count = query->term_count; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:33266:23: note: crosses initialization of ‘const ecs_term_t* terms’ +33266 | const ecs_term_t *terms = query->terms; + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_query_query_populate_terms(ecs_world_t*, ecs_stage_t*, ecs_query_t*, const ecs_query_desc_t*)’: +../src/flecs/distr/flecs.c:34794:13: error: expected primary-expression before ‘.’ token +34794 | .pub.world = world, + | ^ +../src/flecs/distr/flecs.c:34795:13: error: expected primary-expression before ‘.’ token +34795 | .pub.name = desc->entity ? ecs_get_name(world, desc->entity) : NULL, + | ^ +../src/flecs/distr/flecs.c:34796:13: error: expected primary-expression before ‘.’ token +34796 | .pub.code = expr + | ^ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2001:63: note: in definition of macro ‘flecs_alloc’ + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ^ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:34802:14: note: in expansion of macro ‘flecs_query_impl’ +34802 | &flecs_query_impl(q)->stage->allocator, script.token_buffer_size); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:34813:9: note: in expansion of macro ‘flecs_query_impl’ +34813 | flecs_query_impl(q)->tokens = script.token_buffer; + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:34814:9: note: in expansion of macro ‘flecs_query_impl’ +34814 | flecs_query_impl(q)->tokens_len = + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_query_populate_tokens(ecs_query_impl_t*)’: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:35046:24: note: in expansion of macro ‘flecs_alloc’ +35046 | impl->tokens = flecs_alloc(&impl->stage->allocator, len); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_query_finalize_query(ecs_world_t*, ecs_query_t*, const ecs_query_desc_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:35110:33: note: in expansion of macro ‘flecs_query_impl’ +35110 | flecs_query_populate_tokens(flecs_query_impl(q)); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:35113:1: error: jump to label ‘error’ +35113 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:35082:5: note: in expansion of macro ‘ecs_check’ +35082 | ecs_check(desc->_canary == 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:35084:18: note: crosses initialization of ‘ecs_stage_t* stage’ +35084 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:35113:1: error: jump to label ‘error’ +35113 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:35081:5: note: in expansion of macro ‘ecs_check’ +35081 | ecs_check(desc != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:35084:18: note: crosses initialization of ‘ecs_stage_t* stage’ +35084 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c:35113:1: error: jump to label ‘error’ +35113 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:35080:5: note: in expansion of macro ‘ecs_check’ +35080 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:35084:18: note: crosses initialization of ‘ecs_stage_t* stage’ +35084 | ecs_stage_t *stage = flecs_stage_from_world(&world); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_index_page_t* flecs_entity_index_ensure_page(ecs_entity_index_t*, uint32_t)’: +../src/flecs/distr/flecs.c:35133:41: error: invalid conversion from ‘void*’ to ‘ecs_entity_index_page_t*’ [-fpermissive] +35133 | page = *page_ptr = flecs_bcalloc(&index->page_allocator); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘ecs_record_t* flecs_entity_index_ensure(ecs_entity_index_t*, uint64_t)’: +../src/flecs/distr/flecs.c:35261:34: error: invalid conversion from ‘void*’ to ‘uint64_t*’ {aka ‘long unsigned int*’} [-fpermissive] +35261 | uint64_t *ids = ecs_vec_first(&index->dense); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_id_record_elem_t* flecs_id_record_elem(ecs_id_record_t*, ecs_id_record_elem_t*, ecs_id_record_t*)’: +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_id_record_elem_t*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:35493:12: note: in expansion of macro ‘ECS_OFFSET’ +35493 | return ECS_OFFSET(idr, (uintptr_t)list - (uintptr_t)head); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_id_record_init_sparse(ecs_world_t*, ecs_id_record_t*)’: +../src/flecs/distr/flecs.c:35610:36: error: invalid conversion from ‘void*’ to ‘ecs_sparse_t*’ [-fpermissive] +35610 | flecs_sparse_init(idr->sparse, NULL, NULL, idr->type_info->size); + | ~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:30265:19: note: initializing argument 1 of ‘void flecs_sparse_init(ecs_sparse_t*, ecs_allocator_t*, ecs_block_allocator_t*, ecs_size_t)’ +30265 | ecs_sparse_t *result, + | ~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c:35614:36: error: invalid conversion from ‘void*’ to ‘ecs_switch_t*’ [-fpermissive] +35614 | flecs_switch_init(idr->sparse, &world->allocator); + | ~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:31594:19: note: initializing argument 1 of ‘void flecs_switch_init(ecs_switch_t*, ecs_allocator_t*)’ +31594 | ecs_switch_t* sw, + | ~~~~~~~~~~~~~~^~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_id_record_fini_sparse(ecs_world_t*, ecs_id_record_t*)’: +../src/flecs/distr/flecs.c:35626:48: error: invalid conversion from ‘void*’ to ‘const ecs_sparse_t*’ [-fpermissive] +35626 | ecs_assert(flecs_sparse_count(idr->sparse) == 0, + | ~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:10810:11: note: in definition of macro ‘ecs_assert’ +10810 | if (!(condition)) {\ + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:30664:25: note: initializing argument 1 of ‘int32_t flecs_sparse_count(const ecs_sparse_t*)’ +30664 | const ecs_sparse_t *sparse) + | ~~~~~~~~~~~~~~~~~~~~^~~~~~ +In file included from ../src/flecs/distr/flecs.h:713, + from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:35626:48: error: invalid conversion from ‘void*’ to ‘const ecs_sparse_t*’ [-fpermissive] +35626 | ecs_assert(flecs_sparse_count(idr->sparse) == 0, + | ~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:35626:13: note: in expansion of macro ‘ecs_assert’ +35626 | ecs_assert(flecs_sparse_count(idr->sparse) == 0, + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:30664:25: note: initializing argument 1 of ‘int32_t flecs_sparse_count(const ecs_sparse_t*)’ +30664 | const ecs_sparse_t *sparse) + | ~~~~~~~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c:35628:36: error: invalid conversion from ‘void*’ to ‘ecs_sparse_t*’ [-fpermissive] +35628 | flecs_sparse_fini(idr->sparse); + | ~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:30308:19: note: initializing argument 1 of ‘void flecs_sparse_fini(ecs_sparse_t*)’ +30308 | ecs_sparse_t *sparse) + | ~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c:35632:36: error: invalid conversion from ‘void*’ to ‘ecs_switch_t*’ [-fpermissive] +35632 | flecs_switch_fini(idr->sparse); + | ~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:31602:19: note: initializing argument 1 of ‘void flecs_switch_fini(ecs_switch_t*)’ +31602 | ecs_switch_t* sw) + | ~~~~~~~~~~~~~~^~ +../src/flecs/distr/flecs.c: In function ‘ecs_id_record_t* flecs_id_record_new(ecs_world_t*, ecs_id_t)’: +../src/flecs/distr/flecs.c:35665:28: error: invalid conversion from ‘void*’ to ‘ecs_id_record_t*’ [-fpermissive] +35665 | idr = flecs_bcalloc(&world->allocators.id_record); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_id_record_release_tables(ecs_world_t*, ecs_id_record_t*)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:36024:22: note: in expansion of macro ‘flecs_table_cache_next’ +36024 | while ((tr = flecs_table_cache_next(&it, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_fini_id_records(ecs_world_t*)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_id_record_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:36139:40: note: in expansion of macro ‘ecs_map_ptr’ +36139 | flecs_id_record_release(world, ecs_map_ptr(&it)); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:36005:22: note: initializing argument 2 of ‘int32_t flecs_id_record_release(ecs_world_t*, ecs_id_record_t*)’ +36005 | ecs_id_record_t *idr) + | ~~~~~~~~~~~~~~~~~^~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_table_init_columns(ecs_world_t*, ecs_table_t*, int32_t)’: +../src/flecs/distr/flecs.h:2005:44: error: invalid conversion from ‘void*’ to ‘ecs_column_t*’ [-fpermissive] + 2005 | #define flecs_calloc(a, size) flecs_bcalloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2007:37: note: in expansion of macro ‘flecs_calloc’ + 2007 | #define flecs_calloc_n(a, T, count) flecs_calloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2911:5: note: in expansion of macro ‘flecs_calloc_n’ + 2911 | flecs_calloc_n(&world->allocator, T, count) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:36351:29: note: in expansion of macro ‘flecs_wcalloc_n’ +36351 | ecs_column_t *columns = flecs_wcalloc_n(world, ecs_column_t, column_count); + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_table_init_data(ecs_world_t*, ecs_table_t*)’: +../src/flecs/distr/flecs.h:2005:44: error: invalid conversion from ‘void*’ to ‘ecs_bitset_t*’ [-fpermissive] + 2005 | #define flecs_calloc(a, size) flecs_bcalloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2007:37: note: in expansion of macro ‘flecs_calloc’ + 2007 | #define flecs_calloc_n(a, T, count) flecs_calloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2911:5: note: in expansion of macro ‘flecs_calloc_n’ + 2911 | flecs_calloc_n(&world->allocator, T, count) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:36408:28: note: in expansion of macro ‘flecs_wcalloc_n’ +36408 | meta->bs_columns = flecs_wcalloc_n(world, ecs_bitset_t, bs_count); + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_table_emit(ecs_world_t*, ecs_table_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:36525:5: error: designator order for field ‘ecs_event_desc_t::event’ does not match declaration order in ‘ecs_event_desc_t’ +36525 | }); + | ^ +../src/flecs/distr/flecs.c:36519:53: error: taking address of rvalue [-fpermissive] +36519 | flecs_emit(world, world, 0, &(ecs_event_desc_t) { + | ^ +36520 | .ids = &table->type, + | ~~~~~~~~~~~~~~~~~~~~ +36521 | .event = event, + | ~~~~~~~~~~~~~~~ +36522 | .table = table, + | ~~~~~~~~~~~~~~~ +36523 | .flags = EcsEventTableOnly, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +36524 | .observable = world + | ~~~~~~~~~~~~~~~~~~~ +36525 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_table_init(ecs_world_t*, ecs_table_t*, ecs_table_t*)’: +../src/flecs/distr/flecs.h:2024:48: error: invalid conversion from ‘void*’ to ‘ecs_table_record_t*’ [-fpermissive] + 2024 | #define flecs_dup_n(a, T, count, ptr) flecs_dup(a, ECS_SIZEOF(T) * (count), ptr) + | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:2923:5: note: in expansion of macro ‘flecs_dup_n’ + 2923 | flecs_dup_n(&world->allocator, T, count, ptr) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:36738:34: note: in expansion of macro ‘flecs_wdup_n’ +36738 | ecs_table_record_t *dst_tr = flecs_wdup_n(world, ecs_table_record_t, + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2005:44: error: invalid conversion from ‘void*’ to ‘int16_t*’ {aka ‘short int*’} [-fpermissive] + 2005 | #define flecs_calloc(a, size) flecs_bcalloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2007:37: note: in expansion of macro ‘flecs_calloc’ + 2007 | #define flecs_calloc_n(a, T, count) flecs_calloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2911:5: note: in expansion of macro ‘flecs_calloc_n’ + 2911 | flecs_calloc_n(&world->allocator, T, count) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:36781:28: note: in expansion of macro ‘flecs_wcalloc_n’ +36781 | table->component_map = flecs_wcalloc_n( + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘int16_t*’ {aka ‘short int*’} [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2003:36: note: in expansion of macro ‘flecs_alloc’ + 2003 | #define flecs_alloc_n(a, T, count) flecs_alloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:2905:5: note: in expansion of macro ‘flecs_alloc_n’ + 2905 | flecs_alloc_n(&world->allocator, T, count) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:36785:29: note: in expansion of macro ‘flecs_walloc_n’ +36785 | table->column_map = flecs_walloc_n(world, int16_t, + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int32_t* flecs_table_get_dirty_state(ecs_world_t*, ecs_table_t*)’: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘int32_t*’ {aka ‘int*’} [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2003:36: note: in expansion of macro ‘flecs_alloc’ + 2003 | #define flecs_alloc_n(a, T, count) flecs_alloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:37372:30: note: in expansion of macro ‘flecs_alloc_n’ +37372 | table->dirty_state = flecs_alloc_n(&world->allocator, + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int32_t flecs_table_grow_data(ecs_world_t*, ecs_table_t*, int32_t, int32_t, const ecs_entity_t*)’: +../src/flecs/distr/flecs.c:37554:39: error: invalid conversion from ‘void*’ to ‘ecs_entity_t*’ {aka ‘long unsigned int*’} [-fpermissive] +37554 | table->data.entities = v_entities.array; + | ~~~~~~~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘int32_t flecs_table_append(ecs_world_t*, ecs_table_t*, ecs_entity_t, bool, bool)’: +../src/flecs/distr/flecs.c:37645:64: error: invalid conversion from ‘void*’ to ‘ecs_entity_t*’ {aka ‘long unsigned int*’} [-fpermissive] +37645 | ecs_entity_t *entities = table->data.entities = v_entities.array; + | ~~~~~~~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘bool flecs_table_shrink(ecs_world_t*, ecs_table_t*)’: +../src/flecs/distr/flecs.c:38050:39: error: invalid conversion from ‘void*’ to ‘ecs_entity_t*’ {aka ‘long unsigned int*’} [-fpermissive] +38050 | table->data.entities = v_entities.array; + | ~~~~~~~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_table_merge_data(ecs_world_t*, ecs_table_t*, ecs_table_t*, int32_t, int32_t)’: +../src/flecs/distr/flecs.c:38336:45: error: invalid conversion from ‘void*’ to ‘ecs_entity_t*’ {aka ‘long unsigned int*’} [-fpermissive] +38336 | dst_table->data.entities = dst_entities.array; + | ~~~~~~~~~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:38340:45: error: invalid conversion from ‘void*’ to ‘ecs_entity_t*’ {aka ‘long unsigned int*’} [-fpermissive] +38340 | src_table->data.entities = src_entities.array; + | ~~~~~~~~~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘int32_t ecs_table_get_type_index(const ecs_world_t*, const ecs_table_t*, ecs_id_t)’: +../src/flecs/distr/flecs.c:38515:1: error: jump to label ‘error’ +38515 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:38493:5: note: in expansion of macro ‘ecs_check’ +38493 | ecs_check(table != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:38509:25: note: crosses initialization of ‘ecs_table_record_t* tr’ +38509 | ecs_table_record_t *tr = flecs_id_record_get_table(idr, table); + | ^~ +../src/flecs/distr/flecs.c:38504:22: note: crosses initialization of ‘ecs_id_record_t* idr’ +38504 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c: In function ‘int32_t ecs_table_get_column_index(const ecs_world_t*, const ecs_table_t*, ecs_id_t)’: +../src/flecs/distr/flecs.c:38547:1: error: jump to label ‘error’ +38547 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:38526:5: note: in expansion of macro ‘ecs_check’ +38526 | ecs_check(ecs_id_is_valid(world, id), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:38541:25: note: crosses initialization of ‘ecs_table_record_t* tr’ +38541 | ecs_table_record_t *tr = flecs_id_record_get_table(idr, table); + | ^~ +../src/flecs/distr/flecs.c:38536:22: note: crosses initialization of ‘ecs_id_record_t* idr’ +38536 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c:38547:1: error: jump to label ‘error’ +38547 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:38525:5: note: in expansion of macro ‘ecs_check’ +38525 | ecs_check(table != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:38541:25: note: crosses initialization of ‘ecs_table_record_t* tr’ +38541 | ecs_table_record_t *tr = flecs_id_record_get_table(idr, table); + | ^~ +../src/flecs/distr/flecs.c:38536:22: note: crosses initialization of ‘ecs_id_record_t* idr’ +38536 | ecs_id_record_t *idr = flecs_id_record_get(world, id); + | ^~~ +../src/flecs/distr/flecs.c: In function ‘int32_t ecs_table_type_to_column_index(const ecs_table_t*, int32_t)’: +../src/flecs/distr/flecs.c:38567:1: error: jump to label ‘error’ +38567 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:38562:5: note: in expansion of macro ‘ecs_check’ +38562 | ecs_check(index < table->type.count, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:38563:14: note: crosses initialization of ‘int16_t* column_map’ +38563 | int16_t *column_map = table->column_map; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int32_t ecs_table_column_to_type_index(const ecs_table_t*, int32_t)’: +../src/flecs/distr/flecs.c:38579:1: error: jump to label ‘error’ +38579 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:38576:5: note: in expansion of macro ‘ecs_check’ +38576 | ecs_check(table->column_map != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:38577:13: note: crosses initialization of ‘int32_t offset’ +38577 | int32_t offset = table->type.count; + | ^~~~~~ +../src/flecs/distr/flecs.c:38579:1: error: jump to label ‘error’ +38579 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:38575:5: note: in expansion of macro ‘ecs_check’ +38575 | ecs_check(index < table->column_count, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:38577:13: note: crosses initialization of ‘int32_t offset’ +38577 | int32_t offset = table->type.count; + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘void* ecs_table_get_column(const ecs_table_t*, int32_t, int32_t)’: +../src/flecs/distr/flecs.c:38598:1: error: jump to label ‘error’ +38598 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:38589:5: note: in expansion of macro ‘ecs_check’ +38589 | ecs_check(index < table->column_count, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:38592:11: note: crosses initialization of ‘void* result’ +38592 | void *result = column->data; + | ^~~~~~ +../src/flecs/distr/flecs.c:38591:19: note: crosses initialization of ‘ecs_column_t* column’ +38591 | ecs_column_t *column = &table->data.columns[index]; + | ^~~~~~ +../src/flecs/distr/flecs.c:38598:1: error: jump to label ‘error’ +38598 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:38588:5: note: in expansion of macro ‘ecs_check’ +38588 | ecs_check(table != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:38592:11: note: crosses initialization of ‘void* result’ +38592 | void *result = column->data; + | ^~~~~~ +../src/flecs/distr/flecs.c:38591:19: note: crosses initialization of ‘ecs_column_t* column’ +38591 | ecs_column_t *column = &table->data.columns[index]; + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘void* ecs_table_get_id(const ecs_world_t*, const ecs_table_t*, ecs_id_t, int32_t)’: +../src/flecs/distr/flecs.c:38620:1: error: jump to label ‘error’ +38620 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:38610:5: note: in expansion of macro ‘ecs_check’ +38610 | ecs_check(ecs_id_is_valid(world, id), ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:38614:13: note: crosses initialization of ‘int32_t index’ +38614 | int32_t index = ecs_table_get_column_index(world, table, id); + | ^~~~~ +../src/flecs/distr/flecs.c:38620:1: error: jump to label ‘error’ +38620 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:38609:5: note: in expansion of macro ‘ecs_check’ +38609 | ecs_check(table != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:38614:13: note: crosses initialization of ‘int32_t index’ +38614 | int32_t index = ecs_table_get_column_index(world, table, id); + | ^~~~~ +../src/flecs/distr/flecs.c:38620:1: error: jump to label ‘error’ +38620 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:38608:5: note: in expansion of macro ‘ecs_check’ +38608 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:38614:13: note: crosses initialization of ‘int32_t index’ +38614 | int32_t index = ecs_table_get_column_index(world, table, id); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘void* ecs_record_get_by_column(const ecs_record_t*, int32_t, size_t)’: +../src/flecs/distr/flecs.c:38716:1: error: jump to label ‘error’ +38716 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:38708:5: note: in expansion of macro ‘ecs_check’ +38708 | ecs_check(index < table->column_count, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:38710:16: note: crosses initialization of ‘ecs_size_t size’ +38710 | ecs_size_t size = column->ti->size; + | ^~~~ +../src/flecs/distr/flecs.c:38709:19: note: crosses initialization of ‘ecs_column_t* column’ +38709 | ecs_column_t *column = &table->data.columns[index]; + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_record_t* ecs_record_find(const ecs_world_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:38733:1: error: jump to label ‘error’ +38733 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:38725:5: note: in expansion of macro ‘ecs_check’ +38725 | ecs_check(entity != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:38729:19: note: crosses initialization of ‘ecs_record_t* r’ +38729 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +../src/flecs/distr/flecs.c:38733:1: error: jump to label ‘error’ +38733 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:38724:5: note: in expansion of macro ‘ecs_check’ +38724 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:38729:19: note: crosses initialization of ‘ecs_record_t* r’ +38729 | ecs_record_t *r = flecs_entities_get(world, entity); + | ^ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void ecs_table_cache_replace(ecs_table_cache_t*, const ecs_table_t*, ecs_table_cache_hdr_t*)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_map_val_t*’ {aka ‘long unsigned int*’} to type ‘ecs_table_cache_hdr_t**’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:1850:34: note: in expansion of macro ‘ECS_CAST’ + 1850 | #define ecs_map_get_ref(m, T, k) ECS_CAST(T**, ecs_map_get(m, k)) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:38881:33: note: in expansion of macro ‘ecs_map_get_ref’ +38881 | ecs_table_cache_hdr_t **r = ecs_map_get_ref( + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘uint64_t flecs_type_hash(const void*)’: +../src/flecs/distr/flecs.c:39043:30: error: invalid conversion from ‘const void*’ to ‘const ecs_type_t*’ [-fpermissive] +39043 | const ecs_type_t *type = ptr; + | ^~~ + | | + | const void* +../src/flecs/distr/flecs.c: In function ‘int flecs_type_compare(const void*, const void*)’: +../src/flecs/distr/flecs.c:39051:32: error: invalid conversion from ‘const void*’ to ‘const ecs_type_t*’ [-fpermissive] +39051 | const ecs_type_t *type_1 = ptr_1; + | ^~~~~ + | | + | const void* +../src/flecs/distr/flecs.c:39052:32: error: invalid conversion from ‘const void*’ to ‘const ecs_type_t*’ [-fpermissive] +39052 | const ecs_type_t *type_2 = ptr_2; + | ^~~~~ + | | + | const void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_type_new_with(ecs_world_t*, ecs_type_t*, const ecs_type_t*, ecs_id_t)’: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2003:36: note: in expansion of macro ‘flecs_alloc’ + 2003 | #define flecs_alloc_n(a, T, count) flecs_alloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:2905:5: note: in expansion of macro ‘flecs_alloc_n’ + 2905 | flecs_alloc_n(&world->allocator, T, count) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:39162:27: note: in expansion of macro ‘flecs_walloc_n’ +39162 | ecs_id_t *dst_array = flecs_walloc_n(world, ecs_id_t, dst_count); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_type_new_filtered(ecs_world_t*, ecs_type_t*, const ecs_type_t*, ecs_id_t, int32_t)’: +../src/flecs/distr/flecs.h:2018:19: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 2018 | flecs_brealloc(flecs_allocator_get(a, size_dst),\ + | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* + 2019 | flecs_allocator_get(a, size_src),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 2020 | ptr) + | ~~~~ +../src/flecs/distr/flecs.h:2022:5: note: in expansion of macro ‘flecs_realloc’ + 2022 | flecs_realloc(a, ECS_SIZEOF(T) * (count_dst), ECS_SIZEOF(T) * (count_src), ptr) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2919:5: note: in expansion of macro ‘flecs_realloc_n’ + 2919 | flecs_realloc_n(&world->allocator, T, count_dst, count_src, ptr) + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:39208:22: note: in expansion of macro ‘flecs_wrealloc_n’ +39208 | dst->array = flecs_wrealloc_n(world, ecs_id_t, w, count, dst->array); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_type_new_without(ecs_world_t*, ecs_type_t*, const ecs_type_t*, ecs_id_t)’: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2003:36: note: in expansion of macro ‘flecs_alloc’ + 2003 | #define flecs_alloc_n(a, T, count) flecs_alloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:2905:5: note: in expansion of macro ‘flecs_alloc_n’ + 2905 | flecs_alloc_n(&world->allocator, T, count) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:39253:27: note: in expansion of macro ‘flecs_walloc_n’ +39253 | ecs_id_t *dst_array = flecs_walloc_n(world, ecs_id_t, dst_count); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_type_t flecs_type_copy(ecs_world_t*, const ecs_type_t*)’: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2003:36: note: in expansion of macro ‘flecs_alloc’ + 2003 | #define flecs_alloc_n(a, T, count) flecs_alloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:2905:5: note: in expansion of macro ‘flecs_alloc_n’ + 2905 | flecs_alloc_n(&world->allocator, T, count) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:39279:21: note: in expansion of macro ‘flecs_walloc_n’ +39279 | ecs_id_t *ids = flecs_walloc_n(world, ecs_id_t, src_count); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_table_diff_build_type(ecs_world_t*, ecs_vec_t*, ecs_type_t*, int32_t)’: +../src/flecs/distr/flecs.h:2024:48: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 2024 | #define flecs_dup_n(a, T, count, ptr) flecs_dup(a, ECS_SIZEOF(T) * (count), ptr) + | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:2923:5: note: in expansion of macro ‘flecs_dup_n’ + 2923 | flecs_dup_n(&world->allocator, T, count, ptr) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:39353:23: note: in expansion of macro ‘flecs_wdup_n’ +39353 | type->array = flecs_wdup_n(world, ecs_id_t, count, + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_table_diff_build_noalloc(ecs_table_diff_builder_t*, ecs_table_diff_t*)’: +../src/flecs/distr/flecs.c:39380:33: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] +39380 | .array = builder->added.array, .count = builder->added.count }; + | ~~~~~~~~~~~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:39382:35: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] +39382 | .array = builder->removed.array, .count = builder->removed.count }; + | ~~~~~~~~~~~~~~~~~^~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_graph_edge_t* flecs_table_ensure_hi_edge(ecs_world_t*, ecs_graph_edges_t*, ecs_id_t)’: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘ecs_map_t*’ [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2002:29: note: in expansion of macro ‘flecs_alloc’ + 2002 | #define flecs_alloc_t(a, T) flecs_alloc(a, ECS_SIZEOF(T)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:39431:21: note: in expansion of macro ‘flecs_alloc_t’ +39431 | edges->hi = flecs_alloc_t(&world->allocator, ecs_map_t); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_map_val_t*’ {aka ‘long unsigned int*’} to type ‘ecs_graph_edge_t**’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:1852:37: note: in expansion of macro ‘ECS_CAST’ + 1852 | #define ecs_map_ensure_ref(m, T, k) ECS_CAST(T**, ecs_map_ensure(m, k)) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:39435:28: note: in expansion of macro ‘ecs_map_ensure_ref’ +39435 | ecs_graph_edge_t **r = ecs_map_ensure_ref(edges->hi, ecs_graph_edge_t, id); + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:39444:29: error: invalid conversion from ‘void*’ to ‘ecs_graph_edge_t*’ [-fpermissive] +39444 | edge = flecs_bcalloc(&world->allocators.graph_edge); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘ecs_graph_edge_t* flecs_table_ensure_edge(ecs_world_t*, ecs_graph_edges_t*, ecs_id_t)’: +../src/flecs/distr/flecs.c:39461:38: error: invalid conversion from ‘void*’ to ‘ecs_graph_edge_t*’ [-fpermissive] +39461 | edges->lo = flecs_bcalloc(&world->allocators.graph_edge_lo); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_table_t* flecs_table_new(ecs_world_t*, ecs_type_t*, flecs_hashmap_result_t, ecs_table_t*)’: +../src/flecs/distr/flecs.h:2005:44: error: invalid conversion from ‘void*’ to ‘ecs_table__t*’ [-fpermissive] + 2005 | #define flecs_calloc(a, size) flecs_bcalloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2006:30: note: in expansion of macro ‘flecs_calloc’ + 2006 | #define flecs_calloc_t(a, T) flecs_calloc(a, ECS_SIZEOF(T)) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:39578:17: note: in expansion of macro ‘flecs_calloc_t’ +39578 | result->_ = flecs_calloc_t(&world->allocator, ecs_table__t); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_compute_table_diff(ecs_world_t*, ecs_table_t*, ecs_table_t*, ecs_graph_edge_t*, ecs_id_t)’: +../src/flecs/distr/flecs.c:39707:55: error: invalid conversion from ‘void*’ to ‘ecs_table_diff_t*’ [-fpermissive] +39707 | ecs_table_diff_t *diff = flecs_bcalloc( + | ~~~~~~~~~~~~~^ + | | + | void* +39708 | &world->allocators.table_diff); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:2024:48: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 2024 | #define flecs_dup_n(a, T, count, ptr) flecs_dup(a, ECS_SIZEOF(T) * (count), ptr) + | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:2923:5: note: in expansion of macro ‘flecs_dup_n’ + 2923 | flecs_dup_n(&world->allocator, T, count, ptr) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:39710:37: note: in expansion of macro ‘flecs_wdup_n’ +39710 | diff->added.array = flecs_wdup_n(world, ecs_id_t, 1, &id); + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:39800:43: error: invalid conversion from ‘void*’ to ‘ecs_table_diff_t*’ [-fpermissive] +39800 | ecs_table_diff_t *diff = flecs_bcalloc(&world->allocators.table_diff); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘ecs_table_t* flecs_table_traverse_remove(ecs_world_t*, ecs_table_t*, ecs_id_t*, ecs_table_diff_t*)’: +../src/flecs/distr/flecs.c:40135:1: error: jump to label ‘error’ +40135 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:40112:5: note: in expansion of macro ‘ecs_check’ +40112 | ecs_check(id_ptr[0] != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:40116:18: note: crosses initialization of ‘ecs_table_t* to’ +40116 | ecs_table_t *to = edge->to; + | ^~ +../src/flecs/distr/flecs.c:40115:23: note: crosses initialization of ‘ecs_graph_edge_t* edge’ +40115 | ecs_graph_edge_t *edge = flecs_table_ensure_edge(world, &node->node.remove, id); + | ^~~~ +../src/flecs/distr/flecs.c:40114:14: note: crosses initialization of ‘ecs_id_t id’ +40114 | ecs_id_t id = id_ptr[0]; + | ^~ +../src/flecs/distr/flecs.c:40135:1: error: jump to label ‘error’ +40135 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:40111:5: note: in expansion of macro ‘ecs_check’ +40111 | ecs_check(id_ptr != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:40116:18: note: crosses initialization of ‘ecs_table_t* to’ +40116 | ecs_table_t *to = edge->to; + | ^~ +../src/flecs/distr/flecs.c:40115:23: note: crosses initialization of ‘ecs_graph_edge_t* edge’ +40115 | ecs_graph_edge_t *edge = flecs_table_ensure_edge(world, &node->node.remove, id); + | ^~~~ +../src/flecs/distr/flecs.c:40114:14: note: crosses initialization of ‘ecs_id_t id’ +40114 | ecs_id_t id = id_ptr[0]; + | ^~ +../src/flecs/distr/flecs.c: In function ‘ecs_table_t* flecs_table_traverse_add(ecs_world_t*, ecs_table_t*, ecs_id_t*, ecs_table_diff_t*)’: +../src/flecs/distr/flecs.c:40180:1: error: jump to label ‘error’ +40180 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:40152:5: note: in expansion of macro ‘ecs_check’ +40152 | ecs_check(id_ptr[0] != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:40156:18: note: crosses initialization of ‘ecs_table_t* to’ +40156 | ecs_table_t *to = edge->to; + | ^~ +../src/flecs/distr/flecs.c:40155:23: note: crosses initialization of ‘ecs_graph_edge_t* edge’ +40155 | ecs_graph_edge_t *edge = flecs_table_ensure_edge(world, &node->node.add, id); + | ^~~~ +../src/flecs/distr/flecs.c:40154:14: note: crosses initialization of ‘ecs_id_t id’ +40154 | ecs_id_t id = id_ptr[0]; + | ^~ +../src/flecs/distr/flecs.c:40180:1: error: jump to label ‘error’ +40180 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:40151:5: note: in expansion of macro ‘ecs_check’ +40151 | ecs_check(id_ptr != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:40156:18: note: crosses initialization of ‘ecs_table_t* to’ +40156 | ecs_table_t *to = edge->to; + | ^~ +../src/flecs/distr/flecs.c:40155:23: note: crosses initialization of ‘ecs_graph_edge_t* edge’ +40155 | ecs_graph_edge_t *edge = flecs_table_ensure_edge(world, &node->node.add, id); + | ^~~~ +../src/flecs/distr/flecs.c:40154:14: note: crosses initialization of ‘ecs_id_t id’ +40154 | ecs_id_t id = id_ptr[0]; + | ^~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_init_root_table(ecs_world_t*)’: +../src/flecs/distr/flecs.h:2005:44: error: invalid conversion from ‘void*’ to ‘ecs_table__t*’ [-fpermissive] + 2005 | #define flecs_calloc(a, size) flecs_bcalloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2006:30: note: in expansion of macro ‘flecs_calloc’ + 2006 | #define flecs_calloc_t(a, T) flecs_calloc(a, ECS_SIZEOF(T)) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:40198:27: note: in expansion of macro ‘flecs_calloc_t’ +40198 | world->store.root._ = flecs_calloc_t(&world->allocator, ecs_table__t); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_table_edges_add_flags(ecs_world_t*, ecs_table_t*, ecs_id_t, ecs_flags32_t)’: +../src/flecs/distr/flecs.c:40224:51: error: invalid conversion from ‘void*’ to ‘ecs_table_diff_t*’ [-fpermissive] +40224 | edge->diff = flecs_bcalloc(&world->allocators.table_diff); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2002:29: note: in expansion of macro ‘flecs_alloc’ + 2002 | #define flecs_alloc_t(a, T) flecs_alloc(a, ECS_SIZEOF(T)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:2903:5: note: in expansion of macro ‘flecs_alloc_t’ + 2903 | flecs_alloc_t(&world->allocator, T) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:40225:51: note: in expansion of macro ‘flecs_walloc_t’ +40225 | edge->diff->added.array = flecs_walloc_t(world, ecs_id_t); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_graph_edge_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:40242:42: note: in expansion of macro ‘ecs_map_ptr’ +40242 | ecs_graph_edge_t *edge = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:40244:47: error: invalid conversion from ‘void*’ to ‘ecs_table_diff_t*’ [-fpermissive] +40244 | edge->diff = flecs_bcalloc(&world->allocators.table_diff); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2002:29: note: in expansion of macro ‘flecs_alloc’ + 2002 | #define flecs_alloc_t(a, T) flecs_alloc(a, ECS_SIZEOF(T)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:2903:5: note: in expansion of macro ‘flecs_alloc_t’ + 2903 | flecs_alloc_t(&world->allocator, T) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:40245:49: note: in expansion of macro ‘flecs_walloc_t’ +40245 | edge->diff->removed.array = flecs_walloc_t(world, ecs_id_t); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_table_clear_edges(ecs_world_t*, ecs_table_t*)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_graph_edge_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:40275:62: note: in expansion of macro ‘ecs_map_ptr’ +40275 | flecs_table_disconnect_edge(world, ecs_map_key(&it), ecs_map_ptr(&it)); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:39475:23: note: initializing argument 3 of ‘void flecs_table_disconnect_edge(ecs_world_t*, ecs_id_t, ecs_graph_edge_t*)’ +39475 | ecs_graph_edge_t *edge) + | ~~~~~~~~~~~~~~~~~~^~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_graph_edge_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:40280:62: note: in expansion of macro ‘ecs_map_ptr’ +40280 | flecs_table_disconnect_edge(world, ecs_map_key(&it), ecs_map_ptr(&it)); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:39475:23: note: initializing argument 3 of ‘void flecs_table_disconnect_edge(ecs_world_t*, ecs_id_t, ecs_graph_edge_t*)’ +39475 | ecs_graph_edge_t *edge) + | ~~~~~~~~~~~~~~~~~~^~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t flecs_json_ensure_entity(ecs_world_t*, const char*, ecs_map_t*)’: +../src/flecs/distr/flecs.c:40808:35: error: taking address of rvalue [-fpermissive] +40808 | e = ecs_entity(world, { .name = name }); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘const char* flecs_entity_from_json(ecs_world_t*, ecs_entity_t, const char*, const ecs_from_json_desc_t*, ecs_from_json_ctx_t*)’: +../src/flecs/distr/flecs.c:41311:38: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] +41311 | ecs_id_t *ids = ecs_vec_first(&ctx->table_type); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:41316:26: error: invalid conversion from ‘void*’ to ‘const ecs_id_t*’ {aka ‘const long unsigned int*’} [-fpermissive] +41316 | ecs_vec_first(&ctx->table_type), ecs_vec_count(&ctx->table_type)); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:40347:21: note: initializing argument 2 of ‘ecs_table_t* ecs_table_find(ecs_world_t*, const ecs_id_t*, int32_t)’ +40347 | const ecs_id_t *ids, + | ~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c:41349:43: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] +41349 | .array = ecs_vec_first(&ctx->remove_ids), + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:41361:1: error: jump to label ‘end’ +41361 | end: + | ^~~ +../src/flecs/distr/flecs.c:41284:18: note: from here +41284 | goto end; + | ^~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41361:1: error: jump to label ‘end’ +41361 | end: + | ^~~ +../src/flecs/distr/flecs.c:41264:18: note: from here +41264 | goto end; + | ^~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41361:1: error: jump to label ‘end’ +41361 | end: + | ^~~ +../src/flecs/distr/flecs.c:41252:18: note: from here +41252 | goto end; + | ^~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41361:1: error: jump to label ‘end’ +41361 | end: + | ^~~ +../src/flecs/distr/flecs.c:41232:18: note: from here +41232 | goto end; + | ^~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41361:1: error: jump to label ‘end’ +41361 | end: + | ^~~ +../src/flecs/distr/flecs.c:41201:18: note: from here +41201 | goto end; + | ^~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41361:1: error: jump to label ‘end’ +41361 | end: + | ^~~ +../src/flecs/distr/flecs.c:41172:18: note: from here +41172 | goto end; + | ^~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41361:1: error: jump to label ‘end’ +41361 | end: + | ^~~ +../src/flecs/distr/flecs.c:41141:14: note: from here +41141 | goto end; + | ^~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41363:1: error: jump to label ‘error’ +41363 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:41305:14: note: from here +41305 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41363:1: error: jump to label ‘error’ +41363 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:41299:18: note: from here +41299 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41363:1: error: jump to label ‘error’ +41363 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:41279:18: note: from here +41279 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41363:1: error: jump to label ‘error’ +41363 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:41259:18: note: from here +41259 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41363:1: error: jump to label ‘error’ +41363 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:41244:18: note: from here +41244 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41363:1: error: jump to label ‘error’ +41363 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:41208:18: note: from here +41208 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41363:1: error: jump to label ‘error’ +41363 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:41198:18: note: from here +41198 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41363:1: error: jump to label ‘error’ +41363 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:41180:18: note: from here +41180 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41363:1: error: jump to label ‘error’ +41363 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:41169:18: note: from here +41169 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41363:1: error: jump to label ‘error’ +41363 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:41153:18: note: from here +41153 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41363:1: error: jump to label ‘error’ +41363 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:41146:14: note: from here +41146 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41363:1: error: jump to label ‘error’ +41363 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:41136:14: note: from here +41136 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c:41363:1: error: jump to label ‘error’ +41363 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:41131:14: note: from here +41131 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:41309:18: note: crosses initialization of ‘ecs_table_t* table’ +41309 | ecs_table_t *table = r ? r->table : NULL; + | ^~~~~ +../src/flecs/distr/flecs.c:41308:19: note: crosses initialization of ‘ecs_record_t* r’ +41308 | ecs_record_t *r = flecs_entities_get(world, e); + | ^ +../src/flecs/distr/flecs.c: In function ‘const char* ecs_ptr_from_json(const ecs_world_t*, ecs_entity_t, void*, const char*, const ecs_from_json_desc_t*)’: +../src/flecs/distr/flecs.c:41506:35: error: invalid conversion from ‘int’ to ‘ecs_json_token_t’ [-fpermissive] +41506 | ecs_json_token_t token_kind = 0; + | ^ + | | + | int +../src/flecs/distr/flecs.c: In function ‘const char* flecs_json_expect(const char*, ecs_json_token_t, char*, const ecs_from_json_desc_t*)’: +../src/flecs/distr/flecs.c:41849:29: error: invalid conversion from ‘int’ to ‘ecs_json_token_t’ [-fpermissive] +41849 | ecs_json_token_t kind = 0; + | ^ + | | + | int +../src/flecs/distr/flecs.c: In function ‘const char* flecs_json_expect_string(const char*, char*, char**, const ecs_from_json_desc_t*)’: +../src/flecs/distr/flecs.c:41878:35: error: invalid conversion from ‘int’ to ‘ecs_json_token_t’ [-fpermissive] +41878 | ecs_json_token_t token_kind = 0; + | ^ + | | + | int +../src/flecs/distr/flecs.c: In function ‘const char* flecs_json_skip_object(const char*, char*, const ecs_from_json_desc_t*)’: +../src/flecs/distr/flecs.c:41994:35: error: invalid conversion from ‘int’ to ‘ecs_json_token_t’ [-fpermissive] +41994 | ecs_json_token_t token_kind = 0; + | ^ + | | + | int +../src/flecs/distr/flecs.c: In function ‘const char* flecs_json_skip_array(const char*, char*, const ecs_from_json_desc_t*)’: +../src/flecs/distr/flecs.c:42025:35: error: invalid conversion from ‘int’ to ‘ecs_json_token_t’ [-fpermissive] +42025 | ecs_json_token_t token_kind = 0; + | ^ + | | + | int +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_json_string_escape(ecs_strbuf_t*, const char*)’: +../src/flecs/distr/flecs.h:2607:47: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive] + 2607 | #define ecs_os_malloc(size) ecs_os_api.malloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:42141:21: note: in expansion of macro ‘ecs_os_malloc’ +42141 | char *out = ecs_os_malloc(length + 3); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_primitive_kind_t flecs_json_op_to_primitive_kind(ecs_meta_type_op_kind_t)’: +../src/flecs/distr/flecs.c:42343:17: error: invalid conversion from ‘int’ to ‘ecs_primitive_kind_t’ [-fpermissive] +42343 | return kind - EcsOpPrimitive; + | ~~~~~^~~~~~~~~~~~~~~~ + | | + | int +../src/flecs/distr/flecs.c: In function ‘int ecs_entity_to_json_buf(const ecs_world_t*, ecs_entity_t, ecs_strbuf_t*, const ecs_entity_to_json_desc_t*)’: +../src/flecs/distr/flecs.c:42442:5: error: designator order for field ‘ecs_iter_t::entities’ does not match declaration order in ‘ecs_iter_t’ +42442 | }; + | ^ +../src/flecs/distr/flecs.c:42457:5: error: designator order for field ‘ecs_iter_to_json_desc_t::serialize_entity_ids’ does not match declaration order in ‘ecs_iter_to_json_desc_t’ +42457 | }; + | ^ +../src/flecs/distr/flecs.c: In function ‘void flecs_json_serialize_type_info(const ecs_world_t*, const ecs_iter_t*, ecs_strbuf_t*)’: +../src/flecs/distr/flecs.c:42633:22: error: expected unqualified-id before ‘typeid’ +42633 | ecs_entity_t typeid = 0; + | ^~~~~~ +../src/flecs/distr/flecs.c:42635:20: error: expected ‘(’ before ‘=’ token +42635 | typeid = ecs_get_typeid(world, it->query->terms[i].id); + | ^ + | ( +../src/flecs/distr/flecs.c:42635:20: error: expected primary-expression before ‘=’ token +../src/flecs/distr/flecs.c:42635:67: error: expected ‘)’ before ‘;’ token +42635 | typeid = ecs_get_typeid(world, it->query->terms[i].id); + | ~ ^ + | ) +../src/flecs/distr/flecs.c:42637:19: error: expected ‘(’ before ‘)’ token +42637 | if (typeid) { + | ^ + | ( +../src/flecs/distr/flecs.c:42637:19: error: expected primary-expression before ‘)’ token +../src/flecs/distr/flecs.c:42637:20: error: expected ‘)’ before ‘{’ token +42637 | if (typeid) { + | ~ ^~ + | ) +../src/flecs/distr/flecs.c:42645:5: error: expected primary-expression before ‘}’ token +42645 | } + | ^ +../src/flecs/distr/flecs.c: In function ‘void flecs_json_serialize_query_plan(const ecs_world_t*, ecs_strbuf_t*, const ecs_iter_to_json_desc_t*)’: +../src/flecs/distr/flecs.c:42706:34: error: invalid conversion from ‘ecs_poly_t*’ {aka ‘void*’} to ‘const ecs_query_t*’ [-fpermissive] +42706 | const ecs_query_t *q = desc->query; + | ~~~~~~^~~~~ + | | + | ecs_poly_t* {aka void*} +../src/flecs/distr/flecs.c: In function ‘void flecs_json_serialize_query_profile(const ecs_world_t*, ecs_strbuf_t*, const ecs_iter_t*, const ecs_iter_to_json_desc_t*)’: +../src/flecs/distr/flecs.c:42777:54: error: invalid conversion from ‘ecs_poly_t*’ {aka ‘void*’} to ‘const ecs_query_t*’ [-fpermissive] +42777 | ecs_iter_t qit = ecs_query_iter(world, desc->query); + | ~~~~~~^~~~~ + | | + | ecs_poly_t* {aka void*} +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:7887:24: note: initializing argument 2 of ‘ecs_iter_t ecs_query_iter(const ecs_world_t*, const ecs_query_t*)’ + 7887 | const ecs_query_t *query); + | ~~~~~~~~~~~~~~~~~~~^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_json_serialize_matches(const ecs_world_t*, ecs_strbuf_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:43022:26: note: in expansion of macro ‘flecs_table_cache_next’ +43022 | while ((tr = flecs_table_cache_next(&it, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:43024:56: error: invalid conversion from ‘void*’ to ‘EcsPoly*’ [-fpermissive] +43024 | EcsPoly *queries = ecs_table_get_column(table, tr->column, 0); + | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:43029:49: error: invalid conversion from ‘ecs_poly_t*’ {aka ‘void*’} to ‘ecs_query_t*’ [-fpermissive] +43029 | ecs_query_t *q = queries[i].poly; + | ~~~~~~~~~~~^~~~ + | | + | ecs_poly_t* {aka void*} +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_json_serialize_refs_idr(const ecs_world_t*, ecs_strbuf_t*, ecs_id_record_t*)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:43078:22: note: in expansion of macro ‘flecs_table_cache_next’ +43078 | while ((tr = flecs_table_cache_next(&it, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_json_serialize_children_alerts(const ecs_world_t*, ecs_strbuf_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:43177:69: error: taking address of rvalue [-fpermissive] +43177 | ecs_query_t *q = ecs_query(ECS_CONST_CAST(ecs_world_t*, world), { + | ^ +43178 | .terms = {{ .id = ecs_pair(EcsChildOf, entity) }} + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +43179 | }); + | ~ +../src/flecs/distr/flecs.h:9700:47: note: in definition of macro ‘ecs_query’ + 9700 | ecs_query_init(world, &(ecs_query_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:43183:51: error: invalid conversion from ‘void*’ to ‘EcsAlertsActive*’ [-fpermissive] +43183 | EcsAlertsActive *alerts = ecs_table_get_id( + | ~~~~~~~~~~~~~~~~^ + | | + | void* +43184 | world, it.table, ecs_id(EcsAlertsActive), it.offset); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_json_serialize_iter_result(const ecs_world_t*, const ecs_iter_t*, ecs_strbuf_t*, const ecs_iter_to_json_desc_t*, ecs_json_ser_ctx_t*)’: +../src/flecs/distr/flecs.c:43388:51: error: invalid conversion from ‘void*’ to ‘const EcsIdentifier*’ [-fpermissive] +43388 | this_data.names = ecs_table_get_id(it->world, it->table, + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +43389 | ecs_pair_t(EcsIdentifier, EcsName), it->offset); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:43395:51: error: invalid conversion from ‘void*’ to ‘const EcsDocDescription*’ [-fpermissive] +43395 | this_data.label = ecs_table_get_id(it->world, it->table, + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +43396 | ecs_pair_t(EcsDocDescription, EcsName), it->offset); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:43397:51: error: invalid conversion from ‘void*’ to ‘const EcsDocDescription*’ [-fpermissive] +43397 | this_data.brief = ecs_table_get_id(it->world, it->table, + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +43398 | ecs_pair_t(EcsDocDescription, EcsDocBrief), it->offset); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:43399:52: error: invalid conversion from ‘void*’ to ‘const EcsDocDescription*’ [-fpermissive] +43399 | this_data.detail = ecs_table_get_id(it->world, it->table, + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +43400 | ecs_pair_t(EcsDocDescription, EcsDocDetail), it->offset); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:43401:51: error: invalid conversion from ‘void*’ to ‘const EcsDocDescription*’ [-fpermissive] +43401 | this_data.color = ecs_table_get_id(it->world, it->table, + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +43402 | ecs_pair_t(EcsDocDescription, EcsDocColor), it->offset); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:43403:50: error: invalid conversion from ‘void*’ to ‘const EcsDocDescription*’ [-fpermissive] +43403 | this_data.link = ecs_table_get_id(it->world, it->table, + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +43404 | ecs_pair_t(EcsDocDescription, EcsDocLink), it->offset); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_json_serialize_table_components(const ecs_world_t*, ecs_table_t*, ecs_strbuf_t*, ecs_json_value_ser_ctx_t*, const ecs_iter_to_json_desc_t*, int32_t, int32_t*)’: +../src/flecs/distr/flecs.c:44017:45: error: invalid conversion from ‘void*’ to ‘const ecs_sparse_t*’ [-fpermissive] +44017 | ptr = flecs_sparse_get_any(idr->sparse, 0, e); + | ~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:30638:25: note: initializing argument 1 of ‘void* flecs_sparse_get_any(const ecs_sparse_t*, ecs_size_t, uint64_t)’ +30638 | const ecs_sparse_t *sparse, + | ~~~~~~~~~~~~~~~~~~~~^~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_json_ser_enum(const ecs_world_t*, ecs_meta_type_op_t*, const void*, ecs_strbuf_t*)’: +../src/flecs/distr/flecs.c:44989:1: error: jump to label ‘error’ +44989 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:44967:5: note: in expansion of macro ‘ecs_check’ +44967 | ecs_check(enum_type != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:44973:26: note: crosses initialization of ‘ecs_enum_constant_t* constant’ +44973 | ecs_enum_constant_t *constant = ecs_map_get_deref(&enum_type->constants, + | ^~~~~~~~ +../src/flecs/distr/flecs.c:44969:13: note: crosses initialization of ‘int32_t value’ +44969 | int32_t value = *(const int32_t*)base; + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_json_ser_bitmask(const ecs_world_t*, ecs_meta_type_op_t*, const void*, ecs_strbuf_t*)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_bitmask_constant_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:45016:44: note: in expansion of macro ‘ecs_map_ptr’ +45016 | ecs_bitmask_constant_t *constant = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:45037:1: error: jump to label ‘error’ +45037 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:45002:5: note: in expansion of macro ‘ecs_check’ +45002 | ecs_check(bitmask_type != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:45014:20: note: crosses initialization of ‘ecs_map_iter_t it’ +45014 | ecs_map_iter_t it = ecs_map_iter(&bitmask_type->constants); + | ^~ +../src/flecs/distr/flecs.c:45004:14: note: crosses initialization of ‘uint32_t value’ +45004 | uint32_t value = *(const uint32_t*)ptr; + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘int json_ser_vector(const ecs_world_t*, ecs_meta_type_op_t*, const void*, ecs_strbuf_t*)’: +../src/flecs/distr/flecs.c:45117:30: error: invalid conversion from ‘const void*’ to ‘const ecs_vec_t*’ [-fpermissive] +45117 | const ecs_vec_t *value = base; + | ^~~~ + | | + | const void* +../src/flecs/distr/flecs.c: In function ‘int json_ser_custom_value(const ecs_serializer_t*, ecs_entity_t, const void*)’: +../src/flecs/distr/flecs.c:45140:44: error: invalid conversion from ‘void*’ to ‘json_serializer_ctx_t*’ [-fpermissive] +45140 | json_serializer_ctx_t *json_ser = ser->ctx; + | ~~~~~^~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘int json_ser_custom_member(const ecs_serializer_t*, const char*)’: +../src/flecs/distr/flecs.c:45152:44: error: invalid conversion from ‘void*’ to ‘json_serializer_ctx_t*’ [-fpermissive] +45152 | json_serializer_ctx_t *json_ser = ser->ctx; + | ~~~~~^~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘int json_ser_custom_type(const ecs_world_t*, ecs_meta_type_op_t*, const void*, ecs_strbuf_t*)’: +../src/flecs/distr/flecs.c:45200:5: error: designator order for field ‘json_serializer_ctx_t::is_collection’ does not match declaration order in ‘json_serializer_ctx_t’ +45200 | }; + | ^ +../src/flecs/distr/flecs.c:45207:5: error: ‘ecs_serializer_t’ has no non-static data member named ‘value’ +45207 | }; + | ^ +../src/flecs/distr/flecs.c: In function ‘int ecs_world_to_json_buf(ecs_world_t*, ecs_strbuf_t*, const ecs_world_to_json_desc_t*)’: +../src/flecs/distr/flecs.c:45576:5: error: designator order for field ‘ecs_iter_to_json_desc_t::serialize_full_paths’ does not match declaration order in ‘ecs_iter_to_json_desc_t’ +45576 | }; + | ^ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_expr_ser_primitive(const ecs_world_t*, ecs_primitive_kind_t, const void*, ecs_strbuf_t*, bool)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const void*’ to type ‘const char**’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:45714:30: note: in expansion of macro ‘ECS_CONST_CAST’ +45714 | const char *value = *ECS_CONST_CAST(const char**, base); + | ^~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:2607:47: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive] + 2607 | #define ecs_os_malloc(size) ecs_os_api.malloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:45725:33: note: in expansion of macro ‘ecs_os_malloc’ +45725 | char *out = ecs_os_malloc(length + 3); + | ^~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_primitive_init(ecs_world_t*, const ecs_primitive_desc_t*)’: +../src/flecs/distr/flecs.c:45777:37: error: taking address of rvalue [-fpermissive] +45777 | ecs_set(world, t, EcsPrimitive, { desc->kind }); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_enum_init(ecs_world_t*, const ecs_enum_desc_t*)’: +../src/flecs/distr/flecs.c:45806:44: error: taking address of rvalue [-fpermissive] +45806 | ecs_entity_t c = ecs_entity(world, { + | ^ +45807 | .name = m_desc->name + | ~~~~~~~~~~~~~~~~~~~~ +45808 | }); + | ~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:45814:17: error: taking address of rvalue [-fpermissive] +45814 | {m_desc->value}); + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9798:34: note: in definition of macro ‘ecs_set_pair_second’ + 9798 | sizeof(Second), &(Second)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_bitmask_init(ecs_world_t*, const ecs_bitmask_desc_t*)’: +../src/flecs/distr/flecs.c:45853:44: error: taking address of rvalue [-fpermissive] +45853 | ecs_entity_t c = ecs_entity(world, { + | ^ +45854 | .name = m_desc->name + | ~~~~~~~~~~~~~~~~~~~~ +45855 | }); + | ~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:45861:17: error: taking address of rvalue [-fpermissive] +45861 | {m_desc->value}); + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9798:34: note: in definition of macro ‘ecs_set_pair_second’ + 9798 | sizeof(Second), &(Second)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_array_init(ecs_world_t*, const ecs_array_desc_t*)’: +../src/flecs/distr/flecs.c:45889:33: error: taking address of rvalue [-fpermissive] +45889 | ecs_set(world, t, EcsArray, { + | ^ +45890 | .type = desc->type, + | ~~~~~~~~~~~~~~~~~~~ +45891 | .count = desc->count + | ~~~~~~~~~~~~~~~~~~~~ +45892 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_vector_init(ecs_world_t*, const ecs_vector_desc_t*)’: +../src/flecs/distr/flecs.c:45911:34: error: taking address of rvalue [-fpermissive] +45911 | ecs_set(world, t, EcsVector, { + | ^ +45912 | .type = desc->type + | ~~~~~~~~~~~~~~~~~~ +45913 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_struct_init(ecs_world_t*, const ecs_struct_desc_t*)’: +../src/flecs/distr/flecs.c:45969:44: error: taking address of rvalue [-fpermissive] +45969 | ecs_entity_t m = ecs_entity(world, { + | ^ +45970 | .name = m_desc->name + | ~~~~~~~~~~~~~~~~~~~~ +45971 | }); + | ~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:45979:9: error: designator order for field ‘EcsMember::unit’ does not match declaration order in ‘EcsMember’ +45979 | }); + | ^ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:45973:38: error: taking address of rvalue [-fpermissive] +45973 | ecs_set(world, m, EcsMember, { + | ^ +45974 | .type = m_desc->type, + | ~~~~~~~~~~~~~~~~~~~~~ +45975 | .count = m_desc->count, + | ~~~~~~~~~~~~~~~~~~~~~~~ +45976 | .offset = m_desc->offset, + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +45977 | .unit = m_desc->unit, + | ~~~~~~~~~~~~~~~~~~~~~ +45978 | .use_offset = m_desc->use_offset + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +45979 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_unit_init(ecs_world_t*, const ecs_unit_desc_t*)’: +../src/flecs/distr/flecs.c:46145:1: error: jump to label ‘error’ +46145 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:46122:18: note: from here +46122 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:46130:14: note: crosses initialization of ‘EcsUnit* value’ +46130 | EcsUnit *value = ecs_ensure(world, t, EcsUnit); + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_unit_prefix_init(ecs_world_t*, const ecs_unit_prefix_desc_t*)’: +../src/flecs/distr/flecs.c:46165:38: error: taking address of rvalue [-fpermissive] +46165 | ecs_set(world, t, EcsUnitPrefix, { + | ^ +46166 | .symbol = ECS_CONST_CAST(char*, desc->symbol), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +46167 | .translation = desc->translation + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +46168 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘const char* meta_parse_member(const char*, meta_member_t*, meta_parse_ctx_t*)’: +../src/flecs/distr/flecs.c:46570:1: error: jump to label ‘error’ +46570 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:46513:14: note: from here +46513 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:46530:11: note: crosses initialization of ‘char* array_start’ +46530 | char *array_start = strchr(token->name, '['); + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t meta_lookup_array(ecs_world_t*, ecs_entity_t, const char*, meta_parse_ctx_t*)’: +../src/flecs/distr/flecs.c:46682:33: error: taking address of rvalue [-fpermissive] +46682 | ecs_set(world, e, EcsArray, { element_type, (int32_t)params.count }); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:46685:1: error: jump to label ‘error’ +46685 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:46666:14: note: from here +46666 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:46669:18: note: crosses initialization of ‘ecs_entity_t element_type’ +46669 | ecs_entity_t element_type = ecs_lookup_symbol( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:46685:1: error: jump to label ‘error’ +46685 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:46661:14: note: from here +46661 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:46669:18: note: crosses initialization of ‘ecs_entity_t element_type’ +46669 | ecs_entity_t element_type = ecs_lookup_symbol( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:46685:1: error: jump to label ‘error’ +46685 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:46657:14: note: from here +46657 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:46669:18: note: crosses initialization of ‘ecs_entity_t element_type’ +46669 | ecs_entity_t element_type = ecs_lookup_symbol( + | ^~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t meta_lookup_vector(ecs_world_t*, ecs_entity_t, const char*, meta_parse_ctx_t*)’: +../src/flecs/distr/flecs.c:46719:34: error: taking address of rvalue [-fpermissive] +46719 | ecs_set(world, e, EcsVector, { element_type }); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:46722:1: error: jump to label ‘error’ +46722 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:46709:14: note: from here +46709 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:46712:18: note: crosses initialization of ‘ecs_entity_t element_type’ +46712 | ecs_entity_t element_type = meta_lookup( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:46722:1: error: jump to label ‘error’ +46722 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:46703:14: note: from here +46703 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:46712:18: note: crosses initialization of ‘ecs_entity_t element_type’ +46712 | ecs_entity_t element_type = meta_lookup( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t meta_lookup_bitmask(ecs_world_t*, ecs_entity_t, const char*, meta_parse_ctx_t*)’: +../src/flecs/distr/flecs.c:46769:1: error: jump to label ‘error’ +46769 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:46759:5: note: in expansion of macro ‘ecs_check’ +46759 | ecs_check(bitmask_type != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:46763:20: note: crosses initialization of ‘const EcsType* type_ptr’ +46763 | const EcsType *type_ptr = ecs_get(world, bitmask_type, EcsType); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:46769:1: error: jump to label ‘error’ +46769 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:46754:14: note: from here +46754 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:46763:20: note: crosses initialization of ‘const EcsType* type_ptr’ +46763 | const EcsType *type_ptr = ecs_get(world, bitmask_type, EcsType); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:46757:18: note: crosses initialization of ‘ecs_entity_t bitmask_type’ +46757 | ecs_entity_t bitmask_type = meta_lookup( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:46769:1: error: jump to label ‘error’ +46769 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:46748:14: note: from here +46748 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:46763:20: note: crosses initialization of ‘const EcsType* type_ptr’ +46763 | const EcsType *type_ptr = ecs_get(world, bitmask_type, EcsType); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:46757:18: note: crosses initialization of ‘ecs_entity_t bitmask_type’ +46757 | ecs_entity_t bitmask_type = meta_lookup( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:46769:1: error: jump to label ‘error’ +46769 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:46742:14: note: from here +46742 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:46763:20: note: crosses initialization of ‘const EcsType* type_ptr’ +46763 | const EcsType *type_ptr = ecs_get(world, bitmask_type, EcsType); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:46757:18: note: crosses initialization of ‘ecs_entity_t bitmask_type’ +46757 | ecs_entity_t bitmask_type = meta_lookup( + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t meta_lookup(ecs_world_t*, meta_type_t*, const char*, int64_t, meta_parse_ctx_t*)’: +../src/flecs/distr/flecs.c:46786:17: error: expected unqualified-id before ‘typename’ +46786 | const char *typename = token->type; + | ^~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46791:14: note: in expansion of macro ‘ecs_os_strcmp’ +46791 | if (!ecs_os_strcmp(typename, "ecs_array")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46791:14: note: in expansion of macro ‘ecs_os_strcmp’ +46791 | if (!ecs_os_strcmp(typename, "ecs_array")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46794:21: note: in expansion of macro ‘ecs_os_strcmp’ +46794 | } else if (!ecs_os_strcmp(typename, "ecs_vector") || + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46794:21: note: in expansion of macro ‘ecs_os_strcmp’ +46794 | } else if (!ecs_os_strcmp(typename, "ecs_vector") || + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46795:18: note: in expansion of macro ‘ecs_os_strcmp’ +46795 | !ecs_os_strcmp(typename, "flecs::vector")) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46795:18: note: in expansion of macro ‘ecs_os_strcmp’ +46795 | !ecs_os_strcmp(typename, "flecs::vector")) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46799:21: note: in expansion of macro ‘ecs_os_strcmp’ +46799 | } else if (!ecs_os_strcmp(typename, "flecs::bitmask")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46799:21: note: in expansion of macro ‘ecs_os_strcmp’ +46799 | } else if (!ecs_os_strcmp(typename, "flecs::bitmask")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46802:21: note: in expansion of macro ‘ecs_os_strcmp’ +46802 | } else if (!ecs_os_strcmp(typename, "flecs::byte")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46802:21: note: in expansion of macro ‘ecs_os_strcmp’ +46802 | } else if (!ecs_os_strcmp(typename, "flecs::byte")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46805:21: note: in expansion of macro ‘ecs_os_strcmp’ +46805 | } else if (!ecs_os_strcmp(typename, "char")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46805:21: note: in expansion of macro ‘ecs_os_strcmp’ +46805 | } else if (!ecs_os_strcmp(typename, "char")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46808:21: note: in expansion of macro ‘ecs_os_strcmp’ +46808 | } else if (!ecs_os_strcmp(typename, "bool") || + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46808:21: note: in expansion of macro ‘ecs_os_strcmp’ +46808 | } else if (!ecs_os_strcmp(typename, "bool") || + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46809:18: note: in expansion of macro ‘ecs_os_strcmp’ +46809 | !ecs_os_strcmp(typename, "_Bool")) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46809:18: note: in expansion of macro ‘ecs_os_strcmp’ +46809 | !ecs_os_strcmp(typename, "_Bool")) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46813:21: note: in expansion of macro ‘ecs_os_strcmp’ +46813 | } else if (!ecs_os_strcmp(typename, "int8_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46813:21: note: in expansion of macro ‘ecs_os_strcmp’ +46813 | } else if (!ecs_os_strcmp(typename, "int8_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46815:21: note: in expansion of macro ‘ecs_os_strcmp’ +46815 | } else if (!ecs_os_strcmp(typename, "int16_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46815:21: note: in expansion of macro ‘ecs_os_strcmp’ +46815 | } else if (!ecs_os_strcmp(typename, "int16_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46817:21: note: in expansion of macro ‘ecs_os_strcmp’ +46817 | } else if (!ecs_os_strcmp(typename, "int32_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46817:21: note: in expansion of macro ‘ecs_os_strcmp’ +46817 | } else if (!ecs_os_strcmp(typename, "int32_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46819:21: note: in expansion of macro ‘ecs_os_strcmp’ +46819 | } else if (!ecs_os_strcmp(typename, "int64_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46819:21: note: in expansion of macro ‘ecs_os_strcmp’ +46819 | } else if (!ecs_os_strcmp(typename, "int64_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46822:21: note: in expansion of macro ‘ecs_os_strcmp’ +46822 | } else if (!ecs_os_strcmp(typename, "uint8_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46822:21: note: in expansion of macro ‘ecs_os_strcmp’ +46822 | } else if (!ecs_os_strcmp(typename, "uint8_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46824:21: note: in expansion of macro ‘ecs_os_strcmp’ +46824 | } else if (!ecs_os_strcmp(typename, "uint16_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46824:21: note: in expansion of macro ‘ecs_os_strcmp’ +46824 | } else if (!ecs_os_strcmp(typename, "uint16_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46826:21: note: in expansion of macro ‘ecs_os_strcmp’ +46826 | } else if (!ecs_os_strcmp(typename, "uint32_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46826:21: note: in expansion of macro ‘ecs_os_strcmp’ +46826 | } else if (!ecs_os_strcmp(typename, "uint32_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46828:21: note: in expansion of macro ‘ecs_os_strcmp’ +46828 | } else if (!ecs_os_strcmp(typename, "uint64_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46828:21: note: in expansion of macro ‘ecs_os_strcmp’ +46828 | } else if (!ecs_os_strcmp(typename, "uint64_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46831:21: note: in expansion of macro ‘ecs_os_strcmp’ +46831 | } else if (!ecs_os_strcmp(typename, "float")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46831:21: note: in expansion of macro ‘ecs_os_strcmp’ +46831 | } else if (!ecs_os_strcmp(typename, "float")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46833:21: note: in expansion of macro ‘ecs_os_strcmp’ +46833 | } else if (!ecs_os_strcmp(typename, "double")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46833:21: note: in expansion of macro ‘ecs_os_strcmp’ +46833 | } else if (!ecs_os_strcmp(typename, "double")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46836:21: note: in expansion of macro ‘ecs_os_strcmp’ +46836 | } else if (!ecs_os_strcmp(typename, "ecs_entity_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46836:21: note: in expansion of macro ‘ecs_os_strcmp’ +46836 | } else if (!ecs_os_strcmp(typename, "ecs_entity_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46839:21: note: in expansion of macro ‘ecs_os_strcmp’ +46839 | } else if (!ecs_os_strcmp(typename, "ecs_id_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46839:21: note: in expansion of macro ‘ecs_os_strcmp’ +46839 | } else if (!ecs_os_strcmp(typename, "ecs_id_t")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46842:21: note: in expansion of macro ‘ecs_os_strcmp’ +46842 | } else if (!ecs_os_strcmp(typename, "char*")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46842:21: note: in expansion of macro ‘ecs_os_strcmp’ +46842 | } else if (!ecs_os_strcmp(typename, "char*")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:46845:53: error: expected nested-name-specifier before ‘,’ token +46845 | type = ecs_lookup_symbol(world, typename, true, true); + | ^ +../src/flecs/distr/flecs.c:46845:53: error: expected ‘(’ before ‘,’ token +46845 | type = ecs_lookup_symbol(world, typename, true, true); + | ^ + | ( +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46848:14: note: in expansion of macro ‘ecs_os_strcmp’ +46848 | if (!ecs_os_strcmp(typename, "char")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46848:14: note: in expansion of macro ‘ecs_os_strcmp’ +46848 | if (!ecs_os_strcmp(typename, "char")) { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:46849:22: error: expected nested-name-specifier before ‘=’ token +46849 | typename = "flecs.meta.string"; + | ^ +../src/flecs/distr/flecs.c:46849:22: error: expected ‘(’ before ‘=’ token +46849 | typename = "flecs.meta.string"; + | ^ + | ( +../src/flecs/distr/flecs.c:46852:22: error: expected nested-name-specifier before ‘=’ token +46852 | typename = "flecs.meta.uptr"; + | ^ +../src/flecs/distr/flecs.c:46852:22: error: expected ‘(’ before ‘=’ token +46852 | typename = "flecs.meta.uptr"; + | ^ + | ( +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46854:14: note: in expansion of macro ‘ecs_os_strcmp’ +46854 | if (!ecs_os_strcmp(typename, "char*") || + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46854:14: note: in expansion of macro ‘ecs_os_strcmp’ +46854 | if (!ecs_os_strcmp(typename, "char*") || + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected nested-name-specifier before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46855:14: note: in expansion of macro ‘ecs_os_strcmp’ +46855 | !ecs_os_strcmp(typename, "flecs::string")) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2663:46: error: expected ‘(’ before ‘,’ token + 2663 | #define ecs_os_strcmp(str1, str2) strcmp(str1, str2) + | ^ +../src/flecs/distr/flecs.c:46855:14: note: in expansion of macro ‘ecs_os_strcmp’ +46855 | !ecs_os_strcmp(typename, "flecs::string")) + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:46857:22: error: expected nested-name-specifier before ‘=’ token +46857 | typename = "flecs.meta.string"; + | ^ +../src/flecs/distr/flecs.c:46857:22: error: expected ‘(’ before ‘=’ token +46857 | typename = "flecs.meta.string"; + | ^ + | ( +../src/flecs/distr/flecs.c:46860:49: error: expected nested-name-specifier before ‘,’ token +46860 | type = ecs_lookup_symbol(world, typename, true, true); + | ^ +../src/flecs/distr/flecs.c:46860:49: error: expected ‘(’ before ‘,’ token +46860 | type = ecs_lookup_symbol(world, typename, true, true); + | ^ + | ( +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:46866:54: error: taking address of rvalue [-fpermissive] +46866 | type = ecs_insert(world, ecs_value(EcsArray, {type, (int32_t)count})); + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:9780:32: note: in expansion of macro ‘ecs_values’ + 9780 | ecs_entity(world, { .set = ecs_values(__VA_ARGS__)}) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:46866:16: note: in expansion of macro ‘ecs_insert’ +46866 | type = ecs_insert(world, ecs_value(EcsArray, {type, (int32_t)count})); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:46866:34: note: in expansion of macro ‘ecs_value’ +46866 | type = ecs_insert(world, ecs_value(EcsArray, {type, (int32_t)count})); + | ^~~~~~~~~ +../src/flecs/distr/flecs.h:10144:40: error: taking address of temporary array +10144 | #define ecs_values(...) (ecs_value_t[]){ __VA_ARGS__, {0, 0}} + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:9780:32: note: in expansion of macro ‘ecs_values’ + 9780 | ecs_entity(world, { .set = ecs_values(__VA_ARGS__)}) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:46866:16: note: in expansion of macro ‘ecs_insert’ +46866 | type = ecs_insert(world, ecs_value(EcsArray, {type, (int32_t)count})); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:10880:54: error: expected nested-name-specifier before ‘)’ token +10880 | ecs_parser_error_(name, expr, column, __VA_ARGS__) + | ^ +../src/flecs/distr/flecs.c:46209:5: note: in expansion of macro ‘ecs_parser_error’ +46209 | ecs_parser_error((ctx)->name, (ctx)->desc, ptr - (ctx)->desc, __VA_ARGS__); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:46870:9: note: in expansion of macro ‘ecs_meta_error’ +46870 | ecs_meta_error(ctx, ptr, "unknown type '%s'", typename); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:10880:54: error: expected ‘(’ before ‘)’ token +10880 | ecs_parser_error_(name, expr, column, __VA_ARGS__) + | ^ +../src/flecs/distr/flecs.c:46209:5: note: in expansion of macro ‘ecs_parser_error’ +46209 | ecs_parser_error((ctx)->name, (ctx)->desc, ptr - (ctx)->desc, __VA_ARGS__); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:46870:9: note: in expansion of macro ‘ecs_meta_error’ +46870 | ecs_meta_error(ctx, ptr, "unknown type '%s'", typename); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int meta_parse_struct(ecs_world_t*, ecs_entity_t, const char*)’: +../src/flecs/distr/flecs.c:46897:44: error: taking address of rvalue [-fpermissive] +46897 | ecs_entity_t m = ecs_entity(world, { + | ^ +46898 | .name = token.name + | ~~~~~~~~~~~~~~~~~~ +46899 | }); + | ~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:46907:38: error: taking address of rvalue [-fpermissive] +46907 | ecs_set(world, m, EcsMember, { + | ^ +46908 | .type = type, + | ~~~~~~~~~~~~~ +46909 | .count = (ecs_size_t)token.count + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +46910 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int meta_parse_constants(ecs_world_t*, ecs_entity_t, const char*, bool)’: +../src/flecs/distr/flecs.c:46969:44: error: taking address of rvalue [-fpermissive] +46969 | ecs_entity_t c = ecs_entity(world, { + | ^ +46970 | .name = token.name + | ~~~~~~~~~~~~~~~~~~ +46971 | }); + | ~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:46975:17: error: taking address of rvalue [-fpermissive] +46975 | {(ecs_i32_t)last_value}); + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9798:34: note: in definition of macro ‘ecs_set_pair_second’ + 9798 | sizeof(Second), &(Second)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:46978:17: error: taking address of rvalue [-fpermissive] +46978 | {(ecs_u32_t)last_value}); + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9798:34: note: in definition of macro ‘ecs_set_pair_second’ + 9798 | sizeof(Second), &(Second)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_meta_type_op_t* flecs_meta_cursor_get_ptr(const ecs_world_t*, ecs_meta_scope_t*)’: +../src/flecs/distr/flecs.c:47199:20: error: invalid conversion from ‘void*’ to ‘ecs_meta_type_op_t*’ [-fpermissive] +47199 | return opaque_ptr; + | ^~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:47208:41: error: invalid conversion from ‘void*’ to ‘ecs_meta_type_op_t*’ [-fpermissive] +47208 | return opaque->ensure_member(scope->ptr, op->name); + | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_meta_type_op_t*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:47215:12: note: in expansion of macro ‘ECS_OFFSET’ +47215 | return ECS_OFFSET(scope->ptr, size * scope->elem_cur + op->offset); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_meta_cursor_t ecs_meta_cursor(const ecs_world_t*, ecs_entity_t, void*)’: +../src/flecs/distr/flecs.c:47262:1: error: jump to label ‘error’ +47262 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:47250:5: note: in expansion of macro ‘ecs_check’ +47250 | ecs_check(type != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:47252:23: note: crosses initialization of ‘ecs_meta_cursor_t result’ +47252 | ecs_meta_cursor_t result = { + | ^~~~~~ +../src/flecs/distr/flecs.c:47262:1: error: jump to label ‘error’ +47262 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:47249:5: note: in expansion of macro ‘ecs_check’ +47249 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:47252:23: note: crosses initialization of ‘ecs_meta_cursor_t result’ +47252 | ecs_meta_cursor_t result = { + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘int ecs_meta_push(ecs_meta_cursor_t*)’: +../src/flecs/distr/flecs.c:47465:9: error: designator order for field ‘ecs_meta_scope_t::type’ does not match declaration order in ‘ecs_meta_scope_t’ +47465 | }; + | ^ +../src/flecs/distr/flecs.c:47504:9: error: designator order for field ‘ecs_meta_scope_t::type’ does not match declaration order in ‘ecs_meta_scope_t’ +47504 | }; + | ^ +../src/flecs/distr/flecs.c:47524:30: error: invalid conversion from ‘void*’ to ‘ecs_vec_t*’ [-fpermissive] +47524 | next_scope->vector = ptr; + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c:47654:1: error: jump to label ‘error’ +47654 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:47447:5: note: in expansion of macro ‘ecs_check’ +47447 | ecs_check(cursor->depth < ECS_META_MAX_SCOPE_DEPTH, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:47450:23: note: crosses initialization of ‘ecs_meta_scope_t* next_scope’ +47450 | ecs_meta_scope_t *next_scope = flecs_meta_cursor_get_scope(cursor); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: At global scope: +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +47811 | }; + | ^ +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47811:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +47833 | }; + | ^ +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47833:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +47858 | }; + | ^ +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +../src/flecs/distr/flecs.c:47858:1: sorry, unimplemented: non-trivial designated initializers not supported +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int ecs_meta_set_float(ecs_meta_cursor_t*, double)’: +../src/flecs/distr/flecs.h:885:43: error: taking address of rvalue [-fpermissive] + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:885:23: note: in expansion of macro ‘ECS_EQ’ + 885 | #define ECS_EQZERO(a) ECS_EQ(a, (uint64_t){0}) + | ^~~~~~ +../src/flecs/distr/flecs.c:48134:13: note: in expansion of macro ‘ECS_EQZERO’ +48134 | if (ECS_EQZERO(value)) { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int ecs_meta_set_value(ecs_meta_cursor_t*, const ecs_value_t*)’: +../src/flecs/distr/flecs.c:48241:1: error: jump to label ‘error’ +48241 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:48191:5: note: in expansion of macro ‘ecs_check’ +48191 | ecs_check(type != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:48192:20: note: crosses initialization of ‘const EcsType* mt’ +48192 | const EcsType *mt = ecs_get(cursor->world, type, EcsType); + | ^~ +../src/flecs/distr/flecs.c:48241:1: error: jump to label ‘error’ +48241 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:48189:5: note: in expansion of macro ‘ecs_check’ +48189 | ecs_check(value != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:48192:20: note: crosses initialization of ‘const EcsType* mt’ +48192 | const EcsType *mt = ecs_get(cursor->world, type, EcsType); + | ^~ +../src/flecs/distr/flecs.c:48190:18: note: crosses initialization of ‘ecs_entity_t type’ +48190 | ecs_entity_t type = value->type; + | ^~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int ecs_meta_set_string_literal(ecs_meta_cursor_t*, const char*)’: +../src/flecs/distr/flecs.h:2607:47: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive] + 2607 | #define ecs_os_malloc(size) ecs_os_api.malloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:48575:24: note: in expansion of macro ‘ecs_os_malloc’ +48575 | char *result = ecs_os_malloc(len + 1); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:48586:5: error: jump to case label +48586 | default: + | ^~~~~~~ +../src/flecs/distr/flecs.c:48575:15: note: crosses initialization of ‘char* result’ +48575 | char *result = ecs_os_malloc(len + 1); + | ^~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘bool ecs_meta_get_bool(const ecs_meta_cursor_t*)’: +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:48790:28: note: in expansion of macro ‘ECS_NEQZERO’ +48790 | case EcsOpF32: return ECS_NEQZERO(*(ecs_f32_t*)ptr); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:48791:28: note: in expansion of macro ‘ECS_NEQZERO’ +48791 | case EcsOpF64: return ECS_NEQZERO(*(ecs_f64_t*)ptr); + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘double flecs_meta_to_float(ecs_meta_type_op_kind_t, const void*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const void*’ to type ‘const char**’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:48973:36: note: in expansion of macro ‘ECS_CONST_CAST’ +48973 | case EcsOpString: return atof(*ECS_CONST_CAST(const char**, ptr)); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int ecs_meta_get_string_value_from_opaque(const ecs_serializer_t*, ecs_entity_t, const void*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const void*’ to type ‘char**’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:49019:12: note: in expansion of macro ‘ECS_CONST_CAST’ +49019 | *ctx = ECS_CONST_CAST(char**, value); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘const char* ecs_meta_get_string(const ecs_meta_cursor_t*)’: +../src/flecs/distr/flecs.c:49052:13: error: ‘ecs_serializer_t’ has no non-static data member named ‘value’ +49052 | }; + | ^ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_addon_vec_serialize(const ecs_serializer_t*, const void*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const void*’ to type ‘char***’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:49198:20: note: in expansion of macro ‘ECS_CONST_CAST’ +49198 | char ***data = ECS_CONST_CAST(char***, ptr); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:49201:19: error: no matching function for call to ‘ecs_serializer_t::value(const ecs_serializer_t*&, const ecs_entity_t&, char**&) const’ +49201 | ser->value(ser, ecs_id(ecs_string_t), addons); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:15304:9: note: candidate: ‘template int ecs_serializer_t::value(const T&) const’ +15304 | int value(const T& value) const; + | ^~~~~ +../src/flecs/distr/flecs.h:15304:9: note: template argument deduction/substitution failed: +../src/flecs/distr/flecs.c:49201:19: note: candidate expects 1 argument, 3 provided +49201 | ser->value(ser, ecs_id(ecs_string_t), addons); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:31799:12: note: candidate: ‘int ecs_serializer_t::value(ecs_entity_t, const void*) const’ +31799 | inline int ecs_serializer_t::value(ecs_entity_t type, const void *v) const { + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:31799:12: note: candidate expects 2 arguments, 3 provided +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘size_t flecs_addon_vec_count(const void*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const void*’ to type ‘char***’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:49209:20: note: in expansion of macro ‘ECS_CONST_CAST’ +49209 | char ***data = ECS_CONST_CAST(char***, ptr); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_const_str_serialize(const ecs_serializer_t*, const void*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const void*’ to type ‘char**’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:49219:19: note: in expansion of macro ‘ECS_CONST_CAST’ +49219 | char **data = ECS_CONST_CAST(char**, ptr); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:49220:15: error: no matching function for call to ‘ecs_serializer_t::value(const ecs_serializer_t*&, const ecs_entity_t&, char**&) const’ +49220 | ser->value(ser, ecs_id(ecs_string_t), data); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:15304:9: note: candidate: ‘template int ecs_serializer_t::value(const T&) const’ +15304 | int value(const T& value) const; + | ^~~~~ +../src/flecs/distr/flecs.h:15304:9: note: template argument deduction/substitution failed: +../src/flecs/distr/flecs.c:49220:15: note: candidate expects 1 argument, 3 provided +49220 | ser->value(ser, ecs_id(ecs_string_t), data); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:31799:12: note: candidate: ‘int ecs_serializer_t::value(ecs_entity_t, const void*) const’ +31799 | inline int ecs_serializer_t::value(ecs_entity_t type, const void *v) const { + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:31799:12: note: candidate expects 2 arguments, 3 provided +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_meta_import_core_definitions(ecs_world_t*)’: +../src/flecs/distr/flecs.c:49229:23: error: taking address of rvalue [-fpermissive] +49229 | ecs_struct(world, { + | ^ +49230 | .entity = ecs_id(EcsComponent), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49231 | .members = { + | ~~~~~~~~~~~~ +49232 | { .name = "size", .type = ecs_id(ecs_i32_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49233 | { .name = "alignment", .type = ecs_id(ecs_i32_t) } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49234 | } + | ~ +49235 | }); + | ~ +../src/flecs/distr/flecs.h:16131:49: note: in definition of macro ‘ecs_struct’ +16131 | ecs_struct_init(world, &(ecs_struct_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49237:23: error: taking address of rvalue [-fpermissive] +49237 | ecs_struct(world, { + | ^ +49238 | .entity = ecs_id(EcsDefaultChildComponent), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49239 | .members = { + | ~~~~~~~~~~~~ +49240 | { .name = "component", .type = ecs_id(ecs_entity_t) } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49241 | } + | ~ +49242 | }); + | ~ +../src/flecs/distr/flecs.h:16131:49: note: in definition of macro ‘ecs_struct’ +16131 | ecs_struct_init(world, &(ecs_struct_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49252:43: error: taking address of rvalue [-fpermissive] +49252 | .entity = ecs_entity(world, { + | ^ +49253 | .name = "flecs.core.const_string_t", + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49254 | .root_sep = "" + | ~~~~~~~~~~~~~~ +49255 | }), + | ~ +../src/flecs/distr/flecs.h:16127:49: note: in definition of macro ‘ecs_opaque’ +16127 | ecs_opaque_init(world, &(ecs_opaque_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49251:19: note: in expansion of macro ‘ecs_component’ +49251 | .entity = ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:49252:25: note: in expansion of macro ‘ecs_entity’ +49252 | .entity = ecs_entity(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:49251:40: error: taking address of rvalue [-fpermissive] +49251 | .entity = ecs_component(world, { + | ^ +49252 | .entity = ecs_entity(world, { + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49253 | .name = "flecs.core.const_string_t", + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49254 | .root_sep = "" + | ~~~~~~~~~~~~~~ +49255 | }), + | ~~~ +49256 | .type = { + | ~~~~~~~~~ +49257 | .size = ECS_SIZEOF(const char*), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49258 | .alignment = ECS_ALIGNOF(const char*) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49259 | } + | ~ +49260 | }), + | ~ +../src/flecs/distr/flecs.h:16127:49: note: in definition of macro ‘ecs_opaque’ +16127 | ecs_opaque_init(world, &(ecs_opaque_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49251:19: note: in expansion of macro ‘ecs_component’ +49251 | .entity = ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:49250:51: error: taking address of rvalue [-fpermissive] +49250 | ecs_entity_t const_string = ecs_opaque(world, { + | ^ +49251 | .entity = ecs_component(world, { + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49252 | .entity = ecs_entity(world, { + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49253 | .name = "flecs.core.const_string_t", + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49254 | .root_sep = "" + | ~~~~~~~~~~~~~~ +49255 | }), + | ~~~ +49256 | .type = { + | ~~~~~~~~~ +49257 | .size = ECS_SIZEOF(const char*), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49258 | .alignment = ECS_ALIGNOF(const char*) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49259 | } + | ~ +49260 | }), + | ~~~ +49261 | .type = { + | ~~~~~~~~~ +49262 | .as_type = ecs_id(ecs_string_t), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49263 | .serialize = flecs_const_str_serialize, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49264 | } + | ~ +49265 | }); + | ~ +../src/flecs/distr/flecs.h:16127:49: note: in definition of macro ‘ecs_opaque’ +16127 | ecs_opaque_init(world, &(ecs_opaque_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49268:37: error: taking address of rvalue [-fpermissive] +49268 | .entity = ecs_entity(world, { + | ^ +49269 | .name = "flecs.core.string_vec_t", + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49270 | .root_sep = "" + | ~~~~~~~~~~~~~~ +49271 | }), + | ~ +../src/flecs/distr/flecs.h:16123:49: note: in definition of macro ‘ecs_vector’ +16123 | ecs_vector_init(world, &(ecs_vector_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49268:19: note: in expansion of macro ‘ecs_entity’ +49268 | .entity = ecs_entity(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:49267:49: error: taking address of rvalue [-fpermissive] +49267 | ecs_entity_t string_vec = ecs_vector(world, { + | ^ +49268 | .entity = ecs_entity(world, { + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49269 | .name = "flecs.core.string_vec_t", + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49270 | .root_sep = "" + | ~~~~~~~~~~~~~~ +49271 | }), + | ~~~ +49272 | .type = ecs_id(ecs_string_t) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49273 | }); + | ~ +../src/flecs/distr/flecs.h:16123:49: note: in definition of macro ‘ecs_vector’ +16123 | ecs_vector_init(world, &(ecs_vector_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49277:41: error: taking address of rvalue [-fpermissive] +49277 | .entity = ecs_entity(world, { + | ^ +49278 | .name = "flecs.core.addon_vec_t", + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49279 | .root_sep = "" + | ~~~~~~~~~~~~~~ +49280 | }), + | ~ +../src/flecs/distr/flecs.h:16127:49: note: in definition of macro ‘ecs_opaque’ +16127 | ecs_opaque_init(world, &(ecs_opaque_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49276:19: note: in expansion of macro ‘ecs_component’ +49276 | .entity = ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:49277:23: note: in expansion of macro ‘ecs_entity’ +49277 | .entity = ecs_entity(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:49276:40: error: taking address of rvalue [-fpermissive] +49276 | .entity = ecs_component(world, { + | ^ +49277 | .entity = ecs_entity(world, { + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49278 | .name = "flecs.core.addon_vec_t", + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49279 | .root_sep = "" + | ~~~~~~~~~~~~~~ +49280 | }), + | ~~~ +49281 | .type = { + | ~~~~~~~~~ +49282 | .size = ECS_SIZEOF(char**), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49283 | .alignment = ECS_ALIGNOF(char**) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49284 | } + | ~ +49285 | }), + | ~ +../src/flecs/distr/flecs.h:16127:49: note: in definition of macro ‘ecs_opaque’ +16127 | ecs_opaque_init(world, &(ecs_opaque_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49276:19: note: in expansion of macro ‘ecs_component’ +49276 | .entity = ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:49275:48: error: taking address of rvalue [-fpermissive] +49275 | ecs_entity_t addon_vec = ecs_opaque(world, { + | ^ +49276 | .entity = ecs_component(world, { + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49277 | .entity = ecs_entity(world, { + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49278 | .name = "flecs.core.addon_vec_t", + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49279 | .root_sep = "" + | ~~~~~~~~~~~~~~ +49280 | }), + | ~~~ +49281 | .type = { + | ~~~~~~~~~ +49282 | .size = ECS_SIZEOF(char**), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49283 | .alignment = ECS_ALIGNOF(char**) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49284 | } + | ~ +49285 | }), + | ~~~ +49286 | .type = { + | ~~~~~~~~~ +49287 | .as_type = string_vec, + | ~~~~~~~~~~~~~~~~~~~~~~ +49288 | .serialize = flecs_addon_vec_serialize, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49289 | .count = flecs_addon_vec_count, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49290 | } + | ~ +49291 | }); + | ~ +../src/flecs/distr/flecs.h:16127:49: note: in definition of macro ‘ecs_opaque’ +16127 | ecs_opaque_init(world, &(ecs_opaque_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49294:37: error: taking address of rvalue [-fpermissive] +49294 | .entity = ecs_entity(world, { + | ^ +49295 | .name = "flecs.core.build_info_t", + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49296 | .root_sep = "" + | ~~~~~~~~~~~~~~ +49297 | }), + | ~ +../src/flecs/distr/flecs.h:16131:49: note: in definition of macro ‘ecs_struct’ +16131 | ecs_struct_init(world, &(ecs_struct_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49294:19: note: in expansion of macro ‘ecs_entity’ +49294 | .entity = ecs_entity(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:49293:23: error: taking address of rvalue [-fpermissive] +49293 | ecs_struct(world, { + | ^ +49294 | .entity = ecs_entity(world, { + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49295 | .name = "flecs.core.build_info_t", + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49296 | .root_sep = "" + | ~~~~~~~~~~~~~~ +49297 | }), + | ~~~ +49298 | .members = { + | ~~~~~~~~~~~~ +49299 | { .name = "compiler", .type = const_string }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49300 | { .name = "addons", .type = addon_vec }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49301 | { .name = "version", .type = const_string }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49302 | { .name = "version_major", .type = ecs_id(ecs_i16_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49303 | { .name = "version_minor", .type = ecs_id(ecs_i16_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49304 | { .name = "version_patch", .type = ecs_id(ecs_i16_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49305 | { .name = "debug", .type = ecs_id(ecs_bool_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49306 | { .name = "sanitize", .type = ecs_id(ecs_bool_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49307 | { .name = "perf_trace", .type = ecs_id(ecs_bool_t) } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49308 | } + | ~ +49309 | }); + | ~ +../src/flecs/distr/flecs.h:16131:49: note: in definition of macro ‘ecs_struct’ +16131 | ecs_struct_init(world, &(ecs_struct_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_meta_import_doc_definitions(ecs_world_t*)’: +../src/flecs/distr/flecs.c:49319:23: error: taking address of rvalue [-fpermissive] +49319 | ecs_struct(world, { + | ^ +49320 | .entity = ecs_id(EcsDocDescription), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49321 | .members = { + | ~~~~~~~~~~~~ +49322 | { .name = "value", .type = ecs_id(ecs_string_t) } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49323 | } + | ~ +49324 | }); + | ~ +../src/flecs/distr/flecs.h:16131:49: note: in definition of macro ‘ecs_struct’ +16131 | ecs_struct_init(world, &(ecs_struct_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_meta_import_meta_definitions(ecs_world_t*)’: +../src/flecs/distr/flecs.c:49334:37: error: taking address of rvalue [-fpermissive] +49334 | .entity = ecs_entity(world, { .name = "TypeKind" }), + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49333:69: error: taking address of rvalue [-fpermissive] +49333 | ecs_entity_t type_kind = ecs_enum_init(world, &(ecs_enum_desc_t){ + | ^ +49334 | .entity = ecs_entity(world, { .name = "TypeKind" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49335 | .constants = { + | ~~~~~~~~~~~~~~ +49336 | { .name = "PrimitiveType" }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49337 | { .name = "BitmaskType" }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +49338 | { .name = "EnumType" }, + | ~~~~~~~~~~~~~~~~~~~~~~~ +49339 | { .name = "StructType" }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +49340 | { .name = "ArrayType" }, + | ~~~~~~~~~~~~~~~~~~~~~~~~ +49341 | { .name = "VectorType" }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +49342 | { .name = "OpaqueType" } + | ~~~~~~~~~~~~~~~~~~~~~~~~ +49343 | } + | ~ +49344 | }); + | ~ +../src/flecs/distr/flecs.c:49346:48: error: taking address of rvalue [-fpermissive] +49346 | ecs_struct_init(world, &(ecs_struct_desc_t){ + | ^ +49347 | .entity = ecs_id(EcsType), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +49348 | .members = { + | ~~~~~~~~~~~~ +49349 | { .name = "kind", .type = type_kind } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49350 | } + | ~ +49351 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:49354:37: error: taking address of rvalue [-fpermissive] +49354 | .entity = ecs_entity(world, { .name = "PrimitiveKind" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49353:74: error: taking address of rvalue [-fpermissive] +49353 | ecs_entity_t primitive_kind = ecs_enum_init(world, &(ecs_enum_desc_t){ + | ^ +49354 | .entity = ecs_entity(world, { .name = "PrimitiveKind" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49355 | .constants = { + | ~~~~~~~~~~~~~~ +49356 | { .name = "Bool", 1 }, + | ~~~~~~~~~~~~~~~~~~~~~~ +49357 | { .name = "Char" }, + | ~~~~~~~~~~~~~~~~~~~ +49358 | { .name = "Byte" }, + | ~~~~~~~~~~~~~~~~~~~ +49359 | { .name = "U8" }, + | ~~~~~~~~~~~~~~~~~ +49360 | { .name = "U16" }, + | ~~~~~~~~~~~~~~~~~~ +49361 | { .name = "U32" }, + | ~~~~~~~~~~~~~~~~~~ +49362 | { .name = "U64 "}, + | ~~~~~~~~~~~~~~~~~~ +49363 | { .name = "I8" }, + | ~~~~~~~~~~~~~~~~~ +49364 | { .name = "I16" }, + | ~~~~~~~~~~~~~~~~~~ +49365 | { .name = "I32" }, + | ~~~~~~~~~~~~~~~~~~ +49366 | { .name = "I64" }, + | ~~~~~~~~~~~~~~~~~~ +49367 | { .name = "F32" }, + | ~~~~~~~~~~~~~~~~~~ +49368 | { .name = "F64" }, + | ~~~~~~~~~~~~~~~~~~ +49369 | { .name = "UPtr "}, + | ~~~~~~~~~~~~~~~~~~~ +49370 | { .name = "IPtr" }, + | ~~~~~~~~~~~~~~~~~~~ +49371 | { .name = "String" }, + | ~~~~~~~~~~~~~~~~~~~~~ +49372 | { .name = "Entity" }, + | ~~~~~~~~~~~~~~~~~~~~~ +49373 | { .name = "Id" } + | ~~~~~~~~~~~~~~~~ +49374 | } + | ~ +49375 | }); + | ~ +../src/flecs/distr/flecs.c:49377:48: error: taking address of rvalue [-fpermissive] +49377 | ecs_struct_init(world, &(ecs_struct_desc_t){ + | ^ +49378 | .entity = ecs_id(EcsPrimitive), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49379 | .members = { + | ~~~~~~~~~~~~ +49380 | { .name = "kind", .type = primitive_kind } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49381 | } + | ~ +49382 | }); + | ~ +../src/flecs/distr/flecs.c:49384:48: error: taking address of rvalue [-fpermissive] +49384 | ecs_struct_init(world, &(ecs_struct_desc_t){ + | ^ +49385 | .entity = ecs_id(EcsMember), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49386 | .members = { + | ~~~~~~~~~~~~ +49387 | { .name = "type", .type = ecs_id(ecs_entity_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49388 | { .name = "count", .type = ecs_id(ecs_i32_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49389 | { .name = "unit", .type = ecs_id(ecs_entity_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49390 | { .name = "offset", .type = ecs_id(ecs_i32_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49391 | { .name = "use_offset", .type = ecs_id(ecs_bool_t) } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49392 | } + | ~ +49393 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:49396:37: error: taking address of rvalue [-fpermissive] +49396 | .entity = ecs_entity(world, { .name = "value_range" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49395:66: error: taking address of rvalue [-fpermissive] +49395 | ecs_entity_t vr = ecs_struct_init(world, &(ecs_struct_desc_t){ + | ^ +49396 | .entity = ecs_entity(world, { .name = "value_range" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49397 | .members = { + | ~~~~~~~~~~~~ +49398 | { .name = "min", .type = ecs_id(ecs_f64_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49399 | { .name = "max", .type = ecs_id(ecs_f64_t) } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49400 | } + | ~ +49401 | }); + | ~ +../src/flecs/distr/flecs.c:49403:48: error: taking address of rvalue [-fpermissive] +49403 | ecs_struct_init(world, &(ecs_struct_desc_t){ + | ^ +49404 | .entity = ecs_id(EcsMemberRanges), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49405 | .members = { + | ~~~~~~~~~~~~ +49406 | { .name = "value", .type = vr }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49407 | { .name = "warning", .type = vr }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49408 | { .name = "error", .type = vr } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49409 | } + | ~ +49410 | }); + | ~ +../src/flecs/distr/flecs.c:49412:48: error: taking address of rvalue [-fpermissive] +49412 | ecs_struct_init(world, &(ecs_struct_desc_t){ + | ^ +49413 | .entity = ecs_id(EcsArray), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49414 | .members = { + | ~~~~~~~~~~~~ +49415 | { .name = "type", .type = ecs_id(ecs_entity_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49416 | { .name = "count", .type = ecs_id(ecs_i32_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49417 | } + | ~ +49418 | }); + | ~ +../src/flecs/distr/flecs.c:49420:48: error: taking address of rvalue [-fpermissive] +49420 | ecs_struct_init(world, &(ecs_struct_desc_t){ + | ^ +49421 | .entity = ecs_id(EcsVector), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49422 | .members = { + | ~~~~~~~~~~~~ +49423 | { .name = "type", .type = ecs_id(ecs_entity_t) } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49424 | } + | ~ +49425 | }); + | ~ +../src/flecs/distr/flecs.c:49427:48: error: taking address of rvalue [-fpermissive] +49427 | ecs_struct_init(world, &(ecs_struct_desc_t){ + | ^ +49428 | .entity = ecs_id(EcsOpaque), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49429 | .members = { + | ~~~~~~~~~~~~ +49430 | { .name = "as_type", .type = ecs_id(ecs_entity_t) } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49431 | } + | ~ +49432 | }); + | ~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:49435:37: error: taking address of rvalue [-fpermissive] +49435 | .entity = ecs_entity(world, { .name = "unit_translation" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:49434:66: error: taking address of rvalue [-fpermissive] +49434 | ecs_entity_t ut = ecs_struct_init(world, &(ecs_struct_desc_t){ + | ^ +49435 | .entity = ecs_entity(world, { .name = "unit_translation" }), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49436 | .members = { + | ~~~~~~~~~~~~ +49437 | { .name = "factor", .type = ecs_id(ecs_i32_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49438 | { .name = "power", .type = ecs_id(ecs_i32_t) } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49439 | } + | ~ +49440 | }); + | ~ +../src/flecs/distr/flecs.c:49442:48: error: taking address of rvalue [-fpermissive] +49442 | ecs_struct_init(world, &(ecs_struct_desc_t){ + | ^ +49443 | .entity = ecs_id(EcsUnit), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +49444 | .members = { + | ~~~~~~~~~~~~ +49445 | { .name = "symbol", .type = ecs_id(ecs_string_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49446 | { .name = "prefix", .type = ecs_id(ecs_entity_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49447 | { .name = "base", .type = ecs_id(ecs_entity_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49448 | { .name = "over", .type = ecs_id(ecs_entity_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49449 | { .name = "translation", .type = ut } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49450 | } + | ~ +49451 | }); + | ~ +../src/flecs/distr/flecs.c:49453:48: error: taking address of rvalue [-fpermissive] +49453 | ecs_struct_init(world, &(ecs_struct_desc_t){ + | ^ +49454 | .entity = ecs_id(EcsUnitPrefix), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49455 | .members = { + | ~~~~~~~~~~~~ +49456 | { .name = "symbol", .type = ecs_id(ecs_string_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49457 | { .name = "translation", .type = ut } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +49458 | } + | ~ +49459 | }); + | ~ +../src/flecs/distr/flecs.c: In function ‘void ecs_meta_dtor_serialized(EcsTypeSerializer*)’: +../src/flecs/distr/flecs.c:49539:44: error: invalid conversion from ‘void*’ to ‘ecs_meta_type_op_t*’ [-fpermissive] +49539 | ecs_meta_type_op_t *ops = ecs_vec_first(&ptr->ops); + | ~~~~~~~~~~~~~^~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_constants_dtor(ecs_map_t*)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_enum_constant_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:49620:34: note: in expansion of macro ‘ecs_map_ptr’ +49620 | ecs_enum_constant_t *c = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_constants_copy(ecs_map_t*, const ecs_map_t*)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_map_data_t*’ {aka ‘long unsigned int*’} to type ‘ecs_enum_constant_t**’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:1862:29: note: in expansion of macro ‘ECS_CAST’ + 1862 | #define ecs_map_ref(it, T) (ECS_CAST(T**, &((it)->res[1]))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:49635:35: note: in expansion of macro ‘ecs_map_ref’ +49635 | ecs_enum_constant_t **r = ecs_map_ref(&it, ecs_enum_constant_t); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_add_constant_to_enum(ecs_world_t*, ecs_entity_t, ecs_entity_t, ecs_id_t)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_enum_constant_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50086:34: note: in expansion of macro ‘ecs_map_ptr’ +50086 | ecs_enum_constant_t *c = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_enum_constant_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50114:34: note: in expansion of macro ‘ecs_map_ptr’ +50114 | ecs_enum_constant_t *c = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50142:25: error: invalid conversion from ‘void*’ to ‘ecs_i32_t*’ {aka ‘int*’} [-fpermissive] +50142 | cptr = ecs_ensure_id(world, e, type); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_add_constant_to_bitmask(ecs_world_t*, ecs_entity_t, ecs_entity_t, ecs_id_t)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_bitmask_constant_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50160:37: note: in expansion of macro ‘ecs_map_ptr’ +50160 | ecs_bitmask_constant_t *c = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_bitmask_constant_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50188:37: note: in expansion of macro ‘ecs_map_ptr’ +50188 | ecs_bitmask_constant_t *c = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50211:25: error: invalid conversion from ‘void*’ to ‘ecs_u32_t*’ {aka ‘unsigned int*’} [-fpermissive] +50211 | cptr = ecs_ensure_id(world, e, type); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_set_member(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:50288:47: error: invalid conversion from ‘void*’ to ‘EcsMemberRanges*’ [-fpermissive] +50288 | EcsMemberRanges *ranges = ecs_table_get_id(world, it->table, + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ + | | + | void* +50289 | ecs_id(EcsMemberRanges), it->offset); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_set_member_ranges(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:50309:41: error: invalid conversion from ‘void*’ to ‘EcsMember*’ [-fpermissive] +50309 | EcsMember *member = ecs_table_get_id(world, it->table, + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ + | | + | void* +50310 | ecs_id(EcsMember), it->offset); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void FlecsMetaImport(ecs_world_t*)’: +../src/flecs/distr/flecs.c:3008:37: error: taking address of rvalue [-fpermissive] + 3008 | .entity = ecs_entity(world, { .id = ecs_id(id_), .name = #id_, .symbol = #id_ }),\ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50632:5: note: in expansion of macro ‘flecs_bootstrap_component’ +50632 | flecs_bootstrap_component(world, EcsTypeSerializer); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:3007:53: error: expected primary-expression before ‘)’ token + 3007 | ecs_component_init(world, &(ecs_component_desc_t){\ + | ^ +../src/flecs/distr/flecs.c:50632:5: note: in expansion of macro ‘flecs_bootstrap_component’ +50632 | flecs_bootstrap_component(world, EcsTypeSerializer); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50635:37: error: taking address of rvalue [-fpermissive] +50635 | .entity = ecs_entity(world, { .id = ecs_id(EcsType), + | ^~~~~~~~~~~~~~~~~~~~~~~~ +50636 | .name = "type", .symbol = "EcsType" + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50637 | }), + | ~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50635:19: note: in expansion of macro ‘ecs_entity’ +50635 | .entity = ecs_entity(world, { .id = ecs_id(EcsType), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9671:53: error: expected primary-expression before ‘)’ token + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50634:5: note: in expansion of macro ‘ecs_component’ +50634 | ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50643:37: error: taking address of rvalue [-fpermissive] +50643 | .entity = ecs_entity(world, { .id = ecs_id(EcsPrimitive), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50644 | .name = "primitive", .symbol = "EcsPrimitive" + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50645 | }), + | ~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50643:19: note: in expansion of macro ‘ecs_entity’ +50643 | .entity = ecs_entity(world, { .id = ecs_id(EcsPrimitive), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9671:53: error: expected primary-expression before ‘)’ token + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50642:5: note: in expansion of macro ‘ecs_component’ +50642 | ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50651:37: error: taking address of rvalue [-fpermissive] +50651 | .entity = ecs_entity(world, { .id = EcsConstant, + | ^~~~~~~~~~~~~~~~~~~~ +50652 | .name = "constant", .symbol = "EcsConstant" + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50653 | }) + | ~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50651:19: note: in expansion of macro ‘ecs_entity’ +50651 | .entity = ecs_entity(world, { .id = EcsConstant, + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:50650:26: error: taking address of rvalue [-fpermissive] +50650 | ecs_component(world, { + | ^ +50651 | .entity = ecs_entity(world, { .id = EcsConstant, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50652 | .name = "constant", .symbol = "EcsConstant" + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50653 | }) + | ~~ +50654 | }); + | ~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50657:37: error: taking address of rvalue [-fpermissive] +50657 | .entity = ecs_entity(world, { .id = ecs_id(EcsEnum), + | ^~~~~~~~~~~~~~~~~~~~~~~~ +50658 | .name = "enum", .symbol = "EcsEnum" + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50659 | }), + | ~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50657:19: note: in expansion of macro ‘ecs_entity’ +50657 | .entity = ecs_entity(world, { .id = ecs_id(EcsEnum), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9671:53: error: expected primary-expression before ‘)’ token + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50656:5: note: in expansion of macro ‘ecs_component’ +50656 | ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50665:37: error: taking address of rvalue [-fpermissive] +50665 | .entity = ecs_entity(world, { .id = ecs_id(EcsBitmask), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +50666 | .name = "bitmask", .symbol = "EcsBitmask" + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50667 | }), + | ~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50665:19: note: in expansion of macro ‘ecs_entity’ +50665 | .entity = ecs_entity(world, { .id = ecs_id(EcsBitmask), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9671:53: error: expected primary-expression before ‘)’ token + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50664:5: note: in expansion of macro ‘ecs_component’ +50664 | ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50673:37: error: taking address of rvalue [-fpermissive] +50673 | .entity = ecs_entity(world, { .id = ecs_id(EcsMember), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +50674 | .name = "member", .symbol = "EcsMember" + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50675 | }), + | ~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50673:19: note: in expansion of macro ‘ecs_entity’ +50673 | .entity = ecs_entity(world, { .id = ecs_id(EcsMember), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9671:53: error: expected primary-expression before ‘)’ token + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50672:5: note: in expansion of macro ‘ecs_component’ +50672 | ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50681:37: error: taking address of rvalue [-fpermissive] +50681 | .entity = ecs_entity(world, { .id = ecs_id(EcsMemberRanges), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50682 | .name = "member_ranges", .symbol = "EcsMemberRanges" + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50683 | }), + | ~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50681:19: note: in expansion of macro ‘ecs_entity’ +50681 | .entity = ecs_entity(world, { .id = ecs_id(EcsMemberRanges), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9671:53: error: expected primary-expression before ‘)’ token + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50680:5: note: in expansion of macro ‘ecs_component’ +50680 | ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50689:37: error: taking address of rvalue [-fpermissive] +50689 | .entity = ecs_entity(world, { .id = ecs_id(EcsStruct), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +50690 | .name = "struct", .symbol = "EcsStruct" + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50691 | }), + | ~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50689:19: note: in expansion of macro ‘ecs_entity’ +50689 | .entity = ecs_entity(world, { .id = ecs_id(EcsStruct), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9671:53: error: expected primary-expression before ‘)’ token + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50688:5: note: in expansion of macro ‘ecs_component’ +50688 | ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50697:37: error: taking address of rvalue [-fpermissive] +50697 | .entity = ecs_entity(world, { .id = ecs_id(EcsArray), + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +50698 | .name = "array", .symbol = "EcsArray" + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50699 | }), + | ~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50697:19: note: in expansion of macro ‘ecs_entity’ +50697 | .entity = ecs_entity(world, { .id = ecs_id(EcsArray), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9671:53: error: expected primary-expression before ‘)’ token + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50696:5: note: in expansion of macro ‘ecs_component’ +50696 | ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50705:37: error: taking address of rvalue [-fpermissive] +50705 | .entity = ecs_entity(world, { .id = ecs_id(EcsVector), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +50706 | .name = "vector", .symbol = "EcsVector" + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50707 | }), + | ~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50705:19: note: in expansion of macro ‘ecs_entity’ +50705 | .entity = ecs_entity(world, { .id = ecs_id(EcsVector), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9671:53: error: expected primary-expression before ‘)’ token + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50704:5: note: in expansion of macro ‘ecs_component’ +50704 | ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50713:37: error: taking address of rvalue [-fpermissive] +50713 | .entity = ecs_entity(world, { .id = ecs_id(EcsOpaque), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +50714 | .name = "opaque", .symbol = "EcsOpaque" + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50715 | }), + | ~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50713:19: note: in expansion of macro ‘ecs_entity’ +50713 | .entity = ecs_entity(world, { .id = ecs_id(EcsOpaque), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9671:53: error: expected primary-expression before ‘)’ token + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50712:5: note: in expansion of macro ‘ecs_component’ +50712 | ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50721:19: note: in expansion of macro ‘ecs_entity’ +50721 | .entity = ecs_entity(world, { .id = ecs_id(EcsUnit), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:50723:20: note: in expansion of macro ‘ecs_ids’ +50723 | .add = ecs_ids(ecs_pair(EcsOnInstantiate, EcsInherit)) + | ^~~~~~~ +../src/flecs/distr/flecs.h:9671:53: error: expected primary-expression before ‘)’ token + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50720:5: note: in expansion of macro ‘ecs_component’ +50720 | ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50730:19: note: in expansion of macro ‘ecs_entity’ +50730 | .entity = ecs_entity(world, { .id = ecs_id(EcsUnitPrefix), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:50732:20: note: in expansion of macro ‘ecs_ids’ +50732 | .add = ecs_ids(ecs_pair(EcsOnInstantiate, EcsInherit)) + | ^~~~~~~ +../src/flecs/distr/flecs.h:9671:53: error: expected primary-expression before ‘)’ token + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50729:5: note: in expansion of macro ‘ecs_component’ +50729 | ecs_component(world, { + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9671:55: note: in definition of macro ‘ecs_component’ + 9671 | ecs_component_init(world, &(ecs_component_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50739:19: note: in expansion of macro ‘ecs_entity’ +50739 | .entity = ecs_entity(world, { .id = EcsQuantity, + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:50741:20: note: in expansion of macro ‘ecs_ids’ +50741 | .add = ecs_ids(ecs_pair(EcsOnInstantiate, EcsInherit)) + | ^~~~~~~ +../src/flecs/distr/flecs.c:50745:35: error: taking address of rvalue [-fpermissive] +50745 | ecs_set_hooks(world, EcsType, { .ctor = flecs_default_ctor }); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50752:5: error: designator order for field ‘ecs_type_hooks_t::copy’ does not match declaration order in ‘ecs_type_hooks_t’ +50752 | }); + | ^ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50747:45: error: taking address of rvalue [-fpermissive] +50747 | ecs_set_hooks(world, EcsTypeSerializer, { + | ^ +50748 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50749 | .move = ecs_move(EcsTypeSerializer), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50750 | .copy = ecs_copy(EcsTypeSerializer), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50751 | .dtor = ecs_dtor(EcsTypeSerializer) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50752 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50759:5: error: designator order for field ‘ecs_type_hooks_t::copy’ does not match declaration order in ‘ecs_type_hooks_t’ +50759 | }); + | ^ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50754:37: error: taking address of rvalue [-fpermissive] +50754 | ecs_set_hooks(world, EcsStruct, { + | ^ +50755 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50756 | .move = ecs_move(EcsStruct), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50757 | .copy = ecs_copy(EcsStruct), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50758 | .dtor = ecs_dtor(EcsStruct) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50759 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50761:37: error: taking address of rvalue [-fpermissive] +50761 | ecs_set_hooks(world, EcsMember, { + | ^ +50762 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50763 | .on_set = flecs_member_on_set + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50764 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50766:43: error: taking address of rvalue [-fpermissive] +50766 | ecs_set_hooks(world, EcsMemberRanges, { + | ^ +50767 | .ctor = flecs_default_ctor + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +50768 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50775:5: error: designator order for field ‘ecs_type_hooks_t::copy’ does not match declaration order in ‘ecs_type_hooks_t’ +50775 | }); + | ^ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50770:35: error: taking address of rvalue [-fpermissive] +50770 | ecs_set_hooks(world, EcsEnum, { + | ^ +50771 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50772 | .move = ecs_move(EcsEnum), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +50773 | .copy = ecs_copy(EcsEnum), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +50774 | .dtor = ecs_dtor(EcsEnum) + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +50775 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50782:5: error: designator order for field ‘ecs_type_hooks_t::copy’ does not match declaration order in ‘ecs_type_hooks_t’ +50782 | }); + | ^ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50777:38: error: taking address of rvalue [-fpermissive] +50777 | ecs_set_hooks(world, EcsBitmask, { + | ^ +50778 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50779 | .move = ecs_move(EcsBitmask), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50780 | .copy = ecs_copy(EcsBitmask), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50781 | .dtor = ecs_dtor(EcsBitmask) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50782 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50789:5: error: designator order for field ‘ecs_type_hooks_t::copy’ does not match declaration order in ‘ecs_type_hooks_t’ +50789 | }); + | ^ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50784:35: error: taking address of rvalue [-fpermissive] +50784 | ecs_set_hooks(world, EcsUnit, { + | ^ +50785 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50786 | .move = ecs_move(EcsUnit), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +50787 | .copy = ecs_copy(EcsUnit), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +50788 | .dtor = ecs_dtor(EcsUnit) + | ~~~~~~~~~~~~~~~~~~~~~~~~~ +50789 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50796:5: error: designator order for field ‘ecs_type_hooks_t::copy’ does not match declaration order in ‘ecs_type_hooks_t’ +50796 | }); + | ^ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50791:41: error: taking address of rvalue [-fpermissive] +50791 | ecs_set_hooks(world, EcsUnitPrefix, { + | ^ +50792 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50793 | .move = ecs_move(EcsUnitPrefix), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50794 | .copy = ecs_copy(EcsUnitPrefix), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50795 | .dtor = ecs_dtor(EcsUnitPrefix) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50796 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50801:5: note: in expansion of macro ‘ecs_observer’ +50801 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50807:5: note: in expansion of macro ‘ecs_observer’ +50807 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50813:5: note: in expansion of macro ‘ecs_observer’ +50813 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50819:5: note: in expansion of macro ‘ecs_observer’ +50819 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50825:5: note: in expansion of macro ‘ecs_observer’ +50825 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50831:5: note: in expansion of macro ‘ecs_observer’ +50831 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50837:5: note: in expansion of macro ‘ecs_observer’ +50837 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50843:5: note: in expansion of macro ‘ecs_observer’ +50843 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50849:5: note: in expansion of macro ‘ecs_observer’ +50849 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50855:5: note: in expansion of macro ‘ecs_observer’ +50855 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50861:5: note: in expansion of macro ‘ecs_observer’ +50861 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50867:5: note: in expansion of macro ‘ecs_observer’ +50867 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50873:5: note: in expansion of macro ‘ecs_observer’ +50873 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:50879:5: note: in expansion of macro ‘ecs_observer’ +50879 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50899:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50899 | ECS_PRIMITIVE(world, bool, EcsBool); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50900:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50900 | ECS_PRIMITIVE(world, char, EcsChar); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50901:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50901 | ECS_PRIMITIVE(world, byte, EcsByte); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50902:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50902 | ECS_PRIMITIVE(world, u8, EcsU8); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50903:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50903 | ECS_PRIMITIVE(world, u16, EcsU16); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50904:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50904 | ECS_PRIMITIVE(world, u32, EcsU32); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50905:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50905 | ECS_PRIMITIVE(world, u64, EcsU64); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50906:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50906 | ECS_PRIMITIVE(world, uptr, EcsUPtr); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50907:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50907 | ECS_PRIMITIVE(world, i8, EcsI8); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50908:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50908 | ECS_PRIMITIVE(world, i16, EcsI16); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50909:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50909 | ECS_PRIMITIVE(world, i32, EcsI32); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50910:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50910 | ECS_PRIMITIVE(world, i64, EcsI64); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50911:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50911 | ECS_PRIMITIVE(world, iptr, EcsIPtr); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50912:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50912 | ECS_PRIMITIVE(world, f32, EcsF32); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50913:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50913 | ECS_PRIMITIVE(world, f64, EcsF64); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50914:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50914 | ECS_PRIMITIVE(world, string, EcsString); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50915:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50915 | ECS_PRIMITIVE(world, entity, EcsEntity); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: error: taking address of rvalue [-fpermissive] +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50893 | .name = #type,\ + | ~~~~~~~~~~~~~~~ +50894 | .symbol = #type });\ + | ~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50891:52: note: in definition of macro ‘ECS_PRIMITIVE’ +50891 | ecs_entity_init(world, &(ecs_entity_desc_t){\ + | ^~ +50892 | .id = ecs_id(ecs_##type##_t),\ + | +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:50895:62: error: taking address of rvalue [-fpermissive] +50895 | ecs_set(world, ecs_id(ecs_##type##_t), EcsPrimitive, {\ + | ^~ +50896 | .kind = primitive_kind\ + | ~~~~~~~~~~~~~~~~~~~~~~~ +50897 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50916:5: note: in expansion of macro ‘ECS_PRIMITIVE’ +50916 | ECS_PRIMITIVE(world, id, EcsId); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:50925:5: error: designator order for field ‘ecs_type_hooks_t::dtor’ does not match declaration order in ‘ecs_type_hooks_t’ +50925 | }); + | ^ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50920:40: error: taking address of rvalue [-fpermissive] +50920 | ecs_set_hooks(world, ecs_string_t, { + | ^ +50921 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50922 | .copy = ecs_copy(ecs_string_t), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50923 | .move = ecs_move(ecs_string_t), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50924 | .dtor = ecs_dtor(ecs_string_t) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +50925 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50928:66: error: taking address of rvalue [-fpermissive] +50928 | ecs_set(world, ecs_id(EcsStruct), EcsDefaultChildComponent, {ecs_id(EcsMember)}); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50929:66: error: taking address of rvalue [-fpermissive] +50929 | ecs_set(world, ecs_id(EcsMember), EcsDefaultChildComponent, {ecs_id(EcsMember)}); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50930:66: error: taking address of rvalue [-fpermissive] +50930 | ecs_set(world, ecs_id(EcsEnum), EcsDefaultChildComponent, {EcsConstant}); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:50931:66: error: taking address of rvalue [-fpermissive] +50931 | ecs_set(world, ecs_id(EcsBitmask), EcsDefaultChildComponent, {EcsConstant}); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_struct_ctor(void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:51044:54: error: invalid conversion from ‘void*’ to ‘ecs_rtt_struct_ctx_t*’ [-fpermissive] +51044 | ecs_rtt_struct_ctx_t *rtt_ctx = type_info->hooks.lifecycle_ctx; + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_struct_dtor(void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:51058:54: error: invalid conversion from ‘void*’ to ‘ecs_rtt_struct_ctx_t*’ [-fpermissive] +51058 | ecs_rtt_struct_ctx_t *rtt_ctx = type_info->hooks.lifecycle_ctx; + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_struct_move(void*, void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:51073:54: error: invalid conversion from ‘void*’ to ‘ecs_rtt_struct_ctx_t*’ [-fpermissive] +51073 | ecs_rtt_struct_ctx_t *rtt_ctx = type_info->hooks.lifecycle_ctx; + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_struct_copy(void*, const void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:51104:54: error: invalid conversion from ‘void*’ to ‘ecs_rtt_struct_ctx_t*’ [-fpermissive] +51104 | ecs_rtt_struct_ctx_t *rtt_ctx = type_info->hooks.lifecycle_ctx; + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_free_lifecycle_struct_ctx(void*)’: +../src/flecs/distr/flecs.c:51133:43: error: invalid conversion from ‘void*’ to ‘ecs_rtt_struct_ctx_t*’ [-fpermissive] +51133 | ecs_rtt_struct_ctx_t *lifecycle_ctx = ctx; + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_init_default_hooks_struct(ecs_world_t*, ecs_entity_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:51210:42: error: invalid conversion from ‘void*’ to ‘ecs_member_t*’ [-fpermissive] +51210 | ecs_member_t *members = ecs_vec_first(&struct_info->members); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_array_ctor(void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:51314:53: error: invalid conversion from ‘void*’ to ‘ecs_rtt_array_ctx_t*’ [-fpermissive] +51314 | ecs_rtt_array_ctx_t *rtt_ctx = type_info->hooks.lifecycle_ctx; + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_array_dtor(void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:51332:53: error: invalid conversion from ‘void*’ to ‘ecs_rtt_array_ctx_t*’ [-fpermissive] +51332 | ecs_rtt_array_ctx_t *rtt_ctx = type_info->hooks.lifecycle_ctx; + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_array_move(void*, void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:51351:53: error: invalid conversion from ‘void*’ to ‘ecs_rtt_array_ctx_t*’ [-fpermissive] +51351 | ecs_rtt_array_ctx_t *rtt_ctx = type_info->hooks.lifecycle_ctx; + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_array_copy(void*, const void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:51371:53: error: invalid conversion from ‘void*’ to ‘ecs_rtt_array_ctx_t*’ [-fpermissive] +51371 | ecs_rtt_array_ctx_t *rtt_ctx = type_info->hooks.lifecycle_ctx; + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_vector_ctor(void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:51459:54: error: invalid conversion from ‘void*’ to ‘ecs_rtt_vector_ctx_t*’ [-fpermissive] +51459 | ecs_rtt_vector_ctx_t *rtt_ctx = type_info->hooks.lifecycle_ctx; + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_vec_t*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:3948:36: note: in expansion of macro ‘ECS_OFFSET’ + 3948 | #define ECS_ELEM(ptr, size, index) ECS_OFFSET(ptr, (size) * (index)) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:51462:26: note: in expansion of macro ‘ECS_ELEM’ +51462 | ecs_vec_t *vec = ECS_ELEM(ptr, type_info->size, i); + | ^~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_vector_dtor(void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:51475:54: error: invalid conversion from ‘void*’ to ‘ecs_rtt_vector_ctx_t*’ [-fpermissive] +51475 | ecs_rtt_vector_ctx_t *rtt_ctx = type_info->hooks.lifecycle_ctx; + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_vec_t*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:3948:36: note: in expansion of macro ‘ECS_OFFSET’ + 3948 | #define ECS_ELEM(ptr, size, index) ECS_OFFSET(ptr, (size) * (index)) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:51479:26: note: in expansion of macro ‘ECS_ELEM’ +51479 | ecs_vec_t *vec = ECS_ELEM(ptr, type_info->size, i); + | ^~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_vector_move(void*, void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_vec_t*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:3948:36: note: in expansion of macro ‘ECS_OFFSET’ + 3948 | #define ECS_ELEM(ptr, size, index) ECS_OFFSET(ptr, (size) * (index)) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:51499:30: note: in expansion of macro ‘ECS_ELEM’ +51499 | ecs_vec_t *src_vec = ECS_ELEM(src_ptr, type_info->size, i); + | ^~~~~~~~ +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_vec_t*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:3948:36: note: in expansion of macro ‘ECS_OFFSET’ + 3948 | #define ECS_ELEM(ptr, size, index) ECS_OFFSET(ptr, (size) * (index)) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:51500:30: note: in expansion of macro ‘ECS_ELEM’ +51500 | ecs_vec_t *dst_vec = ECS_ELEM(dst_ptr, type_info->size, i); + | ^~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_vector_copy(void*, const void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:51515:54: error: invalid conversion from ‘void*’ to ‘ecs_rtt_vector_ctx_t*’ [-fpermissive] +51515 | ecs_rtt_vector_ctx_t *rtt_ctx = type_info->hooks.lifecycle_ctx; + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘const ecs_vec_t*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:3948:36: note: in expansion of macro ‘ECS_OFFSET’ + 3948 | #define ECS_ELEM(ptr, size, index) ECS_OFFSET(ptr, (size) * (index)) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:51526:36: note: in expansion of macro ‘ECS_ELEM’ +51526 | const ecs_vec_t *src_vec = ECS_ELEM(src_ptr, type_info->size, i); + | ^~~~~~~~ +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_vec_t*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:3948:36: note: in expansion of macro ‘ECS_OFFSET’ + 3948 | #define ECS_ELEM(ptr, size, index) ECS_OFFSET(ptr, (size) * (index)) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:51527:30: note: in expansion of macro ‘ECS_ELEM’ +51527 | ecs_vec_t *dst_vec = ECS_ELEM(dst_ptr, type_info->size, i); + | ^~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_rtt_init_default_hooks(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:51617:36: error: taking address of rvalue [-fpermissive] +51617 | &(ecs_type_hooks_t){.ctor = flecs_default_ctor}); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_meta_type_op_kind_t flecs_meta_primitive_to_op_kind(ecs_primitive_kind_t)’: +../src/flecs/distr/flecs.c:51640:27: error: invalid conversion from ‘int’ to ‘ecs_meta_type_op_kind_t’ [-fpermissive] +51640 | return EcsOpPrimitive + kind; + | ~~~~~~~~~~~~~~~^~~~~~ + | | + | int +../src/flecs/distr/flecs.c: In function ‘int flecs_meta_serialize_array_component(ecs_world_t*, ecs_entity_t, ecs_vec_t*)’: +../src/flecs/distr/flecs.c:51757:46: error: invalid conversion from ‘void*’ to ‘ecs_meta_type_op_t*’ [-fpermissive] +51757 | ecs_meta_type_op_t *first = ecs_vec_first(ops); + | ~~~~~~~~~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘int flecs_meta_serialize_struct(ecs_world_t*, ecs_entity_t, ecs_size_t, ecs_vec_t*)’: +../src/flecs/distr/flecs.c:51808:42: error: invalid conversion from ‘void*’ to ‘ecs_member_t*’ [-fpermissive] +51808 | ecs_member_t *members = ecs_vec_first(&ptr->members); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_os_thread_t posix_thread_new(ecs_os_thread_callback_t, void*)’: +../src/flecs/distr/flecs.h:2607:47: error: invalid conversion from ‘void*’ to ‘pthread_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 2607 | #define ecs_os_malloc(size) ecs_os_api.malloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:52253:25: note: in expansion of macro ‘ecs_os_malloc’ +52253 | pthread_t *thread = ecs_os_malloc(sizeof(pthread_t)); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_os_mutex_t posix_mutex_new()’: +../src/flecs/distr/flecs.h:2607:47: error: invalid conversion from ‘void*’ to ‘pthread_mutex_t*’ [-fpermissive] + 2607 | #define ecs_os_malloc(size) ecs_os_api.malloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:52361:30: note: in expansion of macro ‘ecs_os_malloc’ +52361 | pthread_mutex_t *mutex = ecs_os_malloc(sizeof(pthread_mutex_t)); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_os_cond_t posix_cond_new()’: +../src/flecs/distr/flecs.h:2607:47: error: invalid conversion from ‘void*’ to ‘pthread_cond_t*’ [-fpermissive] + 2607 | #define ecs_os_malloc(size) ecs_os_api.malloc_(size) + | ~~~~~~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:52399:28: note: in expansion of macro ‘ecs_os_malloc’ +52399 | pthread_cond_t *cond = ecs_os_malloc(sizeof(pthread_cond_t)); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘EcsPoly* flecs_pipeline_term_system(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:52805:41: error: invalid conversion from ‘void*’ to ‘EcsPoly*’ [-fpermissive] +52805 | EcsPoly *poly = ecs_table_get_column(it->table, index, it->offset); + | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_run_startup_systems(ecs_world_t*)’: +../src/flecs/distr/flecs.c:53260:76: error: expected primary-expression before ‘)’ token +53260 | ecs_entity_t start_pip = ecs_pipeline_init(world, &(ecs_pipeline_desc_t){ + | ^ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_pipeline_init(ecs_world_t*, const ecs_pipeline_desc_t*)’: +../src/flecs/distr/flecs.c:53402:41: error: taking address of rvalue [-fpermissive] +53402 | ecs_set(world, result, EcsPipeline, { pq }); + | ^~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:53405:1: error: jump to label ‘error’ +53405 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:53395:5: note: in expansion of macro ‘ecs_check’ +53395 | ecs_check(query->terms[0].id == EcsSystem, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:53398:27: note: crosses initialization of ‘ecs_pipeline_state_t* pq’ +53398 | ecs_pipeline_state_t *pq = ecs_os_calloc_t(ecs_pipeline_state_t); + | ^~ +../src/flecs/distr/flecs.c:53405:1: error: jump to label ‘error’ +53405 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:53393:5: note: in expansion of macro ‘ecs_check’ +53393 | ecs_check(query->terms != NULL, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:53398:27: note: crosses initialization of ‘ecs_pipeline_state_t* pq’ +53398 | ecs_pipeline_state_t *pq = ecs_os_calloc_t(ecs_pipeline_state_t); + | ^~ +../src/flecs/distr/flecs.c:53405:1: error: jump to label ‘error’ +53405 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:53374:5: note: in expansion of macro ‘ecs_check’ +53374 | ecs_check(desc != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:53398:27: note: crosses initialization of ‘ecs_pipeline_state_t* pq’ +53398 | ecs_pipeline_state_t *pq = ecs_os_calloc_t(ecs_pipeline_state_t); + | ^~ +../src/flecs/distr/flecs.c:53387:18: note: crosses initialization of ‘ecs_query_t* query’ +53387 | ecs_query_t *query = ecs_query_init(world, &qd); + | ^~~~~ +../src/flecs/distr/flecs.c:53381:22: note: crosses initialization of ‘ecs_query_desc_t qd’ +53381 | ecs_query_desc_t qd = desc->query; + | ^~ +../src/flecs/distr/flecs.c:53376:18: note: crosses initialization of ‘ecs_entity_t result’ +53376 | ecs_entity_t result = desc->entity; + | ^~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void FlecsPipelineImport(ecs_world_t*)’: +../src/flecs/distr/flecs.c:3008:37: error: taking address of rvalue [-fpermissive] + 3008 | .entity = ecs_entity(world, { .id = ecs_id(id_), .name = #id_, .symbol = #id_ }),\ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:53451:5: note: in expansion of macro ‘flecs_bootstrap_component’ +53451 | flecs_bootstrap_component(world, EcsPipeline); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:3007:53: error: expected primary-expression before ‘)’ token + 3007 | ecs_component_init(world, &(ecs_component_desc_t){\ + | ^ +../src/flecs/distr/flecs.c:53451:5: note: in expansion of macro ‘flecs_bootstrap_component’ +53451 | flecs_bootstrap_component(world, EcsPipeline); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:53458:46: error: taking address of rvalue [-fpermissive] +53458 | ecs_entity_t phase_0 = ecs_entity(world, {0}); + | ^~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:53459:55: note: in expansion of macro ‘ecs_ids’ +53459 | ecs_entity_t phase_1 = ecs_entity(world, { .add = ecs_ids(ecs_dependson(phase_0)) }); + | ^~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:53460:55: note: in expansion of macro ‘ecs_ids’ +53460 | ecs_entity_t phase_2 = ecs_entity(world, { .add = ecs_ids(ecs_dependson(phase_1)) }); + | ^~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:53461:55: note: in expansion of macro ‘ecs_ids’ +53461 | ecs_entity_t phase_3 = ecs_entity(world, { .add = ecs_ids(ecs_dependson(phase_2)) }); + | ^~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:53462:55: note: in expansion of macro ‘ecs_ids’ +53462 | ecs_entity_t phase_4 = ecs_entity(world, { .add = ecs_ids(ecs_dependson(phase_3)) }); + | ^~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:53463:55: note: in expansion of macro ‘ecs_ids’ +53463 | ecs_entity_t phase_5 = ecs_entity(world, { .add = ecs_ids(ecs_dependson(phase_4)) }); + | ^~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:53464:55: note: in expansion of macro ‘ecs_ids’ +53464 | ecs_entity_t phase_6 = ecs_entity(world, { .add = ecs_ids(ecs_dependson(phase_5)) }); + | ^~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:53465:55: note: in expansion of macro ‘ecs_ids’ +53465 | ecs_entity_t phase_7 = ecs_entity(world, { .add = ecs_ids(ecs_dependson(phase_6)) }); + | ^~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:53466:55: note: in expansion of macro ‘ecs_ids’ +53466 | ecs_entity_t phase_8 = ecs_entity(world, { .add = ecs_ids(ecs_dependson(phase_7)) }); + | ^~~~~~~ +../src/flecs/distr/flecs.c:53480:39: error: taking address of rvalue [-fpermissive] +53480 | ecs_set_hooks(world, EcsPipeline, { + | ^ +53481 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +53482 | .dtor = ecs_dtor(EcsPipeline), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +53483 | .move = ecs_move(EcsPipeline) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +53484 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:53487:37: error: taking address of rvalue [-fpermissive] +53487 | .entity = ecs_entity(world, { .name = "BuiltinPipeline" }), + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:11890:53: note: in definition of macro ‘ecs_pipeline’ +11890 | ecs_pipeline_init(world, &(ecs_pipeline_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:53487:19: note: in expansion of macro ‘ecs_entity’ +53487 | .entity = ecs_entity(world, { .name = "BuiltinPipeline" }), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:11890:51: error: expected primary-expression before ‘)’ token +11890 | ecs_pipeline_init(world, &(ecs_pipeline_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:53486:23: note: in expansion of macro ‘ecs_pipeline’ +53486 | world->pipeline = ecs_pipeline(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void* flecs_worker(void*)’: +../src/flecs/distr/flecs.c:53539:26: error: invalid conversion from ‘void*’ to ‘ecs_stage_t*’ [-fpermissive] +53539 | ecs_stage_t *stage = arg; + | ^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void* flecs_ast_new_(ecs_script_parser_t*, ecs_size_t, ecs_script_node_kind_t)’: +../src/flecs/distr/flecs.h:2005:44: error: invalid conversion from ‘void*’ to ‘ecs_script_node_t*’ [-fpermissive] + 2005 | #define flecs_calloc(a, size) flecs_bcalloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:53840:33: note: in expansion of macro ‘flecs_calloc’ +53840 | ecs_script_node_t *result = flecs_calloc(a, size); + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘const char* flecs_parse_multiline_string(ecs_meta_cursor_t*, const char*, const char*, const char*)’: +../src/flecs/distr/flecs.c:54529:1: error: jump to label ‘error’ +54529 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:54520:14: note: from here +54520 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:54522:11: note: crosses initialization of ‘char* strval’ +54522 | char *strval = ecs_strbuf_get(&str); + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_value_t flecs_dotresolve_var(ecs_world_t*, ecs_script_vars_t*, char*)’: +../src/flecs/distr/flecs.c:54579:5: error: designator order for field ‘ecs_value_t::type’ does not match declaration order in ‘ecs_value_t’ +54579 | }; + | ^ +../src/flecs/distr/flecs.c: In function ‘int flecs_meta_call(ecs_world_t*, ecs_value_stack_t*, const char*, const char*, const char*, ecs_meta_cursor_t*, const char*)’: +../src/flecs/distr/flecs.c:54611:45: error: invalid conversion from ‘void*’ to ‘char**’ [-fpermissive] +54611 | char **result = flecs_expr_value_new(stack, ecs_id(ecs_string_t)); + | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:54622:45: error: invalid conversion from ‘void*’ to ‘char**’ [-fpermissive] +54622 | char **result = flecs_expr_value_new(stack, ecs_id(ecs_string_t)); + | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t flecs_binary_expr_type(ecs_world_t*, const char*, const char*, const char*, ecs_value_t*, ecs_value_t*, ecs_expr_oper_t, ecs_entity_t*)’: +../src/flecs/distr/flecs.c:55077:1: error: jump to label ‘error’ +55077 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10874:5: note: in expansion of macro ‘ecs_dummy_check’ +10874 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:55022:9: note: in expansion of macro ‘ecs_throw’ +55022 | ecs_throw(ECS_INTERNAL_ERROR, "invalid operator"); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:55040:18: note: crosses initialization of ‘ecs_entity_t rtype’ +55040 | ecs_entity_t rtype = flecs_largest_type(rtype_ptr); + | ^~~~~ +../src/flecs/distr/flecs.c:55039:18: note: crosses initialization of ‘ecs_entity_t ltype’ +55039 | ecs_entity_t ltype = flecs_largest_type(ltype_ptr); + | ^~~~~ +../src/flecs/distr/flecs.c:55027:25: note: crosses initialization of ‘const EcsPrimitive* rtype_ptr’ +55027 | const EcsPrimitive *rtype_ptr = ecs_get(world, rvalue->type, EcsPrimitive); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:55026:25: note: crosses initialization of ‘const EcsPrimitive* ltype_ptr’ +55026 | const EcsPrimitive *ltype_ptr = ecs_get(world, lvalue->type, EcsPrimitive); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_binary_expr_do(ecs_world_t*, ecs_value_stack_t*, const char*, const char*, const char*, ecs_value_t*, ecs_value_t*, ecs_value_t*, ecs_expr_oper_t)’: +../src/flecs/distr/flecs.c:55246:1: error: jump to label ‘error’ +55246 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:55169:14: note: from here +55169 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:55176:17: note: crosses initialization of ‘ecs_value_t tmp_storage’ +55176 | ecs_value_t tmp_storage = {0}; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:55175:18: note: crosses initialization of ‘ecs_value_t* storage’ +55175 | ecs_value_t *storage = result; + | ^~~~~~~ +../src/flecs/distr/flecs.c:55246:1: error: jump to label ‘error’ +55246 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:55164:14: note: from here +55164 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:55176:17: note: crosses initialization of ‘ecs_value_t tmp_storage’ +55176 | ecs_value_t tmp_storage = {0}; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:55175:18: note: crosses initialization of ‘ecs_value_t* storage’ +55175 | ecs_value_t *storage = result; + | ^~~~~~~ +../src/flecs/distr/flecs.c: In function ‘const char* flecs_funccall_parse(ecs_world_t*, ecs_value_stack_t*, const char*, const char*, const char*, char*, ecs_meta_cursor_t*, ecs_value_t*, bool, const ecs_script_expr_run_desc_t*)’: +../src/flecs/distr/flecs.c:55366:29: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive] +55366 | char *paren = strchr(ptr, '('); + | ~~~~~~^~~~~~~~~~ + | | + | const char* +../src/flecs/distr/flecs.c: In function ‘const char* flecs_script_expr_run(ecs_world_t*, ecs_value_stack_t*, const char*, ecs_value_t*, ecs_expr_oper_t, const ecs_script_expr_run_desc_t*)’: +../src/flecs/distr/flecs.c:55761:28: error: invalid conversion from ‘int’ to ‘ecs_expr_oper_t’ [-fpermissive] +55761 | unary_op = 0; + | ^ + | | + | int +../src/flecs/distr/flecs.c: In function ‘const char* flecs_script_comma_expr(ecs_script_parser_t*, const char*, bool)’: +../src/flecs/distr/flecs.c:56221:9: error: jump to case label +56221 | default:\ + | ^~~~~~~ +../src/flecs/distr/flecs.c:56277:9: note: in definition of macro ‘Loop’ +56277 | __VA_ARGS__\ + | ^~~~~~~~~~~~ +56278 | } while (true); + | +../src/flecs/distr/flecs.c:56345:9: note: in expansion of macro ‘LookAhead’ +56345 | LookAhead( + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:56216:17: note: crosses initialization of ‘const char* old_lh_token_cur’ +56216 | const char *old_lh_token_cur = parser->token_cur;\ + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:56277:9: note: in definition of macro ‘Loop’ +56277 | __VA_ARGS__\ + | ^~~~~~~~~~~~ +56278 | } while (true); + | +../src/flecs/distr/flecs.c:56345:9: note: in expansion of macro ‘LookAhead’ +56345 | LookAhead( + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:56234:5: note: in expansion of macro ‘LookAhead’ +56234 | LookAhead(\ + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:56359:17: note: in expansion of macro ‘LookAhead_1’ +56359 | LookAhead_1(',', + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘const char* flecs_script_stmt(ecs_script_parser_t*, const char*)’: +../src/flecs/distr/flecs.c:56654:37: error: expected unqualified-id before ‘template’ +56654 | ecs_script_template_node_t *template = flecs_script_insert_template( + | ^~~~~~~~ +../src/flecs/distr/flecs.c:56152:13: note: in definition of macro ‘Parse’ +56152 | __VA_ARGS__\ + | ^~~~~~~~~~~~ +56153 | default:\ + | +../src/flecs/distr/flecs.c:56653:5: note: in expansion of macro ‘Parse_1’ +56653 | Parse_1(EcsTokIdentifier, + | ^~~~~~~ +../src/flecs/distr/flecs.c:56660:51: error: expected primary-expression before ‘template’ +56660 | return flecs_script_scope(parser, template->scope, pos); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:56152:13: note: in definition of macro ‘Parse’ +56152 | __VA_ARGS__\ + | ^~~~~~~~~~~~ +56153 | default:\ + | +../src/flecs/distr/flecs.c:56653:5: note: in expansion of macro ‘Parse_1’ +56653 | Parse_1(EcsTokIdentifier, + | ^~~~~~~ +../src/flecs/distr/flecs.c:56657:9: note: in expansion of macro ‘Parse’ +56657 | Parse( + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_script_t* ecs_script_parse(ecs_world_t*, const char*, const char*)’: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:57100:26: note: in expansion of macro ‘flecs_alloc’ +57100 | impl->token_buffer = flecs_alloc( + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘const char* flecs_term_parse_arg(ecs_script_parser_t*, const char*, int32_t)’: +../src/flecs/distr/flecs.c:56105:5: error: jump to label ‘error’ +56105 | error:\ + | ^~~~~ +../src/flecs/distr/flecs.c:57357:5: note: in expansion of macro ‘ParserEnd’ +57357 | ParserEnd; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:56115:10: note: from here +56115 | goto error + | ^~~~~ +../src/flecs/distr/flecs.c:57277:13: note: in expansion of macro ‘Error’ +57277 | Error("too many arguments in term"); + | ^~~~~ +../src/flecs/distr/flecs.c:56216:17: note: crosses initialization of ‘const char* old_lh_token_cur’ +56216 | const char *old_lh_token_cur = parser->token_cur;\ + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:56234:5: note: in expansion of macro ‘LookAhead’ +56234 | LookAhead(\ + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:57284:5: note: in expansion of macro ‘LookAhead_1’ +57284 | LookAhead_1(EcsTokIdentifier, + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:57282:10: note: crosses initialization of ‘bool is_trav_flag’ +57282 | bool is_trav_flag = false; + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘const char* flecs_query_term_parse(ecs_script_parser_t*, const char*)’: +../src/flecs/distr/flecs.c:57627:14: error: jump to case label +57627 | case '\n':\ + | ^~~~ +../src/flecs/distr/flecs.c:56152:13: note: in definition of macro ‘Parse’ +56152 | __VA_ARGS__\ + | ^~~~~~~~~~~~ +56153 | default:\ + | +../src/flecs/distr/flecs.c:56216:17: note: crosses initialization of ‘const char* old_lh_token_cur’ +56216 | const char *old_lh_token_cur = parser->token_cur;\ + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:56152:13: note: in definition of macro ‘Parse’ +56152 | __VA_ARGS__\ + | ^~~~~~~~~~~~ +56153 | default:\ + | +../src/flecs/distr/flecs.c:56234:5: note: in expansion of macro ‘LookAhead’ +56234 | LookAhead(\ + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:57623:13: note: in expansion of macro ‘LookAhead_1’ +57623 | LookAhead_1(',', + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:57628:14: error: jump to case label +57628 | case '\0': + | ^~~~ +../src/flecs/distr/flecs.c:56152:13: note: in definition of macro ‘Parse’ +56152 | __VA_ARGS__\ + | ^~~~~~~~~~~~ +56153 | default:\ + | +../src/flecs/distr/flecs.c:56216:17: note: crosses initialization of ‘const char* old_lh_token_cur’ +56216 | const char *old_lh_token_cur = parser->token_cur;\ + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:56152:13: note: in definition of macro ‘Parse’ +56152 | __VA_ARGS__\ + | ^~~~~~~~~~~~ +56153 | default:\ + | +../src/flecs/distr/flecs.c:56234:5: note: in expansion of macro ‘LookAhead’ +56234 | LookAhead(\ + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:57623:13: note: in expansion of macro ‘LookAhead_1’ +57623 | LookAhead_1(',', + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:56153:9: error: jump to case label +56153 | default:\ + | ^~~~~~~ +../src/flecs/distr/flecs.c:57601:5: note: in expansion of macro ‘Parse’ +57601 | Parse( + | ^~~~~ +../src/flecs/distr/flecs.c:56216:17: note: crosses initialization of ‘const char* old_lh_token_cur’ +56216 | const char *old_lh_token_cur = parser->token_cur;\ + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:56152:13: note: in definition of macro ‘Parse’ +56152 | __VA_ARGS__\ + | ^~~~~~~~~~~~ +56153 | default:\ + | +../src/flecs/distr/flecs.c:56234:5: note: in expansion of macro ‘LookAhead’ +56234 | LookAhead(\ + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:57623:13: note: in expansion of macro ‘LookAhead_1’ +57623 | LookAhead_1(',', + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_terms_parse(ecs_script_t*, ecs_term_t*, int32_t*)’: +../src/flecs/distr/flecs.c:57659:25: error: invalid conversion from ‘int’ to ‘ecs_oper_kind_t’ [-fpermissive] +57659 | parser.extra_oper = 0; + | ^ + | | + | int +../src/flecs/distr/flecs.c:57674:29: error: invalid conversion from ‘int’ to ‘ecs_oper_kind_t’ [-fpermissive] +57674 | parser.extra_oper = 0; + | ^ + | | + | int +../src/flecs/distr/flecs.c: In function ‘const char* flecs_term_parse(ecs_world_t*, const char*, const char*, ecs_term_t*, char*)’: +../src/flecs/distr/flecs.c:56087:9: error: expected primary-expression before ‘.’ token +56087 | .pub.world = ECS_CONST_CAST(ecs_world_t*, w),\ + | ^ +../src/flecs/distr/flecs.c:57750:5: note: in expansion of macro ‘EcsParserFixedBuffer’ +57750 | EcsParserFixedBuffer(world, name, expr, token_buffer, 256); + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:56088:9: error: expected primary-expression before ‘.’ token +56088 | .pub.name = script_name,\ + | ^ +../src/flecs/distr/flecs.c:57750:5: note: in expansion of macro ‘EcsParserFixedBuffer’ +57750 | EcsParserFixedBuffer(world, name, expr, token_buffer, 256); + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:56089:9: error: expected primary-expression before ‘.’ token +56089 | .pub.code = expr\ + | ^ +../src/flecs/distr/flecs.c:57750:5: note: in expansion of macro ‘EcsParserFixedBuffer’ +57750 | EcsParserFixedBuffer(world, name, expr, token_buffer, 256); + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘const char* flecs_id_parse(const ecs_world_t*, const char*, const char*, ecs_id_t*)’: +../src/flecs/distr/flecs.c:56087:9: error: expected primary-expression before ‘.’ token +56087 | .pub.world = ECS_CONST_CAST(ecs_world_t*, w),\ + | ^ +../src/flecs/distr/flecs.c:57775:5: note: in expansion of macro ‘EcsParserFixedBuffer’ +57775 | EcsParserFixedBuffer(world, name, expr, token_buffer, 256); + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:56088:9: error: expected primary-expression before ‘.’ token +56088 | .pub.name = script_name,\ + | ^ +../src/flecs/distr/flecs.c:57775:5: note: in expansion of macro ‘EcsParserFixedBuffer’ +57775 | EcsParserFixedBuffer(world, name, expr, token_buffer, 256); + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:56089:9: error: expected primary-expression before ‘.’ token +56089 | .pub.code = expr\ + | ^ +../src/flecs/distr/flecs.c:57775:5: note: in expansion of macro ‘EcsParserFixedBuffer’ +57775 | EcsParserFixedBuffer(world, name, expr, token_buffer, 256); + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘const char* ecs_query_args_parse(ecs_query_t*, ecs_iter_t*, const char*)’: +../src/flecs/distr/flecs.c:56087:9: error: expected primary-expression before ‘.’ token +56087 | .pub.world = ECS_CONST_CAST(ecs_world_t*, w),\ + | ^ +../src/flecs/distr/flecs.c:57900:5: note: in expansion of macro ‘EcsParserFixedBuffer’ +57900 | EcsParserFixedBuffer(q->world, q_name, expr, token_buffer, 256); + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:56088:9: error: expected primary-expression before ‘.’ token +56088 | .pub.name = script_name,\ + | ^ +../src/flecs/distr/flecs.c:57900:5: note: in expansion of macro ‘EcsParserFixedBuffer’ +57900 | EcsParserFixedBuffer(q->world, q_name, expr, token_buffer, 256); + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:56089:9: error: expected primary-expression before ‘.’ token +56089 | .pub.code = expr\ + | ^ +../src/flecs/distr/flecs.c:57900:5: note: in expansion of macro ‘EcsParserFixedBuffer’ +57900 | EcsParserFixedBuffer(q->world, q_name, expr, token_buffer, 256); + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:57902:1: error: jump to label ‘error’ +57902 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:57891:5: note: in expansion of macro ‘ecs_check’ +57891 | ecs_check(expr != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:56091:25: note: crosses initialization of ‘ecs_script_parser_t parser’ +56091 | ecs_script_parser_t parser = {\ + | ^~~~~~ +../src/flecs/distr/flecs.c:57900:5: note: in expansion of macro ‘EcsParserFixedBuffer’ +57900 | EcsParserFixedBuffer(q->world, q_name, expr, token_buffer, 256); + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:56086:23: note: crosses initialization of ‘ecs_script_impl_t script’ +56086 | ecs_script_impl_t script = {\ + | ^~~~~~ +../src/flecs/distr/flecs.c:57900:5: note: in expansion of macro ‘EcsParserFixedBuffer’ +57900 | EcsParserFixedBuffer(q->world, q_name, expr, token_buffer, 256); + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:57893:17: note: crosses initialization of ‘const char* q_name’ +57893 | const char *q_name = q->entity ? ecs_get_name(q->world, q->entity) : NULL; + | ^~~~~~ +../src/flecs/distr/flecs.c:57902:1: error: jump to label ‘error’ +57902 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:57890:5: note: in expansion of macro ‘ecs_check’ +57890 | ecs_check(it != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:56091:25: note: crosses initialization of ‘ecs_script_parser_t parser’ +56091 | ecs_script_parser_t parser = {\ + | ^~~~~~ +../src/flecs/distr/flecs.c:57900:5: note: in expansion of macro ‘EcsParserFixedBuffer’ +57900 | EcsParserFixedBuffer(q->world, q_name, expr, token_buffer, 256); + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:56086:23: note: crosses initialization of ‘ecs_script_impl_t script’ +56086 | ecs_script_impl_t script = {\ + | ^~~~~~ +../src/flecs/distr/flecs.c:57900:5: note: in expansion of macro ‘EcsParserFixedBuffer’ +57900 | EcsParserFixedBuffer(q->world, q_name, expr, token_buffer, 256); + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:57893:17: note: crosses initialization of ‘const char* q_name’ +57893 | const char *q_name = q->entity ? ecs_get_name(q->world, q->entity) : NULL; + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘int ecs_script_run(ecs_world_t*, const char*, const char*)’: +../src/flecs/distr/flecs.c:57998:1: error: jump to label ‘error’ +57998 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:57983:14: note: from here +57983 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:57986:18: note: crosses initialization of ‘ecs_entity_t prev_scope’ +57986 | ecs_entity_t prev_scope = ecs_set_scope(world, 0); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int EcsScript_serialize(const ecs_serializer_t*, const void*)’: +../src/flecs/distr/flecs.c:58140:29: error: invalid conversion from ‘const void*’ to ‘const EcsScript*’ [-fpermissive] +58140 | const EcsScript *data = ptr; + | ^~~ + | | + | const void* +../src/flecs/distr/flecs.c:58142:20: error: no matching function for call to ‘ecs_serializer_t::member(const ecs_serializer_t*&, const char [5]) const’ +58142 | ser->member(ser, "name"); + | ~~~~~~~~~~~^~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:31809:12: note: candidate: ‘int ecs_serializer_t::member(const char*) const’ +31809 | inline int ecs_serializer_t::member(const char *name) const { + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:31809:12: note: candidate expects 1 argument, 2 provided +../src/flecs/distr/flecs.c:58143:19: error: no matching function for call to ‘ecs_serializer_t::value(const ecs_serializer_t*&, const ecs_entity_t&, const char**) const’ +58143 | ser->value(ser, ecs_id(ecs_string_t), &data->script->name); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:15304:9: note: candidate: ‘template int ecs_serializer_t::value(const T&) const’ +15304 | int value(const T& value) const; + | ^~~~~ +../src/flecs/distr/flecs.h:15304:9: note: template argument deduction/substitution failed: +../src/flecs/distr/flecs.c:58143:19: note: candidate expects 1 argument, 3 provided +58143 | ser->value(ser, ecs_id(ecs_string_t), &data->script->name); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:31799:12: note: candidate: ‘int ecs_serializer_t::value(ecs_entity_t, const void*) const’ +31799 | inline int ecs_serializer_t::value(ecs_entity_t type, const void *v) const { + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:31799:12: note: candidate expects 2 arguments, 3 provided +../src/flecs/distr/flecs.c:58144:20: error: no matching function for call to ‘ecs_serializer_t::member(const ecs_serializer_t*&, const char [5]) const’ +58144 | ser->member(ser, "code"); + | ~~~~~~~~~~~^~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:31809:12: note: candidate: ‘int ecs_serializer_t::member(const char*) const’ +31809 | inline int ecs_serializer_t::member(const char *name) const { + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:31809:12: note: candidate expects 1 argument, 2 provided +../src/flecs/distr/flecs.c:58145:19: error: no matching function for call to ‘ecs_serializer_t::value(const ecs_serializer_t*&, const ecs_entity_t&, const char**) const’ +58145 | ser->value(ser, ecs_id(ecs_string_t), &data->script->code); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:15304:9: note: candidate: ‘template int ecs_serializer_t::value(const T&) const’ +15304 | int value(const T& value) const; + | ^~~~~ +../src/flecs/distr/flecs.h:15304:9: note: template argument deduction/substitution failed: +../src/flecs/distr/flecs.c:58145:19: note: candidate expects 1 argument, 3 provided +58145 | ser->value(ser, ecs_id(ecs_string_t), &data->script->code); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:31799:12: note: candidate: ‘int ecs_serializer_t::value(ecs_entity_t, const void*) const’ +31799 | inline int ecs_serializer_t::value(ecs_entity_t type, const void *v) const { + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:31799:12: note: candidate expects 2 arguments, 3 provided +../src/flecs/distr/flecs.c:58148:20: error: no matching function for call to ‘ecs_serializer_t::member(const ecs_serializer_t*&, const char [4]) const’ +58148 | ser->member(ser, "ast"); + | ~~~~~~~~~~~^~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:31809:12: note: candidate: ‘int ecs_serializer_t::member(const char*) const’ +31809 | inline int ecs_serializer_t::member(const char *name) const { + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:31809:12: note: candidate expects 1 argument, 2 provided +../src/flecs/distr/flecs.c:58149:19: error: no matching function for call to ‘ecs_serializer_t::value(const ecs_serializer_t*&, const ecs_entity_t&, char**) const’ +58149 | ser->value(ser, ecs_id(ecs_string_t), &ast); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:15304:9: note: candidate: ‘template int ecs_serializer_t::value(const T&) const’ +15304 | int value(const T& value) const; + | ^~~~~ +../src/flecs/distr/flecs.h:15304:9: note: template argument deduction/substitution failed: +../src/flecs/distr/flecs.c:58149:19: note: candidate expects 1 argument, 3 provided +58149 | ser->value(ser, ecs_id(ecs_string_t), &ast); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:31799:12: note: candidate: ‘int ecs_serializer_t::value(ecs_entity_t, const void*) const’ +31799 | inline int ecs_serializer_t::value(ecs_entity_t type, const void *v) const { + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:31799:12: note: candidate expects 2 arguments, 3 provided +../src/flecs/distr/flecs.c:58153:20: error: no matching function for call to ‘ecs_serializer_t::member(const ecs_serializer_t*&, const char [5]) const’ +58153 | ser->member(ser, "name"); + | ~~~~~~~~~~~^~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:31809:12: note: candidate: ‘int ecs_serializer_t::member(const char*) const’ +31809 | inline int ecs_serializer_t::member(const char *name) const { + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:31809:12: note: candidate expects 1 argument, 2 provided +../src/flecs/distr/flecs.c:58154:19: error: no matching function for call to ‘ecs_serializer_t::value(const ecs_serializer_t*&, const ecs_entity_t&, char**) const’ +58154 | ser->value(ser, ecs_id(ecs_string_t), &nullString); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:15304:9: note: candidate: ‘template int ecs_serializer_t::value(const T&) const’ +15304 | int value(const T& value) const; + | ^~~~~ +../src/flecs/distr/flecs.h:15304:9: note: template argument deduction/substitution failed: +../src/flecs/distr/flecs.c:58154:19: note: candidate expects 1 argument, 3 provided +58154 | ser->value(ser, ecs_id(ecs_string_t), &nullString); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:31799:12: note: candidate: ‘int ecs_serializer_t::value(ecs_entity_t, const void*) const’ +31799 | inline int ecs_serializer_t::value(ecs_entity_t type, const void *v) const { + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:31799:12: note: candidate expects 2 arguments, 3 provided +../src/flecs/distr/flecs.c:58155:20: error: no matching function for call to ‘ecs_serializer_t::member(const ecs_serializer_t*&, const char [5]) const’ +58155 | ser->member(ser, "code"); + | ~~~~~~~~~~~^~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:31809:12: note: candidate: ‘int ecs_serializer_t::member(const char*) const’ +31809 | inline int ecs_serializer_t::member(const char *name) const { + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:31809:12: note: candidate expects 1 argument, 2 provided +../src/flecs/distr/flecs.c:58156:19: error: no matching function for call to ‘ecs_serializer_t::value(const ecs_serializer_t*&, const ecs_entity_t&, char**) const’ +58156 | ser->value(ser, ecs_id(ecs_string_t), &nullString); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:15304:9: note: candidate: ‘template int ecs_serializer_t::value(const T&) const’ +15304 | int value(const T& value) const; + | ^~~~~ +../src/flecs/distr/flecs.h:15304:9: note: template argument deduction/substitution failed: +../src/flecs/distr/flecs.c:58156:19: note: candidate expects 1 argument, 3 provided +58156 | ser->value(ser, ecs_id(ecs_string_t), &nullString); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:31799:12: note: candidate: ‘int ecs_serializer_t::value(ecs_entity_t, const void*) const’ +31799 | inline int ecs_serializer_t::value(ecs_entity_t type, const void *v) const { + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:31799:12: note: candidate expects 2 arguments, 3 provided +../src/flecs/distr/flecs.c:58157:20: error: no matching function for call to ‘ecs_serializer_t::member(const ecs_serializer_t*&, const char [4]) const’ +58157 | ser->member(ser, "ast"); + | ~~~~~~~~~~~^~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:31809:12: note: candidate: ‘int ecs_serializer_t::member(const char*) const’ +31809 | inline int ecs_serializer_t::member(const char *name) const { + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:31809:12: note: candidate expects 1 argument, 2 provided +../src/flecs/distr/flecs.c:58158:19: error: no matching function for call to ‘ecs_serializer_t::value(const ecs_serializer_t*&, const ecs_entity_t&, char**) const’ +58158 | ser->value(ser, ecs_id(ecs_string_t), &nullString); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:15304:9: note: candidate: ‘template int ecs_serializer_t::value(const T&) const’ +15304 | int value(const T& value) const; + | ^~~~~ +../src/flecs/distr/flecs.h:15304:9: note: template argument deduction/substitution failed: +../src/flecs/distr/flecs.c:58158:19: note: candidate expects 1 argument, 3 provided +58158 | ser->value(ser, ecs_id(ecs_string_t), &nullString); + | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:31799:12: note: candidate: ‘int ecs_serializer_t::value(ecs_entity_t, const void*) const’ +31799 | inline int ecs_serializer_t::value(ecs_entity_t type, const void *v) const { + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:31799:12: note: candidate expects 2 arguments, 3 provided +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void FlecsScriptImport(ecs_world_t*)’: +../src/flecs/distr/flecs.c:58181:5: error: designator order for field ‘ecs_type_hooks_t::dtor’ does not match declaration order in ‘ecs_type_hooks_t’ +58181 | }); + | ^ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:58177:37: error: taking address of rvalue [-fpermissive] +58177 | ecs_set_hooks(world, EcsScript, { + | ^ +58178 | .ctor = flecs_default_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +58179 | .move = ecs_move(EcsScript), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +58180 | .dtor = ecs_dtor(EcsScript) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +58181 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:58185:23: error: taking address of rvalue [-fpermissive] +58185 | ecs_struct(world, { + | ^ +58186 | .entity = ecs_id(ecs_script_t), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +58187 | .members = { + | ~~~~~~~~~~~~ +58188 | { .name = "name", .type = ecs_id(ecs_string_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +58189 | { .name = "code", .type = ecs_id(ecs_string_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +58190 | { .name = "ast", .type = ecs_id(ecs_string_t) } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +58191 | } + | ~ +58192 | }); + | ~ +../src/flecs/distr/flecs.h:16131:49: note: in definition of macro ‘ecs_struct’ +16131 | ecs_struct_init(world, &(ecs_struct_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:16127:47: error: expected primary-expression before ‘)’ token +16127 | ecs_opaque_init(world, &(ecs_opaque_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:58194:5: note: in expansion of macro ‘ecs_opaque’ +58194 | ecs_opaque(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_primitive_kind_t flecs_expr_op_to_primitive_kind(ecs_meta_type_op_kind_t)’: +../src/flecs/distr/flecs.c:58243:17: error: invalid conversion from ‘int’ to ‘ecs_primitive_kind_t’ [-fpermissive] +58243 | return kind - EcsOpPrimitive; + | ~~~~~^~~~~~~~~~~~~~~~ + | | + | int +../src/flecs/distr/flecs.c: In function ‘int flecs_expr_ser_enum(const ecs_world_t*, ecs_meta_type_op_t*, const void*, ecs_strbuf_t*)’: +../src/flecs/distr/flecs.c:58273:1: error: jump to label ‘error’ +58273 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:58255:5: note: in expansion of macro ‘ecs_check’ +58255 | ecs_check(enum_type != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:58261:26: note: crosses initialization of ‘ecs_enum_constant_t* c’ +58261 | ecs_enum_constant_t *c = ecs_map_get_deref(&enum_type->constants, + | ^ +../src/flecs/distr/flecs.c:58257:13: note: crosses initialization of ‘int32_t val’ +58257 | int32_t val = *(const int32_t*)base; + | ^~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_expr_ser_bitmask(const ecs_world_t*, ecs_meta_type_op_t*, const void*, ecs_strbuf_t*)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_bitmask_constant_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:58296:37: note: in expansion of macro ‘ecs_map_ptr’ +58296 | ecs_bitmask_constant_t *c = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:58322:1: error: jump to label ‘error’ +58322 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:58286:5: note: in expansion of macro ‘ecs_check’ +58286 | ecs_check(bitmask_type != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:58294:9: note: crosses initialization of ‘int count’ +58294 | int count = 0; + | ^~~~~ +../src/flecs/distr/flecs.c:58293:20: note: crosses initialization of ‘ecs_map_iter_t it’ +58293 | ecs_map_iter_t it = ecs_map_iter(&bitmask_type->constants); + | ^~ +../src/flecs/distr/flecs.c:58287:14: note: crosses initialization of ‘uint32_t value’ +58287 | uint32_t value = *(const uint32_t*)ptr; + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘int expr_ser_vector(const ecs_world_t*, ecs_meta_type_op_t*, const void*, ecs_strbuf_t*)’: +../src/flecs/distr/flecs.c:58403:30: error: invalid conversion from ‘const void*’ to ‘const ecs_vec_t*’ [-fpermissive] +58403 | const ecs_vec_t *value = base; + | ^~~~ + | | + | const void* +../src/flecs/distr/flecs.c: In function ‘void flecs_script_template_ctor(void*, int32_t, const ecs_type_info_t*)’: +../src/flecs/distr/flecs.c:58678:36: error: invalid conversion from ‘void*’ to ‘ecs_world_t*’ [-fpermissive] +58678 | ecs_world_t *world = ti->hooks.ctx; + | ~~~~~~~~~~^~~ + | | + | void* +../src/flecs/distr/flecs.c:58693:28: error: expected unqualified-id before ‘template’ +58693 | ecs_script_template_t *template = script->template_; + | ^~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:58694:16: error: expected primary-expression before ‘template’ +58694 | ecs_assert(template != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~ +../src/flecs/distr/flecs.h:10810:11: note: in definition of macro ‘ecs_assert’ +10810 | if (!(condition)) {\ + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:58694:16: error: expected ‘)’ before ‘template’ +58694 | ecs_assert(template != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~ +../src/flecs/distr/flecs.h:10810:11: note: in definition of macro ‘ecs_assert’ +10810 | if (!(condition)) {\ + | ^~~~~~~~~ +../src/flecs/distr/flecs.h:10810:10: note: to match this ‘(’ +10810 | if (!(condition)) {\ + | ^ +../src/flecs/distr/flecs.c:58694:5: note: in expansion of macro ‘ecs_assert’ +58694 | ecs_assert(template != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.h:713, + from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:58694:16: error: expected primary-expression before ‘template’ +58694 | ecs_assert(template != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:58694:5: note: in expansion of macro ‘ecs_assert’ +58694 | ecs_assert(template != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:58694:16: error: expected ‘)’ before ‘template’ +58694 | ecs_assert(template != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:58694:5: note: in expansion of macro ‘ecs_assert’ +58694 | ecs_assert(template != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:58695:30: error: expected primary-expression before ‘template’ +58695 | if (st->members.count != template->prop_defaults.count) { + | ^~~~~~~~ +../src/flecs/distr/flecs.c:58695:29: error: expected ‘)’ before ‘template’ +58695 | if (st->members.count != template->prop_defaults.count) { + | ~ ^~~~~~~~~ + | ) +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:58697:40: error: expected primary-expression before ‘template’ +58697 | " (%d), cannot construct", template->prop_defaults.count, + | ^~~~~~~~ +../src/flecs/distr/flecs.h:10669:60: note: in definition of macro ‘ecs_err_’ +10669 | #define ecs_err_(file, line, ...) ecs_log_(-3, file, line, __VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:58696:9: note: in expansion of macro ‘ecs_err’ +58696 | ecs_err("number of props (%d) of template '%s' does not match members" + | ^~~~~~~ +../src/flecs/distr/flecs.c:58702:47: error: invalid conversion from ‘void*’ to ‘const ecs_member_t*’ [-fpermissive] +58702 | const ecs_member_t *members = st->members.array; + | ~~~~~~~~~~~~^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:58704:32: error: expected primary-expression before ‘template’ +58704 | ecs_script_var_t *values = template->prop_defaults.array; + | ^~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_script_template_on_set(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:58743:28: error: expected unqualified-id before ‘template’ +58743 | ecs_script_template_t *template = script->template_; + | ^~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:58744:16: error: expected primary-expression before ‘template’ +58744 | ecs_assert(template != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~ +../src/flecs/distr/flecs.h:10810:11: note: in definition of macro ‘ecs_assert’ +10810 | if (!(condition)) {\ + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:58744:16: error: expected ‘)’ before ‘template’ +58744 | ecs_assert(template != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~ +../src/flecs/distr/flecs.h:10810:11: note: in definition of macro ‘ecs_assert’ +10810 | if (!(condition)) {\ + | ^~~~~~~~~ +../src/flecs/distr/flecs.h:10810:10: note: to match this ‘(’ +10810 | if (!(condition)) {\ + | ^ +../src/flecs/distr/flecs.c:58744:5: note: in expansion of macro ‘ecs_assert’ +58744 | ecs_assert(template != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.h:713, + from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:58744:16: error: expected primary-expression before ‘template’ +58744 | ecs_assert(template != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:58744:5: note: in expansion of macro ‘ecs_assert’ +58744 | ecs_assert(template != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:58744:16: error: expected ‘)’ before ‘template’ +58744 | ecs_assert(template != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:58744:5: note: in expansion of macro ‘ecs_assert’ +58744 | ecs_assert(template != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:58745:33: error: expected primary-expression before ‘template’ +58745 | const ecs_type_info_t *ti = template->type_info; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:58753:30: error: expected unqualified-id before ‘using’ +58753 | ecs_vec_t prev_using = v.using; + | ^~~~~ +../src/flecs/distr/flecs.c:58754:7: error: expected unqualified-id before ‘using’ +58754 | v.using = template->using_; + | ^~~~~ +../src/flecs/distr/flecs.c:58756:33: error: expected primary-expression before ‘template’ +58756 | ecs_script_scope_t *scope = template->node->scope; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:58762:20: error: expected primary-expression before ‘template’ +58762 | .pos = template->node->node.pos + | ^~~~~~~~ +../src/flecs/distr/flecs.c:58762:20: error: expected ‘}’ before ‘template’ +../src/flecs/distr/flecs.c:58760:17: note: to match this ‘{’ +58760 | .node = { + | ^ +../src/flecs/distr/flecs.c:58762:20: error: expected ‘}’ before ‘template’ +58762 | .pos = template->node->node.pos + | ^~~~~~~~ +../src/flecs/distr/flecs.c:58759:41: note: to match this ‘{’ +58759 | ecs_script_entity_t instance_node = { + | ^ +../src/flecs/distr/flecs.c:58762:20: error: expected ‘,’ or ‘;’ before ‘template’ +58762 | .pos = template->node->node.pos + | ^~~~~~~~ +../src/flecs/distr/flecs.c: At global scope: +../src/flecs/distr/flecs.c:58763:10: error: mixing declarations and function-definitions is forbidden +58763 | }, + | ^ +../src/flecs/distr/flecs.c:58764:9: error: expected unqualified-id before ‘.’ token +58764 | .scope = scope + | ^ +../src/flecs/distr/flecs.c:58765:5: error: expected declaration before ‘}’ token +58765 | }; + | ^ +../src/flecs/distr/flecs.c:58767:5: error: ‘v’ does not name a type +58767 | v.entity = &instance_node; + | ^ +../src/flecs/distr/flecs.c:58770:5: error: expected unqualified-id before ‘for’ +58770 | for (i = 0; i < it->count; i ++) { + | ^~~ +../src/flecs/distr/flecs.c:58770:17: error: ‘i’ does not name a type +58770 | for (i = 0; i < it->count; i ++) { + | ^ +../src/flecs/distr/flecs.c:58770:32: error: ‘i’ does not name a type +58770 | for (i = 0; i < it->count; i ++) { + | ^ +../src/flecs/distr/flecs.c:58823:5: error: ‘v’ does not name a type +58823 | v.using = prev_using; + | ^ +../src/flecs/distr/flecs.c:58824:33: error: expected constructor, destructor, or type conversion before ‘(’ token +58824 | flecs_script_eval_visit_fini(&v); + | ^ +../src/flecs/distr/flecs.c:58825:1: error: expected declaration before ‘}’ token +58825 | } + | ^ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_template_eval_prop(ecs_script_eval_visitor_t*, ecs_script_var_node_t*)’: +../src/flecs/distr/flecs.c:58832:28: error: expected unqualified-id before ‘template’ +58832 | ecs_script_template_t *template = v->template; + | ^~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:58863:14: error: expected primary-expression before ‘template’ +58863 | &template->prop_defaults, ecs_script_var_t); + | ^~~~~~~~ +../src/flecs/distr/flecs.h:865:40: note: in definition of macro ‘ECS_CAST’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^ +../src/flecs/distr/flecs.c:58862:35: note: in expansion of macro ‘ecs_vec_append_t’ +58862 | ecs_script_var_t *value = ecs_vec_append_t(&v->base.script->allocator, + | ^~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:9657:47: error: expected primary-expression before ‘)’ token + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:58870:28: note: in expansion of macro ‘ecs_entity’ +58870 | ecs_entity_t mbr = ecs_entity(v->world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:58875:43: error: taking address of rvalue [-fpermissive] +58875 | ecs_set(v->world, mbr, EcsMember, { .type = var->value.type }); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: At global scope: +../src/flecs/distr/flecs.c:58931:28: error: expected ‘,’ or ‘...’ before ‘template’ +58931 | ecs_script_template_t *template) + | ^~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_template_preprocess(ecs_script_eval_visitor_t*, ecs_script_template_t*)’: +../src/flecs/distr/flecs.c:58934:17: error: expected unqualified-id before ‘=’ token +58934 | v->template = template; + | ^ +../src/flecs/distr/flecs.c:58934:19: error: expected primary-expression before ‘template’ +58934 | v->template = template; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:58937:44: error: expected primary-expression before ‘template’ +58937 | int result = ecs_script_visit_scope(v, template->node->scope); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:4837:59: note: in definition of macro ‘ecs_script_visit_scope’ + 4837 | ecs_script_visit_scope_((ecs_script_visit_t*)visitor, node) + | ^~~~ +../src/flecs/distr/flecs.c:58940:17: error: expected unqualified-id before ‘=’ token +58940 | v->template = NULL; + | ^ +../src/flecs/distr/flecs.c: At global scope: +../src/flecs/distr/flecs.c:58947:28: error: expected ‘,’ or ‘...’ before ‘template’ +58947 | ecs_script_template_t *template) + | ^~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_script_template_hoist_using(ecs_script_eval_visitor_t*, ecs_script_template_t*)’: +../src/flecs/distr/flecs.c:58951:28: error: expected primary-expression before ‘template’ +58951 | v->allocator, &template->using_, ecs_entity_t)[0] = v->module; + | ^~~~~~~~ +../src/flecs/distr/flecs.h:865:40: note: in definition of macro ‘ECS_CAST’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^ +../src/flecs/distr/flecs.c:58950:9: note: in expansion of macro ‘ecs_vec_append_t’ +58950 | ecs_vec_append_t( + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:58954:38: error: expected unqualified-id before ‘using’ +58954 | int i, count = ecs_vec_count(&v->using); + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:58956:41: error: expected primary-expression before ‘template’ +58956 | ecs_vec_append_t(v->allocator, &template->using_, ecs_entity_t)[0] = + | ^~~~~~~~ +../src/flecs/distr/flecs.h:865:40: note: in definition of macro ‘ECS_CAST’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^ +../src/flecs/distr/flecs.c:58956:9: note: in expansion of macro ‘ecs_vec_append_t’ +58956 | ecs_vec_append_t(v->allocator, &template->using_, ecs_entity_t)[0] = + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:58957:31: error: expected unqualified-id before ‘using’ +58957 | ecs_vec_get_t(&v->using, ecs_entity_t, i)[0]; + | ^~~~~ +../src/flecs/distr/flecs.h:865:40: note: in definition of macro ‘ECS_CAST’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^ +../src/flecs/distr/flecs.c:58957:13: note: in expansion of macro ‘ecs_vec_get_t’ +58957 | ecs_vec_get_t(&v->using, ecs_entity_t, i)[0]; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: At global scope: +../src/flecs/distr/flecs.c:58966:28: error: expected ‘,’ or ‘...’ before ‘template’ +58966 | ecs_script_template_t *template, + | ^~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_template_hoist_vars(ecs_script_eval_visitor_t*, ecs_script_template_t*)’: +../src/flecs/distr/flecs.c:58969:9: error: ‘vars’ was not declared in this scope +58969 | if (vars->parent) { + | ^~~~ +../src/flecs/distr/flecs.c:58970:45: error: expected primary-expression before ‘template’ +58970 | flecs_script_template_hoist_vars(v, template, vars); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:58973:39: error: ‘vars’ was not declared in this scope +58973 | int32_t i, count = ecs_vec_count(&vars->vars); + | ^~~~ +../src/flecs/distr/flecs.c:58978:13: error: expected primary-expression before ‘template’ +58978 | template->vars, src->name, src->value.type); + | ^~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_script_template_t* flecs_script_template_init(ecs_script_impl_t*)’: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘ecs_script_template_t*’ [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2002:29: note: in expansion of macro ‘flecs_alloc’ + 2002 | #define flecs_alloc_t(a, T) flecs_alloc(a, ECS_SIZEOF(T)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:58990:37: note: in expansion of macro ‘flecs_alloc_t’ +58990 | ecs_script_template_t *result = flecs_alloc_t(a, ecs_script_template_t); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: At global scope: +../src/flecs/distr/flecs.c:58999:28: error: expected ‘,’ or ‘...’ before ‘template’ +58999 | ecs_script_template_t *template) + | ^~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_script_template_fini(ecs_script_impl_t*, ecs_script_template_t*)’: +../src/flecs/distr/flecs.c:59004:39: error: expected primary-expression before ‘template’ +59004 | int32_t i, count = ecs_vec_count(&template->prop_defaults); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:59005:47: error: expected primary-expression before ‘template’ +59005 | ecs_script_var_t *values = ecs_vec_first(&template->prop_defaults); + | ^~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:59015:24: error: expected primary-expression before ‘template’ +59015 | ecs_vec_fini_t(a, &template->prop_defaults, ecs_script_var_t); + | ^~~~~~~~ +../src/flecs/distr/flecs.h:1111:29: note: in definition of macro ‘ecs_vec_fini_t’ + 1111 | ecs_vec_fini(allocator, vec, ECS_SIZEOF(T)) + | ^~~ +../src/flecs/distr/flecs.c:59016:24: error: expected primary-expression before ‘template’ +59016 | ecs_vec_fini_t(a, &template->using_, ecs_entity_t); + | ^~~~~~~~ +../src/flecs/distr/flecs.h:1111:29: note: in definition of macro ‘ecs_vec_fini_t’ + 1111 | ecs_vec_fini(allocator, vec, ECS_SIZEOF(T)) + | ^~~ +../src/flecs/distr/flecs.c:59017:26: error: expected primary-expression before ‘template’ +59017 | ecs_script_vars_fini(template->vars); + | ^~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:59018:44: error: expected primary-expression before ‘template’ +59018 | flecs_free_t(a, ecs_script_template_t, template); + | ^~~~~~~~ +../src/flecs/distr/flecs.h:2012:29: note: in definition of macro ‘flecs_free_t’ + 2012 | flecs_bfree_w_dbg_info((ptr) ? flecs_allocator_get(a, ECS_SIZEOF(T)) : NULL, ptr, #T) + | ^~~ +../src/flecs/distr/flecs.c:59018:44: error: expected ‘)’ before ‘template’ +59018 | flecs_free_t(a, ecs_script_template_t, template); + | ^~~~~~~~ +../src/flecs/distr/flecs.h:2012:29: note: in definition of macro ‘flecs_free_t’ + 2012 | flecs_bfree_w_dbg_info((ptr) ? flecs_allocator_get(a, ECS_SIZEOF(T)) : NULL, ptr, #T) + | ^~~ +../src/flecs/distr/flecs.h:2012:28: note: to match this ‘(’ + 2012 | flecs_bfree_w_dbg_info((ptr) ? flecs_allocator_get(a, ECS_SIZEOF(T)) : NULL, ptr, #T) + | ^ +../src/flecs/distr/flecs.c:59018:5: note: in expansion of macro ‘flecs_free_t’ +59018 | flecs_free_t(a, ecs_script_template_t, template); + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_eval_template(ecs_script_eval_visitor_t*, ecs_script_template_node_t*)’: +../src/flecs/distr/flecs.c:59026:20: error: expected unqualified-id before ‘)’ token +59026 | if (v->template) { + | ^ +../src/flecs/distr/flecs.c:59036:28: error: expected unqualified-id before ‘template’ +59036 | ecs_script_template_t *template = flecs_script_template_init(v->base.script); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:59037:5: error: expected primary-expression before ‘template’ +59037 | template->entity = template_entity; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:59038:5: error: expected primary-expression before ‘template’ +59038 | template->node = node; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:59040:45: error: expected primary-expression before ‘template’ +59040 | if (flecs_script_template_preprocess(v, template)) { + | ^~~~~~~~ +../src/flecs/distr/flecs.c:59044:46: error: expected primary-expression before ‘template’ +59044 | if (flecs_script_template_hoist_using(v, template)) { + | ^~~~~~~~ +../src/flecs/distr/flecs.c:59048:45: error: expected primary-expression before ‘template’ +59048 | if (flecs_script_template_hoist_vars(v, template, v->vars)) { + | ^~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:59055:58: error: taking address of rvalue [-fpermissive] +59055 | ecs_set(v->world, template_entity, EcsComponent, {1, 1}); + | ^~~~~~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:59058:5: error: expected primary-expression before ‘template’ +59058 | template->type_info = ecs_get_type_info(v->world, template_entity); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:59072:25: error: expected primary-expression before ‘template’ +59072 | script->template_ = template; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:59075:69: error: taking address of rvalue [-fpermissive] +59075 | ecs_set_hooks_id(v->world, template_entity, &(ecs_type_hooks_t) { + | ^ +59076 | .ctor = flecs_script_template_ctor, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +59077 | .on_set = flecs_script_template_on_set, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +59078 | .ctx = v->world + | ~~~~~~~~~~~~~~~ +59079 | }); + | ~ +../src/flecs/distr/flecs.c:59085:1: error: jump to label ‘error’ +59085 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:59049:14: note: from here +59049 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:59062:16: note: crosses initialization of ‘EcsScript* script’ +59062 | EcsScript *script = ecs_ensure(v->world, template_entity, EcsScript); + | ^~~~~~ +../src/flecs/distr/flecs.c:59085:1: error: jump to label ‘error’ +59085 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:59045:14: note: from here +59045 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:59062:16: note: crosses initialization of ‘EcsScript* script’ +59062 | EcsScript *script = ecs_ensure(v->world, template_entity, EcsScript); + | ^~~~~~ +../src/flecs/distr/flecs.c:59085:1: error: jump to label ‘error’ +59085 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:59041:14: note: from here +59041 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:59062:16: note: crosses initialization of ‘EcsScript* script’ +59062 | EcsScript *script = ecs_ensure(v->world, template_entity, EcsScript); + | ^~~~~~ +../src/flecs/distr/flecs.c:59086:48: error: expected primary-expression before ‘template’ +59086 | flecs_script_template_fini(v->base.script, template); + | ^~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_script_vars_t* flecs_script_vars_push(ecs_script_vars_t*, ecs_stack_t*, ecs_allocator_t*)’: +../src/flecs/distr/flecs.h:1647:23: error: invalid conversion from ‘void*’ to ‘ecs_script_vars_t*’ [-fpermissive] + 1647 | flecs_stack_calloc(stack, ECS_SIZEOF(T), ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:59654:33: note: in expansion of macro ‘flecs_stack_calloc_t’ +59654 | ecs_script_vars_t *result = flecs_stack_calloc_t(stack, ecs_script_vars_t); + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:59664:1: error: jump to label ‘error’ +59664 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:59649:9: note: in expansion of macro ‘ecs_check’ +59649 | ecs_check(allocator == parent->allocator, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:59654:24: note: crosses initialization of ‘ecs_script_vars_t* result’ +59654 | ecs_script_vars_t *result = flecs_stack_calloc_t(stack, ecs_script_vars_t); + | ^~~~~~ +../src/flecs/distr/flecs.c:59653:25: note: crosses initialization of ‘ecs_stack_cursor_t* cursor’ +59653 | ecs_stack_cursor_t *cursor = flecs_stack_get_cursor(stack); + | ^~~~~~ +../src/flecs/distr/flecs.c:59664:1: error: jump to label ‘error’ +59664 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:59643:9: note: in expansion of macro ‘ecs_check’ +59643 | ecs_check(stack == parent->stack, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:59654:24: note: crosses initialization of ‘ecs_script_vars_t* result’ +59654 | ecs_script_vars_t *result = flecs_stack_calloc_t(stack, ecs_script_vars_t); + | ^~~~~~ +../src/flecs/distr/flecs.c:59653:25: note: crosses initialization of ‘ecs_stack_cursor_t* cursor’ +59653 | ecs_stack_cursor_t *cursor = flecs_stack_get_cursor(stack); + | ^~~~~~ +../src/flecs/distr/flecs.c:59664:1: error: jump to label ‘error’ +59664 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:59637:5: note: in expansion of macro ‘ecs_check’ +59637 | ecs_check(allocator || parent, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:59654:24: note: crosses initialization of ‘ecs_script_vars_t* result’ +59654 | ecs_script_vars_t *result = flecs_stack_calloc_t(stack, ecs_script_vars_t); + | ^~~~~~ +../src/flecs/distr/flecs.c:59653:25: note: crosses initialization of ‘ecs_stack_cursor_t* cursor’ +59653 | ecs_stack_cursor_t *cursor = flecs_stack_get_cursor(stack); + | ^~~~~~ +../src/flecs/distr/flecs.c:59664:1: error: jump to label ‘error’ +59664 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:59635:5: note: in expansion of macro ‘ecs_check’ +59635 | ecs_check(stack || parent, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:59654:24: note: crosses initialization of ‘ecs_script_vars_t* result’ +59654 | ecs_script_vars_t *result = flecs_stack_calloc_t(stack, ecs_script_vars_t); + | ^~~~~~ +../src/flecs/distr/flecs.c:59653:25: note: crosses initialization of ‘ecs_stack_cursor_t* cursor’ +59653 | ecs_stack_cursor_t *cursor = flecs_stack_get_cursor(stack); + | ^~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_script_vars_t* ecs_script_vars_push(ecs_script_vars_t*)’: +../src/flecs/distr/flecs.c:59697:1: error: jump to label ‘error’ +59697 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:59691:5: note: in expansion of macro ‘ecs_check’ +59691 | ecs_check(parent != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:59693:22: note: crosses initialization of ‘ecs_allocator_t* allocator’ +59693 | ecs_allocator_t *allocator = parent->allocator; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:59692:18: note: crosses initialization of ‘ecs_stack_t* stack’ +59692 | ecs_stack_t *stack = parent->stack; + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_script_vars_t* ecs_script_vars_pop(ecs_script_vars_t*)’: +../src/flecs/distr/flecs.c:59708:52: error: invalid conversion from ‘void*’ to ‘ecs_script_var_t*’ [-fpermissive] +59708 | ecs_script_var_t *var_array = ecs_vec_first(&vars->vars); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘ecs_script_var_t* ecs_script_vars_declare(ecs_script_vars_t*, const char*)’: +../src/flecs/distr/flecs.c:59753:1: error: jump to label ‘error’ +59753 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:59738:18: note: from here +59738 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:59742:23: note: crosses initialization of ‘ecs_script_var_t* var’ +59742 | ecs_script_var_t *var = ecs_vec_append_t( + | ^~~ +../src/flecs/distr/flecs.c: In function ‘ecs_script_var_t* ecs_script_vars_define_id(ecs_script_vars_t*, const char*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:59783:1: error: jump to label ‘error’ +59783 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:59766:5: note: in expansion of macro ‘ecs_check’ +59766 | ecs_check(ti != NULL, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:59769:23: note: crosses initialization of ‘ecs_script_var_t* result’ +59769 | ecs_script_var_t *result = ecs_script_vars_declare(vars, name); + | ^~~~~~ +../src/flecs/distr/flecs.c:59783:1: error: jump to label ‘error’ +59783 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:59762:5: note: in expansion of macro ‘ecs_check’ +59762 | ecs_check(vars->world != NULL, ECS_INVALID_OPERATION, "variable scope is " + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:59769:23: note: crosses initialization of ‘ecs_script_var_t* result’ +59769 | ecs_script_var_t *result = ecs_script_vars_declare(vars, name); + | ^~~~~~ +../src/flecs/distr/flecs.c:59765:28: note: crosses initialization of ‘const ecs_type_info_t* ti’ +59765 | const ecs_type_info_t *ti = ecs_get_type_info(vars->world, type); + | ^~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t flecs_script_find_entity(ecs_script_eval_visitor_t*, ecs_entity_t, const char*)’: +../src/flecs/distr/flecs.c:60215:52: error: expected unqualified-id before ‘using’ +60215 | int32_t i, using_count = ecs_vec_count(&v->using); + | ^~~~~ +../src/flecs/distr/flecs.c:60217:27: error: expected unqualified-id before ‘using’ +60217 | ecs_entity_t *using = ecs_vec_first(&v->using); + | ^~~~~ +../src/flecs/distr/flecs.c:60220:31: error: expected primary-expression before ‘using’ +60220 | v->world, using[i], path, NULL, NULL, false); + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t flecs_script_find_entity_action(const ecs_world_t*, const char*, void*)’: +../src/flecs/distr/flecs.c:60255:36: error: invalid conversion from ‘void*’ to ‘ecs_script_eval_visitor_t*’ [-fpermissive] +60255 | ecs_script_eval_visitor_t *v = ctx; + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘int flecs_script_find_template_entity(ecs_script_eval_visitor_t*, const char*)’: +../src/flecs/distr/flecs.c:60265:43: error: expected unqualified-id before ‘;’ token +60265 | ecs_script_template_t *t = v->template; + | ^ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_eval_id(ecs_script_eval_visitor_t*, void*, ecs_script_id_t*)’: +../src/flecs/distr/flecs.c:60298:20: error: expected unqualified-id before ‘)’ token +60298 | if (v->template) { + | ^ +../src/flecs/distr/flecs.c:60334:28: error: expected unqualified-id before ‘)’ token +60334 | if (v->template) { + | ^ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_eval_scope(ecs_script_eval_visitor_t*, ecs_script_scope_t*)’: +../src/flecs/distr/flecs.c:60406:50: error: expected unqualified-id before ‘using’ +60406 | int32_t prev_using_count = ecs_vec_count(&v->using); + | ^~~~~ +../src/flecs/distr/flecs.c:60419:25: error: expected unqualified-id before ‘)’ token +60419 | if (!v->template) { + | ^ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:60426:32: error: expected unqualified-id before ‘using’ +60426 | ecs_vec_set_count_t(a, &v->using, ecs_entity_t, prev_using_count); + | ^~~~~ +../src/flecs/distr/flecs.h:1223:34: note: in definition of macro ‘ecs_vec_set_count_t’ + 1223 | ecs_vec_set_count(allocator, vec, ECS_SIZEOF(T), elem_count) + | ^~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_eval_entity(ecs_script_eval_visitor_t*, ecs_script_entity_t*)’: +../src/flecs/distr/flecs.c:60490:20: error: expected unqualified-id before ‘)’ token +60490 | if (v->template) { + | ^ +../src/flecs/distr/flecs.c:60535:52: error: invalid conversion from ‘void*’ to ‘ecs_script_annot_t**’ [-fpermissive] +60535 | ecs_script_annot_t **annots = ecs_vec_first(&v->annot); + | ~~~~~~~~~~~~~^~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘int flecs_script_eval_tag(ecs_script_eval_visitor_t*, ecs_script_tag_t*)’: +../src/flecs/distr/flecs.c:60584:20: error: expected unqualified-id before ‘)’ token +60584 | if (v->template) { + | ^ +../src/flecs/distr/flecs.c:60600:20: error: expected unqualified-id before ‘)’ token +60600 | if (v->template) { + | ^ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_eval_component(ecs_script_eval_visitor_t*, ecs_script_component_t*)’: +../src/flecs/distr/flecs.c:60620:20: error: expected unqualified-id before ‘)’ token +60620 | if (v->template) { + | ^ +../src/flecs/distr/flecs.c:60635:20: error: expected unqualified-id before ‘)’ token +60635 | if (v->template) { + | ^ +../src/flecs/distr/flecs.c:60684:9: error: designator order for field ‘ecs_value_t::type’ does not match declaration order in ‘ecs_value_t’ +60684 | }; + | ^ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_eval_var_component(ecs_script_eval_visitor_t*, ecs_script_var_component_t*)’: +../src/flecs/distr/flecs.c:60723:20: error: expected unqualified-id before ‘)’ token +60723 | if (v->template) { + | ^ +../src/flecs/distr/flecs.c:60739:9: error: designator order for field ‘ecs_value_t::type’ does not match declaration order in ‘ecs_value_t’ +60739 | }; + | ^ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_eval_default_component(ecs_script_eval_visitor_t*, ecs_script_default_component_t*)’: +../src/flecs/distr/flecs.c:60762:20: error: expected unqualified-id before ‘)’ token +60762 | if (v->template) { + | ^ +../src/flecs/distr/flecs.c:60798:5: error: designator order for field ‘ecs_value_t::type’ does not match declaration order in ‘ecs_value_t’ +60798 | }; + | ^ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_eval_with_var(ecs_script_eval_visitor_t*, ecs_script_var_node_t*)’: +../src/flecs/distr/flecs.c:60821:20: error: expected unqualified-id before ‘)’ token +60821 | if (v->template) { + | ^ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_eval_with_tag(ecs_script_eval_visitor_t*, ecs_script_tag_t*)’: +../src/flecs/distr/flecs.c:60841:20: error: expected unqualified-id before ‘)’ token +60841 | if (v->template) { + | ^ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_eval_with_component(ecs_script_eval_visitor_t*, ecs_script_component_t*)’: +../src/flecs/distr/flecs.c:60862:20: error: expected unqualified-id before ‘)’ token +60862 | if (v->template) { + | ^ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_eval_with(ecs_script_eval_visitor_t*, ecs_script_with_t*)’: +../src/flecs/distr/flecs.c:60923:1: error: jump to label ‘error’ +60923 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:60908:14: note: from here +60908 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:60911:18: note: crosses initialization of ‘ecs_value_t* value’ +60911 | ecs_value_t *value = flecs_script_with_last(v); + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_script_eval_using(ecs_script_eval_visitor_t*, ecs_script_using_t*)’: +../src/flecs/distr/flecs.c:60955:28: error: expected unqualified-id before ‘using’ +60955 | a, &v->using, ecs_entity_t)[0] = it.entities[i]; + | ^~~~~ +../src/flecs/distr/flecs.h:865:40: note: in definition of macro ‘ECS_CAST’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^ +../src/flecs/distr/flecs.c:60954:17: note: in expansion of macro ‘ecs_vec_append_t’ +60954 | ecs_vec_append_t( + | ^~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:60964:41: error: taking address of rvalue [-fpermissive] +60964 | from = ecs_entity(v->world, { + | ^ +60965 | .name = node->name, + | ~~~~~~~~~~~~~~~~~~~ +60966 | .root_sep = "" + | ~~~~~~~~~~~~~~ +60967 | }); + | ~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c:60974:33: error: expected unqualified-id before ‘using’ +60974 | ecs_vec_append_t(a, &v->using, ecs_entity_t)[0] = from; + | ^~~~~ +../src/flecs/distr/flecs.h:865:40: note: in definition of macro ‘ECS_CAST’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^ +../src/flecs/distr/flecs.c:60974:9: note: in expansion of macro ‘ecs_vec_append_t’ +60974 | ecs_vec_append_t(a, &v->using, ecs_entity_t)[0] = from; + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_script_eval_visit_init(ecs_script_impl_t*, ecs_script_eval_visitor_t*)’: +../src/flecs/distr/flecs.c:61261:38: error: expected unqualified-id before ‘using’ +61261 | ecs_vec_init_t(v->allocator, &v->using, ecs_entity_t, 0); + | ^~~~~ +../src/flecs/distr/flecs.h:1094:29: note: in definition of macro ‘ecs_vec_init_t’ + 1094 | ecs_vec_init(allocator, vec, ECS_SIZEOF(T), elem_count) + | ^~~ +../src/flecs/distr/flecs.c:61267:40: error: expected unqualified-id before ‘using’ +61267 | ecs_vec_append_t(v->allocator, &v->using, ecs_entity_t)[0] = + | ^~~~~ +../src/flecs/distr/flecs.h:865:40: note: in definition of macro ‘ECS_CAST’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^ +../src/flecs/distr/flecs.c:61267:5: note: in expansion of macro ‘ecs_vec_append_t’ +61267 | ecs_vec_append_t(v->allocator, &v->using, ecs_entity_t)[0] = + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_script_eval_visit_fini(ecs_script_eval_visitor_t*)’: +../src/flecs/distr/flecs.c:61277:38: error: expected unqualified-id before ‘using’ +61277 | ecs_vec_fini_t(v->allocator, &v->using, ecs_entity_t); + | ^~~~~ +../src/flecs/distr/flecs.h:1111:29: note: in definition of macro ‘ecs_vec_fini_t’ + 1111 | ecs_vec_fini(allocator, vec, ECS_SIZEOF(T)) + | ^~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_script_visit_free(ecs_script_t*)’: +../src/flecs/distr/flecs.c:61438:1: error: jump to label ‘error’ +61438 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:61426:5: note: in expansion of macro ‘ecs_check’ +61426 | ecs_check(script != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:61427:24: note: crosses initialization of ‘ecs_script_visit_t v’ +61427 | ecs_script_visit_t v = { + | ^ +../src/flecs/distr/flecs.c: In function ‘int ecs_script_ast_to_buf(ecs_script_t*, ecs_strbuf_t*)’: +../src/flecs/distr/flecs.c:61840:1: error: jump to label ‘error’ +61840 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:61833:5: note: in expansion of macro ‘ecs_check’ +61833 | ecs_check(buf != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:61834:30: note: crosses initialization of ‘ecs_script_str_visitor_t v’ +61834 | ecs_script_str_visitor_t v = { .buf = buf }; + | ^ +../src/flecs/distr/flecs.c:61840:1: error: jump to label ‘error’ +61840 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:61832:5: note: in expansion of macro ‘ecs_check’ +61832 | ecs_check(script != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:61834:30: note: crosses initialization of ‘ecs_script_str_visitor_t v’ +61834 | ecs_script_str_visitor_t v = { .buf = buf }; + | ^ +../src/flecs/distr/flecs.c: In function ‘char* ecs_script_ast_to_str(ecs_script_t*)’: +../src/flecs/distr/flecs.c:61855:1: error: jump to label ‘error’ +61855 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:61848:5: note: in expansion of macro ‘ecs_check’ +61848 | ecs_check(script != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:61849:18: note: crosses initialization of ‘ecs_strbuf_t buf’ +61849 | ecs_strbuf_t buf = ECS_STRBUF_INIT; + | ^~~ +../src/flecs/distr/flecs.c: In function ‘void MonitorStats(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:61944:40: error: invalid conversion from ‘void*’ to ‘ecs_monitor_stats_ctx_t*’ [-fpermissive] +61944 | ecs_monitor_stats_ctx_t *ctx = it->ctx; + | ~~~~^~~ + | | + | void* +../src/flecs/distr/flecs.c:61946:43: error: invalid conversion from ‘void*’ to ‘EcsStatsHeader*’ [-fpermissive] +61946 | EcsStatsHeader *hdr = ecs_field_w_size(it, 0, 0); + | ~~~~~~~~~~~~~~~~^~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_map_t*’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:3946:28: note: in expansion of macro ‘ECS_OFFSET’ + 3946 | #define ECS_OFFSET_T(o, T) ECS_OFFSET(o, ECS_SIZEOF(T)) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:61969:21: note: in expansion of macro ‘ECS_OFFSET_T’ +61969 | stats_map = ECS_OFFSET_T(hdr, EcsStatsHeader); + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void ReduceStats(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:62034:39: error: invalid conversion from ‘void*’ to ‘ecs_reduce_stats_ctx_t*’ [-fpermissive] +62034 | ecs_reduce_stats_ctx_t *ctx = it->ctx; + | ~~~~^~~ + | | + | void* +../src/flecs/distr/flecs.c:62045:43: error: invalid conversion from ‘void*’ to ‘const ecs_map_t*’ [-fpermissive] +62045 | ecs_map_iter_t mit = ecs_map_iter(src); + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c:29702:22: note: initializing argument 1 of ‘ecs_map_iter_t ecs_map_iter(const ecs_map_t*)’ +29702 | const ecs_map_t *map) + | ~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c:62049:17: error: invalid conversion from ‘void*’ to ‘ecs_map_t*’ [-fpermissive] +62049 | dst, ctx->api.stats_size, ecs_map_key(&mit)); + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c:29651:16: note: initializing argument 1 of ‘void* ecs_map_ensure_alloc(ecs_map_t*, ecs_size_t, ecs_map_key_t)’ +29651 | ecs_map_t *map, + | ~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c: In function ‘void AggregateStats(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:62057:42: error: invalid conversion from ‘void*’ to ‘ecs_aggregate_stats_ctx_t*’ [-fpermissive] +62057 | ecs_aggregate_stats_ctx_t *ctx = it->ctx; + | ~~~~^~~ + | | + | void* +../src/flecs/distr/flecs.c:62060:47: error: invalid conversion from ‘void*’ to ‘EcsStatsHeader*’ [-fpermissive] +62060 | EcsStatsHeader *dst_hdr = ecs_field_w_size(it, 0, 0); + | ~~~~~~~~~~~~~~~~^~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:62061:47: error: invalid conversion from ‘void*’ to ‘EcsStatsHeader*’ [-fpermissive] +62061 | EcsStatsHeader *src_hdr = ecs_field_w_size(it, 0, 1); + | ~~~~~~~~~~~~~~~~^~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:62079:28: error: invalid conversion from ‘void*’ to ‘const ecs_map_t*’ [-fpermissive] +62079 | mit = ecs_map_iter(src_map); + | ^~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:29702:22: note: initializing argument 1 of ‘ecs_map_iter_t ecs_map_iter(const ecs_map_t*)’ +29702 | const ecs_map_t *map) + | ~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c:62090:17: error: invalid conversion from ‘void*’ to ‘ecs_map_t*’ [-fpermissive] +62090 | dst_map, ctx->api.stats_size, ecs_map_key(&mit)); + | ^~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:29651:16: note: initializing argument 1 of ‘void* ecs_map_ensure_alloc(ecs_map_t*, ecs_size_t, ecs_map_key_t)’ +29651 | ecs_map_t *map, + | ~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_monitor_ctx_free(void*)’: +../src/flecs/distr/flecs.c:62127:36: error: invalid conversion from ‘void*’ to ‘ecs_monitor_stats_ctx_t*’ [-fpermissive] +62127 | ecs_monitor_stats_ctx_t *ctx = ptr; + | ^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_stats_api_import(ecs_world_t*, ecs_stats_api_t*)’: +../src/flecs/distr/flecs.c:62157:30: error: taking address of rvalue [-fpermissive] +62157 | q = ecs_query(world, { + | ^ +62158 | .terms = {{ .id = api->query_component_id }}, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +62159 | .cache_kind = EcsQueryCacheNone, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +62160 | .flags = EcsQueryMatchDisabled + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +62161 | }); + | ~ +../src/flecs/distr/flecs.h:9700:47: note: in definition of macro ‘ecs_query’ + 9700 | ecs_query_init(world, &(ecs_query_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:12349:49: note: in definition of macro ‘ecs_system’ +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:62171:23: note: in expansion of macro ‘ecs_entity’ +62171 | .entity = ecs_entity(world, { .name = "Monitor1s", .add = ecs_ids(ecs_dependson(EcsPreFrame)) }), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:62171:71: note: in expansion of macro ‘ecs_ids’ +62171 | .entity = ecs_entity(world, { .name = "Monitor1s", .add = ecs_ids(ecs_dependson(EcsPreFrame)) }), + | ^~~~~~~ +../src/flecs/distr/flecs.h:12349:47: error: expected primary-expression before ‘)’ token +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:62170:9: note: in expansion of macro ‘ecs_system’ +62170 | ecs_system(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:12349:49: note: in definition of macro ‘ecs_system’ +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:62189:23: note: in expansion of macro ‘ecs_entity’ +62189 | .entity = ecs_entity(world, { .name = "Monitor1m", .add = ecs_ids(ecs_dependson(EcsPreFrame)) }), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:62189:71: note: in expansion of macro ‘ecs_ids’ +62189 | .entity = ecs_entity(world, { .name = "Monitor1m", .add = ecs_ids(ecs_dependson(EcsPreFrame)) }), + | ^~~~~~~ +../src/flecs/distr/flecs.h:12349:47: error: expected primary-expression before ‘)’ token +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:62188:16: note: in expansion of macro ‘ecs_system’ +62188 | mw1m = ecs_system(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:12349:49: note: in definition of macro ‘ecs_system’ +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:62210:23: note: in expansion of macro ‘ecs_entity’ +62210 | .entity = ecs_entity(world, { .name = "Monitor1h", .add = ecs_ids(ecs_dependson(EcsPreFrame)) }), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:62210:71: note: in expansion of macro ‘ecs_ids’ +62210 | .entity = ecs_entity(world, { .name = "Monitor1h", .add = ecs_ids(ecs_dependson(EcsPreFrame)) }), + | ^~~~~~~ +../src/flecs/distr/flecs.h:12349:47: error: expected primary-expression before ‘)’ token +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:62209:9: note: in expansion of macro ‘ecs_system’ +62209 | ecs_system(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:12349:49: note: in definition of macro ‘ecs_system’ +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:62233:23: note: in expansion of macro ‘ecs_entity’ +62233 | .entity = ecs_entity(world, { .name = "Monitor1d", .add = ecs_ids(ecs_dependson(EcsPreFrame)) }), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:62233:71: note: in expansion of macro ‘ecs_ids’ +62233 | .entity = ecs_entity(world, { .name = "Monitor1d", .add = ecs_ids(ecs_dependson(EcsPreFrame)) }), + | ^~~~~~~ +../src/flecs/distr/flecs.h:12349:47: error: expected primary-expression before ‘)’ token +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:62232:9: note: in expansion of macro ‘ecs_system’ +62232 | ecs_system(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:12349:49: note: in definition of macro ‘ecs_system’ +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:62256:23: note: in expansion of macro ‘ecs_entity’ +62256 | .entity = ecs_entity(world, { .name = "Monitor1w", .add = ecs_ids(ecs_dependson(EcsPreFrame)) }), + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:62256:71: note: in expansion of macro ‘ecs_ids’ +62256 | .entity = ecs_entity(world, { .name = "Monitor1w", .add = ecs_ids(ecs_dependson(EcsPreFrame)) }), + | ^~~~~~~ +../src/flecs/distr/flecs.h:12349:47: error: expected primary-expression before ‘)’ token +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:62255:9: note: in expansion of macro ‘ecs_system’ +62255 | ecs_system(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void FlecsStatsImport(ecs_world_t*)’: +../src/flecs/distr/flecs.c:62301:37: error: taking address of rvalue [-fpermissive] +62301 | EcsPeriod1s = ecs_entity(world, { .name = "EcsPeriod1s" }); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:62302:37: error: taking address of rvalue [-fpermissive] +62302 | EcsPeriod1m = ecs_entity(world, { .name = "EcsPeriod1m" }); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:62303:37: error: taking address of rvalue [-fpermissive] +62303 | EcsPeriod1h = ecs_entity(world, { .name = "EcsPeriod1h" }); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:62304:37: error: taking address of rvalue [-fpermissive] +62304 | EcsPeriod1d = ecs_entity(world, { .name = "EcsPeriod1d" }); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:62305:37: error: taking address of rvalue [-fpermissive] +62305 | EcsPeriod1w = ecs_entity(world, { .name = "EcsPeriod1w" }); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_pipeline_monitor_dtor(EcsPipelineStats*)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_pipeline_stats_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62334:39: note: in expansion of macro ‘ecs_map_ptr’ +62334 | ecs_pipeline_stats_t *stats = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_pipeline_stats_copy_last(void*, void*)’: +../src/flecs/distr/flecs.c:62377:34: error: invalid conversion from ‘void*’ to ‘ecs_pipeline_stats_t*’ [-fpermissive] +62377 | ecs_pipeline_stats_copy_last(stats, src); + | ^~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:12820:27: note: initializing argument 1 of ‘void ecs_pipeline_stats_copy_last(ecs_pipeline_stats_t*, const ecs_pipeline_stats_t*)’ +12820 | ecs_pipeline_stats_t *dst, + | ~~~~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c:62377:41: error: invalid conversion from ‘void*’ to ‘const ecs_pipeline_stats_t*’ [-fpermissive] +62377 | ecs_pipeline_stats_copy_last(stats, src); + | ^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:12821:33: note: initializing argument 2 of ‘void ecs_pipeline_stats_copy_last(ecs_pipeline_stats_t*, const ecs_pipeline_stats_t*)’ +12821 | const ecs_pipeline_stats_t *src); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_pipeline_stats_get(ecs_world_t*, ecs_entity_t, void*)’: +../src/flecs/distr/flecs.c:62386:40: error: invalid conversion from ‘void*’ to ‘ecs_pipeline_stats_t*’ [-fpermissive] +62386 | ecs_pipeline_stats_get(world, res, stats); + | ^~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:12783:27: note: initializing argument 3 of ‘bool ecs_pipeline_stats_get(ecs_world_t*, ecs_entity_t, ecs_pipeline_stats_t*)’ +12783 | ecs_pipeline_stats_t *stats); + | ~~~~~~~~~~~~~~~~~~~~~~^~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_pipeline_stats_reduce(void*, void*)’: +../src/flecs/distr/flecs.c:62394:31: error: invalid conversion from ‘void*’ to ‘ecs_pipeline_stats_t*’ [-fpermissive] +62394 | ecs_pipeline_stats_reduce(stats, src); + | ^~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:12796:27: note: initializing argument 1 of ‘void ecs_pipeline_stats_reduce(ecs_pipeline_stats_t*, const ecs_pipeline_stats_t*)’ +12796 | ecs_pipeline_stats_t *dst, + | ~~~~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c:62394:38: error: invalid conversion from ‘void*’ to ‘const ecs_pipeline_stats_t*’ [-fpermissive] +62394 | ecs_pipeline_stats_reduce(stats, src); + | ^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:12797:33: note: initializing argument 2 of ‘void ecs_pipeline_stats_reduce(ecs_pipeline_stats_t*, const ecs_pipeline_stats_t*)’ +12797 | const ecs_pipeline_stats_t *src); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_pipeline_stats_reduce_last(void*, void*, int32_t)’: +../src/flecs/distr/flecs.c:62403:36: error: invalid conversion from ‘void*’ to ‘ecs_pipeline_stats_t*’ [-fpermissive] +62403 | ecs_pipeline_stats_reduce_last(stats, last, reduce_count); + | ^~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:12802:27: note: initializing argument 1 of ‘void ecs_pipeline_stats_reduce_last(ecs_pipeline_stats_t*, const ecs_pipeline_stats_t*, int32_t)’ +12802 | ecs_pipeline_stats_t *stats, + | ~~~~~~~~~~~~~~~~~~~~~~^~~~~ +../src/flecs/distr/flecs.c:62403:43: error: invalid conversion from ‘void*’ to ‘const ecs_pipeline_stats_t*’ [-fpermissive] +62403 | ecs_pipeline_stats_reduce_last(stats, last, reduce_count); + | ^~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:12803:33: note: initializing argument 2 of ‘void ecs_pipeline_stats_reduce_last(ecs_pipeline_stats_t*, const ecs_pipeline_stats_t*, int32_t)’ +12803 | const ecs_pipeline_stats_t *old, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_pipeline_stats_repeat_last(void*)’: +../src/flecs/distr/flecs.c:62410:36: error: invalid conversion from ‘void*’ to ‘ecs_pipeline_stats_t*’ [-fpermissive] +62410 | ecs_pipeline_stats_repeat_last(stats); + | ^~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:12809:27: note: initializing argument 1 of ‘void ecs_pipeline_stats_repeat_last(ecs_pipeline_stats_t*)’ +12809 | ecs_pipeline_stats_t *stats); + | ~~~~~~~~~~~~~~~~~~~~~~^~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_pipeline_stats_fini(void*)’: +../src/flecs/distr/flecs.c:62417:29: error: invalid conversion from ‘void*’ to ‘ecs_pipeline_stats_t*’ [-fpermissive] +62417 | ecs_pipeline_stats_fini(stats); + | ^~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:12791:27: note: initializing argument 1 of ‘void ecs_pipeline_stats_fini(ecs_pipeline_stats_t*)’ +12791 | ecs_pipeline_stats_t *stats); + | ~~~~~~~~~~~~~~~~~~~~~~^~~~~ +../src/flecs/distr/flecs.c: In function ‘void FlecsPipelineMonitorImport(ecs_world_t*)’: +../src/flecs/distr/flecs.c:62430:5: error: designator order for field ‘ecs_type_hooks_t::dtor’ does not match declaration order in ‘ecs_type_hooks_t’ +62430 | }); + | ^ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:62425:44: error: taking address of rvalue [-fpermissive] +62425 | ecs_set_hooks(world, EcsPipelineStats, { + | ^ +62426 | .ctor = ecs_ctor(EcsPipelineStats), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +62427 | .copy = ecs_copy(EcsPipelineStats), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +62428 | .move = ecs_move(EcsPipelineStats), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +62429 | .dtor = ecs_dtor(EcsPipelineStats) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +62430 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_metric_reduce(ecs_metric_t*, const ecs_metric_t*, int32_t, int32_t)’: +../src/flecs/distr/flecs.c:62572:1: error: jump to label ‘error’ +62572 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62547:5: note: in expansion of macro ‘ecs_check’ +62547 | ecs_check(src != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62554:17: note: crosses initialization of ‘float fwindow’ +62554 | ecs_float_t fwindow = (ecs_float_t)ECS_STAT_WINDOW; + | ^~~~~~~ +../src/flecs/distr/flecs.c:62549:10: note: crosses initialization of ‘bool min_set’ +62549 | bool min_set = false; + | ^~~~~~~ +../src/flecs/distr/flecs.c:62572:1: error: jump to label ‘error’ +62572 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62546:5: note: in expansion of macro ‘ecs_check’ +62546 | ecs_check(dst != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62554:17: note: crosses initialization of ‘float fwindow’ +62554 | ecs_float_t fwindow = (ecs_float_t)ECS_STAT_WINDOW; + | ^~~~~~~ +../src/flecs/distr/flecs.c:62549:10: note: crosses initialization of ‘bool min_set’ +62549 | bool min_set = false; + | ^~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void ecs_metric_reduce_last(ecs_metric_t*, int32_t, int32_t)’: +../src/flecs/distr/flecs.c:62602:1: error: jump to label ‘error’ +62602 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62581:5: note: in expansion of macro ‘ecs_check’ +62581 | ecs_check(m != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62594:17: note: crosses initialization of ‘float next’ +62594 | ecs_float_t next = m->gauge.avg[t]; + | ^~~~ +../src/flecs/distr/flecs.c:62593:17: note: crosses initialization of ‘float cur’ +62593 | ecs_float_t cur = m->gauge.avg[prev]; + | ^~~ +../src/flecs/distr/flecs.c:62592:17: note: crosses initialization of ‘float fcount’ +62592 | ecs_float_t fcount = (ecs_float_t)(count + 1); + | ^~~~~~ +../src/flecs/distr/flecs.c:62582:13: note: crosses initialization of ‘int32_t t’ +62582 | int32_t t = t_next(prev); + | ^ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void ecs_world_stats_get(const ecs_world_t*, ecs_world_stats_t*)’: +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:62715:9: note: in expansion of macro ‘ECS_NEQZERO’ +62715 | if (ECS_NEQZERO(delta_world_time) && ECS_NEQZERO(delta_frame_count)) { + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:62715:42: note: in expansion of macro ‘ECS_NEQZERO’ +62715 | if (ECS_NEQZERO(delta_world_time) && ECS_NEQZERO(delta_frame_count)) { + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:62782:1: error: jump to label ‘error’ +62782 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62691:5: note: in expansion of macro ‘ecs_check’ +62691 | ecs_check(s != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62753:13: note: crosses initialization of ‘int64_t outstanding_allocs’ +62753 | int64_t outstanding_allocs = ecs_os_api_malloc_count + + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62706:12: note: crosses initialization of ‘double delta_world_time’ +62706 | double delta_world_time = + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62697:12: note: crosses initialization of ‘double delta_frame_count’ +62697 | double delta_frame_count = + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62695:13: note: crosses initialization of ‘int32_t t’ +62695 | int32_t t = s->t = t_next(s->t); + | ^ +../src/flecs/distr/flecs.c:62782:1: error: jump to label ‘error’ +62782 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62690:5: note: in expansion of macro ‘ecs_check’ +62690 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62753:13: note: crosses initialization of ‘int64_t outstanding_allocs’ +62753 | int64_t outstanding_allocs = ecs_os_api_malloc_count + + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62706:12: note: crosses initialization of ‘double delta_world_time’ +62706 | double delta_world_time = + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62697:12: note: crosses initialization of ‘double delta_frame_count’ +62697 | double delta_frame_count = + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62695:13: note: crosses initialization of ‘int32_t t’ +62695 | int32_t t = s->t = t_next(s->t); + | ^ +../src/flecs/distr/flecs.c: In function ‘void ecs_query_stats_get(const ecs_world_t*, const ecs_query_t*, ecs_query_stats_t*)’: +../src/flecs/distr/flecs.c:62833:1: error: jump to label ‘error’ +62833 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62824:5: note: in expansion of macro ‘ecs_check’ +62824 | ecs_check(s != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62828:23: note: crosses initialization of ‘ecs_query_count_t counts’ +62828 | ecs_query_count_t counts = ecs_query_count(query); + | ^~~~~~ +../src/flecs/distr/flecs.c:62827:13: note: crosses initialization of ‘int32_t t’ +62827 | int32_t t = s->t = t_next(s->t); + | ^ +../src/flecs/distr/flecs.c:62833:1: error: jump to label ‘error’ +62833 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62823:5: note: in expansion of macro ‘ecs_check’ +62823 | ecs_check(query != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62828:23: note: crosses initialization of ‘ecs_query_count_t counts’ +62828 | ecs_query_count_t counts = ecs_query_count(query); + | ^~~~~~ +../src/flecs/distr/flecs.c:62827:13: note: crosses initialization of ‘int32_t t’ +62827 | int32_t t = s->t = t_next(s->t); + | ^ +../src/flecs/distr/flecs.c: In function ‘bool ecs_system_stats_get(const ecs_world_t*, ecs_entity_t, ecs_system_stats_t*)’: +../src/flecs/distr/flecs.c:62895:1: error: jump to label ‘error’ +62895 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62878:5: note: in expansion of macro ‘ecs_check’ +62878 | ecs_check(system != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62888:13: note: crosses initialization of ‘int32_t t’ +62888 | int32_t t = s->query.t; + | ^ +../src/flecs/distr/flecs.c:62882:25: note: crosses initialization of ‘const ecs_system_t* ptr’ +62882 | const ecs_system_t *ptr = flecs_poly_get(world, system, ecs_system_t); + | ^~~ +../src/flecs/distr/flecs.c:62895:1: error: jump to label ‘error’ +62895 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62877:5: note: in expansion of macro ‘ecs_check’ +62877 | ecs_check(s != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62888:13: note: crosses initialization of ‘int32_t t’ +62888 | int32_t t = s->query.t; + | ^ +../src/flecs/distr/flecs.c:62882:25: note: crosses initialization of ‘const ecs_system_t* ptr’ +62882 | const ecs_system_t *ptr = flecs_poly_get(world, system, ecs_system_t); + | ^~~ +../src/flecs/distr/flecs.c:62895:1: error: jump to label ‘error’ +62895 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62876:5: note: in expansion of macro ‘ecs_check’ +62876 | ecs_check(world != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62888:13: note: crosses initialization of ‘int32_t t’ +62888 | int32_t t = s->query.t; + | ^ +../src/flecs/distr/flecs.c:62882:25: note: crosses initialization of ‘const ecs_system_t* ptr’ +62882 | const ecs_system_t *ptr = flecs_poly_get(world, system, ecs_system_t); + | ^~~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_pipeline_stats_get(ecs_world_t*, ecs_entity_t, ecs_pipeline_stats_t*)’: +../src/flecs/distr/flecs.c:63045:1: error: jump to label ‘error’ +63045 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62949:5: note: in expansion of macro ‘ecs_check’ +62949 | ecs_check(pipeline != 0, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62980:13: note: crosses initialization of ‘int32_t pip_count’ +62980 | int32_t pip_count = active_sys_count + ecs_vec_count(ops); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62979:24: note: crosses initialization of ‘ecs_pipeline_op_t* op_last’ +62979 | ecs_pipeline_op_t *op_last = ecs_vec_last_t(ops, ecs_pipeline_op_t); + | ^~~~~~~ +../src/flecs/distr/flecs.c:62978:24: note: crosses initialization of ‘ecs_pipeline_op_t* op’ +62978 | ecs_pipeline_op_t *op = ecs_vec_first_t(ops, ecs_pipeline_op_t); + | ^~ +../src/flecs/distr/flecs.c:62977:16: note: crosses initialization of ‘ecs_vec_t* ops’ +62977 | ecs_vec_t *ops = &pq->ops; + | ^~~ +../src/flecs/distr/flecs.c:62962:16: note: crosses initialization of ‘ecs_iter_t it’ +62962 | ecs_iter_t it = ecs_query_iter(stage, pq->query); + | ^~ +../src/flecs/distr/flecs.c:62959:28: note: crosses initialization of ‘int32_t active_sys_count’ +62959 | int32_t sys_count = 0, active_sys_count = 0; + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62959:13: note: crosses initialization of ‘int32_t sys_count’ +62959 | int32_t sys_count = 0, active_sys_count = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62956:27: note: crosses initialization of ‘ecs_pipeline_state_t* pq’ +62956 | ecs_pipeline_state_t *pq = pqc->state; + | ^~ +../src/flecs/distr/flecs.c:62952:24: note: crosses initialization of ‘const EcsPipeline* pqc’ +62952 | const EcsPipeline *pqc = ecs_get(world, pipeline, EcsPipeline); + | ^~~ +../src/flecs/distr/flecs.c:62951:24: note: crosses initialization of ‘const ecs_world_t* world’ +62951 | const ecs_world_t *world = ecs_get_world(stage); + | ^~~~~ +../src/flecs/distr/flecs.c:63045:1: error: jump to label ‘error’ +63045 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62948:5: note: in expansion of macro ‘ecs_check’ +62948 | ecs_check(s != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62980:13: note: crosses initialization of ‘int32_t pip_count’ +62980 | int32_t pip_count = active_sys_count + ecs_vec_count(ops); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62979:24: note: crosses initialization of ‘ecs_pipeline_op_t* op_last’ +62979 | ecs_pipeline_op_t *op_last = ecs_vec_last_t(ops, ecs_pipeline_op_t); + | ^~~~~~~ +../src/flecs/distr/flecs.c:62978:24: note: crosses initialization of ‘ecs_pipeline_op_t* op’ +62978 | ecs_pipeline_op_t *op = ecs_vec_first_t(ops, ecs_pipeline_op_t); + | ^~ +../src/flecs/distr/flecs.c:62977:16: note: crosses initialization of ‘ecs_vec_t* ops’ +62977 | ecs_vec_t *ops = &pq->ops; + | ^~~ +../src/flecs/distr/flecs.c:62962:16: note: crosses initialization of ‘ecs_iter_t it’ +62962 | ecs_iter_t it = ecs_query_iter(stage, pq->query); + | ^~ +../src/flecs/distr/flecs.c:62959:28: note: crosses initialization of ‘int32_t active_sys_count’ +62959 | int32_t sys_count = 0, active_sys_count = 0; + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62959:13: note: crosses initialization of ‘int32_t sys_count’ +62959 | int32_t sys_count = 0, active_sys_count = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62956:27: note: crosses initialization of ‘ecs_pipeline_state_t* pq’ +62956 | ecs_pipeline_state_t *pq = pqc->state; + | ^~ +../src/flecs/distr/flecs.c:62952:24: note: crosses initialization of ‘const EcsPipeline* pqc’ +62952 | const EcsPipeline *pqc = ecs_get(world, pipeline, EcsPipeline); + | ^~~ +../src/flecs/distr/flecs.c:62951:24: note: crosses initialization of ‘const ecs_world_t* world’ +62951 | const ecs_world_t *world = ecs_get_world(stage); + | ^~~~~ +../src/flecs/distr/flecs.c:63045:1: error: jump to label ‘error’ +63045 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62947:5: note: in expansion of macro ‘ecs_check’ +62947 | ecs_check(stage != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62980:13: note: crosses initialization of ‘int32_t pip_count’ +62980 | int32_t pip_count = active_sys_count + ecs_vec_count(ops); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62979:24: note: crosses initialization of ‘ecs_pipeline_op_t* op_last’ +62979 | ecs_pipeline_op_t *op_last = ecs_vec_last_t(ops, ecs_pipeline_op_t); + | ^~~~~~~ +../src/flecs/distr/flecs.c:62978:24: note: crosses initialization of ‘ecs_pipeline_op_t* op’ +62978 | ecs_pipeline_op_t *op = ecs_vec_first_t(ops, ecs_pipeline_op_t); + | ^~ +../src/flecs/distr/flecs.c:62977:16: note: crosses initialization of ‘ecs_vec_t* ops’ +62977 | ecs_vec_t *ops = &pq->ops; + | ^~~ +../src/flecs/distr/flecs.c:62962:16: note: crosses initialization of ‘ecs_iter_t it’ +62962 | ecs_iter_t it = ecs_query_iter(stage, pq->query); + | ^~ +../src/flecs/distr/flecs.c:62959:28: note: crosses initialization of ‘int32_t active_sys_count’ +62959 | int32_t sys_count = 0, active_sys_count = 0; + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:62959:13: note: crosses initialization of ‘int32_t sys_count’ +62959 | int32_t sys_count = 0, active_sys_count = 0; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:62956:27: note: crosses initialization of ‘ecs_pipeline_state_t* pq’ +62956 | ecs_pipeline_state_t *pq = pqc->state; + | ^~ +../src/flecs/distr/flecs.c:62952:24: note: crosses initialization of ‘const EcsPipeline* pqc’ +62952 | const EcsPipeline *pqc = ecs_get(world, pipeline, EcsPipeline); + | ^~~ +../src/flecs/distr/flecs.c:62951:24: note: crosses initialization of ‘const ecs_world_t* world’ +62951 | const ecs_world_t *world = ecs_get_world(stage); + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_system_monitor_dtor(EcsSystemStats*)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_system_stats_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:63222:37: note: in expansion of macro ‘ecs_map_ptr’ +63222 | ecs_system_stats_t *stats = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_system_stats_copy_last(void*, void*)’: +../src/flecs/distr/flecs.c:63263:32: error: invalid conversion from ‘void*’ to ‘ecs_system_stats_t*’ [-fpermissive] +63263 | ecs_system_stats_copy_last(stats, src); + | ^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:62929:25: note: initializing argument 1 of ‘void ecs_system_stats_copy_last(ecs_system_stats_t*, const ecs_system_stats_t*)’ +62929 | ecs_system_stats_t *dst, + | ~~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c:63263:39: error: invalid conversion from ‘void*’ to ‘const ecs_system_stats_t*’ [-fpermissive] +63263 | ecs_system_stats_copy_last(stats, src); + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c:62930:31: note: initializing argument 2 of ‘void ecs_system_stats_copy_last(ecs_system_stats_t*, const ecs_system_stats_t*)’ +62930 | const ecs_system_stats_t *src) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_system_stats_get(ecs_world_t*, ecs_entity_t, void*)’: +../src/flecs/distr/flecs.c:63272:38: error: invalid conversion from ‘void*’ to ‘ecs_system_stats_t*’ [-fpermissive] +63272 | ecs_system_stats_get(world, res, stats); + | ^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:62874:25: note: initializing argument 3 of ‘bool ecs_system_stats_get(const ecs_world_t*, ecs_entity_t, ecs_system_stats_t*)’ +62874 | ecs_system_stats_t *s) + | ~~~~~~~~~~~~~~~~~~~~^ +../src/flecs/distr/flecs.c: In function ‘void flecs_system_stats_reduce(void*, void*)’: +../src/flecs/distr/flecs.c:63280:29: error: invalid conversion from ‘void*’ to ‘ecs_system_stats_t*’ [-fpermissive] +63280 | ecs_system_stats_reduce(stats, src); + | ^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:62900:25: note: initializing argument 1 of ‘void ecs_system_stats_reduce(ecs_system_stats_t*, const ecs_system_stats_t*)’ +62900 | ecs_system_stats_t *dst, + | ~~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c:63280:36: error: invalid conversion from ‘void*’ to ‘const ecs_system_stats_t*’ [-fpermissive] +63280 | ecs_system_stats_reduce(stats, src); + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c:62901:31: note: initializing argument 2 of ‘void ecs_system_stats_reduce(ecs_system_stats_t*, const ecs_system_stats_t*)’ +62901 | const ecs_system_stats_t *src) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_system_stats_reduce_last(void*, void*, int32_t)’: +../src/flecs/distr/flecs.c:63289:34: error: invalid conversion from ‘void*’ to ‘ecs_system_stats_t*’ [-fpermissive] +63289 | ecs_system_stats_reduce_last(stats, last, reduce_count); + | ^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:62910:25: note: initializing argument 1 of ‘void ecs_system_stats_reduce_last(ecs_system_stats_t*, const ecs_system_stats_t*, int32_t)’ +62910 | ecs_system_stats_t *dst, + | ~~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c:63289:41: error: invalid conversion from ‘void*’ to ‘const ecs_system_stats_t*’ [-fpermissive] +63289 | ecs_system_stats_reduce_last(stats, last, reduce_count); + | ^~~~ + | | + | void* +../src/flecs/distr/flecs.c:62911:31: note: initializing argument 2 of ‘void ecs_system_stats_reduce_last(ecs_system_stats_t*, const ecs_system_stats_t*, int32_t)’ +62911 | const ecs_system_stats_t *src, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_system_stats_repeat_last(void*)’: +../src/flecs/distr/flecs.c:63296:34: error: invalid conversion from ‘void*’ to ‘ecs_system_stats_t*’ [-fpermissive] +63296 | ecs_system_stats_repeat_last(stats); + | ^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:62921:25: note: initializing argument 1 of ‘void ecs_system_stats_repeat_last(ecs_system_stats_t*)’ +62921 | ecs_system_stats_t *stats) + | ~~~~~~~~~~~~~~~~~~~~^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void FlecsSystemMonitorImport(ecs_world_t*)’: +../src/flecs/distr/flecs.c:63309:5: error: designator order for field ‘ecs_type_hooks_t::dtor’ does not match declaration order in ‘ecs_type_hooks_t’ +63309 | }); + | ^ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:63304:42: error: taking address of rvalue [-fpermissive] +63304 | ecs_set_hooks(world, EcsSystemStats, { + | ^ +63305 | .ctor = ecs_ctor(EcsSystemStats), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63306 | .copy = ecs_copy(EcsSystemStats), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63307 | .move = ecs_move(EcsSystemStats), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63308 | .dtor = ecs_dtor(EcsSystemStats) + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63309 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_world_stats_get(ecs_world_t*, ecs_entity_t, void*)’: +../src/flecs/distr/flecs.c:63343:32: error: invalid conversion from ‘void*’ to ‘ecs_world_stats_t*’ [-fpermissive] +63343 | ecs_world_stats_get(world, stats); + | ^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:62688:24: note: initializing argument 2 of ‘void ecs_world_stats_get(const ecs_world_t*, ecs_world_stats_t*)’ +62688 | ecs_world_stats_t *s) + | ~~~~~~~~~~~~~~~~~~~^ +../src/flecs/distr/flecs.c: In function ‘void flecs_world_stats_copy_last(void*, void*)’: +../src/flecs/distr/flecs.c:63360:31: error: invalid conversion from ‘void*’ to ‘ecs_world_stats_t*’ [-fpermissive] +63360 | ecs_world_stats_copy_last(stats, src); + | ^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:62811:24: note: initializing argument 1 of ‘void ecs_world_stats_copy_last(ecs_world_stats_t*, const ecs_world_stats_t*)’ +62811 | ecs_world_stats_t *dst, + | ~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c:63360:38: error: invalid conversion from ‘void*’ to ‘const ecs_world_stats_t*’ [-fpermissive] +63360 | ecs_world_stats_copy_last(stats, src); + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c:62812:30: note: initializing argument 2 of ‘void ecs_world_stats_copy_last(ecs_world_stats_t*, const ecs_world_stats_t*)’ +62812 | const ecs_world_stats_t *src) + | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_world_stats_reduce(void*, void*)’: +../src/flecs/distr/flecs.c:63368:28: error: invalid conversion from ‘void*’ to ‘ecs_world_stats_t*’ [-fpermissive] +63368 | ecs_world_stats_reduce(stats, src); + | ^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:62787:24: note: initializing argument 1 of ‘void ecs_world_stats_reduce(ecs_world_stats_t*, const ecs_world_stats_t*)’ +62787 | ecs_world_stats_t *dst, + | ~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c:63368:35: error: invalid conversion from ‘void*’ to ‘const ecs_world_stats_t*’ [-fpermissive] +63368 | ecs_world_stats_reduce(stats, src); + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c:62788:30: note: initializing argument 2 of ‘void ecs_world_stats_reduce(ecs_world_stats_t*, const ecs_world_stats_t*)’ +62788 | const ecs_world_stats_t *src) + | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_world_stats_reduce_last(void*, void*, int32_t)’: +../src/flecs/distr/flecs.c:63377:33: error: invalid conversion from ‘void*’ to ‘ecs_world_stats_t*’ [-fpermissive] +63377 | ecs_world_stats_reduce_last(stats, last, reduce_count); + | ^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:62795:24: note: initializing argument 1 of ‘void ecs_world_stats_reduce_last(ecs_world_stats_t*, const ecs_world_stats_t*, int32_t)’ +62795 | ecs_world_stats_t *dst, + | ~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c:63377:40: error: invalid conversion from ‘void*’ to ‘const ecs_world_stats_t*’ [-fpermissive] +63377 | ecs_world_stats_reduce_last(stats, last, reduce_count); + | ^~~~ + | | + | void* +../src/flecs/distr/flecs.c:62796:30: note: initializing argument 2 of ‘void ecs_world_stats_reduce_last(ecs_world_stats_t*, const ecs_world_stats_t*, int32_t)’ +62796 | const ecs_world_stats_t *src, + | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_world_stats_repeat_last(void*)’: +../src/flecs/distr/flecs.c:63384:33: error: invalid conversion from ‘void*’ to ‘ecs_world_stats_t*’ [-fpermissive] +63384 | ecs_world_stats_repeat_last(stats); + | ^~~~~ + | | + | void* +../src/flecs/distr/flecs.c:62804:24: note: initializing argument 1 of ‘void ecs_world_stats_repeat_last(ecs_world_stats_t*)’ +62804 | ecs_world_stats_t *stats) + | ~~~~~~~~~~~~~~~~~~~^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void FlecsWorldMonitorImport(ecs_world_t*)’: +../src/flecs/distr/flecs.c:63392:41: error: taking address of rvalue [-fpermissive] +63392 | ecs_set_hooks(world, EcsWorldStats, { + | ^ +63393 | .ctor = flecs_default_ctor + | ~~~~~~~~~~~~~~~~~~~~~~~~~~ +63394 | }); + | ~ +../src/flecs/distr/flecs.h:10023:59: note: in definition of macro ‘ecs_set_hooks’ +10023 | ecs_set_hooks_id(world, ecs_id(T), &(ecs_type_hooks_t)__VA_ARGS__) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void FlecsWorldSummaryImport(ecs_world_t*)’: +../src/flecs/distr/flecs.c:63485:23: error: taking address of rvalue [-fpermissive] +63485 | ecs_struct(world, { + | ^ +63486 | .entity = ecs_id(EcsWorldSummary), + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63487 | .members = { + | ~~~~~~~~~~~~ +63488 | { .name = "target_fps", .type = ecs_id(ecs_f64_t), .unit = EcsHertz }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63489 | { .name = "time_scale", .type = ecs_id(ecs_f64_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63490 | { .name = "frame_time_total", .type = ecs_id(ecs_f64_t), .unit = EcsSeconds }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63491 | { .name = "system_time_total", .type = ecs_id(ecs_f64_t), .unit = EcsSeconds }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63492 | { .name = "merge_time_total", .type = ecs_id(ecs_f64_t), .unit = EcsSeconds }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63493 | { .name = "frame_time_last", .type = ecs_id(ecs_f64_t), .unit = EcsSeconds }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63494 | { .name = "system_time_last", .type = ecs_id(ecs_f64_t), .unit = EcsSeconds }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63495 | { .name = "merge_time_last", .type = ecs_id(ecs_f64_t), .unit = EcsSeconds }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63496 | { .name = "frame_count", .type = ecs_id(ecs_u64_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63497 | { .name = "command_count", .type = ecs_id(ecs_u64_t) }, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63498 | { .name = "build_info", .type = build_info } + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63499 | } + | ~ +63500 | }); + | ~ +../src/flecs/distr/flecs.h:16131:49: note: in definition of macro ‘ecs_struct’ +16131 | ecs_struct_init(world, &(ecs_struct_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10141:34: error: taking address of temporary array +10141 | #define ecs_ids(...) (ecs_id_t[]){ __VA_ARGS__, 0 } + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:12349:49: note: in definition of macro ‘ecs_system’ +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:63505:19: note: in expansion of macro ‘ecs_entity’ +63505 | .entity = ecs_entity(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:63507:20: note: in expansion of macro ‘ecs_ids’ +63507 | .add = ecs_ids(ecs_pair(EcsDependsOn, EcsPreFrame)) + | ^~~~~~~ +../src/flecs/distr/flecs.h:12349:47: error: expected primary-expression before ‘)’ token +12349 | ecs_system_init(world, &(ecs_system_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:63504:5: note: in expansion of macro ‘ecs_system’ +63504 | ecs_system(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:63514:37: error: taking address of rvalue [-fpermissive] +63514 | .entity = ecs_entity(world, { + | ^ +63515 | .name = "OnSetWorldSummary" + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63516 | }), + | ~ +../src/flecs/distr/flecs.h:9715:53: note: in definition of macro ‘ecs_observer’ + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:63514:19: note: in expansion of macro ‘ecs_entity’ +63514 | .entity = ecs_entity(world, { + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:9715:51: error: expected primary-expression before ‘)’ token + 9715 | ecs_observer_init(world, &(ecs_observer_desc_t) __VA_ARGS__ ) + | ^ +../src/flecs/distr/flecs.c:63513:5: note: in expansion of macro ‘ecs_observer’ +63513 | ecs_observer(world, { + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:63522:47: error: taking address of rvalue [-fpermissive] +63522 | ecs_set(world, EcsWorld, EcsWorldSummary, { + | ^ +63523 | .target_fps = (double)info->target_fps, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63524 | .time_scale = (double)info->time_scale + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +63525 | }); + | ~ +../src/flecs/distr/flecs.h:9788:81: note: in definition of macro ‘ecs_set’ + 9788 | ecs_set_id(world, entity, ecs_id(component), sizeof(component), &(component)__VA_ARGS__) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: At global scope: +../src/flecs/distr/flecs.c:63550:1: sorry, unimplemented: non-trivial designated initializers not supported +63550 | }; + | ^ +../src/flecs/distr/flecs.c: In function ‘void flecs_system_poly_fini(void*)’: +../src/flecs/distr/flecs.c:63735:23: error: invalid conversion from ‘void*’ to ‘ecs_system_t*’ [-fpermissive] +63735 | flecs_system_fini(sys); + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c:63712:38: note: initializing argument 1 of ‘void flecs_system_fini(ecs_system_t*)’ +63712 | void flecs_system_fini(ecs_system_t *sys) { + | ~~~~~~~~~~~~~~^~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_system_init_timer(ecs_world_t*, ecs_entity_t, const ecs_system_desc_t*)’: +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:63744:9: note: in expansion of macro ‘ECS_NEQZERO’ +63744 | if (ECS_NEQZERO(desc->interval) && ECS_NEQZERO(desc->rate)) { + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:63744:40: note: in expansion of macro ‘ECS_NEQZERO’ +63744 | if (ECS_NEQZERO(desc->interval) && ECS_NEQZERO(desc->rate)) { + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:63751:9: note: in expansion of macro ‘ECS_NEQZERO’ +63751 | if (ECS_NEQZERO(desc->interval) || ECS_NEQZERO(desc->rate) || + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:63751:40: note: in expansion of macro ‘ECS_NEQZERO’ +63751 | if (ECS_NEQZERO(desc->interval) || ECS_NEQZERO(desc->rate) || + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:63752:9: note: in expansion of macro ‘ECS_NEQZERO’ +63752 | ECS_NEQZERO(desc->tick_source)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.h:886:45: error: taking address of rvalue [-fpermissive] + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^ +../src/flecs/distr/flecs.h:2642:53: note: in definition of macro ‘ecs_os_memcmp’ + 2642 | #define ecs_os_memcmp(ptr1, ptr2, num) memcmp(ptr1, ptr2, static_cast(num)) + | ^~~~ +../src/flecs/distr/flecs.h:884:25: note: in expansion of macro ‘ECS_EQ’ + 884 | #define ECS_NEQ(a, b) (!ECS_EQ(a, b)) + | ^~~~~~ +../src/flecs/distr/flecs.h:886:24: note: in expansion of macro ‘ECS_NEQ’ + 886 | #define ECS_NEQZERO(a) ECS_NEQ(a, (uint64_t){0}) + | ^~~~~~~ +../src/flecs/distr/flecs.c:63755:13: note: in expansion of macro ‘ECS_NEQZERO’ +63755 | if (ECS_NEQZERO(desc->interval)) { + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_entity_t ecs_system_init(ecs_world_t*, const ecs_system_desc_t*)’: +../src/flecs/distr/flecs.c:63788:36: error: taking address of rvalue [-fpermissive] +63788 | entity = ecs_entity(world, {0}); + | ^~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:63926:1: error: jump to label ‘error’ +63926 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:63781:5: note: in expansion of macro ‘ecs_check’ +63781 | ecs_check(desc->_canary == 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:63791:14: note: crosses initialization of ‘EcsPoly* poly’ +63791 | EcsPoly *poly = flecs_poly_bind(world, entity, ecs_system_t); + | ^~~~ +../src/flecs/distr/flecs.c:63786:18: note: crosses initialization of ‘ecs_entity_t entity’ +63786 | ecs_entity_t entity = desc->entity; + | ^~~~~~ +../src/flecs/distr/flecs.c:63926:1: error: jump to label ‘error’ +63926 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:63780:5: note: in expansion of macro ‘ecs_check’ +63780 | ecs_check(desc != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:63791:14: note: crosses initialization of ‘EcsPoly* poly’ +63791 | EcsPoly *poly = flecs_poly_bind(world, entity, ecs_system_t); + | ^~~~ +../src/flecs/distr/flecs.c:63786:18: note: crosses initialization of ‘ecs_entity_t entity’ +63786 | ecs_entity_t entity = desc->entity; + | ^~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void FlecsSystemImport(ecs_world_t*)’: +../src/flecs/distr/flecs.c:3008:37: error: taking address of rvalue [-fpermissive] + 3008 | .entity = ecs_entity(world, { .id = ecs_id(id_), .name = #id_, .symbol = #id_ }),\ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:9657:49: note: in definition of macro ‘ecs_entity’ + 9657 | ecs_entity_init(world, &(ecs_entity_desc_t) __VA_ARGS__ ) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:63950:5: note: in expansion of macro ‘flecs_bootstrap_component’ +63950 | flecs_bootstrap_component(world, EcsTickSource); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:3007:53: error: expected primary-expression before ‘)’ token + 3007 | ecs_component_init(world, &(ecs_component_desc_t){\ + | ^ +../src/flecs/distr/flecs.c:63950:5: note: in expansion of macro ‘flecs_bootstrap_component’ +63950 | flecs_bootstrap_component(world, EcsTickSource); + | ^~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_query_discover_vars(ecs_stage_t*, ecs_query_impl_t*)’: +../src/flecs/distr/flecs.h:2005:44: error: invalid conversion from ‘void*’ to ‘ecs_var_id_t*’ {aka ‘unsigned char*’} [-fpermissive] + 2005 | #define flecs_calloc(a, size) flecs_bcalloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2007:37: note: in expansion of macro ‘flecs_calloc’ + 2007 | #define flecs_calloc_n(a, T, count) flecs_calloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:64184:43: note: in expansion of macro ‘flecs_calloc_n’ +64184 | query->src_vars = flecs_calloc_n(&stage->allocator, + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘ecs_query_var_t*’ [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:64343:22: note: in expansion of macro ‘flecs_alloc’ +64343 | query_vars = flecs_alloc(&stage->allocator, + | ^~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘char**’ [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:3948:36: note: in expansion of macro ‘ECS_OFFSET’ + 3948 | #define ECS_ELEM(ptr, size, index) ECS_OFFSET(ptr, (size) * (index)) + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:64364:21: note: in expansion of macro ‘ECS_ELEM’ +64364 | var_names = ECS_ELEM(query_vars, ECS_SIZEOF(ecs_query_var_t), + | ^~~~~~~~ +../src/flecs/distr/flecs.c:64400:1: error: jump to label ‘error’ +64400 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:64178:34: note: from here +64178 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:64341:22: note: crosses initialization of ‘ecs_query_var_t* query_vars’ +64341 | ecs_query_var_t *query_vars = &flecs_this_array; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:64238:10: note: crosses initialization of ‘bool replace_placeholders’ +64238 | bool replace_placeholders = false; + | ^~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:64237:18: note: crosses initialization of ‘ecs_var_id_t placeholder’ +64237 | ecs_var_id_t placeholder = EcsVarNone - 1; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:64236:13: note: crosses initialization of ‘int32_t var_count’ +64236 | int32_t var_count = ecs_vec_count(vars); + | ^~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘int flecs_query_compile(ecs_world_t*, ecs_stage_t*, ecs_query_impl_t*)’: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘ecs_query_op_t*’ [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2003:36: note: in expansion of macro ‘flecs_alloc’ + 2003 | #define flecs_alloc_n(a, T, count) flecs_alloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:65063:22: note: in expansion of macro ‘flecs_alloc_n’ +65063 | query->ops = flecs_alloc_n(&stage->allocator, ecs_query_op_t, op_count); + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_query_compile_term(ecs_world_t*, ecs_query_impl_t*, ecs_term_t*, ecs_query_compile_ctx_t*)’: +../src/flecs/distr/flecs.c:66555:1: error: jump to label ‘error’ +66555 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:66355:14: note: from here +66355 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:66435:23: note: crosses initialization of ‘ecs_write_flags_t write_state’ +66435 | ecs_write_flags_t write_state = ctx->written; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:66555:1: error: jump to label ‘error’ +66555 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:66321:14: note: from here +66321 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:66435:23: note: crosses initialization of ‘ecs_write_flags_t write_state’ +66435 | ecs_write_flags_t write_state = ctx->written; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:66555:1: error: jump to label ‘error’ +66555 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:66315:14: note: from here +66315 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:66435:23: note: crosses initialization of ‘ecs_write_flags_t write_state’ +66435 | ecs_write_flags_t write_state = ctx->written; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:66555:1: error: jump to label ‘error’ +66555 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:66272:18: note: from here +66272 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:66435:23: note: crosses initialization of ‘ecs_write_flags_t write_state’ +66435 | ecs_write_flags_t write_state = ctx->written; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:66304:10: note: crosses initialization of ‘bool src_written’ +66304 | bool src_written = true; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:66294:23: note: crosses initialization of ‘ecs_write_flags_t cond_write_state’ +66294 | ecs_write_flags_t cond_write_state = ctx->cond_written; + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:66290:10: note: crosses initialization of ‘bool is_not’ +66290 | bool is_not = (term->oper == EcsNot) && !builtin_pred; + | ^~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_query_cache_table_match_t* flecs_query_cache_find_group_insertion_node(ecs_query_cache_t*, uint64_t)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_query_cache_table_list_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:66724:16: note: in expansion of macro ‘ecs_map_ptr’ +66724 | list = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_query_cache_table_match_t* flecs_query_cache_cache_add(ecs_world_t*, ecs_query_cache_table_t*)’: +../src/flecs/distr/flecs.c:66996:22: error: invalid conversion from ‘void*’ to ‘ecs_query_cache_table_match_t*’ [-fpermissive] +66996 | flecs_bcalloc(&world->allocators.query_table_match); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘uint64_t flecs_query_cache_group_by_cascade(ecs_world_t*, ecs_table_t*, ecs_id_t, void*)’: +../src/flecs/distr/flecs.c:67021:24: error: invalid conversion from ‘void*’ to ‘ecs_term_t*’ [-fpermissive] +67021 | ecs_term_t *term = ctx; + | ^~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘ecs_query_cache_table_match_t* flecs_query_cache_add_table_match(ecs_query_cache_t*, ecs_query_cache_table_t*, ecs_table_t*)’: +../src/flecs/distr/flecs.c:67039:27: error: invalid conversion from ‘void*’ to ‘const ecs_table_record_t**’ [-fpermissive] +67039 | qm->trs = flecs_balloc(&cache->allocators.trs); + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_query_cache_set_table_match(ecs_query_cache_t*, ecs_query_cache_table_match_t*, ecs_iter_t*)’: +../src/flecs/distr/flecs.c:67076:35: error: invalid conversion from ‘void*’ to ‘ecs_id_t*’ {aka ‘long unsigned int*’} [-fpermissive] +67076 | qm->ids = flecs_balloc(&cache->allocators.ids); + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:67095:39: error: invalid conversion from ‘void*’ to ‘ecs_entity_t*’ {aka ‘long unsigned int*’} [-fpermissive] +67095 | qm->sources = flecs_balloc(&cache->allocators.sources); + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘ecs_query_cache_table_t* flecs_query_cache_table_insert(ecs_world_t*, ecs_query_cache_t*, ecs_table_t*)’: +../src/flecs/distr/flecs.c:67115:48: error: invalid conversion from ‘void*’ to ‘ecs_query_cache_table_t*’ [-fpermissive] +67115 | ecs_query_cache_table_t *qt = flecs_bcalloc(&world->allocators.query_table); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_query_cache_update_table(ecs_query_cache_t*, ecs_table_t*, bool)’: +../src/flecs/distr/flecs.c:67314:58: error: invalid conversion from ‘void*’ to ‘ecs_query_cache_table_t*’ [-fpermissive] +67314 | ecs_query_cache_table_t *qt = ecs_table_cache_get(&cache->cache, table); + | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_query_cache_table_match_free(ecs_query_cache_t*, ecs_query_cache_table_t*, ecs_query_cache_table_match_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_table_record_t**’ to type ‘void*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67350:45: note: in expansion of macro ‘ECS_CONST_CAST’ +67350 | flecs_bfree(&cache->allocators.trs, ECS_CONST_CAST(void*, cur->trs)); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_query_cache_unmatch_table(ecs_query_cache_t*, ecs_table_t*, ecs_query_cache_table_t*)’: +../src/flecs/distr/flecs.c:67390:35: error: invalid conversion from ‘void*’ to ‘ecs_query_cache_table_t*’ [-fpermissive] +67390 | elem = ecs_table_cache_get(&cache->cache, table); + | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘void flecs_query_cache_rematch_tables(ecs_world_t*, ecs_query_impl_t*)’: +../src/flecs/distr/flecs.c:67438:37: error: invalid conversion from ‘void*’ to ‘ecs_query_cache_table_t*’ [-fpermissive] +67438 | qt = ecs_table_cache_get(&cache->cache, table); + | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_query_cache_table_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:67475:22: note: in expansion of macro ‘flecs_table_cache_next’ +67475 | while ((qt = flecs_table_cache_next(&cache_it, ecs_query_cache_table_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_query_cache_notify(ecs_world_t*, ecs_query_t*, ecs_query_cache_event_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67497:30: note: in expansion of macro ‘flecs_query_impl’ +67497 | ecs_query_impl_t *impl = flecs_query_impl(q); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int flecs_query_cache_order_by(ecs_world_t*, ecs_query_impl_t*, ecs_entity_t, ecs_order_by_action_t, ecs_sort_table_action_t)’: +../src/flecs/distr/flecs.c:67567:1: error: jump to label ‘error’ +67567 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67527:5: note: in expansion of macro ‘ecs_check’ +67527 | ecs_check(!ecs_id_is_wildcard(order_by), + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:67533:13: note: crosses initialization of ‘int32_t order_by_term’ +67533 | int32_t order_by_term = -1; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67532:16: note: crosses initialization of ‘int32_t count’ +67532 | int32_t i, count = query->term_count; + | ^~~~~ +../src/flecs/distr/flecs.c:67531:24: note: crosses initialization of ‘const ecs_query_t* query’ +67531 | const ecs_query_t *query = cache->query; + | ^~~~~ +../src/flecs/distr/flecs.c:67567:1: error: jump to label ‘error’ +67567 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67526:5: note: in expansion of macro ‘ecs_check’ +67526 | ecs_check(cache != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:67533:13: note: crosses initialization of ‘int32_t order_by_term’ +67533 | int32_t order_by_term = -1; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67532:16: note: crosses initialization of ‘int32_t count’ +67532 | int32_t i, count = query->term_count; + | ^~~~~ +../src/flecs/distr/flecs.c:67531:24: note: crosses initialization of ‘const ecs_query_t* query’ +67531 | const ecs_query_t *query = cache->query; + | ^~~~~ +../src/flecs/distr/flecs.c:67567:1: error: jump to label ‘error’ +67567 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67524:5: note: in expansion of macro ‘ecs_check’ +67524 | ecs_check(impl != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:67533:13: note: crosses initialization of ‘int32_t order_by_term’ +67533 | int32_t order_by_term = -1; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67532:16: note: crosses initialization of ‘int32_t count’ +67532 | int32_t i, count = query->term_count; + | ^~~~~ +../src/flecs/distr/flecs.c:67531:24: note: crosses initialization of ‘const ecs_query_t* query’ +67531 | const ecs_query_t *query = cache->query; + | ^~~~~ +../src/flecs/distr/flecs.c:67525:24: note: crosses initialization of ‘ecs_query_cache_t* cache’ +67525 | ecs_query_cache_t *cache = impl->cache; + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_query_cache_on_event(ecs_iter_t*)’: +../src/flecs/distr/flecs.c:67603:29: error: invalid conversion from ‘void*’ to ‘ecs_observer_t*’ [-fpermissive] +67603 | ecs_observer_t *o = it->ctx; + | ~~~~^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_observer_t*’ to type ‘ecs_observer_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2500:40: note: in expansion of macro ‘ECS_CONST_CAST’ + 2500 | #define flecs_observer_impl(observer) (ECS_CONST_CAST(ecs_observer_impl_t*, observer)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67604:35: note: in expansion of macro ‘flecs_observer_impl’ +67604 | ecs_observer_impl_t *o_impl = flecs_observer_impl(o); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67612:33: error: invalid conversion from ‘void*’ to ‘ecs_query_impl_t*’ [-fpermissive] +67612 | ecs_query_impl_t *impl = o->ctx; + | ~~~^~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_query_cache_table_cache_free(ecs_query_cache_t*)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_query_cache_table_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:67669:22: note: in expansion of macro ‘flecs_table_cache_next’ +67669 | while ((qt = flecs_table_cache_next(&it, ecs_query_cache_table_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_query_cache_fini(ecs_query_impl_t*)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_query_cache_table_list_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67725:51: note: in expansion of macro ‘ecs_map_ptr’ +67725 | ecs_query_cache_table_list_t *group = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_query_cache_t* flecs_query_cache_init(ecs_query_impl_t*, const ecs_query_desc_t*)’: +../src/flecs/distr/flecs.c:67788:46: error: invalid conversion from ‘void*’ to ‘ecs_query_cache_t*’ [-fpermissive] +67788 | ecs_query_cache_t *result = flecs_bcalloc(&stage->allocators.query_cache); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:67814:40: error: invalid conversion from ‘void*’ to ‘ecs_entity_t*’ {aka ‘long unsigned int*’} [-fpermissive] +67814 | result->sources = flecs_bcalloc(&result->allocators.sources); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:67903:1: error: jump to label ‘error’ +67903 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:67855:14: note: from here +67855 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:67859:13: note: crosses initialization of ‘int32_t cascade_by’ +67859 | int32_t cascade_by = result->cascade_by; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:67903:1: error: jump to label ‘error’ +67903 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:67839:18: note: from here +67839 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:67859:13: note: crosses initialization of ‘int32_t cascade_by’ +67859 | int32_t cascade_by = result->cascade_by; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:67903:1: error: jump to label ‘error’ +67903 | error: + | ^~~~~ +../src/flecs/distr/flecs.c:67798:14: note: from here +67798 | goto error; + | ^~~~~ +../src/flecs/distr/flecs.c:67859:13: note: crosses initialization of ‘int32_t cascade_by’ +67859 | int32_t cascade_by = result->cascade_by; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:67903:1: error: jump to label ‘error’ +67903 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67768:5: note: in expansion of macro ‘ecs_check’ +67768 | ecs_check(!(world->flags & EcsWorldFini), ECS_INVALID_OPERATION, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:67859:13: note: crosses initialization of ‘int32_t cascade_by’ +67859 | int32_t cascade_by = result->cascade_by; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:67796:18: note: crosses initialization of ‘ecs_query_t* q’ +67796 | ecs_query_t *q = result->query = ecs_query_init(world, &desc); + | ^ +../src/flecs/distr/flecs.c:67794:19: note: crosses initialization of ‘ecs_flags32_t query_flags’ +67794 | ecs_flags32_t query_flags = const_desc->flags | world->default_query_flags; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:67792:25: note: crosses initialization of ‘ecs_observer_desc_t observer_desc’ +67792 | ecs_observer_desc_t observer_desc = { .query = desc }; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67788:24: note: crosses initialization of ‘ecs_query_cache_t* result’ +67788 | ecs_query_cache_t *result = flecs_bcalloc(&stage->allocators.query_cache); + | ^~~~~~ +../src/flecs/distr/flecs.c:67774:18: note: crosses initialization of ‘ecs_entity_t entity’ +67774 | ecs_entity_t entity = desc.entity; + | ^~~~~~ +../src/flecs/distr/flecs.c:67773:22: note: crosses initialization of ‘ecs_query_desc_t desc’ +67773 | ecs_query_desc_t desc = *const_desc; + | ^~~~ +../src/flecs/distr/flecs.c:67903:1: error: jump to label ‘error’ +67903 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67766:5: note: in expansion of macro ‘ecs_check’ +67766 | ecs_check(const_desc->_canary == 0, ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:67859:13: note: crosses initialization of ‘int32_t cascade_by’ +67859 | int32_t cascade_by = result->cascade_by; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:67796:18: note: crosses initialization of ‘ecs_query_t* q’ +67796 | ecs_query_t *q = result->query = ecs_query_init(world, &desc); + | ^ +../src/flecs/distr/flecs.c:67794:19: note: crosses initialization of ‘ecs_flags32_t query_flags’ +67794 | ecs_flags32_t query_flags = const_desc->flags | world->default_query_flags; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:67792:25: note: crosses initialization of ‘ecs_observer_desc_t observer_desc’ +67792 | ecs_observer_desc_t observer_desc = { .query = desc }; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67788:24: note: crosses initialization of ‘ecs_query_cache_t* result’ +67788 | ecs_query_cache_t *result = flecs_bcalloc(&stage->allocators.query_cache); + | ^~~~~~ +../src/flecs/distr/flecs.c:67774:18: note: crosses initialization of ‘ecs_entity_t entity’ +67774 | ecs_entity_t entity = desc.entity; + | ^~~~~~ +../src/flecs/distr/flecs.c:67773:22: note: crosses initialization of ‘ecs_query_desc_t desc’ +67773 | ecs_query_desc_t desc = *const_desc; + | ^~~~ +../src/flecs/distr/flecs.c:67903:1: error: jump to label ‘error’ +67903 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67765:5: note: in expansion of macro ‘ecs_check’ +67765 | ecs_check(const_desc != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:67859:13: note: crosses initialization of ‘int32_t cascade_by’ +67859 | int32_t cascade_by = result->cascade_by; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:67796:18: note: crosses initialization of ‘ecs_query_t* q’ +67796 | ecs_query_t *q = result->query = ecs_query_init(world, &desc); + | ^ +../src/flecs/distr/flecs.c:67794:19: note: crosses initialization of ‘ecs_flags32_t query_flags’ +67794 | ecs_flags32_t query_flags = const_desc->flags | world->default_query_flags; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:67792:25: note: crosses initialization of ‘ecs_observer_desc_t observer_desc’ +67792 | ecs_observer_desc_t observer_desc = { .query = desc }; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67788:24: note: crosses initialization of ‘ecs_query_cache_t* result’ +67788 | ecs_query_cache_t *result = flecs_bcalloc(&stage->allocators.query_cache); + | ^~~~~~ +../src/flecs/distr/flecs.c:67774:18: note: crosses initialization of ‘ecs_entity_t entity’ +67774 | ecs_entity_t entity = desc.entity; + | ^~~~~~ +../src/flecs/distr/flecs.c:67773:22: note: crosses initialization of ‘ecs_query_desc_t desc’ +67773 | ecs_query_desc_t desc = *const_desc; + | ^~~~ +../src/flecs/distr/flecs.c:67903:1: error: jump to label ‘error’ +67903 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67764:5: note: in expansion of macro ‘ecs_check’ +67764 | ecs_check(world != NULL, ECS_INTERNAL_ERROR, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:67859:13: note: crosses initialization of ‘int32_t cascade_by’ +67859 | int32_t cascade_by = result->cascade_by; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:67796:18: note: crosses initialization of ‘ecs_query_t* q’ +67796 | ecs_query_t *q = result->query = ecs_query_init(world, &desc); + | ^ +../src/flecs/distr/flecs.c:67794:19: note: crosses initialization of ‘ecs_flags32_t query_flags’ +67794 | ecs_flags32_t query_flags = const_desc->flags | world->default_query_flags; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:67792:25: note: crosses initialization of ‘ecs_observer_desc_t observer_desc’ +67792 | ecs_observer_desc_t observer_desc = { .query = desc }; + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67788:24: note: crosses initialization of ‘ecs_query_cache_t* result’ +67788 | ecs_query_cache_t *result = flecs_bcalloc(&stage->allocators.query_cache); + | ^~~~~~ +../src/flecs/distr/flecs.c:67774:18: note: crosses initialization of ‘ecs_entity_t entity’ +67774 | ecs_entity_t entity = desc.entity; + | ^~~~~~ +../src/flecs/distr/flecs.c:67773:22: note: crosses initialization of ‘ecs_query_desc_t desc’ +67773 | ecs_query_desc_t desc = *const_desc; + | ^~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_query_cache_table_t* flecs_query_cache_get_table(ecs_query_cache_t*, ecs_table_t*)’: +../src/flecs/distr/flecs.c:67911:31: error: invalid conversion from ‘void*’ to ‘ecs_query_cache_table_t*’ [-fpermissive] +67911 | return ecs_table_cache_get(&cache->cache, table); + | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void ecs_iter_set_group(ecs_iter_t*, uint64_t)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67924:27: note: in expansion of macro ‘flecs_query_impl’ +67924 | ecs_query_impl_t *q = flecs_query_impl(qit->query); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67947:1: error: jump to label ‘error’ +67947 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67928:5: note: in expansion of macro ‘ecs_check’ +67928 | ecs_check(cache != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:67938:36: note: crosses initialization of ‘ecs_query_cache_table_match_t* first’ +67938 | ecs_query_cache_table_match_t *first = node->first; + | ^~~~~ +../src/flecs/distr/flecs.c:67930:35: note: crosses initialization of ‘ecs_query_cache_table_list_t* node’ +67930 | ecs_query_cache_table_list_t *node = flecs_query_cache_get_group( + | ^~~~ +../src/flecs/distr/flecs.c:67947:1: error: jump to label ‘error’ +67947 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67925:5: note: in expansion of macro ‘ecs_check’ +67925 | ecs_check(q != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:67938:36: note: crosses initialization of ‘ecs_query_cache_table_match_t* first’ +67938 | ecs_query_cache_table_match_t *first = node->first; + | ^~~~~ +../src/flecs/distr/flecs.c:67930:35: note: crosses initialization of ‘ecs_query_cache_table_list_t* node’ +67930 | ecs_query_cache_table_list_t *node = flecs_query_cache_get_group( + | ^~~~ +../src/flecs/distr/flecs.c:67927:24: note: crosses initialization of ‘ecs_query_cache_t* cache’ +67927 | ecs_query_cache_t *cache = q->cache; + | ^~~~~ +../src/flecs/distr/flecs.c:67947:1: error: jump to label ‘error’ +67947 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67920:5: note: in expansion of macro ‘ecs_check’ +67920 | ecs_check(!(it->flags & EcsIterIsValid), ECS_INVALID_PARAMETER, + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:67938:36: note: crosses initialization of ‘ecs_query_cache_table_match_t* first’ +67938 | ecs_query_cache_table_match_t *first = node->first; + | ^~~~~ +../src/flecs/distr/flecs.c:67930:35: note: crosses initialization of ‘ecs_query_cache_table_list_t* node’ +67930 | ecs_query_cache_table_list_t *node = flecs_query_cache_get_group( + | ^~~~ +../src/flecs/distr/flecs.c:67927:24: note: crosses initialization of ‘ecs_query_cache_t* cache’ +67927 | ecs_query_cache_t *cache = q->cache; + | ^~~~~ +../src/flecs/distr/flecs.c:67924:23: note: crosses initialization of ‘ecs_query_impl_t* q’ +67924 | ecs_query_impl_t *q = flecs_query_impl(qit->query); + | ^ +../src/flecs/distr/flecs.c:67923:23: note: crosses initialization of ‘ecs_query_iter_t* qit’ +67923 | ecs_query_iter_t *qit = &it->priv_.iter.query; + | ^~~ +../src/flecs/distr/flecs.c:67947:1: error: jump to label ‘error’ +67947 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67919:5: note: in expansion of macro ‘ecs_check’ +67919 | ecs_check(it->next == ecs_query_next, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:67938:36: note: crosses initialization of ‘ecs_query_cache_table_match_t* first’ +67938 | ecs_query_cache_table_match_t *first = node->first; + | ^~~~~ +../src/flecs/distr/flecs.c:67930:35: note: crosses initialization of ‘ecs_query_cache_table_list_t* node’ +67930 | ecs_query_cache_table_list_t *node = flecs_query_cache_get_group( + | ^~~~ +../src/flecs/distr/flecs.c:67927:24: note: crosses initialization of ‘ecs_query_cache_t* cache’ +67927 | ecs_query_cache_t *cache = q->cache; + | ^~~~~ +../src/flecs/distr/flecs.c:67924:23: note: crosses initialization of ‘ecs_query_impl_t* q’ +67924 | ecs_query_impl_t *q = flecs_query_impl(qit->query); + | ^ +../src/flecs/distr/flecs.c:67923:23: note: crosses initialization of ‘ecs_query_iter_t* qit’ +67923 | ecs_query_iter_t *qit = &it->priv_.iter.query; + | ^~~ +../src/flecs/distr/flecs.c:67947:1: error: jump to label ‘error’ +67947 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67918:5: note: in expansion of macro ‘ecs_check’ +67918 | ecs_check(it != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:67938:36: note: crosses initialization of ‘ecs_query_cache_table_match_t* first’ +67938 | ecs_query_cache_table_match_t *first = node->first; + | ^~~~~ +../src/flecs/distr/flecs.c:67930:35: note: crosses initialization of ‘ecs_query_cache_table_list_t* node’ +67930 | ecs_query_cache_table_list_t *node = flecs_query_cache_get_group( + | ^~~~ +../src/flecs/distr/flecs.c:67927:24: note: crosses initialization of ‘ecs_query_cache_t* cache’ +67927 | ecs_query_cache_t *cache = q->cache; + | ^~~~~ +../src/flecs/distr/flecs.c:67924:23: note: crosses initialization of ‘ecs_query_impl_t* q’ +67924 | ecs_query_impl_t *q = flecs_query_impl(qit->query); + | ^ +../src/flecs/distr/flecs.c:67923:23: note: crosses initialization of ‘ecs_query_iter_t* qit’ +67923 | ecs_query_iter_t *qit = &it->priv_.iter.query; + | ^~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘const ecs_query_group_info_t* ecs_query_get_group_info(const ecs_query_t*, uint64_t)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:67957:9: note: in expansion of macro ‘flecs_query_impl’ +67957 | flecs_query_impl(query)->cache, group_id); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_query_cache_build_sorted_table_range(ecs_query_cache_t*, ecs_query_cache_table_list_t*)’: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘sort_helper_t*’ [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2003:36: note: in expansion of macro ‘flecs_alloc’ + 2003 | #define flecs_alloc_n(a, T, count) flecs_alloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:68269:29: note: in expansion of macro ‘flecs_alloc_n’ +68269 | sort_helper_t *helper = flecs_alloc_n( + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:68376:57: error: invalid conversion from ‘void*’ to ‘ecs_query_cache_table_match_t*’ [-fpermissive] +68376 | ecs_query_cache_table_match_t *nodes = ecs_vec_first(&cache->table_slices); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_query_cache_sort_tables(ecs_world_t*, ecs_query_impl_t*)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_query_cache_table_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:68441:18: note: in expansion of macro ‘flecs_table_cache_next’ +68441 | while ((qt = flecs_table_cache_next(&it, ecs_query_cache_table_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_get_match_monitor(ecs_query_impl_t*, ecs_query_cache_table_match_t*)’: +../src/flecs/distr/flecs.c:68532:36: error: invalid conversion from ‘void*’ to ‘int32_t*’ {aka ‘int*’} [-fpermissive] +68532 | int32_t *monitor = flecs_balloc(&cache->allocators.monitors); + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_get_fixed_monitor(ecs_query_impl_t*, bool)’: +../src/flecs/distr/flecs.h:2001:42: error: invalid conversion from ‘void*’ to ‘int32_t*’ {aka ‘int*’} [-fpermissive] + 2001 | #define flecs_alloc(a, size) flecs_balloc(flecs_allocator_get(a, size)) + | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:2003:36: note: in expansion of macro ‘flecs_alloc’ + 2003 | #define flecs_alloc_n(a, T, count) flecs_alloc(a, ECS_SIZEOF(T) * (count)) + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:68591:25: note: in expansion of macro ‘flecs_alloc_n’ +68591 | impl->monitor = flecs_alloc_n(&impl->stage->allocator, + | ^~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_check_cache_monitor(ecs_query_impl_t*)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_query_cache_table_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:68713:22: note: in expansion of macro ‘flecs_table_cache_next’ +68713 | while ((qt = flecs_table_cache_next(&it, ecs_query_cache_table_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_query_changed(ecs_query_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:68981:30: note: in expansion of macro ‘flecs_query_impl’ +68981 | ecs_query_impl_t *impl = flecs_query_impl(q); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_iter_changed(ecs_iter_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:69022:30: note: in expansion of macro ‘flecs_query_impl’ +69022 | ecs_query_impl_t *impl = flecs_query_impl(qit->query); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:69048:1: error: jump to label ‘error’ +69048 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:69018:5: note: in expansion of macro ‘ecs_check’ +69018 | ecs_check(ECS_BIT_IS_SET(it->flags, EcsIterIsValid), + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:69023:18: note: crosses initialization of ‘ecs_query_t* q’ +69023 | ecs_query_t *q = &impl->pub; + | ^ +../src/flecs/distr/flecs.c:69022:23: note: crosses initialization of ‘ecs_query_impl_t* impl’ +69022 | ecs_query_impl_t *impl = flecs_query_impl(qit->query); + | ^~~~ +../src/flecs/distr/flecs.c:69021:23: note: crosses initialization of ‘ecs_query_iter_t* qit’ +69021 | ecs_query_iter_t *qit = &it->priv_.iter.query; + | ^~~ +../src/flecs/distr/flecs.c:69048:1: error: jump to label ‘error’ +69048 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:69017:5: note: in expansion of macro ‘ecs_check’ +69017 | ecs_check(it->next == ecs_query_next, ECS_UNSUPPORTED, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:69023:18: note: crosses initialization of ‘ecs_query_t* q’ +69023 | ecs_query_t *q = &impl->pub; + | ^ +../src/flecs/distr/flecs.c:69022:23: note: crosses initialization of ‘ecs_query_impl_t* impl’ +69022 | ecs_query_impl_t *impl = flecs_query_impl(qit->query); + | ^~~~ +../src/flecs/distr/flecs.c:69021:23: note: crosses initialization of ‘ecs_query_iter_t* qit’ +69021 | ecs_query_iter_t *qit = &it->priv_.iter.query; + | ^~~ +../src/flecs/distr/flecs.c:69048:1: error: jump to label ‘error’ +69048 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:69016:5: note: in expansion of macro ‘ecs_check’ +69016 | ecs_check(it != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:69023:18: note: crosses initialization of ‘ecs_query_t* q’ +69023 | ecs_query_t *q = &impl->pub; + | ^ +../src/flecs/distr/flecs.c:69022:23: note: crosses initialization of ‘ecs_query_impl_t* impl’ +69022 | ecs_query_impl_t *impl = flecs_query_impl(qit->query); + | ^~~~ +../src/flecs/distr/flecs.c:69021:23: note: crosses initialization of ‘ecs_query_iter_t* qit’ +69021 | ecs_query_iter_t *qit = &it->priv_.iter.query; + | ^~~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_select_w_id(const ecs_query_op_t*, bool, const ecs_query_run_ctx_t*, ecs_id_t, ecs_flags32_t)’: +../src/flecs/distr/flecs.c:69086:53: error: expected unqualified-id before ‘and’ token +69086 | ecs_query_and_ctx_t *op_ctx = flecs_op_ctx(ctx, and); + | ^~~ +../src/flecs/distr/flecs.c:2045:61: note: in definition of macro ‘flecs_op_ctx’ + 2045 | #define flecs_op_ctx(ctx, op_kind) (&flecs_op_ctx_(ctx)->is.op_kind) + | ^~~~~~~ +../src/flecs/distr/flecs.c:2045:68: error: expected primary-expression before ‘)’ token + 2045 | #define flecs_op_ctx(ctx, op_kind) (&flecs_op_ctx_(ctx)->is.op_kind) + | ^ +../src/flecs/distr/flecs.c:69086:35: note: in expansion of macro ‘flecs_op_ctx’ +69086 | ecs_query_and_ctx_t *op_ctx = flecs_op_ctx(ctx, and); + | ^~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:69112:14: note: in expansion of macro ‘flecs_table_cache_next’ +69112 | tr = flecs_table_cache_next(&op_ctx->it, ecs_table_record_t); + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_with(const ecs_query_op_t*, bool, const ecs_query_run_ctx_t*)’: +../src/flecs/distr/flecs.c:69155:53: error: expected unqualified-id before ‘and’ token +69155 | ecs_query_and_ctx_t *op_ctx = flecs_op_ctx(ctx, and); + | ^~~ +../src/flecs/distr/flecs.c:2045:61: note: in definition of macro ‘flecs_op_ctx’ + 2045 | #define flecs_op_ctx(ctx, op_kind) (&flecs_op_ctx_(ctx)->is.op_kind) + | ^~~~~~~ +../src/flecs/distr/flecs.c:2045:68: error: expected primary-expression before ‘)’ token + 2045 | #define flecs_op_ctx(ctx, op_kind) (&flecs_op_ctx_(ctx)->is.op_kind) + | ^ +../src/flecs/distr/flecs.c:69155:35: note: in expansion of macro ‘flecs_op_ctx’ +69155 | ecs_query_and_ctx_t *op_ctx = flecs_op_ctx(ctx, and); + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_select_id(const ecs_query_op_t*, bool, const ecs_query_run_ctx_t*, ecs_flags32_t)’: +../src/flecs/distr/flecs.c:69217:53: error: expected unqualified-id before ‘and’ token +69217 | ecs_query_and_ctx_t *op_ctx = flecs_op_ctx(ctx, and); + | ^~~ +../src/flecs/distr/flecs.c:2045:61: note: in definition of macro ‘flecs_op_ctx’ + 2045 | #define flecs_op_ctx(ctx, op_kind) (&flecs_op_ctx_(ctx)->is.op_kind) + | ^~~~~~~ +../src/flecs/distr/flecs.c:2045:68: error: expected primary-expression before ‘)’ token + 2045 | #define flecs_op_ctx(ctx, op_kind) (&flecs_op_ctx_(ctx)->is.op_kind) + | ^ +../src/flecs/distr/flecs.c:69217:35: note: in expansion of macro ‘flecs_op_ctx’ +69217 | ecs_query_and_ctx_t *op_ctx = flecs_op_ctx(ctx, and); + | ^~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:69244:36: note: in expansion of macro ‘flecs_table_cache_next’ +69244 | const ecs_table_record_t *tr = flecs_table_cache_next( + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_with_id(const ecs_query_op_t*, bool, const ecs_query_run_ctx_t*)’: +../src/flecs/distr/flecs.c:69269:53: error: expected unqualified-id before ‘and’ token +69269 | ecs_query_and_ctx_t *op_ctx = flecs_op_ctx(ctx, and); + | ^~~ +../src/flecs/distr/flecs.c:2045:61: note: in definition of macro ‘flecs_op_ctx’ + 2045 | #define flecs_op_ctx(ctx, op_kind) (&flecs_op_ctx_(ctx)->is.op_kind) + | ^~~~~~~ +../src/flecs/distr/flecs.c:2045:68: error: expected primary-expression before ‘)’ token + 2045 | #define flecs_op_ctx(ctx, op_kind) (&flecs_op_ctx_(ctx)->is.op_kind) + | ^ +../src/flecs/distr/flecs.c:69269:35: note: in expansion of macro ‘flecs_op_ctx’ +69269 | ecs_query_and_ctx_t *op_ctx = flecs_op_ctx(ctx, and); + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_and_any(const ecs_query_op_t*, bool, const ecs_query_run_ctx_t*)’: +../src/flecs/distr/flecs.c:69350:53: error: expected unqualified-id before ‘and’ token +69350 | ecs_query_and_ctx_t *op_ctx = flecs_op_ctx(ctx, and); + | ^~~ +../src/flecs/distr/flecs.c:2045:61: note: in definition of macro ‘flecs_op_ctx’ + 2045 | #define flecs_op_ctx(ctx, op_kind) (&flecs_op_ctx_(ctx)->is.op_kind) + | ^~~~~~~ +../src/flecs/distr/flecs.c:2045:68: error: expected primary-expression before ‘)’ token + 2045 | #define flecs_op_ctx(ctx, op_kind) (&flecs_op_ctx_(ctx)->is.op_kind) + | ^ +../src/flecs/distr/flecs.c:69350:35: note: in expansion of macro ‘flecs_op_ctx’ +69350 | ecs_query_and_ctx_t *op_ctx = flecs_op_ctx(ctx, and); + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_query_reset_after_block(const ecs_query_op_t*, ecs_query_run_ctx_t*, ecs_query_ctrl_ctx_t*, bool)’: +../src/flecs/distr/flecs.c:70070:1: error: jump to label ‘done’ +70070 | done: + | ^~~~ +../src/flecs/distr/flecs.c:70024:14: note: from here +70024 | goto done; + | ^~~~ +../src/flecs/distr/flecs.c:70046:14: note: crosses initialization of ‘ecs_id_t id’ +70046 | ecs_id_t id = flecs_query_op_get_id(op, ctx); + | ^~ +../src/flecs/distr/flecs.c:70043:19: note: crosses initialization of ‘ecs_flags16_t flags_2nd’ +70043 | ecs_flags16_t flags_2nd = flecs_query_ref_flags(op->flags, EcsQuerySecond); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:70042:19: note: crosses initialization of ‘ecs_flags16_t flags_1st’ +70042 | ecs_flags16_t flags_1st = flecs_query_ref_flags(op->flags, EcsQueryFirst); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:70041:14: note: crosses initialization of ‘uint64_t written_cur’ +70041 | uint64_t written_cur = written[op->prev + 1]; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c:70040:15: note: crosses initialization of ‘uint64_t* written’ +70040 | uint64_t *written = ctx->written; + | ^~~~~~~ +../src/flecs/distr/flecs.c:70028:17: note: crosses initialization of ‘ecs_iter_t* it’ +70028 | ecs_iter_t *it = ctx->it; + | ^~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_query_iter_run_ctx_init(ecs_iter_t*, ecs_query_run_ctx_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:70523:30: note: in expansion of macro ‘ECS_CONST_CAST’ +70523 | ecs_query_impl_t *impl = ECS_CONST_CAST(ecs_query_impl_t*, qit->query); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool ecs_query_next(ecs_iter_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:70620:30: note: in expansion of macro ‘ECS_CONST_CAST’ +70620 | ecs_query_impl_t *impl = ECS_CONST_CAST(ecs_query_impl_t*, qit->query); + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_query_iter_fini_ctx(ecs_iter_t*, ecs_query_iter_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:70716:37: note: in expansion of macro ‘flecs_query_impl’ +70716 | const ecs_query_impl_t *query = flecs_query_impl(qit->query); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_query_iter_fini(ecs_iter_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:70753:24: note: in expansion of macro ‘flecs_query_impl’ +70753 | int32_t op_count = flecs_query_impl(qit->query)->op_count; + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:70754:25: note: in expansion of macro ‘flecs_query_impl’ +70754 | int32_t var_count = flecs_query_impl(qit->query)->var_count; + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_iter_t flecs_query_iter(const ecs_world_t*, const ecs_query_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:70786:30: note: in expansion of macro ‘flecs_query_impl’ +70786 | ecs_query_impl_t *impl = flecs_query_impl(q); + | ^~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:70836:38: error: invalid conversion from ‘void*’ to ‘ecs_query_cache_table_match_t*’ [-fpermissive] +70836 | qit->node = ecs_vec_first(&cache->table_slices); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:2594:22: error: invalid conversion from ‘void*’ to ‘ecs_var_t*’ [-fpermissive] + 2594 | flecs_iter_calloc(it, ECS_SIZEOF(T) * count, ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:70845:21: note: in expansion of macro ‘flecs_iter_calloc_n’ +70845 | qit->vars = flecs_iter_calloc_n(&it, ecs_var_t, var_count); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2594:22: error: invalid conversion from ‘void*’ to ‘uint64_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 2594 | flecs_iter_calloc(it, ECS_SIZEOF(T) * count, ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:70849:24: note: in expansion of macro ‘flecs_iter_calloc_n’ +70849 | qit->written = flecs_iter_calloc_n(&it, ecs_write_flags_t, op_count); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2594:22: error: invalid conversion from ‘void*’ to ‘ecs_query_op_ctx_t*’ [-fpermissive] + 2594 | flecs_iter_calloc(it, ECS_SIZEOF(T) * count, ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:70850:23: note: in expansion of macro ‘flecs_iter_calloc_n’ +70850 | qit->op_ctx = flecs_iter_calloc_n(&it, ecs_query_op_ctx_t, op_count); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2594:22: error: invalid conversion from ‘void*’ to ‘ecs_query_op_profile_t*’ [-fpermissive] + 2594 | flecs_iter_calloc(it, ECS_SIZEOF(T) * count, ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:70854:20: note: in expansion of macro ‘flecs_iter_calloc_n’ +70854 | qit->profile = flecs_iter_calloc_n(&it, ecs_query_op_profile_t, op_count); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:70868:1: error: jump to label ‘error’ +70868 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:70803:5: note: in expansion of macro ‘ecs_check’ +70803 | ecs_check(!(it.real_world->flags & EcsWorldMultiThreaded) || + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:70829:24: note: crosses initialization of ‘ecs_query_cache_t* cache’ +70829 | ecs_query_cache_t *cache = impl->cache; + | ^~~~~ +../src/flecs/distr/flecs.c:70868:1: error: jump to label ‘error’ +70868 | error: + | ^~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.h:10841:14: note: from here +10841 | goto error;\ + | ^~~~~ +../src/flecs/distr/flecs.h:10858:5: note: in expansion of macro ‘ecs_dummy_check’ +10858 | ecs_dummy_check + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:70783:5: note: in expansion of macro ‘ecs_check’ +70783 | ecs_check(q != NULL, ECS_INVALID_PARAMETER, NULL); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:70829:24: note: crosses initialization of ‘ecs_query_cache_t* cache’ +70829 | ecs_query_cache_t *cache = impl->cache; + | ^~~~~ +../src/flecs/distr/flecs.c:70789:13: note: crosses initialization of ‘int32_t op_count’ +70789 | int32_t op_count = impl->op_count ? impl->op_count : 1; + | ^~~~~~~~ +../src/flecs/distr/flecs.c:70788:16: note: crosses initialization of ‘int32_t var_count’ +70788 | int32_t i, var_count = impl->var_count; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:70786:23: note: crosses initialization of ‘ecs_query_impl_t* impl’ +70786 | ecs_query_impl_t *impl = flecs_query_impl(q); + | ^~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘ecs_iter_t ecs_query_iter(const ecs_world_t*, const ecs_query_t*)’: +../src/flecs/distr/flecs.h:872:38: error: invalid ‘const_cast’ from type ‘const ecs_query_t*’ to type ‘ecs_query_impl_t*’ + 872 | #define ECS_CONST_CAST(type, value) (const_cast(value)) + | ^~~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1287:34: note: in expansion of macro ‘ECS_CONST_CAST’ + 1287 | #define flecs_query_impl(query) (ECS_CONST_CAST(ecs_query_impl_t*, query)) + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:70886:30: note: in expansion of macro ‘flecs_query_impl’ +70886 | ecs_query_impl_t *impl = flecs_query_impl(q); + | ^~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_member_cmp(const ecs_query_op_t*, bool, ecs_query_run_ctx_t*, bool)’: +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_entity_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:70987:19: note: in expansion of macro ‘ECS_OFFSET’ +70987 | val = ECS_OFFSET(ECS_ELEM(data, size, row), offset); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.h:3942:31: error: invalid conversion from ‘void*’ to ‘ecs_entity_t*’ {aka ‘long unsigned int*’} [-fpermissive] + 3942 | #define ECS_OFFSET(o, offset) reinterpret_cast((reinterpret_cast(o)) + (static_cast(offset))) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:71004:15: note: in expansion of macro ‘ECS_OFFSET’ +71004 | val = ECS_OFFSET(ECS_ELEM(data, size, row), offset); + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_pred_match(const ecs_query_op_t*, bool, ecs_query_run_ctx_t*, bool)’: +../src/flecs/distr/flecs.c:71269:74: error: invalid conversion from ‘void*’ to ‘const EcsIdentifier*’ [-fpermissive] +71269 | const EcsIdentifier *names = l.table->data.columns[op_ctx->name_col].data; + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_toggle_cmp(const ecs_query_op_t*, bool, ecs_query_run_ctx_t*, ecs_flags64_t, ecs_flags64_t)’: +../src/flecs/distr/flecs.c:71551:1: error: jump to label ‘next_block’ [-fpermissive] +71551 | next_block: + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:71595:14: note: from here +71595 | goto next_block; + | ^~~~~~~~~~ +../src/flecs/distr/flecs.c:71536:32: note: skips initialization of ‘flecs_query_row_mask_t row_mask’ +71536 | flecs_query_row_mask_t row_mask = flecs_query_get_row_mask( + | ^~~~~~~~ +../src/flecs/distr/flecs.c:71613:1: error: jump to label ‘done’ +71613 | done: + | ^~~~ +../src/flecs/distr/flecs.c:71556:22: note: from here +71556 | goto done; + | ^~~~ +../src/flecs/distr/flecs.c:71568:13: note: crosses initialization of ‘int32_t last_bit’ +71568 | int32_t last_bit = ECS_MIN(64, last - (block_index * 64)); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:71567:13: note: crosses initialization of ‘int32_t first_bit’ +71567 | int32_t first_bit = cur - (block_index * 64); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:71613:1: error: jump to label ‘done’ +71613 | done: + | ^~~~ +../src/flecs/distr/flecs.c:71544:22: note: from here +71544 | goto done; + | ^~~~ +../src/flecs/distr/flecs.c:71568:13: note: crosses initialization of ‘int32_t last_bit’ +71568 | int32_t last_bit = ECS_MIN(64, last - (block_index * 64)); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:71567:13: note: crosses initialization of ‘int32_t first_bit’ +71567 | int32_t first_bit = cur - (block_index * 64); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:71613:1: error: jump to label ‘done’ +71613 | done: + | ^~~~ +../src/flecs/distr/flecs.c:71515:18: note: from here +71515 | goto done; + | ^~~~ +../src/flecs/distr/flecs.c:71568:13: note: crosses initialization of ‘int32_t last_bit’ +71568 | int32_t last_bit = ECS_MIN(64, last - (block_index * 64)); + | ^~~~~~~~ +../src/flecs/distr/flecs.c:71567:13: note: crosses initialization of ‘int32_t first_bit’ +71567 | int32_t first_bit = cur - (block_index * 64); + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:71531:41: note: crosses initialization of ‘int32_t row’ +71531 | int32_t new_block_index = cur / 64, row = first; + | ^~~ +../src/flecs/distr/flecs.c:71531:13: note: crosses initialization of ‘int32_t new_block_index’ +71531 | int32_t new_block_index = cur / 64, row = first; + | ^~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_trav_unknown_src_up_fixed_second(const ecs_query_op_t*, bool, const ecs_query_run_ctx_t*)’: +../src/flecs/distr/flecs.c:71844:43: error: invalid conversion from ‘void*’ to ‘ecs_trav_elem_t*’ [-fpermissive] +71844 | ecs_trav_elem_t *elems = ecs_vec_first(&trav_ctx->cache.entities); + | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:71847:19: error: expected unqualified-id before ‘and’ token +71847 | trav_ctx->and.idr = el->idr; /* prevents lookup by select */ + | ^~~ +../src/flecs/distr/flecs.c:71847:22: error: expected primary-expression before ‘.’ token +71847 | trav_ctx->and.idr = el->idr; /* prevents lookup by select */ + | ^ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_union_with_wildcard(const ecs_query_op_t*, bool, const ecs_query_run_ctx_t*, ecs_entity_t, bool)’: +../src/flecs/distr/flecs.c:72035:54: error: invalid conversion from ‘void*’ to ‘const ecs_switch_t*’ [-fpermissive] +72035 | ecs_entity_t tgt = flecs_switch_get(op_ctx->idr->sparse, (uint32_t)e); + | ~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:31678:25: note: initializing argument 1 of ‘uint64_t flecs_switch_get(const ecs_switch_t*, uint32_t)’ +31678 | const ecs_switch_t *sw, + | ~~~~~~~~~~~~~~~~~~~~^~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_union_with_tgt(const ecs_query_op_t*, bool, const ecs_query_run_ctx_t*, ecs_entity_t, ecs_entity_t, bool)’: +../src/flecs/distr/flecs.c:72099:56: error: invalid conversion from ‘void*’ to ‘const ecs_switch_t*’ [-fpermissive] +72099 | ecs_entity_t e_tgt = flecs_switch_get(op_ctx->idr->sparse, (uint32_t)e); + | ~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:31678:25: note: initializing argument 1 of ‘uint64_t flecs_switch_get(const ecs_switch_t*, uint32_t)’ +31678 | const ecs_switch_t *sw, + | ~~~~~~~~~~~~~~~~~~~~^~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_union_select_tgt(const ecs_query_op_t*, bool, const ecs_query_run_ctx_t*, ecs_entity_t, ecs_entity_t)’: +../src/flecs/distr/flecs.c:72157:55: error: invalid conversion from ‘void*’ to ‘const ecs_switch_t*’ [-fpermissive] +72157 | op_ctx->cur = flecs_switch_first(op_ctx->idr->sparse, tgt); + | ~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:31692:25: note: initializing argument 1 of ‘uint32_t flecs_switch_first(const ecs_switch_t*, uint64_t)’ +31692 | const ecs_switch_t *sw, + | ~~~~~~~~~~~~~~~~~~~~^~ +../src/flecs/distr/flecs.c:72159:54: error: invalid conversion from ‘void*’ to ‘const ecs_switch_t*’ [-fpermissive] +72159 | op_ctx->cur = flecs_switch_next(op_ctx->idr->sparse, (uint32_t)op_ctx->cur); + | ~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:31705:25: note: initializing argument 1 of ‘uint32_t flecs_switch_next(const ecs_switch_t*, uint32_t)’ +31705 | const ecs_switch_t *sw, + | ~~~~~~~~~~~~~~~~~~~~^~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_union_select_wildcard(const ecs_query_op_t*, bool, const ecs_query_run_ctx_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.c:72193:62: error: invalid conversion from ‘void*’ to ‘const ecs_switch_t*’ [-fpermissive] +72193 | op_ctx->tgt_iter = flecs_switch_targets(op_ctx->idr->sparse); + | ~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:31720:25: note: initializing argument 1 of ‘ecs_map_iter_t flecs_switch_targets(const ecs_switch_t*)’ +31720 | const ecs_switch_t *sw) + | ~~~~~~~~~~~~~~~~~~~~^~ +../src/flecs/distr/flecs.c:72209:55: error: invalid conversion from ‘void*’ to ‘const ecs_switch_t*’ [-fpermissive] +72209 | op_ctx->cur = flecs_switch_first(op_ctx->idr->sparse, op_ctx->tgt); + | ~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:31692:25: note: initializing argument 1 of ‘uint32_t flecs_switch_first(const ecs_switch_t*, uint64_t)’ +31692 | const ecs_switch_t *sw, + | ~~~~~~~~~~~~~~~~~~~~^~ +../src/flecs/distr/flecs.c:72211:54: error: invalid conversion from ‘void*’ to ‘const ecs_switch_t*’ [-fpermissive] +72211 | op_ctx->cur = flecs_switch_next(op_ctx->idr->sparse, (uint32_t)op_ctx->cur); + | ~~~~~~~~~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:31705:25: note: initializing argument 1 of ‘uint32_t flecs_switch_next(const ecs_switch_t*, uint32_t)’ +31705 | const ecs_switch_t *sw, + | ~~~~~~~~~~~~~~~~~~~~^~ +../src/flecs/distr/flecs.c: In function ‘void flecs_query_union_set_shared(const ecs_query_op_t*, const ecs_query_run_ctx_t*)’: +../src/flecs/distr/flecs.c:72286:46: error: invalid conversion from ‘void*’ to ‘const ecs_switch_t*’ [-fpermissive] +72286 | ecs_entity_t tgt = flecs_switch_get(idr->sparse, (uint32_t)src); + | ~~~~~^~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:31678:25: note: initializing argument 1 of ‘uint64_t flecs_switch_get(const ecs_switch_t*, uint32_t)’ +31678 | const ecs_switch_t *sw, + | ~~~~~~~~~~~~~~~~~~~~^~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_union_self_up(const ecs_query_op_t*, bool, const ecs_query_run_ctx_t*)’: +../src/flecs/distr/flecs.c:72337:1: error: jump to label ‘next_for_union’ +72337 | next_for_union: + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:72322:18: note: from here +72322 | goto next_for_union; + | ^~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:72331:21: note: crosses initialization of ‘ecs_iter_t* it’ +72331 | ecs_iter_t *it = ctx->it; + | ^~ +../src/flecs/distr/flecs.c:72330:16: note: crosses initialization of ‘int8_t field_index’ +72330 | int8_t field_index = op->field_index; + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_self_up_with(const ecs_query_op_t*, bool, const ecs_query_run_ctx_t*, bool)’: +../src/flecs/distr/flecs.c:72682:61: error: expected unqualified-id before ‘and’ token +72682 | ecs_query_and_ctx_t *op_ctx = flecs_op_ctx(ctx, and); + | ^~~ +../src/flecs/distr/flecs.c:2045:61: note: in definition of macro ‘flecs_op_ctx’ + 2045 | #define flecs_op_ctx(ctx, op_kind) (&flecs_op_ctx_(ctx)->is.op_kind) + | ^~~~~~~ +../src/flecs/distr/flecs.c:2045:68: error: expected primary-expression before ‘)’ token + 2045 | #define flecs_op_ctx(ctx, op_kind) (&flecs_op_ctx_(ctx)->is.op_kind) + | ^ +../src/flecs/distr/flecs.c:72682:43: note: in expansion of macro ‘flecs_op_ctx’ +72682 | ecs_query_and_ctx_t *op_ctx = flecs_op_ctx(ctx, and); + | ^~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_query_build_down_cache(ecs_world_t*, ecs_allocator_t*, const ecs_query_run_ctx_t*, ecs_trav_cache_t*, ecs_entity_t, ecs_entity_t)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:73162:22: note: in expansion of macro ‘flecs_table_cache_next’ +73162 | while ((tr = flecs_table_cache_next(&it, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_trav_down_t* flecs_trav_down_ensure(const ecs_query_run_ctx_t*, ecs_trav_up_cache_t*, ecs_entity_t)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_map_val_t*’ {aka ‘long unsigned int*’} to type ‘ecs_trav_down_t**’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:1852:37: note: in expansion of macro ‘ECS_CAST’ + 1852 | #define ecs_map_ensure_ref(m, T, k) ECS_CAST(T**, ecs_map_ensure(m, k)) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:73319:30: note: in expansion of macro ‘ecs_map_ensure_ref’ +73319 | ecs_trav_down_t **trav = ecs_map_ensure_ref( + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2591:22: error: invalid conversion from ‘void*’ to ‘ecs_trav_down_t*’ [-fpermissive] + 2591 | flecs_iter_calloc(it, ECS_SIZEOF(T), ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:73322:19: note: in expansion of macro ‘flecs_iter_calloc_t’ +73322 | trav[0] = flecs_iter_calloc_t(ctx->it, ecs_trav_down_t); + | ^~~~~~~~~~~~~~~~~~~ +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘void flecs_trav_entity_down_isa(ecs_world_t*, ecs_allocator_t*, ecs_trav_up_cache_t*, ecs_trav_down_t*, ecs_entity_t, ecs_entity_t, ecs_id_record_t*, bool, bool)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:73399:22: note: in expansion of macro ‘flecs_table_cache_next’ +73399 | while ((tr = flecs_table_cache_next(&it, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_trav_down_t* flecs_trav_entity_down(ecs_world_t*, ecs_allocator_t*, ecs_trav_up_cache_t*, ecs_trav_down_t*, ecs_entity_t, ecs_entity_t, ecs_id_record_t*, ecs_id_record_t*, bool, bool)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:73468:22: note: in expansion of macro ‘flecs_table_cache_next’ +73468 | while ((tr = flecs_table_cache_next(&it, ecs_table_record_t))) { + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘void flecs_query_down_cache_fini(ecs_allocator_t*, ecs_trav_up_cache_t*)’: +../src/flecs/distr/flecs.h:879:36: error: invalid conversion from ‘void*’ to ‘ecs_trav_down_t*’ [-fpermissive] + 879 | #define ECS_PTR_CAST(type, value) (reinterpret_cast(value)) + | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.h:1861:25: note: in expansion of macro ‘ECS_PTR_CAST’ + 1861 | #define ecs_map_ptr(it) ECS_PTR_CAST(void*, ECS_CAST(uintptr_t, ecs_map_value(it))) + | ^~~~~~~~~~~~ +../src/flecs/distr/flecs.c:73564:30: note: in expansion of macro ‘ecs_map_ptr’ +73564 | ecs_trav_down_t *t = ecs_map_ptr(&it); + | ^~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_trav_up_t* flecs_trav_up_ensure(const ecs_query_run_ctx_t*, ecs_trav_up_cache_t*, uint64_t)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_map_val_t*’ {aka ‘long unsigned int*’} to type ‘ecs_trav_up_t**’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.h:1852:37: note: in expansion of macro ‘ECS_CAST’ + 1852 | #define ecs_map_ensure_ref(m, T, k) ECS_CAST(T**, ecs_map_ensure(m, k)) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:73582:28: note: in expansion of macro ‘ecs_map_ensure_ref’ +73582 | ecs_trav_up_t **trav = ecs_map_ensure_ref( + | ^~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:2591:22: error: invalid conversion from ‘void*’ to ‘ecs_trav_up_t*’ [-fpermissive] + 2591 | flecs_iter_calloc(it, ECS_SIZEOF(T), ECS_ALIGNOF(T)) + | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c:73585:19: note: in expansion of macro ‘flecs_iter_calloc_t’ +73585 | trav[0] = flecs_iter_calloc_t(ctx->it, ecs_trav_up_t); + | ^~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘int32_t flecs_trav_type_search(ecs_trav_up_t*, const ecs_table_t*, ecs_id_record_t*, ecs_type_t*)’: +../src/flecs/distr/flecs.c:73598:49: error: invalid conversion from ‘void*’ to ‘ecs_table_record_t*’ [-fpermissive] +73598 | ecs_table_record_t *tr = ecs_table_cache_get(&idr_with->cache, table); + | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +../src/flecs/distr/flecs.c: In function ‘ecs_trav_up_t* flecs_trav_table_up(const ecs_query_run_ctx_t*, ecs_allocator_t*, ecs_trav_up_cache_t*, const ecs_world_t*, ecs_entity_t, ecs_id_t, ecs_id_t, ecs_id_record_t*, ecs_id_record_t*)’: +../src/flecs/distr/flecs.c:73718:1: error: jump to label ‘not_found’ +73718 | not_found: + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:73651:14: note: from here +73651 | goto not_found; + | ^~~~~~~~~ +../src/flecs/distr/flecs.c:73660:19: note: crosses initialization of ‘ecs_flags32_t flags’ +73660 | ecs_flags32_t flags = table->flags; + | ^~~~~ +../src/flecs/distr/flecs.c:73654:16: note: crosses initialization of ‘ecs_type_t type’ +73654 | ecs_type_t type = table->type; + | ^~~~ +../src/flecs/distr/flecs.c:73720:1: error: jump to label ‘found’ +73720 | found: + | ^~~~~ +../src/flecs/distr/flecs.c:73657:14: note: from here +73657 | goto found; + | ^~~~~ +../src/flecs/distr/flecs.c:73660:19: note: crosses initialization of ‘ecs_flags32_t flags’ +73660 | ecs_flags32_t flags = table->flags; + | ^~~~~ +../src/flecs/distr/flecs.c: In function ‘ecs_trav_up_t* flecs_query_get_up_cache(const ecs_query_run_ctx_t*, ecs_trav_up_cache_t*, ecs_table_t*, ecs_id_t, ecs_entity_t, ecs_id_record_t*, ecs_id_record_t*)’: +../src/flecs/distr/flecs.c:73748:49: error: invalid conversion from ‘void*’ to ‘ecs_table_record_t*’ [-fpermissive] +73748 | ecs_table_record_t *tr = ecs_table_cache_get(&idr_trav->cache, table); + | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ + | | + | void* +In file included from ../src/flecs/distr/flecs.c:19: +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_trivial_search(const ecs_query_run_ctx_t*, ecs_query_trivial_ctx_t*, bool, ecs_flags64_t)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:73848:40: note: in expansion of macro ‘flecs_table_cache_next’ +73848 | const ecs_table_record_t *tr = flecs_table_cache_next( + | ^~~~~~~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c: In function ‘bool flecs_query_is_trivial_search(const ecs_query_run_ctx_t*, ecs_query_trivial_ctx_t*, bool)’: +../src/flecs/distr/flecs.h:865:25: error: invalid ‘static_cast’ from type ‘ecs_table_cache_hdr_t*’ to type ‘ecs_table_record_t*’ + 865 | #define ECS_CAST(T, V) (static_cast(V)) + | ^~~~~~~~~~~~~~~~~ +../src/flecs/distr/flecs.c:1114:6: note: in expansion of macro ‘ECS_CAST’ + 1114 | (ECS_CAST(T*, flecs_table_cache_next_(it))) + | ^~~~~~~~ +../src/flecs/distr/flecs.c:73908:40: note: in expansion of macro ‘flecs_table_cache_next’ +73908 | const ecs_table_record_t *tr = flecs_table_cache_next( + | ^~~~~~~~~~~~~~~~~~~~~~ diff --git a/tests/rect2i b/tests/rect2i new file mode 100755 index 0000000..566f2bb Binary files /dev/null and b/tests/rect2i differ diff --git a/tests/rect2i.cpp b/tests/rect2i.cpp new file mode 100644 index 0000000..8c7ca77 --- /dev/null +++ b/tests/rect2i.cpp @@ -0,0 +1,16 @@ +#include +#include + +int main() +{ + Rect2i clip(0, 0, 2, 2); + assert(clip.has_point(Vector2i(0, 0))); + assert(clip.has_point(Vector2i(1, 0))); + assert(clip.has_point(Vector2i(0, 1))); + assert(clip.has_point(Vector2i(1, 1))); + assert(clip.encloses(Rect2i(0, 0, 1, 1))); + assert(clip.encloses(Rect2i(1, 0, 1, 1))); + assert(clip.encloses(Rect2i(0, 1, 1, 1))); + assert(clip.encloses(Rect2i(1, 1, 1, 1))); + return 0; +}