view gcc/testsuite/gfortran.dg/warn_unused_function_3.f90 @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 04ced10e8804
children
line wrap: on
line source

! { dg-do compile }
! { dg-options "-Wunused-function" }
!
! PR 67982: Bogus -Wunused-function warning with contained function
!
! Contributed by Joost VandeVondele <Joost dot VandeVondele at mat dot ethz dot ch> 

MODULE base
  INTERFACE 
    SUBROUTINE bar_int()
    END SUBROUTINE 
  END INTERFACE
  PUBLIC hook
  PRIVATE 
  PROCEDURE(bar_int), POINTER :: hook=>NULL()
END MODULE base

MODULE foo
  USE base, ONLY: hook  
  PUBLIC init
  PRIVATE 
CONTAINS
  SUBROUTINE init()
     hook=>bar
  END SUBROUTINE init
  SUBROUTINE bar()
     WRITE(6,*) "In bar"
  END SUBROUTINE 
END MODULE

USE foo, ONLY: init
USE base, ONLY: hook
CALL init()
CALL hook()
END