Команда не вдалася через сигнал: Помилка сегментації: 11


151

Я отримую помилку ...

Команда не вдалася через сигнал: Помилка сегментації: 11

... при спробі скласти мою програму Swift. Я використовую Xcode 6.1, намагаюся створити для iPhone 5 на iOS 8.1.

Мій код

import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var username: UITextField!
    @IBAction func signIn(sender: AnyObject) {

        PFUser.logInWithUsernameInBackground(username.text, password:"mypass") {
            (user: PFUser!, error: NSError!) -> Void in
            if user != nil {
                println("Logged In")
            } else {

                func myMethod() {
                    var user = PFUser()
                    user.username = username.text
                    user.password = " "
                    user.signUpInBackgroundWithBlock {
                        (succeeded: Bool!, error: NSError!) -> Void in
                        if error == nil {
                            // Hooray! Let them use the app now.
                        } else {
                                println("Signed Up")
                        }
                    }
                }

             println(error)
            }
        }
    }
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        Parse.setApplicationId("key here")
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
}

І текст помилки!

CompileSwift normal arm64 /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/ViewController.swift
    cd /Users/Alec/Desktop/Re-Chat/Re-Chat
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift -frontend -c -primary-file /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/ViewController.swift /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/AppDelegate.swift -target arm64-apple-ios8.0 -Xllvm -aarch64-use-tbi -target-cpu cyclone -target-abi darwinpcs -sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk -I /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Products/Debug-iphoneos -F /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Products/Debug-iphoneos -F /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat -g -import-objc-header /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/Re-Chat-Bridging-Header.h -module-cache-path /Users/Alec/Library/Developer/Xcode/DerivedData/ModuleCache -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/swift-overrides.hmap -Xcc -iquote -Xcc /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-generated-files.hmap -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-own-target-headers.hmap -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-all-target-headers.hmap -Xcc -iquote -Xcc /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-project-headers.hmap -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Products/Debug-iphoneos/include -Xcc -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/DerivedSources/arm64 -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/DerivedSources -Xcc -DDEBUG=1 -emit-module-doc-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController~partial.swiftdoc -Onone -module-name Re_Chat -emit-module-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController~partial.swiftmodule -serialize-diagnostics-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController.dia -emit-dependencies-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController.d -o /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController.o
0  swift                    0x0000000108145a68 llvm::sys::PrintStackTrace(__sFILE*) + 40
1  swift                    0x0000000108145f54 SignalHandler(int) + 452
2  libsystem_platform.dylib 0x00007fff86631f1a _sigtramp + 26
3  libsystem_platform.dylib 0x00007fd0ac1eb010 _sigtramp + 633049360
4  swift                    0x00000001075d4517 swift::Lowering::SILGenFunction::emitClosureValue(swift::SILLocation, swift::SILDeclRef, llvm::ArrayRef<swift::Substitution>, swift::AnyFunctionRef) + 1303
5  swift                    0x00000001075c599e swift::Lowering::SILGenFunction::visitFuncDecl(swift::FuncDecl*) + 190
6  swift                    0x000000010760987c swift::Lowering::SILGenFunction::visitBraceStmt(swift::BraceStmt*) + 380
7  swift                    0x000000010760c8e8 swift::ASTVisitor<swift::Lowering::SILGenFunction, void, void, void, void, void, void>::visit(swift::Stmt*) + 152
8  swift                    0x000000010760a0a5 swift::Lowering::SILGenFunction::visitIfStmt(swift::IfStmt*) + 757
9  swift                    0x000000010760c8f6 swift::ASTVisitor<swift::Lowering::SILGenFunction, void, void, void, void, void, void>::visit(swift::Stmt*) + 166
10 swift                    0x00000001076097e8 swift::Lowering::SILGenFunction::visitBraceStmt(swift::BraceStmt*) + 232
11 swift                    0x000000010760c8e8 swift::ASTVisitor<swift::Lowering::SILGenFunction, void, void, void, void, void, void>::visit(swift::Stmt*) + 152
12 swift                    0x00000001075d52dd swift::Lowering::SILGenFunction::emitClosure(swift::AbstractClosureExpr*) + 205
13 swift                    0x00000001075b4234 swift::Lowering::SILGenModule::emitClosure(swift::AbstractClosureExpr*) + 196
14 swift                    0x00000001075eef71 (anonymous namespace)::RValueEmitter::visitAbstractClosureExpr(swift::AbstractClosureExpr*, swift::Lowering::SGFContext) + 97
15 swift                    0x00000001075e1866 swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visit(swift::Expr*, swift::Lowering::SGFContext) + 2870
16 swift                    0x00000001075e24da swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visit(swift::Expr*, swift::Lowering::SGFContext) + 6058
17 swift                    0x00000001075cfa0b swift::Lowering::SILGenFunction::emitExprInto(swift::Expr*, swift::Lowering::Initialization*) + 235
18 swift                    0x00000001075ae824 swift::Lowering::RValueSource::materialize(swift::Lowering::SILGenFunction&) && + 196
19 swift                    0x0000000107604a69 swift::Lowering::RValueSource::materialize(swift::Lowering::SILGenFunction&, swift::Lowering::AbstractionPattern, swift::SILType) && + 233
20 swift                    0x00000001075f371c swift::Lowering::SILGenFunction::emitInjectOptionalValueInto(swift::SILLocation, swift::Lowering::RValueSource&&, swift::SILValue, swift::Lowering::TypeLowering const&) + 268
21 swift                    0x00000001075e9b8d swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visit(swift::Expr*, swift::Lowering::SGFContext) + 36445
22 swift                    0x00000001075e3e2b swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visit(swift::Expr*, swift::Lowering::SGFContext) + 12539
23 swift                    0x00000001075e202b swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visit(swift::Expr*, swift::Lowering::SGFContext) + 4859
24 swift                    0x00000001075cfab6 swift::Lowering::SILGenFunction::emitRValue(swift::Expr*, swift::Lowering::SGFContext) + 22
25 swift                    0x00000001075bffc4 (anonymous namespace)::ArgEmitter::emitExpanded(swift::Lowering::RValueSource&&, swift::Lowering::AbstractionPattern) + 836
26 swift                    0x00000001075bf582 (anonymous namespace)::ArgEmitter::emit(swift::Lowering::RValueSource&&, swift::Lowering::AbstractionPattern) + 98
27 swift                    0x00000001075b7ff8 (anonymous namespace)::CallEmission::apply(swift::Lowering::SGFContext) + 1128
28 swift                    0x00000001075b751a swift::Lowering::SILGenFunction::emitApplyExpr(swift::ApplyExpr*, swift::Lowering::SGFContext) + 58
29 swift                    0x00000001075e0d81 swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visit(swift::Expr*, swift::Lowering::SGFContext) + 81
30 swift                    0x00000001075ea00d swift::Lowering::SILGenFunction::emitIgnoredExpr(swift::Expr*) + 237
31 swift                    0x0000000107609829 swift::Lowering::SILGenFunction::visitBraceStmt(swift::BraceStmt*) + 297
32 swift                    0x000000010760c8e8 swift::ASTVisitor<swift::Lowering::SILGenFunction, void, void, void, void, void, void>::visit(swift::Stmt*) + 152
33 swift                    0x00000001075d4ee0 swift::Lowering::SILGenFunction::emitFunction(swift::FuncDecl*) + 256
34 swift                    0x00000001075b3659 swift::Lowering::SILGenModule::emitFunction(swift::FuncDecl*) + 233
35 swift                    0x00000001075cea93 swift::ASTVisitor<SILGenType, void, void, void, void, void, void>::visit(swift::Decl*) + 355
36 swift                    0x00000001075cd7eb SILGenType::emitType() + 203
37 swift                    0x00000001075c85ae swift::Lowering::SILGenModule::visitNominalTypeDecl(swift::NominalTypeDecl*) + 30
38 swift                    0x00000001075b555b swift::Lowering::SILGenModule::emitSourceFile(swift::SourceFile*, unsigned int) + 395
39 swift                    0x00000001075b581a swift::SILModule::constructSIL(swift::Module*, swift::SourceFile*, swift::Optional<unsigned int>) + 314
40 swift                    0x00000001075b5968 swift::performSILGeneration(swift::SourceFile&, swift::Optional<unsigned int>) + 72
41 swift                    0x000000010748be18 frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 3432
42 swift                    0x000000010748996d main + 1677
43 libdyld.dylib            0x00007fff8aa4c5c9 start + 1
Stack dump:
0.  Program arguments: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift -frontend -c -primary-file /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/ViewController.swift /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/AppDelegate.swift -target arm64-apple-ios8.0 -Xllvm -aarch64-use-tbi -target-cpu cyclone -target-abi darwinpcs -sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk -I /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Products/Debug-iphoneos -F /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Products/Debug-iphoneos -F /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat -g -import-objc-header /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/Re-Chat-Bridging-Header.h -module-cache-path /Users/Alec/Library/Developer/Xcode/DerivedData/ModuleCache -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/swift-overrides.hmap -Xcc -iquote -Xcc /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-generated-files.hmap -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-own-target-headers.hmap -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-all-target-headers.hmap -Xcc -iquote -Xcc /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Re-Chat-project-headers.hmap -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Products/Debug-iphoneos/include -Xcc -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/DerivedSources/arm64 -Xcc -I/Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/DerivedSources -Xcc -DDEBUG=1 -emit-module-doc-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController~partial.swiftdoc -Onone -module-name Re_Chat -emit-module-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController~partial.swiftmodule -serialize-diagnostics-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController.dia -emit-dependencies-path /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController.d -o /Users/Alec/Library/Developer/Xcode/DerivedData/Re-Chat-awwdkmqavitiqkcdsphwnhzhzzfb/Build/Intermediates/Re-Chat.build/Debug-iphoneos/Re-Chat.build/Objects-normal/arm64/ViewController.o 
1.  While emitting SIL for 'signIn' at /Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/ViewController.swift:14:15
2.  While silgen closureexpr SIL function @_TFFC7Re_Chat14ViewController6signInFS0_FPSs9AnyObject_T_U_FTGSQCSo6PFUser_GSQCSo7NSError__T_ for expression at [/Users/Alec/Desktop/Re-Chat/Re-Chat/Re-Chat/ViewController.swift:16:80 - line:45:9] RangeText="{
            (user: PFUser!, error: NSError!) -> Void in
            if user != nil {
                // Do stuff after successful login.

                println("Logged In")
            } else {

                func myMethod() {
                    var user = PFUser()
                    user.username = username.text
                    user.password = ""
                    // other fields can be set just like with PFObject


                    user.signUpInBackgroundWithBlock {
                        (succeeded: Bool!, error: NSError!) -> Void in
                        if error == nil {
                            // Hooray! Let them use the app now.
                        } else {
                                println("Signed Up")
                        }
                    }
                }


             println("error")
            }
        }"

Код, показаний у помилці, та код, який ви опублікували, відрізняються. Ваш код призначений для входу в систему, код помилки - це методи реєстрації. Ви встановили точку перерви в закритті, щоб спробувати визначити проблему?
Paulw11

Вам не потрібно здогадуватися. Введіть xcodebuild -verboseз терміналу, де знаходиться ваш проект, і дізнайтеся, яка саме помилка, де вона є і т. Д.
oyalhi

Відповіді:


44

Для всіх, хто стикався з цим ... Я виявив, що ця проблема була викликана імпортом користувальницької рамки, я не знаю, як її виправити. Але просто видалення імпорту та будь-яких елементів, що посилаються на код, з рамки виправляє проблему.

(╯ ° □ °) ╯︵ ┻━┻

Сподіваємось, це може врятувати когось на кілька годин, переслідуючи, який рядок викликає проблему.


1
Таку ж проблему я відчував у Xcode 7. Проблемою було справді кілька рядків коду, які я додав до свого швидкого файлу. Ці рядки споживають компонент із сторонньої бібліотеки. У моєму випадку це Еврика. Як тільки я видалив додані рядки. Він збудований ідеально
Асанга Девагуру

Я видалив протокол, і деякі класи все ще використовували його. XCode повинен був їх виділити, але в моєму випадку це не відбулося. Спасибі
harsh_v

3
Чи був Eureka і в моєму випадку під час оновлення до Xcode 7.3. Змінено на v1.5 і зробив встановлення стручка, тоді все було добре.
Лік

Зауваживши, що це не спрацювало для мене, поки я не очистив проект (після заміни користувальницької рамки / імпорту). Дякую за вашу відповідь, безумовно, врятував мені час.
AddisDev

1
Оновлення стручка та перевстановлення лібери зробило мені трюк спасибі за вашу відповідь
Kamal Upasena

93

Ви можете отримати цю помилку, коли компілятор занадто розгубиться з приводу того, що відбувається у вашому коді. Я помітив, що у вас є ряд тих, що здаються функціями, вкладеними в функції. Ви можете спробувати прокоментувати щось за той час, щоб побачити, чи помилка усувається. Таким чином, ви можете зануритися в проблемну область. Ви не можете використовувати точки перерви, оскільки це помилка часу компіляції, а не помилка часу запуску.


1
Дякую, але виявилося, що це стосується архітектури. Дивно, так?
Алек.

3
@ParanoidAndroid Ви можете, будь ласка, детально пояснити, у чому була проблема? Я також отримую це питання
Олексій

Я затримався і на цій помилці. Я створював розширення з більшого класу і переміщував деякі функції з великого класу в розширення. Я створив пару файлів як розширення, але, як тільки я створив 4-й, я почав отримувати цю помилку. #swiftisnotready .... grrr
C0D3

@ c0d3Junk13 Я також зіткнувся з проблемою розширення, і це викликано назвою функції, як і ім'я класу.
Женьшань Ю.

Я отримав це за те, що не вказує необов'язковий параметр (другий параметр), схоже, третинний оператор, перш ніж він плутає Xcode 6.3 addPointforTeamAtPosition(command == extensionCommandTeam1Point ? 0 : 1, pointKind: .Regular).
Rivera

45

Нещодавно я зіткнувся з тією ж проблемою, і спробую узагальнити те, як я її вирішив, оскільки багато цих відповідей є видовими, щоб допомогти всім.

1. Спочатку подивіться внизу повідомлення про помилку, щоб виявити файл та функцію, яка спричиняє помилку сегментації.

Повідомлення про помилку

2. Тоді я дивлюся на цю функцію і коментую її. Я склав, і зараз це спрацювало. Потім я вилучав коментарі з частин функції за один раз, поки я не потрапив на рядок, який відповідав за помилку. Після цього я зміг це виправити, і все працює. :)


2
Останні пару рядків дають найкращі підказки. Ця відповідь дуже допомогла!
AppreciateIt

1
Це має бути прийнятою відповіддю. Причина помилки сегментації може відрізнятися, і це правильний спосіб діагностики.
Хуан Карлос Оспіна Гонсалес

16

Для мене це було викликано зміною синтаксису Parse SDK у Swift 2.0. Якщо ви використовуєте Parse та переходите на Swift 2.0, змінюються такі синтаксиси:

Швидкий 1.2:

myPFQuery.findObjectsInBackgroundWithBlock({ (queryResults: [AnyObject]?, error: NSError?) -> Void in

    // CODE

})

Swift 2.0:

myPFQuery.findObjectsInBackgroundWithBlock { (queryResults: [PFObject]?, error: NSError?) -> Void in

    // CODE

}

Видалення першого "(" і останнього ")" - це те, що спричинило найбільшу проблему. Взяв мене АГЕС, щоб знайти це!


Це безумовно винуватець, однак, ваш рядок коду не робить для мене виправлення. Будь-які нові деталі?
Лукас Ацопарді

