http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47118
Summary: ICE on incorrect parameter to @synchronized() Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: objc AssignedTo: unassig...@gcc.gnu.org ReportedBy: nic...@gcc.gnu.org Here is a testcase that crashes GCC 4.6 -- typedef struct { float x; float y; } point; int test (id object) { point x; @synchronized (x) { return 1; } } The compiler is not checking the type of the argument of @synchronized() and is not dealing with unexpected types correctly. Thanks