Uploaded image for project: 'Swift'
  1. Swift
  2. SR-4981

CoreStore source breakage: While deserializing extension of '<null>' (ExtensionDecl #5) in 'CoreStore'

    XMLWordPrintable

    Details

      Description

      To reproduce:
      1. Install latest GM/Beta Xcode
      2. $ git clone git@github.com:apple/swift-source-compat-suite.git
      3. $ cd swift-source-compat-suite

      To build Swift from scratch before testing:
      4. $ ./reproduce.py master --project-path CoreStore

      Or if you've already built Swift:
      4. $ ./reproduce.py master --project-path CoreStore --swiftc path/to/swiftc

      0  swift                    0x000000010379dfa8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 40
      1  swift                    0x000000010379e5c6 SignalHandler(int) + 342
      2  libsystem_platform.dylib 0x00007fffd0812b3a _sigtramp + 26
      3  libsystem_platform.dylib 0x000000010f6cf551 _sigtramp + 1055640113
      4  libsystem_c.dylib        0x00007fffd0697420 abort + 129
      5  swift                    0x00000001015f2def swift::ModuleFile::readConformance(llvm::BitstreamCursor&, swift::GenericEnvironment*) + 1823
      6  swift                    0x00000001015f34f1 swift::ModuleFile::readNormalConformance(llvm::PointerEmbeddedInt<unsigned int, 31>) + 801
      7  swift                    0x00000001015f2b58 swift::ModuleFile::readConformance(llvm::BitstreamCursor&, swift::GenericEnvironment*) + 1160
      8  swift                    0x00000001015fab0d swift::ModuleFile::loadAllConformances(swift::Decl const*, unsigned long long, llvm::SmallVectorImpl<swift::ProtocolConformance*>&) + 221
      9  swift                    0x0000000101960b4c swift::ConformanceLookupTable::updateLookupTable(swift::NominalTypeDecl*, swift::ConformanceLookupTable::ConformanceStage, swift::LazyResolver*) + 2124
      10 swift                    0x0000000101960427 swift::ConformanceLookupTable::updateLookupTable(swift::NominalTypeDecl*, swift::ConformanceLookupTable::ConformanceStage, swift::LazyResolver*) + 295
      11 swift                    0x0000000101962a25 swift::ConformanceLookupTable::lookupConformance(swift::ModuleDecl*, swift::NominalTypeDecl*, swift::ProtocolDecl*, swift::LazyResolver*, llvm::SmallVectorImpl<swift::ProtocolConformance*>&) + 53
      12 swift                    0x00000001015f290b swift::ModuleFile::readConformance(llvm::BitstreamCursor&, swift::GenericEnvironment*) + 571
      13 swift                    0x00000001015f34f1 swift::ModuleFile::readNormalConformance(llvm::PointerEmbeddedInt<unsigned int, 31>) + 801
      14 swift                    0x00000001015f2b58 swift::ModuleFile::readConformance(llvm::BitstreamCursor&, swift::GenericEnvironment*) + 1160
      15 swift                    0x00000001015fab0d swift::ModuleFile::loadAllConformances(swift::Decl const*, unsigned long long, llvm::SmallVectorImpl<swift::ProtocolConformance*>&) + 221
      16 swift                    0x0000000101960b4c swift::ConformanceLookupTable::updateLookupTable(swift::NominalTypeDecl*, swift::ConformanceLookupTable::ConformanceStage, swift::LazyResolver*) + 2124
      17 swift                    0x0000000101960427 swift::ConformanceLookupTable::updateLookupTable(swift::NominalTypeDecl*, swift::ConformanceLookupTable::ConformanceStage, swift::LazyResolver*) + 295
      18 swift                    0x0000000101962a25 swift::ConformanceLookupTable::lookupConformance(swift::ModuleDecl*, swift::NominalTypeDecl*, swift::ProtocolDecl*, swift::LazyResolver*, llvm::SmallVectorImpl<swift::ProtocolConformance*>&) + 53
      19 swift                    0x00000001019b95f1 swift::ModuleDecl::lookupConformance(swift::Type, swift::ProtocolDecl*, swift::LazyResolver*) + 785
      20 swift                    0x00000001016b209e swift::ClangImporter::Implementation::finishProtocolConformance(swift::NormalProtocolConformance*) + 942
      21 swift                    0x00000001016b1c27 swift::ClangImporter::Implementation::finishPendingActions() + 39
      22 swift                    0x00000001016b25b0 swift::ClangImporter::Implementation::importDeclAndCacheImpl(clang::NamedDecl const*, swift::importer::ImportNameVersion, bool) + 896
      23 swift                    0x0000000101699a60 swift::ClangImporter::Implementation::lookupValue(swift::SwiftLookupTable&, swift::DeclName, swift::VisibleDeclConsumer&) + 384
      24 swift                    0x00000001016998bf swift::ClangModuleUnit::lookupValue(llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::DeclName, swift::NLKind, llvm::SmallVectorImpl<swift::ValueDecl*>&) const + 431
      25 swift                    0x00000001019b87aa swift::ModuleDecl::lookupValue(llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::DeclName, swift::NLKind, llvm::SmallVectorImpl<swift::ValueDecl*>&) const + 90
      26 swift                    0x00000001019c331a void lookupInModule<llvm::SmallSet<swift::CanType, 4u, (anonymous namespace)::SortCanType>, swift::namelookup::lookupInModule(swift::ModuleDecl*, llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::DeclName, llvm::SmallVectorImpl<swift::ValueDecl*>&, swift::NLKind, swift::namelookup::ResolutionKind, swift::LazyResolver*, swift::DeclContext const*, llvm::ArrayRef<std::__1::pair<llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >)::$_0>(swift::ModuleDecl*, llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, llvm::SmallVectorImpl<swift::ValueDecl*>&, swift::namelookup::ResolutionKind, bool, swift::LazyResolver*, llvm::SmallDenseMap<std::__1::pair<llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*>, llvm::TinyPtrVector<swift::ValueDecl*>, 32u, llvm::DenseMapInfo<std::__1::pair<llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >, llvm::detail::DenseMapPair<std::__1::pair<llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*>, llvm::TinyPtrVector<swift::ValueDecl*> > >&, swift::DeclContext const*, bool, llvm::ArrayRef<std::__1::pair<llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >, swift::namelookup::lookupInModule(swift::ModuleDecl*, llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::DeclName, llvm::SmallVectorImpl<swift::ValueDecl*>&, swift::NLKind, swift::namelookup::ResolutionKind, swift::LazyResolver*, swift::DeclContext const*, llvm::ArrayRef<std::__1::pair<llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >)::$_0) + 346
      27 swift                    0x00000001019c373c void lookupInModule<llvm::SmallSet<swift::CanType, 4u, (anonymous namespace)::SortCanType>, swift::namelookup::lookupInModule(swift::ModuleDecl*, llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::DeclName, llvm::SmallVectorImpl<swift::ValueDecl*>&, swift::NLKind, swift::namelookup::ResolutionKind, swift::LazyResolver*, swift::DeclContext const*, llvm::ArrayRef<std::__1::pair<llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >)::$_0>(swift::ModuleDecl*, llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, llvm::SmallVectorImpl<swift::ValueDecl*>&, swift::namelookup::ResolutionKind, bool, swift::LazyResolver*, llvm::SmallDenseMap<std::__1::pair<llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*>, llvm::TinyPtrVector<swift::ValueDecl*>, 32u, llvm::DenseMapInfo<std::__1::pair<llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >, llvm::detail::DenseMapPair<std::__1::pair<llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*>, llvm::TinyPtrVector<swift::ValueDecl*> > >&, swift::DeclContext const*, bool, llvm::ArrayRef<std::__1::pair<llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >, swift::namelookup::lookupInModule(swift::ModuleDecl*, llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::DeclName, llvm::SmallVectorImpl<swift::ValueDecl*>&, swift::NLKind, swift::namelookup::ResolutionKind, swift::LazyResolver*, swift::DeclContext const*, llvm::ArrayRef<std::__1::pair<llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >)::$_0) + 1404
      28 swift                    0x00000001019c318e swift::namelookup::lookupInModule(swift::ModuleDecl*, llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::DeclName, llvm::SmallVectorImpl<swift::ValueDecl*>&, swift::NLKind, swift::namelookup::ResolutionKind, swift::LazyResolver*, swift::DeclContext const*, llvm::ArrayRef<std::__1::pair<llvm::ArrayRef<std::__1::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >) + 1278
      29 swift                    0x00000001019c9840 swift::DeclContext::lookupQualified(swift::Type, swift::DeclName, swift::NLOptions, swift::LazyResolver*, llvm::SmallVectorImpl<swift::ValueDecl*>&) const + 1136
      30 swift                    0x00000001015f4858 swift::ModuleFile::resolveCrossReference(swift::ModuleDecl*, unsigned int) + 760
      31 swift                    0x00000001015eda8b swift::ModuleFile::getDeclChecked(llvm::PointerEmbeddedInt<unsigned int, 31>, llvm::Optional<swift::DeclContext*>) + 12635
      32 swift                    0x00000001015f823a swift::ModuleFile::getTypeChecked(llvm::PointerEmbeddedInt<unsigned int, 31>) + 3834
      33 swift                    0x00000001015ee66b swift::ModuleFile::getDeclChecked(llvm::PointerEmbeddedInt<unsigned int, 31>, llvm::Optional<swift::DeclContext*>) + 15675
      34 swift                    0x00000001015e9d7e swift::ModuleFile::getDecl(llvm::PointerEmbeddedInt<unsigned int, 31>, llvm::Optional<swift::DeclContext*>) + 78
      35 swift                    0x00000001016192db swift::ModuleFile::getTopLevelDecls(llvm::SmallVectorImpl<swift::Decl*>&) + 2043
      36 swift                    0x00000001019b905f swift::ModuleDecl::getTopLevelDecls(llvm::SmallVectorImpl<swift::Decl*>&) const + 63
      37 swift                    0x000000010125a2cf swift::ClassHierarchyAnalysis::init() + 79
      38 swift                    0x0000000101250421 swift::createClassHierarchyAnalysis(swift::SILModule*) + 129
      39 swift                    0x00000001012fc4fb swift::SILPassManager::SILPassManager(swift::SILModule*, llvm::StringRef) + 427
      40 swift                    0x000000010130466b swift::runSILDiagnosticPasses(swift::SILModule&) + 123
      41 swift                    0x0000000100be375e performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) + 7870
      42 swift                    0x0000000100be09fd swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) + 2621
      43 swift                    0x0000000100ba7ada main + 2346
      44 libdyld.dylib            0x00007fffd0603235 start + 1
      45 libdyld.dylib            0x00000000000000b0 start + 799002236
      Stack dump:
      1.	While reading from CoreStore/build/Build/Intermediates/CoreStore.build/Release/CoreStore OSX.build/Objects-normal/x86_64/CoreDataNativeType~partial.swiftmodule
      2.	While deserializing extension of '<null>' (ExtensionDecl #5) in 'CoreStore'
      3.	While deserializing decl #15 (XREF) in 'CoreStore'
      4.	Cross-reference to module 'Foundation'
      	... NSData
      5.	…NSManagedObjectModel.h:16:8: importing 'NSData'
      6.	While loading conformances for extension of NSData in module 'CoreStore'
      7.	While reading conformance for type 'NSData'
      8.	While ... to 'CoreStoreImportableAttributeType' in module 'CoreStore'
      9.	While cross-referencing conformance for 'NSData' in module 'Foundation'
      10.	While ... to 'CoreStoreQueryableAttributeType' in module 'CoreStore'
      11.	While loading conformances for extension of NSData in module 'CoreStore'
      12.	While reading conformance for type 'NSData'
      13.	While ... to 'CoreStoreQueryableAttributeType' in module 'CoreStore'
      14.	While cross-referencing conformance for 'NSData' in module 'Foundation'
      15.	While ... to 'CoreDataNativeType' in module 'CoreStore'
      16.	If you're seeing a crash here, check that your SDK and dependencies are at least as new as the versions used to build 'CoreStore'
      
      <unknown>:0: error: unable to execute command: Abort trap: 6
      <unknown>:0: error: merge-module command failed due to signal 6 (use -v to see invocation)
      ** BUILD FAILED **
      

        Attachments

          Activity

            People

            • Assignee:
              llarson Luke Larson
              Reporter:
              llarson Luke Larson
            • Votes:
              1 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: