diff mbox

PR47266

Message ID 5B9BD65F-3361-4E28-AC38-B91093CAA013@lps.ens.fr
State New
Headers show

Commit Message

Dominique d'Humières Nov. 10, 2015, 2:41 p.m. UTC
I’ld like to close PR47266 as FIXED after the commit on trunk and 5.2.1 of the following test extracted from
https://gcc.gnu.org/ml/fortran/2011-01/msg00094.html. The test succeeds on trunk and 5.2.1 (see https://gcc.gnu.org/ml/gcc-testresults/2015-11/msg00965.html in which it was included).

OK for trunk and 5.2.1?

Dominique

Comments

Jerry DeLisle Nov. 11, 2015, 7:19 p.m. UTC | #1
On 11/10/2015 06:41 AM, Dominique d'Humières wrote:
> Index: gcc/testsuite/ChangeLog
> ===================================================================
> --- gcc/testsuite/ChangeLog	(revision 229793)
> +++ gcc/testsuite/ChangeLog	(working copy)
> @@ -1,3 +1,9 @@
> +2015-11-10  Dominique d'Humieres <dominiq@lps.ens.fr>
> +
> +	PR fortran/47266
> +	* gfortran.dg/warn_unused_function_2.f90: Add a new test.
>

OK for trunk

Jerry
diff mbox

Patch

Index: gcc/testsuite/ChangeLog
===================================================================
--- gcc/testsuite/ChangeLog	(revision 229793)
+++ gcc/testsuite/ChangeLog	(working copy)
@@ -1,3 +1,9 @@ 
+2015-11-10  Dominique d'Humieres <dominiq@lps.ens.fr>
+
+	PR fortran/47266
+	* gfortran.dg/warn_unused_function_2.f90: Add a new test.
+
2015-11-10  Ilya Enkovich  <enkovich.gnu@gmail.com>

 	 * gcc.target/i386/mask-pack.c: New test.

Index: gcc/testsuite/gfortran.dg/module_private_2.f90
===================================================================
--- gcc/testsuite/gfortran.dg/module_private_2.f90	(nonexistent)
+++ gcc/testsuite/gfortran.dg/module_private_2.f90	(working copy)
@@ -0,0 +1,34 @@ 
+! { dg-do compile }
+! { dg-options "-O2 -fdump-tree-optimized" }
+!
+! PR fortran/47266
+!
+! Check whether the private procedure "priv" is optimized away
+!
+module m
+  implicit none
+  private :: priv
+  private :: export1, export2
+  public  :: pub
+contains
+  integer function priv()
+    priv = 44
+  end function priv
+  integer function export1()
+    export1 = 45
+  end function export1
+  function export2() bind(C) ! { dg-warning "is marked PRIVATE" }
+    use iso_c_binding, only: c_int
+    integer(c_int) :: export2
+    export2 = 46
+  end function export2
+  subroutine pub(a,b)
+    integer :: a
+    procedure(export1), pointer :: b
+    a = priv()
+    b => export1
+  end subroutine pub
+end module m
+! { dg-final { scan-tree-dump-times "priv" 0 "optimized" } }
+! { dg-final { scan-tree-dump-times "export1 \\(\\)" 1 "optimized" } }
+! { dg-final { scan-tree-dump-times "export2 \\(\\)" 1 "optimized" } }