J3/00-221r1 Date: Thursday, June 01, 2000 To: WG5 From: Tony Warnock, J3 Chair Subject: Fortran 2000 Status Report J3 has continued working on the standard. As requested by WG5, J3 is devoting resources towards interpretation processing. As requested by WG5, J3 will implement dynamic type allocations, a generalized constructor, an implicit root type, and the WITH-like construct. Current resource processing: 1/3 effort on interpretation processing, 1/3 effort on OOP, and 1/3 effort on interoperability with C. J3 has both gained and lost members this year. While the total number of members is about the same, the expertise of the retiring members will be missed. Fortran 2000 Workplan Status Report The base for Fortran 2000 is Fortran 95. J3 will integrate the material from the following "R" and "B" items (and any "M" and "B" items that are finished in time) into the Fortran 95 standard to prepare the Fortran 2000 draft standard. J3 will deliver this draft document to WG5 in 2003. Requirements R1 Derived-Type I/O Complete R2 Asynchronous I/O Complete R3 Procedure Pointers Complete R4 Interval Arithmetic Enabling Technologies Discontinued b Additions to Character Set Complete f Constants for Opaque Types Complete R5 Parameterized Derived Types Complete R6 Object Oriented Technologies a Inheritance Complete b Polymorphism Complete c Implicit Root Type Complete d WITH-like Construct Complete R7 Generalized Constructors/Destructors In Progress R8 Internationalization Complete R9 Interoperability with C In Progress Minor Technical Enhancements B1 VOLATILE Attribute Complete B2 Allow PUBLIC Entities of PRIVATE Type Complete B3 Mixed PUBLIC and PRIVATE Type Components Complete B4 Stream I/O Complete B5 Command Line Arguments and Environment Variables a Command-Line Arguments Complete b Environment Variables Complete B6 Access to Status Error Messages Complete B7 Control of I/O Rounding Complete M1 Increased Statement Length Complete M2 Intent for Pointer Arguments Complete M3 Generic RATE_COUNT in SYSTEM CLOCK Complete M4 Specifying Pointer Lower Bounds Complete M5 Extend MAX/MIN Intrinsics to CHARACTER Complete M6 Extended Initialization Expressions Complete M7 Lower Case Syntax Elements Complete M10 Named Scratch Files Complete M15 Renaming Defined Operators Complete M16 Derived-Type Assignment Fix Interpretation M17 Enhanced Complex Constants Complete M21 Flexible Optimization Control Discontinued M22 Control of Operation Rounding Discontinued M26 Dynamic Type Allocation Complete M27 Access Standard Unit Numbers Complete M28 IMPORT Statement Complete Technical Reports from Bodies other than J3 T1 Floating Point Exception Handling TR15580 T3 Allocatable Structure Components TR15581 Optional Parts of the Fortran Family of Standards Varying String Data Type Standard/Approved Conditional Compilation Standard/Approved Interpretations The following interpretations have been considered by J3. J3 Letter Number Title Pass 00001 Pass 00003 Pass 00004 Pass 00005 Pass 00012 Pass 00066 Errors in processing data transfer statements Pass Pass 00067 Writing zeros Pass Pass 00068 Asterisks as I/O units Pass Pass 00069 What is a numeric character? Pass Pass 00070 Asymmetry between constant specification and initialization expressions Pass Pass 00071 Character array constructors Pass Pass 00072 Resolving generic procedure references Pass Pass 00076 INTENT(IN) dummy arguments and implied DO loops Pass Pass 00077 INTENT(IN) dummy arguments and NULLIFY Pass Pass 00079 Pointer Assignment and Allocatable Arrays Pass Pass 00080 Host association and the EXTERNAL attribute Pass Pass 00082 Usage of BOZ literal constants Pass Pass 00083 Scope of array-constructor implied-DO variable Pass Pass 00084 Events that cause variables to be defined