http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58433
--- Comment #2 from Valery Weber <valeryweber at hotmail dot com> --- But the std says: **** 4.5.6.3 When finalization occurs ... 2 A nonpointer, nonallocatable object that is not a dummy argument or function result is finalized immediately before it would become undefined due to execution of a RETURN or END statement (16.6.6, item (3)). **** and **** 1.3.66 END statement end-block-data-stmt, end-function-stmt, end-module-stmt, end-mp-subprogram-stmt, end-program-stmt, end-submodule-stmt, or end-subroutine-stmt **** so does the code fulfilling the finalization requirement (nonpointer/nonalloc object + end-program-stmt)? v