This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libfortran/21881] Array descriptors limit derived type sizes
- From: "fxcoudert at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 14 Sep 2007 11:31:15 -0000
- Subject: [Bug libfortran/21881] Array descriptors limit derived type sizes
- References: <bug-21881-10391@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- 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