namelist_33.f90
来自「用于进行gcc测试」· F90 代码 · 共 71 行
F90
71 行
! { dg-do compile }!! PR fortran/32876 - accepts private items in public NAMELISTs!! USE-associated types with private components may! not be used in namelists -- anywhere.!MODULE types type :: tp4 PRIVATE real :: x integer :: i end type ! nested type type :: tp3 real :: x integer, private :: i end type type :: tp2 type(tp3) :: t end type type :: tp1 integer :: i type(tp2) :: t end typeEND MODULEMODULE nml USE types type(tp1) :: t1 type(tp4) :: t4 namelist /a/ t1 ! { dg-error "use-associated PRIVATE components" } namelist /b/ t4 ! { dg-error "use-associated PRIVATE components" } integer, private :: i namelist /c/ i ! { dg-error "was declared PRIVATE and cannot be member of PUBLIC namelist" }contains subroutine y() type(tp2) :: y2 type(tp3) :: y3 namelist /nml2/ y2 ! { dg-error "has use-associated PRIVATE components " } namelist /nml3/ y3 ! { dg-error "has use-associated PRIVATE components " } end subroutineEND MODULEprogram xxx use types type :: tp5 TYPE(tp4) :: t ! nested private components end type type(tp5) :: t5 namelist /nml/ t5 ! { dg-error "has use-associated PRIVATE components" }contains subroutine z() namelist /nml2/ t5 ! { dg-error "has use-associated PRIVATE components" } end subroutineend program! { dg-final { cleanup-modules "types nml" } }
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?