When running the gfortran compiler on source files with zero-trip do loops, such as do i=1,0 ...do..something... enddo the compiler will complain with the warning : Warning: DO loop at (1) will be executed zero times test.f90:10.12: do i=1,0 1 Warning: DO loop at (1) will be executed zero times We have a code, which makes use of preprocessing to select different configurations. In the default configuration there are hundreds of these kind of loops. The warning makes it harder to spot other warnings and errors. It would be nice if it were possible to suppress/enable the warning with a flag like -Wzerotrip -Wno-zerotrip
Confirmed.
Author: tkoenig Date: Mon Aug 12 05:50:03 2013 New Revision: 201658 URL: http://gcc.gnu.org/viewcvs?rev=201658&root=gcc&view=rev Log: 2013-08-12 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/56666 * gfortran.h (gfc_option_t): Add warn_zerotrip. * invoke.texi (-Wzerotrip): Document option. * lang.opt (Wzerotrip): Add. * options.c (gfc_init_options): Initialize warn_zerotrip. (set_Wall): Add handling of warn_zerotrip. (gfc_handle_option): Handle OPT_Wzerotrip. * resolve.c (gfc_resolve_iterator): Honor gfc_option.warn_zerotrip; update error message to show how to suppress the warning. 2013-08-12 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/56666 * gfortran.dg/do_check_10.f90: New test. * gfortran.dg/array_constructor_11.f90: Add -Wzerotrip to dg-options. * gfortran.dg/array_constructor_18.f90: Likewise. * gfortran.dg/array_constructor_22.f90: Likewise. * gfortran.dg/coarray_15.f90: Likewise. * gfortran.dg/do_1.f90: Add -Wall to dg-options. * gfortran.dg/do_3.F90: Add -Wzerotrip to dg-options. * gfortran.dg/do_check_5.f90: Add -Wall to gd-options. Added: trunk/gcc/testsuite/gfortran.dg/do_check_10.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/gfortran.h trunk/gcc/fortran/invoke.texi trunk/gcc/fortran/lang.opt trunk/gcc/fortran/options.c trunk/gcc/fortran/resolve.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gfortran.dg/array_constructor_11.f90 trunk/gcc/testsuite/gfortran.dg/array_constructor_18.f90 trunk/gcc/testsuite/gfortran.dg/array_constructor_22.f90 trunk/gcc/testsuite/gfortran.dg/coarray_15.f90 trunk/gcc/testsuite/gfortran.dg/do_1.f90 trunk/gcc/testsuite/gfortran.dg/do_3.F90 trunk/gcc/testsuite/gfortran.dg/do_check_5.f90
Files modified in the GCC repository. Log entry: 2013-08-12 Thomas Koenig <tkoenig@gcc.gnu.org> * gcc-4.9/changes.html: Document -Wzerotrip.