From 1d3f76bbda90f810a24845c15516235d91ee12ad Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Mon, 17 May 2021 19:12:06 -0700 Subject: [PATCH] stage2: skip recursion test on some hosts In order for this test to pass, the host linking/start code needs to support explicitly setting the stack size. Zig defaults to 16 MiB stack size, which is enough to pass the test in Debug builds, however, most operating systems do not honor the stack size we request for and give a smaller amount. Eventually the goal is to pass this test on all hosts. --- test/stage2/cbe.zig | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/test/stage2/cbe.zig b/test/stage2/cbe.zig index fa4588e61c..eec475e3da 100644 --- a/test/stage2/cbe.zig +++ b/test/stage2/cbe.zig @@ -233,7 +233,11 @@ pub fn addCases(ctx: *TestContext) !void { \\} , ""); } - { + // This will make a pretty deep call stack, so this test can only be enabled + // on hosts where Zig's linking strategy can honor the 16 MiB (default) we + // link the self-hosted compiler with. + const host_supports_custom_stack_size = @import("builtin").target.os.tag == .linux; + if (host_supports_custom_stack_size) { var case = ctx.exeFromCompiledC("@setEvalBranchQuota", .{}); case.addCompareOutput(