J3/09-011 To: J3 From: Malcolm Cohen Subject: Editor's list of unresolved technical issues Date: 2008/01/09 A. Introduction --------------- This document lists the technical issues raised by the editor with the 007. Issues are separated into two lists; the resolved ones and the unresolved ones. When an issue is resolved, the J3 note in the 007 will be deleted and the item moved from the unresolved list to the resolved list. Issue numbers will not be reused. Note that several issues were raised with the Enhanced Modules Technical Report. Because this was not an official 007, these were given numbers in the range 5000+ so as not to conflict. These issues are also listed in this document. The one-line description is just a hint as to the issue, not a comprehensive statement of it. B. Unresolved issues -------------------- 151. No indirect access is unreasonable. Feature: Submodules. Added by: 09-102 as a result of processing 08-154r1. 152. Do not impose requirements or define terms in notes. Feature: Coarrays. Added by: 09-102 as a result of processing 08-290r2. 153. What does ``object associated with a coarray'' mean here? Feature: Coarrays. Added by: 09-102 as a result of processing 08-290r2. 154. What is the kind type parameter of VALUE? Feature: Coarrays. Added by: 09-102 as a result of processing 08-297r1. 155. Can a lock variable value be anything other than locked or unlocked? Feature: Coarrays. Added by: 09-102 as a result of processing 08-300/08-256r2. 156. Just exactly what lock variables are required to be coarrays? Feature: Coarrays. Added by: 09-102 as a result of processing 08-300/08-256r2. 157. Why is this requirement not a constraint? Feature: Coarrays. Added by: 09-102 as a result of processing 08-300/08-256r2. 158. Notes about nonexistent situations not always helpful. Feature: Coarrays. Added by: 09-102 as a result of processing 08-300/08-256r2. 159. acquired/released terminology is unnecessary and confusing. Feature: Coarrays. Added by: 09-102 as a result of processing 08-300/08-256r2. 160. Indigestible lump. Feature: Coarrays. Added by: 09-102 as a result of processing 08-300/08-256r2. 161. Wordsmithing needed, plus... Feature: Coarrays. Added by: 09-102 as a result of processing 08-300/08-256r2. 162. What kind are ATOMIC_INT_KIND and ATOMIC_LOGICAL_KIND? Feature: Coarrays. Added by: 09-102 as a result of processing 08-300/08-256r2. C. Resolved issues ------------------ 001. Co-array Fortran model (program includes all the images?). Feature: Co-arrays. Resolved in 06-007r1 by 06-235r1. 002. Which parts of execution are shared vs. replicated. Feature: Co-arrays. Resolved in 06-007r1 by 06-235r1. 003. Normal termination of execution of program vs. images. Feature: Co-arrays. Resolved in 06-007r1 by 06-236. 004. Termination warnings and messages. Feature: Co-arrays. Resolved in 06-007r1 by 06-236. 005. Reusing STOP for error termination (as well as normal termination). Feature: Co-arrays. Modified by: 06-235r1. Resolved in 07-007r1 by 07-155r2. 006. How soon termination happens. Feature: Co-arrays. Modified by: 06-235r1. Resolved in 07-007r1 by 07-155r2. 007. The term "co-dimension" is not defined. Feature: Co-arrays. Resolved in 06-007r1 by 06-237. 008. Bad placement/wording about automatic co-arrays not being allowed. Feature: Co-arrays. Resolved in 06-007r1 by 06-238r1 and 06-293. 009. Allocatable co-arrays and recursion. Feature: Co-arrays. Resolved in 06-007r1 by 06-238r1. 010. Inconsistent saving of allocatable co-arrays. Feature: Co-arrays. Modified by: 06-238r1. Resolved in 07-007r1 by 07-109. 011. CONTIGUOUS definition list not ISO conformant. Feature: Contiguous. Resolved in 07-007 by 06-308r2. 012. Co-array bounds description bad. Feature: Co-arrays. Resolved in 06-007r1 by 06-239 and 06-240. 013. Co-array bounds syntax/semantics disconnect. Feature: Co-arrays. Resolved in 06-007r1 by 06-240. 014. Bits compatibility placement. Feature: Bits. Resolved in 06-007r1 by 06-213. 015. Bits compatibility definition: symmetry, safety. Feature: Bits. Resolved in 06-007r1 by 06-213. 016. Bits compatibility term vs. "type and kind compatible". Feature: Bits. Deleted in 07-007r1 by 07-156. 017. Bits compatibility and generic resolution. Feature: Bits. Resolved in 06-007r1 by 06-221r1. 018. Bits kind type parameter and future extensibility. Feature: Bits. Resolved in 06-007r1 by meeting 177 discussion. 019. Bits "semi-polymorphism" and (lack of) explicit interface requirement. Feature: Bits. Resolved in 06-007r1 by 06-217. 020. "Z[P] = Z" and allocatable components. Feature: Co-arrays. Resolved: unknown, recognised as resolved in 07-007r3. 021. Inadequate specification of co-subscript mapping. Feature: Co-arrays. Resolved in 06-007r1 by 06-242. 022. Allocation of types with co-array (ultimate) components. Feature: Co-arrays. Resolved in 06-007r1 by 06-243. 023. Intrinsic assignment, co-indexed objects, allocatable components. Feature: Co-arrays. Resolved: unknown, recognised as resolved in 07-007r3. 024. Intrinsic assignment, co-indexed objects, polymorphism. Feature: Co-arrays. Resolved in 06-007r1 by 06-244. 025. Definition of "iteration". Feature: DO CONCURRENT. Resolved in 06-007r1 by 06-195. 026. END PROGRAM effect should not be described under STOP. Feature: Co-arrays. Resolved in 06-007r1 by 06-245r1. 027. SYNC_ALL and STOP ambiguities. Feature: Co-arrays. Resolved in 06-007r1 by 06-245r1. 028. "Made available" is confusing and possibly meaningless. Feature: Co-arrays. Resolved in 06-007r1 by 06-245r1. 029. Sequencing of STOP effects not after SYNC_ALL. Feature: Co-arrays. Resolved in 06-007r1 by 06-245r1. 030. Image 1 special casing justification lack of. Feature: Co-arrays. Resolved in 06-007r1 by 06-245r1. 031. Which images include the effect of executing C "exit"? Feature: Co-arrays. Resolved in 06-007r1 by 06-245r1. 032. Inconsistency of exception warnings on normal termination. Feature: Co-arrays (or F2003). Resolved in 06-007r1 by 06-245r1. 033. Exit code recommendations incomplete. Feature: STOP exit code. Resolved in 07-007 by 06-365r1. 034. Remote access to non-coarray TARGETs. Feature: Co-arrays. Resolved in 06-007r1 by 06-246. 035. "team" definition. Feature: Co-arrays. Resolved by 06-247r1. 036. Image set non-coindexed requirement ineffective. Feature: Co-arrays. Resolved in 06-007r1 by 06-248. 037. Advertisements do not belong in the standard. Feature: Co-arrays. Resolved in 06-007r1 by 06-198. 038. Inconsistent effects of omitting STAT=. Feature: Co-arrays. Resolved in 06-007r1 by 06-250. 039. Global scope of external units. Feature: Co-arrays. Modified in 06-007r1 by 06-251. Resolved in 07-007 by 06-361. 040. INQUIRE(TEAM=) missing. Feature: Co-arrays. Resolved in 06-007r1 by 06-252r2. 041. OPEN (TEAM=) connection. Feature: Co-arrays. Resolved in 06-007r1 by 06-257 and 06-293. 042. Which i/o statements are allowed on preconnected units? Feature: Co-arrays. Resolved in 07-007 by 06-317r3. 043. Description of INPUT_UNIT requirements. Feature: Co-arrays. Resolved in 07-007 by 06-317r3. 044. NEXTREC= and TEAM=. Feature: Co-arrays. Resolved in 07-007 by 06-318. 045. Input editing, list item definition, as if ineffective. Feature: Bits. Resolved in 06-007r1 by 06-219r2. 046. Reading unsigned integers. Feature: Bits. Resolved in 06-007r1 by 06-219r2. 047. Corresponding integers to BITS(7) might not exist. Feature: Bits. Resolved in 06-007r1 by 06-219r2. 048. How to write list-directed bits values. Feature: Bits. Resolved in 06-007r1 by 06-220r2. 049. Explicit interface for call with co-indexed object is unwarranted. Feature: Co-arrays. Resolved in 07-007 by 06-319r3. 050. Lack of co-indexed object argument passing considered harmful. Feature: Co-arrays. Modified in 07-007 as a result of processing 06-319r3. Resolved in 07-007r1 by 07-129. 051. Note about making copies seems unlikely to be true. Feature: Co-arrays. Resolved in 07-007 by 06-319r3. 052. Unsafe argument association for pointers. Feature: Bits. Resolved in 06-007r1 by 06-221r1. 053. Unsafe argument association for allocatables. Feature: Bits. Resolved in 06-007r1 by 06-221r1. 054. What can be passed to a dummy co-array. Feature: Co-arrays. Resolved in 07-007 by 06-320. 055. ASYNCHRONOUS dummies and co-indexed actuals. Feature: Co-arrays. Resolved in 07-007 by 06-319r3. 056. Collective subroutine definition. Feature: Co-arrays. Resolved in 06-007r1 by 06-261. 057. Implicit team synchronisation not defined. Feature: Co-arrays. Resolved in 06-007r1 by 06-262r1. 058. Tutorial information does not belong in this subclause. Feature: Co-arrays. Resolved in 06-007r1 by 06-264r1. 059. The two different uses of THIS_IMAGE are completely different. Feature: Co-arrays. Resolved in 06-007r1 by 06-265r1. 060. Kind of bits kind type parameter, or spurious KIND= in BITS_KIND. Feature: Bits. Resolved in 06-007r1 by 06-222r1. 061. COMPLEX(KIND(0d0)), BIT_SIZE, NUMERIC_STORAGE_SIZE. Feature: Bits. Modified in 06-007r1 by 06-223 rejection. Resolved in 07-007 by 06-325. 062. Another useless KIND= argument. Feature: Bits. Resolved in 06-007r1 by 06-222r1. 063. Synchronisation, FORM_TEAM, SYNC_IMAGES. Feature: Co-arrays. Resolved in 07-007 by 06-321r2. 064. Padding value in EOSHIFT for type bits? Feature: Co-arrays. Resolved in 06-007r1 by 06-224. 065. Another useless KIND= argument. Feature: Bits. Resolved in 06-007r1 by 06-222r1. 066. LOGICAL(bits) might not be a value. Feature: Bits. Resolved in 06-007r1 by 06-225. 067. MERGE_BITS inconsistent with IAND et al. Feature: Bits. Resolved in 06-007r1 by 06-226r1. 068. MERGE_BITS internal inconsistency. Feature: Bits. Resolved in 06-007r1 by 06-226r1. 069. Extra examples need rewording, belong in annex C. Feature: Co-arrays. Resolved in 06-007r1 by 06-267. 070. Description does not make sense for bits. Feature: Bits. Resolved in 06-007r1 by 06-227. 071. Arithmetic shift isn't (except on 2s complement). Feature: Bits. Resolved in 06-007r1 by 06-228. 072. Bit model does not interpret values with the top bit set. Feature: Bits. Resolved in 06-007r1 by 06-228. 073. IMAGE_TEAM limitations. Feature: Co-arrays. Modified by: 06-270r2. Modified in 07-007 as a result of processing 06-322r4. Resolved in 07-007r1 by 07-148r2. 074. C names unnecessary, misleading, inhibit future and vendor extension. Feature: Bits. Resolved in 06-007r1 by 06-230r1. 075. Ordering sentence is too subtle. Feature: Bits. Modified in 06-007r1 by 06-231r1. Resolved in 07-007 by 06-323r1. 076. Definition status and bits. Feature: Bits. Modified by: 06-232r3. Modified in 07-007 as a result of processing 06-326r1. Deleted in 07-007r1 by 07-128r2. 077. Extending storage association. Feature: Bits. Modified in 06-007r1 by 06-233r1. Resolved in 07-007 by 06-327r1. 078. Images and scoping. Feature: Co-arrays. Resolved in 06-007r1 by 06-271. 079. Non-aliasing rules and images. Feature: Co-arrays. Resolved in 07-007 by 06-332r1. 080. New features list in intro. Feature: all. Added by: 06-274r2. Resolved in 08-007r1 by 08-130r2. 081. MOLD= questions. Feature: MOLD=. Added by: 06-274r2. Resolved in 07-007 by 06-310. Deleted in 07-007r1 by 07-157r2. 082. Auto-targetting and annex C. Feature: auto-targetting. Added by: 06-293. Resolved in 07-007r1 by 07-136. 083. ENTRY restrictions and construct entities. Feature: BLOCK construct. Added in 06-007r1 by 06-293. Resolved in 07-007 by 06-363r2. 084. BLOCK constructs and USE association. Feature: BLOCK construct. Added by: 06-254r1. Deleted in 07-007 by 07-169. 085. Image number ordering in FORM_TEAM and SYNC IMAGES. Feature: Co-arrays. Added in 06-007r1 by 06-252r2. Resolved in 07-007 by 06-336r2. 086. Error handling in SYNC TEAM. Feature: Co-arrays. Added by: 06-252r2. Modified in 07-007 as a result of processing 06-322r4. Deleted by 07-127r1. Reinstated, modified, by 07-179. Resolved in 07-007r2 by 07-208r1. 087. There is no need for NULL_IMAGE_TEAM. Feature: Co-arrays. Added in 06-007r1 by 06-252r2. Resolved in 07-007 by 06-322r4. 088. CLOSE and collectivity. Feature: Co-arrays. Added in 06-007r1 by 06-252r2. Resolved in 07-007 by 06-362. 089. Do not add uncheckable requirements on types. Feature: Co-arrays. Added by: 06-270r2. Resolved in 07-007r1 by 07-152r1. 090. What kind of type is IMAGE_TEAM. Feature: Co-arrays. Added by: 06-293. Modified in 07-007 as a result of processing 06-322r4. Resolved in 07-007r1 by 07-148r2. 091. Clarification/correction of waiting in async i/o? Feature: Fortran 2003 base language. Added by: 06-293 (06-199). Modified by 07-179 after review of 07-170. Resolved in 07-007r2 by 07-216. 092. Contradiction in RRSPACING. Feature: Fortran 2003 base language. Added by: 06-293. Resolved in 07-007r2 by 07-200r1. 093. SET_EXPONENT is broken for INF and NaN. Feature: Fortran 2003 base language. Added by: 06-293. Resolved in 07-007r2 by 07-201r1. 094. Constraints are inconsistent. Feature: Fortran 2003 base language. Added by: 06-293. Resolved in 07-007r2 by 07-226. 095. Executable statements definition now incorrect. Feature: BLOCK construct. Added in 06-007r1 by 06-293. Resolved in 07-007 by 06-303r1. 096. Co-indexed actual to pointer/allocatable dummy. Feature: Co-arrays. Added in 07-007 by 07-176. Resolved in 07-007r1 by 07-132. 097. Needless and harmful syntax rule qualification. Feature: F2003 base language (VOLATILE). Added by: 07-176. Resolved in 07-007r1 by 07-171. 098. Kinds of components in intrinsic types. Feature: Co-arrays. Added in 07-007 by 07-176. Resolved in 07-007r1 by 07-130r1. 099. Image properties not specified by the standard. Feature: Co-arrays. Added by: 07-176. Resolved in 07-007r1 by 07-149r1. 100. Ungrammatical gobbledygook with nonsensical references. Feature: Processor-dependent annex. Added by: 07-176 as a result of processing 06-331r4. Resolved in 07-007r2 by 07-217. 101. Use of undefined term ``compile-time contiguous''. Feature: Co-arrays. Added by: 07-176 as a result of processing 06-332r1. Resolved in 07-007r1 by 07-137r1. 102. C_PTR and C_FUNPTR undefined events defective. Feature: F2003 base language (C interop). Added by: 07-176 as a result of processing 06-352r3. Modified in 07-007r2 as a result of processing 07-212r3. Resolved in 07-007r3 by 07-265r1. 103. Should a redundant NAME='' be (unnecessarily) required? Feature: C interop plus internal procedures. Added by: 07-176 as a result of processing 06-352r3. Resolved in 07-007r1 by 07-138r1. 104. Real-bits mixed-mode comparisons considered harmful. Feature: Bits. Added by: 07-176 as a result of processing 06-354. Deleted in 07-007r1 by 07-151. 105. CO_UBOUND is inconvenient and inconsistent. Feature: Coarrays. Added in 07-007 by 06-357r2. Resolved in 07-007r1 by 07-130r1. 106. FLUSH action contradiction. Feature: F2003 base language. Added by 07-176 as a result of processing 06-331r4. Resolved in 07-007r1 by 07-166. 107. Not defined by Fortran means exactly that. Feature: F2003 base language. Added by 07-176 as a result of processing 06-331r4. Resolved in 07-007r1 by 07-147. 108. Ordering requirement text not normative. Feature: F2003 base language. Added by 07-176 as a result of processing 06-331r4. Modified as a result of processing 07-144r2. Resolved in 07-007r2 by 07-217. 109. POPCNT does not have a KIND argument. Feature: BITS. Added by 07-178 as a result of processing 07-116r2. Resolved in 07-007r2 by 07-197. 110. Named files without TEAM= unsupported assertion. Feature: Coarrays. Added by: 07-144r2. Resolved in 07-007r2 by 07-205r1. 111. Defective definition of term "C address". Feature: F2003 base language. Added by: 07-179 as a result of reviewing 07-104r1. Resolved in 07-007r2 by 07-199r1. 112. Image control statement problems with OPEN. Feature: Coarrays. Added by: 07-179 as a result of reviewing 07-122. Resolved in 07-007r3 by 07-251r1. 113. Co-array subobject reclassification breaks things. Feature: Coarrays. Added by: 07-179 as a result of reviewing 07-125. Resolved in 07-007r2 by 07-210. 114. Allocated co-arrays have all bounds the same. Feature: Coarrays. Added by: 07-179 as a result of reviewing 07-126. Resolved in 07-007r2 by 07-206r1. 115. Overly complicated paragraph is incorrect. Feature: F2003 base language. Added by: 07-179 as a result of reviewing 07-136. Resolved in 07-007r2 by 07-223. 116. Completion step problems. Feature: Coarrays. Added by: 07-179 as a result of reviewing 07-155r2. Resolved in 07-007r2 by 07-207r2. 117. I/O error list inadequately specified and misleading. Feature: Coarrays. Added by: 07-236 after editorial review of 07-007r1. Resolved in 07-007r3 by 07-253r3. 118. Last list item meaningless and outwith the scope of the standard. List is redundant, useless as is, and contradictory anyway. Feature: Coarrays. Added by: 07-236 after editorial review of 07-007r1. Resolved in 07-007r3 by 07-253r3. 119. Subroutines don't return anything! Feature: Coarrays. Added by: 07-236 after editorial review of 07-007r1. Modified in 07-007r3 as a result of processing 07-254r1. Deleted in 08-007 by 07-315. 120. Initial values of coarrays. Feature: Coarrays. Added by: 07-236 after editorial review of 07-007r1. Resolved in 07-007r3 by 07-255r2. 121. Serious disagreement over purported meaning of VOLATILE licence. Feature: Coarrays. Added by: 07-236 after post-meeting email shambles. Resolved in 07-007r3 by 07-256r1. 122. Inconsistent rules on inquiry functions in specification expressions. Feature: F2003 base language. Added by: 07-236 after editorial review of 07-007r1. Resolved in 07-007r3 by 07-263. 123. Pointer association status and default initialization. Feature: F2003 base language. Added by: 07-236 as a result of processing 07-227. Resolved in 08-007r1 by 08-107r1. 124. Nonsense paragraph about actual argument declaration. Entire "explanatory" subclause is nonsense. Feature: F2003 base language (C interop). Added by: 07-236 after editorial review of 07-007r1. Resolved in 07-007r3 by 07-261r1. 125. Incorrect statement in co-array description. Rewrote complicated text - review. Feature: Coarrays. Added by: 07-236 after editorial review of 07-007r1. Resolved in 08-007 by 07-306. 126. Missing semantics for allocatable coarrays in c02. Feature: Coarrays. Added by: 07-236 after editorial review of 07-007r1. Resolved in 07-007r3 by 07-258. 127. How can different objects be the same object? Feature: Coarrays. Added by: 07-283 as a result of processing 07-270r2. Resolved in 08-007 by 07-322r1. 128. Different images + different shapes = disaster. Feature: Coarrays. Added by: 07-283 as a result of processing 07-270r2. Resolved in 08-007 by 07-322r1. 129. Reference is less than useless. Feature: Coarrays. Added by: 07-283 as a result of processing 07-257r1. Resolved in 08-007 by 07-317r1. 130. Explanation doesn't and example isn't. Feature: Coarrays. Added by: 07-283 as a result of processing 07-257r1. Resolved in 08-007 by 07-304r2. 131. Coarray dummy arguments and segments. Feature: Coarrays. Added by: 07-283 as a result of processing 07-257r1. Resolved in 08-007 by 07-305r3. 132. A variable is never a procedure pointer. Feature: Fortran 2003 base language. Added by: 07-283 as a result of processing 07-240. Resolved in 08-007 by 07-331r1. 133. Poorly specified IEEE module subroutines. Feature: Fortran 2003 base language. Added by: 07-283 during terminology review. Modified by: 07-294r2. Resolved in 08-007r1 by 08-119. 134. Incorrect statement about printing. Feature: Fortran 2003 base language. Added by: 07-283 during terminology review. Resolved in 08-007r1 by 08-105r2. 135. Internal contradiction about IEEE arithmetic. Feature: Fortran 2003 base language. Added by: 07-283 during terminology review. Modified by: 07-332r1. Resolved in 08-007r1 by 08-112r1. 136. Function references are not operations. Feature: Fortran 2003 base language. Added by: 07-283 during terminology review. Resolved in 08-007r1 by 08-115r1. 137. Review ALL STOP integration with input/output. Feature: Coarrays. Added by: 07-283 while reviewing 07-245r2 effects. Resolved in 08-007 by 07-316. 138. Collective subroutines described in the wrong place. Feature: Coarrays. Added by: 07-283 during terminology review. Resolved in 08-007 by 07-323r1. 139. Characteristics definition is ambiguous. Feature: Fortran 2003 base language. Added by: 07-283 during terminology review. Resolved in 08-007 by 07-296r1. 140. What is an effective input/output list item? Feature: Fortran 2003 base language. Added by: 07-283 during terminology review. Resolved in 08-007 by 07-290r2. 141. Term ``effective list item'' is not defined. Feature: Fortran 2003 base language. Added by: 07-283 during terminology review. Resolved in 08-007 by 07-290r2. 142. External units are the same on all images? Feature: Coarrays. Added by: 07-283 during terminology review. Resolved in 08-007 by 07-324r3. 143. External linkage is not an object/procedure property. Feature: Fortran 2003 base language. Added by: 07-283 during terminology review. Resolved in 08-007 by 07-301r1. 144. Impossible requirement on the user. Feature: Coarrays. Added by: 08-102 as a result of processing 07-324r3. Resolved in 08-007r1 by 08-110. 145. Preconnection technical changes make note bad. Feature: Coarrays. Added by: 08-102 as a result of processing 07-324r3. Resolved in 08-007r1 by 08-111r1. 146. Change of semantics for integer BOZ. Feature: Bits. Added by: 08-102 as a result of processing 07-352r2. Resolved in 08-007r1 by 08-116r1. 147. Standard nonintrinsic is an oxymoron. Feature: Functions with special needs. Added by: 08-102 as a result of processing 07-336r1. Resolved in 08-007r1 by 08-108r2. 148. INT/REAL ok, what about DBLE/CMPLX? Feature: New bits. Added by: 08-102 as a result of processing 07-335r2. Resolved in 08-007r1 by 08-117. 149. Why are we deleting F2003 BOZ constant semantics? Feature: New bits. Added by: 08-102 as a result of processing 07-327r2. Resolved in 08-007r1 by 08-118r2. 150. Missing examples for new bits intrinsics. Feature: New bits. Added by: 08-102 as a result of processing 07-329r2. Resolved in 08-007r1 by 08-114r1. 5000. Phrase "its descendant submodules". Feature: Submodules. Resolved in 06-007 by 06-185. 5001. Referencing a submodule. Feature: Submodules. Resolved: unknown, recognised as resolved in 07-007r3. 5002. Module procedure interface body definition. Feature: Submodules. Resolved in 06-007 by 06-185. 5003. Module procedure interface block glossary entry. Feature: Submodules. Resolved in 07-007r1 by 07-135r1. 5004. Host scoping for submodules. Feature: Submodules. Resolved in 06-007 by 06-185. ===END OF DOCUMENT===