diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 74128018385e..04430b31c034 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-03-24 Ziemowit Laski + + * objc/objc-act.c (objc_comptypes): Treat comparisons + between 'Class' and ' *' as explicitly invalid. + 2004-03-24 David Edelsohn * doc/invoke.texi (-frename-registers: Add enabled at -O3. diff --git a/gcc/objc/objc-act.c b/gcc/objc/objc-act.c index 89abaf4c1985..22696cb519ea 100644 --- a/gcc/objc/objc-act.c +++ b/gcc/objc/objc-act.c @@ -904,6 +904,11 @@ objc_comptypes (tree lhs, tree rhs, int reflexive) && OBJC_TYPE_NAME (rhs) == objc_object_id)) return 1; + /* `Class' != ` *' && ` *' != `Class'! */ + else if ((OBJC_TYPE_NAME (lhs) == objc_class_id && TYPED_OBJECT (rhs)) + || (OBJC_TYPE_NAME (rhs) == objc_class_id && TYPED_OBJECT (lhs))) + return 0; + /* ` *' = ` *' */ else if (TYPED_OBJECT (lhs) && TYPED_OBJECT (rhs))