http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57305
--- Comment #8 from janus at gcc dot gnu.org --- (In reply to janus from comment #7) > Here is a preliminary patch to make SIZEOF return the size of the dynamic > type for polymorphic variables, which at the same time fixes the ICE on > CLASS(*) variables. Of course this fails on storage_size_1, which expects the old behavior for CLASS variables, but otherwise it regtests cleany. Index: gcc/testsuite/gfortran.dg/storage_size_1.f08 =================================================================== --- gcc/testsuite/gfortran.dg/storage_size_1.f08 (revision 201896) +++ gcc/testsuite/gfortran.dg/storage_size_1.f08 (working copy) @@ -25,7 +25,7 @@ if (storage_size(a) /= 64) call abort() if (sizeof(b) /= 24) call abort() if (storage_size(b) /= 64) call abort() -if (sizeof(cp) /= 8) call abort() +if (sizeof(cp) /= 12) call abort() if (storage_size(cp) /= 96) call abort() end