2005-03-24 Jeff Johnston * valops.c (check_field_in): Use check_typedef for base classes to avoid problems with opaque type references. Index: gdb-6.5/gdb/valops.c =================================================================== --- gdb-6.5.orig/gdb/valops.c 2005-12-17 20:34:03.000000000 -0200 +++ gdb-6.5/gdb/valops.c 2006-07-07 02:35:09.000000000 -0300 @@ -2257,8 +2257,13 @@ check_field_in (struct type *type, const } for (i = TYPE_N_BASECLASSES (type) - 1; i >= 0; i--) - if (check_field_in (TYPE_BASECLASS (type, i), name)) - return 1; + { + /* Check the base classes. Make sure we have the real type for + each base class as opposed to an opaque declaration. */ + struct type *baseclass = check_typedef (TYPE_BASECLASS (type, i)); + if (check_field_in (baseclass, name)) + return 1; + } return 0; }