From: anon@att.net
Subject: Re: Overloading attributes
Date: Wed, 30 Nov 2011 11:05:35 +0000 (UTC)
Date: 2011-11-30T11:05:35+00:00 [thread overview]
Message-ID: <jb52lt$eq7$1@speranza.aioe.org> (raw)
In-Reply-To: f10225e5-d894-4ccb-924a-6cf741781fe4@t16g2000vba.googlegroups.com
As for RM 1.1.3 "Conformity of an Implementation with the Standard"
This is just a small list of errors within the GNAT system.
Lets see GNAT violates a number of paragraphs such as:
2 Translate and correctly execute legal programs written in Ada,
provided that they are not so large as to exceed the capacity of
the implementation;
15 A conforming implementation of this International Standard shall
produce for the execution of a given Ada program a set of
interactions with the external environment whose order and timing
are consistent with the definitions and requirements of this
International Standard for the semantics of the given program.
When the GNAT compiler see a raise statement like
raise Program_Error ;
instead of converting the routine into something like is
Raise_Exception ( Program_Error'Identity,
Integer'Image ( Line_Number ) ) ;
or maybe
Raise_Exception ( Program_Error'Identity,
"was explicit raise by <filename> at line"
& Integer'Image ( Line_Number ) ) ;
it converts it to
RCheck_15 ( "<filename>", Line_number ) ;
that not translate and correctly. and the routines that must be
executed may interfer with the program timing.
5 Supply all language-defined library units required by this
International Standard;
16 An implementation that conforms to this Standard shall support
each capability required by the core language as specified. In
addition, an implementation that conforms to this Standard may
conform to one or more Specialized Needs Annexes (or to none).
Conformance to a Specialized Needs Annex means that each
capability required by the Annex is provided as specified.
A number of packages in GNAT do not function as stated in the Standard
an example is System.RPC and another is Ada.Asynchronous_Task_Control.
For the "Partition Communication Subsystem", Ada uses System.RPC which
an older communication but is still in the RM and is still useful.
Also, since GNAT compiler can process a program for multi-environments
it is required that all language-defined library units be fully
functional so Ada.Asynchronous_Task_Control should be fully functional
as well.
6 Contain no variations except those explicitly permitted by this
International Standard, or those that are impossible or
impractical to avoid given the implementation's execution
environment;
GNAT is always adding extra features that may or may not be in the
next Standard version that can causes corruptions to occur with current
Standard. Plus, there are a number of statements designs that are not
functional like the "representation_clause" within the "Protected Units"
10 The execution of certain code_statements (see 13.8); which
code_statements cause external interactions is implementation
defined.
While the System.Machine_Code package may be optional, but the coding of
"code_statements" are not optional. GNAT does not allow "code_statements"
of any kind. Actually the GNAT compiler does contains the code for
processing a "code_statement" but it is deactivated.
Adacore GNAT compiler and RTL is one of two Ada leading Ada systems, the
other is IBM/APEX system. Since GNAT can not even meet the complete
definition that is in "RM 1.1.3" that indicates that one or the other is
corrupted or and should not be used.
This might expain one reason the Dod drop the mandated use of Ada.
In <f10225e5-d894-4ccb-924a-6cf741781fe4@t16g2000vba.googlegroups.com>, Mark Lorenzen <mark.lorenzen@gmail.com> writes:
>On 29 Nov., 12:58, a...@att.net wrote:
>> Where in the RM does it say that the compiler and RTL is the implementation?
>> As everyone says the Ada RM is the final word! And if it is not defined in
>> the RM then the compiler and RTL are not the implementation, but are the
>> tools for the implementation.
>
>I think that chapter 1.1.3 ("Conformity of an Implementation with the
>Standard") pretty well describes the expectations for an
>implementation. To me it's pretty obvious that the standard is talking
>about the toolchain and the RTL.
>
>Regards,
>
>Mark L
next prev parent reply other threads:[~2011-11-30 11:05 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-26 23:13 Overloading attributes Matt Borchers
2011-11-26 23:24 ` Shark8
2011-11-27 7:38 ` Yannick Duchêne (Hibou57)
2011-11-27 3:36 ` anon
2011-11-27 7:04 ` J-P. Rosen
2011-11-27 20:00 ` anon
2011-11-27 20:34 ` Yannick Duchêne (Hibou57)
2011-11-27 20:50 ` Yannick Duchêne (Hibou57)
2011-11-27 23:10 ` J-P. Rosen
2011-11-28 9:11 ` anon
2011-11-28 10:53 ` Peter C. Chapin
2011-11-29 11:58 ` anon
2011-11-29 12:50 ` Mark Lorenzen
2011-11-30 11:05 ` anon [this message]
2011-11-29 16:16 ` AdaMagica
2011-11-29 17:43 ` Jeffrey Carter
2011-11-29 23:26 ` J-P. Rosen
2011-11-30 11:06 ` anon
2011-11-30 15:52 ` J-P. Rosen
2011-11-30 17:27 ` Yannick Duchêne (Hibou57)
2011-11-30 20:45 ` Pascal Obry
2011-12-01 11:01 ` Simon Wright
2011-12-02 18:55 ` anon
2011-12-02 19:34 ` Ludovic Brenta
2011-12-02 20:02 ` Yannick Duchêne (Hibou57)
2011-12-03 1:41 ` Randy Brukardt
2011-11-28 12:06 ` Ludovic Brenta
2011-11-27 5:11 ` Yannick Duchêne (Hibou57)
2011-11-27 12:57 ` Dmitry A. Kazakov
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox