To: J3/Interp J3/01-398
From: Bill Long
Date: 4-dec-2001
Subject: Namelist lists and interp JP 17
This paper provides background information for a straw vote on guidance
to /interp for their reply to interp JP-17.
Background:
Interp JP-17 asked whether it is allowed to have the same variable name
appear more than once in a namelist group object list.
The relevant sections of the standard are essentially the same for f90,
f95, and f2000. In the 01-007R4 draft these sections are
[90:2-22] Section 5.4 on the NAMELIST statement
[227:10-234:29] Section 10.10 on Namelist formatting.
Based on the text in these sections, the current standard does allow
multiple instances of the same variable name by virtue of failing to
disallow it. The same is true of the f90 standard. According to Joanne
Brixius this wording in the standard is intentional. In keeping with the
rules for other forms of I/O lists, the design for namelist in f90
allowed for multiple instances of the same name in a namelist group.
The only mention of multiple instances of a name in a namelist is in
[231:3-4] where the standard explicitly allows a name-value sequence
to occur more than once in namelist input.
Adding a rule that would prohibit multiple instances of a name in a
namelist group would consititue a change in the standard that would
cause some existing codes to become non-conforming, and also require
that edits be made to Annex B of both f95 and f2000 to document the
deleted feature. This would represent the first time a language feature
had been deleted without having been made obsolescent in a previous
standard.
Therefore, the reply to interp JP-17 should state that a variable name
may appear more than once in a namelist-group-object-list. No edits are
required for the f95 standard. A clarification could be added to the
f2000 standard.
Eidt to 01-007R4:
[90:17] add "A namelist group object may occur more than once in a
namelist group."
Straw vote:
Choose one of these:
1) Continue to allow multiple instances of names in namelists
2) Disallow multiple instances of names in namelists
3) Don't care