From a380b803ac8b4eefcde4d3d552cdcbc8010aa798 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Thu, 21 Apr 2016 09:47:41 -0700 Subject: ability to use a struct with no fields --- src/codegen.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/codegen.cpp') diff --git a/src/codegen.cpp b/src/codegen.cpp index 80eb4b2089..8ba76e0cfb 100644 --- a/src/codegen.cpp +++ b/src/codegen.cpp @@ -801,14 +801,16 @@ static LLVMValueRef gen_fn_call_expr(CodeGen *g, AstNode *node) { gen_param_values[gen_param_index] = node->data.fn_call_expr.tmp_ptr; gen_param_index += 1; } - if (struct_type) { + if (struct_type && type_has_bits(struct_type)) { gen_param_values[gen_param_index] = gen_expr(g, first_param_expr); + assert(gen_param_values[gen_param_index]); gen_param_index += 1; } for (int i = 0; i < fn_call_param_count; i += 1) { AstNode *expr_node = node->data.fn_call_expr.params.at(i); LLVMValueRef param_value = gen_expr(g, expr_node); + assert(param_value); TypeTableEntry *param_type = get_expr_type(expr_node); if (is_var_args || type_has_bits(param_type)) { gen_param_values[gen_param_index] = param_value; -- cgit v1.2.3