From b8601e92524b9ea2e51b5dc8d816085b7399a08c Mon Sep 17 00:00:00 2001 From: LemonBoy Date: Tue, 21 Jan 2020 22:58:51 +0100 Subject: [PATCH] Adjust tests & work around a nasty ICE --- lib/std/debug.zig | 2 +- test/stack_traces.zig | 98 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 99 insertions(+), 1 deletion(-) diff --git a/lib/std/debug.zig b/lib/std/debug.zig index 51fb384d75..dd162487b8 100644 --- a/lib/std/debug.zig +++ b/lib/std/debug.zig @@ -711,7 +711,7 @@ fn printLineInfo( // Show the matching source code line if possible if (line_info) |li| { - if (printLineFromFile(out_stream, li)) { + if (noasync printLineFromFile(out_stream, li)) { if (li.column > 0) { // The caret already takes one char const space_needed = @intCast(usize, li.column - 1); diff --git a/test/stack_traces.zig b/test/stack_traces.zig index ad4a34fe4e..81e074f01e 100644 --- a/test/stack_traces.zig +++ b/test/stack_traces.zig @@ -51,11 +51,15 @@ pub fn addCases(cases: *tests.StackTracesContext) void { // debug \\error: TheSkyIsFalling \\source.zig:4:5: [address] in main (test) + \\ return error.TheSkyIsFalling; + \\ ^ \\ , // release-safe \\error: TheSkyIsFalling \\source.zig:4:5: [address] in std.start.main (test) + \\ return error.TheSkyIsFalling; + \\ ^ \\ , // release-fast @@ -74,13 +78,21 @@ pub fn addCases(cases: *tests.StackTracesContext) void { // debug \\error: TheSkyIsFalling \\source.zig:4:5: [address] in foo (test) + \\ return error.TheSkyIsFalling; + \\ ^ \\source.zig:8:5: [address] in main (test) + \\ try foo(); + \\ ^ \\ , // release-safe \\error: TheSkyIsFalling \\source.zig:4:5: [address] in std.start.main (test) + \\ return error.TheSkyIsFalling; + \\ ^ \\source.zig:8:5: [address] in std.start.main (test) + \\ try foo(); + \\ ^ \\ , // release-fast @@ -99,17 +111,33 @@ pub fn addCases(cases: *tests.StackTracesContext) void { // debug \\error: TheSkyIsFalling \\source.zig:12:5: [address] in make_error (test) + \\ return error.TheSkyIsFalling; + \\ ^ \\source.zig:8:5: [address] in bar (test) + \\ return make_error(); + \\ ^ \\source.zig:4:5: [address] in foo (test) + \\ try bar(); + \\ ^ \\source.zig:16:5: [address] in main (test) + \\ try foo(); + \\ ^ \\ , // release-safe \\error: TheSkyIsFalling \\source.zig:12:5: [address] in std.start.main (test) + \\ return error.TheSkyIsFalling; + \\ ^ \\source.zig:8:5: [address] in std.start.main (test) + \\ return make_error(); + \\ ^ \\source.zig:4:5: [address] in std.start.main (test) + \\ try bar(); + \\ ^ \\source.zig:16:5: [address] in std.start.main (test) + \\ try foo(); + \\ ^ \\ , // release-fast @@ -130,11 +158,15 @@ pub fn addCases(cases: *tests.StackTracesContext) void { // debug \\error: TheSkyIsFalling \\source.zig:4:5: [address] in main (test) + \\ return error.TheSkyIsFalling; + \\ ^ \\ , // release-safe \\error: TheSkyIsFalling \\source.zig:4:5: [address] in std.start.posixCallMainAndExit (test) + \\ return error.TheSkyIsFalling; + \\ ^ \\ , // release-fast @@ -153,13 +185,21 @@ pub fn addCases(cases: *tests.StackTracesContext) void { // debug \\error: TheSkyIsFalling \\source.zig:4:5: [address] in foo (test) + \\ return error.TheSkyIsFalling; + \\ ^ \\source.zig:8:5: [address] in main (test) + \\ try foo(); + \\ ^ \\ , // release-safe \\error: TheSkyIsFalling \\source.zig:4:5: [address] in std.start.posixCallMainAndExit (test) + \\ return error.TheSkyIsFalling; + \\ ^ \\source.zig:8:5: [address] in std.start.posixCallMainAndExit (test) + \\ try foo(); + \\ ^ \\ , // release-fast @@ -178,17 +218,33 @@ pub fn addCases(cases: *tests.StackTracesContext) void { // debug \\error: TheSkyIsFalling \\source.zig:12:5: [address] in make_error (test) + \\ return error.TheSkyIsFalling; + \\ ^ \\source.zig:8:5: [address] in bar (test) + \\ return make_error(); + \\ ^ \\source.zig:4:5: [address] in foo (test) + \\ try bar(); + \\ ^ \\source.zig:16:5: [address] in main (test) + \\ try foo(); + \\ ^ \\ , // release-safe \\error: TheSkyIsFalling \\source.zig:12:5: [address] in std.start.posixCallMainAndExit (test) + \\ return error.TheSkyIsFalling; + \\ ^ \\source.zig:8:5: [address] in std.start.posixCallMainAndExit (test) + \\ return make_error(); + \\ ^ \\source.zig:4:5: [address] in std.start.posixCallMainAndExit (test) + \\ try bar(); + \\ ^ \\source.zig:16:5: [address] in std.start.posixCallMainAndExit (test) + \\ try foo(); + \\ ^ \\ , // release-fast @@ -209,11 +265,15 @@ pub fn addCases(cases: *tests.StackTracesContext) void { // debug \\error: TheSkyIsFalling \\source.zig:4:5: [address] in _main.0 (test.o) + \\ return error.TheSkyIsFalling; + \\ ^ \\ , // release-safe \\error: TheSkyIsFalling \\source.zig:4:5: [address] in _main (test.o) + \\ return error.TheSkyIsFalling; + \\ ^ \\ , // release-fast @@ -232,13 +292,21 @@ pub fn addCases(cases: *tests.StackTracesContext) void { // debug \\error: TheSkyIsFalling \\source.zig:4:5: [address] in _foo (test.o) + \\ return error.TheSkyIsFalling; + \\ ^ \\source.zig:8:5: [address] in _main.0 (test.o) + \\ try foo(); + \\ ^ \\ , // release-safe \\error: TheSkyIsFalling \\source.zig:4:5: [address] in _main (test.o) + \\ return error.TheSkyIsFalling; + \\ ^ \\source.zig:8:5: [address] in _main (test.o) + \\ try foo(); + \\ ^ \\ , // release-fast @@ -257,17 +325,33 @@ pub fn addCases(cases: *tests.StackTracesContext) void { // debug \\error: TheSkyIsFalling \\source.zig:12:5: [address] in _make_error (test.o) + \\ return error.TheSkyIsFalling; + \\ ^ \\source.zig:8:5: [address] in _bar (test.o) + \\ return make_error(); + \\ ^ \\source.zig:4:5: [address] in _foo (test.o) + \\ try bar(); + \\ ^ \\source.zig:16:5: [address] in _main.0 (test.o) + \\ try foo(); + \\ ^ \\ , // release-safe \\error: TheSkyIsFalling \\source.zig:12:5: [address] in _main (test.o) + \\ return error.TheSkyIsFalling; + \\ ^ \\source.zig:8:5: [address] in _main (test.o) + \\ return make_error(); + \\ ^ \\source.zig:4:5: [address] in _main (test.o) + \\ try bar(); + \\ ^ \\source.zig:16:5: [address] in _main (test.o) + \\ try foo(); + \\ ^ \\ , // release-fast @@ -288,6 +372,8 @@ pub fn addCases(cases: *tests.StackTracesContext) void { // debug \\error: TheSkyIsFalling \\source.zig:4:5: [address] in main (test.obj) + \\ return error.TheSkyIsFalling; + \\ ^ \\ , // release-safe @@ -309,7 +395,11 @@ pub fn addCases(cases: *tests.StackTracesContext) void { // debug \\error: TheSkyIsFalling \\source.zig:4:5: [address] in foo (test.obj) + \\ return error.TheSkyIsFalling; + \\ ^ \\source.zig:8:5: [address] in main (test.obj) + \\ try foo(); + \\ ^ \\ , // release-safe @@ -331,9 +421,17 @@ pub fn addCases(cases: *tests.StackTracesContext) void { // debug \\error: TheSkyIsFalling \\source.zig:12:5: [address] in make_error (test.obj) + \\ return error.TheSkyIsFalling; + \\ ^ \\source.zig:8:5: [address] in bar (test.obj) + \\ return make_error(); + \\ ^ \\source.zig:4:5: [address] in foo (test.obj) + \\ try bar(); + \\ ^ \\source.zig:16:5: [address] in main (test.obj) + \\ try foo(); + \\ ^ \\ , // release-safe