[FORTRAN PATCH]: cleanup module files from testsuite

Janis Johnson janis187@us.ibm.com
Tue Mar 21 23:53:00 GMT 2006


This patch cleans up leftover module files from tests in gfortran.dg.
I'll look at module files from other tests next.  Checked in on trunk;
I'll backport the relevant ones to 4.1 and 4.0 in the next few days.

2006-03-21  Janis Johnson  <janis187@us.ibm.com>

	* lib/gcc-dg.exp (cleanup-modules): New proc.
	* gfortran.dg/allocatable_function_1.f90,
	gfortran.dg/allocate_char_star_scalar_1.f90,
	gfortran.dg/assumed_charlen_function_1.f90,
	gfortran.dg/assumed_dummy_1.f90,
	gfortran.dg/assumed_shape_ranks_1.f90,
	gfortran.dg/assumed_shape_ranks_2.f90,
	gfortran.dg/assumed_size_dt_dummy.f90,
	gfortran.dg/auto_char_dummy_array_1.f90,
	gfortran.dg/auto_char_len_3.f90,
	gfortran.dg/automatic_module_variable.f90,
	gfortran.dg/bad_automatic_objects_1.f90,
	gfortran.dg/char_array_constructor.f90,
	gfortran.dg/char_array_structure_constructor.f90,
	gfortran.dg/char_result_11.f90, gfortran.dg/char_result_9.f90,
	gfortran.dg/contained_1.f90, gfortran.dg/convert_1.f90,
	gfortran.dg/cray_pointers_5.f90, gfortran.dg/data_constraints_1.f90,
	gfortran.dg/default_initialization.f90, gfortran.dg/der_charlen_1.f90,
	gfortran.dg/der_io_2.f90, gfortran.dg/der_io_3.f90,
	gfortran.dg/derived_pointer_recursion.f90,
	gfortran.dg/derived_recursion.f90, gfortran.dg/der_pointer_1.f90,
	gfortran.dg/der_pointer_3.f90, gfortran.dg/der_pointer_4.f90,
	gfortran.dg/dummy_functions_1.f90,
	gfortran.dg/elemental_initializer_1.f90,
	gfortran.dg/elemental_non_intrinsic_dummy_1.f90,
	gfortran.dg/elemental_pointer_1.f90,
	gfortran.dg/elemental_subroutine_1.f90,
	gfortran.dg/elemental_subroutine_2.f90, gfortran.dg/entry_1.f90,
	gfortran.dg/entry_3.f90, gfortran.dg/enum_10.f90,
	gfortran.dg/equiv_constraint_3.f90, gfortran.dg/func_derived_1.f90,
	gfortran.dg/func_derived_2.f90, gfortran.dg/func_derived_3.f90,
	gfortran.dg/generic_1.f90, gfortran.dg/generic_2.f90,
	gfortran.dg/generic_3.f90, gfortran.dg/generic_4.f90,
	gfortran.dg/global_references_1.f90,
	gfortran.dg/host_used_types_1.f90, gfortran.dg/implicit_1.f90,
	gfortran.dg/implicit_2.f90, gfortran.dg/implicit_actual.f90,
	gfortran.dg/initialization_1.f90, gfortran.dg/int_1.f90,
	gfortran.dg/intent_used_1.f90, gfortran.dg/interface_1.f90,
	gfortran.dg/interface_2.f90, gfortran.dg/internal_references_2.f90,
	gfortran.dg/io_constraints_1.f90, gfortran.dg/io_constraints_2.f90,
	gfortran.dg/large_integer_kind_1.f90,
	gfortran.dg/large_real_kind_1.f90,
	gfortran.dg/module_blank_common.f90, gfortran.dg/module_commons_1.f90,
	gfortran.dg/module_double_reuse.f90,
	gfortran.dg/module_equivalence_1.f90,
	gfortran.dg/module_interface_1.f90,
	gfortran.dg/module_parameter_array_refs_1.f90,
	gfortran.dg/named_interface.f90, gfortran.dg/namelist_14.f90,
	gfortran.dg/namelist_15.f90, gfortran.dg/namelist_1.f90,
	gfortran.dg/namelist_4.f90, gfortran.dg/namelist_use.f90,
	gfortran.dg/namelist_use_only.f90, gfortran.dg/nested_modules_1.f90,
	gfortran.dg/nested_modules_2.f90, gfortran.dg/nested_modules_3.f90,
	gfortran.dg/nested_modules_4.f90, gfortran.dg/nested_modules_5.f90,
	gfortran.dg/parens_5.f90, gfortran.dg/parent_result_ref_4.f90,
	gfortran.dg/pr15164.f90, gfortran.dg/pr16861.f90,
	gfortran.dg/pr17615.f90, gfortran.dg/pr19926.f90,
	gfortran.dg/pr21177.f90, gfortran.dg/pr26246_1.f90,
	gfortran.dg/private_type_1.f90, gfortran.dg/private_type_2.f90,
	gfortran.dg/private_type_3.f90, gfortran.dg/private_type_4.f90,
	gfortran.dg/procedure_lvalue.f90, gfortran.dg/pure_byref_3.f90,
	gfortran.dg/same_name_1.f90,
	gfortran.dg/sibling_dummy_procedure_1.f90,
	gfortran.dg/sibling_dummy_procedure_2.f90,
	gfortran.dg/sibling_dummy_procedure_3.f90,
	gfortran.dg/substr_1.f90, gfortran.dg/substring_equivalence.f90,
	gfortran.dg/use_allocated_1.f90, gfortran.dg/used_dummy_types_1.f90,
	gfortran.dg/used_dummy_types_2.f90,
	gfortran.dg/used_dummy_types_3.f90,
	gfortran.dg/used_dummy_types_4.f90,
	gfortran.dg/used_dummy_types_5.f90,
	gfortran.dg/used_interface_ref.f90, gfortran.dg/used_types_1.f90,
	gfortran.dg/userdef_operator_1.f90: Use it.

Index: gcc/testsuite/lib/gcc-dg.exp
===================================================================
--- gcc/testsuite/lib/gcc-dg.exp	(revision 112254)
+++ gcc/testsuite/lib/gcc-dg.exp	(working copy)
@@ -404,6 +404,13 @@
     }
 }
 
+# Remove files for specified Fortran modules.
+proc cleanup-modules { modlist } {
+    foreach modname $modlist {
+	remove-build-file [string tolower $modname].mod
+    }
+}
+
 # We need to make sure that additional_* are cleared out after every
 # test.  It is not enough to clear them out *before* the next test run
 # because gcc-target-compile gets run directly from some .exp files
Index: gcc/testsuite/gfortran.dg/assumed_dummy_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/assumed_dummy_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/assumed_dummy_1.f90	(working copy)
@@ -43,4 +43,4 @@
   END SUBROUTINE roo
 end program test
 
-
+! { dg-final { cleanup-modules "global" } }
Index: gcc/testsuite/gfortran.dg/char_array_structure_constructor.f90
===================================================================
--- gcc/testsuite/gfortran.dg/char_array_structure_constructor.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/char_array_structure_constructor.f90	(working copy)
@@ -26,3 +26,5 @@
     ENDDO
   end subroutine alloc
 END program char_array_structure_constructor
+
+! { dg-final { cleanup-modules "global" } }
Index: gcc/testsuite/gfortran.dg/equiv_constraint_3.f90
===================================================================
--- gcc/testsuite/gfortran.dg/equiv_constraint_3.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/equiv_constraint_3.f90	(working copy)
@@ -10,4 +10,4 @@
 EQUIVALENCE(K,L) ! { dg-error "conflicts with USE ASSOCIATED attribute" }
 END
 
-
+! { dg-final { cleanup-modules "TEST" } }
Index: gcc/testsuite/gfortran.dg/io_constraints_2.f90
===================================================================
--- gcc/testsuite/gfortran.dg/io_constraints_2.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/io_constraints_2.f90	(working copy)
@@ -67,3 +67,5 @@
 100 continue
 200 format (2i6)
  END
+
+! { dg-final { cleanup-modules "global" } }
Index: gcc/testsuite/gfortran.dg/used_dummy_types_4.f90
===================================================================
--- gcc/testsuite/gfortran.dg/used_dummy_types_4.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/used_dummy_types_4.f90	(working copy)
@@ -99,3 +99,4 @@
   end subroutine foo
 END
 
+! { dg-final { cleanup-modules "global" } }
Index: gcc/testsuite/gfortran.dg/pure_byref_3.f90
===================================================================
--- gcc/testsuite/gfortran.dg/pure_byref_3.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/pure_byref_3.f90	(working copy)
@@ -31,3 +31,5 @@
     a = hoj()
     if (.not. all(a == (/1, 2, 3/))) call abort()
 end program pure_byref_3
+
+! { dg-final { cleanup-modules "huj_mod" } }
Index: gcc/testsuite/gfortran.dg/bad_automatic_objects_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/bad_automatic_objects_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/bad_automatic_objects_1.f90	(working copy)
@@ -18,3 +18,5 @@
   integer, dimension (i) :: k ! { dg-error "must have constant shape" }
   character (len = i) :: c2   ! { dg-error "must have constant character length" }
 end program foobar
+
+! { dg-final { cleanup-modules "foo bar" } }
Index: gcc/testsuite/gfortran.dg/nested_modules_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/nested_modules_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/nested_modules_1.f90	(working copy)
@@ -41,3 +41,5 @@
        call eyeore ()
        call tigger (w)
        end
+
+! { dg-final { cleanup-modules "mod0 mod1 mod2" } }
Index: gcc/testsuite/gfortran.dg/func_derived_2.f90
===================================================================
--- gcc/testsuite/gfortran.dg/func_derived_2.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/func_derived_2.f90	(working copy)
@@ -39,4 +39,4 @@
   if (y%i.ne.112) call abort ()
 end program func_derived_2
 
-
+! { dg-final { cleanup-modules "mpoint" } }
Index: gcc/testsuite/gfortran.dg/private_type_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/private_type_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/private_type_1.f90	(working copy)
@@ -17,3 +17,4 @@
   end subroutine dummysub
 end module modboom
 
+! { dg-final { cleanup-modules "modboom" } }
Index: gcc/testsuite/gfortran.dg/generic_4.f90
===================================================================
--- gcc/testsuite/gfortran.dg/generic_4.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/generic_4.f90	(working copy)
@@ -26,3 +26,5 @@
 call baz(y,z)
 if (any (y /= z)) call abort ()
 end
+
+! { dg-final { cleanup-modules "FOO" } }
Index: gcc/testsuite/gfortran.dg/assumed_shape_ranks_2.f90
===================================================================
--- gcc/testsuite/gfortran.dg/assumed_shape_ranks_2.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/assumed_shape_ranks_2.f90	(working copy)
@@ -43,3 +43,5 @@
   call foo (bar, i)
   if (i .ne. 2) call abort ()
 end
