From: Jeffrey Creem <jeff@thecreems.com>
Subject: Re: Ada checks suppression thanks to compilation options and Ada conformity
Date: Fri, 09 Nov 2007 00:15:01 GMT
Date: 2007-11-09T00:15:01+00:00 [thread overview]
Message-ID: <qajc05-1q6.ln1@newserver.thecreems.com> (raw)
In-Reply-To: <4733972C.C7E7BCE@free.fr>
Christophe TRAVERS wrote:
> I send this message in order to get your opinion on the following
> subject :
>
> An Ada program was supposed to take into account the Ada exceptions :
> CONSTRAINT_ERROR, NUMERIC_ERROR, ...
> The pragma SUPPRESS was forbidden. So, it was not used in the Ada source
> code.
> Everybody was convinced that the exception mechanism was fully
> operational in the embedded object executable.
>
> Nevertheless, the object code was compiled thanks to the Ada TARTAN
> compiler with some compilation options have suppressed all the "checks"
> in the entire object code.
>
> From my point of view, these compilation options that can suppress the
> checks are a way to get around the Ada language norm.
>
> What it you opinion on this suject?.
>
> Sincerely.
>
If I understand what you are implying I think it is fair to say that the
purpose of the options is not to get around the Ada language norm.
Specifically, if you mean that you think the most likely reason someone
did this was to remove the checks so they could write bad code without
the compiler bothering them then I suspect (hope) you are wrong.
It is non uncommon in an embedded system with limited processing
resources to run with checks suppressed to allow the code to fit either
the actual processor or some 100% processing reserve requirement.
All of Ada's static checking rules will still apply so much of what you
might think someone was trying to get away with will still be caught.
It is certainly possible that it was done for the reason that I think
you are implying, but it is not likely.
It is also possible that even a well intentioned team that ran with
checks suppressed for all the right reasons has allowed a small number
of bug (detections) to creep in that would be triggered if checks are
enabled.
It is a good practice to run 'some' with checks enabled even if project
needs require that the final build have checks suppressed. Having said
that, since one should 'test the way you fly' I would also say that I
would expect a majority (if not all) of the qualification level testing
to be done with the deployed switch conditions.
I wonder what you really mean by "Everybody was convinced that the
exception mechanism was fully operational in the embedded object
executable". Are you implying that after reading the compiler
documentation and understanding all of the flags you had every reason to
believe checks were enabled because the documentation was
wrong/misleading and or because there is a compiler bug? Or, do you mean
that everyone just assumed it would be so?
Certainly the fact that pragma suppress was forbidden implies some form
of the latter....
next prev parent reply other threads:[~2007-11-09 0:15 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-08 23:09 Ada checks suppression thanks to compilation options and Ada conformity Christophe TRAVERS
2007-11-08 23:52 ` Ludovic Brenta
2007-11-09 0:15 ` Jeffrey Creem [this message]
2007-11-09 0:25 ` Adam Beneschan
2007-11-09 6:07 ` anon
[not found] ` <13j8b1pjln94ce@corp.supernews.com>
2007-11-10 20:21 ` Christophe TRAVERS
[not found] ` <13j8b1oon6rvncd@corp.supernews.com>
2007-11-10 20:54 ` Christophe TRAVERS
2007-11-10 22:00 ` Keith Thompson
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox