===================================================================
@@ -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.
===================================================================
@@ -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" } }