向我的UIViewExtension.swift
文件中的UIView
添加一个(方便的)计算的height
属性会导致Swift编译器分段错误...这里可能会出什么问题呢?
0 swift 0x00000001061e5608 llvm::sys::PrintStackTrace(__sFILE*) + 40
1 swift 0x00000001061e5af4 SignalHandler(int) + 452
2 libsystem_platform.dylib 0x00007fff894da5aa _sigtramp + 26
3 libsystem_platform.dylib 0xb03939841e997c88 _sigtramp + 2504775416
4 swift 0x00000001064c8bb9 swift::NominalTypeDecl::getMembers(bool) const + 41
5 swift 0x00000001055efab9 swift::irgen::ClassMetadataLayout<(anonymous namespace)::FindClassMethodIndex>::addClassMembers(swift::ClassDecl*) + 329
6 swift 0x00000001055e97b2 swift::irgen::emitVirtualMethodValue(swift::irgen::IRGenFunction&, llvm::Value*, swift::SILType, swift::SILDeclRef, swift::CanTypeWrapper<swift::SILFunctionType>, swift::ResilienceExpansion) + 434
7 swift 0x00000001056550d3 swift::SILVisitor<(anonymous namespace)::IRGenSILFunction, void>::visit(swift::ValueBase*) + 42611
8 swift 0x000000010564a266 swift::irgen::IRGenModule::emitSILFunction(swift::SILFunction*) + 8678
9 swift 0x00000001055cb6f8 swift::irgen::IRGenModule::emitGlobalTopLevel() + 184
10 swift 0x00000001056376e3 performIRGeneration(swift::IRGenOptions&, swift::Module*, swift::SILModule*, llvm::StringRef, llvm::LLVMContext&, swift::SourceFile*, unsigned int) + 1859
11 swift 0x0000000105638033 swift::performIRGeneration(swift::IRGenOptions&, swift::SourceFile&, swift::SILModule*, llvm::StringRef, llvm::LLVMContext&, unsigned int) + 51
12 swift 0x00000001055aa65a frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 4842
13 swift 0x00000001055a935d main + 1533
14 libdyld.dylib 0x00007fff8a82e5fd start + 1
1. While emitting IR SIL function @_TFCSo6UIViewg6heightSd for 'anonname=0x7ff422892fd0' at <path redacted>/UIViewExtension.swift:60:5
<unknown>:0: error: unable to execute command: Segmentation fault: 11
<unknown>:0: error: swift frontend command failed due to signal (use -v to see invocation)
Command /Applications/Xcode6-Beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift failed with exit code 254
如果需要更多信息来破解这篇文章,请发表评论。谢谢!
编辑:
下面是一个相关的.xcodeproj,它返回这个问题的编译器错误。
发布于 2014-10-06 00:18:02
我之所以出现这个错误,是因为我正在执行以下操作:
if(currentMeal?.State == .Deleted){
}
而不是
if(currentMeal!.State == .Deleted){
}
所以我认为可选的不在if条件中展开可能会导致这个错误
发布于 2016-02-08 00:32:19
当您在Swift中遇到编译器segfault时,您不会得到方便的行号和错误消息。下面是如何追踪问题的方法:
SegFaultDebugger.swift
的新文件。SegFaultDebugger.swift
.此时,会发生以下三种情况之一:
SegFaultDebugger.swift
移回原始文件,并将一组不同的方法移到SegFaultDebugger.swift
中。RepeatSegFaultDebugger.swift
:中得到一个段错误,太棒了!现在使用二进制搜索将段错误锁定到特定的方法,直到您可以找出是什么构造导致了it.发布于 2015-11-27 22:08:55
我在扩展我的一个协议和输入错误的可选类型参数时遇到了这个错误。
protocol SomeProtocolName: class {
var someProtocolVariable: String { get set }
func someProtocolFunction(someProtocolVariable: String)
}
// MARK:
extension SomeProtocolName {
func someProtocolFunction(someProtocolVariable: String?) {
self.someProtocolVariable = someProtocolVariable
}
}
prototype中的函数参数String
和extension中的String?
中的差异导致了分割错误11。
https://stackoverflow.com/questions/24222644
复制相似问题