+
+! { dg-final { cleanup-modules "mod1" } }
Index: gcc/testsuite/gfortran.dg/elemental_subroutine_2.f90
===================================================================
--- gcc/testsuite/gfortran.dg/elemental_subroutine_2.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/elemental_subroutine_2.f90	(working copy)
@@ -61,4 +61,6 @@
   end forall
   if (any(reshape (i, (/4/)).ne.(/1,8,27,64/))) call abort ()
 
-end program test_assign
\ No newline at end of file
+end program test_assign
+
+! { dg-final { cleanup-modules "type assign" } }
Index: gcc/testsuite/gfortran.dg/der_io_2.f90
===================================================================
--- gcc/testsuite/gfortran.dg/der_io_2.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/der_io_2.f90	(working copy)
@@ -52,4 +52,4 @@
     write (*, *) zb
 end program prog
 
-
+! { dg-final { cleanup-modules "gfortran2" } }
Index: gcc/testsuite/gfortran.dg/auto_char_dummy_array_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/auto_char_dummy_array_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/auto_char_dummy_array_1.f90	(working copy)
@@ -54,3 +54,4 @@
 
 end program oh_no_not_pr15908_again
 
+! { dg-final { cleanup-modules "global" } }
Index: gcc/testsuite/gfortran.dg/pr21177.f90
===================================================================
--- gcc/testsuite/gfortran.dg/pr21177.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/pr21177.f90	(working copy)
@@ -51,3 +51,5 @@
   if (tt(null(c4)) /= 3) call abort()
   if (tt(null(c8)) /= 4) call abort()
 end program test
+
+! { dg-final { cleanup-modules "mymod" } }
Index: gcc/testsuite/gfortran.dg/use_allocated_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/use_allocated_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/use_allocated_1.f90	(working copy)
@@ -16,3 +16,5 @@
   use foo
   if (.not.allocated(bar)) call abort
 end subroutine init
+
+! { dg-final { cleanup-modules "foo" } }
Index: gcc/testsuite/gfortran.dg/intent_used_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/intent_used_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/intent_used_1.f90	(working copy)
@@ -15,3 +15,5 @@
       END SUBROUTINE foo
    END INTERFACE
 END MODULE global
+
+! { dg-final { cleanup-modules "global" } }
Index: gcc/testsuite/gfortran.dg/used_dummy_types_5.f90
===================================================================
--- gcc/testsuite/gfortran.dg/used_dummy_types_5.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/used_dummy_types_5.f90	(working copy)
@@ -83,3 +83,4 @@
   end subroutine foo
 END
 
+! { dg-final { cleanup-modules "global" } }
Index: gcc/testsuite/gfortran.dg/der_pointer_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/der_pointer_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/der_pointer_1.f90	(working copy)
@@ -16,3 +16,5 @@
 
    type(x_t), pointer :: x
 end module test
+
+! { dg-final { cleanup-modules "test" } }
Index: gcc/testsuite/gfortran.dg/nested_modules_2.f90
===================================================================
--- gcc/testsuite/gfortran.dg/nested_modules_2.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/nested_modules_2.f90	(working copy)
@@ -36,3 +36,4 @@
   if (all (l.ne.(/84,42,0/))) call abort ()
 end program testfoobar
 
+! { dg-final { cleanup-modules "foo bar foobar" } }
Index: gcc/testsuite/gfortran.dg/used_types_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/used_types_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/used_types_1.f90	(working copy)
@@ -19,3 +19,5 @@
     mtpcar%coo='a'             !ICE was here
   END SUBROUTINE str_clan
 END MODULE
+
+! { dg-final { cleanup-modules "testcase tp_trace" } }
Index: gcc/testsuite/gfortran.dg/func_derived_3.f90
===================================================================
--- gcc/testsuite/gfortran.dg/func_derived_3.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/func_derived_3.f90	(working copy)
@@ -123,3 +123,5 @@
   if (trim (line).ne."simple  =     1") call abort ()
   close (10)
 end program
+
+! { dg-final { cleanup-modules "func_derived_3 func_derived_3a" } }
Index: gcc/testsuite/gfortran.dg/private_type_2.f90
===================================================================
--- gcc/testsuite/gfortran.dg/private_type_2.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/private_type_2.f90	(working copy)
@@ -21,4 +21,4 @@
 END MODULE
 END
 
-
+! { dg-final { cleanup-modules "TEST" } }
Index: gcc/testsuite/gfortran.dg/int_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/int_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/int_1.f90	(working copy)
@@ -170,3 +170,5 @@
    if (i4 /= 17_ik4 .or. i8 /= 17_ik8) call abort
    
 end program test_int
+
+! { dg-final { cleanup-modules "mykinds" } }
Index: gcc/testsuite/gfortran.dg/allocate_char_star_scalar_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/allocate_char_star_scalar_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/allocate_char_star_scalar_1.f90	(working copy)
@@ -29,3 +29,5 @@
     call foo(q)
 
 end program hum
+
+! { dg-final { cleanup-modules "moo" } }
Index: gcc/testsuite/gfortran.dg/pr15164.f90
===================================================================
--- gcc/testsuite/gfortran.dg/pr15164.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/pr15164.f90	(working copy)
@@ -14,3 +14,4 @@
       end subroutine split
       end module specfiles
 
+! { dg-final { cleanup-modules "specfiles" } }
Index: gcc/testsuite/gfortran.dg/der_io_3.f90
===================================================================
--- gcc/testsuite/gfortran.dg/der_io_3.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/der_io_3.f90	(working copy)
@@ -38,3 +38,5 @@
 use m2
 call test
 end
+
+! { dg-final { cleanup-modules "m1 m2" } }
Index: gcc/testsuite/gfortran.dg/pr19926.f90
===================================================================
--- gcc/testsuite/gfortran.dg/pr19926.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/pr19926.f90	(working copy)
@@ -23,3 +23,4 @@
    i = map(42)
 end subroutine string_comp
 
+! { dg-final { cleanup-modules "b" } }
Index: gcc/testsuite/gfortran.dg/dummy_functions_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/dummy_functions_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/dummy_functions_1.f90	(working copy)
@@ -34,3 +34,5 @@
    use innerfun
    call foo(3,f)
 end program test
+
+! { dg-final { cleanup-modules "innerfun outerfun" } }
Index: gcc/testsuite/gfortran.dg/initialization_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/initialization_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/initialization_1.f90	(working copy)
@@ -34,3 +34,5 @@
 
   end subroutine foo  
 end module const
+
+! { dg-final { cleanup-modules "const" } }
Index: gcc/testsuite/gfortran.dg/namelist_14.f90
===================================================================
--- gcc/testsuite/gfortran.dg/namelist_14.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/namelist_14.f90	(working copy)
@@ -92,3 +92,5 @@
 
     end subroutine foo
 end program namelist_14 
+
+! { dg-final { cleanup-modules "global" } }
Index: gcc/testsuite/gfortran.dg/assumed_size_dt_dummy.f90
===================================================================
--- gcc/testsuite/gfortran.dg/assumed_size_dt_dummy.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/assumed_size_dt_dummy.f90	(working copy)
@@ -15,3 +15,4 @@
 
 end
 
+! { dg-final { cleanup-modules "TEST" } }
Index: gcc/testsuite/gfortran.dg/global_references_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/global_references_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/global_references_1.f90	(working copy)
@@ -96,3 +96,5 @@
     entry link2 (nameg)    ! { dg-error "is already being used as a SUBROUTINE" }
     return
   end
+
+! { dg-final { cleanup-modules "m" } }
Index: gcc/testsuite/gfortran.dg/nested_modules_3.f90
===================================================================
--- gcc/testsuite/gfortran.dg/nested_modules_3.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/nested_modules_3.f90	(working copy)
@@ -53,3 +53,5 @@
   CALL sub3 (z, j)
   IF (ALL (j.ne.(/3,2,1/))) CALL abort ()
 END PROGRAM use_foobar
+
+! { dg-final { cleanup-modules "foo bar foobar" } }
Index: gcc/testsuite/gfortran.dg/namelist_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/namelist_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/namelist_1.f90	(working copy)
@@ -5,3 +5,5 @@
   integer,private :: x
   namelist /n/ x ! { dg-error "cannot be member of PUBLIC namelist" "" }
 end module
+
+! { dg-final { cleanup-modules "namelist_1" } }
Index: gcc/testsuite/gfortran.dg/pr26246_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/pr26246_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/pr26246_1.f90	(working copy)
@@ -16,3 +16,4 @@
 
 ! { dg-final { scan-tree-dump-times "static int" 0 "original" } }
 ! { dg-final { cleanup-tree-dump "original" } }
+! { dg-final { cleanup-modules "pr26246_1" } }
Index: gcc/testsuite/gfortran.dg/derived_recursion.f90
===================================================================
--- gcc/testsuite/gfortran.dg/derived_recursion.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/derived_recursion.f90	(working copy)
@@ -22,3 +22,5 @@
 !  use snafu
 !  foo%v = 1
 !  end
+
+! { dg-final { cleanup-modules "snafu" } }
Index: gcc/testsuite/gfortran.dg/namelist_use_only.f90
===================================================================
--- gcc/testsuite/gfortran.dg/namelist_use_only.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/namelist_use_only.f90	(working copy)
@@ -32,3 +32,5 @@
   if ((i.ne.0).or.(rrrr.ne.3.5).or.foo()) call abort ()
   close (10)
 end program namelist_use_only
+
+! { dg-final { cleanup-modules "global" } }
Index: gcc/testsuite/gfortran.dg/private_type_3.f90
===================================================================
--- gcc/testsuite/gfortran.dg/private_type_3.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/private_type_3.f90	(working copy)
@@ -31,3 +31,4 @@
      end subroutine d
 end module c
 
+! { dg-final { cleanup-modules "a c" } }
Index: gcc/testsuite/gfortran.dg/char_result_9.f90
===================================================================
--- gcc/testsuite/gfortran.dg/char_result_9.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/char_result_9.f90	(working copy)
@@ -22,3 +22,5 @@
     s = s_to_c(c)
 
 end program huj
+
+! { dg-final { cleanup-modules "foo" } }
Index: gcc/testsuite/gfortran.dg/auto_char_len_3.f90
===================================================================
--- gcc/testsuite/gfortran.dg/auto_char_len_3.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/auto_char_len_3.f90	(working copy)
@@ -23,3 +23,5 @@
   if (txt .ne. "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz") &
         call abort ()
 end program TestStringTools
+
+! { dg-final { cleanup-modules "chtest" } }
Index: gcc/testsuite/gfortran.dg/convert_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/convert_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/convert_1.f90	(working copy)
@@ -14,3 +14,5 @@
 USE MODULE_B
 a = 0
 END
+
+! { dg-final { cleanup-modules "MODULE_A MODULE_B" } }
Index: gcc/testsuite/gfortran.dg/namelist_15.f90
===================================================================
--- gcc/testsuite/gfortran.dg/namelist_15.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/namelist_15.f90	(working copy)
@@ -57,3 +57,5 @@
              (x(2)%m(2)%ch(2) == "kz"))) call abort ()
 
 end program namelist_15
+
+! { dg-final { cleanup-modules "global" } }
Index: gcc/testsuite/gfortran.dg/pr16861.f90
===================================================================
--- gcc/testsuite/gfortran.dg/pr16861.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/pr16861.f90	(working copy)
@@ -30,3 +30,5 @@
 program test
   call quus
 end program test
