| ... | @@ -8252,6 +8252,13 @@ static TypeTableEntry *ir_analyze_fn_call(IrAnalyze *ira, IrInstructionCall *cal | ... | @@ -8252,6 +8252,13 @@ static TypeTableEntry *ir_analyze_fn_call(IrAnalyze *ira, IrInstructionCall *cal |
| 8252 | return ira->codegen->builtin_types.entry_invalid; | 8252 | return ira->codegen->builtin_types.entry_invalid; |
| 8253 | } | 8253 | } |
| 8254 | | 8254 | |
| | 8255 | if (fn_proto_node->data.fn_proto.is_var_args) { |
| | 8256 | ir_add_error(ira, &call_instruction->base, |
| | 8257 | buf_sprintf("compiler bug: unable to call var args function at compile time. https://github.com/andrewrk/zig/issues/313")); |
| | 8258 | return ira->codegen->builtin_types.entry_invalid; |
| | 8259 | } |
| | 8260 | |
| | 8261 | |
| 8255 | for (size_t call_i = 0; call_i < call_instruction->arg_count; call_i += 1) { | 8262 | for (size_t call_i = 0; call_i < call_instruction->arg_count; call_i += 1) { |
| 8256 | IrInstruction *old_arg = call_instruction->args[call_i]->other; | 8263 | IrInstruction *old_arg = call_instruction->args[call_i]->other; |
| 8257 | if (type_is_invalid(old_arg->value.type)) | 8264 | if (type_is_invalid(old_arg->value.type)) |