We have a Swift project for an UIKit app that is using Storyboards. Everything was fine until I decided to lower the Minimum deployment target of the app to iOS 7. When building the app I hit an assert in the ibtool which is trying to compile the storyboard. The error goes like this:
2015-06-12 11:49:07.216 ibtoold[41058:6974134] [MT] DVTAssertions: ASSERTION FAILURE in /SourceCache/IDEInterfaceBuilder/IDEInterfaceBuilder-7702/InterfaceBuilderKit/Connections/IBConnection.m:182
Details: Source and destination must be unique
Object: <IBCocoaTouchStoryboardPushSegue: 0x7fdea9bce8a0>
Method: -setDestination:
Thread: <NSThread: 0x7fdea2c07820>{number = 1, name = main}
Hints: None
Backtrace:
0 0x00000001015e0147 -[DVTAssertionHandler handleFailureInMethod:object:fileName:lineNumber:assertionSignature:messageFormat:arguments:] (in DVTFoundation)
1 0x00000001015dfb9f _DVTAssertionHandler (in DVTFoundation)
2 0x00000001015dfe8e _DVTAssertionFailureHandler (in DVTFoundation)
3 0x00000001023ff472 -[IBConnection setDestination:] (in IDEInterfaceBuilderKit)
4 0x00000001023fe5c9 +[IBConnection connectionWithSource:label:andDestination:] (in IDEInterfaceBuilderKit)
5 0x00000001086aa798 (in IDEInterfaceBuilderCocoaTouchIntegration)
6 0x0000000108704abb (in IDEInterfaceBuilderCocoaTouchIntegration)
7 0x0000000102481472 -[IBDocument updateConnectionsAfterEnablingOrDisablingConfigurations] (in IDEInterfaceBuilderKit)
8 0x0000000102482194 __35-[IBDocument disableConfigurations]_block_invoke (in IDEInterfaceBuilderKit)
9 0x0000000102481beb -[IBDocument maintainCanvasCentersWhileTransformingCanvasPositions:] (in IDEInterfaceBuilderKit)
10 0x000000010248209c -[IBDocument disableConfigurations] (in IDEInterfaceBuilderKit)
11 0x000000010868852c (in IDEInterfaceBuilderCocoaTouchIntegration)
12 0x0000000102497469 -[IBDocumentAutolayoutManager runBlockInNewArbitrationStackEntryWithBehavior:block:] (in IDEInterfaceBuilderKit)
13 0x000000010247de2b -[IBDocument modifyViewsInAutolayoutSafeWayDuring:] (in IDEInterfaceBuilderKit)
14 0x00000001086884e2 (in IDEInterfaceBuilderCocoaTouchIntegration)
15 0x000000010865d1e5 (in IDEInterfaceBuilderCocoaTouchIntegration)
16 0x000000010244628f -[IBDocument finishChangingTargetRuntimeInCompiledIntermediateDocument] (in IDEInterfaceBuilderKit)
17 0x00000001024a5811 __85-[IBDocumentCompiler invokeWithIntermediateDocumentOfTargetRuntime:alwaysCopy:block:]_block_invoke (in IDEInterfaceBuilderKit)
18 0x00000001024a55a9 -[IBDocumentCompiler invokeWithIntermediateDocument:] (in IDEInterfaceBuilderKit)
19 0x00000001024a574d -[IBDocumentCompiler invokeWithIntermediateDocumentOfTargetRuntime:alwaysCopy:block:] (in IDEInterfaceBuilderKit)
20 0x00000001026aa61c -[IBStoryboardDocumentCompiler compileWithOptions:error:] (in IDEInterfaceBuilderKit)
21 0x00000001024a5937 +[IBDocumentCompiler compileContentsOfDocument:options:error:] (in IDEInterfaceBuilderKit)
22 0x0000000102460550 __47-[IBDocument compiledPackageWithOptions:error:]_block_invoke (in IDEInterfaceBuilderKit)
23 0x0000000102498ee5 -[IBDocumentAutolayoutManager assertIfArbitrationIsScheduledDuring:] (in IDEInterfaceBuilderKit)
24 0x00000001024604a7 -[IBDocument compiledPackageWithOptions:error:] (in IDEInterfaceBuilderKit)
25 0x00000001013e9f0a (in ibtoold)
26 0x00000001013e6b40 (in ibtoold)
27 0x00000001013e9370 (in ibtoold)
28 0x00000001013ef233 (in ibtoold)
29 0x00000001013ef7b0 (in ibtoold)
30 0x00000001013ef683 (in ibtoold)
31 0x00000001013de60a (in ibtoold)
32 0x00000001013eee2c (in ibtoold)
33 0x00000001013ee074 (in ibtoold)
34 0x00007fff9289f5c9 start (in libdyld.dylib)
35 0x0000000000000002
Command /Applications/Xcode.app/Contents/Developer/usr/bin/ibtool failed with exit code 255
I checked all segues (and they are a lot) but I din't seem to see something wrong. Also when the Minimum deployment target is 8.x there is not a problem.