+
+! { dg-final { cleanup-modules "foo bar" } }
Index: gcc/testsuite/gfortran.dg/enum_10.f90
===================================================================
--- gcc/testsuite/gfortran.dg/enum_10.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/enum_10.f90	(working copy)
@@ -59,3 +59,5 @@
 call f4 (two4, 2)
 call f4 (max4, huge(1_4)+0)
 end
+
+! { dg-final { cleanup-modules "enum_10" } }
Index: gcc/testsuite/gfortran.dg/sibling_dummy_procedure_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/sibling_dummy_procedure_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/sibling_dummy_procedure_1.f90	(working copy)
@@ -30,3 +30,5 @@
       call bar(self, z)
    end subroutine
 end
+
+! { dg-final { cleanup-modules "foo" } }
Index: gcc/testsuite/gfortran.dg/der_pointer_3.f90
===================================================================
--- gcc/testsuite/gfortran.dg/der_pointer_3.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/der_pointer_3.f90	(working copy)
@@ -16,3 +16,5 @@
 program size_test
   use ints
 end program size_test
+
+! { dg-final { cleanup-modules "ints" } }
Index: gcc/testsuite/gfortran.dg/nested_modules_4.f90
===================================================================
--- gcc/testsuite/gfortran.dg/nested_modules_4.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/nested_modules_4.f90	(working copy)
@@ -23,3 +23,5 @@
   character*15  :: buffer  
   buffer = lc ("Have a Nice DAY")
   end
+
+! { dg-final { cleanup-modules "string serial" } }
Index: gcc/testsuite/gfortran.dg/host_used_types_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/host_used_types_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/host_used_types_1.f90	(working copy)
@@ -37,4 +37,6 @@
         end if
     end subroutine SetTimeSteps
 
-end module ThermoData
\ No newline at end of file
+end module ThermoData
+
+! { dg-final { cleanup-modules "ModelParams ThermoData" } }
Index: gcc/testsuite/gfortran.dg/allocatable_function_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/allocatable_function_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/allocatable_function_1.f90	(working copy)
@@ -109,4 +109,4 @@
 end program alloc_fun
 ! { dg-final { scan-tree-dump-times "free" 9 "original" } }
 ! { dg-final { cleanup-tree-dump "original" } }
-
+! { dg-final { cleanup-modules "m" } }
Index: gcc/testsuite/gfortran.dg/implicit_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/implicit_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/implicit_1.f90	(working copy)
@@ -9,3 +9,4 @@
 common/rommel/aaa ! { dg-error "no IMPLICIT type" "no IMPLICIT type" }
 end
 
+! { dg-final { cleanup-modules "AHFinder_dat" } }
Index: gcc/testsuite/gfortran.dg/private_type_4.f90
===================================================================
--- gcc/testsuite/gfortran.dg/private_type_4.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/private_type_4.f90	(working copy)
@@ -15,3 +15,5 @@
     end function
 
 end module
+
+! { dg-final { cleanup-modules "m1" } }
Index: gcc/testsuite/gfortran.dg/contained_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/contained_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/contained_1.f90	(working copy)
@@ -31,3 +31,5 @@
   call a
   if (i .ne. 1) call abort
 end program
+
+! { dg-final { cleanup-modules "contained_1_mod" } }
Index: gcc/testsuite/gfortran.dg/entry_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/entry_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/entry_1.f90	(working copy)
@@ -43,3 +43,5 @@
   call test1 ()
   call test2 ()
 end program
+
+! { dg-final { cleanup-modules "m" } }
Index: gcc/testsuite/gfortran.dg/procedure_lvalue.f90
===================================================================
--- gcc/testsuite/gfortran.dg/procedure_lvalue.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/procedure_lvalue.f90	(working copy)
@@ -16,4 +16,6 @@
   use t
   b = 1.       ! { dg-error "l-value since it is a procedure" }
   y = a(1.)
-end subroutine r
\ No newline at end of file
+end subroutine r
+
+! { dg-final { cleanup-modules "t" } }
Index: gcc/testsuite/gfortran.dg/sibling_dummy_procedure_2.f90
===================================================================
--- gcc/testsuite/gfortran.dg/sibling_dummy_procedure_2.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/sibling_dummy_procedure_2.f90	(working copy)
@@ -30,3 +30,5 @@
       call bar_(self, z)
    end subroutine
 end
+
+! { dg-final { cleanup-modules "foo" } }
Index: gcc/testsuite/gfortran.dg/der_pointer_4.f90
===================================================================
--- gcc/testsuite/gfortran.dg/der_pointer_4.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/der_pointer_4.f90	(working copy)
@@ -9,3 +9,5 @@
   end type foo
   type (foo), save :: bar
 end module crash
+
+! { dg-final { cleanup-modules "crash" } }
Index: gcc/testsuite/gfortran.dg/nested_modules_5.f90
===================================================================
--- gcc/testsuite/gfortran.dg/nested_modules_5.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/nested_modules_5.f90	(working copy)
@@ -24,3 +24,5 @@
   character*15  :: buffer  
   buffer = lc ("Have a Nice DAY")
   end
+
+! { dg-final { cleanup-modules "anything serial" } }
Index: gcc/testsuite/gfortran.dg/char_array_constructor.f90
===================================================================
--- gcc/testsuite/gfortran.dg/char_array_constructor.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/char_array_constructor.f90	(working copy)
@@ -13,3 +13,4 @@
   if (b(2) /= 'efghij') call abort
 end program y
 
