Uploaded image for project: 'ROOT'
  1. ROOT
  2. ROOT-10804

assertion in clang::Sema::LookupSpecialMember

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 6.20/06
    • Fix Version/s: 6.22/00, 6.20/06, 6.24/00
    • Component/s: Cling
    • Labels:
      None
    • Environment:

      LHCb nightly builds against 6.20-patches (6346f09)

      Description

      We are getting this assertion message from a few of LHCb tests in debug builds:

      python: /workspace/build/projects/ROOT-v6-20-00-patches/src/ROOT/v6-20-00-patches/interpreter/llvm/src/tools/clang/lib/Sema/SemaLookup.cpp:2871: clang::Sema::SpecialMemberOverloadResult clang::Sema::LookupSpecialMember(clang::CXXRecordDecl*, clang::Sema::CXXSpecialMember, bool, bool, bool, bool, bool): Assertion `DD && "record without a destructor"' failed.
      

      Optimized builds hint to a problem loading a dictionary when preparing to write for the first time:

      #5  <signal handler called>
      #6  0x00007faf4b5ec496 in clang::Sema::LookupSpecialMember(clang::CXXRecordDecl*, clang::Sema::CXXSpecialMember, bool, bool, bool, bool, bool) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #7  0x00007faf4b3f0121 in (anonymous namespace)::SpecialMemberExceptionSpecInfo::visitClassSubobject(clang::CXXRecordDecl*, llvm::PointerUnion<clang::CXXBaseSpecifier*, clang::FieldDecl*>, unsigned int) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #8  0x00007faf4b43364b in ComputeDefaultedSpecialMemberExceptionSpec(clang::Sema&, clang::SourceLocation, clang::CXXMethodDecl*, clang::Sema::CXXSpecialMember, clang::Sema::InheritedConstructorInfo*) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #9  0x00007faf4b433e8c in clang::Sema::EvaluateImplicitExceptionSpec(clang::SourceLocation, clang::CXXMethodDecl*) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #10 0x00007faf4b47fe75 in clang::Sema::ResolveExceptionSpec(clang::SourceLocation, clang::FunctionProtoType const*) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #11 0x00007faf4b48474d in clang::Sema::CheckExceptionSpecSubset(clang::PartialDiagnostic const&, clang::PartialDiagnostic const&, clang::PartialDiagnostic const&, clang::FunctionProtoType const*, clang::SourceLocation, clang::FunctionProtoType const*, clang::SourceLocation) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #12 0x00007faf4b4857d6 in clang::Sema::CheckOverridingFunctionExceptionSpec(clang::CXXMethodDecl const*, clang::CXXMethodDecl const*) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #13 0x00007faf4b434943 in clang::Sema::CheckDelayedMemberExceptionSpecs() () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #14 0x00007faf4b7b8e96 in clang::Sema::InstantiateClass(clang::SourceLocation, clang::CXXRecordDecl*, clang::CXXRecordDecl*, clang::MultiLevelTemplateArgumentList const&, clang::TemplateSpecializationKind, bool) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #15 0x00007faf4b7c8212 in clang::Sema::InstantiateClassTemplateSpecialization(clang::SourceLocation, clang::ClassTemplateSpecializationDecl*, clang::TemplateSpecializationKind, bool) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #16 0x00007faf4b811c4f in clang::Sema::RequireCompleteTypeImpl(clang::SourceLocation, clang::QualType, clang::Sema::TypeDiagnoser*) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #17 0x00007faf4b816877 in clang::Sema::RequireCompleteType(clang::SourceLocation, clang::QualType, unsigned int) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #18 0x00007faf4b321b1c in clang::Sema::CheckFieldDecl(clang::DeclarationName, clang::QualType, clang::TypeSourceInfo*, clang::RecordDecl*, clang::SourceLocation, bool, clang::Expr*, clang::InClassInitStyle, clang::SourceLocation, clang::AccessSpecifier, clang::NamedDecl*, clang::Declarator*) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #19 0x00007faf4b32237c in clang::Sema::HandleField(clang::Scope*, clang::RecordDecl*, clang::SourceLocation, clang::Declarator&, clang::Expr*, clang::InClassInitStyle, clang::AccessSpecifier) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #20 0x00007faf4b426510 in clang::Sema::ActOnCXXMemberDeclarator(clang::Scope*, clang::AccessSpecifier, clang::Declarator&, llvm::MutableArrayRef<clang::TemplateParameterList*>, clang::Expr*, clang::VirtSpecifiers const&, clang::InClassInitStyle) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #21 0x00007faf4b0640ac in clang::Parser::ParseCXXClassMemberDeclaration(clang::AccessSpecifier, clang::AttributeList*, clang::Parser::ParsedTemplateInfo const&, clang::ParsingDeclRAIIObject*) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #22 0x00007faf4b065a16 in clang::Parser::ParseCXXClassMemberDeclarationWithPragmas(clang::AccessSpecifier&, clang::Parser::ParsedAttributesWithRange&, clang::TypeSpecifierType, clang::Decl*) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #23 0x00007faf4b0660c1 in clang::Parser::ParseCXXMemberSpecification(clang::SourceLocation, clang::SourceLocation, clang::Parser::ParsedAttributesWithRange&, unsigned int, clang::Decl*) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #24 0x00007faf4b06a429 in clang::Parser::ParseClassSpecifier(clang::tok::TokenKind, clang::SourceLocation, clang::DeclSpec&, clang::Parser::ParsedTemplateInfo const&, clang::AccessSpecifier, bool, clang::Parser::DeclSpecContext, clang::Parser::ParsedAttributesWithRange&) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #25 0x00007faf4b041ee1 in clang::Parser::ParseDeclarationSpecifiers(clang::DeclSpec&, clang::Parser::ParsedTemplateInfo const&, clang::AccessSpecifier, clang::Parser::DeclSpecContext, clang::Parser::LateParsedAttrList*) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #26 0x00007faf4b0da956 in clang::Parser::ParseDeclOrFunctionDefInternal(clang::Parser::ParsedAttributesWithRange&, clang::ParsingDeclSpec&, clang::AccessSpecifier) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #27 0x00007faf4b0db0d5 in clang::Parser::ParseDeclarationOrFunctionDefinition(clang::Parser::ParsedAttributesWithRange&, clang::ParsingDeclSpec*, clang::AccessSpecifier) [clone .part.0] () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #28 0x00007faf4b0e4e1b in clang::Parser::ParseExternalDeclaration(clang::Parser::ParsedAttributesWithRange&, clang::ParsingDeclSpec*) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #29 0x00007faf4b060ad2 in clang::Parser::ParseInnerNamespace(std::vector<clang::SourceLocation, std::allocator<clang::SourceLocation> >&, std::vector<clang::IdentifierInfo*, std::allocator<clang::IdentifierInfo*> >&, std::vector<clang::SourceLocation, std::allocator<clang::SourceLocation> >&, unsigned int, clang::SourceLocation&, clang::ParsedAttributes&, clang::BalancedDelimiterTracker&) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #30 0x00007faf4b067dca in clang::Parser::ParseNamespace(unsigned int, clang::SourceLocation&, clang::SourceLocation) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #31 0x00007faf4b051318 in clang::Parser::ParseDeclaration(unsigned int, clang::SourceLocation&, clang::Parser::ParsedAttributesWithRange&) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #32 0x00007faf4b0e4562 in clang::Parser::ParseExternalDeclaration(clang::Parser::ParsedAttributesWithRange&, clang::ParsingDeclSpec*) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #33 0x00007faf4b0e5259 in clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #34 0x00007faf4aaab666 in cling::IncrementalParser::ParseInternal(llvm::StringRef) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #35 0x00007faf4aaacbdd in cling::IncrementalParser::Compile(llvm::StringRef, cling::CompilationOptions const&) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #36 0x00007faf4aa29fac in cling::Interpreter::DeclareInternal(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, cling::CompilationOptions const&, cling::Transaction**) const () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #37 0x00007faf4aa2a0c6 in cling::Interpreter::parseForModule(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #38 0x00007faf4a9a55d7 in ExecAutoParse(char const*, bool, cling::Interpreter*) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #39 0x00007faf4a9acfc3 in TCling::AutoParseImplRecurse(char const*, bool) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #40 0x00007faf4a9ae00f in TCling::AutoParse(char const*) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCling.so
      #41 0x00007faf7007214c in TClass::GetClass(char const*, bool, bool) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Fri/ROOT/v6-20-00-patches/x86_64-centos7-gcc9-opt/lib/libCore.so
      #42 0x00007faf6a2d213f in Gaudi::RootCnvSvc::loadConverter(DataObject*) () from /workspace/build/Gaudi/InstallArea/x86_64-centos7-gcc9-opt/lib/libRootCnvLib.so
      #43 0x00007faf6a2cccb0 in Gaudi::RootCnvSvc::getClass(DataObject*) () from /workspace/build/Gaudi/InstallArea/x86_64-centos7-gcc9-opt/lib/libRootCnvLib.so
      #44 0x00007faf6a2cfd5f in Gaudi::RootCnvSvc::i__createRep(DataObject*, IOpaqueAddress*&) () from /workspace/build/Gaudi/InstallArea/x86_64-centos7-gcc9-opt/lib/libRootCnvLib.so
      #45 0x00007faf6a2d3c22 in Gaudi::RootConverter::createRep(DataObject*, IOpaqueAddress*&) () from /workspace/build/Gaudi/InstallArea/x86_64-centos7-gcc9-opt/lib/libRootCnvLib.so
      #46 0x00007faf71c6fa61 in ConversionSvc::makeCall(int, bool, bool, bool, IOpaqueAddress*&, DataObject*&) () from /workspace/build/Gaudi/InstallArea/x86_64-centos7-gcc9-opt/lib/libGaudiKernel.so
      #47 0x00007faf71c6ffc4 in virtual thunk to ConversionSvc::createRep(DataObject*, IOpaqueAddress*&) () from /workspace/build/Gaudi/InstallArea/x86_64-centos7-gcc9-opt/lib/libGaudiKernel.so
      #48 0x00007faf670d8ef3 in OutputStream::writeObjects() () from /workspace/build/Gaudi/InstallArea/x86_64-centos7-gcc9-opt/lib/libGaudiCommonSvc.so
      

      Which should come from https://gitlab.cern.ch/gaudi/Gaudi/-/blob/c7d6fdfd2a45def1946c32c005c3f0ebfa1fa855/RootCnv/src/RootCnvSvc.cpp#L161

        Attachments

          Activity

            People

            • Assignee:
              axel Axel Naumann
              Reporter:
              clemenci Marco Clemencic
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: