| ... | ... | @@ -839,13 +839,11 @@ pub const DeclGen = struct { |
| 839 | 839 | try w.writeAll("("); |
| 840 | 840 | const param_len = dg.decl.ty.fnParamLen(); |
| 841 | 841 | |
| 842 | | const target = dg.module.getTarget(); |
| 843 | 842 | var index: usize = 0; |
| 844 | 843 | var params_written: usize = 0; |
| 845 | 844 | while (index < param_len) : (index += 1) { |
| 846 | 845 | const param_type = dg.decl.ty.fnParamType(index); |
| 847 | | if (param_type.zigTypeTag() == .Void) continue; |
| 848 | | if (param_type.isInt() and param_type.intInfo(target).bits == 0) continue; |
| 846 | if (!param_type.hasRuntimeBitsIgnoreComptime()) continue; |
| 849 | 847 | if (params_written > 0) { |
| 850 | 848 | try w.writeAll(", "); |
| 851 | 849 | } |
| ... | ... | @@ -885,7 +883,7 @@ pub const DeclGen = struct { |
| 885 | 883 | var params_written: usize = 0; |
| 886 | 884 | var index: usize = 0; |
| 887 | 885 | while (index < param_len) : (index += 1) { |
| 888 | | if (fn_info.param_types[index].zigTypeTag() == .Void) continue; |
| 886 | if (!fn_info.param_types[index].hasRuntimeBitsIgnoreComptime()) continue; |
| 889 | 887 | if (params_written > 0) { |
| 890 | 888 | try bw.writeAll(", "); |
| 891 | 889 | } |
| ... | ... | @@ -2628,8 +2626,11 @@ fn airCall( |
| 2628 | 2626 | } |
| 2629 | 2627 | |
| 2630 | 2628 | try writer.writeAll("("); |
| 2631 | | for (args) |arg, i| { |
| 2632 | | if (i != 0) { |
| 2629 | var args_written: usize = 0; |
| 2630 | for (args) |arg| { |
| 2631 | const ty = f.air.typeOf(arg); |
| 2632 | if (!ty.hasRuntimeBitsIgnoreComptime()) continue; |
| 2633 | if (args_written != 0) { |
| 2633 | 2634 | try writer.writeAll(", "); |
| 2634 | 2635 | } |
| 2635 | 2636 | if (f.air.value(arg)) |val| { |
| ... | ... | @@ -2638,6 +2639,7 @@ fn airCall( |
| 2638 | 2639 | const val = try f.resolveInst(arg); |
| 2639 | 2640 | try f.writeCValue(writer, val); |
| 2640 | 2641 | } |
| 2642 | args_written += 1; |
| 2641 | 2643 | } |
| 2642 | 2644 | try writer.writeAll(");\n"); |
| 2643 | 2645 | return result_local; |