Currently, there are 26 bits for encoding the size of an object in the array descriptor for 32-bit targets, because the size is encoded together with the type, which takes up 6 bits, and dtype is an index_type (which has 32 bits on a 32-bit target).
It would be nice to have a separate size field. -- Summary: Array descriptors limit derived type sizes Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: enhancement Priority: P2 Component: libfortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: tkoenig at gcc dot gnu dot org CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21881