[Bug fortran/44596] [OOP] Dynamic dispatch uses broken types

burnus at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Mon Jul 5 13:14:00 GMT 2010



------- Comment #13 from burnus at gcc dot gnu dot org  2010-07-05 13:14 -------
(In reply to comment #12)
> You shouldn't change bits in (shared) types.  Instead do
> 
>         field_type = build_pointer_type_for_mode
>             (field_type, ptr_mode,
>              c->ts.type == BT_DERIVED && c->ts.u.derived->attr.vtype);

Thanks for checking, Richard!


For those wondering, like me, where ptr_mode is defined: gcc/machmode.h has:
  extern enum machine_mode ptr_mode;

The the function itself is (tree.c):

/* Construct, lay out and return the type of pointers to TO_TYPE with
   mode MODE.  If CAN_ALIAS_ALL is TRUE, indicate this type can
   reference all of memory. If such a type has already been
   constructed, reuse it.  */

tree
build_pointer_type_for_mode (tree to_type, enum machine_mode mode,
                             bool can_alias_all)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44596



More information about the Gcc-bugs mailing list