Consider this code: SUBROUTINE FOO(I) I=0 END
SUBROUTINE BAR() CALL FOO(1,2) END compiled with g77 3.4.6: f77.f: In subroutine `bar': f77.f:1: SUBROUTINE FOO(I) 1 f77.f:6: (continued): CALL FOO(1,2) 2 Too many arguments passed to `foo' at (2) versus definition at (1) [info -f g77 M GLOBALS] no object file is generated. gfortran, even with -Wall, emits are no warnings or errors at all and an object file is generated. With a module or interface block gfortran does a lot better but then it is no longer Fortran 77 of course. -- Summary: gfortran: no diagnostics about too many arguments in legacy code (vs. g77) Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: bartoldeman at users dot sourceforge dot net GCC build triplet: i386-pc-linux-gnu GCC host triplet: i386-pc-linux-gnu GCC target triplet: i386-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31149