/* APPLE LOCAL file 4174833 */ /* Check that the STABS information for ObjC objects is flattened; gdb does not (yet) know how to traverse ObjC class hierarchies. */ /* Contributed by Ziemowit Laski <zlaski@apple.com> */ /* { dg-do compile } */ /* { dg-skip-if "No stabs" { mmix-*-* *-*-aix* alpha*-*-* hppa*64*-*-* ia64-*-* } { "*" } { "" } } */ /* { dg-options "-gstabs" } */ /* LLVM LOCAL llvm doesn't currently support stabs. */ /* { dg-require-stabs "" } */ #include <objc/Object.h> @interface Base: Object { int a; id b; } - meth; @end @interface Derived: Base { Object *c; Base *d; } - meth; @end @implementation Base - meth { a = 0; return self; } @end @implementation Derived - meth { d = self; return self; } @end /* { dg-final { scan-assembler "Base:T\\(\[0-9\]+,\[0-9\]+\\)=s\[0-9\]+isa:\\(\[0-9\]+,\[0-9\]+\\),0,\[0-9\]+" } } */ /* { dg-final { scan-assembler "Derived:T\\(\[0-9\]+,\[0-9\]+\\)=s\[0-9\]+isa:\\(\[0-9\]+,\[0-9\]+\\),0,\[0-9\]+;a:\\(\[0-9\]+,\[0-9\]+\\)" } } */