Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Parameter packs and passing tuples as arguments crashes Swift #78646

Open
Lancelotbronner opened this issue Jan 15, 2025 · 2 comments
Open

Parameter packs and passing tuples as arguments crashes Swift #78646

Lancelotbronner opened this issue Jan 15, 2025 · 2 comments
Labels
bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. crash Bug: A crash, i.e., an abnormal termination of software triage needed This issue needs more specific labels

Comments

@Lancelotbronner
Copy link

Description

I'm playing with swift-parsing and parameter packs.

I think what I'm trying to do may also crash at runtime.

Reproduction

struct MemberwiseConverter<each Input: BitwiseCopyable, Output: BitwiseCopyable> {
	@usableFromInline
	let _initializer: ((repeat each Input)) -> Output

	@usableFromInline
	init(_ initializer: @escaping ((repeat each Input)) -> Output) {
		_initializer = initializer
	}

	@inlinable @inline(__always)
	public func apply(_ input: (repeat each Input)) -> Output {
		try _initializer(input)
	}

	@inlinable @inline(__always)
	public func unapply(_ output: Output) -> (repeat each Input) {
		guard canCast(Output.self, (repeat each Input).self) else {
			fatalError()
		}
		return unsafeBitCast(output, to: (repeat each Input).self)
	}
}

@usableFromInline
func canCast<I: BitwiseCopyable, O: BitwiseCopyable>(_: I.Type, _: O.Type) -> Bool {
	MemoryLayout<I>.alignment == MemoryLayout<O>.alignment && MemoryLayout<I>.size == MemoryLayout<O>.size
}

Stack dump

