New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
NSGetSizeAndAlignment(): unsupported type encoding spec #3
Comments
Hey! Interesting, in general some types are unavailable to query for (for example if you have a struct and this struct has bitfields at the beginning and some objects at the end, we wouldn't cover that). So that's the idea - the question is - why the exception was not caught. Frameworks might be to blame, I'll look into it a little bit more. |
Are you in debug mode? There is a good chance you are not crashing but are stopping in exception breakpoint. Could you try disabling this and check if the issue is still happening for you? |
Yes, the Since there's some encoding parsing going on, I wonder if there should be a black list of known bad types, like bitfields, to avoid going down a path that is sure to fail. |
That is a good point. Especially that, IIRC, throwing and catching exception is not exactly "free" :P Maintaining short check-list before falling in might be a good thing for performance, the question is if it's cheaper to sometimes throw & catch, or constantly do a lookup in every ivar check. Thoughts? |
只是路过! |
Yes, NSGetSizeAndAlignment throws exception that will be caught by exception breakpoint. The safest is to turn off exception breakpoint when using retain cycle detector. |
Hi guys,
In my mixed Swift/ObjC project, I copy/pasted the instructions under "Example usage" into a ObjC file. At
NSSet *retainCycles = [detector findRetainCycles];
I got an objc_exception
from FBClassStrongLayout.m line 43.
I use FBRetainCycleDetector (0.1.1) via CococaPods (with frameworks enabled)
The text was updated successfully, but these errors were encountered: