https://gcc.gnu.org/bugzilla/show_bug.cgi?id=28032

--- Comment #15 from Jerry DeLisle <jvdelisle at gcc dot gnu.org> ---
Created attachment 59515
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=59515&action=edit
Example illustrating kicker

This simple patch adds a custom procedure to be run on a test case.  I am using
inline_matmul_1.f90 as the example test case.

When running this test case you will see that the gfortran.dg dg.exp specifies
running our main test procedure twice. Like this:

--- snip ---

set all_flags $DEFAULT_FFLAGS

# Main loop.
gfortran-dg-runtest [lsort \
       [glob -nocomplain $srcdir/$subdir/*.\[fF\]{,90,95,03,08} ] ] ""
$all_flags

gfortran-dg-runtest [lsort \
       [glob -nocomplain $srcdir/$subdir/g77/*.\[fF\] ] ] "" $all_flags

# All done.
dg-finish

When running the test,the new procedure I created is not executed until after
the first  gfortran-dg-runtest is executed and before the second one. The
output from running this test is as follows:

--- snip ---

Running /home/jerry/dev/trunk/gcc/testsuite/gfortran.dg/dg.exp ...

gfortran-dg-runtest


Simple test


gfortran-dg-runtest


                === gfortran Summary ===

--- snip ---

I do not know why this happens but I suspect it has to do with the
parallelization being done in the make/dejagnu test code.  Regardless, I
understand why our gfortran-dg-runtest code is doing its own scanning of the
file under test to figure out what to do.

Reply via email to