DavidSpickett wrote:

I also got a report of a downstream failure:
```
09:53:25  FAIL: Clang :: Sema/deep_recursion.c (18481 of 84779)
09:53:25  ******************** TEST 'Clang :: Sema/deep_recursion.c' FAILED 
********************
09:53:25  Exit Code: 139
09:53:25  
09:53:25  Command Output (stderr):
09:53:25  --
09:53:25  /workspace/build/stage/bootstrap_compiler/bin/clang -cc1 
-internal-isystem 
/workspace/build/stage/bootstrap_compiler/lib/clang/21/include -nostdsysteminc 
-verify -Wno-unused -I /workspace/src/clang/test/Sema/Inputs 
/workspace/src/clang/test/Sema/deep_recursion.c # RUN: at line 1
09:53:25  + /workspace/build/stage/bootstrap_compiler/bin/clang -cc1 
-internal-isystem 
/workspace/build/stage/bootstrap_compiler/lib/clang/21/include -nostdsysteminc 
-verify -Wno-unused -I /workspace/src/clang/test/Sema/Inputs 
/workspace/src/clang/test/Sema/deep_recursion.c
09:53:25  PLEASE submit a bug report to 
https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, 
preprocessed source, and associated run script.
09:53:25  Stack dump:
09:53:25  0.    Program arguments: 
/workspace/build/stage/bootstrap_compiler/bin/clang -cc1 -internal-isystem 
/workspace/build/stage/bootstrap_compiler/lib/clang/21/include -nostdsysteminc 
-verify -Wno-unused -I /workspace/src/clang/test/Sema/Inputs 
/workspace/src/clang/test/Sema/deep_recursion.c
09:53:25  1.    /workspace/src/clang/test/Sema/deep_recursion.c:411:1: current 
parser token '}'
09:53:25  2.    /workspace/src/clang/test/Sema/deep_recursion.c:3:17: parsing 
function body 'func'
09:53:25  3.    /workspace/src/clang/test/Sema/deep_recursion.c:3:17: in 
compound statement ('{}')
09:53:25    #0 0x0000000001e81570 
llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) 
(/workspace/build/stage/bootstrap_compiler/bin/clang+0x1e81570)
09:53:25    #1 0x0000000001e7f410 llvm::sys::RunSignalHandlers() 
(/workspace/build/stage/bootstrap_compiler/bin/clang+0x1e7f410)
09:53:25    #2 0x0000000001e7f594 SignalHandler(int, siginfo_t*, void*) 
Signals.cpp:0:0
09:53:25    #3 0x0000e19c3b3da8f8 (linux-vdso.so.1+0x8f8)
09:53:25    #4 0x0000000003e6f0d0 clang::StmtVisitorBase<llvm::make_const_ptr, 
(anonymous namespace)::SequenceChecker, void>::Visit(clang::Stmt const*) 
(.part.2496) SemaChecking.cpp:0:0
09:53:25    #5 0x0000000003e70c1c (anonymous 
namespace)::SequenceChecker::VisitSequencedExpressions(clang::Expr const*, 
clang::Expr const*) SemaChecking.cpp:0:0
09:53:25    #6 0x0000000003e6f3cc clang::StmtVisitorBase<llvm::make_const_ptr, 
(anonymous namespace)::SequenceChecker, void>::Visit(clang::Stmt const*) 
(.part.2496) SemaChecking.cpp:0:0
<...repeats...>
09:53:25   #56 0x0000000003e6f3cc clang::StmtVisitorBase<llvm::make_const_ptr, 
(anonymous namespace)::SequenceChecker, void>::Visit(clang::Stmt const*) 
(.part.2496) SemaChecking.cpp:0:0
09:53:25   #57 0x0000000003e70c1c (anonymous 
namespace)::SequenceChecker::VisitSequencedExpressions(clang::Expr const*, 
clang::Expr const*) SemaChecking.cpp:0:0
/workspace/build/stage/bootstrap_compiler/tools/clang/test/Sema/Output/deep_recursion.c.script:
 line 1: 144944 Segmentation fault      (core dumped) 
/workspace/build/stage/bootstrap_compiler/bin/clang -cc1 -internal-isystem 
/workspace/build/stage/bootstrap_compiler/lib/clang/21/include -nostdsysteminc 
-verify -Wno-unused -I /workspace/src/clang/test/Sema/Inputs 
/workspace/src/clang/test/Sema/deep_recursion.c
```
My first thought is that this has tried to use more stack than its allowed.

The test is running on Linaro's Linux bots without issue, where there is 8k of 
stack per process. However, if you add distro defaults that expand stack frame 
size, or padding for something like ASAN, this could be the reason.

https://github.com/llvm/llvm-project/pull/145734
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to