http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57553
--- Comment #3 from Tobias Burnus <burnus at gcc dot gnu.org> --- The rejects-valid and the ICE-on-valid-code issue has been solved. TODO: The following message for invalid code should be improved. [The problem is that storage_size cannot handle "a", which is required for a constant expression.] integer, parameter :: ESize = ( storage_size(a) + 7 ) / 8 1 Error: Unclassifiable statement at (1)