Timm =?utf-8?q?Bäder?= <tbae...@redhat.com>,
Timm =?utf-8?q?Bäder?= <tbae...@redhat.com>
Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/144...@github.com>


DavidSpickett wrote:

This only reproduces if we build it with clang (19.1.7, but might not be 
version specific). I added a debug trap in place of the assert and got a better 
traceback:
```
-- Testing: 1 tests, 1 workers --
FAIL: Clang :: AST/ByteCode/intap.cpp (1 of 1)
******************** TEST 'Clang :: AST/ByteCode/intap.cpp' FAILED 
********************
Exit Code: 133

Command Output (stderr):
--
/home/david.spickett/build-llvm-arm/bin/clang -cc1 -internal-isystem 
/home/david.spickett/build-llvm-arm/lib/clang/21/include -nostdsysteminc 
-fexperimental-new-constant-interpreter -fms-extensions -std=c++11 
-verify=expected,both 
/home/david.spickett/llvm-project/clang/test/AST/ByteCode/intap.cpp # RUN: at 
line 1
+ /home/david.spickett/build-llvm-arm/bin/clang -cc1 -internal-isystem 
/home/david.spickett/build-llvm-arm/lib/clang/21/include -nostdsysteminc 
-fexperimental-new-constant-interpreter -fms-extensions -std=c++11 
-verify=expected,both 
/home/david.spickett/llvm-project/clang/test/AST/ByteCode/intap.cpp
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and 
include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.      Program arguments: /home/david.spickett/build-llvm-arm/bin/clang -cc1 
-internal-isystem /home/david.spickett/build-llvm-arm/lib/clang/21/include 
-nostdsysteminc -fexperimental-new-constant-interpreter -fms-extensions 
-std=c++11 -verify=expected,both 
/home/david.spickett/llvm-project/clang/test/AST/ByteCode/intap.cpp
1.      
/home/david.spickett/llvm-project/clang/test/AST/ByteCode/intap.cpp:28:35: 
current parser token ';'
 #0 0x024a15b8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) 
(/home/david.spickett/build-llvm-arm/bin/clang+0x1b535b8)
 #1 0x0249edfc llvm::sys::RunSignalHandlers() 
(/home/david.spickett/build-llvm-arm/bin/clang+0x1b50dfc)
 #2 0x024a203c SignalHandler(int, siginfo_t*, void*) Signals.cpp:0:0
 #3 0xf7b1d6f0 __default_rt_sa_restorer 
./signal/../sysdeps/unix/sysv/linux/arm/sigrestorer.S:80:0
 #4 0x013a0f08 llvm::APInt::APInt(unsigned int, unsigned long long, bool, bool) 
(/home/david.spickett/build-llvm-arm/bin/clang+0xa52f08)
 #5 0x056644e0 clang::interp::IntegralAP<true>::toAPSInt(unsigned int) const 
(/home/david.spickett/build-llvm-arm/bin/clang+0x4d164e0)
 #6 0x0562df08 bool 
clang::interp::EvalEmitter::emitRet<(clang::interp::PrimType)9>(clang::interp::SourceInfo
 const&) (/home/david.spickett/build-llvm-arm/bin/clang+0x4cdff08)
 #7 0x0598b3a0 
clang::interp::Compiler<clang::interp::EvalEmitter>::visitDeclAndReturn(clang::VarDecl
 const*, bool) (/home/david.spickett/build-llvm-arm/bin/clang+0x503d3a0)
 #8 0x05593398 clang::interp::EvalEmitter::interpretDecl(clang::VarDecl const*, 
bool) (/home/david.spickett/build-llvm-arm/bin/clang+0x4c45398)
 #9 0x0558add0 
clang::interp::Context::evaluateAsInitializer(clang::interp::State&, 
clang::VarDecl const*, clang::APValue&) 
(/home/david.spickett/build-llvm-arm/bin/clang+0x4c3cdd0)
#10 0x054aeebc clang::Expr::EvaluateAsInitializer(clang::APValue&, 
clang::ASTContext const&, clang::VarDecl const*, 
llvm::SmallVectorImpl<std::pair<clang::SourceLocation, 
clang::PartialDiagnostic>>&, bool) const 
(/home/david.spickett/build-llvm-arm/bin/clang+0x4b60ebc)
#11 0x0537e7c4 
clang::VarDecl::evaluateValueImpl(llvm::SmallVectorImpl<std::pair<clang::SourceLocation,
 clang::PartialDiagnostic>>&, bool) const 
(/home/david.spickett/build-llvm-arm/bin/clang+0x4a307c4)
#12 0x0537e948 
clang::VarDecl::checkForConstantInitialization(llvm::SmallVectorImpl<std::pair<clang::SourceLocation,
 clang::PartialDiagnostic>>&) const 
(/home/david.spickett/build-llvm-arm/bin/clang+0x4a30948)
#13 0x04838118 clang::Sema::CheckCompleteVariableDeclaration(clang::VarDecl*) 
(/home/david.spickett/build-llvm-arm/bin/clang+0x3eea118)
#14 0x04836b6c clang::Sema::AddInitializerToDecl(clang::Decl*, clang::Expr*, 
bool) (/home/david.spickett/build-llvm-arm/bin/clang+0x3ee8b6c)
#15 0x04567694 
clang::Parser::ParseDeclarationAfterDeclaratorAndAttributes(clang::Declarator&, 
clang::Parser::ParsedTemplateInfo const&, clang::Parser::ForRangeInit*) 
(/home/david.spickett/build-llvm-arm/bin/clang+0x3c19694)
#16 0x04563fa0 clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, 
clang::DeclaratorContext, clang::ParsedAttributes&, 
clang::Parser::ParsedTemplateInfo&, clang::SourceLocation*, 
clang::Parser::ForRangeInit*) 
(/home/david.spickett/build-llvm-arm/bin/clang+0x3c15fa0)
#17 0x0453c540 
clang::Parser::ParseDeclOrFunctionDefInternal(clang::ParsedAttributes&, 
clang::ParsedAttributes&, clang::ParsingDeclSpec&, clang::AccessSpecifier) 
(/home/david.spickett/build-llvm-arm/bin/clang+0x3bee540)
#18 0x0453bc14 
clang::Parser::ParseDeclarationOrFunctionDefinition(clang::ParsedAttributes&, 
clang::ParsedAttributes&, clang::ParsingDeclSpec*, clang::AccessSpecifier) 
(/home/david.spickett/build-llvm-arm/bin/clang+0x3bedc14)
#19 0x0453abf4 
clang::Parser::ParseExternalDeclaration(clang::ParsedAttributes&, 
clang::ParsedAttributes&, clang::ParsingDeclSpec*) 
(/home/david.spickett/build-llvm-arm/bin/clang+0x3becbf4)
#20 0x04538830 
clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&, 
clang::Sema::ModuleImportState&) 
(/home/david.spickett/build-llvm-arm/bin/clang+0x3bea830)
#21 0x045341b8 clang::ParseAST(clang::Sema&, bool, bool) 
(/home/david.spickett/build-llvm-arm/bin/clang+0x3be61b8)
#22 0x02f785c4 clang::FrontendAction::Execute() 
(/home/david.spickett/build-llvm-arm/bin/clang+0x262a5c4)
#23 0x02ef08ac clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) 
(/home/david.spickett/build-llvm-arm/bin/clang+0x25a28ac)
#24 0x0305fdd0 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) 
(/home/david.spickett/build-llvm-arm/bin/clang+0x2711dd0)
#25 0x01257cd0 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) 
(/home/david.spickett/build-llvm-arm/bin/clang+0x909cd0)
#26 0x01253fa8 ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, 
llvm::ToolContext const&) driver.cpp:0:0
#27 0x01252f68 clang_main(int, char**, llvm::ToolContext const&) 
(/home/david.spickett/build-llvm-arm/bin/clang+0x904f68)
#28 0x012630a8 main (/home/david.spickett/build-llvm-arm/bin/clang+0x9150a8)
#29 0xf7b0d7d6 __libc_start_call_main 
./csu/../sysdeps/nptl/libc_start_call_main.h:74:3
#30 0xf7b0d886 call_init ./csu/libc-start.c:128:20
#31 0xf7b0d886 __libc_start_main ./csu/libc-start.c:379:5
/home/david.spickett/build-llvm-arm/tools/clang/test/AST/ByteCode/Output/intap.cpp.script:
 line 4: 1330655 Trace/breakpoint trap   (core dumped) 
/home/david.spickett/build-llvm-arm/bin/clang -cc1 -internal-isystem 
/home/david.spickett/build-llvm-arm/lib/clang/21/include -nostdsysteminc 
-fexperimental-new-constant-interpreter -fms-extensions -std=c++11 
-verify=expected,both 
/home/david.spickett/llvm-project/clang/test/AST/ByteCode/intap.cpp
```
So either it's a clang bug or its undefined behaviour, I bet the latter but 
this backtrace isn't much help.

Trying to get a debug build, proving difficult due to memory limitations.

https://github.com/llvm/llvm-project/pull/144246
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to