+! { dg-final { cleanup-modules "z" } }
Index: gcc/testsuite/gfortran.dg/assumed_charlen_function_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/assumed_charlen_function_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/assumed_charlen_function_1.f90	(working copy)
@@ -81,3 +81,4 @@
 
 END
 
+! { dg-final { cleanup-modules "M1 INTEGER_SETS" } }
Index: gcc/testsuite/gfortran.dg/large_real_kind_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/large_real_kind_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/large_real_kind_1.f90	(working copy)
@@ -75,3 +75,5 @@
   c2(1:1) = ' '
   if (c1 /= c2) call abort
 end program test
+
+! { dg-final { cleanup-modules "testmod" } }
Index: gcc/testsuite/gfortran.dg/elemental_initializer_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/elemental_initializer_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/elemental_initializer_1.f90	(working copy)
@@ -31,3 +31,5 @@
   end function len_
 
 end module iso_varying_string
+
+! { dg-final { cleanup-modules "iso_varying_string" } }
Index: gcc/testsuite/gfortran.dg/implicit_2.f90
===================================================================
--- gcc/testsuite/gfortran.dg/implicit_2.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/implicit_2.f90	(working copy)
@@ -46,3 +46,5 @@
   v%i = 42
 end subroutine
 end module
+
+! { dg-final { cleanup-modules "implicit_2" } }
Index: gcc/testsuite/gfortran.dg/elemental_non_intrinsic_dummy_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/elemental_non_intrinsic_dummy_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/elemental_non_intrinsic_dummy_1.f90	(working copy)
@@ -19,3 +19,5 @@
   INTEGER :: XX
   SUB=XX()
 END
+
+! { dg-final { cleanup-modules "TT" } }
Index: gcc/testsuite/gfortran.dg/automatic_module_variable.f90
===================================================================
--- gcc/testsuite/gfortran.dg/automatic_module_variable.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/automatic_module_variable.f90	(working copy)
@@ -14,3 +14,5 @@
     init = x
   end function init
 end module sd
+
+! { dg-final { cleanup-modules "sd" } }
Index: gcc/testsuite/gfortran.dg/module_double_reuse.f90
===================================================================
--- gcc/testsuite/gfortran.dg/module_double_reuse.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/module_double_reuse.f90	(working copy)
@@ -17,3 +17,4 @@
   if (v.ne.u) call abort ()
 end program d
 
+! { dg-final { cleanup-modules "a" } }
Index: gcc/testsuite/gfortran.dg/module_blank_common.f90
===================================================================
--- gcc/testsuite/gfortran.dg/module_blank_common.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/module_blank_common.f90	(working copy)
@@ -16,4 +16,4 @@
   if (z.ne.cmplx (a,b)) call abort ()
 end program blank_common
 
-
+! { dg-final { cleanup-modules "global" } }
Index: gcc/testsuite/gfortran.dg/module_parameter_array_refs_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/module_parameter_array_refs_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/module_parameter_array_refs_1.f90	(working copy)
@@ -11,3 +11,4 @@
 
 end
 
+! { dg-final { cleanup-modules "foo" } }
Index: gcc/testsuite/gfortran.dg/userdef_operator_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/userdef_operator_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/userdef_operator_1.f90	(working copy)
@@ -33,3 +33,4 @@
 
 end program opshape
 
+! { dg-final { cleanup-modules "geometry" } }
Index: gcc/testsuite/gfortran.dg/substr_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/substr_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/substr_1.f90	(working copy)
@@ -11,3 +11,4 @@
 b = a
 end
 
+! { dg-final { cleanup-modules "m" } }
Index: gcc/testsuite/gfortran.dg/used_interface_ref.f90
===================================================================
--- gcc/testsuite/gfortran.dg/used_interface_ref.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/used_interface_ref.f90	(working copy)
@@ -43,6 +43,5 @@
     REAL :: solveCConvert(1:anzKomponenten)
     solveCConvert = (/(real(i), i = 1, anzKomponenten)/)
   END FUNCTION solveCConvert
-   
 
-
+! { dg-final { cleanup-modules "MODULE_CONC MODULE_THERMOCALC" } }
Index: gcc/testsuite/gfortran.dg/used_dummy_types_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/used_dummy_types_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/used_dummy_types_1.f90	(working copy)
@@ -33,4 +33,6 @@
   call init ()
   call test (res)
   if (res%a.ne.42) call abort
-end  
\ No newline at end of file
+end  
+
+! { dg-final { cleanup-modules "mtyp atest" } }
Index: gcc/testsuite/gfortran.dg/module_equivalence_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/module_equivalence_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/module_equivalence_1.f90	(working copy)
@@ -23,4 +23,4 @@
   call foo ()
 end program module_equiv
 
-
+! { dg-final { cleanup-modules "test_equiv" } }
Index: gcc/testsuite/gfortran.dg/sibling_dummy_procedure_3.f90
===================================================================
--- gcc/testsuite/gfortran.dg/sibling_dummy_procedure_3.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/sibling_dummy_procedure_3.f90	(working copy)
@@ -16,3 +16,5 @@
       end subroutine bar
     end subroutine foo
 end module
+
+! { dg-final { cleanup-modules "ice" } }
Index: gcc/testsuite/gfortran.dg/large_integer_kind_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/large_integer_kind_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/large_integer_kind_1.f90	(working copy)
@@ -36,3 +36,5 @@
   x = -huge(0_8)
   call testoutput (x,-huge(0_8),50,'(I50)')
 end program test