Stack dump:
0.	Program arguments: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -c AnyConversion.swift Conversion.swift ConversionBuilder.swift Conversions/Identity.swift Conversions/Invert.swift Conversions/Map.swift -primary-file Conversions/Memberwise2.swift -emit-dependencies-path swift-parsing/.build/arm64-apple-macosx/debug/Converting.build/Memberwise2.d -emit-reference-dependencies-path swift-parsing/.build/arm64-apple-macosx/debug/Converting.build/Memberwise2.swiftdeps -target arm64-apple-macosx10.13 -Xllvm -aarch64-use-tbi -enable-objc-interop -sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.2.sdk -I swift-parsing/.build/arm64-apple-macosx/debug/Modules -I /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -color-diagnostics -enable-testing -g -debug-info-format=dwarf -dwarf-version=4 -module-cache-path swift-parsing/.build/arm64-apple-macosx/debug/ModuleCache -swift-version 6 -Onone -D SWIFT_PACKAGE -D DEBUG -new-driver-path /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-driver -empty-abi-descriptor -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift -enable-anonymous-context-mangled-names -file-compilation-dir swift-parsing -Xcc -isysroot -Xcc /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.2.sdk -Xcc -F -Xcc /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -Xcc -fPIC -Xcc -g -module-name Converting -package-name swift_parsing -disable-clang-spi -target-sdk-version 15.2 -target-sdk-name macosx15.2 -external-plugin-path /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib/swift/host/plugins#/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/local/lib/swift/host/plugins#/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/bin/swift-plugin-server -plugin-path /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins -plugin-path /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/local/lib/swift/host/plugins -parse-as-library -o swift-parsing/.build/arm64-apple-macosx/debug/Converting.build/Memberwise2.swift.o -index-store-path swift-parsing/.build/arm64-apple-macosx/debug/index/store -index-system-modules
1.	Apple Swift version 6.0.3 (swiftlang-6.0.3.1.10 clang-1600.0.30.1)
2.	Compiling with the current language version
3.	While evaluating request ASTLoweringRequest(Lowering AST to SIL for file "Conversions/Memberwise2.swift")
4.	While silgen emitFunction SIL function "@$s10Converting11Memberwise2V5applyyq_xxQp_t_tq0_YKF".
 for 'apply(_:)' (at Conversions/Memberwise2.swift:146:9)
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
0  swift-frontend           0x0000000109f12a9c llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 56
1  swift-frontend           0x0000000109f10cf0 llvm::sys::RunSignalHandlers() + 112
2  swift-frontend           0x0000000109f13068 SignalHandler(int) + 292
3  libsystem_platform.dylib 0x0000000189a36e04 _sigtramp + 56
4  swift-frontend           0x00000001052fc918 void llvm::function_ref<void (swift::SILValue, swift::SILValue, swift::SILValue)>::callback_fn<(anonymous namespace)::ArgEmitter::emitPackExpansionIntoPack(swift::Lowering::ArgumentSource&&, swift::Lowering::AbstractionPattern, swift::SILType, bool, swift::SILValue, swift::CanTypeWrapper<swift::PackType>, unsigned int)::'lambda'(swift::SILValue, swift::SILValue, swift::SILValue)>(long, swift::SILValue, swift::SILValue, swift::SILValue) + 484
5  swift-frontend           0x00000001052fc918 void llvm::function_ref<void (swift::SILValue, swift::SILValue, swift::SILValue)>::callback_fn<(anonymous namespace)::ArgEmitter::emitPackExpansionIntoPack(swift::Lowering::ArgumentSource&&, swift::Lowering::AbstractionPattern, swift::SILType, bool, swift::SILValue, swift::CanTypeWrapper<swift::PackType>, unsigned int)::'lambda'(swift::SILValue, swift::SILValue, swift::SILValue)>(long, swift::SILValue, swift::SILValue, swift::SILValue) + 484
6  swift-frontend           0x00000001053ce494 swift::Lowering::SILGenFunction::emitDynamicPackLoop(swift::SILLocation, swift::CanTypeWrapper<swift::PackType>, unsigned int, swift::SILValue, swift::SILValue, swift::GenericEnvironment*, bool, llvm::function_ref<void (swift::SILValue, swift::SILValue, swift::SILValue)>, swift::SILBasicBlock*) + 1448
7  swift-frontend           0x00000001052fbc38 (anonymous namespace)::ArgEmitter::emitPackArg(llvm::MutableArrayRef<swift::Lowering::ArgumentSource>, swift::Lowering::AbstractionPattern) + 3676
8  swift-frontend           0x00000001052fad08 void llvm::function_ref<void (swift::Lowering::TupleElementGenerator&)>::callback_fn<(anonymous namespace)::ArgEmitter::emitExpanded(swift::Lowering::ArgumentSource&&, swift::Lowering::AbstractionPattern)::'lambda'(swift::Lowering::TupleElementGenerator&)>(long, swift::Lowering::TupleElementGenerator&) + 352
9  swift-frontend           0x00000001050dd5f0 swift::Lowering::AbstractionPattern::forEachTupleElement(swift::CanType, llvm::function_ref<void (swift::Lowering::TupleElementGenerator&)>) const + 188
10 swift-frontend           0x00000001052f9960 (anonymous namespace)::ArgEmitter::emit(swift::Lowering::ArgumentSource&&, swift::Lowering::AbstractionPattern, std::__1::optional<swift::AnyFunctionType::Param>) + 3228
11 swift-frontend           0x00000001052e80f0 (anonymous namespace)::ArgEmitter::emitSingleArg(swift::Lowering::ArgumentSource&&, swift::Lowering::AbstractionPattern, std::__1::optional<swift::AnyFunctionType::Param>) + 216
12 swift-frontend           0x00000001052f89ac (anonymous namespace)::ArgEmitter::emitPreparedArgs(swift::Lowering::PreparedArguments&&, swift::Lowering::AbstractionPattern) + 256
13 swift-frontend           0x0000000105304878 (anonymous namespace)::CallSite::emit(swift::Lowering::SILGenFunction&, swift::Lowering::AbstractionPattern, swift::CanTypeWrapper<swift::SILFunctionType>, (anonymous namespace)::ParamLowering&, llvm::SmallVectorImpl<swift::Lowering::ManagedValue>&, llvm::SmallVectorImpl<(anonymous namespace)::DelayedArgument>&, swift::ForeignInfo const&) && + 664
14 swift-frontend           0x0000000105304298 (anonymous namespace)::CallEmission::emitArgumentsForNormalApply(swift::Lowering::AbstractionPattern, swift::CanTypeWrapper<swift::SILFunctionType>, swift::ForeignInfo const&, llvm::SmallVectorImpl<swift::Lowering::ManagedValue>&, std::__1::optional<swift::SILLocation>&) + 1000
15 swift-frontend           0x00000001052ece7c (anonymous namespace)::CallEmission::apply(swift::Lowering::SGFContext) + 2028
16 swift-frontend           0x00000001052eb408 swift::Lowering::SILGenFunction::emitApplyExpr(swift::ApplyExpr*, swift::Lowering::SGFContext) + 3116
17 swift-frontend           0x000000010535837c swift::Lowering::SILGenFunction::emitExprInto(swift::Expr*, swift::Lowering::Initialization*, std::__1::optional<swift::SILLocation>) + 128
18 swift-frontend           0x0000000105416704 swift::Lowering::SILGenFunction::emitReturnExpr(swift::SILLocation, swift::Expr*) + 1024
19 swift-frontend           0x0000000105413f7c swift::ASTVisitor<(anonymous namespace)::StmtEmitter, void, void, void, void, void, void>::visit(swift::Stmt*) + 8848
20 swift-frontend           0x00000001054132f4 swift::ASTVisitor<(anonymous namespace)::StmtEmitter, void, void, void, void, void, void>::visit(swift::Stmt*) + 5640
21 swift-frontend           0x000000010538afc8 swift::Lowering::SILGenFunction::emitFunction(swift::FuncDecl*) + 492
22 swift-frontend           0x00000001052d6b1c swift::Lowering::SILGenModule::emitFunctionDefinition(swift::SILDeclRef, swift::SILFunction*) + 8420
23 swift-frontend           0x00000001052d73bc swift::Lowering::SILGenModule::emitOrDelayFunction(swift::SILDeclRef) + 216
24 swift-frontend           0x00000001052d49ec swift::Lowering::SILGenModule::emitFunction(swift::FuncDecl*) + 364
25 swift-frontend           0x000000010542ac8c (anonymous namespace)::SILGenType::visitFuncDecl(swift::FuncDecl*) + 32
26 swift-frontend           0x0000000105427234 (anonymous namespace)::SILGenType::emitType() + 424
27 swift-frontend           0x00000001052d4624 swift::ASTVisitor<swift::Lowering::SILGenModule, void, void, void, void, void, void>::visit(swift::Decl*) + 104
28 swift-frontend           0x00000001052db038 swift::ASTLoweringRequest::evaluate(swift::Evaluator&, swift::ASTLoweringDescriptor) const + 1804
29 swift-frontend           0x000000010541192c swift::SimpleRequest<swift::ASTLoweringRequest, std::__1::unique_ptr<swift::SILModule, std::__1::default_delete<swift::SILModule>> (swift::ASTLoweringDescriptor), (swift::RequestFlags)9>::evaluateRequest(swift::ASTLoweringRequest const&, swift::Evaluator&) + 196
30 swift-frontend           0x00000001052dff14 swift::ASTLoweringRequest::OutputType swift::Evaluator::getResultUncached<swift::ASTLoweringRequest, swift::ASTLoweringRequest::OutputType swift::evaluateOrFatal<swift::ASTLoweringRequest>(swift::Evaluator&, swift::ASTLoweringRequest)::'lambda'()>(swift::ASTLoweringRequest const&, swift::ASTLoweringRequest::OutputType swift::evaluateOrFatal<swift::ASTLoweringRequest>(swift::Evaluator&, swift::ASTLoweringRequest)::'lambda'()) + 528
31 swift-frontend           0x00000001048b9b90 swift::performCompileStepsPostSema(swift::CompilerInstance&, int&, swift::FrontendObserver*) + 920
32 swift-frontend           0x00000001048bce88 performCompile(swift::CompilerInstance&, int&, swift::FrontendObserver*) + 1684
33 swift-frontend           0x00000001048bbbb4 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) + 3572
34 swift-frontend           0x0000000104842a5c swift::mainEntry(int, char const**) + 3680
35 dyld                     0x0000000189680274 start + 2840

