| ... | ... | @@ -396,6 +396,9 @@ pub const DeclGen = struct { |
| 396 | 396 | else => unreachable, |
| 397 | 397 | } |
| 398 | 398 | }, |
| 399 | |
| 400 | .Float => return dg.fail(.{ .node_offset = 0 }, "TODO: C backend: implement type Float", .{}), |
| 401 | |
| 399 | 402 | .Pointer => { |
| 400 | 403 | if (t.isSlice()) { |
| 401 | 404 | return dg.fail(.{ .node_offset = 0 }, "TODO: C backend: implement slices", .{}); |
| ... | ... | @@ -507,10 +510,22 @@ pub const DeclGen = struct { |
| 507 | 510 | |
| 508 | 511 | try dg.renderType(w, int_tag_ty); |
| 509 | 512 | }, |
| 510 | | .Null, .Undefined => unreachable, // must be const or comptime |
| 511 | | else => |e| return dg.fail(.{ .node_offset = 0 }, "TODO: C backend: implement type {s}", .{ |
| 512 | | @tagName(e), |
| 513 | | }), |
| 513 | .Union => return dg.fail(.{ .node_offset = 0 }, "TODO: C backend: implement type Union", .{}), |
| 514 | .Fn => return dg.fail(.{ .node_offset = 0 }, "TODO: C backend: implement type Fn", .{}), |
| 515 | .Opaque => return dg.fail(.{ .node_offset = 0 }, "TODO: C backend: implement type Opaque", .{}), |
| 516 | .Frame => return dg.fail(.{ .node_offset = 0 }, "TODO: C backend: implement type Frame", .{}), |
| 517 | .AnyFrame => return dg.fail(.{ .node_offset = 0 }, "TODO: C backend: implement type AnyFrame", .{}), |
| 518 | .Vector => return dg.fail(.{ .node_offset = 0 }, "TODO: C backend: implement type Vector", .{}), |
| 519 | |
| 520 | .Null, |
| 521 | .Undefined, |
| 522 | .EnumLiteral, |
| 523 | .ComptimeFloat, |
| 524 | .ComptimeInt, |
| 525 | .Type, |
| 526 | => unreachable, // must be const or comptime |
| 527 | |
| 528 | .BoundFn => unreachable, // this type will be deleted from the language |
| 514 | 529 | } |
| 515 | 530 | } |
| 516 | 531 | |