From jwagener@amoco.com  Sat Oct 14 01:09:27 1995
Received: from interlock.amoco.com (interlock.amoco.com [192.195.167.2]) by dkuug.dk (8.6.12/8.6.12) with SMTP id BAA12176 for <sc22wg5@dkuug.dk>; Sat, 14 Oct 1995 01:09:18 +0100
From: jwagener@amoco.com
Received: by interlock.amoco.com id AA06671
  (InterLock SMTP Gateway 3.0 for sc22wg5@dkuug.dk);
  Fri, 13 Oct 1995 19:09:10 -0500
Message-Id: <199510140009.AA06671@interlock.amoco.com>
Received: by interlock.amoco.com (Protected-side Proxy Mail Agent-3);
  Fri, 13 Oct 1995 19:09:10 -0500
Received: by interlock.amoco.com (Protected-side Proxy Mail Agent-2);
  Fri, 13 Oct 1995 19:09:10 -0500
Received: by interlock.amoco.com (Protected-side Proxy Mail Agent-1);
  Fri, 13 Oct 1995 19:09:10 -0500
X-Openmail-Hops: 1
Date: Fri, 13 Oct 95 19:07:55 -0500
Subject: suggested replacement for 3 of 7
Mime-Version: 1.0
To: sc22wg5@dkuug.dk
Content-Type: text/plain; charset=US-ASCII; name="Text_1"
Content-Transfer-Encoding: 7bit

     To WG5:
     
     Following is a suggested replacement for CD ballot comments 3 of 7 
     that Miles recently distributed.  This version corrects several minor 
     errors and has the items in page number order.
     
     
     Jerry Wagener, for the US
     
     =====================================================
     
     Editorial Improvements
     ----------------------
     
     [xiii:24] replace "blanks in edit descriptors" with "whether blanks 
     are permitted within edit descriptors in free source form".
     
     [xiv:7] delete ", those with scalar dummy arguments,".
     
     [xiv:9] replace "they make it feasible to allow user-defined (pure) 
     functions" with "it is reasonable to allow them".
     
     [xiv:16]  hyphenate derived-type in the following places.
         [xiv:16] (Intro)
         [xiv:18] (Intro)
         [38:8] (4.4)
         [38:35-36] (4.4.1)  Only the "derived type" at the line split.
         [73-8] (6.1.2)
     
     [xiv:20] delete "Finally, " and move xiv:20-22 to xiii:21+.
     
     [xiv:26-32]  capitalize only the first word instead of each word in 
     the following places
         [xiv:26-32] (Intro)  Titles like "Data concepts"
         [14:4-17] (Table 2.2)  Throughout the table, including its note
         [22:4-14] (Table 3.1)  Table heads and body
         [84-87] (Notes 7.4-7.10)  All the "Syntactic class" headings
         [100:3] (Table 7.3)  In table head
         [100:36] (Table 7.4)  In table head
         [101:23-35] (Table 7.5)  In table head and second column body
         [102:27-33] (Table 7.6)  In table head and second column body
         [103:31] (Table 7.8)  In table head
         [104:3]  (Table 7.8 continuation)  In table head
     
     [xiv:38] replace "forms" with "form".
     
     [xv:8-9]  (Intro) and  [15:8] (2.4.1.1) lower case all the type names 
     here
     
     [ xvi:23]  Intro, Organization, Program units, para 3, line 1 - change 
     'OPERATOR option on interface blocks' to  'OPERATOR option in 
     interface blocks"
     
     [ xvi:25]  Intro, Organization, Program units, para 3, line 1 - change 
     'ASSIGNMENT option on interface blocks' to  'ASSIGNMENT option in 
     interface blocks"
     
     [1:15] remove ":"; 1:16,17 append "," to line; 1:18 append ", and" to 
     line; 1:19 append "." to line.
     
     [1:21] remove ":"; 
     
     [1:22,24,26,29,31,33] append "," to line; 1:34 append ", and" to line; 
     1:35 append "." to line.
     
     [4:30] add "Except where stated otherwise, such requirements and 
     prohibitions apply to programs rather than processors.".
     
     [5:1]  delete spurious colon
     
     [7:13]  change "ISO 646:1983" to "ISO/IEC 646:1991" and in [37:7], 
     [37:11], and [240:23]
     
     [7:17]  delete the reference to CCIR Recommendation 460-2
     
     [7:17-18]  delete the normative reference to IEC 559 and IEEE 754
     
     [14:1]  change "though" to "although"
     
     [14:38]   item (3) - split into two numbered items as follows:
                   (With item (4) in obsolescent font)
                   (3)   END=, ERR=, and EOR= specifiers may result in a 
     branch.
                   (4)   Alternate returns may result in a branch.
     
     [17:19] embolden "elemental".
     
     [26:34]  add 'that initiates a comment' after '"!"'
     
     [29:35]  change "constants" to "literal constants"
     
     [31:1-2]  all lower case on these 2 lines
     
     [31:15-17]  change the sentence
     "Among the kind values that provide a given range, one providing the 
     smallest range is returned by the intrinsic function SELECTED_INT_KIND 
     (13.14.94)."
         to
     "The intrinsic function SELECTED_INT_KIND (13.14.94) returns a kind 
     value based on a specified decimal range requirement." and move this 
     sentence to after the following one, which mentions the RANGE 
     intrinsic.
     
     [32:39-43]  change the sentence
     "Among the kind values that provide a given precision and a given 
     exponent range, one providing the smallest decimal precision is 
     returned by the intrinsic function SELECTED_REAL_KIND (13.14.95)."
        to
     "The intrinsic function SELECTED_REAL_KIND (13.14.95) returns a kind 
     value based on specified precision and decimal range requirements." 
     and move this sentence to after the following one, which mentions the 
     PRECISION and RANGE intrinsics.
     
     [33:4] replace "input arguments to intrinsics" with "actual arguments 
     to intrinsic procedures".
     
     [33:9-11]  (Note 4.7)  use big font dots in .TRUE. and .FALSE.
     
     [33:12] replace "F" with "IF".
     
     [33:20]  change "IEC 559 (IEEE 754)" to "ANSI/IEEE 754-1985, IEEE 
     standard for binary floating point arithmetic"
     
     [33:22-23]  change "IEC 559" to "IEEE 754" (twice)
     
     Change margins to fit A4 paper width, with manual adjustments as 
     necessary.
     
     Justify note headings left instead of right, and 'NOTE' in all caps in 
     the heading to distinguish it from normative text.
     
     [36:30]  add section 13 cross-references as listed below after 
     references to intrinsic functions
     
         [36:30] (4.3.2.1.1)  CHAR (13.14.19)
         [36:31] (4.3.2.1.1)  ICHAR (13.14.45)
         [37:12] (Note 4.15)  ACHAR (13.14.2) and IACHAR (13.14.40)
         [37:14] (4.3.2.1.1)  ...LLT (13.14.56-13.14.59)
         [55:27] (5.1.2.4.3)
           "LBOUND function" --> "intrinsic function LBOUND (13.14.53)"
         [55:28] (5.1.2.4.3)
           "UBOUND function" --> "intrinsic function UBOUND (13.14.113)"
         [89:24] (7.1.4.1)  NULL (13.14.79)
     
     [40:13]  delete spurious '"'
     
     [43:5]  (Note 4.30)  add period after "created"
     
     [52:31-32]  bold face "PRIVATE attribute" and "PUBLIC attribute"
     
     [53:29]  (Note 5.10) change "of an" to "of"
     
     [54:40]  change "an array pointer or an allocatable array" to "an 
     allocatable array or an array pointer"
     
     [55:11]  insert "<-list>" after "<deferred-shape-spec>"
     
     [55:40-56:4]  fix the size of the italic font characters to be the 
     size for obsolete
     
     [58:10]  unbolden "PUBLIC" and "PRIVATE"
     
     [62:1-3]  change "DATA statement repeat factor" to 
     "<data-stmt-repeat>" twice
     
     [63:26+]   Add the following as a note:
     The following is an example of a mapping to a derived type that is 
     inaccessible in the local scope:
     PROGRAM MAIN
       TYPE BLOB
         INTEGER I
       END TYPE BLOB
       IMPLICIT TYPE(BLOB) (A)
       TYPE(BLOB) :: B
       CALL STEVE
     CONTAINS
       SUBROUTINE STEVE
         INTEGER BLOB
         ...
         AA=B
         ...
       END SUBROUTINE STEVE
     END PROGRAM MAIN
     In the subroutine STEVE, it is not possible to explicitly declare a 
     variable to be of type BLOB because BLOB has been given a different 
     meaning, but implicit mapping for the letter A still maps to type 
     BLOB, so AA is of type BLOB.
     
     [69:18]  delete ", in common blocks,"
     
     [70:17-18]  move the "(11.4)" to after "unit"
     
     [71:33]  change "12.5.2.1 and 12.4.1.5" to "12.4.1.1, 12.4.1.5, 
     12.4.1.6, and 12.5.2.1"
     
     [72:13]  delete spurious blank at beginning of line
     
     [73:40] replace "contsruct" with "construct".
     
     [75: 9]  2nd line of Rank 3 entry, last col - change 's2)xd2'  to  
     'j2)xd1'
     
     [75:10]  3rd line of Rank 3 entry, last col - change 's3)'  to  'j3)'
     
     [75:26]  delete "(6.2.2)".
     
     [77:13]  (Note 6.10)  change "Z (3, 1)" to "Z (2, 1)" in the 3rd 
     column of the last row of this array
     
     [81:1] replace "processor defined" with "processor dependent".
     
     [88:16]  change "12.3.1" to "12.3.2.1"
     
     [88:35,37,41]  insert "of" after "shall be"
     
     [92:29]  line before R730 -change 'expression '  to  expression.'
     
     [92:31,33,35,37]  delete the "A" or "An" at the start of each 
     constraint
     
     [93:16-94:39]  reorder section 7.1.6.2 as follows
         [94:19-22]
         [93:29-94:18]
         [93:16-28]
         [93:23-39]
     
     [93:20]  (Note 7.15) delete "(7.1.6.2)"
     
     [94:14] delete entire line (one word)
     
     [94:19-20]  change 
     "A <<specification expression>> (R510, R515, R516) is a restricted 
     expression that is scalar and of type integer." to
     "A <<specification expression>> is an expression with limitations that 
     make it suitable for use in specifications such as character lengths 
     (R510) and array bounds (R515, R516)."
     
     [95:37]  insert "the" before "evaluation"
     
     [104:20]   Replace "For example, in" with "In".  Combine notes 7.37 
     and 7.38 into a single note.  Combine notes 7.39 and 7.40 into a 
     single note.
     
     [106:25]  note 7.41, line 2 - use bold font for '* Y'
     
     [109:24]  insert a comma after "scalar"
     
     [110:10]  change "STRUCTURE" to "TARGET_STRUCTURE"
     
     [111:19]  delete extra blank before "where-body-construct" (if there 
     is one)
     
     [111:47]   Replace "each" with "the".
     
     [112:29]  change comment to 
     "  ! because SUM is transformational, all elements of A
        ! are processed by LOG, in spite of the WHERE mask."
     
     [113:22]  change "forall-body-construct" to "<forall-body-construct>".
     
     [113:33]  change "B(I:J) /= 0.0" to "B(I,J) /= 0.0".
      
     [114:32]  move "A =" to line 34; page 116, lines 29, 35 (twice); page 
     117, lines 13, 17.
     
     [114:44]  change "are" to "is"
     
     [115:9]   change "forall" to "FORALL"; cf. page 114, line 41
     
     [116:2]   delete the extra blank before "may" and between "target" and 
     "."
     
     [117:27]  change 'shalll' to 'shall'
     
     [118:4]  change "(I=1:N)" to "FORALL (I=1:N)"
     
     [120:1] Delete "(12.4.2, 12.4.3, 12.7)" and, after "references"
      insert "(12.4.2, 12.4.3)".
     
     [128:6] Change "DO-variable" to "DO variable".
     
     [129:28-29] Ensure all text is in the obsolescent font. Some
      characters look big.
     
     [132:17] Change "9.1.3" to "9.5.1"
     
     [134:7] After "statement" add "(9.2.1.3.1)"
     
     [137:1] after "exist", insert "(9.2.1.1)"
     
     [137:3] Delete "(9.2.1.1)"
     
     [139:37] after "default character." insert
      "When a record contains any nondefault characters, the
      appropriate value for the RECL= specifier is processor
      dependent."
     
     [143:32+] Insert this introductory sentence
      "The FMT= specifier supplies a format specification or
      specifies list directed formatting, for a formatted
      input/output statement."
     
     [146:13] Change "an assumed" to "a whole assumed".
     106:22 (note, this is out of order, and replaces an edit
      to 102:22 in 95-218, where we added a note)
      Change "an assumed" to "a whole assumed".
     
     [146:26] Change "derived type object" to "derived-type object".
     
     [149:25] after "next effective item", add
     
      " (sometimes referred to as next effective list item)"
     
     [150:25] after "for" insert " unformatted"
     
     ]150:28] after "for" insert " unformatted"
     
     [151:29-30]  Table heading - put 2nd column heading on one line
     
     [151:29-34] Lower case Capitals on all but first word of
      second column
     
     [165:35-43+]  replace [165:35] with "<expv> is the numeric value of 
     the decimal exponent <exp>." and in the table [165:38-43], replace all 
     "<exp>"s with "<expv>" and on the next page, [166:3] replace "<exp>" 
     with "<expv>".
     
     [166:3]  change "forms" to "edit descriptor forms" and add the missing 
     "|" after "<exp>"
     
     [166: 3]  2nd last para, line 2 - change '|exp>999'  to  '|exp|>999'
     
     [166: 5]  last para, line 2 -change '|k|leading'  to  '|k| leading'
     
     [166:17]  para 4, line 2 - change 'yyyx'  to  'yyy.x'
     
     [166:32]  para 5, line 2 - change '|exp>999'  to  '|exp|>999'
     
     [166:37]  change the "-" before "500" to be the same "-" as is used 
     elsewhere on that line
     
     [167:3]  change "4.3.1.2" to "R414"
     
     [171: 5]  last para, line 1 - change 'optional on the slash edit 
     descriptor' to  'optional in the slash edit descriptor'
     
     [171:37]  change "4.3.1.2" to "R414"
     
     [172:34]  change "may" to "shall"
     
     [175:2]  after "example", insert ":"
     
     [178:36]  para 5, 2nd last line - change 'character such'  to  'such 
     character'
     
     [180:4]  after "example", insert ":"
     
     [184:37]  change "that entities" to "the entities"
     
     [185:14]  last para, line 1 - change  'ONLY option on the USE 
     statement' to  'ONLY option in the USE statement'
     
     [186:6]  remove extra blank after "accessible"
     
     [192:26]  para after constraints after R1207, line 3 - change 'name on 
     a procedure heading' to  'name in a procedure heading'
     
     [192:34]  change "but an ENTRY" to "but an entry"
     
     [193:22]  change "MODULE PROCEDURE specification" to "MODULE PROCEDURE 
     statement"
     
     [195:33]  change "[::]" to "[ :: ]"
     
     [196:16]  change "[::]" to "[ :: ]"
     
     [196:32]  change "by implicit" to "by an implicit"
     
     [200:14]  change "can" to "could"
     
     [200:20,22]  change "the default"  to "omitting the INTENT attribute" 
     and change "with default intent" to "without an INTENT attribute"
     
     [205:32]  change "...]" to "] ..."
     
     [205:41]  2nd constraint after R1220 - change 'present on the 
     end-function-stmt' to  'present in the end-function-stmt'
     
     [206: 1]  5th constraint after R1220, line 1 - change 'present on the 
     end-function-stmt' to  'present in the end-function-stmt'
     
     [206:35]  after "present", insert a comma
     
     [207:32]  1st constraint after R1224, line 1 - change 'specified on 
     the end-subroutine-stmt' to  'specified in the end-subroutine-stmt'
     
     [207:36]  4th constraint after R1224, line 1 - change 'present on the 
     end-subroutine-stmt' to  'present in the end-subroutine-stmt'
     
     [207:46]  after "present", insert a comma
     
     [208:34-35]  2nd para after constraints, line 4 - change 'specified on 
     the ENTRY statement' to  'specified in the ENTRY statement'
     
     [208:35] Section 12.5.2.5, 2nd para after constraints, line 5 - change 
     'named on the ENTRY statement' to  'named in the ENTRY statement'
     
     [208:36]  2nd para after constraints, line 6 - change  'named on the 
     FUNCTION statement' to  'named in the FUNCTION statement'
     
     [208:40] Section 12.5.2.5, 3rd para after constraints, line 1 - change 
      'specified on the ENTRY statement' to  'specified in the ENTRY 
     statement'
     
     [208:40-41]  3rd para after constraints, line 1 - change  'specified 
     on the FUNCTION statement' to  'specified in the FUNCTION statement'
     
     [208:45]  4th para after constraints, line 3 - change 'specified on 
     the ENTRY statement' to  'specified in the ENTRY statement'
     
     [209: 1]  5th para after constraints, line 1 - change  'specified on 
     the SUBROUTINE statement' to  'specified in the SUBROUTINE statement'
     
     [209:26] Section 12.5.2.5, 3rd last para, line 2 - change 'RECURSIVE 
     on the initial... statement'
      to  'RECURSIVE in the initial... statement'
     
     [209:28]  change "INstead" to "Instead"
     
     [209:28]  2nd last para, line 1 - change  'INstead'  to  'Instead'
     
     [209:29]  2nd last para, line 2 - change 'specified on the SUBROUTINE 
     or FUNCTION statement' to  'specified in the SUBROUTINE or FUNCTION 
     statement'
     
     [209:32]  2nd last para, line 2 - change 'specified on the SUBROUTINE 
     or FUNCTION statement' to  'specified in the SUBROUTINE or FUNCTION 
     statement'
     
     [210:38] section 12.6 heading - change 'Pure Procedures' to 'Pure 
     procedures'
     
     [213:5]  after "function", insert "actual"
     
     [213:7]  after "shape of the", insert "actual"
     
     [213:7]  after "If the", insert "actual"
     
     [213:8]  after "all", insert "actual"
     
     [213:11]  after "each", insert "array actual"
     
     [213:19]  after "subroutine", insert "actual"
     
     [213:26]  change "with scalar actual arguments were" to "had been"
     
     [215:19] section 13.3 heading - change 'Intrinsic Procedures' to 
     'intrinsic procedures'
     
     [236:14]  change "CCIR Recommendation 460-2" to "ISO 8601:1988"  
     
     [247: 8]  Note 13.10 - change 'Note that the'  to  'The'
     
     [247:24] Section 13.14.59, Note 13.11 - change 'Note that the'  to  
     'The'
     
     [249:39] and [252:25]      Remove "(optional)".
     
     [292:32]  add ' :' after ')' in Annex A entries for generic identifier 
     [292:32], numeric type [294:14], and transformational function 
     [296:39]
     
     [299:28] B.1.1 heading - change 'Double Precision DO-Variables' to 
     'double precision DO-variables'
     
     [301:31] B.1.5 heading - change 'Edit Descriptor' to 'edit descriptor'
     
     [313:11-12]  para after Example 1, lines 5-6 - change 'required on the 
     EXIT statement' to  'required in the EXIT statement'
     
     [313:12]  para after Example 1, line 6 - change  'optional on the 
     CYCLE statement' to  'optional in the CYCLE statement'

