Debugger breaks without reason


#1

Hi all,

this isn’t JUCE related but maybe someone ran into something similar and can give some hints.
When debugging an audio plugin on OS X (XCode 3.2.6, OS X 10.6.8 ) the debugger breaks on points that seem OK (e.g. no exception or failed assertion) with the following message:

Google only revealed some stuff about iOS for this error.

Any ideas what might be the cause for this?

Thanks,
Chris


#2

As far as I know, that error is pretty much always caused by calling something that isn’t there.

You may be trying to message something that you’ve released (not quite the same thing as the C++ variant of calling a method on a dangling pointer).

You may also have a linkage mismatch for a library somewhere. Essentially if your core is for some reason (I.E. deployment target/selected SDK) trying to send a message to a method that doesn’t exist, perhaps because it’s been removed, or because you are linking an older library in which it has not yet been defined, your code can compile, but will fail with this message. As you can see this is a variant of the first possibility. I.E. different cause, same result.

(The reason you’re seeing this in relation to iOS in Google is because for iOS developers it happens most frequently when trying to call iOS 6 features while running the simulator in iOS5. Those posts are probably vastly out-weighing other posts on the subject).

tl;dr Check you aren’t trying to call methods on things that have been deleted elsewhere (especially JUCE components as these tie more directly to ObjC objects), otherwise have a look at which OSX libraries you are linking.


#3

Thanks for your response.
I cleaned up some multi-threading stuff which allocates/deletes some objects (inside the processor and editor) and it seems to run fine now. I think the reason it worked on Windows (forgot to mention this in my first post) is that the calling order for creating and removing the objects was different.

Chris