-------------------------------------------------------------------------------- xvi 1 00000a 35 a Minor edits and corrections to ISO/IEC 1539:1991 (E) xvi 1 00000a 35 b WG5 approved; ready for SC22 xvi 1 00000a 35 c 1. Introduction, Overview, Data Concepts, last sentence [xvi:1-2]; xvi 1 00000a 36 c Delete the sentence "The section concludes ... names." 2 4 000135 1926 a INTENT(IN) conformance 2 4 000135 1926 b X3J3 consideration in progress 2 4 000135 1926 c Section 1.4 second paragraph, first sentence [2:4] 2 4 000135 1927 c 2 4 000135 1928 c change 'uses' 2 4 000135 1929 c to 'contains' 2 38 000122 947 a Intrinsic procedures in modules 2 38 000122 947 b X3J3 consideration in progress 2 38 000122 947 c Page 2, section 1.4, paragraph 5: [2:38] 2 38 000122 948 c 2 38 000122 949 c In the last sentence of the paragraph replace "processor" by "processor 2 38 000122 950 c except through USE association (11.3.2)". 2 42 000146 2669 a Conformance 2 42 000146 2669 b X3J3 consideration in progress 2 42 000146 2669 c 1. In section 1.4, change the paragraph beginning "Note that" so that 2 42 000146 2670 c added data types are described in a manner parallel to added intrinsic 2 42 000146 2671 c procedures in the prior paragraph. [2:42] 2 42 000146 2672 c 2 42 000146 2673 c change "a nonstandard data type" 2 42 000146 2674 c to "additional intrinsic data types" 3 32 000061 2273 a G edit descriptor with "d" = 0 3 32 000061 2273 b WG5 approved; ready for SC22 3 32 000061 2273 c 3. In section 1.4.1, add item (5) as follows: [3:32] 3 32 000061 2274 c 3 32 000061 2275 c (5) A value of 0 for a list item in a formatted output statement 3 32 000061 2276 c will be formatted in a different form for some G edit 3 32 000061 2277 c descriptors. In addition, the Fortran 90 standard specifies how 3 32 000061 2278 c rounding of values will affect the output field form, but 3 32 000061 2279 c FORTRAN 77 did not address this issue: therefore, some 3 32 000061 2280 c FORTRAN 77 processors may produce a different output form than 3 32 000061 2281 c Fortran 90 processors for certain combinations of values and G 3 32 000061 2282 c edit descriptors. 3 32 000139 2224 a INTRINSIC, EXTERNAL attribute questions 3 32 000139 2224 b X3J3 consideration in progress 3 32 000139 2224 c 4. Section 1.4.1 [3:32+] 3 32 000139 2225 c 3 32 000139 2226 c Add (6) 'FORTRAN 77 permitted the specification of a type for an 3 32 000139 2227 c intrinsic function even when there was no function defined 3 32 000139 2228 c for that type. For example: 3 32 000139 2229 c INTRINSIC SIN 3 32 000139 2230 c LOGICAL SIN 3 32 000139 2231 c This International Standard specifies (5.1) that a type 3 32 000139 2232 c declaration for an intrinsic function may only confirm the type 3 32 000139 2233 c of an existing function. Thus a standard-conforming FORTRAN 77 3 32 000139 2234 c program specifying a type that is not defined for an intrinsic 3 32 000139 2235 c function does not conform to this International Standard. 5 9 000058 1211 a Ambiguous use of "keyword" 5 9 000058 1211 b X3J3 approved; ready for WG5 5 9 000058 1211 c 1. Page 5, section 1.5.3, (3) [5:9] 5 9 000058 1212 c delete "keyword actual arguments and" 5 9 000058 1213 c rationale: these are not specifiers and -spec is not used with them. 8 8 000101 122 a Specification statements 8 8 000101 122 b X3J3 consideration in progress 8 8 000101 122 c 1. Section 2.1, R207 [8:8] change 'specification-stmt' to 'declaration-stmt' 8 29 000101 124 a Specification statements 8 29 000101 124 b X3J3 consideration in progress 8 29 000101 124 c 2. Section 2.1, R214 [8:29] change 'specification-stmt' to 'declaration-stmt' 11 13 000101 126 a Specification statements 11 13 000101 126 b X3J3 consideration in progress 11 13 000101 126 c 3. Section 2.3.1, following 2nd paragraph [11:13+] insert new paragraph: 11 13 000101 127 c 11 13 000101 128 c Specification statements are all the statements that can appear in 11 13 000101 129 c the , except for the ENTRY and FORMAT statements. 11 13 000101 130 c 11 13 000101 131 c note to editor: "Specification statements", above, should be in bold. 11 30 000101 133 a Specification statements 11 30 000101 133 b X3J3 consideration in progress 11 30 000101 133 c 4. Figure 2.1, [11:30] change 'Specification' to 'Declaration' 12 31 000101 135 a Specification statements 12 31 000101 135 b X3J3 consideration in progress 12 31 000101 135 c 5. In note to Figure 2.1, [12:31] change 'Specification' to 'Declaration' 15 25 00000a 38 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 15 25 00000a 38 b WG5 approved; ready for SC22 15 25 00000a 38 c 2. 2.4.6, third sentence [15:25]; Change "of" to "or". 16 3 000058 1215 a Ambiguous use of "keyword" 16 3 000058 1215 b X3J3 approved; ready for WG5 16 3 000058 1215 c 2. Page 16, section 2.5.2, first paragraph, first occurrence [16:3] 16 3 000058 1216 c change "statement keyword" 16 3 000058 1217 c --------- ------- 16 3 000058 1218 c to "statement keyword (often abbreviated to keyword)" 16 3 000058 1219 c --------- ------- ------- 16 3 000058 1220 c rationale: define "keyword", in a style similar to "object" 16 3 000058 1221 c in 2.4.3.1. 16 5 000004 211 a Blanks in format specifications in free form source 16 5 000004 211 b X3J3 approved; ready for WG5 16 5 000004 211 c 1. Section 2.5.2 following the sentence "Keywords appear ... through 12." 16 5 000004 212 c [16:5] add the following: 16 5 000004 213 c 16 5 000004 214 c "Note that in addition to keywords, upper-case letters may also 16 5 000004 215 c appear in various other lexical tokens. Examples include 16 5 000004 216 c operators such as .EQ., edit descriptors such as BN or Iw[.m], 16 5 000004 217 c and literal constants such as B'digit[digit]...'." 16 5 000004 218 c 16 5 000004 219 c Note that the first edit depends on a change made in 16 5 000004 220 c item 58 which moves a line from section 3.2.1 to 2.5.2 16 5 000058 1223 a Ambiguous use of "keyword" 16 5 000058 1223 b X3J3 approved; ready for WG5 16 5 000058 1223 c 3. Page 16, section 2.5.2, first paragraph, end of [16:5] 16 5 000058 1224 c add "Keywords appear as upper-case words in the syntax rules 16 5 000058 1225 c in Sections 4 through 12". 16 6 000058 1227 a Ambiguous use of "keyword" 16 6 000058 1227 b X3J3 approved; ready for WG5 16 6 000058 1227 c 4. Page 16, section 2.5.2, second paragraph, first sentence [16:6] 16 6 000058 1228 c change "name." to "name (see 12.4.1)." 16 35 000146 2676 a Conformance 16 35 000146 2676 b X3J3 consideration in progress 16 35 000146 2676 c 2. In section 2.5.7 [16:35-36] 16 35 000146 2677 c 16 35 000146 2678 c change "International Standard" 16 35 000146 2679 c to "International Standard or by the processor" 19 35 000004 222 a Blanks in format specifications in free form source 19 35 000004 222 b X3J3 approved; ready for WG5 19 35 000004 222 c 2. Section 3.2 last sentence [19:35-36] insert ", edit 19 35 000004 223 c descriptors" following "... , labels". 19 35 000058 1230 a Ambiguous use of "keyword" 19 35 000058 1230 b X3J3 approved; ready for WG5 19 35 000058 1230 c 5. Page 19, section 3.2 [19:35] 19 35 000058 1231 c change "keywords" to "statement keywords (2.5.2)" 19 37 000058 1233 a Ambiguous use of "keyword" 19 37 000058 1233 b X3J3 approved; ready for WG5 19 37 000058 1233 c 6. Page 19, section 3.2.1 [19:37-38] 19 37 000058 1234 c delete 19 37 000058 1235 c rationale: 2.5.2 is now the complete definition. 21 33 000130 1505 a Multiple statements on line with END statement 21 33 000130 1505 b X3J3 approved; ready for WG5 21 33 000130 1505 c Replace the first sentence of 3.3 [21:33] with: 21 33 000130 1506 c 21 33 000130 1507 c A Fortran program unit is a sequence of one or more lines, 21 33 000130 1508 c organized as Fortran statements, comments, and INCLUDE lines. 22 6 000004 225 a Blanks in format specifications in free form source 22 6 000004 225 b X3J3 approved; ready for WG5 22 6 000004 225 c 3. Section 3.3.1, second paragraph [22:6], change "... character 22 6 000004 226 c context." to "... character context or in a format specification." 24 13 000044 1600 a END statement and fixed form source 24 13 000044 1600 b WG5 approved; ready for SC22 24 13 000044 1600 c In 3.3.2.4 replace the text 24 13 000044 1601 c 24 13 000044 1602 c "and no other statement in the program unit may have an initial line that 24 13 000044 1603 c appears to be a program unit END statement" 24 13 000044 1604 c with 24 13 000044 1605 c ". A statement whose initial line appears to be a program unit END 24 13 000044 1606 c statement must not be continued." [24:13] 27 2 00000c 68 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 27 2 00000c 68 b X3J3 consideration in progress 27 2 00000c 68 c 7. In 4.3.1 Numeric Types 27 2 00000c 69 c 27 2 00000c 70 c delete the last sentence "In this standard..." [27:2-3] 27 2 00000c 71 c 27 2 00000c 72 c Rationale: this is a not quite accurate restatement of R306 in section 3.2.3. 27 2 00000c 73 c ("unsigned" is not defined for boz numeric constants) 33 12 000146 2681 a Conformance 33 12 000146 2681 b X3J3 consideration in progress 33 12 000146 2681 c 3. In section 4.4.1, change the fifth constraint following R424 to: [33:12-13] 33 12 000146 2682 c 33 12 000146 2683 c Constraint: A derived type must not be the same as the name 33 12 000146 2684 c of any intrinsic type defined in this standard nor the 33 12 000146 2685 c same as any other accessible derived type . 33 36 000015 491 a Error in fourth constraint for R429 33 36 000015 491 b WG5 approved; ready for SC22 33 36 000015 491 c Replace the fourth constraint after R429 [33:36] with: 33 36 000015 492 c 33 36 000015 493 c The character length specified by the in a 33 36 000015 494 c or the in a 33 36 000015 495 c (5.1, 5.1.1.5) must be a constant specification expression (7.1.6.2). 34 10 000138 2145 a PRIVATE accessibility of a MODULE PROCEDURE 34 10 000138 2145 b X3J3 consideration in progress 34 10 000138 2145 c 1. In 4.4.1 "Derived Type Definition", fourth paragraph following the five 34 10 000138 2146 c constraints following R429 34 10 000138 2147 c 34 10 000138 2148 c change ", and any procedure" 34 10 000138 2149 c to ", any generic identifier for that module procedure, 34 10 000138 2150 c and any procedure" [34:10] 38 3 000030 757 a Length of character literals in array constructors 38 3 000030 757 b X3J3 approved; ready for WG5 38 3 000030 757 c 1. Delete the second constraint following R435. [38:3] 38 4 000030 759 a Length of character literals in array constructors 38 4 000030 759 b X3J3 approved; ready for WG5 38 4 000030 759 c 2. Add the following paragraph after the constraints in 4.5. [38:4] 38 4 000030 760 c 38 4 000030 761 c Each ac-value {in italics} expression in the 38 4 000030 762 c array-constructor {in italics} must have the same type and type parameters. 39 36 000066 2530 a Declaration of FUNCTION type 39 36 000066 2530 b WG5 approved; ready for SC22 39 36 000066 2530 c 1. Change R504 "{()}" to "". 39 36 000066 2531 c [39:36] 40 12 000066 2533 a Declaration of FUNCTION type 40 12 000066 2533 b WG5 approved; ready for SC22 40 12 000066 2533 c 2. Change "Constraint: An for a that 40 12 000066 2534 c does not have the POINTER attribute must be an 40 12 000066 2535 c " 40 12 000066 2536 c to "Constraint: An for an that 40 12 000066 2537 c is a function result that does not have the POINTER attribute 40 12 000066 2538 c must be an ". [40:12] 40 14 000066 2540 a Declaration of FUNCTION type 40 14 000066 2540 b WG5 approved; ready for SC22 40 14 000066 2540 c 3. Delete the constraint "An for a that 40 14 000066 2541 c does have the POINTER attribute must be a ". [40:14] 40 24 000087 2215 a PARAMETER statements and SAVE statements 40 24 000087 2215 b X3J3 consideration in progress 40 24 000087 2215 c 1. Change the sixteenth constraint of section 5.1 to [40:24] 40 24 000087 2216 c 40 24 000087 2217 c The SAVE attribute must not be specified for an object that is in 40 24 000087 2218 c a common block, a dummy argument, a procedure, a function result, 40 24 000087 2219 c an automatic data object, or an object with the PARAMETER attribute. 40 35 000139 2214 a INTRINSIC, EXTERNAL attribute questions 40 35 000139 2214 b X3J3 consideration in progress 40 35 000139 2214 c 3. Section 5.1, second paragraph following the constraints [40:35-36] 40 35 000139 2215 c 40 35 000139 2216 c Replace 'An explicit type declaration statement is not required; 40 35 000139 2217 c however it is permitted. Specifying a type for a generic 40 35 000139 2218 c intrinsic function name in a ...' 40 35 000139 2219 c 40 35 000139 2220 c with 'An explicit type declaration statement confirming that type 40 35 000139 2221 c for either a specific or generic name is not required; however 40 35 000139 2222 c it is permitted. Such a ...' 40 38 000093 2639 a Scalar pointer function results 40 38 000093 2639 b X3J3 approved; ready for WG5 40 38 000093 2639 c 2. Insert the following paragraph after the second paragraph following 40 38 000093 2640 c the constraints in 5.1 [40:38+] 40 38 000093 2641 c 40 38 000093 2642 c A function result may be declared to have the pointer attribute. 41 8 000113 625 a Ordering of array specification and initialization 41 8 000113 625 b X3J3 approved; ready for WG5 41 8 000113 625 c Section 5.1, add the following to the end of the fifth paragraph 41 8 000113 626 c following the constraints [41:8]: 41 8 000113 627 c 41 8 000113 628 c "If the variable is an array, it must have 41 8 000113 629 c its shape specified either in the type declaration statement or a 41 8 000113 630 c previous attribute specification statement in the same scoping unit." 41 9 000087 2221 a PARAMETER statements and SAVE statements 41 9 000087 2221 b X3J3 consideration in progress 41 9 000087 2221 c 2. In section 5.1, change the first sentence of the next to last 41 9 000087 2222 c paragraph before the examples [41:9]: 41 9 000087 2223 c 41 9 000087 2224 c The presence of = implies that 41 9 000087 2225 c is saved, except for an in a named 41 9 000087 2226 c common block or an with the PARAMETER attribute. 42 29 000016 520 a Character length specification 42 29 000016 520 b WG5 approved; ready for SC22 42 29 000016 520 c Replace the text following the constraints for R508 [42:29] with: 42 29 000016 521 c 42 29 000016 522 c The in a CHARACTER and the * 42 29 000016 523 c in an or in a of a type definition 42 29 000016 524 c specify character length. The * in an or 42 29 000016 525 c a specifies an individual length and overrides the 42 29 000016 526 c length specified in the , if any. If a * 42 29 000016 527 c is not specified in an or a , the 42 29 000016 528 c or specified in the 42 29 000016 529 c is the character length. If the length is not 42 29 000016 530 c specified in a or a * , the length is 1. 43 5 000070 1365 a Characteristics specified by interface bodies 43 5 000070 1365 b X3J3 consideration in progress 43 5 000070 1365 c 1. In section 5.1.1.5 item (3), add to the end [43:5]: "Note that the 43 5 000070 1366 c interface for such a function cannot be specified in an interface body." 43 22 000032 1248 a Implicit declaration of a derived type 43 22 000032 1248 b WG5 approved; ready for SC22 43 22 000032 1248 c 1. In the first paragraph of 5.1.1.7, 43 22 000032 1249 c change "is specified" 43 22 000032 1250 c to "is declared explicitly". [43:22] 43 23 000112 566 a Sequence derived type external functions 43 23 000112 566 b X3J3 approved; ready for WG5 43 23 000112 566 c Add after the last sentence of the first paragraph of 5.1.1.7: [43:23] 43 23 000112 567 c 43 23 000112 568 c "If the data entity is a function result, the derived type can be specified 43 23 000112 569 c on the FUNCTION statement providing the derived type is defined within the 43 23 000112 570 c body of the function or is accessible there by use or host association." 46 30 000108 441 a Referencing disassociated pointers 46 30 000108 441 b X3J3 approved; ready for WG5 46 30 000108 441 c 1. Replace the first two lines of the seventh paragraph of 5.1.2.4.3, 46 30 000108 442 c "The size, bounds, and shape of the target ... association status." 46 30 000108 443 c [46:30-33] with: 46 30 000108 444 c 46 30 000108 445 c "The size, bounds, and shape of the target of a disassociated array 46 30 000108 446 c pointer are undefined. No part of such an array may be referenced 46 30 000108 447 c or defined; however, the array may appear as an argument to an 46 30 000108 448 c intrinsic inquiry function that is inquiring about argument presence, 46 30 000108 449 c a property of the type or type parameters, or association status." 46 41 000039 954 a Association of a pointer actual argument with a dummy argument 46 41 000039 954 b X3J3 approved; ready for WG5 46 41 000039 954 c 1. Delete the penultimate (tenth) paragraph of 5.1.2.4.3, "A pointer 46 41 000039 955 c dummy argument ... argument." [46:41-42] 46 43 000093 2637 a Scalar pointer function results 46 43 000093 2637 b X3J3 approved; ready for WG5 46 43 000093 2637 c 1. Delete the last paragraph of 5.1.2.4.3 [46:43]. 47 39 000087 2228 a PARAMETER statements and SAVE statements 47 39 000087 2228 b X3J3 consideration in progress 47 39 000087 2228 c 3. Remove the penultimate sentence of 5.1.2.5, "The SAVE attribute ... 47 39 000087 2229 c result, or an automatic data object." [47:39] 48 26 000139 2210 a INTRINSIC, EXTERNAL attribute questions 48 26 000139 2210 b X3J3 consideration in progress 48 26 000139 2210 c 1. Section 5.1.2.10 Replace 'object name' with '' [48:26] 48 30 000139 2212 a INTRINSIC, EXTERNAL attribute questions 48 30 000139 2212 b X3J3 consideration in progress 48 30 000139 2212 c 2. Section 5.1.2.11 Replace 'object name' with '' [48:30] 49 26 000138 2152 a PRIVATE accessibility of a MODULE PROCEDURE 49 26 000138 2152 b X3J3 consideration in progress 49 26 000138 2152 c 2. In 5.2.3 delete the third constraint. [49:26-28] 49 31 000143 2493 a Use association and functions/subroutines/intrinsics 49 31 000143 2493 b X3J3 consideration in progress 49 31 000143 2493 c Add at the end of the first paragraph of 5.2.3 [49:31]: 49 31 000143 2494 c 49 31 000143 2495 c "If a procedure is accessible from a module, then within the scoping unit of 49 31 000143 2496 c the module one of the following must be true: 49 31 000143 2497 c (1) if it is an intrinsic procedure, it must be given the INTRINSIC 49 31 000143 2498 c attribute or be used as an intrinsic procedure 49 31 000143 2499 c (2) the procedure must have an explicit interface 49 31 000143 2500 c (3) the procedure must be given the EXTERNAL attribute and if it is a 49 31 000143 2501 c function it must be explicitly declared in a type declaration 49 31 000143 2502 c statement. 50 9 000087 2231 a PARAMETER statements and SAVE statements 50 9 000087 2231 b X3J3 consideration in progress 50 9 000087 2231 c 4. Change the first constraint of section 5.2.4 to [50:9] 50 9 000087 2232 c 50 9 000087 2233 c An must not be a dummy argument name, ..., an automatic 50 9 000087 2234 c data object name, a named constant, or the name of an entity in a 50 9 000087 2235 c common block. 52 20 000136 1990 a scalar-structure-component in data-implied-do 52 20 000136 1990 b X3J3 consideration in progress 52 20 000136 1990 c On page 52, following the second constraint [52:20], insert the 52 20 000136 1991 c following constraint: 52 20 000136 1992 c 52 20 000136 1993 c Constraint: The must contain at least one 52 20 000136 1994 c that contains a . 52 25 000089 2313 a Errors in the DATA statement description 52 25 000089 2313 b X3J3 approved; ready for WG5 52 25 000089 2313 c 1. Add a new constraint after the second constraint following R537: [52:25] 52 25 000089 2314 c 52 25 000089 2315 c If a DATA statement constant value is a named constant or a 52 25 000089 2316 c structure constructor, the named constant or derived type must 52 25 000089 2317 c have been declared previously in the scoping unit or made 52 25 000089 2318 c accessible by use or host association. 52 44 000137 2066 a array-element in data-implied-do 52 44 000137 2066 b X3J3 consideration in progress 52 44 000137 2066 c On page 52, following the last paragraph [52:44+], add the following text: 52 44 000137 2067 c 52 44 000137 2068 c The of a must appear in at least 52 44 000137 2069 c one of each and 52 44 000137 2070 c contained within the range of the 52 44 000137 2071 c . 52 44 000137 2072 c 52 44 000137 2073 c Example: 52 44 000137 2074 c 52 44 000137 2075 c INTEGER ARRAY_1(5,5), ARRAY_2(5), ARRAY_3(10) 52 44 000137 2076 c DATA ((ARRAY_1(I, J+1), I = 1, 5), ARRAY_2(J+1), J = 0, 4) ... 52 44 000137 2077 c DATA ((ARRAY_3(I + J*1), I = 1, 2), J = 3, 4) ... 52 44 000137 2078 c 52 44 000137 2079 c TYPE SMALL 52 44 000137 2080 c INTEGER I(2) 52 44 000137 2081 c REAL R 52 44 000137 2082 c END TYPE 52 44 000137 2083 c 52 44 000137 2084 c TYPE(SMALL) GROUP(3) 52 44 000137 2085 c 52 44 000137 2086 c DATA ((GROUP(J)%I(K), K = 1, 2), J = 1, 3) ... 52 44 000137 2087 c 52 44 000137 2088 c Since ARRAY_1 is within the range of both I and J, its subscript list must 52 44 000137 2089 c contain references to both I and J, but since ARRAY_2 is only within the range 52 44 000137 2090 c of J, its subscript list need only reference J. 52 44 000137 2091 c 52 44 000137 2092 c The second DATA statement demonstrates that the DATA implied-DO variables need 52 44 000137 2093 c not be referenced in separate subscript expressions. 52 44 000137 2094 c 52 44 000137 2095 c The third DATA statement demonstrates that the implied-DO variables can be 52 44 000137 2096 c referenced in separate subscript lists of the same designator. In this case, 52 44 000137 2097 c note too that both J and K must be referenced in the designator since it falls 52 44 000137 2098 c within the range of both implied-DO variables. 53 4 000089 2320 a Errors in the DATA statement description 53 4 000089 2320 b X3J3 approved; ready for WG5 53 4 000089 2320 c 2. Delete the second sentence in the third paragraph following the 53 4 000089 2321 c constraints [53:4-5], "Each such value ...host association." 53 6 000089 2323 a Errors in the DATA statement description 53 6 000089 2323 b X3J3 approved; ready for WG5 53 6 000089 2323 c 3. In the third sentence [53:6], replace "following constant" with 53 6 000089 2324 c "following constant value". 53 11 000089 2326 a Errors in the DATA statement description 53 11 000089 2326 b X3J3 approved; ready for WG5 53 11 000089 2326 c 4. In the next paragraph, second sentence [53:11], change "constant" to 53 11 000089 2327 c "constant value". 53 17 000089 2329 a Errors in the DATA statement description 53 17 000089 2329 b X3J3 approved; ready for WG5 53 17 000089 2329 c 5. In the following paragraph, last sentence [53:17], change "constant" 53 17 000089 2330 c to "constant value". 53 18 000089 2332 a Errors in the DATA statement description 53 18 000089 2332 b X3J3 approved; ready for WG5 53 18 000089 2332 c 6. In the sixth paragraph [53:18-19], change "value of the constant" 53 18 000089 2333 c to "constant value" (twice) 53 43 000012 487 a Type of a named constant when there is implicit mapping 53 43 000012 487 b X3J3 consideration in progress 53 43 000012 487 c 1. In section 5.2.10 change the second paragraph to: [53:43-47] 53 43 000012 488 c 53 43 000012 489 c "The named constant must have its type, type parameters, and shape 53 43 000012 490 c specified in a prior specification of the or 53 43 000012 491 c declared implicitly (5.3). If the named constant is typed by the implicit 53 43 000012 492 c typing rules, its appearance in any subsequent specification of the 53 43 000012 493 c must confirm this implied type and the values of any 53 43 000012 494 c implied type parameters." 53 43 000114 689 a Named constant attribute specification 53 43 000114 689 b X3J3 consideration in progress 53 43 000114 689 c Section 5.2.10, replace the first sentence following the syntax 53 43 000114 690 c rules with [53:43]: 53 43 000114 691 c 53 43 000114 692 c "The named constant must have its type, shape, and any type 53 43 000114 693 c parameters specified either by previous type declaration or attribute 53 43 000114 694 c specification statements in the same scoping unit, or by the implicit 53 43 000114 695 c typing rules in effect for the scoping unit." 54 30 000013 400 a Implicit mapping of an interface block 54 30 000013 400 b WG5 approved; ready for SC22 54 30 000013 400 c 1. In Section 5.3 in the second paragraph after the constraints [54:30], 54 30 000013 401 c in the phrase: "the default is the mapping ...", after "default": 54 30 000013 402 c 54 30 000013 403 c add "for a program unit or an interface body is default integer if 54 30 000013 404 c the letter is I,J, ... , or N and default real otherwise, and the 54 30 000013 405 c default for an internal or module procedure". 54 30 000013 406 c 54 30 000013 407 c Delete "A program ... O-Z)" 54 35 000012 496 a Type of a named constant when there is implicit mapping 54 35 000012 496 b X3J3 consideration in progress 54 35 000012 496 c 2. In section 5.3 in line 3 of the paragraph that starts with "Any data 54 35 000012 497 c entity that is" after 'not null.' and before the Corregendum 1 54 35 000012 498 c addition [54:35], add: 54 35 000012 499 c "The mapping for the first letter of the data entity must either 54 35 000012 500 c have been established by a prior IMPLICIT statement or be the 54 35 000012 501 c default mapping for the letter in question." 54 35 000032 1252 a Implicit declaration of a derived type 54 35 000032 1252 b WG5 approved; ready for SC22 54 35 000032 1252 c 2. In paragraph 5 of 5.3 after "provided the mapping is not null.", 54 35 000032 1253 c insert the new sentence: "Note that the mapping can be to a derived 54 35 000032 1254 c type that is inaccessible in the local scope if the derived type is 54 35 000032 1255 c accessible to the host scope." [54:35] 55 2 000013 409 a Implicit mapping of an interface block 55 2 000013 409 b WG5 approved; ready for SC22 55 2 000013 409 c 2. In the example in section 5.3 for FUNCTION FUN [55:2] in the interface 55 2 000013 410 c block the comment should be changed from: 55 2 000013 411 c 55 2 000013 412 c ! All data entities must 55 2 000013 413 c ! be declared explicitly 55 2 000013 414 c 55 2 000013 415 c to 55 2 000013 416 c 55 2 000013 417 c ! Not all entities need be 55 2 000013 418 c ! declared explicitly 55 3 000013 420 a Implicit mapping of an interface block 55 3 000013 420 b WG5 approved; ready for SC22 55 3 000013 420 c 3. In the first example in section 5.3 [55:3], change "INTEGER FUN, I" 55 3 000013 421 c to be "INTEGER FUN". 56 22 000012 503 a Type of a named constant when there is implicit mapping 56 22 000012 503 b X3J3 consideration in progress 56 22 000012 503 c 3. In section 5.4 in the penultimate paragraph [56:22-24]: in line 3, 56 22 000012 504 c delete "currently" and in lines 4-5 replace "this implied type" by 56 22 000012 505 c "the implied type and type parameters". 56 22 000134 1871 a PARAMETER, NAMELIST, and implicit typing 56 22 000134 1871 b X3J3 consideration in progress 56 22 000134 1871 c 1. Section 5.4, in the penultimate paragraph [56:22]: change "implicit typing 56 22 000134 1872 c rules currently in effect for the scoping unit." to "implicit typing rules 56 22 000134 1873 c in effect for the scoping unit." 56 24 000142 2423 a Namelist I/O 56 24 000142 2423 b X3J3 consideration in progress 56 24 000142 2423 c In section 5.4, add the following paragraph after the fourth 56 24 000142 2424 c paragraph following the constraints [56:24+]: 56 24 000142 2425 c 56 24 000142 2426 c A derived type object must not appear as a 56 24 000142 2427 c if any component ultimately contained within the object is 56 24 000142 2428 c not accessible within the scoping unit containing the namelist 56 24 000142 2429 c input/output statement on which its containing 56 24 000142 2430 c is specified. An example is a structure accessed from a module 56 24 000142 2431 c within which its type is PUBLIC but its components are PRIVATE. 57 17 000160 840 a Variables with the TARGET attribute in EQUIVALENCE groups 57 17 000160 840 b X3J3 consideration in progress 57 17 000160 840 c After the sixth constraint of section 5.5.1 add [57:17+] 57 17 000160 841 c 57 17 000160 842 c Option 1 (preferred): 57 17 000160 843 c -------- 57 17 000160 844 c 57 17 000160 845 c Constraint: An must not have the TARGET attribute. 57 17 000160 846 c 57 17 000160 847 c Option 2: 57 17 000160 848 c -------- 57 17 000160 849 c 57 17 000160 850 c Constraint: If an has the TARGET attribute, all 57 17 000160 851 c s in the must have 57 17 000160 852 c the TARGET attribute. 59 11 000071 1454 a Use association and common block names 59 11 000071 1454 b X3J3 approved; ready for WG5 59 11 000071 1454 c 1. In the first sentence of 5.5.2.1 after "For each common block", 59 11 000071 1455 c insert "in a scoping unit". [59:11] 59 19 000071 1457 a Use association and common block names 59 19 000071 1457 b X3J3 approved; ready for WG5 59 19 000071 1457 c 2. At the end of 5.5.2.1, add the following paragraph: "Only COMMON 59 19 000071 1458 c statements and EQUIVALENCE statements appearing in the scoping 59 19 000071 1459 c unit contribute to common block storage sequences formed in that 59 19 000071 1460 c unit. Variables, in common blocks, made accessible by use association or 59 19 000071 1461 c host association do not contribute." [59:19] 59 30 000071 1463 a Use association and common block names 59 30 000071 1463 b X3J3 approved; ready for WG5 59 30 000071 1463 c 3. At the end of the first paragraph of 5.5.2.3, add the following 59 30 000071 1464 c sentence: "Use association or host association may cause these 59 30 000071 1465 c associated objects to be accessible in the same scoping unit." [59:30] 60 19 000071 1467 a Use association and common block names 60 19 000071 1467 b X3J3 approved; ready for WG5 60 19 000071 1467 c 4. Delete the last two sentences in 5.5.2.5. [60:19] 63 30 000166 1196 a Array named constant is a constant expression? 63 30 000166 1196 b X3J3 consideration in progress 63 30 000166 1196 c Section 6.2.1, second paragraph: 63 30 000166 1197 c change "name of a constant expression (5.1.2.1 and 5.2.10)" 63 30 000166 1198 c to "name of a constant" [63:30-31] 69 27 000125 1078 a Copy in/copy out of target dummy arguments 69 27 000125 1078 b X3J3 consideration in progress 69 27 000125 1078 c 1. In the paragraph before the list in section 6.3.3.2, [69:27] replace 69 27 000125 1079 c 'accessed' with 'accessed via use, host, or argument association'. 69 35 000125 1081 a Copy in/copy out of target dummy arguments 69 35 000125 1081 b X3J3 consideration in progress 69 35 000125 1081 c 2. Add another item to the list in section 6.3.3.2: [69:35-36] 69 35 000125 1082 c Delete 'or' from the end of item (5) 69 35 000125 1083 c Replace the period at the end of item (6) with ', or' 69 35 000125 1084 c Add 69 35 000125 1085 c 69 35 000125 1086 c (7) A pointer actual argument that is associated by the corresponding 69 35 000125 1087 c dummy argument with another dummy argument that has the TARGET 69 35 000125 1088 c attribute. 76 22 000163 1003 a pointer assignment of a disassociated pointer 76 22 000163 1003 b X3J3 consideration in progress 76 22 000163 1003 c In the final sentence of section 7.1.4.1, insert before the terminating 76 22 000163 1004 c period 76 22 000163 1005 c 76 22 000163 1006 c ", or as the target in a pointer assignment statement." [76:22] 77 24 000097 2738 a Specification expression 77 24 000097 2738 b X3J3 approved; ready for WG5 77 24 000097 2738 c 1. Replace 7.1.6.1 (6), in the first list, with the following: [77:24-28] 77 24 000097 2739 c 77 24 000097 2740 c (6) A reference to an intrinsic function which is: 77 24 000097 2741 c a) an array inquiry function (13.10.15) other than ALLOCATED, 77 24 000097 2742 c b) the bit inquiry function BIT_SIZE, 77 24 000097 2743 c c) the character inquiry function LEN, 77 24 000097 2744 c d) the kind inquiry function KIND, or 77 24 000097 2745 c e) a numeric inquiry function (13.10.8) 77 24 000097 2746 c and where each argument of the function is 77 24 000097 2747 c a) a constant expression, or 77 24 000097 2748 c b) a variable whose properties inquired about are not: 77 24 000097 2749 c 1) assumed 77 24 000097 2750 c 2) defined by an expression that is not a constant expression 77 24 000097 2751 c or 77 24 000097 2752 c 3) definable by an ALLOCATE or POINTER assignment statement 77 27 000047 1712 a Automatic data object in initialization expressions 77 27 000047 1712 b WG5 approved; ready for SC22 77 27 000047 1712 c 1. Section 7.1.6.1, page 77, item (6) 77 27 000047 1713 c change "not assumed or" 77 27 000047 1714 c to "not assumed, are not defined by an expression that is not 77 27 000047 1715 c a constant expression, and are not" [77:27] 78 6 000097 2754 a Specification expression 78 6 000097 2754 b X3J3 approved; ready for WG5 78 6 000097 2754 c 2. Replace 7.1.6.1 (6), in the second list with the following: [78:6-10] 78 6 000097 2755 c 78 6 000097 2756 c (6) A reference to an intrinsic function which is: 78 6 000097 2757 c a) an array inquiry function (13.10.15) other than ALLOCATED, 78 6 000097 2758 c b) the bit inquiry function BIT_SIZE, 78 6 000097 2759 c c) the character inquiry function LEN, 78 6 000097 2760 c d) the kind inquiry function KIND, or 78 6 000097 2761 c e) a numeric inquiry function (13.10.8) 78 6 000097 2762 c and where each argument of the function is 78 6 000097 2763 c a) an initialization expression, or 78 6 000097 2764 c b) a variable whose properties inquired about are not: 78 6 000097 2765 c 1) assumed 78 6 000097 2766 c 2) defined by an expression that is not a 78 6 000097 2767 c initialization expression or 78 6 000097 2768 c 3) definable by an ALLOCATE or POINTER assignment 78 6 000097 2769 c statement 78 9 000047 1717 a Automatic data object in initialization expressions 78 9 000047 1717 b WG5 approved; ready for SC22 78 9 000047 1717 c 2. Section 7.1.6.1, page 78, item (6) 78 9 000047 1718 c change "not assumed or" 78 9 000047 1719 c to "not assumed, are not defined by an expression that is not 78 9 000047 1720 c an initialization expression, and are not" [78:9] 79 11 000097 2771 a Specification expression 79 11 000097 2771 b X3J3 approved; ready for WG5 79 11 000097 2771 c 3. Replace 7.1.6.2 (9) with the following: [79:11-15] 79 11 000097 2772 c 79 11 000097 2773 c (9) A reference to an intrinsic function which is: 79 11 000097 2774 c a) an array inquiry function (13.10.15) other than ALLOCATED, 79 11 000097 2775 c b) the bit inquiry function BIT_SIZE, 79 11 000097 2776 c c) the character inquiry function LEN, 79 11 000097 2777 c d) the kind inquiry function KIND, or 79 11 000097 2778 c e) a numeric inquiry function (13.10.8) 79 11 000097 2779 c and where each argument of the function is 79 11 000097 2780 c a) a restricted expression, or 79 11 000097 2781 c b) a variable whose properties inquired about are not: 79 11 000097 2782 c 1) dependent on the upper bound of the last dimension of an 79 11 000097 2783 c assumed-size array 79 11 000097 2784 c 2) defined by an expression that is not a 79 11 000097 2785 c restricted expression or 79 11 000097 2786 c 3) definable by an ALLOCATE or POINTER assignment statement 79 23 000012 507 a Type of a named constant when there is implicit mapping 79 23 000012 507 b X3J3 consideration in progress 79 23 000012 507 c 4. In section 7.1.6.2, in line 2 of the paragraph after the constraint 79 23 000012 508 c [79:23] delete "currently". 79 23 000134 1875 a PARAMETER, NAMELIST, and implicit typing 79 23 000134 1875 b X3J3 consideration in progress 79 23 000134 1875 c 2. Section 7.1.6.2 [79:23-24] Change "implicit typing rules currently in effect 79 23 000134 1876 c for the scoping unit " to "implicit typing rules in effect for the scoping 79 23 000134 1877 c unit" 92 12 000079 1723 a Automatic character and ALLOCATABLE, POINTER and TARGET attributes 92 12 000079 1723 b X3J3 consideration in progress 92 12 000079 1723 c 1. In the third constraint of section 7.5.2 delete ", type 92 12 000079 1724 c parameters,". [92:12] 92 15 000079 1726 a Automatic character and ALLOCATABLE, POINTER and TARGET attributes 92 15 000079 1726 b X3J3 consideration in progress 92 15 000079 1726 c 2. Add at the beginning of the paragraph following the 92 15 000079 1727 c constraints of section 7.5.2, "The target must have the same type 92 15 000079 1728 c parameters as the pointer." [92:15] 93 10 000084 2978 a Change masked array assignment constraint to prose 93 10 000084 2978 b WG5 approved; ready for SC22 93 10 000084 2978 c 1. Delete the first constraint following rule R743. [93:10-11] 93 21 000084 2980 a Change masked array assignment constraint to prose 93 21 000084 2980 b WG5 approved; ready for SC22 93 21 000084 2980 c 2. Use the constraint body as the new first paragraph of section 7.5.3.2. 93 21 000084 2981 c [93:21] 93 29 000080 2923 a Vector subscripts in masked array assignment statements 93 29 000080 2923 b WG5 approved; ready for SC22 93 29 000080 2923 c 1. In the second paragraph of section 7.5.3.2 after 93 29 000080 2924 c [93:29], add "or ". 93 34 000080 2926 a Vector subscripts in masked array assignment statements 93 34 000080 2926 b WG5 approved; ready for SC22 93 34 000080 2926 c 2. In the third paragraph of section 7.5.3.2 after [93:34], 93 34 000080 2927 c add "or ". 93 37 000111 512 a Array constructors in masked assignment statements 93 37 000111 512 b X3J3 approved; ready for WG5 93 37 000111 512 c In 7.5.3.2 following the third paragraph [93:37+], insert the 93 37 000111 513 c following paragraph: 93 37 000111 514 c 93 37 000111 515 c If an array constructor appears in an , the array 93 37 000111 516 c constructor is evaluated without any masked control by the 93 37 000111 517 c and then the is evaluated. 120 25 000072 2736 a Missing constraint for SIZE= 120 25 000072 2736 b WG5 approved; ready for SC22 120 25 000072 2736 c Section 9.4.1, [120:25], add a constraint to the end of list: 120 25 000072 2737 c 120 25 000072 2738 c "If a SIZE= specifier is present, an ADVANCE= specifier also must appear." 123 30 000069 2706 a I/O implied DO variable 123 30 000069 2706 b WG5 approved; ready for SC22 123 30 000069 2706 c In section 9.4.2, in the second constraint, replace the word 123 30 000069 2707 c "scalar" with "named scalar variable". [123:30] 124 44 000150 55 a Undefinition of implied-DO variables in I/O statements 124 44 000150 55 b X3J3 approved; ready for WG5 124 44 000150 55 c 1. Section 9.4.3, second paragraph following the numbered list [124:44], 124 44 000150 56 c change 124 44 000150 57 c any implied-DO variables become undefined 124 44 000150 58 c to 124 44 000150 59 c if the input/output statement contains any implied-DOs, all of 124 44 000150 60 c the implied-DO variables in the statement become undefined 125 7 000150 62 a Undefinition of implied-DO variables in I/O statements 125 7 000150 62 b X3J3 approved; ready for WG5 125 7 000150 62 c 2. Section 9.4.3, second-to-last paragraph [125:7-8], change 125 7 000150 63 c any implied-DO variables become undefined 125 7 000150 64 c to 125 7 000150 65 c if the input statement contains any implied-DOs, all of 125 7 000150 66 c the implied-DO variables in the statement become undefined 128 27 000169 1349 a End of Namelist Input 128 27 000169 1349 b X3J3 consideration in progress 128 27 000169 1349 c In section 9.4.6, item 3 [128:27-29] 128 27 000169 1350 c 128 27 000169 1351 c delete "or namelist input reaches the end of a record after having 128 27 000169 1352 c processed a name-value subsequence for every item in the 128 27 000169 1353 c " 139 37 000131 1576 a Formatted Input and Kind Type Parameters 139 37 000131 1576 b X3J3 approved; ready for WG5 139 37 000131 1576 c 1. In Section 10.5.1.1, third paragraph [139:37-38], 139 37 000131 1577 c 139 37 000131 1578 c change "be in the form of an optionally signed integer constant" 139 37 000131 1579 c to "be a (R401)". 139 37 000131 1580 c 139 37 000131 1581 c note: is a BNF term. 139 45 000131 1583 a Formatted Input and Kind Type Parameters 139 45 000131 1583 b X3J3 approved; ready for WG5 139 45 000131 1583 c 2. In Section 10.5.1.1, fourth paragraph [139:45], 139 45 000131 1584 c 139 45 000131 1585 c change "in the form of an unsigned integer constant" 139 45 000131 1586 c to "as a ". 139 45 000131 1587 c 139 45 000131 1588 c Change "Note that an integer constant" 139 45 000131 1589 c to "Note that a ". 139 45 000131 1590 c 139 45 000131 1591 c note: This deals with output, not input, but we should make it clear that 139 45 000131 1592 c output doesn't produce kind type parameters either. 140 6 000131 1594 a Formatted Input and Kind Type Parameters 140 6 000131 1594 b X3J3 approved; ready for WG5 140 6 000131 1594 c 3. In Section 10.5.1.1, sixth paragraph [140:6], 140 6 000131 1595 c 140 6 000131 1596 c change "the unsigned integer constant" 140 6 000131 1597 c to "the ". 140 25 000131 1599 a Formatted Input and Kind Type Parameters 140 25 000131 1599 b X3J3 approved; ready for WG5 140 25 000131 1599 c 4. In Section 10.5.1.2.1 [140:25], list item (1), 140 25 000131 1600 c 140 25 000131 1601 c change "Explicitly signed integer constant" 140 25 000131 1602 c to "A followed by a ". 140 26 000131 1604 a Formatted Input and Kind Type Parameters 140 26 000131 1604 b X3J3 approved; ready for WG5 140 26 000131 1604 c 5. In Section 10.5.1.2.1 items (2) and (3) [140:26-27], 140 26 000131 1605 c 140 26 000131 1606 c change "an optionally signed integer constant" 140 26 000131 1607 c to "a ". 143 47 000131 1609 a Formatted Input and Kind Type Parameters 143 47 000131 1609 b X3J3 approved; ready for WG5 143 47 000131 1609 c 6. In Section 10.5.2, second paragraph [143:47], 143 47 000131 1610 c 143 47 000131 1611 c change "additional characters in the field" 143 47 000131 1612 c to "additional characters in the field, which are ignored". 144 7 000131 1614 a Formatted Input and Kind Type Parameters 144 7 000131 1614 b X3J3 approved; ready for WG5 144 7 000131 1614 c 7. In section 10.5.3, first paragraph [144:7-9], 144 7 000131 1615 c 144 7 000131 1616 c replace the last sentence 144 7 000131 1617 c with "The kind type parameter of all characters transferred and 144 7 000131 1618 c converted under control of one A or G edit descriptor is implied by 144 7 000131 1619 c the kind of the corresponding list item." 144 37 000061 2267 a G edit descriptor with "d" = 0 144 37 000061 2267 b WG5 approved; ready for SC22 144 37 000061 2267 c 1. In section 10.5.4.1.2 second paragraph, 3rd sentence, 144 37 000061 2268 c after "- 0.5," add " or N is identically 0 and d is 0,". [144:37] 144 40 000061 2270 a G edit descriptor with "d" = 0 144 40 000061 2270 b WG5 approved; ready for SC22 144 40 000061 2270 c 2. In section 10.5.4.1.2, second paragraph, fourth sentence, 144 40 000061 2271 c after "N is identically 0" add " and d is not zero". [144:40] 148 17 000131 1621 a Formatted Input and Kind Type Parameters 148 17 000131 1621 b X3J3 approved; ready for WG5 148 17 000131 1621 c 8. In Section 10.8, second paragraph [148:17], 148 17 000131 1622 c 148 17 000131 1623 c replace "constant with no kind type parameter specified." 148 17 000131 1624 c with "constant. Neither nor 148 17 000131 1625 c may have kind type parameters specified. The constant is 148 17 000131 1626 c interpreted as though it had the same kind type parameter as 148 17 000131 1627 c the corresponding list item." 149 1 000131 1629 a Formatted Input and Kind Type Parameters 149 1 000131 1629 b X3J3 approved; ready for WG5 149 1 000131 1629 c 9. In section 10.8.1, sixth paragraph [149:1-2], 149 1 000131 1630 c 149 1 000131 1631 c replace "character literal constant of the same kind as" 149 1 000131 1632 c with "possibly delimited sequence of zero or more s 149 1 000131 1633 c whose kind type parameter is implied by the kind of". 149 12 000043 1545 a List-directed character input 149 12 000043 1545 b WG5 approved; ready for SC22 149 12 000043 1545 c 1. Section 10.8.1: Add " and" to the end of item (4), and [149:12] 149 12 000043 1547 a List-directed character input 149 12 000043 1547 b WG5 approved; ready for SC22 149 12 000043 1547 c 2. Section 10.8.1: Add an additional item to the list after item (4): 149 12 000043 1548 c [149:12] 149 12 000043 1549 c 149 12 000043 1550 c "(5) The character constant contains at least one character," 151 7 000131 1635 a Formatted Input and Kind Type Parameters 151 7 000131 1635 b X3J3 approved; ready for WG5 151 7 000131 1635 c 10. In section 10.8.2, ninth paragraph [151:7], 151 7 000131 1636 c 151 7 000131 1637 c delete "possibly are preceded by a and an underscore,". 151 11 000131 1639 a Formatted Input and Kind Type Parameters 151 11 000131 1639 b X3J3 approved; ready for WG5 151 11 000131 1639 c 11. In section 10.8.2, tenth paragraph [151:11], 151 11 000131 1640 c 151 11 000131 1641 c delete "possibly are preceded by a and an underscore,". 151 31 000131 1643 a Formatted Input and Kind Type Parameters 151 31 000131 1643 b X3J3 approved; ready for WG5 151 31 000131 1643 c 12. In Section 10.9, third paragraph [151:31-32], 151 31 000131 1644 c 151 31 000131 1645 c replace "constant with no kind type parameter specified." 151 31 000131 1646 c with "constant. Neither nor 151 31 000131 1647 c may have kind type parameters specified. The constant is 151 31 000131 1648 c interpreted as though it had the same kind type parameter as 151 31 000131 1649 c the corresponding list item." 152 4 000165 1141 a Vector subscripts in Namelist input 152 4 000165 1141 b X3J3 consideration in progress 152 4 000165 1141 c Add the following phrase in section 10.9.1, second paragraph, 152 4 000165 1142 c after "zero-sized array section," [152:4]: 152 4 000165 1143 c 152 4 000165 1144 c 'an array subscript with a vector subscript,' 153 15 000131 1651 a Formatted Input and Kind Type Parameters 153 15 000131 1651 b X3J3 approved; ready for WG5 153 15 000131 1651 c 13. In section 10.9.1.3, fifth paragraph [153:15-16], 153 15 000131 1652 c 153 15 000131 1653 c replace "character literal constant of the same kind as" 153 15 000131 1654 c with "delimited sequence of zero or more s whose kind 153 15 000131 1655 c type parameter is implied by the kind of". 155 12 000131 1657 a Formatted Input and Kind Type Parameters 155 12 000131 1657 b X3J3 approved; ready for WG5 155 12 000131 1657 c 14. In section 10.9.2.1, seventh paragraph [155:12], 155 12 000131 1658 c 155 12 000131 1659 c delete "possibly are preceded by a and an underscore,". 155 16 000131 1661 a Formatted Input and Kind Type Parameters 155 16 000131 1661 b X3J3 approved; ready for WG5 155 16 000131 1661 c 15. In section 10.9.2.1, eighth paragraph, [155:16], 155 16 000131 1662 c 155 16 000131 1663 c delete "possibly are preceded by a and an underscore,". 158 11 000155 422 a Multiple USE statements, rename and only lists. 158 11 000155 422 b X3J3 approved; ready for WG5 158 11 000155 422 c 1. In section 11.3.2, R1109 [158:11] 158 11 000155 423 c change "" to "" 158 13 000155 425 a Multiple USE statements, rename and only lists. 158 13 000155 425 b X3J3 approved; ready for WG5 158 13 000155 425 c 2. In section 11.3.2, the first constraint following R1109 [158:13] 158 13 000155 426 c change "" to "" 158 19 000155 428 a Multiple USE statements, rename and only lists. 158 19 000155 428 b X3J3 approved; ready for WG5 158 19 000155 428 c 3. In section 11.3.2, paragraph beginning "A USE statement" [158:19] 158 19 000155 429 c change "s" to "s" 158 22 000155 431 a Multiple USE statements, rename and only lists. 158 22 000155 431 b X3J3 approved; ready for WG5 158 22 000155 431 c 4. In section 11.3.2, paragraph beginning "More than one" [158:22-23] 158 22 000155 432 c change "s and s" 158 22 000155 433 c to "s and renames in s" 158 26 000128 1384 a Use associated generic names and renaming 158 26 000128 1384 b X3J3 approved; ready for WG5 158 26 000128 1384 c The sentence in section 11.3.2 that states that if two "generic interfaces 158 26 000128 1385 c that are accessible in a scoping unit have the same name" [158:26-27], 158 26 000128 1386 c 158 26 000128 1387 c change "the same name" 158 26 000128 1388 c to "the same local name". 158 28 000074 2791 a Meaning of "referenced" in 11.3.2 158 28 000074 2791 b WG5 approved; ready for SC22 158 28 000074 2791 c In section 11.3.2 [158:28] 158 28 000074 2792 c change the term "no entity is referenced by this name" 158 28 000074 2793 c to "the name is not used to refer to an entity". 160 29 000058 1237 a Ambiguous use of "keyword" 160 29 000058 1237 b X3J3 approved; ready for WG5 160 29 000058 1237 c 7. Page 160, section 11.3.3.5, first paragraph, third line [160:29] 160 29 000058 1238 c change "keywords" to "argument keywords" 161 16 00000b 16 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 161 16 00000b 16 b X3J3 approved; ready for WG5 161 16 00000b 16 c 1. 11.3.3.7, in the second sentence [161:16], change "C.11.5" to "C.11.4" 163 39 000090 2421 a Subroutine and function names in nested scopes 163 39 000090 2421 b X3J3 consideration in progress 163 39 000090 2421 c 1. In section 12.1.2.2.1: [163:39] 163 39 000090 2422 c 163 39 000090 2423 c change: A name that appears in the scoping unit as an in 163 39 000090 2424 c an 163 39 000090 2425 c 163 39 000090 2426 c to: A name that is declared to be an external procedure name (by an 163 39 000090 2427 c or an ), or that appears as a 163 39 000090 2428 c in a 164 4 000090 2430 a Subroutine and function names in nested scopes 164 4 000090 2430 b X3J3 consideration in progress 164 4 000090 2430 c 2. In section 12.1.2.2.1: [164:4] 164 4 000090 2431 c 164 4 000090 2432 c change: (2) A in a 164 4 000090 2433 c 164 4 000090 2434 c to: .......................................... within an 164 4 000090 2435 c 164 6 000090 2437 a Subroutine and function names in nested scopes 164 6 000090 2437 b X3J3 consideration in progress 164 6 000090 2437 c 3. In section 12.1.2.2.1: [164:6] 164 6 000090 2438 c 164 6 000090 2439 c change: (3) A in a 164 6 000090 2440 c 164 6 000090 2441 c to: .............................................. within an 164 6 000090 2442 c 164 7 000090 2444 a Subroutine and function names in nested scopes 164 7 000090 2444 b X3J3 consideration in progress 164 7 000090 2444 c 4. In section 12.1.2.2.1: [164:7] 164 7 000090 2445 c 164 7 000090 2446 c delete item (4) of the list and renumber the rest of the list. 164 20 000118 3454 a Named constructs and host association 164 20 000118 3454 b WG5 approved; ready for SC22 164 20 000118 3454 c Add new item to the list in section 12.1.2.2.1 [164:20] and adjust the 164 20 000118 3455 c list punctuation accordingly. 164 20 000118 3456 c 164 20 000118 3457 c "(16) The name of a named construct" 164 25 000032 1257 a Implicit declaration of a derived type 164 25 000032 1257 b WG5 approved; ready for SC22 164 25 000032 1257 c 3. In paragraph 3 of 12.1.2.2.1 after "prior to the DATA statement.", 164 25 000032 1258 c insert a new paragraph: [164:25] 164 25 000032 1259 c 164 25 000032 1260 c "If a derived type name of a host is inaccessible, data entities of 164 25 000032 1261 c that type or subobjects of such data entities still can be 164 25 000032 1262 c accessible." 166 4 000049 1125 a Characteristics of function results 166 4 000049 1125 b X3J3 consideration in progress 166 4 000049 1125 c 2. Replace the last two sentences in 12.2.1.1 [166:4-6] with the following: 166 4 000049 1126 c 166 4 000049 1127 c If the shape or character length type parameter is not constant, the 166 4 000049 1128 c corresponding characteristic is the method by which the value is to be 166 4 000049 1129 c determined when the procedure is invoked. This includes the possibility 166 4 000049 1130 c that the value is assumed or that it is given by evaluating a 166 4 000049 1131 c specification expression. Two such methods are considered to be the same 166 4 000049 1132 c if they yield the same value under all possible conditions in which they 166 4 000049 1133 c might be applied; they need not be expressed identically. 166 4 000070 1368 a Characteristics specified by interface bodies 166 4 000070 1368 b X3J3 consideration in progress 166 4 000070 1368 c 2. Replace the last two sentences in 12.2.1.1 [166:4-6] with the following: 166 4 000070 1369 c 166 4 000070 1370 c If the shape or character length type parameter is not constant, the 166 4 000070 1371 c corresponding characteristic is the method by which the value is to be 166 4 000070 1372 c determined when the procedure is invoked. This includes the possibility 166 4 000070 1373 c that the value is assumed or that it is given by evaluating a 166 4 000070 1374 c specification expression. Two such methods are considered to be the 166 4 000070 1375 c same if they yield the same value under all possible conditions in which 166 4 000070 1376 c they might be applied; they need not be expressed identically. 166 14 000049 1115 a Characteristics of function results 166 14 000049 1115 b X3J3 consideration in progress 166 14 000049 1115 c 1. Replace the last two sentences in 12.2.2 [166:14-16] with the following: 166 14 000049 1116 c 166 14 000049 1117 c If the shape or character length type parameter is not constant, the 166 14 000049 1118 c corresponding characteristic is the method by which the value is to 166 14 000049 1119 c be determined when the function is invoked. This includes the 166 14 000049 1120 c possibility that the value is assumed or that it is given by 166 14 000049 1121 c evaluating a specification expression. Two such methods are considered 166 14 000049 1122 c to be the same if they yield the same value under all possible conditions 166 14 000049 1123 c in which they might be applied; they need not be expressed identically. 166 14 000070 1378 a Characteristics specified by interface bodies 166 14 000070 1378 b X3J3 consideration in progress 166 14 000070 1378 c 3. Replace the last two sentences in 12.2.2 [166:14-16] with the following: 166 14 000070 1379 c 166 14 000070 1380 c If the shape or character length type parameter is not constant, the 166 14 000070 1381 c corresponding characteristic is the method by which the value is to be 166 14 000070 1382 c determined when the function is invoked. This includes the possibility 166 14 000070 1383 c that the value is assumed or that it is given by evaluating a 166 14 000070 1384 c specification expression. Two such methods are considered to be the 166 14 000070 1385 c same if they yield the same value under all possible conditions in which 166 14 000070 1386 c they might be applied; they need not be expressed identically. 167 31 000117 827 a Use of MODULE PROCEDURE statement in internal procedures 167 31 000117 827 b X3J3 approved; ready for WG5 167 31 000117 827 c Replace the second constraint in section 12.3.2.1 [167:31] with: 167 31 000117 828 c 167 31 000117 829 c "The MODULE PROCEDURE specification is allowed only if the 167 31 000117 830 c has a and is contained in a scoping 167 31 000117 831 c unit where each is accessible as a module procedure." 167 36 000007 301 a Duplicate module procedures in interface blocks 167 36 000007 301 b X3J3 consideration in progress 167 36 000007 301 c The following additional constraint should be added to section 167 36 000007 302 c 12.3.2.1 [167:36]: 167 36 000007 303 c 167 36 000007 304 c Constraint: A in a must 167 36 000007 305 c not be one which previously had been established to be associated 167 36 000007 306 c with the of the in which it 167 36 000007 307 c appears, either by a previous appearance in an or 167 36 000007 308 c by use or host association. 167 39 000057 2113 a Prohibition against multiple explicit specific interfaces 167 39 000057 2113 b WG5 approved; ready for SC22 167 39 000057 2113 c Section 12.3.2.1, the sentence that begins "An interface body..." change 167 39 000057 2114 c "explicit interface" to "explicit specific interface". [167:39] 168 24 000058 1240 a Ambiguous use of "keyword" 168 24 000058 1240 b X3J3 approved; ready for WG5 168 24 000058 1240 c 8. Page 168, replace the second sentence of the paragraph 168 24 000058 1241 c following the line "END INTERFACE" [168:24] with 168 24 000058 1242 c 168 24 000058 1243 c "Invocations of these procedures may 168 24 000058 1244 c use argument keywords; for example:" 168 24 000058 1245 c rationale: "keyword calls" is not defined. In general invocations 168 24 000058 1246 c can use both positional and argument keywords. 170 42 000006 270 a Procedure specifications in a scoping unit 170 42 000006 270 b WG5 approved; ready for SC22 170 42 000006 270 c At the end of the fourth paragraph following R1207 in 12.3.2.2 [170:42], 170 42 000006 271 c add: 170 42 000006 272 c 170 42 000006 273 c A name that appears in an EXTERNAL statement must not also appear 170 42 000006 274 c as a specific procedure name in an interface block in the scoping unit. 172 13 000058 1248 a Ambiguous use of "keyword" 172 13 000058 1248 b X3J3 approved; ready for WG5 172 13 000058 1248 c 9. Page 172, in the first paragraph following the 172 13 000058 1249 c constraints [172:13-17] change "a keyword" to "an argument 172 13 000058 1250 c keyword" twice, and change "the keyword" 172 13 000058 1251 c to "the argument keyword" 172 41 00000a 40 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 172 41 00000a 40 b WG5 approved; ready for SC22 172 41 00000a 40 c 3. 12.4.1.1, first paragraph, last line [172:41]; Change "of the the 172 41 00000a 41 c dummy" to "of the dummy" 172 41 000119 3487 a Rank of assumed-shape array 172 41 000119 3487 b WG5 approved; ready for SC22 172 41 000119 3487 c At the end of the first paragraph of section 12.4.1.1 [172:41], add: "If 172 41 000119 3488 c the dummy argument is an assumed-shape array, the rank of the dummy argument 172 41 000119 3489 c must agree with the rank of the actual argument." 173 6 000125 1090 a Copy in/copy out of target dummy arguments 173 6 000125 1090 b X3J3 consideration in progress 173 6 000125 1090 c 3. Section 12.4.1.1, add at the end of the fourth paragraph [173:6], 173 6 000125 1091 c 173 6 000125 1092 c "If the dummy argument has the TARGET attribute, the actual argument 173 6 000125 1093 c must have the TARGET attribute and the type, type parameters, and 173 6 000125 1094 c ranks must agree." 173 10 000125 1096 a Copy in/copy out of target dummy arguments 173 10 000125 1096 b X3J3 consideration in progress 173 10 000125 1096 c 4. Section 12.4.1.1, fifth paragraph, last sentence [173:10-13] 173 10 000125 1097 c delete, "with a dummy argument of the procedure that has the 173 10 000125 1098 c TARGET attribute or" 173 13 000039 957 a Association of a pointer actual argument with a dummy argument 173 13 000039 957 b X3J3 approved; ready for WG5 173 13 000039 957 c 2. Add the following new paragraph following the current fifth 173 13 000039 958 c paragraph of section 12.4.1.1: [173:13+] 173 13 000039 959 c 173 13 000039 960 c If the dummy argument is not a pointer and the corresponding actual 173 13 000039 961 c argument is, the actual argument must be currently associated with a 173 13 000039 962 c target and the dummy argument becomes argument associated with that 173 13 000039 963 c target. 173 14 000125 1100 a Copy in/copy out of target dummy arguments 173 14 000125 1100 b X3J3 consideration in progress 173 14 000125 1100 c 5. Section 12.4.1.1, delete the sixth paragraph [173:14-17] and 173 14 000125 1101 c replace with, 173 14 000125 1102 c 173 14 000125 1103 c "When execution of a procedure completes, any pointer 173 14 000125 1104 c that remains defined (6.3.3.2) and that is associated with a 173 14 000125 1105 c dummy argument that has the TARGET attribute, remains associated 173 14 000125 1106 c with the corresponding actual argument." 177 29 00000a 43 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 177 29 00000a 43 b WG5 approved; ready for SC22 177 29 00000a 43 c 4. 12.5.2.4, at end of first paragraph [177:29]; Add new sentence 177 29 00000a 44 c "When a statement function is invoked, an instance of that statement 177 29 00000a 45 c function is created." 178 19 000055 2017 a Characteristics of character function results 178 19 000055 2017 b WG5 approved; ready for SC22 178 19 000055 2017 c In Section 12.5.2.5 in the sentence that starts: "Otherwise, 178 19 000055 2018 c they ... " delete: "all be scalars ... length or". [178:19] 179 38 000053 1971 a Optional intrinsic function arguments 179 38 000053 1971 b WG5 approved; ready for SC22 179 38 000053 1971 c 1. Add the following point to the numbered list in section 12.5.2.8: 179 38 000053 1972 c [179:38] 179 38 000053 1973 c 179 38 000053 1974 c (5) If it is an array, it must not be supplied as an actual 179 38 000053 1975 c argument to an elemental procedure unless an array of the same 179 38 000053 1976 c rank is supplied as an actual argument corresponding to a 179 38 000053 1977 c nonoptional dummy argument of that elemental procedure. 179 39 000053 1979 a Optional intrinsic function arguments 179 39 000053 1979 b WG5 approved; ready for SC22 179 39 000053 1979 c 2. In the paragraph following the numbered list, replace "It" with 179 39 000053 1980 c "Except as noted in (5) above, it" [179:39] 180 4 000081 1888 a Pointer actual argument overlap 180 4 000081 1888 b X3J3 consideration in progress 180 4 000081 1888 c 1. In section 12.5.2.9, [180:4] after "dummy argument" add 180 4 000081 1889 c ", unless the dummy argument has either the POINTER or TARGET attribute" 180 4 000081 1890 c 180 36 000081 1892 a Pointer actual argument overlap 180 36 000081 1892 b X3J3 consideration in progress 180 36 000081 1892 c 2. In section 12.5.2.9, [180:36-38] in the second to last paragraph on the 180 36 000081 1893 c page, after "execution of the procedure" add ", unless all dummy arguments 180 36 000081 1894 c involved in the overlap have the POINTER or TARGET attribute". 182 4 000052 1898 a Expressions in statement function definitions 182 4 000052 1898 b WG5 approved; ready for SC22 182 4 000052 1898 c 1. Section 12.5.4: First constraint, first sentence [182:4] 182 4 000052 1899 c change "references to scalar variables and array elements" 182 4 000052 1900 c to "references to variables" 182 4 000052 1901 c 182 4 000052 1902 c change "intrinsic operators" 182 4 000052 1903 c to "intrinsic operations" 182 4 000052 1904 c 182 4 000052 1905 c after first sentence add 182 4 000052 1906 c 182 4 000052 1907 c If contains a reference to a function or a function 182 4 000052 1908 c dummy procedure, the reference must not require an explicit 182 4 000052 1909 c interface, the function must not require an explicit interface or 182 4 000052 1910 c be a transformational intrinsic, and the result must be scalar. 182 4 000052 1911 c If an argument to a function or a function dummy procedure is array 182 4 000052 1912 c valued, it must be an array name. 182 12 000052 1914 a Expressions in statement function definitions 182 12 000052 1914 b WG5 approved; ready for SC22 182 12 000052 1914 c 2. Section 12.5.4: Second constraint, third sentence [182:12] 182 12 000052 1915 c change "scalar variable, array element" 182 12 000052 1916 c to "variable" 182 12 000103 3195 a Statement Function with unreferenced dummy argument 182 12 000103 3195 b WG5 approved; ready for SC22 182 12 000103 3195 c In section 12.5.4 split the second constraint at "If a scalar variable 182 12 000103 3196 c ..." [182:12] into a new constraint and add "dummy-arg-name," just before 182 12 000103 3197 c "scalar variable". 182 19 000052 1918 a Expressions in statement function definitions 182 19 000052 1918 b WG5 approved; ready for SC22 182 19 000052 1918 c 3. Section 12.5.4: Fifth constraint, first sentence delete second word 182 19 000052 1919 c ("scalar") [182:19] 182 20 000062 2318 a Statement function constraints 182 20 000062 2318 b WG5 approved; ready for SC22 182 20 000062 2318 c In the last constraint after R1226 in section 12.5.4 182 20 000062 2319 c replace "local to" 182 20 000062 2320 c with "accessible in". [182:20] 183 37 000058 1253 a Ambiguous use of "keyword" 183 37 000058 1253 b X3J3 approved; ready for WG5 183 37 000058 1253 c 10. Section 13.3, first sentence [183:37], set "positional arguments" 183 37 000058 1254 c and "keyword arguments" in regular font 183 38 000058 1256 a Ambiguous use of "keyword" 183 38 000058 1256 b X3J3 approved; ready for WG5 183 38 000058 1256 c 11. Page 183, section 13.3, first paragraph, third line [183:38] 183 38 000058 1257 c 183 38 000058 1258 c change "the keyword" to "the argument keyword" and 183 38 000058 1259 c change "A keyword" to "An argument keyword" 184 18 000159 760 a May undefined expressions be used as arguments to INQUIRY functions 184 18 000159 760 b X3J3 consideration in progress 184 18 000159 760 c 1. In section 13.5.4 Character Inquiry Function [184:18-19] 184 18 000159 761 c replace the second sentence "The value of ...." 184 18 000159 762 c 184 18 000159 763 c with "If the argument to this function consists of a single primary 184 18 000159 764 c (7.1.1.1) that is a variable name then that variable need not be defined." 185 4 000159 766 a May undefined expressions be used as arguments to INQUIRY functions 185 4 000159 766 b X3J3 consideration in progress 185 4 000159 766 c 2. In section 13.5.7 Bit Manipulation and Inquiry Procedures [185:4-5] 185 4 000159 767 c In the paragraph beginning "An inquiry ..." replace the second 185 4 000159 768 c sentence "The value of ...." 185 4 000159 769 c 185 4 000159 770 c with "If the argument to this function consists of a single primary 185 4 000159 771 c (7.1.1.1) that is a variable name then that variable need not be defined, 185 4 000159 772 c if a pointer it may be disassociated, and if allocatable need not be 185 4 000159 773 c allocated." 186 5 000108 451 a Referencing disassociated pointers 186 5 000108 451 b X3J3 approved; ready for WG5 186 5 000108 451 c 2. Replace the first two sentences in section 13.7.2 [186:5] with: 186 5 000108 452 c 186 5 000108 453 c "The inquiry functions RADIX, DIGITS, MINEXPONENT, MAXEXPONENT, 186 5 000108 454 c PRECISION, RANGE, HUGE, TINY, and EPSILON return scalar values 186 5 000108 455 c related to the parameters of the model associated with the types and 186 5 000108 456 c kind type parameters of the arguments. The values of the arguments to 186 5 000108 457 c these functions need not be defined, pointer arguments may have 186 5 000108 458 c undefined or disassociated association status, and array arguments 186 5 000108 459 c need not be allocated." 186 7 000159 775 a May undefined expressions be used as arguments to INQUIRY functions 186 7 000159 775 b X3J3 consideration in progress 186 7 000159 775 c 3. In section 13.7.2 Numeric Inquiry Functions [186:7-8] 186 7 000159 776 c replace the last sentence "The value of ...." 186 7 000159 777 c 186 7 000159 778 c with "If the argument to these functions consists of a single primary 186 7 000159 779 c (7.1.1.1) that is a variable name then that variable need not be defined, 186 7 000159 780 c if a pointer it may be disassociated, and if allocatable need not be 186 7 000159 781 c allocated." 187 12 000159 783 a May undefined expressions be used as arguments to INQUIRY functions 187 12 000159 783 b X3J3 consideration in progress 187 12 000159 783 c 4. In section 13.8.5 Array Inquiry Functions [187:12] 187 12 000159 784 c replace the second paragraph "The values of ..." 187 12 000159 785 c 187 12 000159 786 c with "If the argument to these functions consists of a single primary 187 12 000159 787 c (7.1.1.1) that is a variable name then that variable need not be defined." 188 12 000058 1261 a Ambiguous use of "keyword" 188 12 000058 1261 b X3J3 approved; ready for WG5 188 12 000058 1261 c 12. Page 188, section 13.10, first paragraph, first two lines [188:12-13] 188 12 000058 1262 c 188 12 000058 1263 c change "keyword" to "argument keyword" and 188 12 000058 1264 c change "keywords" to "argument keywords" 198 33 000109 3314 a Intrinsic function ASSOCIATED 198 33 000109 3314 b WG5 approved; ready for SC22 198 33 000109 3314 c In 13.13.13 in the specification of the result type, add "scalar" after 198 33 000109 3315 c "default logical". [198:33] 198 37 000100 65 a ASSOCIATED intrinsic and zero-sized objects 198 37 000100 65 b X3J3 approved; ready for WG5 198 37 000100 65 c 1. Section 13.13.13 Case (ii) [198:37], replace by 198 37 000100 66 c 198 37 000100 67 c If TARGET is present and is a nonzero-sized target, the result is 198 37 000100 68 c true if POINTER is currently associated with TARGET. If TARGET is 198 37 000100 69 c zero sized, but has the same type, type parameters, rank, and shape 198 37 000100 70 c as POINTER, the result is undefined. Otherwise, the result is false. 199 1 000100 72 a ASSOCIATED intrinsic and zero-sized objects 199 1 000100 72 b X3J3 approved; ready for WG5 199 1 000100 72 c 2. Section 13.13.13 Case (iii) [199:1], replace by 199 1 000100 73 c 199 1 000100 74 c If TARGET is present and is a pointer, the result is true if both POINTER 199 1 000100 75 c and TARGET are currently associated with the same nonzero-sized target. 199 1 000100 76 c If the targets are zero sized and have the same type, type parameters, 199 1 000100 77 c rank, and shape, the result is undefined. Otherwise the result is false. 199 1 000100 78 c The result is also false if either POINTER or TARGET is disassociated. 203 23 00000a 47 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 203 23 00000a 47 b WG5 approved; ready for SC22 203 23 00000a 47 c 5. 13.13.25, Result Value, Case (ii), at beginning of the third line 203 23 00000a 48 c [203:23]; Change "1,sh" to "sh,1". 205 7 000171 1422 a Equivalence of DBLE(A) and REAL(A,KIND(0.0D0)) Intrinsics 205 7 000171 1422 b X3J3 consideration in progress 205 7 000171 1422 c In 13.13.27 DBLE, replace the text of the 'Result Value' section 205 7 000171 1423 c with: 205 7 000171 1424 c The result has the value REAL (A, KIND (0.0D0) ). [205:7-11] 210 23 00000c 61 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 210 23 00000c 61 b X3J3 consideration in progress 210 23 00000c 61 c 6. In 13.13.42 IBITS 210 23 00000c 62 c 210 23 00000c 63 c change '.... bit POS right-adjusted' 210 23 00000c 64 c to '.... bit POS, right-adjusted' [210:23] 210 23 00000c 65 c 210 23 00000c 66 c Rationale: it is the result, not POS, that is right-adjusted. 214 22 000124 1014 a Result of LBOUND for assumed-size arrays 214 22 000124 1014 b X3J3 approved; ready for WG5 214 22 000124 1014 c In section 13.13.52 replace the text of case (i) [214:22-25] with: 214 22 000124 1015 c 214 22 000124 1016 c "For an array section or for an array expression other than a whole 214 22 000124 1017 c array or array structure component, LBOUND(ARRAY,DIM) has the value 214 22 000124 1018 c 1. For a whole array or array structure component, LBOUND(ARRAY,DIM) 214 22 000124 1019 c has the value: 214 22 000124 1020 c (a) equal to the lower bound for subscript DIM of ARRAY if dimension 214 22 000124 1021 c DIM of ARRAY does not have size zero or if the upper bound for 214 22 000124 1022 c dimension DIM is *; or 214 22 000124 1023 c (b) 1." 220 25 00000a 50 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 220 25 00000a 50 b WG5 approved; ready for SC22 220 25 00000a 50 c 6. 13.13.66, Result Value, Case (iii) [220:25]; Change",[" to "[" 220 25 00000a 51 c (i.e. delete comma). 226 4 00000c 87 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 226 4 00000c 87 b X3J3 consideration in progress 226 4 00000c 87 c 9. In 13.13.79 PRECISION 226 4 00000c 88 c 226 4 00000c 89 c change 'Returns the decimal precision in the model ...' 226 4 00000c 90 c to '............................. of .............' [226:4] 226 4 00000c 91 c 226 4 00000c 92 c Rationale: same as for RANGE, above. 226 4 00000c 93 c 226 17 000120 3525 a PRESENT intrinsic and host association 226 17 000120 3525 b WG5 approved; ready for SC22 226 17 000120 3525 c Replace the description of Argument in 13.13.80 [226:17] with 226 17 000120 3526 c 226 17 000120 3527 c "A must be the name of an optional dummy argument that is accessible in 226 17 000120 3528 c the procedure in which the PRESENT function reference appears." 228 13 000148 2858 a Random_seed, random_number 228 13 000148 2858 b X3J3 consideration in progress 228 13 000148 2858 c In 13.13.84 replace the line beginning "If no argument" [228:13] with 228 13 000148 2859 c 228 13 000148 2860 c "If no argument is present, the processor sets the seed to a uniformly 228 13 000148 2861 c randomly distributed processor dependent value." 228 20 00000c 75 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 228 20 00000c 75 b X3J3 consideration in progress 228 20 00000c 75 c 8. In 13.13.85 RANGE 228 20 00000c 76 c 228 20 00000c 77 c change 'Returns the decimal exponent range in the model ...' 228 20 00000c 78 c to 'Returns the upper bound of the decimal exponent range 228 20 00000c 79 c of the model ...' [228:20] 228 20 00000c 80 c 228 20 00000c 81 c Rationale(1): a range has two values; RANGE returns only one. 228 20 00000c 82 c 228 20 00000c 83 c Rationale(2): there is not a decimal range in the model, see 13.7.1, 228 20 00000c 84 c but a decimal range can be calculated. Thus 228 20 00000c 85 c the change from 'in' to 'of'. 234 6 000064 2379 a SPACING result for 0.0 234 6 000064 2379 b WG5 approved; ready for SC22 234 6 000064 2379 c In section 13.13.100, after "Result Value." 234 6 000064 2380 c change "The" 234 6 000064 2381 c to "If X is not zero, the". 234 6 000064 2382 c In the same section, 234 6 000064 2383 c change "; otherwise " 234 6 000064 2384 c to ". Otherwise". [234:6] 236 11 000132 1743 a SYSTEM_CLOCK intrinsic conformance requirements 236 11 000132 1743 b X3J3 approved; ready for WG5 236 11 000132 1743 c In section 13.13.104, SYSTEM_CLOCK, change the text for COUNT_RATE 236 11 000132 1744 c from 'the number' 236 11 000132 1745 c to 'a processor-dependent approximation to the number' [236:11] 242 28 000083 2030 a Extending generic intrinsic procedures 242 28 000083 2030 b X3J3 consideration in progress 242 28 000083 2030 c In section 14.1.2.3 add after the second sentence [242:28]: 242 28 000083 2031 c 242 28 000083 2032 c "If a generic interface has the same name as an accessible generic 242 28 000083 2033 c intrinsic procedure and the scoping unit either contains an 242 28 000083 2034 c INTRINSIC attribute specification for that name or accesses that 242 28 000083 2035 c generic intrinsic procedure with that name by use association, 242 28 000083 2036 c the generic interface extends the generic intrinsic procedure." 245 4 00000c 54 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 245 4 00000c 54 b X3J3 consideration in progress 245 4 00000c 54 c 5. Page 245, section 14.1.2.5, in the second sentence [245:4] 245 4 00000c 55 c change 'a structure of that type' 245 4 00000c 56 c to 'a structure and a derived type definition of that type' 245 4 00000c 57 c Reason: a component name appears in the derived type definition 245 4 00000c 58 c as well as possibly appearing in a component of a 245 4 00000c 59 c structure of that type. 245 14 000170 1380 a Argument Keywords and Intrinsic Procedures 245 14 000170 1380 b X3J3 approved; ready for WG5 245 14 000170 1380 c In section 14.1.2.6 add a new paragraph after the current 245 14 000170 1381 c paragraph. [245:14+] 245 14 000170 1382 c 245 14 000170 1383 c "A dummy argument name in an intrinsic procedure has a scope as an 245 14 000170 1384 c argument keyword of the scoping unit making reference to it. 245 14 000170 1385 c As an argument keyword, it may appear only in a procedure reference 245 14 000170 1386 c for the procedure of which it is a dummy argument." 245 23 000031 1166 a Overloaded implied-DO variable names 245 23 000031 1166 b WG5 approved; ready for SC22 245 23 000031 1166 c Replace the last paragraph of section 14.1.3 with the following two 245 23 000031 1167 c paragraphs: [245:23] 245 23 000031 1168 c 245 23 000031 1169 c Except for a common block name or a scalar variable name, a name that 245 23 000031 1170 c identifies a global entity or local entity of class 1 (14.1.2) 245 23 000031 1171 c accessible in the scoping unit of a statement must not be the name of 245 23 000031 1172 c a statement entity of that statement. Within the scope of a 245 23 000031 1173 c statement entity, another statement entity must not have the same name. 245 23 000031 1174 c 245 23 000031 1175 c If the name of a global or local entity accessible in the scoping unit of 245 23 000031 1176 c a statement is the same as the name of a statement entity in that 245 23 000031 1177 c statement, the name is interpreted within the scope of the statement 245 23 000031 1178 c entity as that of the statement entity. Elsewhere in the scoping unit, 245 23 000031 1179 c including parts of the statement outside the scope of the statement 245 23 000031 1180 c entity, the name is interpreted as that of the global or local entity. 247 2 000068 2655 a Pointer association status 247 2 000068 2655 b WG5 approved; ready for SC22 247 2 000068 2655 c 1. In section 14.6.2.1, item (3) subitem (c), delete "or" [247:2] 247 4 000068 2657 a Pointer association status 247 4 000068 2657 b WG5 approved; ready for SC22 247 4 000068 2657 c 2. The reference to section 6.3.3.2 in 14.6.2.1 (3) (d) is misleading. 247 4 000068 2658 c In section 14.6.2.1, item (3) subitem (d), remove "6.3.3.2," 247 4 000068 2659 c and change the period at the end to ", or" [247:4]. 247 4 000068 2661 a Pointer association status 247 4 000068 2661 b WG5 approved; ready for SC22 247 4 000068 2661 c 3. The list in section 14.6.2.1, item (3), of ways that pointer 247 4 000068 2662 c association status can become undefined is incomplete. 247 4 000068 2663 c In section 14.6.2.1, item (3) add a new subitem as follows: [247:4] 247 4 000068 2664 c 247 4 000068 2665 c (e) After the execution of a RETURN or END statement in a procedure 247 4 000068 2666 c where the pointer was either declared or, with the exceptions 247 4 000068 2667 c described in 6.3.3.2, accessed. 248 15 000154 353 a EQUIVALENCE and zero-sized sequences 248 15 000154 353 b X3J3 consideration in progress 248 15 000154 353 c In section 14.6.3.2 [248:15], after the last sentence in the second 248 15 000154 354 c paragraph, add "Two zero-sized subobjects of the same object are the same zero 248 15 000154 355 c sized storage sequence.". 248 40 000126 1189 a Character Entry statements and Partial Association 248 40 000126 1189 b X3J3 approved; ready for WG5 248 40 000126 1189 c In section 14.6.3.3 in the sentence (last two lines of page 248) 248 40 000126 1190 c [248:40-41] "For character entities, partial association may occur only through 248 40 000126 1191 c argument association, or the use of COMMON, EQUIVALENCE, or ENTRY statements." 248 40 000126 1192 c 248 40 000126 1193 c change "COMMON, EQUIVALENCE, or ENTRY" 248 40 000126 1194 c to "COMMON or EQUIVALENCE" 250 24 00000b 22 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 250 24 00000b 22 b X3J3 approved; ready for WG5 250 24 00000b 22 c 4. Page 250, section 14.7.5, item (8) 250 24 00000b 23 c change 'input/output IOSTAT= specifier' 250 24 00000b 24 c to 'IOSTAT= specifier' 250 24 00000b 25 c Reason: 'input/output' is redundant. [250:24] 251 43 000150 68 a Undefinition of implied-DO variables in I/O statements 251 43 000150 68 b X3J3 approved; ready for WG5 251 43 000150 68 c 3. Section 14.7.6, item (6) [251:43-45], change 251 43 000150 69 c input/output statement, some or all of the implied-DO variables may 251 43 000150 70 c become 251 43 000150 71 c to 251 43 000150 72 c input/output statement and the statement contains any implied-DOs, 251 43 000150 73 c all of the implied-DO variables in the statement become 255 27 00000a 53 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 255 27 00000a 53 b WG5 approved; ready for SC22 255 27 00000a 53 c 7. Annex A, conformable [255:27]; Change "2.4.7" to "2.4.5". 255 38 00000a 55 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 255 38 00000a 55 b WG5 approved; ready for SC22 255 38 00000a 55 c 8. Annex A, constant [255:38]; Change "2.4.4" to "2.4.3.1.2". 256 10 000096 2677 a Definition of "Declaration" 256 10 000096 2677 b X3J3 consideration in progress 256 10 000096 2677 c 1. add to page 256 after "datum" [256:10+] 256 10 000096 2678 c 256 10 000096 2679 c Declaration(2.5.3): A declaration assigns attributes and properties to names. 256 10 000096 2680 c "Declaration" is a synonym for "Specification". 256 10 000096 2681 c 256 23 00000a 57 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 256 23 00000a 57 b WG5 approved; ready for SC22 256 23 00000a 57 c 9. Annex A, derived type [256:23]; Change "2," to "2)". 256 38 000077 1635 a Miscellaneous questions 256 38 000077 1635 b X3J3 approved; ready for WG5 256 38 000077 1635 c 1. In Annex A, in the entry for "entity", replace "a named variable, an 256 38 000077 1636 c expression, a component of a structure, a named constant" with 256 38 000077 1637 c "a data entity". [256:38-39] 257 8 00000a 59 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 257 8 00000a 59 b WG5 approved; ready for SC22 257 8 00000a 59 c 10. Annex A, extent [257:8]; Change "2.4.7" to " 2.4.5". 257 29 00000b 18 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 257 29 00000b 18 b X3J3 approved; ready for WG5 257 29 00000b 18 c 2. Annex A, host association [257:29]; Change "11.2.2" to "12.1.2.2.1". 258 19 00000a 61 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 258 19 00000a 61 b WG5 approved; ready for SC22 258 19 00000a 61 c 11. Annex A, literal constant [258:19]; Change "2.4.4" to "2.4.3.1.2". 258 22 00000a 63 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 258 22 00000a 63 b WG5 approved; ready for SC22 258 22 00000a 63 c 12. Annex A, main program [258:22]; Change "2," to "2)". 258 22 000077 1639 a Miscellaneous questions 258 22 000077 1639 b X3J3 approved; ready for WG5 258 22 000077 1639 c 2. In Annex A, in the entry for "main program", replace "subprogram" with 258 22 000077 1640 c "external subprogram" [258:22] 258 25 00000a 65 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 258 25 00000a 65 b WG5 approved; ready for SC22 258 25 00000a 65 c 13. Annex A, module [258:25]; Change "4," to "4)". 258 34 00000a 67 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 258 34 00000a 67 b WG5 approved; ready for SC22 258 34 00000a 67 c 14. Annex A, named constant [258:34]; Change "2.4.4" to "2.4.3.1.2". 259 19 00000a 69 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 259 19 00000a 69 b WG5 approved; ready for SC22 259 19 00000a 69 c 15. Annex A, procedure [259:19]; Change "3," to "3)". 259 31 00000a 71 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 259 31 00000a 71 b WG5 approved; ready for SC22 259 31 00000a 71 c 16. Annex A, rank [259:31]; Change "2.4.7" to "2.4.5". 260 12 00000a 73 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 260 12 00000a 73 b WG5 approved; ready for SC22 260 12 00000a 73 c 17. Annex A, shape [ 260:12]; Change "2.4.7" to "2.4.5". 260 14 00000a 75 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 260 14 00000a 75 b WG5 approved; ready for SC22 260 14 00000a 75 c 18. Annex A, size [260:14]; Change "2.4.7" to "2.4.5". 260 14 000096 2683 a Definition of "Declaration" 260 14 000096 2683 b X3J3 consideration in progress 260 14 000096 2683 c 2. add to page 260 after "size" [260:14+] 260 14 000096 2684 c 260 14 000096 2685 c Specification: A specification assigns attributes and properties to names. 260 35 00000a 77 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 260 35 00000a 77 b WG5 approved; ready for SC22 260 35 00000a 77 c 19. Annex A, subobject [260:35]; Change "2.4.3.2" to "2.4.3.1". 261 9 00000a 79 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 261 9 00000a 79 b WG5 approved; ready for SC22 261 9 00000a 79 c 20. Annex A, target [261:9]; Change "specified in a" to "specified in 261 9 00000a 80 c a TARGET statement or". 261 30 00000a 82 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 261 30 00000a 82 b WG5 approved; ready for SC22 261 30 00000a 82 c 21. Annex A, variable [261:30]; Change "2.4.5" to "2.4.3.1.1". 269 21 000041 1015 a Procedure with target dummy argument requires explicit interface 269 21 000041 1015 b X3J3 approved; ready for WG5 269 21 000041 1015 c Section C.5.3, second sentence, change "solely" to "primarily". [269:21] 273 14 00000b 20 a Minor edits and corrections to ISO/IEC 1539:1991 (E) 273 14 00000b 20 b X3J3 approved; ready for WG5 273 14 00000b 20 c 3. Annex C, first example [273:14]; change "ENDTYPE" to "END TYPE". 286 16 000153 225 a Defined Operations, dummy arguments INTENT(IN) 286 16 000153 225 b X3J3 approved; ready for WG5 286 16 000153 225 c 1. Section C.11.4, in function ELEMENT [286:16,17], change 286 16 000153 226 c INTEGER X 286 16 000153 227 c to 286 16 000153 228 c INTEGER, INTENT(IN) :: X 286 16 000153 229 c and change 286 16 000153 230 c TYPE (SET) A 286 16 000153 231 c to 286 16 000153 232 c TYPE (SET), INTENT(IN) :: A 286 21 000153 234 a Defined Operations, dummy arguments INTENT(IN) 286 21 000153 234 b X3J3 approved; ready for WG5 286 21 000153 234 c 2. Section C.11.4, in function UNION [286:21], change 286 21 000153 235 c TYPE (SET) A, B, UNION 286 21 000153 236 c to 286 21 000153 237 c TYPE (SET) UNION 286 21 000153 238 c TYPE (SET), INTENT(IN) :: A, B 286 37 000153 240 a Defined Operations, dummy arguments INTENT(IN) 286 37 000153 240 b X3J3 approved; ready for WG5 286 37 000153 240 c 3. Section C.11.4, in function DIFFERENCE [286:37], change 286 37 000153 241 c TYPE (SET) A, B, DIFFERENCE 286 37 000153 242 c to 286 37 000153 243 c TYPE (SET) DIFFERENCE 286 37 000153 244 c TYPE (SET), INTENT(IN) :: A, B 287 2 000153 246 a Defined Operations, dummy arguments INTENT(IN) 287 2 000153 246 b X3J3 approved; ready for WG5 287 2 000153 246 c 4. Section C.11.4, in function INTERSECTION [287:2], change 287 2 000153 247 c TYPE (SET) A, B, INTERSECTION 287 2 000153 248 c to 287 2 000153 249 c TYPE (SET) INTERSECTION 287 2 000153 250 c TYPE (SET), INTENT(IN) :: A, B 287 5 000153 252 a Defined Operations, dummy arguments INTENT(IN) 287 5 000153 252 b X3J3 approved; ready for WG5 287 5 000153 252 c 5. Section C.11.4, in function SUBSET [287:5], change 287 5 000153 253 c TYPE (SET) A, B 287 5 000153 254 c to 287 5 000153 255 c TYPE (SET), INTENT(IN) :: A, B 292 5 000125 1108 a Copy in/copy out of target dummy arguments 292 5 000125 1108 b X3J3 consideration in progress 292 5 000125 1108 c 6. Section C.12.8, delete the second paragraph through the end of 292 5 000125 1109 c the section [292:5-37] and replace with 292 5 000125 1110 c 292 5 000125 1111 c When execution of a procedure completes, any pointer that remains 292 5 000125 1112 c defined and that is associated with a dummy argument that has the 292 5 000125 1113 c TARGET attribute, remains associated with the corresponding actual 292 5 000125 1114 c argument. 292 5 000125 1115 c 292 5 000125 1116 c REAL, POINTER :: PBEST 292 5 000125 1117 c REAL, TARGET :: B (10000) 292 5 000125 1118 c CALL BEST (PBEST, B) ! Upon return PBEST is associated 292 5 000125 1119 c ... ! with the "best" element of B 292 5 000125 1120 c CONTAINS 292 5 000125 1121 c SUBROUTINE BEST (P, A) 292 5 000125 1122 c REAL, POINTER :: P 292 5 000125 1123 c REAL, TARGET :: A (:) 292 5 000125 1124 c ... ! Find the "best" element A(I) 292 5 000125 1125 c P => A (I) 292 5 000125 1126 c RETURN 292 5 000125 1127 c END SUBROUTINE 292 5 000125 1128 c END 292 5 000125 1129 c 292 5 000125 1130 c It is illegal to associate a dummy argument that has the TARGET attribute 292 5 000125 1131 c with an actual argument that does not have the TARGET attribute. An 292 5 000125 1132 c explicit interface is required when calling a procedure which has a dummy 292 5 000125 1133 c argument that is a target. In the following example, an expression is 292 5 000125 1134 c argument associated with a target dummy argument. The presence of the 292 5 000125 1135 c explicit interface allows a processor to detect this error. 292 5 000125 1136 c 292 5 000125 1137 c POINTER P 292 5 000125 1138 c CALL FRED (P, 4.5+X) ! Invalid call to FRED 292 5 000125 1139 c PRINT *, P 292 5 000125 1140 c ... 292 5 000125 1141 c CONTAINS 292 5 000125 1142 c SUBROUTINE FRED (PTR, TGT) 292 5 000125 1143 c POINTER PTR 292 5 000125 1144 c TARGET TGT 292 5 000125 1145 c PTR => TGT 292 5 000125 1146 c RETURN 292 5 000125 1147 c END SUBROUTINE 292 5 000125 1148 c END 304 25 000101 137 a Specification statements 304 25 000101 137 b X3J3 consideration in progress 304 25 000101 137 c 6. Section D.1.2 R207[304:25] change 'specification-stmt' to 'declaration-stmt' 304 46 000101 139 a Specification statements 304 46 000101 139 b X3J3 consideration in progress 304 46 000101 139 c 7. Section D.1.2 R214[304:46] change 'specification-stmt' to 'declaration-stmt' 363 37 000058 1266 a Ambiguous use of "keyword" 363 37 000058 1266 b X3J3 approved; ready for WG5 363 37 000058 1266 c 13. Page 363, delete the entry for "argument keywords 183" [363:37] 363 37 000058 1267 c rationale: odd to index both singular and plural. "Keyword", 363 37 000058 1268 c and "statement keyword" are indexed to page 16, as is the remaining 363 37 000058 1269 c entry for "argument keyword". 368 13 000058 1271 a Ambiguous use of "keyword" 368 13 000058 1271 b X3J3 approved; ready for WG5 368 13 000058 1271 c 14. Annex F, delete the entry "positional arguments" [368:13]