From: David Billinghurst Date: Sun, 5 Jun 2005 23:42:19 +0000 (+0000) Subject: gfortran.exp (gfortran_target_compile): Call dg-additional-files-options X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f25284f3785bc086669c8676dfb73b835bf73f34;p=gcc.git gfortran.exp (gfortran_target_compile): Call dg-additional-files-options 2005-06-05 David Billinghurst * lib/gfortran.exp (gfortran_target_compile): Call dg-additional-files-options * gfortran.dg/f2c_4.f90: New file * gfortran.dg/f2c_4.c: New file * gfortran.dg/f2c_5.f90: New file * gfortran.dg/f2c_5.c: New file From-SVN: r100641 --- diff --git a/gcc/testsuite/gfortran.dg/f2c_4.c b/gcc/testsuite/gfortran.dg/f2c_4.c new file mode 100755 index 00000000000..0d64fc89b14 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/f2c_4.c @@ -0,0 +1,9 @@ +extern double f2c_4b__(double *); +extern void abort (void); + +void f2c_4a__(void) { + double a,b; + a = 1023.0; + b=f2c_4b__(&a); + if ( a != b ) abort(); +} diff --git a/gcc/testsuite/gfortran.dg/f2c_4.f90 b/gcc/testsuite/gfortran.dg/f2c_4.f90 new file mode 100755 index 00000000000..a03b4f8b593 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/f2c_4.f90 @@ -0,0 +1,14 @@ +! { dg-do run } +! { dg-additional-sources f2c_4.c } +! { dg-options "-ff2c -w" } + +! Check -ff2c calling conventions +! Return value of REAL function is promoted to C type double +! Addional underscore appended to function name +call f2c_4a() +end + +real function f2c_4b(x) + double precision x + f2c_4b = x +end diff --git a/gcc/testsuite/gfortran.dg/f2c_5.c b/gcc/testsuite/gfortran.dg/f2c_5.c new file mode 100755 index 00000000000..bb57556d011 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/f2c_5.c @@ -0,0 +1,9 @@ +extern float f2c_5b_(double *); +extern void abort (void); + +void f2c_5a_(void) { + double a,b; + a = 1023.0; + b=f2c_5b_(&a); + if ( a != b ) abort(); +} diff --git a/gcc/testsuite/gfortran.dg/f2c_5.f90 b/gcc/testsuite/gfortran.dg/f2c_5.f90 new file mode 100755 index 00000000000..aa246845eb3 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/f2c_5.f90 @@ -0,0 +1,12 @@ +! { dg-do run } +! { dg-additional-sources f2c_5.c } +! { dg-options "-fno-f2c" } +! Check calling conventions without -ff2c +program f2c_5 + call f2c_5a() +end + +real function f2c_5b(x) + double precision x + f2c_5b = x +end diff --git a/gcc/testsuite/lib/gfortran.exp b/gcc/testsuite/lib/gfortran.exp index 43a104e1f51..850df4f0f03 100644 --- a/gcc/testsuite/lib/gfortran.exp +++ b/gcc/testsuite/lib/gfortran.exp @@ -188,6 +188,6 @@ proc gfortran_target_compile { source dest type options } { lappend options "compiler=$GFORTRAN_UNDER_TEST" set options [concat "$ALWAYS_GFORTRANFLAGS" $options] - + set options [dg-additional-files-options $options $source] return [target_compile $source $dest $type $options] }