Deutsch   English   Français   Italiano  
<vaqmtr$4b7g$1@dont-email.me>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: "Steven G. Kargl" <sgk@REMOVEtroutmask.apl.washington.edu>
Newsgroups: comp.lang.fortran
Subject: Re: What does F2023:C8107 mean?
Date: Thu, 29 Aug 2024 20:50:03 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 50
Message-ID: <vaqmtr$4b7g$1@dont-email.me>
References: <vaqct8$2fvv$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Thu, 29 Aug 2024 22:50:03 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="4afedcbeaa7990c168c722ba61e3a5a1";
	logging-data="142576"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX18zcGu3JoiPmxeKwmK0y6FC"
User-Agent: Pan/0.145 (Duplicitous mercenary valetism; d7e168a
 git.gnome.org/pan2)
Cancel-Lock: sha1:LFD8Dhz4Vwz3ZBFeJlwsjIMHQcQ=
Bytes: 2366

On Thu, 29 Aug 2024 17:59:04 +0000, Steven G. Kargl wrote:

> F2023:C8107 states
> 
>    The namelist-group-name shall not be a name accessed by use association.
> 
> Are following pieces of code standard conforming?
> 
> ! Code 1
> module mod_nml1
>    implicit none
>    logical :: ldiag
>    namelist /nam_nml1/ldiag
> end module mod_nml1
> 
> program ice_nml
>    use mod_nml1
>    implicit none
>    integer :: ilu
>    ldiag = .false.
>    write(*,nml=nam_nml1)  ! <-- Use assoc. of namelist-group-name
> end program ice_nml
> 
> ! Code 2
> module mod_nml1
>    implicit none
>    logical :: ldiag
>    namelist /nam_nml1/ldiag
> end module mod_nml1
> 
> program ice_nml
>    use mod_nml1
>    implicit none
>    integer :: ilu, j
>    namelist /nam_nml1/j   ! <-- Use assoc of namelist-group-name
>    ldiag = .false.
>    j = 42
>    write(*,nml=nam_nml1)  ! <-- Use assoc of namelist-group-name
> end program ice_nml
> 
> Clarification of the interpretation of C8107 would be appreciated?

After a few minutes re-reading parts of Fortran 2023, I have concluded
that Code 1 is conforming and Code 2 is non-conforming.  My issue was
caused by gfortran accepting Code 2 without and error or warning under
-std=gnu option (default behavior).  If -std=f2023 is used, then gfortran
issues an expected error messages.

-- 
steve