From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,2e71cf22768a124d X-Google-Attributes: gid103376,public From: dewar@cs.nyu.edu (Robert Dewar) Subject: Re: Assertions (was: Re: next "big" language?? (disagree)) Date: 1996/06/24 Message-ID: #1/1 X-Deja-AN: 161940518 references: <4ql1fv$5ss@goanna.cs.rmit.EDU.AU> organization: Courant Institute of Mathematical Sciences newsgroups: comp.lang.ada Date: 1996-06-24T00:00:00+00:00 List-Id: Bob Duff said " pragma Suppress(Assertion_Check); pragma Assert(...); for these two cases. Note that in *both* of these cases, the compiler can optimize the following code based on the asserted "fact". These pragmas are really no different from constraint checks, which may or may not be suppressed, and which can, of course, affect the behavior of the program. " Not quite, remember that failing an assertion raises Assert_Error, it is not erroneous, so the compiler cannot assume (not P) at the point where the assert appears, it can only assume (not P) after the asssertion which is a VERY much weaker condition.