interface_5.f90
来自「用于进行gcc测试」· F90 代码 · 共 57 行
F90
57 行
! { dg-do compile }! Tests the fix for the interface bit of PR29975, in which the! interfaces bl_copy were rejected as ambiguous, even though! they import different specific interfaces. In this testcase,! it is verified that ambiguous specific interfaces are caught.!! Contributed by Joost VandeVondele <jv244@cam.ac.uk> and! simplified by Tobias Burnus <burnus@gcc.gnu.org>!SUBROUTINE RECOPY(N, c) real, INTENT(IN) :: N character(6) :: c print *, n c = "recopy"END SUBROUTINE RECOPYMODULE f77_blas_extraPUBLIC :: BL_COPYINTERFACE BL_COPY MODULE PROCEDURE SDCOPYEND INTERFACE BL_COPYCONTAINS SUBROUTINE SDCOPY(N, c) REAL, INTENT(IN) :: N character(6) :: c print *, n c = "sdcopy" END SUBROUTINE SDCOPYEND MODULE f77_blas_extraMODULE f77_blas_genericINTERFACE BL_COPY SUBROUTINE RECOPY(N, c) real, INTENT(IN) :: N character(6) :: c END SUBROUTINE RECOPYEND INTERFACE BL_COPYEND MODULE f77_blas_genericsubroutine i_am_ok USE f77_blas_extra ! { dg-warning "ambiguous interfaces" } USE f77_blas_generic character(6) :: chr chr = "" if (chr /= "recopy") call abort () end subroutine i_am_okprogram main USE f77_blas_extra ! { dg-error "Ambiguous interfaces" } USE f77_blas_generic character(6) :: chr chr = "" call bl_copy(1.0, chr) if (chr /= "recopy") call abort () end program main! { dg-final { cleanup-modules "f77_blas_generic f77_blas_extra" } }
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?