parent_result_ref_2.f90

来自「用于进行gcc测试」· F90 代码 · 共 36 行

F90
36
字号
! { dg-do run }
! Tests the fix for PR19546 in which an ICE would result from
! setting the parent result in a contained procedure. 
! This case tests character results.
! 
function f()  character(4) :: f  f = "efgh"  call sub ()  if (f.eq."iklm") f = "abcd"  call sub ()contains  subroutine sub    f = "wxyz"    if (f.eq."efgh") f = "iklm"  end subroutine subend function ffunction g()              ! { dg-warning "is obsolescent in fortran 95" }  character(*) :: g  g = "efgh"  call sub ()  if (g.eq."iklm") g = "ABCD"  call sub ()contains  subroutine sub    g = "WXYZ"    if (g.eq."efgh") g = "iklm"  end subroutine subend function g  character(4), external :: f, g
  if (f ().ne."wxyz") call abort ()  if (g ().ne."WXYZ") call abort ()end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?