This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libfortran/21881] Array descriptors limit derived type sizes



------- Comment #4 from fxcoudert at gcc dot gnu dot org  2007-09-14 11:31 -------
I think this is related to the check in trans-types.c:

  if (size && INTEGER_CST_P (size))
    {
      if (tree_int_cst_lt (gfc_max_array_element_size, size))
        internal_error ("Array element size too big");

      i += TREE_INT_CST_LOW (size) << GFC_DTYPE_SIZE_SHIFT;
    }
  dtype = build_int_cst (gfc_array_index_type, i);

which is triggered by code such as:

  type t
    integer i001(268435456)
  end type t

  type(t), allocatable :: x(:)

  allocate(x(1))
  print *, size(x)
  print *, shape(x)
  end


-- 


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]