Ви впевнені, що знайшли всі екземпляри та змінили їх усі? Крім того, я вважаю, що також змінилися дзвінки до наступного (видалення кулака та останньої дужки, тому код повинен читатись так) ... pfObject.saveInBackgroundWithBlock {(успіх: Bool, помилка: NSError?) -> Недійсний // код}
AT3D

точний. Робота в порядку
Сарат SASI

Отже, синтаксис закриття зачинення викликав і це питання?
Beltalowda

7

Я потрапив на цю помилку. Після деяких розчарувань я спробував очистити Xcode і все почало працювати знову. Просто залишивши це тут для подальшого ознайомлення.


7

Коли я отримав цю помилку при перетворенні від Swift до Swift 2.0, вона чітко вказує на певний файл (blahClass.swift), у якого є проблема, і він окреслив усі попередження та помилки в тексті повідомлення про помилку. Я пройшов і вирішив це вручну, і тепер додаток чудово складається.


3
Просто додайте сюди ще одну точку даних. Я також отримував цю помилку під час міграції Swift 2. Я в кінцевому підсумку відкрив файл, в якому він не працював, і прокоментував більшу частину коду. Потім додаток складено, і я зміг відкоментувати код на кілька рядків одночасно, щоб відстежити проблему.
Чад Павлиська

7
object.doubleValue = dict["doublevalue"] as! Int

Я знайшов причину після того, як відкатувався кожен крок, який я зробив .... примушуючи передати Int для подвійної змінної


1
У моєму випадку я отримав помилку при примусовому переливанні Int на змінну String.
Ян Пінто

Гаразд, але хіба це не дає вам помилку компіляції таким чином? !!
SoliQuiD

Тож помилка, про яку повідомляється у сліді стека, є такою, як описана вище, і не стосується примусового відтворення в моєму випадку.
Ян Пінто

6

Для мене це було викликано деяким моїм кодом. Детальний вихід компілятора в XCode насправді чітко вказав метод, де він зазнав збоїв.

Потім я прокоментував весь код у методі, змусив його повернути нуль, і він компілював. Потім я повторно реалізував метод, використовуючи різний і набагато простіший код, і він працював.

Я подав звіт про помилку в Apple. Це - правда, трохи божевільний - код, який спричинив збій у XCode 7 / Swift 2.0.

  func numberAndTitleFromDirectoryName(dirName: String) -> (Int, String)? {
    let components = dirName.characters.split(maxSplit: 1, allowEmptySlices: false) { $0 == " " }.map { String($0) }.map { String($0) }
    if let number = components.first?.toInt() {
        if let title = components.last {
            return (number, title)
        }
    }
    return nil;
  }

Напевно, я трохи пережив використання функції карти там ... Нова версія набагато простіша, а також більш зрозуміла для людини. Все-таки компілятор не повинен виходити з ладу. У гіршому випадку це повинно показати деякі помилки. Код, як працює у Swift 1.x


4

У мене були подібні проблеми з Xcode 7.3 та iOS 9.3. Command failed due to signal: Segmentation fault: 11

Знімок екрана

Основні кроки, такі як чистий (cmd + shift + k) код, Видалити отримані дані та Quit Xcode, не спрацювали.

У моєму коді був якийсь винуватець.

Це було [txtUserName.text.characters.count = 0]

У вашому випадку перегляньте свій код і виправте винуватця.


13
Зауважте, що якщо ваш код не працює, дотримуйтесь наведеної вище підказки "Перегляньте свій код і виправте винуватця", хто знав ....
Stuart P.

3

Один з випадків, що ви назвали тип даних змінної getter, як її ім'я. Наприклад:

var someInstance: someInstance {...

Оновлення №1. Зверніть увагу на змінну _a, яка не є Int, і ви забудете вказати правильний тип повернення. Випуск відбувається у більш ніж двох операндах оператора infix.

function getInt(value: Int) -> Int {
    return _a? ?? _b?.count ?? 0
}

3

Легке виправлення, якщо використовувати git.

1) У терміналі:

git stash

2) Зникнення вини Seg.

3) Запустіть додаток.

4) У терміналі:

git stash pop

5) Xcode тепер говорить вам про справжню проблему.


1
Гей, хлопець ! Я хочу вам дуже подякувати Ти врятував мені сильний головний біль і багато часу та сил!
stefat

3

Будь-яка збійка - це помилка компілятора (чи дійсний ваш код). Спробуйте останню бета-версію, і якщо вона все-таки виходить з ладу, надішліть звіт про помилку на bugs.swift.org . Команда Swift дуже чуйно реагує на них.


Але я виявив, що це вдається запобігти в моєму кінці, але я не можу пригадати, як я це виправив ..
Алек

2

Я позбувся цієї помилки, дотримуючись.

У мене було додано багато фреймворків у "Посилання бінарних із бібліотеками" і я також використовував мостиковий заголовок.

