#include #include #include #include #include char alias_typecn[256]; // Type aliasing gen_res_t gen_alias(fzl_gen_t *gen, fzl_node_t *node) { if (!gen || !node) return gen_error; fzl_type_t type; memset(alias_typecn, 0, sizeof(alias_typecn)); bool resolved = gen_resolve_type(gen, node->token, &type, alias_typecn); if (!resolved) return gen_error; ssize_t slot = gen_resolve_extern_type(gen, alias_typecn); if (slot == -1) type_buf.alias_target = (fzl_extern_type_ref_t){.is_primitive = true, .primitive = type}; else type_buf.alias_target = (fzl_extern_type_ref_t){.is_primitive = false, .type_slot = slot}; return gen_ok_null; }