Xcode 7.3 debugger not showing custom class variables
Asked Answered
T

2

16

I recently updated to Xcode 7.3 , however while debugging at break points , the objects show in the debug area but clicking the triangle to reveal the variables does nothing .

I never had such issues with Xcode 7.2 .

I have also have a Cocoa-pod Facebook Pop library in my project (incase its relevant) . I have updated it since upgrading to Xcode 7.3.

Update :

More specifically I can't expand custom class variables , but variable like NSRange do expand to show location and length , however I can't expand my custom ViewController classes etc.

Trinette answered 22/3, 2016 at 10:20 Comment(1)
This problem has continued in 7.3.1 but now the Enable Clang Module Debug option is gone (it is now set to yes by default)Mechelle
T
22

Phew ..

The pictured setting did it for me .

enter image description here

Also a Option Clean Build is imperative after making the changes .

Only changing the Clang Module Debugging also works , but halting at breakpoints displays a warning .

"could not load any Objective-C class information from the dyld shared cache"

Other observations : When changing the build settings back to original , clicking the triangle the variable values do still show (from memory I guess) for the last breakpoint (from the altered settings) , but variables at other breakpoints don't .

Again , Never had such issues with prior versions of Xcode .

Edit :

The DWARF setting can be avoided . Works fine without it .

Edit :

Also if you are using Cocoapods , you might need to recreate the xcworkspace .

Trinette answered 23/3, 2016 at 10:52 Comment(2)
Yes, only changing the Clang Module Debugging. It's work for me.Merbromin
+1 to this - and the DWARF setting can be avoided as indicated. All I changed was the Enable Clang Module Debugging.Drinkable
W
1

If you're hesitant to change Build Settings, you can pull up additional information by casting the variable with its own class, though (frustratingly) you have to do it per variable. This works even for self.

For a class MyClass, right-click/control-click in the debugging variable list and choose "Add Expression". Add in the name of the class, plus the name of the variable: (MyClass *)self or (MySubClass *)subclassVariableName.

Wagner answered 28/3, 2016 at 16:7 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.