fix: fix parser/generator issues
This commit is contained in:
@@ -4,6 +4,8 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
char alias_typecn[256];
|
||||
|
||||
// Type aliasing
|
||||
gen_res_t gen_alias(fzl_gen_t *gen, fzl_node_t *node)
|
||||
{
|
||||
@@ -11,14 +13,13 @@ gen_res_t gen_alias(fzl_gen_t *gen, fzl_node_t *node)
|
||||
return gen_error;
|
||||
|
||||
fzl_type_t type;
|
||||
char typecn[256];
|
||||
memset(typecn, 0, sizeof(typecn));
|
||||
memset(alias_typecn, 0, sizeof(alias_typecn));
|
||||
|
||||
bool resolved = gen_resolve_type(gen, node->token, &type, 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, typecn);
|
||||
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};
|
||||
|
||||
Reference in New Issue
Block a user