From 8304568f003658c5a3b36fef4f42f91ae9bce04f Mon Sep 17 00:00:00 2001 From: pault Date: Fri, 17 Jul 2015 17:24:32 +0000 Subject: [PATCH] 2015-07-17 Paul Thomas PR fortran/52846 * decl.c (gfc_match_end): Pick out declared submodule name from the composite identifier. * gfortran.h : Add 'submodule_name' to gfc_use_list structure. * module.c (gfc_match_submodule): Define submodule_name and add static 'submodule_name'. (gfc_match_submodule): Build up submodule filenames, using '@' as a delimiter. Store the output filename in 'submodule_name'. Similarly, the submodule identifier is built using '.' as an identifier. (gfc_dump_module): If current state is COMP_SUBMODULE, write to file 'submodule_name', using SUBMODULE_EXTENSION. (gfc_use_module): Similarly, use the 'submodule_name' field in the gfc_use_list structure and SUBMODULE_EXTENSION to read the implicitly used submodule files. 2015-07-17 Paul Thomas PR fortran/52846 * lib/fortran-modules.exp (proc cleanup-submodules): New procedure. * gfortran.dg/submodule_1.f08: Change extension and clean up the submodule files. * gfortran.dg/submodule_2.f08: ditto * gfortran.dg/submodule_6.f08: ditto * gfortran.dg/submodule_7.f08: ditto * gfortran.dg/submodule_8.f08: New test * gfortran.dg/submodule_9.f08: New test git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225946 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/testsuite/gfortran.dg/{submodule_2.f90 => submodule_2.f08} | 2 ++ 1 file changed, 2 insertions(+) rename gcc/testsuite/gfortran.dg/{submodule_2.f90 => submodule_2.f08} (95%) diff --git a/gcc/testsuite/gfortran.dg/submodule_2.f90 b/gcc/testsuite/gfortran.dg/submodule_2.f08 similarity index 95% rename from gcc/testsuite/gfortran.dg/submodule_2.f90 rename to gcc/testsuite/gfortran.dg/submodule_2.f08 index 43456d5fc4c..60925ec788d 100644 --- a/gcc/testsuite/gfortran.dg/submodule_2.f90 +++ b/gcc/testsuite/gfortran.dg/submodule_2.f08 @@ -98,3 +98,5 @@ if (any (arg%greeting .ne. ["adieu, people!", "adieu, people!"])) call abort contains end program +! { dg-final { cleanup-submodules "foo_interface@foo_interface_son" } } +! { dg-final { cleanup-submodules "foo_interface@foo_interface_daughter" } } -- 2.11.4.GIT