Expected behavior

I'm not sure if this should compile, so either an error or successful compilation.

Environment

swift-driver version: 1.115.1 Apple Swift version 6.0.3 (swiftlang-6.0.3.1.10 clang-1600.0.30.1)
Target: arm64-apple-macosx15.0

Additional information

No response

@Lancelotbronner Lancelotbronner added bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. crash Bug: A crash, i.e., an abnormal termination of software triage needed This issue needs more specific labels labels Jan 15, 2025
@Lancelotbronner
Copy link
Author

See also the Swift Forums post.

Additional example, adding the struct causes the crash.

func call<each Arg, Result, Failure>(
	_ f: (repeat each Arg) throws(Failure) -> Result,
	with args: (repeat each Arg)
) throws(Failure) -> Result {
	try f(repeat each args)
}

func test(x:Int,y:Int,z:Int) -> String {
	"\(x),\(y),\(z)"
}

print(call(test, with: (1,2,3)))

struct Executer<each Arg, Result, Failure: Error> {
	let task: (repeat each Arg) throws(Failure) -> Result

	func execute(with args: (repeat each Arg)) throws(Failure) {
		try call(task, with: args)
	}
}

print(Executer(task: test).execute(with: (2,3,5)))

@Lancelotbronner
Copy link
Author

Not sure if this is the same crash, but got another failing snippet:

public protocol Parser<Input, Output, ParsingFailure> {
	associatedtype Input
	associatedtype Output
	associatedtype ParsingFailure: Error

	func parse(_ input: inout Input) throws(ParsingFailure) -> Output
}

public extension Failures {
	struct Many<UnderlyingFailure: Error>: Error {
		public var underlyingFailures: [UnderlyingFailure]

		@usableFromInline
		init(underlyingFailures: [UnderlyingFailure]) {
			self.underlyingFailures = underlyingFailures
		}

		@usableFromInline
		init(reserveCapacity minimumCapacity: Int) {
			underlyingFailures = []
			underlyingFailures.reserveCapacity(minimumCapacity)
		}
	}
}

@usableFromInline
struct OneOfMany<Parsers: Parser>: Parser {
	public typealias ParsingFailure = Failures.Many<Parsers.ParsingFailure>

	@usableFromInline
	var parsers: [Parsers]

	@usableFromInline
	init(_ parsers: [Parsers]) {
		self.parsers = parsers
	}

	@inlinable
	func parse(_ input: inout Parsers.Input) throws(ParsingFailure) -> Parsers.Output {
		let original = input

		for parser in parsers.dropLast() {
			do {
				return try parser.parse(&input)
			} catch {
				input = original
			}
		}

		if let parser = parsers.last {
			do {
				return try parser.parse(&input)
			} catch {
			}
		}
		fatalError()
	}
}
0.	Program arguments: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -c /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Failure/Errors.swift /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Failure/MapFailure.swift /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Failure/ParsingError.swift /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Parser/OneOfBuilder+Alternation.swift -primary-file /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Parser/OneOfBuilder+OneOfMany.swift -primary-file /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Parser/OneOfBuilder.swift /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Parser/Parser.swift /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Parser/ParserBuilder.swift /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Parsers/Always.swift /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Parsers/Bool.swift /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Parsers/Map.swift /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Parsers/OneOf.swift /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Parsers/Optional.swift /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Parsers/Tuple.swift /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Printer/Printer.swift -emit-dependencies-path /Users/lancelot/Developer/Packages/swift-parsing/.build/arm64-apple-macosx/debug/Parse.build/OneOfBuilder+OneOfMany.d -emit-reference-dependencies-path /Users/lancelot/Developer/Packages/swift-parsing/.build/arm64-apple-macosx/debug/Parse.build/OneOfBuilder+OneOfMany.swiftdeps -emit-dependencies-path /Users/lancelot/Developer/Packages/swift-parsing/.build/arm64-apple-macosx/debug/Parse.build/OneOfBuilder.d -emit-reference-dependencies-path /Users/lancelot/Developer/Packages/swift-parsing/.build/arm64-apple-macosx/debug/Parse.build/OneOfBuilder.swiftdeps -target arm64-apple-macosx10.13 -Xllvm -aarch64-use-tbi -enable-objc-interop -sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.2.sdk -I /Users/lancelot/Developer/Packages/swift-parsing/.build/arm64-apple-macosx/debug/Modules -I /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -color-diagnostics -enable-testing -g -debug-info-format=dwarf -dwarf-version=4 -module-cache-path /Users/lancelot/Developer/Packages/swift-parsing/.build/arm64-apple-macosx/debug/ModuleCache -swift-version 6 -Onone -D SWIFT_PACKAGE -D DEBUG -new-driver-path /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-driver -empty-abi-descriptor -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift -enable-anonymous-context-mangled-names -file-compilation-dir /Users/lancelot/Developer/Packages/swift-parsing -Xcc -isysroot -Xcc /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.2.sdk -Xcc -F -Xcc /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -Xcc -fPIC -Xcc -g -module-name Parse -package-name swift_parsing -disable-clang-spi -target-sdk-version 15.2 -target-sdk-name macosx15.2 -external-plugin-path /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib/swift/host/plugins#/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/local/lib/swift/host/plugins#/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/bin/swift-plugin-server -plugin-path /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins -plugin-path /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/local/lib/swift/host/plugins -parse-as-library -o /Users/lancelot/Developer/Packages/swift-parsing/.build/arm64-apple-macosx/debug/Parse.build/OneOfBuilder+OneOfMany.swift.o -o /Users/lancelot/Developer/Packages/swift-parsing/.build/arm64-apple-macosx/debug/Parse.build/OneOfBuilder.swift.o -index-store-path /Users/lancelot/Developer/Packages/swift-parsing/.build/arm64-apple-macosx/debug/index/store -index-system-modules
1.	Apple Swift version 6.0.3 (swiftlang-6.0.3.1.10 clang-1600.0.30.1)
2.	Compiling with the current language version
3.	While evaluating request IRGenRequest(IR Generation for file "/Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Parser/OneOfBuilder+OneOfMany.swift")
4.	While emitting IR SIL function "@$s5Parse9OneOfManyV5parsey6OutputQz5InputQzzAA8FailuresO0D0Vy_14ParsingFailureQzGYKF".
 for 'parse(_:)' (at /Users/lancelot/Developer/Packages/swift-parsing/Sources/Parse/Parser/OneOfBuilder+OneOfMany.swift:38:2)
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
0  swift-frontend           0x0000000107a22a9c llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 56
1  swift-frontend           0x0000000107a20cf0 llvm::sys::RunSignalHandlers() + 112
2  swift-frontend           0x0000000107a23068 SignalHandler(int) + 292
3  libsystem_platform.dylib 0x0000000191f1ee04 _sigtramp + 56
4  swift-frontend           0x0000000102a084a8 (anonymous namespace)::IRGenSILFunction::emitSILFunction() + 6568
5  swift-frontend           0x0000000102a084a8 (anonymous namespace)::IRGenSILFunction::emitSILFunction() + 6568
6  swift-frontend           0x0000000102a0665c swift::irgen::IRGenModule::emitSILFunction(swift::SILFunction*) + 2088
7  swift-frontend           0x0000000102851834 swift::irgen::IRGenerator::emitGlobalTopLevel(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>> const&) + 3364
8  swift-frontend           0x00000001029bd5a8 swift::IRGenRequest::evaluate(swift::Evaluator&, swift::IRGenDescriptor) const + 4700
9  swift-frontend           0x0000000102a05ba8 swift::SimpleRequest<swift::IRGenRequest, swift::GeneratedModule (swift::IRGenDescriptor), (swift::RequestFlags)9>::evaluateRequest(swift::IRGenRequest const&, swift::Evaluator&) + 176
10 swift-frontend           0x00000001029c6394 swift::IRGenRequest::OutputType swift::Evaluator::getResultUncached<swift::IRGenRequest, swift::IRGenRequest::OutputType swift::evaluateOrFatal<swift::IRGenRequest>(swift::Evaluator&, swift::IRGenRequest)::'lambda'()>(swift::IRGenRequest const&, swift::IRGenRequest::OutputType swift::evaluateOrFatal<swift::IRGenRequest>(swift::Evaluator&, swift::IRGenRequest)::'lambda'()) + 784
11 swift-frontend           0x00000001029bfe90 swift::performIRGeneration(swift::FileUnit*, swift::IRGenOptions const&, swift::TBDGenOptions const&, std::__1::unique_ptr<swift::SILModule, std::__1::default_delete<swift::SILModule>>, llvm::StringRef, swift::PrimarySpecificPaths const&, llvm::StringRef, llvm::GlobalVariable**) + 180
12 swift-frontend           0x00000001023cf4bc generateIR(swift::IRGenOptions const&, swift::TBDGenOptions const&, std::__1::unique_ptr<swift::SILModule, std::__1::default_delete<swift::SILModule>>, swift::PrimarySpecificPaths const&, llvm::StringRef, llvm::PointerUnion<swift::ModuleDecl*, swift::SourceFile*>, llvm::GlobalVariable*&, llvm::ArrayRef<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>) + 156
13 swift-frontend           0x00000001023cace4 performCompileStepsPostSILGen(swift::CompilerInstance&, std::__1::unique_ptr<swift::SILModule, std::__1::default_delete<swift::SILModule>>, llvm::PointerUnion<swift::ModuleDecl*, swift::SourceFile*>, swift::PrimarySpecificPaths const&, int&, swift::FrontendObserver*) + 2176
14 swift-frontend           0x00000001023c9bd0 swift::performCompileStepsPostSema(swift::CompilerInstance&, int&, swift::FrontendObserver*) + 984
15 swift-frontend           0x00000001023cce88 performCompile(swift::CompilerInstance&, int&, swift::FrontendObserver*) + 1684
16 swift-frontend           0x00000001023cbbb4 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) + 3572
17 swift-frontend           0x0000000102352a5c swift::mainEntry(int, char const**) + 3680
18 dyld                     0x0000000191b68274 start + 2840

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. crash Bug: A crash, i.e., an abnormal termination of software triage needed This issue needs more specific labels
Projects
None yet
Development

No branches or pull requests

1 participant