Я знову додав усі рамки і знову додав мостовий заголовок. Це вирішило моє питання.


2

Я використовую Xcode 8.3 / Swift 3

Я використовував відповідь @Ron B., щоб переглянути весь код і прокоментувати різні функції, поки не отримав успішну збірку. Виявляється, саме async trailing closuresце спричинило мою помилку:

Мої закриття:

let firstTask = DispatchWorkItem{
     //self.doSomthing()
}
let secondTask = DispatchWorkItem{
     //self.doSomthingElse()
}

//trailing closure #1
DispatchQueue.main.asyncAfter(deadline: .now() + 10){firstTask}

//trailing closure #2 
DispatchQueue.main.asyncAfter(deadline: .now() + 20){secondTask}

Після того, як я використав синтаксис автозаповненняSegmentation fault: 11 було Віднесені

//autocomplete syntax closure #1
DispatchQueue.main.asyncAfter(deadline: .now() + 10, execute: firstTask)

//autocomplete syntax closure #2
DispatchQueue.main.asyncAfter(deadline: .now() + 20, execute: secondTask)

2

введіть тут опис зображення

У мене така ж проблема, тому я спробував переключитися? швидку, однофайлову оптимізацію [-O] замість швидкої, оптимізація цілого модуля, тоді вона працювала, будувалась, архівувала в Appstore.

Я думаю, що деякі рамки, які ми використовували, потребують рефактора для адаптації до швидкого, повного рівня оптимізації модуля . Але я все одно не знайшов цих рамок.


2

У моєму випадку це сталося в Xcode 11 beta 3 зі Swift 5 та за допомогою SwiftUI.

Мій погляд має властивість @State, як це:

 @State private var normInfo: NormInfo?

проблему вирішили шляхом явної ініціалізації nil.


1

У мене був цей код 11, коли я намагався створити схему випуску. Він вказав на один клас контролера перегляду (стрімкий), який мав цей фрагмент коду всередині:

 required init(coder aDecoder: NSCoder) {
    super.init(coder: aDecoder)
    stuff...
}

Проблема полягала в тому, що коли я додав до нього суперклас, я забув також застосувати init. Так що super.init спричинив помилку компілятора. Помилка сегментації: 11 Якщо у вас є така проблема, добре перевірити також будь-які суперкласи.


1

У мене також була помилка сегментації 11 під час імпорту рамки, зробленої власноруч (так, я відчував себе справді німим).

Після розробки рамки протягом місяців та інтеграції її в основний проект із змішаними Obj-C та Swift, імпорт до Obj-C став проблемою, але як тільки я написав import MySwiftProject у Swift, все пекло вирвалося.

Коротше кажучи, проблема полягала в тому, що я створив деякі власні методи, які забезпечують типізацію NSNotificationsвикористання закриття, наприклад:

func post(a : Int, b : String)
{
    NSNotificationCenter.defaultCenter().postNotification("notification", object: nil, userInfo: ["a" : a, "b" : b])
}

func observe(block : (a : Int, b : String) -> ()) -> NSObjectProtocol
{
    return  NSNotificationCenter.defaultCenter().addObserverForName("notification", object: nil, queue: nil)
    {
        (n : NSNotification!) -> () in

        // Unwrap the notification payload and provide types
        if let a = n.userInfo?["a"] as? Int, let b = n.userInfo?["b"] as? String
        {
            block(a, b)
        }
    }
}

(Насправді код вище я робив із шаблоном, але це вже інша історія)

Головний винуватець? Це:

func ... -> NSObjectProtocol

Мабуть, Apple може використовувати NSObjectProtocolв декларації NSNotificationметодів, але коли я це роблю, вона вводить a Segfault 11. Заміна NSObjectProtocolнаAnyObject розв'язуваної аварії.

