Implement call expressions

This commit is contained in:
gingerBill
2023-07-22 09:06:44 +01:00
parent b09ea17f0e
commit 4654b41c3e
4 changed files with 201 additions and 6 deletions
+6 -3
View File
@@ -42,8 +42,9 @@ struct cgValue {
cgValueKind kind;
Type * type;
union {
TB_Symbol *symbol;
TB_Node * node;
// NOTE: any value in this union must be a pointer
TB_Symbol * symbol;
TB_Node * node;
cgValueMulti *multi;
};
};
@@ -308,4 +309,6 @@ gb_internal cgValue cg_emit_arith(cgProcedure *p, TokenKind op, cgValue lhs, cgV
gb_internal bool cg_emit_goto(cgProcedure *p, TB_Node *control_region);
gb_internal TB_Node *cg_control_region(cgProcedure *p, char const *name);
gb_internal TB_Node *cg_control_region(cgProcedure *p, char const *name);
gb_internal isize cg_append_tuple_values(cgProcedure *p, Array<cgValue> *dst_values, cgValue src_value);