This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [patch, fortran] Support .F03 and .f03 file extensions
- From: Tobias Burnus <burnus at net-b dot de>
- Cc: "'fortran at gcc dot gnu dot org'" <fortran at gcc dot gnu dot org>, gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 17 Jan 2007 19:41:53 +0100
- Subject: Re: [patch, fortran] Support .F03 and .f03 file extensions
- References: <459F7DC0.9010409@net-b.de> <45AE67D0.2000604@net-b.de>
As Chris wants to use the .f03 extension in the test suite (see his
patch for the fortran-experiments branch), I decided to do it already on
the trunk and for the complete test suite.
Are both patches ok for the trunk?
Tobias
Tobias Burnus wrote:
>> :ADDPATCH fortran:
>>
>> Support the .f03 and .F03 file extensions.
>>
>> Ok for the trunk?
>>
>> Bootstrapped, tested and regression tested on x86_64-unknown-linux-gnu
>>
>>
>> Tobias
>>
>>
>> 2007-01-06 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.
>>
>> ------------------------------------------------------------------------
>>
>> Index: gcc/fortran/gfortran.texi
>> ===================================================================
>> --- gcc/fortran/gfortran.texi (Revision 120520)
>> +++ gcc/fortran/gfortran.texi (Arbeitskopie)
>> @@ -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 120520)
>> +++ gcc/fortran/options.c (Arbeitskopie)
>> @@ -137,6 +138,9 @@
>> ".f95", FORM_FREE}
>> ,
>> {
>> + ".f03", FORM_FREE}
>> + ,
>> + {
>> ".f", FORM_FIXED}
>> ,
>> {
>> Index: gcc/fortran/lang-specs.h
>> ===================================================================
>> --- gcc/fortran/lang-specs.h (Revision 120520)
>> +++ gcc/fortran/lang-specs.h (Arbeitskopie)
>> @@ -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},
>>
>>
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.
Index: gcc/testsuite/gfortran.dg/gomp/gomp.exp
===================================================================
--- gcc/testsuite/gfortran.dg/gomp/gomp.exp (revision 120854)
+++ 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/vect/vect.exp
===================================================================
--- gcc/testsuite/gfortran.dg/vect/vect.exp (revision 120854)
+++ 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/testsuite/gfortran.dg/dg.exp
===================================================================
--- gcc/testsuite/gfortran.dg/dg.exp (revision 120854)
+++ 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.fortran-torture/execute/execute.exp
===================================================================
--- gcc/testsuite/gfortran.fortran-torture/execute/execute.exp (revision 120854)
+++ 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 120854)
+++ gcc/testsuite/gfortran.fortran-torture/compile/compile.exp (working copy)
@@ -53,3 +53,9 @@
fortran-torture $testcase
}
+foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.f95]] {
+ if ![runtest_file_p $runtests $testcase] then {
+ continue
+ }
+ fortran-torture $testcase
+}