Lines Matching refs:type

39 static int vb_match (struct type *, int, struct type *);
40 int gnuv2_baseclass_offset (struct type *type, int index, char *valaddr,
90 TYPE is the type in which F is located. */
93 struct type * type, int offset)
96 struct type *type1 = check_typedef (VALUE_TYPE (arg1));
99 struct type *entry_type;
101 with a strange type, so cast it to type `pointer to long' (which
102 should serve just fine as a function type). Then, index into
103 the table, and convert final value to appropriate function type. */
109 struct type *fcontext = TYPE_FN_FIELD_FCONTEXT (f, j);
110 struct type *context;
116 fcontext = TYPE_VPTR_BASETYPE (type);
129 /* This type may have been defined before its virtual function table
131 type now. */
180 error ("I'm confused: virtual function table has bad type");
181 /* Reinstantiate the function pointer with the correct type. */
189 static struct type *
192 struct type *known_type;
193 struct type *rtti_type;
202 struct type *btype;
211 /* Get declared type */
220 the type info functions, which are always right. Deal with it
223 /* If the type has no vptr fieldno, try to get it filled in */
231 /* Make sure our basetype and known type match, otherwise, cast
244 we'd waste a bunch of time figuring out we already know the type.
245 Besides, we don't care about the type, just the actual pointer
263 /* Lookup the type for the name */
297 pointer which is for the base class whose type is BASECLASS. */
300 vb_match (struct type *type, int index, struct type *basetype)
302 struct type *fieldtype;
303 char *name = TYPE_FIELD_NAME (type, index);
321 fieldtype = TYPE_FIELD_TYPE (type, index);
351 gnuv2_baseclass_offset (struct type *type, int index, char *valaddr,
354 struct type *basetype = TYPE_BASECLASS (type, index);
356 if (BASETYPE_VIA_VIRTUAL (type, index))
359 int i, len = TYPE_NFIELDS (type);
360 int n_baseclasses = TYPE_N_BASECLASSES (type);
366 if (vb_match (type, i, basetype))
369 = unpack_pointer (TYPE_FIELD_TYPE (type, i),
370 valaddr + (TYPE_FIELD_BITPOS (type, i) / 8));
379 baseclass_offset (type, i, valaddr, address);
388 return TYPE_BASECLASS_BITPOS (type, index) / 8;