Skip to content

std::unordered_map conformance to CxxDictionary does not work on Linux #66767

@egorzhdan

Description

@egorzhdan
******************** TEST 'Swift(linux-x86_64) :: Interop/Cxx/stdlib/use-std-map.swift' FAILED ********************
Script:
--
: 'RUN: at line 1';   rm -rf "/home/build-user/build/buildbot_linux/swift-linux-x86_64/test-linux-x86_64/Interop/Cxx/stdlib/Output/use-std-map.swift.tmp" && mkdir -p "/home/build-user/build/buildbot_linux/swift-linux-x86_64/test-linux-x86_64/Interop/Cxx/stdlib/Output/use-std-map.swift.tmp" && /home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swiftc -target x86_64-unknown-linux-gnu -toolchain-stdlib-rpath  -module-cache-path /home/build-user/build/buildbot_linux/swift-linux-x86_64/swift-test-results/x86_64-unknown-linux-gnu/clang-module-cache -swift-version 4  -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 9999:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.1:macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.2:macOS 10.15.4, iOS 13.4, watchOS 6.2, tvOS 13.4' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.3:macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.4:macOS 11.3, iOS 14.5, watchOS 7.4, tvOS 14.5' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.5:macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.6:macOS 12.3, iOS 15.4, watchOS 8.5, tvOS 15.4' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.7:macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.8:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.9:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999'  -module-cache-path /home/build-user/build/buildbot_linux/swift-linux-x86_64/swift-test-results/x86_64-unknown-linux-gnu/clang-module-cache /home/build-user/swift/test/Interop/Cxx/stdlib/use-std-map.swift -I /home/build-user/swift/test/Interop/Cxx/stdlib/Inputs -Xfrontend -enable-experimental-cxx-interop -Xfrontend -validate-tbd-against-ir=none -o /home/build-user/build/buildbot_linux/swift-linux-x86_64/test-linux-x86_64/Interop/Cxx/stdlib/Output/use-std-map.swift.tmp/a.out -module-name main  && echo /home/build-user/build/buildbot_linux/swift-linux-x86_64/test-linux-x86_64/Interop/Cxx/stdlib/Output/use-std-map.swift.tmp/a.out && /usr/bin/env LD_LIBRARY_PATH='/home/build-user/build/buildbot_linux/swift-linux-x86_64/lib/swift/linux'  /home/build-user/build/buildbot_linux/swift-linux-x86_64/test-linux-x86_64/Interop/Cxx/stdlib/Output/use-std-map.swift.tmp/a.out
--
Exit Code: 254

Command Output (stderr):
--
/home/build-user/swift/test/Interop/Cxx/stdlib/use-std-map.swift:25:7: warning: variable 'm' was never mutated; consider changing to 'let' constant
  var m = initMap()
  ~~~ ^
  let
/home/build-user/swift/test/Interop/Cxx/stdlib/use-std-map.swift:37:7: warning: variable 'm' was never mutated; consider changing to 'let' constant
  var m = initUnorderedMap()
  ~~~ ^
  let