На жаль, це може не вирішити вашу проблему, оскільки segfault 11 є просто загальним збоєм компілятора, але ви можете вжити заходів для його вирішення. На це у мене пішло близько 2 годин, але ось що я зробив:

  1. Створіть новий проект, тиражуючи структуру, яку ви мали. У моєму випадку я створив швидкий проект контролера єдиного виду і додав швидку рамку всередину як інший проект.
  2. Скопіюйте весь вихідний код з одного в інший.
  3. Перейдіть до фази компіляції та починайте видаляти файли для компіляції, спробуйте відключити фрагменти коду, які дуже швидко хакі (як моя типізація NSNotification).
  4. Кожен раз, коли ви вносите зміни, робіть чисте ( + K), будуйте ( + B) та виправляйте будь-які помилки.
  5. Повторюйте з 3 до тих пір, поки помилка сегментації не піде.

1

У моєму випадку причиною було те, що клас був оголошений в іншому класі в межах розширення.

extension classOrig {
    class classChild {
        class classGrandChild {
            static let aVariable : String = "SomeValue";
        }
    }
}

Це призвело до помилки з мого боку. У мене було декілька рамок у моєму проекті, але цього раніше не сталося.


1

Я також деякий час боровся з цим. Я модернізував свій код до Swift 2 з Xcode 7.2, і для мене проблема полягала в наступному:

self.mainScrollView.documentView!.subviews.reverse() as! [MainSubView]

Який мені довелося змінити:

(self.mainScrollView.documentView!.subviews as! [MainSubView]).reverse()

1

Я отримав цю помилку, коли я переосмислював властивість у підкласі, і я не повторив декларацію властивості точно.

Базовий клас:

var foo: String! {return nil}

Підклас:

override var foo: String {return "bar"} // missing the implicit unwrap operator


Як це відповідає на питання?
Томас Аюб

@Thomas. Це не так. Але виходячи з безлічі інших подібних відповідей - "ось як я отримав цю помилку ..." - здавалося, добре внести свій досвід із цією помилкою, сподіваючись, що це вбереже когось іншого розчарування. Лемме знаю, якщо ти вважаєш це недоречним.
Мюррей Сагал

@MurraySagal щось подібне було причиною і для мене
larromba


1

Уважно прочитайте повідомлення про налагодження.

в моєму випадку я зіткнувся з цією помилкою, тому що я використав один помилковий "=" замість подвійного "=".

if aString.characters.count = 2 {...}

Те саме було і для мене. Це свого роду звичайні помилки друку, які всі роблять. Компілятор зазвичай скаржиться на це відразу. Однак, якщо змінна трохи складніша, як масив Tuples або щось подібне, компілятор просто божеволіє і не може вказати на цю конкретну просту помилку, показуючи натомість "помилку сегментації".
Віталій

1

Жодна з цих відповідей не працювала для мене, але я знайшов своє питання. Це стосувалося поводження з помилками (у розділі «Відключення розповсюдження помилок»). У мене був такий метод:

func getSlider() throws -> UISlider {
  ... // code that could throw an error
  return UISlider()
}

Посилання на це так:

func anotherMethod() -> Float {
  return try! getSlider().value
}

дав помилку. Але, перейшовши на це, воно пішло:

func anotherMethod() -> Float {
  return (try! getSlider()).value
}

те саме для мене. Що я тільки робив замість цьогоlet slider = try! getSlider(); slider.value;
Мед

1

Я також зіткнувся з цією проблемою .... очевидно, це загальна помилка або види ... коли xcode плутається .... у моєму випадку у мене було 3 варіанти, яким я призначав значення з масиву .. .. але я не вказав тип даних у кожному елементі масиву .... як тільки я це зробив, це вирішило проблему ....


1
Як би приємно ваша відповідь була майбутнім відвідувачам, це питання вже понад рік і вже має 30 відповідей, тому навряд чи багато людей помітять вашу відповідь. Також я хотів би ввічливо зазначити, що, хоча я розумію, що ви намагаєтесь сказати, відповіді, як правило, набагато корисніші для читачів, які проходять повз, коли ви використовуєте належну граматику англійської мови, тому, якщо хочете, редагуйте свої посаду, щоб виправити цю частину. Решта, однак, приголомшливі, і не відволікайте!
Іся Медоуз

1

У моєму випадку я оголосив таке властивість в одному з мого підкласу ViewControllers:

@property NSString * title

Я думаю, це суперечило вже наявній titleвласності в с ViewController. Я перейменував цю властивість на щось інше і відновив її використання, і помилка зникла.


1

У моєму випадку це було викликано спробою використання функції, яка повертала NSNumber як аргумент, коли очікувалося подвійне. Моя порада - обережно змішуючи об’єкти Objective C з типами даних Swift. І як і багато інших запропонували, коментуйте рядки, поки не визначите, який з них викликає помилку. (Навіть якщо ви створюєте інші помилки, роблячи це, ви можете просто проігнорувати їх і побачити, що змушує помилку сегментації помилок.)


1

Для мене я блокував основну нитку.

Що я зробив, щоб виправити це за допомогою GCD (див. Нижче)

dispatch_async(dispatch_get_main_queue(),      
})

1

Звіт про помилку людини:

У моєму випадку винуватець проходив у масиві замість варіативного параметра . Тобто для підпису:

// Note the variadic parameter
func addSubview(subview subview: UIView, constrain: NSLayoutAttribute...)

Я пройшов:

// Compile-time error, "constrain" parameters have array brackets
someUIView.addSubview(subview: someOtherView, constrain: [.Leading, .Top, .Bottom, .Trailing])

а не:

// Correct
someUIView.addSubview(subview: someOtherView, constrain: .Leading, .Top, .Bottom, .Trailing)

1

У мене на Mac Mac виникла помилка сегментації за допомогою ботів Xcode. Помилка сегмента траплялася лише під час етапу складання тестування, а не під час створення або запуску локально. Тільки в ботах Xcode під час складання тестування.

Я використовую macOS Sierra та Xcode 8, з кодом, перетвореним на Swift 2.3.

Нарешті я знайшов рядок, що спричиняє помилку Seg, це було викликано:

public let isIpad = UIDevice.currentDevice().userInterfaceIdiom == .Pad

Який оголошувався поза класом як константа. Змінивши його, щоб перевірити userInterfaceIdiom під час виконання, виправлено проблему.

Сподіваємось, що це допомагає комусь іншому!

Це журнал помилок з моєї помилки Seg:

0  swift                    0x000000010f93d76b llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 43
1  swift                    0x000000010f93ca56 llvm::sys::RunSignalHandlers() + 70
2  swift                    0x000000010f93ddbf SignalHandler(int) + 287
3  libsystem_platform.dylib 0x00007fffb24aabba _sigtramp + 26
4  libsystem_platform.dylib 0x00007fbbfff49ae0 _sigtramp + 1302982464
5  swift                    0x000000010db79996 (anonymous namespace)::Traversal::visit(swift::Expr*) + 118
6  swift                    0x000000010db7b880 (anonymous namespace)::Traversal::visitApplyExpr(swift::ApplyExpr*) + 128
7  swift                    0x000000010db799eb (anonymous namespace)::Traversal::visit(swift::Expr*) + 203
8  swift                    0x000000010db78f45 swift::Expr::walk(swift::ASTWalker&) + 53
9  swift                    0x000000010d6d2c87 walkForProfiling(swift::AbstractFunctionDecl*, swift::ASTWalker&) + 231
10 swift                    0x000000010d6d2719 swift::Lowering::SILGenProfiling::assignRegionCounters(swift::AbstractFunctionDecl*) + 553
11 swift                    0x000000010d6de348 (anonymous namespace)::SILGenType::emitType() + 952
12 swift                    0x000000010d6ddf1e swift::Lowering::SILGenModule::visitNominalTypeDecl(swift::NominalTypeDecl*) + 30
13 swift                    0x000000010d6625eb swift::Lowering::SILGenModule::emitSourceFile(swift::SourceFile*, unsigned int) + 731
14 swift                    0x000000010d663139 swift::SILModule::constructSIL(swift::ModuleDecl*, swift::SILOptions&, swift::FileUnit*, llvm::Optional<unsigned int>, bool, bool) + 793
15 swift                    0x000000010d6635a3 swift::performSILGeneration(swift::FileUnit&, swift::SILOptions&, llvm::Optional<unsigned int>, bool) + 115
16 swift                    0x000000010d491c18 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&) + 12536
17 swift                    0x000000010d48dc79 frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 2777
18 swift                    0x000000010d489765 main + 1957
19 libdyld.dylib            0x00007fffb229e255 start + 1
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.