Segfault: 11 only when running tests (XCode 8, Swift 2.3)


(Thomas Abend) #1

Since moving a mixed Swift and Objective-c project to XCode 8 with Swift
2.3, I have been getting a "Command failed due to signal: Segmentation
fault: 11" error every time I run my tests after making a change in any of
the test files.

When I click on the error for more information I see:

<module-includes>:1:9: note: in file included from <module-includes>:1:
#import "Headers/Utilities.h"
    ^
/Users/.../Utilities.framework/Headers/Utilities.h:18:9: error:
include of non-modular header inside framework module 'Utilities'
#import <Utilities/NSString+Utilities.h>
^

And basically just a bunch of similar errors following that ending in:

<unknown>:0: error: could not build Objective-C module 'Utilities'

Utilities in this case is a framework that I made. All of the headers in
the Utilities.h file are imported with angle brackets and the headers are
marked as public.

After it segfaults, it will run properly until I make a change to the test
file. It only has this issue when testing, not when building or running.

Other things I've tried:

   - Changing the framework and tests to allow non modular includes
   - Enabling/disabling bitcode

Any help would be appreciated.


(Jordan Rose) #2

Can you double-check that all of your Utilities headers are Public or Private headers (not Project)? You can check this under the Build Phases tab for the framework target.

If that doesn't do it, we can probably help more with a bug report, if you're willing to share your project.

Jordan

···

On Oct 6, 2016, at 6:47, Thomas Abend via swift-users <swift-users@swift.org> wrote:

Since moving a mixed Swift and Objective-c project to XCode 8 with Swift 2.3, I have been getting a "Command failed due to signal: Segmentation fault: 11" error every time I run my tests after making a change in any of the test files.

When I click on the error for more information I see:

<module-includes>:1:9: note: in file included from <module-includes>:1:
#import "Headers/Utilities.h"
    ^
/Users/.../Utilities.framework/Headers/Utilities.h:18:9: error: include of non-modular header inside framework module 'Utilities'
#import <Utilities/NSString+Utilities.h>
^
And basically just a bunch of similar errors following that ending in:

<unknown>:0: error: could not build Objective-C module 'Utilities'
Utilities in this case is a framework that I made. All of the headers in the Utilities.h file are imported with angle brackets and the headers are marked as public.

After it segfaults, it will run properly until I make a change to the test file. It only has this issue when testing, not when building or running.

Other things I've tried:

Changing the framework and tests to allow non modular includes
Enabling/disabling bitcode
Any help would be appreciated.

_______________________________________________
swift-users mailing list
swift-users@swift.org
https://lists.swift.org/mailman/listinfo/swift-users