Skip to content

[SR-2603] Crash with default function parameter body #45208

Open
@BigZaphod

Description

@BigZaphod
Previous ID SR-2603
Radar rdar://problem/28787005
Original Reporter @BigZaphod
Type Bug

Attachment: Download

Additional Detail from JIRA
Votes 0
Component/s Compiler
Labels Bug, 3.0Regression, CompilerCrash
Assignee None
Priority Medium

md5: 920e64667a2bdec078d83b2a065cd016

Issue Description:

I get the following crash in the Xcode 8 GM (which did not occur in prior Xcode betas):

CompileSwift normal x86_64 /Users/sean/Development/TEMP/SwiftCrash/SwiftCrash/Pathfinding.swift
    cd /Users/sean/Development/TEMP/SwiftCrash
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift -frontend -c -primary-file /Users/sean/Development/TEMP/SwiftCrash/SwiftCrash/Pathfinding.swift /Users/sean/Development/TEMP/SwiftCrash/SwiftCrash/BinaryHeap.swift /Users/sean/Development/TEMP/SwiftCrash/SwiftCrash/PriorityQueue.swift /Users/sean/Development/TEMP/SwiftCrash/SwiftCrash/ViewController.swift /Users/sean/Development/TEMP/SwiftCrash/SwiftCrash/AppDelegate.swift -target x86_64-apple-ios10.0 -enable-objc-interop -sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator10.0.sdk -I /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Products/Debug-iphonesimulator -F /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Products/Debug-iphonesimulator -enable-testing -g -module-cache-path /Users/sean/Library/Developer/Xcode/DerivedData/ModuleCache -D DEBUG -serialize-debugging-options -Xcc -I/Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/swift-overrides.hmap -Xcc -iquote -Xcc /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/SwiftCrash-generated-files.hmap -Xcc -I/Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/SwiftCrash-own-target-headers.hmap -Xcc -I/Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/SwiftCrash-all-target-headers.hmap -Xcc -iquote -Xcc /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/SwiftCrash-project-headers.hmap -Xcc -I/Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Products/Debug-iphonesimulator/include -Xcc -I/Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/DerivedSources/x86_64 -Xcc -I/Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/DerivedSources -Xcc -DDEBUG=1 -Xcc -working-directory/Users/sean/Development/TEMP/SwiftCrash -emit-module-doc-path /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/Objects-normal/x86_64/Pathfinding~partial.swiftdoc -Onone -module-name SwiftCrash -emit-module-path /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/Objects-normal/x86_64/Pathfinding~partial.swiftmodule -serialize-diagnostics-path /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/Objects-normal/x86_64/Pathfinding.dia -emit-dependencies-path /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/Objects-normal/x86_64/Pathfinding.d -emit-reference-dependencies-path /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/Objects-normal/x86_64/Pathfinding.swiftdeps -o /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/Objects-normal/x86_64/Pathfinding.o

