1# Copyright (C) 2004-2015 Free Software Foundation, Inc. 2 3# This program is free software; you can redistribute it and/or modify 4# it under the terms of the GNU General Public License as published by 5# the Free Software Foundation; either version 3 of the License, or 6# (at your option) any later version. 7# 8# This program is distributed in the hope that it will be useful, 9# but WITHOUT ANY WARRANTY; without even the implied warranty of 10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11# GNU General Public License for more details. 12# 13# You should have received a copy of the GNU General Public License 14# along with GCC; see the file COPYING3. If not see 15# <http://www.gnu.org/licenses/>. 16 17# GCC testsuite that uses the `dg.exp' driver. 18 19# Load support procs. 20load_lib gfortran-dg.exp 21 22# If a testcase doesn't have special options, use these. 23global DEFAULT_FFLAGS 24if ![info exists DEFAULT_FFLAGS] then { 25 set DEFAULT_FFLAGS " -pedantic-errors" 26} 27 28# Initialize `dg'. 29dg-init 30 31global gfortran_test_path 32global gfortran_aux_module_flags 33set gfortran_test_path $srcdir/$subdir 34set gfortran_aux_module_flags $DEFAULT_FFLAGS 35proc dg-compile-aux-modules { args } { 36 global gfortran_test_path 37 global gfortran_aux_module_flags 38 if { [llength $args] != 2 } { 39 error "dg-set-target-env-var: needs one argument" 40 return 41 } 42 43 set level [info level] 44 if { [info procs dg-save-unknown] != [list] } { 45 rename dg-save-unknown dg-save-unknown-level-$level 46 } 47 48 dg-test $gfortran_test_path/[lindex $args 1] "" $gfortran_aux_module_flags 49 # cleanup-modules is intentionally not invoked here. 50 51 if { [info procs dg-save-unknown-level-$level] != [list] } { 52 rename dg-save-unknown-level-$level dg-save-unknown 53 } 54} 55 56# Main loop. 57gfortran-dg-runtest [lsort \ 58 [glob -nocomplain $srcdir/$subdir/*.\[fF\]{,90,95,03,08} ] ] "" $DEFAULT_FFLAGS 59 60gfortran-dg-runtest [lsort \ 61 [glob -nocomplain $srcdir/$subdir/g77/*.\[fF\] ] ] "" $DEFAULT_FFLAGS 62 63 64# All done. 65dg-finish 66