+
+! { dg-final { cleanup-modules "testmod" } }
Index: gcc/testsuite/gfortran.dg/namelist_4.f90
===================================================================
--- gcc/testsuite/gfortran.dg/namelist_4.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/namelist_4.f90	(working copy)
@@ -37,3 +37,4 @@
   END FUNCTION
 END
 
+! { dg-final { cleanup-modules "M1" } }
Index: gcc/testsuite/gfortran.dg/elemental_pointer_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/elemental_pointer_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/elemental_pointer_1.f90	(working copy)
@@ -9,3 +9,5 @@
     POINTER  :: LL ! { dg-error " POINTER attribute conflicts with ELEMENTAL attribute" }
   END FUNCTION LL
 END MODULE Test
+
+! { dg-final { cleanup-modules "Test" } }
Index: gcc/testsuite/gfortran.dg/generic_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/generic_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/generic_1.f90	(working copy)
@@ -17,3 +17,5 @@
 subroutine BAZ(X)
   use FOO
 end subroutine
+
+! { dg-final { cleanup-modules "FOO" } }
Index: gcc/testsuite/gfortran.dg/same_name_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/same_name_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/same_name_1.f90	(working copy)
@@ -11,3 +11,5 @@
   subroutine u
   end subroutine u
 end module m
+
+! { dg-final { cleanup-modules "n m" } }
Index: gcc/testsuite/gfortran.dg/cray_pointers_5.f90
===================================================================
--- gcc/testsuite/gfortran.dg/cray_pointers_5.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/cray_pointers_5.f90	(working copy)
@@ -13,3 +13,5 @@
   ipt = loc (arr)
   if (any (var .ne. (/1, 2, 3, 4, 5, 6, 7, 8, 9, 10/))) call abort
 end
+
+! { dg-final { cleanup-modules "cray_pointers_5" } }
Index: gcc/testsuite/gfortran.dg/parens_5.f90
===================================================================
--- gcc/testsuite/gfortran.dg/parens_5.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/parens_5.f90	(working copy)
@@ -17,3 +17,5 @@
    c = bobo(5)
    if (c .ne. "12345") call abort
 end program test
+
+! { dg-final { cleanup-modules "para" } }
Index: gcc/testsuite/gfortran.dg/der_charlen_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/der_charlen_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/der_charlen_1.f90	(working copy)
@@ -22,3 +22,5 @@
     type(T), intent(in)          :: X
   end subroutine
 end module another_core
+
+! { dg-final { cleanup-modules "core another_core" } }
Index: gcc/testsuite/gfortran.dg/namelist_use.f90
===================================================================
--- gcc/testsuite/gfortran.dg/namelist_use.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/namelist_use.f90	(working copy)
@@ -29,3 +29,5 @@
 
   close (10)
 end program namelist_use
+
+! { dg-final { cleanup-modules "global" } }
Index: gcc/testsuite/gfortran.dg/interface_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/interface_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/interface_1.f90	(working copy)
@@ -38,3 +38,5 @@
     end function
 
 end module z
+
+! { dg-final { cleanup-modules "y z" } }
Index: gcc/testsuite/gfortran.dg/entry_3.f90
===================================================================
--- gcc/testsuite/gfortran.dg/entry_3.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/entry_3.f90	(working copy)
@@ -23,3 +23,5 @@
   call bar(a)
   if (any (a .ne. (/3, 4/))) call abort
 end program
+
+! { dg-final { cleanup-modules "entry_4" } }
Index: gcc/testsuite/gfortran.dg/named_interface.f90
===================================================================
--- gcc/testsuite/gfortran.dg/named_interface.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/named_interface.f90	(working copy)
@@ -7,3 +7,5 @@
     end subroutine really_snafu
   end interface foo
 end module snafu
+
+! { dg-final { cleanup-modules "snafu" } }
Index: gcc/testsuite/gfortran.dg/used_dummy_types_2.f90
===================================================================
--- gcc/testsuite/gfortran.dg/used_dummy_types_2.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/used_dummy_types_2.f90	(working copy)
@@ -30,3 +30,5 @@
     v = x%f2(:)
   end subroutine foo
 end module mod2
+
+! { dg-final { cleanup-modules "mod1 mod2" } }
Index: gcc/testsuite/gfortran.dg/internal_references_2.f90
===================================================================
--- gcc/testsuite/gfortran.dg/internal_references_2.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/internal_references_2.f90	(working copy)
@@ -17,4 +17,6 @@
   subroutine sub(a)  ! Would give an error on "already defined" here
     real a
   end subroutine sub
-end module aap
\ No newline at end of file
+end module aap
+
+! { dg-final { cleanup-modules "aap" } }
Index: gcc/testsuite/gfortran.dg/generic_2.f90
===================================================================
--- gcc/testsuite/gfortran.dg/generic_2.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/generic_2.f90	(working copy)
@@ -18,3 +18,5 @@
  integer,intent(in) :: nspden 
  
  end subroutine nonlinear
+
+! { dg-final { cleanup-modules "bidon" } }
Index: gcc/testsuite/gfortran.dg/module_commons_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/module_commons_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/module_commons_1.f90	(working copy)
@@ -22,3 +22,4 @@
   call foo ()
 end program collision
 
+! { dg-final { cleanup-modules "m1 m2" } }
Index: gcc/testsuite/gfortran.dg/substring_equivalence.f90
===================================================================
--- gcc/testsuite/gfortran.dg/substring_equivalence.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/substring_equivalence.f90	(working copy)
@@ -6,3 +6,5 @@
   character :: at, dev
   equivalence ( encodings(1:1),at ), ( encodings(2:2),dev)
 end module FLAGS
