This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
Re: [patch, fortran] Support .F03 and .f03 file extensions
*Ping*
Tobias Burnus wrote:
> FX Coudert wrote:
>> OK for mainline (and for 4.2 if you backport the .f03 support patch),
>> with one detail: I'd also like you to add .f03 to
>> libgomp/testsuite/libgomp.fortran/fortran.exp, for consistency. Please
>> add this bit and regtest, then send the final patch to Richard
>> Henderson (rth@redhat.com) for him to approve the libgomp part.
>>
> Attached is the updated patch.
>
> Tobias
>
Tobias Burnus wrote:
> Forget to write: Bootstrapped on x86_64-unknown-linux-gnu (openSUSE
> 10.2) with --enable-languages=c,fortran.
> Bootstrapped and run make -k check with no gfortran/gomp errors.
> fortran/
> 2007-01-17 Tobias Burnus <burnus@net-b.de>
>
> * lang-specs.h: Add support for .f03 and .F03 extensions.
> * gfortran.texi: Document .f03 extension.
> * options.c (form_from_filename): Recognize .f03.
>
> testsuite/
> 2007-01-17 Tobias Burnus <burnus@net-b.de>
>
> * gfortran.dg/gomp/gomp.exp: Support .f03 extension.
> * gfortran.dg/vect/vect.exp: Ditto.
> * gfortran.dg/dg.exp: Ditto.
> * gfortran.fortran-torture/execute/execute.exp: Ditto.
> * gfortran.fortran-torture/compile/compile.exp: Ditto.
>
> libgomp/
> 2007-01-17 Tobias Burnus <burnus@net-b.de>
>
> * testsuite/libgomp.fortran/fortran.exp: Support .f03 extension.
>
> Index: libgomp/testsuite/libgomp.fortran/fortran.exp
> ===================================================================
> --- libgomp/testsuite/libgomp.fortran/fortran.exp (revision 120865)
> +++ libgomp/testsuite/libgomp.fortran/fortran.exp (working copy)
> @@ -10,7 +10,7 @@
> if [file exists "${blddir}/${lang_test_file}"] {
>
> # Gather a list of all tests.
> - set tests [lsort [find $srcdir/$subdir *.\[fF\]{,90,95}]]
> + set tests [lsort [find $srcdir/$subdir *.\[fF\]{,90,95,03}]]
>
> # Main loop.
> gfortran-dg-runtest $tests ""
> Index: gcc/testsuite/gfortran.fortran-torture/execute/execute.exp
> ===================================================================
> --- gcc/testsuite/gfortran.fortran-torture/execute/execute.exp (revision 120865)
> +++ gcc/testsuite/gfortran.fortran-torture/execute/execute.exp (working copy)
> @@ -57,3 +57,9 @@
> fortran-torture-execute $testcase
> }
>
> +foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.f03]] {
> + if ![runtest_file_p $runtests $testcase] then {
> + continue
> + }
> + fortran-torture-execute $testcase
> +}
> Index: gcc/testsuite/gfortran.fortran-torture/compile/compile.exp
> ===================================================================
> --- gcc/testsuite/gfortran.fortran-torture/compile/compile.exp (revision 120865)
> +++ gcc/testsuite/gfortran.fortran-torture/compile/compile.exp (working copy)
> @@ -53,3 +53,9 @@
> fortran-torture $testcase
> }
>
> +foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.f03]] {
> + if ![runtest_file_p $runtests $testcase] then {
> + continue
> + }
> + fortran-torture $testcase
> +}
> Index: gcc/testsuite/gfortran.dg/gomp/gomp.exp
> ===================================================================
> --- gcc/testsuite/gfortran.dg/gomp/gomp.exp (revision 120865)
> +++ gcc/testsuite/gfortran.dg/gomp/gomp.exp (working copy)
> @@ -12,7 +12,7 @@
>
> # Main loop.
> gfortran-dg-runtest [lsort \
> - [find $srcdir/$subdir *.\[fF\]{,90,95} ] ] " -fopenmp"
> + [find $srcdir/$subdir *.\[fF\]{,90,95,03} ] ] " -fopenmp"
>
> # All done.
> dg-finish
> Index: gcc/testsuite/gfortran.dg/dg.exp
> ===================================================================
> --- gcc/testsuite/gfortran.dg/dg.exp (revision 120865)
> +++ gcc/testsuite/gfortran.dg/dg.exp (working copy)
> @@ -30,7 +30,7 @@
>
> # Main loop.
> gfortran-dg-runtest [lsort \
> - [glob -nocomplain $srcdir/$subdir/*.\[fF\]{,90,95} ] ] $DEFAULT_FFLAGS
> + [glob -nocomplain $srcdir/$subdir/*.\[fF\]{,90,95,03} ] ] $DEFAULT_FFLAGS
>
> gfortran-dg-runtest [lsort \
> [glob -nocomplain $srcdir/$subdir/g77/*.\[fF\] ] ] $DEFAULT_FFLAGS
> Index: gcc/testsuite/gfortran.dg/vect/vect.exp
> ===================================================================
> --- gcc/testsuite/gfortran.dg/vect/vect.exp (revision 120865)
> +++ gcc/testsuite/gfortran.dg/vect/vect.exp (working copy)
> @@ -90,7 +90,7 @@
> dg-init
>
> # Main loop.
> -gfortran-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[fF\]{,90,95} ]] $DEFAULT_VECTCFLAGS
> +gfortran-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[fF\]{,90,95,03} ]] $DEFAULT_VECTCFLAGS
>
> # Clean up.
> set dg-do-what-default ${save-dg-do-what-default}
> Index: gcc/fortran/gfortran.texi
> ===================================================================
> --- gcc/fortran/gfortran.texi (revision 120865)
> +++ gcc/fortran/gfortran.texi (working copy)
> @@ -367,8 +367,8 @@
> Fortran) for each file in the source code, and then calls the assembler
> and linker as appropriate to produce the compiled output. In a copy of
> GCC which has been compiled with Fortran language support enabled,
> -@command{gcc} will recognize files with @file{.f}, @file{.f90}, and
> -@file{.f95} extensions as Fortran source code, and compile it
> +@command{gcc} will recognize files with @file{.f}, @file{.f90}, @file{.f95},
> +and @file{.f03} extensions as Fortran source code, and compile it
> accordingly. A @command{gfortran} driver program is also provided,
> which is identical to @command{gcc} except that it automatically links
> the Fortran runtime libraries into the compiled program.
> Index: gcc/fortran/options.c
> ===================================================================
> --- gcc/fortran/options.c (revision 120865)
> +++ gcc/fortran/options.c (working copy)
> @@ -138,6 +139,9 @@
> ".f95", FORM_FREE}
> ,
> {
> + ".f03", FORM_FREE}
> + ,
> + {
> ".f", FORM_FIXED}
> ,
> {
> Index: gcc/fortran/lang-specs.h
> ===================================================================
> --- gcc/fortran/lang-specs.h (revision 120865)
> +++ gcc/fortran/lang-specs.h (working copy)
> @@ -18,6 +18,7 @@
> -fpreprocessed %{!nostdinc:-fintrinsic-modules-path finclude%s} %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
> {".F90", "@f95-cpp-input", 0, 0, 0},
> {".F95", "@f95-cpp-input", 0, 0, 0},
> +{".F03", "@f95-cpp-input", 0, 0, 0},
> {"@f95-cpp-input",
> "cc1 -E -lang-fortran -traditional-cpp -D_LANGUAGE_FORTRAN %(cpp_options) \
> %{E|M|MM:%(cpp_debug_options)}\
> @@ -26,6 +27,7 @@
> -fpreprocessed %{!nostdinc:-fintrinsic-modules-path finclude%s} %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
> {".f90", "@f95", 0, 0, 0},
> {".f95", "@f95", 0, 0, 0},
> +{".f03", "@f95", 0, 0, 0},
> {"@f95", "%{!E:f951 %i %(cc1_options) %{J*} %{I*}\
> %{!nostdinc:-fintrinsic-modules-path finclude%s} %{!fsyntax-only:%(invoke_as)}}", 0, 0, 0},
> {".f", "@f77", 0, 0, 0},
>