0  swift                    0x000000011049bb6d PrintStackTraceSignalHandler(void*) + 45
1  swift                    0x000000011049b5b6 SignalHandler(int) + 470
2  libsystem_platform.dylib 0x00007fffb1c86bba _sigtramp + 26
3  libsystem_platform.dylib 0x0000000000000002 _sigtramp + 1312265314
4  swift                    0x000000010dafc494 (anonymous namespace)::Transform::transform(swift::Lowering::ManagedValue, swift::Lowering::AbstractionPattern, swift::CanType, swift::Lowering::AbstractionPattern, swift::CanType, swift::Lowering::SGFContext) + 8884
5  swift                    0x000000010db0411c (anonymous namespace)::TranslateArguments::translateSingle(swift::Lowering::AbstractionPattern, swift::CanType, swift::Lowering::AbstractionPattern, swift::CanType, swift::Lowering::ManagedValue, swift::SILParameterInfo) + 652
6  swift                    0x000000010dafe59b (anonymous namespace)::TranslateArguments::translate(swift::Lowering::AbstractionPattern, swift::CanType, swift::Lowering::AbstractionPattern, swift::CanType) + 1755
7  swift                    0x000000010dafe378 (anonymous namespace)::TranslateArguments::translate(swift::Lowering::AbstractionPattern, swift::CanType, swift::Lowering::AbstractionPattern, swift::CanType) + 1208
8  swift                    0x000000010dafd258 createThunk(swift::Lowering::SILGenFunction&, swift::SILLocation, swift::Lowering::ManagedValue, swift::Lowering::AbstractionPattern, swift::CanTypeWrapper<swift::AnyFunctionType>, swift::Lowering::AbstractionPattern, swift::CanTypeWrapper<swift::AnyFunctionType>, swift::Lowering::TypeLowering const&) + 1784
9  swift                    0x000000010dafa949 (anonymous namespace)::Transform::transform(swift::Lowering::ManagedValue, swift::Lowering::AbstractionPattern, swift::CanType, swift::Lowering::AbstractionPattern, swift::CanType, swift::Lowering::SGFContext) + 1897
10 swift                    0x000000010dac0409 swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visit(swift::Expr*, swift::Lowering::SGFContext) + 59017
11 swift                    0x000000010db121ab swift::Lowering::SILGenFunction::emitReturnExpr(swift::SILLocation, swift::Expr*) + 491
12 swift                    0x000000010dad2f4f swift::Lowering::SILGenFunction::emitGeneratorFunction(swift::SILDeclRef, swift::Expr*) + 431
13 swift                    0x000000010da4bc8a swift::Lowering::SILGenModule::emitAbstractFuncDecl(swift::AbstractFunctionDecl*) + 1738
14 swift                    0x000000010da4b1af swift::Lowering::SILGenModule::emitFunction(swift::FuncDecl*) + 31
15 swift                    0x000000010db17907 swift::Lowering::SILGenModule::visitExtensionDecl(swift::ExtensionDecl*) + 535
16 swift                    0x000000010da5819b swift::Lowering::SILGenModule::emitSourceFile(swift::SourceFile*, unsigned int) + 1835
17 swift                    0x000000010da59e2d swift::SILModule::constructSIL(swift::ModuleDecl*, swift::SILOptions&, swift::FileUnit*, llvm::Optional<unsigned int>, bool, bool) + 1629
18 swift                    0x000000010d8b116f performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*) + 19503
19 swift                    0x000000010d8aa265 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) + 17029
20 swift                    0x000000010d86782d main + 8685
21 libdyld.dylib            0x00007fffb1a7a255 start + 1
22 libdyld.dylib            0x0000000000000040 start + 1314414060
Stack dump:
0.  Program arguments: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift -frontend -c -primary-file /Users/sean/Development/TEMP/SwiftCrash/SwiftCrash/Pathfinding.swift /Users/sean/Development/TEMP/SwiftCrash/SwiftCrash/BinaryHeap.swift /Users/sean/Development/TEMP/SwiftCrash/SwiftCrash/PriorityQueue.swift /Users/sean/Development/TEMP/SwiftCrash/SwiftCrash/ViewController.swift /Users/sean/Development/TEMP/SwiftCrash/SwiftCrash/AppDelegate.swift -target x86_64-apple-ios10.0 -enable-objc-interop -sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator10.0.sdk -I /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Products/Debug-iphonesimulator -F /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Products/Debug-iphonesimulator -enable-testing -g -module-cache-path /Users/sean/Library/Developer/Xcode/DerivedData/ModuleCache -D DEBUG -serialize-debugging-options -Xcc -I/Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/swift-overrides.hmap -Xcc -iquote -Xcc /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/SwiftCrash-generated-files.hmap -Xcc -I/Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/SwiftCrash-own-target-headers.hmap -Xcc -I/Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/SwiftCrash-all-target-headers.hmap -Xcc -iquote -Xcc /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/SwiftCrash-project-headers.hmap -Xcc -I/Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Products/Debug-iphonesimulator/include -Xcc -I/Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/DerivedSources/x86_64 -Xcc -I/Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/DerivedSources -Xcc -DDEBUG=1 -Xcc -working-directory/Users/sean/Development/TEMP/SwiftCrash -emit-module-doc-path /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/Objects-normal/x86_64/Pathfinding~partial.swiftdoc -Onone -module-name SwiftCrash -emit-module-path /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/Objects-normal/x86_64/Pathfinding~partial.swiftmodule -serialize-diagnostics-path /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/Objects-normal/x86_64/Pathfinding.dia -emit-dependencies-path /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/Objects-normal/x86_64/Pathfinding.d -emit-reference-dependencies-path /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/Objects-normal/x86_64/Pathfinding.swiftdeps -o /Users/sean/Library/Developer/Xcode/DerivedData/SwiftCrash-gtkymxppldrkvievofpbiaqxdoab/Build/Intermediates/SwiftCrash.build/Debug-iphonesimulator/SwiftCrash.build/Objects-normal/x86_64/Pathfinding.o 
1.  While silgen emitDefaultArgGenerator  SIL function @_TIFE10SwiftCrashPS_11Pathfinding4pathFT4fromwx4Node2towxS1_6isGoalFTwxS1_wxS1__Sb_GSqGVS_4PathwxS1___A1_ for expression at [/Users/sean/Development/TEMP/SwiftCrash/SwiftCrash/Pathfinding.swift:78:81 - line:78:92] RangeText="{ $0 == $1 }"
2.  While emitting reabstraction thunk in SIL function @_TTRGRx10SwiftCrash11PathfindingrXFo_iVs11AnyHashableiS1__dSb_XFo_iwx4NodeiwxS2__dSb_

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugA deviation from expected or documented behavior. Also: expected but undesirable behavior.compilerThe Swift compiler itselfcrashBug: A crash, i.e., an abnormal termination of softwareregressionswift 3.0

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions