home *** CD-ROM | disk | FTP | other *** search
- GNAT IMPLEMENTED FEATURES LIST
- Current as of 01/23/95
-
- Here is the list of implemented and not implemented features. A more precise
- description of the GNAT system is provided in the file 'gnatinfo.txt', which
- is part of the GNAT distribution.
-
- Latest features in GNAT version 3.02
- ====================================
- Implement packing of multidimensional arrays
-
- Get_Immediate now follows the implementation advice and works as intended
- (for SGI IRIX, Sparc SunOS/Solaris, Alpha OSF1, IBM OS/2 and Linux)
-
- The task attributes package is now fully functional
-
- Warnings for unset variables, and possible access before initialization
-
- pragma Warnings (On | Off) allows more detailed control of warnings
- pragma Source_File_Name allows specifying non-standard file names
- pragma No_Return allows specifying a procedure that never returns
- pragma Attach_Handler (implemented on Sparc SunOS and Sparc Solaris only)
- pragma Interrupt_Handler (implemented on Sparc SunOS and Sparc Solaris only)
-
- Latest features in GNAT version 3.01
- ====================================
-
- pragma Normalize_Scalars
- Ada.Text_IO.Editing
- Ada.Wide_Text_IO.Editing
- Incomplete types declared in the private part that are
- completed in the package body as unconstrained arrays.
- Full implementation of stream attributes, including the
- dispatching cases for class wide types.
- Private protected operations
- Pointers to unconstrained arrays may be double or single length. Double
- ("fat") is the default size (e.g. 64 on SGI), but rep clauses or a
- foreign convention will force them to single length.
- Aggregates for composite Types with controlled components
- Objects of type with unknown discriminants
- pragma Queuing_Policy
- pragma Source_File_Name (GNAT specific)
- True multiprocessing on Sparc Solaris
-
- Latest features in GNAT version 2.07
- ====================================
-
- Discriminant checks
- Package Ada.Exceptions
- External_Tag attribute
- Identity attribute
- Range Checks on the elaboration of a subtype_indication
- Duration is an ordinary fixed-point type with delta of one nanosecond
- Package Interfaces.COBOL
- Protected subprogram pointers
- Caller attribute
- Restriction pragma
- All restrictions in real time annex
- All restrictions in safety and security annex
- Higher resolution clocks for tasking on SunOS/Solaris
-
- Latest features in GNAT version 2.06
- ====================================
-
- Requeue Statement involving task entries
- inter-unit inlining (enabled by -O2 -gnatn)
- aggregates for simple controlled types
-
- Latest features in GNAT version 2.05
- ====================================
-
- Elaboration Checks
- A new switch -gnati8 specifies the use of IBM PC Code Page 850 for
- the identifier character set (this is Latin-1 a la IBM PC)
- Protected entry families
- Ada.Synchronous_Task_Control
- Attribute Storage_Pool
- Packed arrays (including packed boolean arrays)
- Accessibility checks
- -I for specifying source and object path (see gnatinfo.txt for details)
- Conditional protected entry calls
- Delay until inside select statements
-
- Latest features in GNAT version 2.04
- ====================================
-
- GNATMAKE utility (see gnatinfo.txt for details)
- Pragma Export
- Ada.Streams.Stream_IO
- Attribute Definite
- Interrupt entries
- Input-Output for Modular Types
- Input-Output for Decimal Types
- Input-Output for Integer for type Long_Long_Integer.
- The following are now implemented in package Ada.Text_IO
- Flush
- Look_Ahead
- Get_Immediate
- Text_IO.Complex_IO
- Text_IO.Text_Streams
- Wide_Text_IO
- Wide_Text_IO.Complex_IO
- Wide_Text_IO.Text_Streams
-
- Note: All the I/O packages have been rewritten from the
- ground up for this release, and should completely implement all
- features of the RM. To get file sharing, allowed only if the
- files are for the same I/O package and same mode, use a form
- parameter shared=yes.
-
- Status of Features
-
- This list applies to the ports for the following targets:
-
- SGI IRIX 5.2
- Sun Sparc (SunOS 4.1 and Solaris 2.3),
- x86 running IBM OS/2, Linux
-
- Other targets are generally complete except that no tasking constructs
- are implemented.
-
- ==========================================================
- = All of Ada 83 is implemented EXCEPT for the following: =
- ==========================================================
-
- Stack overflow checking is implemented only on the SGI machines
-
- =========================================================================
- = All of Ada 95 implemented EXCEPT the following unimplemented features =
- =========================================================================
-
- CORE
- (fully implemented)
-
- ANNEX A. PREDEFINED LANGUAGE ENVIRONMENT
- Ada.Interrupts (implemented on Sparc SunOS and Sparc Solaris only)
-
- ANNEX B. INTERFACING TO OTHER LANGUAGES
- (fully implemented)
-
- ANNEX C. SYSTEMS PROGRAMMING
- Machine intrinsic subprograms
- Interrupt support (implemented on Sparc SunOS and Sparc Solaris only)
- Ada.Interrupts (implemented on Sparc SunOS and Sparc Solaris only)
- Record rep clauses require full specification
-
- ANNEX D. REAL-TIME SYSTEMS
- (fully implemented)
-
- ANNEX E. DISTRIBUTED SYSTEMS
- (fully implemented)
- (this refers to the compiler part, stub generation and the pragmas)
-
- ANNEX F. INFORMATION SYSTEMS
- (fully implemented)
-
- ANNEX G. NUMERICS
- Accuracy requirements for floating-point and complex not fully met
-
- ANNEX H. SAFETY AND SECURITY
- (fully implemented)
-
- ANNEX I. OBSOLESCENT FEATURES
- (fully implemented)
-
- ANNEX J. LANGUAGE-DEFINED ATTRIBUTES
- (fully implemented)
-
- ANNEX K. LANGUAGE DEFINED PRAGMAS
- Attach_Handler (implemented on Sparc SunOS and Sparc Solaris only)
- Interrupt_Handler (implemented on Sparc SunOS and Sparc Solaris only)
-