<unknown>:0: error: fatal error encountered during compilation; please submit a bug report (https://swift.org/contributing/#reporting-bugs)
<unknown>:0: note: Invalid conformance in type-checked AST
Please submit a bug report (https://swift.org/contributing/#reporting-bugs) and include the crash backtrace.
Stack dump:
0.	Program arguments: /home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend -frontend -c -primary-file /home/build-user/swift/test/Interop/Cxx/stdlib/use-std-map.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -I /home/build-user/swift/test/Interop/Cxx/stdlib/Inputs -module-cache-path /home/build-user/build/buildbot_linux/swift-linux-x86_64/swift-test-results/x86_64-unknown-linux-gnu/clang-module-cache -swift-version 4 -define-availability "SwiftStdlib 9999:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999" -define-availability "SwiftStdlib 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2" -define-availability "SwiftStdlib 5.1:macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0" -define-availability "SwiftStdlib 5.2:macOS 10.15.4, iOS 13.4, watchOS 6.2, tvOS 13.4" -define-availability "SwiftStdlib 5.3:macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0" -define-availability "SwiftStdlib 5.4:macOS 11.3, iOS 14.5, watchOS 7.4, tvOS 14.5" -define-availability "SwiftStdlib 5.5:macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0" -define-availability "SwiftStdlib 5.6:macOS 12.3, iOS 15.4, watchOS 8.5, tvOS 15.4" -define-availability "SwiftStdlib 5.7:macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0" -define-availability "SwiftStdlib 5.8:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999" -define-availability "SwiftStdlib 5.9:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999" -enable-experimental-cxx-interop -validate-tbd-against-ir=none -module-name main -o /tmp/lit-tmp-3zm5rzp8/use-std-map-4b9bed.o
1.	Swift version 5.9-dev (LLVM 5ea1e8195110c60, Swift 2eb668557eb5a44)
2.	Compiling with effective version 4.1.50
3.	While evaluating request ASTLoweringRequest(Lowering AST to SIL for file "/home/build-user/swift/test/Interop/Cxx/stdlib/use-std-map.swift")
4.	While generating SIL witness table protocol conformance to 'CxxDictionary' (in module 'Cxx') for type 'std.__CxxTemplateInstSt13unordered_mapIiiSt4hashIiESt8equal_toIiESaISt4pairIKiiEEE'
 #0 0x000000000661c843 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend+0x661c843)
 #1 0x000000000661a57e llvm::sys::RunSignalHandlers() (/home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend+0x661a57e)
 #2 0x000000000661cbcf SignalHandler(int) Signals.cpp:0:0
 #3 0x00007ff410dab420 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14420)
 #4 0x00007ff41021c00b raise (/lib/x86_64-linux-gnu/libc.so.6+0x4300b)
 #5 0x00007ff4101fb859 abort (/lib/x86_64-linux-gnu/libc.so.6+0x22859)
 #6 0x00000000006a10ff swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*)::$_3::__invoke(void*, char const*, bool) FrontendTool.cpp:0:0
 #7 0x0000000006542ff9 llvm::report_fatal_error(llvm::Twine const&, bool) (/home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend+0x6542ff9)
 #8 0x0000000006542ed8 (/home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend+0x6542ed8)
 #9 0x0000000000d8433d swift::Lowering::SILGenModule::useConformance(swift::ProtocolConformanceRef) crtstuff.c:0:0
#10 0x0000000000dd9e4a swift::SILWitnessVisitor<(anonymous namespace)::SILGenConformance>::visitProtocolDecl(swift::ProtocolDecl*) SILGenType.cpp:0:0
#11 0x0000000000dd70fc swift::Lowering::SILGenModule::getWitnessTable(swift::NormalProtocolConformance*) crtstuff.c:0:0
#12 0x0000000000d07445 swift::ASTLoweringRequest::evaluate(swift::Evaluator&, swift::ASTLoweringDescriptor) const (/home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend+0xd07445)
#13 0x0000000000dca30f swift::SimpleRequest<swift::ASTLoweringRequest, std::unique_ptr<swift::SILModule, std::default_delete<swift::SILModule> > (swift::ASTLoweringDescriptor), (swift::RequestFlags)9>::evaluateRequest(swift::ASTLoweringRequest const&, swift::Evaluator&) crtstuff.c:0:0
#14 0x0000000000d0aada llvm::Expected<swift::ASTLoweringRequest::OutputType> swift::Evaluator::getResultUncached<swift::ASTLoweringRequest>(swift::ASTLoweringRequest const&) crtstuff.c:0:0
#15 0x0000000000d079f9 swift::performASTLowering(swift::FileUnit&, swift::Lowering::TypeConverter&, swift::SILOptions const&, swift::IRGenOptions const*) (/home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend+0xd079f9)
#16 0x000000000069577d swift::performCompileStepsPostSema(swift::CompilerInstance&, int&, swift::FrontendObserver*) (/home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend+0x69577d)
#17 0x000000000069882c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend+0x69882c)
#18 0x00000000004c03b9 swift::mainEntry(int, char const**) (/home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend+0x4c03b9)
#19 0x00007ff4101fd083 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x24083)
#20 0x00000000004bfb1e _start (/home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend+0x4bfb1e)
<unknown>:0: error: unable to execute command: Aborted
<unknown>:0: error: compile command failed due to signal 6 (use -v to see invocation)

--

********************

Metadata

Metadata

Assignees

Labels

LinuxPlatform: LinuxbugA deviation from expected or documented behavior. Also: expected but undesirable behavior.c++ interopFeature: Interoperability with C++compilerThe Swift compiler itselfswift 5.9

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions