parse-c: fix undefined array literals
This commit is contained in:
parent
33784871ec
commit
0d1f64b08c
|
@ -2777,7 +2777,7 @@ static void visit_var_decl(Context *c, const VarDecl *var_decl) {
|
|||
init_node = trans_create_node_apint(c, ap_value->getInt());
|
||||
break;
|
||||
case APValue::Uninitialized:
|
||||
init_node = trans_create_node_symbol_str(c, "undefined");
|
||||
init_node = trans_create_node(c, NodeTypeUndefinedLiteral);
|
||||
break;
|
||||
case APValue::Float:
|
||||
case APValue::ComplexInt:
|
||||
|
@ -2794,7 +2794,7 @@ static void visit_var_decl(Context *c, const VarDecl *var_decl) {
|
|||
return;
|
||||
}
|
||||
} else {
|
||||
init_node = trans_create_node_symbol_str(c, "undefined");
|
||||
init_node = trans_create_node(c, NodeTypeUndefinedLiteral);
|
||||
}
|
||||
|
||||
AstNode *var_node = trans_create_node_var_decl_global(c, is_const, name, var_type, init_node);
|
||||
|
|
|
@ -490,4 +490,10 @@ pub fn addCases(cases: &tests.ParseCContext) {
|
|||
,
|
||||
\\export fn foo() {}
|
||||
);
|
||||
|
||||
cases.add("undefined array global",
|
||||
\\int array[100];
|
||||
,
|
||||
\\pub var array: [100]c_int = undefined;
|
||||
);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user