+
+! { dg-final { cleanup-modules "FLAGS" } }
Index: gcc/testsuite/gfortran.dg/derived_pointer_recursion.f90
===================================================================
--- gcc/testsuite/gfortran.dg/derived_pointer_recursion.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/derived_pointer_recursion.f90	(working copy)
@@ -20,3 +20,4 @@
 !  copyright 1996 Loren P. Meissner -- May be distributed if this line is included.
 !  Linked List operations with Pointer to Pointer
 
+! { dg-final { cleanup-modules "llo" } }
Index: gcc/testsuite/gfortran.dg/char_result_11.f90
===================================================================
--- gcc/testsuite/gfortran.dg/char_result_11.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/char_result_11.f90	(working copy)
@@ -113,3 +113,5 @@
     print *, str
 
 end program test
+
+! { dg-final { cleanup-modules "cutils" } }
Index: gcc/testsuite/gfortran.dg/interface_2.f90
===================================================================
--- gcc/testsuite/gfortran.dg/interface_2.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/interface_2.f90	(working copy)
@@ -27,3 +27,5 @@
   END FUNCTION Compare_Float_Single
 
 END MODULE Compare_Float_Numbers
+
+! { dg-final { cleanup-modules "Compare_Float_Numbers" } }
Index: gcc/testsuite/gfortran.dg/parent_result_ref_4.f90
===================================================================
--- gcc/testsuite/gfortran.dg/parent_result_ref_4.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/parent_result_ref_4.f90	(working copy)
@@ -20,3 +20,5 @@
   use m
   if (f ().ne.2) call abort ()
 end
+
+! { dg-final { cleanup-modules "m" } }
Index: gcc/testsuite/gfortran.dg/io_constraints_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/io_constraints_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/io_constraints_1.f90	(working copy)
@@ -76,3 +76,5 @@
 100 continue
 200 format (2i6)
  END
+
+! { dg-final { cleanup-modules "fails global" } }
Index: gcc/testsuite/gfortran.dg/used_dummy_types_3.f90
===================================================================
--- gcc/testsuite/gfortran.dg/used_dummy_types_3.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/used_dummy_types_3.f90	(working copy)
@@ -34,3 +34,4 @@
     CALL TEST(x)         ! { dg-error "Type/rank mismatch in argument" }
   END
 
+! { dg-final { cleanup-modules "T1 T2" } }
Index: gcc/testsuite/gfortran.dg/default_initialization.f90
===================================================================
--- gcc/testsuite/gfortran.dg/default_initialization.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/default_initialization.f90	(working copy)
@@ -16,3 +16,5 @@
    end type default_initialization
    type (default_initialization) t ! { dg-error "default initialization" }
 end module bad
+
+! { dg-final { cleanup-modules "bad" } }
Index: gcc/testsuite/gfortran.dg/func_derived_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/func_derived_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/func_derived_1.f90	(working copy)
@@ -36,3 +36,5 @@
 end function f
 
 end
+
+! { dg-final { cleanup-modules "m" } }
Index: gcc/testsuite/gfortran.dg/pr17615.f90
===================================================================
--- gcc/testsuite/gfortran.dg/pr17615.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/pr17615.f90	(working copy)
@@ -17,3 +17,5 @@
   real(8) :: c(3)
   c = cross_product()
 END PROGRAM TEST
+
+! { dg-final { cleanup-modules "module_vec3d" } }
Index: gcc/testsuite/gfortran.dg/generic_3.f90
===================================================================
--- gcc/testsuite/gfortran.dg/generic_3.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/generic_3.f90	(working copy)
@@ -28,3 +28,5 @@
      call gauss( x(i), a, yan, dyda, ma )
   end do
 end subroutine mrqcof
+
+! { dg-final { cleanup-modules "fit_functions" } }
Index: gcc/testsuite/gfortran.dg/assumed_shape_ranks_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/assumed_shape_ranks_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/assumed_shape_ranks_1.f90	(working copy)
@@ -23,3 +23,4 @@
   END SUBROUTINE TST
 END
 
+! { dg-final { cleanup-modules "addon" } }
Index: gcc/testsuite/gfortran.dg/implicit_actual.f90
===================================================================
--- gcc/testsuite/gfortran.dg/implicit_actual.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/implicit_actual.f90	(working copy)
@@ -32,3 +32,4 @@
   end subroutine foo
 end program snafu
 
+! { dg-final { cleanup-modules "global" } }
Index: gcc/testsuite/gfortran.dg/elemental_subroutine_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/elemental_subroutine_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/elemental_subroutine_1.f90	(working copy)
@@ -55,4 +55,6 @@
     real, intent(out) :: b
     b = -a
   end subroutine foobar
-end
\ No newline at end of file
+end
+
+! { dg-final { cleanup-modules "pr22146" } }
Index: gcc/testsuite/gfortran.dg/module_interface_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/module_interface_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/module_interface_1.f90	(working copy)
@@ -33,4 +33,6 @@
       if (N(1).ne.5) call abort ()
       return
     end subroutine Selection_Sort
-  end program module_interface
\ No newline at end of file
+  end program module_interface
+
+! { dg-final { cleanup-modules "Max_Loc_mod" } }
Index: gcc/testsuite/gfortran.dg/data_constraints_1.f90
===================================================================
--- gcc/testsuite/gfortran.dg/data_constraints_1.f90	(revision 112254)
+++ gcc/testsuite/gfortran.dg/data_constraints_1.f90	(working copy)
@@ -28,3 +28,5 @@
   data foobar /0/       ! { dg-error "conflicts with FUNCTION" }
   end function foobar
 end
+
+! { dg-final { cleanup-modules "global" } }



More information about the Fortran mailing list