| ... | @@ -330,11 +330,11 @@ fn intLiteral(str: []const u8) !?i64 { | ... | @@ -330,11 +330,11 @@ fn intLiteral(str: []const u8) !?i64 { |
| 330 | } | 330 | } |
| 331 | | 331 | |
| 332 | test "nested error union function call in optional unwrap" { | 332 | test "nested error union function call in optional unwrap" { |
| 333 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO | | |
| 334 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO | 333 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO |
| 335 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; | 334 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO |
| 336 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; | 335 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO |
| 337 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; | 336 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| | 337 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 338 | | 338 | |
| 339 | const S = struct { | 339 | const S = struct { |
| 340 | const Foo = struct { | 340 | const Foo = struct { |
| ... | @@ -381,9 +381,9 @@ test "nested error union function call in optional unwrap" { | ... | @@ -381,9 +381,9 @@ test "nested error union function call in optional unwrap" { |
| 381 | test "return function call to error set from error union function" { | 381 | test "return function call to error set from error union function" { |
| 382 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO | 382 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO |
| 383 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO | 383 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO |
| 384 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; | 384 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO |
| 385 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; | 385 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 386 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; | 386 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 387 | | 387 | |
| 388 | const S = struct { | 388 | const S = struct { |
| 389 | fn errorable() anyerror!i32 { | 389 | fn errorable() anyerror!i32 { |
| ... | @@ -414,9 +414,9 @@ test "optional error set is the same size as error set" { | ... | @@ -414,9 +414,9 @@ test "optional error set is the same size as error set" { |
| 414 | test "nested catch" { | 414 | test "nested catch" { |
| 415 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO | 415 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO |
| 416 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO | 416 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO |
| 417 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; | 417 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO |
| 418 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; | 418 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 419 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; | 419 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 420 | | 420 | |
| 421 | const S = struct { | 421 | const S = struct { |
| 422 | fn entry() !void { | 422 | fn entry() !void { |
| ... | @@ -440,14 +440,16 @@ test "nested catch" { | ... | @@ -440,14 +440,16 @@ test "nested catch" { |
| 440 | } | 440 | } |
| 441 | | 441 | |
| 442 | test "function pointer with return type that is error union with payload which is pointer of parent struct" { | 442 | test "function pointer with return type that is error union with payload which is pointer of parent struct" { |
| 443 | // This test uses the stage2 const fn pointer | 443 | if (builtin.zig_backend == .stage1) { |
| 444 | if (builtin.zig_backend == .stage1) return error.SkipZigTest; | 444 | // stage1 has wrong function pointer semantics |
| | 445 | return error.SkipZigTest; |
| | 446 | } |
| 445 | | 447 | |
| 446 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO | 448 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO |
| 447 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO | 449 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO |
| 448 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; | 450 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO |
| 449 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; | 451 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 450 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; | 452 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 451 | | 453 | |
| 452 | const S = struct { | 454 | const S = struct { |
| 453 | const Foo = struct { | 455 | const Foo = struct { |
| ... | @@ -501,9 +503,9 @@ test "return result loc as peer result loc in inferred error set function" { | ... | @@ -501,9 +503,9 @@ test "return result loc as peer result loc in inferred error set function" { |
| 501 | test "error payload type is correctly resolved" { | 503 | test "error payload type is correctly resolved" { |
| 502 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO | 504 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO |
| 503 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO | 505 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO |
| 504 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; | 506 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO |
| 505 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; | 507 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 506 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; | 508 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 507 | | 509 | |
| 508 | const MyIntWrapper = struct { | 510 | const MyIntWrapper = struct { |
| 509 | const Self = @This(); | 511 | const Self = @This(); |
| ... | @@ -519,12 +521,6 @@ test "error payload type is correctly resolved" { | ... | @@ -519,12 +521,6 @@ test "error payload type is correctly resolved" { |
| 519 | } | 521 | } |
| 520 | | 522 | |
| 521 | test "error union comptime caching" { | 523 | test "error union comptime caching" { |
| 522 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO | | |
| 523 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO | | |
| 524 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; | | |
| 525 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; | | |
| 526 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; | | |
| 527 | | | |
| 528 | const S = struct { | 524 | const S = struct { |
| 529 | fn quux(comptime arg: anytype) void { | 525 | fn quux(comptime arg: anytype) void { |
| 530 | arg catch {}; | 526 | arg catch {}; |
| ... | @@ -571,12 +567,6 @@ test "error set equality" { | ... | @@ -571,12 +567,6 @@ test "error set equality" { |
| 571 | // This tests using stage2 logic (#11022) | 567 | // This tests using stage2 logic (#11022) |
| 572 | if (builtin.zig_backend == .stage1) return error.SkipZigTest; | 568 | if (builtin.zig_backend == .stage1) return error.SkipZigTest; |
| 573 | | 569 | |
| 574 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO | | |
| 575 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO | | |
| 576 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; | | |
| 577 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; | | |
| 578 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; | | |
| 579 | | | |
| 580 | const a = error{One}; | 570 | const a = error{One}; |
| 581 | const b = error{One}; | 571 | const b = error{One}; |
| 582 | | 572 | |
| ... | @@ -592,11 +582,7 @@ test "error set equality" { | ... | @@ -592,11 +582,7 @@ test "error set equality" { |
| 592 | } | 582 | } |
| 593 | | 583 | |
| 594 | test "inferred error set equality" { | 584 | test "inferred error set equality" { |
| 595 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO | 585 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 596 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO | | |
| 597 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; | | |
| 598 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; | | |
| 599 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; | | |
| 600 | | 586 | |
| 601 | const S = struct { | 587 | const S = struct { |
| 602 | fn foo() !void { | 588 | fn foo() !void { |