[M3devel] "pragmas being ignorable"
Tony Hosking
hosking at cs.purdue.edu
Mon Feb 22 23:46:14 CET 2010
On 22 Feb 2010, at 16:31, Jay K wrote:
> > I thought that was the point of pragmas, that the compiler could freely ignore them and that they
> > did not involve the correctness of the program.
>
> This confuses me. I'm not sure I see the line between having
> important meaning and having ignorable meaning.
> Is it like, they affect only codegen and diagnostics but not
> front end type/semantic analysis? Like "inline" and "nowarn"?
Yes.
> <* asserts *> definitely change the behavior of a program.
> But I guess "behavior" and "correctness" are different?
Asserts are benign so long as the program never violates the assertion.
> A "correct" program will never fail an assert, therefore
> removing them from a "correct" program makes no difference?
Correct!
And there is a compiler flag that lets you compile with assertions turned off...
>
>
> - Jay
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20100222/25ca9e5e/attachment-0002.html>
More information about the M3devel
mailing list