Control: reassign -1 libclang-cpp13 1:13.0.0-9 Control: retitle -1 libclang-cpp13: segmentation fault (and corrupted stack) while compiling some OpenCL kernel with pocl on i386
I managed to get a bit of a trace using ltrace -x '*' to also catch the dlopen()ed symbols. I'm pasting just the very last screen of output (from probably several gigabytes). So we are segfaulting definitively somewhere inside libclang-cpp.so # POCL_DEVICES=basic POCL_BUILDING=1 OCL_ICD_VENDORS="$(pwd)/ocl-vendors" ltrace -x '*' -C ./tests/kernel/kernel test_ilogb <... clang::TokenLexer::Lex(clang::Token&) resumed> ) = 0x194e01 <... clang::Preprocessor::Lex(clang::Token&) resumed> ) = 0 clang::Parser::ParseExpression(clang::Parser::TypeCastState)@libclang-cpp.so.13(0xff9a7340, 0x56f121f0, 0, 0xf537b15f <unfinished ...> clang::Parser::ParseAssignmentExpression(clang::Parser::TypeCastState)@libclang-cpp.so.13(0xff9a72d8, 0x56f121f0, 0, 0xf5308b2b <unfinished ...> clang::Parser::ParseCastExpression(clang::Parser::CastParseKind, bool, bool&, clang::Parser::TypeCastState, bool, bool*)@libclang-cpp.so.13(0xff9a7288, 0x56f121f0, 0, 0 <unfinished ...> clang::Preprocessor::Lex(clang::Token&)@libclang-cpp.so.13(0x56eddb7c, 0x56f121f8, 0xff9a68e0, 0xf530dfbf <unfinished ...> clang::TokenLexer::Lex(clang::Token&)@libclang-cpp.so.13(0x56f3df40, 0x56f121f8, 0xe2d97501, 0x56f121f4 <unfinished ...> clang::tok::isAnnotation(clang::tok::TokenKind)@libclang-cpp.so.13(64, 0xf7babff4, 0xff9a76e0, 0xf52bf2dc) = -512 <... clang::TokenLexer::Lex(clang::Token&) resumed> ) = 1 <... clang::Preprocessor::Lex(clang::Token&) resumed> ) = 0 clang::Sema::ActOnIdExpression(clang::Scope*, clang::CXXScopeSpec&, clang::SourceLocation, clang::UnqualifiedId&, bool, bool, clang::CorrectionCandidateCallback*, bool, clang::Token*)@libclang-cpp.so.13(0xff9a6ad8, 0x56f33290, 0x56e81c20, 0xff9a6d50 <unfinished ...> clang::Sema::DecomposeUnqualifiedId(clang::UnqualifiedId const&, clang::TemplateArgumentListInfo&, clang::DeclarationNameInfo&, clang::TemplateArgumentListInfo const*&)@libclang-cpp.so.13(0x56f33290, 0xff9a7198, 0xff9a6790, 0xff9a66c8 <unfinished ...> clang::Sema::GetNameFromUnqualifiedId(clang::UnqualifiedId const&)@libclang-cpp.so.13(0xff9a65e8, 0x56f33290, 0xff9a7198, 0xf5d16f4c) = 0xff9a65e8 <... clang::Sema::DecomposeUnqualifiedId(clang::UnqualifiedId const&, clang::TemplateArgumentListInfo&, clang::DeclarationNameInfo&, clang::TemplateArgumentListInfo const*&) resumed> ) = 0xe2d97500 clang::LookupResult::configure()@libclang-cpp.so.13(0xff9a6720, 0, 0, 0xf5d0fbcf) = -27 clang::Sema::getCurMethodDecl()@libclang-cpp.so.13(0x56f33290, 0, 0, 0xf5d0fbcf <unfinished ...> clang::Sema::getFunctionLevelDeclContext()@libclang-cpp.so.13(0x56f33290, 0xf7babff4, 0xf7babff4, 0xf5d0fedd) = 0x5734f5b0 <... clang::Sema::getCurMethodDecl() resumed> ) = 0 clang::Sema::LookupParsedName(clang::LookupResult&, clang::Scope*, clang::CXXScopeSpec*, bool, bool)@libclang-cpp.so.13(0x56f33290, 0xff9a6720, 0x56e81c20, 0xff9a6d50 <unfinished ...> clang::Sema::LookupName(clang::LookupResult&, clang::Scope*, bool)@libclang-cpp.so.13(0x56f33290, 0xff9a6720, 0x56e81c20, 1 <unfinished ...> clang::IdentifierResolver::begin(clang::DeclarationName)@libclang-cpp.so.13(0xff9a65d0, 0x56f33a94, 0x5735ceb0, 0) = 0xff9a65d0 clang::LookupResult::resolveKind()@libclang-cpp.so.13(0xff9a6720, 0x57350480, 0x5735ceb0, 0) = 0xe2d97500 <... clang::Sema::LookupName(clang::LookupResult&, clang::Scope*, bool) resumed> ) = 1 <... clang::Sema::LookupParsedName(clang::LookupResult&, clang::Scope*, clang::CXXScopeSpec*, bool, bool) resumed> ) = 1 clang::Sema::UseArgumentDependentLookup(clang::CXXScopeSpec const&, clang::LookupResult const&, bool)@libclang-cpp.so.13(0x56f33290, 0xff9a6d50, 0xff9a6720, 0) = 0 clang::Sema::BuildDeclarationNameExpr(clang::CXXScopeSpec const&, clang::LookupResult&, bool, bool)@libclang-cpp.so.13(0xff9a6ad8, 0x56f33290, 0xff9a6d50, 0xff9a6720 <unfinished ...> clang::Sema::BuildDeclarationNameExpr(clang::CXXScopeSpec const&, clang::DeclarationNameInfo const&, clang::NamedDecl*, clang::NamedDecl*, clang::TemplateArgumentListInfo const*, bool)@libclang-cpp.so.13(0xff9a6ad8, 0x56f33290, 0xff9a6d50, 0xff9a6764 <unfinished ...> clang::Sema::DiagnoseUseOfDecl(clang::NamedDecl*, llvm::ArrayRef<clang::SourceLocation>, clang::ObjCInterfaceDecl const*, bool, bool, clang::ObjCInterfaceDecl*)@libclang-cpp.so.13(0x56f33290, 0x57350480, 0xff9a6520, 1 <unfinished ...> clang::Sema::diagnoseArgIndependentDiagnoseIfAttrs(clang::NamedDecl const*, clang::SourceLocation)@libclang-cpp.so.13(0x56f33290, 0x57350480, 0x8019e1b8, 0xf5d0ac9f) = 0 clang::Sema::DiagnoseAvailabilityOfDecl(clang::NamedDecl*, llvm::ArrayRef<clang::SourceLocation>, clang::ObjCInterfaceDecl const*, bool, bool, clang::ObjCInterfaceDecl*)@libclang-cpp.so.13(0x56f33290, 0x57350480, 0xff9a6520, 1 <unfinished ...> clang::Decl::getAvailability(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, llvm::VersionTuple, llvm::StringRef*) co...@libclang-cpp.so.13(0x57350480, 0xff9a60e0, 0, 0 <unfinished ...> std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::swap(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@libstdc++.so.6(0xff9a60e0, 0xff9a5f80, 0xe2d97500, 0xf556678c) = 0xff9a60e0 <... clang::Decl::getAvailability(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, llvm::VersionTuple, llvm::StringRef*) const resumed> ) = 0 <... clang::Sema::DiagnoseAvailabilityOfDecl(clang::NamedDecl*, llvm::ArrayRef<clang::SourceLocation>, clang::ObjCInterfaceDecl const*, bool, bool, clang::ObjCInterfaceDecl*) resumed> ) = 0xe2d97500 clang::Sema::getCurFunctionDecl()@libclang-cpp.so.13(0x56f33290, 0, 0, 0 <unfinished ...> clang::Sema::getFunctionLevelDeclContext()@libclang-cpp.so.13(0x56f33290, 0x57350480, 0xf7babff4, 0xf5d0bae5) = 0x5734f5b0 <... clang::Sema::getCurFunctionDecl() resumed> ) = 0x5734f588 <... clang::Sema::DiagnoseUseOfDecl(clang::NamedDecl*, llvm::ArrayRef<clang::SourceLocation>, clang::ObjCInterfaceDecl const*, bool, bool, clang::ObjCInterfaceDecl*) resumed> ) = 0 clang::QualType::getNonPackExpansionType() co...@libclang-cpp.so.13(0xff9a64f8, 0xff9a6560, 0, 0) = 0xff9a64f8 clang::Sema::getCapturedDeclRefType(clang::VarDecl*, clang::SourceLocation)@libclang-cpp.so.13(0xff9a64f8, 0x56f33290, 0x57350480, 0x8019e1b8 <unfinished ...> clang::Sema::tryCaptureVariable(clang::VarDecl*, clang::SourceLocation, clang::Sema::TryCaptureKind, clang::SourceLocation, bool, clang::QualType&, clang::QualType&, unsigned int const*)@libclang-cpp.so.13(0x56f33290, 0x57350480, 0x8019e1b8, 0) = 0xf7babf01 <... clang::Sema::getCapturedDeclRefType(clang::VarDecl*, clang::SourceLocation) resumed> ) = 0xff9a64f8 clang::Sema::BuildDeclRefExpr(clang::ValueDecl*, clang::QualType, clang::ExprValueKind, clang::DeclarationNameInfo const&, clang::CXXScopeSpec const*, clang::NamedDecl*, clang::SourceLocation, clang::TemplateArgumentListInfo const*)@libclang-cpp.so.13(0x56f33290, 0x57350480, 0x56f50818, 1 <unfinished ...> clang::CXXScopeSpec::getWithLocInContext(clang::ASTContext&) co...@libclang-cpp.so.13(0xff9a6440, 0xff9a6d50, 0x56ea9810, 0xf5d1662c) = 0xff9a6440 clang::Sema::BuildDeclRefExpr(clang::ValueDecl*, clang::QualType, clang::ExprValueKind, clang::DeclarationNameInfo const&, clang::NestedNameSpecifierLoc, clang::NamedDecl*, clang::SourceLocation, clang::TemplateArgumentListInfo const*)@libclang-cpp.so.13(0x56f33290, 0x57350480, 0x56f50818, 1 <unfinished ...> clang::Sema::tryCaptureVariable(clang::VarDecl*, clang::SourceLocation, clang::Sema::TryCaptureKind, clang::SourceLocation, bool, clang::QualType&, clang::QualType&, unsigned int const*)@libclang-cpp.so.13(0x56f33290, 0x57350480, 0x8019e1b8, 0) = 0xf7babf01 clang::Sema::getNonOdrUseReasonInCurrentContext(clang::ValueDecl*)@libclang-cpp.so.13(0x56f33290, 0x57350480, 0x56f121f8, 0xf5d166fc) = 0 clang::DeclRefExpr::Create(clang::ASTContext const&, clang::NestedNameSpecifierLoc, clang::SourceLocation, clang::ValueDecl*, bool, clang::DeclarationNameInfo const&, clang::QualType, clang::ExprValueKind, clang::NamedDecl*, clang::TemplateArgumentListInfo const*, clang::NonOdrUseReason)@libclang-cpp.so.13(0x56ea9810, 0, 0, 0 <unfinished ...> clang::DeclRefExpr::DeclRefExpr(clang::ASTContext const&, clang::NestedNameSpecifierLoc, clang::SourceLocation, clang::ValueDecl*, bool, clang::DeclarationNameInfo const&, clang::NamedDecl*, clang::TemplateArgumentListInfo const*, clang::QualType, clang::ExprValueKind, clang::NonOdrUseReason)@libclang-cpp.so.13(0x5735098c, 0x56ea9810, 0, 0 <unfinished ...> clang::computeDependence(clang::DeclRefExpr*, clang::ASTContext const&)@libclang-cpp.so.13(0x5735098c, 0x56ea9810, 0x57350838, 0xf55ce83c <unfinished ...> clang::Decl::isParameterPack() co...@libclang-cpp.so.13(0x57350480, 0, 0, 0xff9a6288callstack_push_symfunc: Error: call nesting too deep! Aborted (core dumped)