John Smith
John Smith

Reputation: 12807

Compare two Xcode build settings

I have a project where I use two build settings predominantly. Unfortunately today something went wrong. One compiles and the other doesn't. How can I compare the two build settings in XCode to see what the differences are?

(For those interested, the error I get in one build is

jump to case label crosses initialization of 'const char* selectorName'

if you know what this means I'll be very grateful )

Upvotes: 4

Views: 2784

Answers (3)

ATV
ATV

Reputation: 4506

In 2022 and Xcode 13 if it's a scenario with multiple targets within the same project you can just Shift + Click the targets you want to compare and enable Levels in the filter bar.

(see also https://mjtsai.com/blog/2019/02/01/comparing-xcode-target-build-settings/)

Upvotes: 1

Mike Weller
Mike Weller

Reputation: 45598

You probably declare a variable inside a case without wrapping it all in a brace:

case foo:
    const char* selectorName;
    // ...
    break;

Should be:

case foo: {
    const char* selectorName;
    // ...
    break;
}

Upvotes: 3

Mike
Mike

Reputation: 8963

Your project configuration is stored in the directory (package) of:

YourAppName.xcodeproj

Open up terminal and cd into that directory. You'll find some .plist format files:

project.pbxproj username.pbxuser

You can do a diff on these files with your other project. But you probably have issues with your source code in reality. Do you have a switch case you are using? Do you declare any variables in the switch? If so, are you using brackets, {}?

Upvotes: 7

Related Questions