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,16e3a8dd4f3ab3f3 X-Google-Attributes: gid103376,public From: dewar@cs.nyu.edu (Robert Dewar) Subject: Re: Elaboration order Date: 1996/03/19 Message-ID: #1/1 X-Deja-AN: 143331958 references: <314701A1.469D@lfwc.lockheed.com> <31494143.3825@lfwc.lockheed.com> <4icbnc$cda@wdl1.wdl.loral.com> <314D2E1C.5C72@lfwc.lockheed.com> <4in4am$klb@watnews1.watson.ibm.com> <4inpiv$alk@cliffy.lfwc.lockheed.com> organization: Courant Institute of Mathematical Sciences newsgroups: comp.lang.ada Date: 1996-03-19T00:00:00+00:00 List-Id: Mike says "As an aside to the RM discussion of this thread, how do I know that Ada compiler X will generate the correct (as defined in the RM) elaboration order? I know that ACVC tests do not guarantee correct code generation. Is the ACVC suite more complete when it comes to elaboration? Is there a standard benchmark used by compiler vendors? Or, for safety critical functions, should I verify this for every application build?" Of course the ACVC suite does not guarantee that a compiler gets the order of elaboration correct in every case. Your question seems to imply that you expected the ACVC suite to guarantee correct code generatoin and that the reason that it does not is that it is not complete. This is a serious misconception. No test suite can ever guarantee that a compiler has no errors -- indeed, except for very trivial programs, no set of tests ever guarantees accuracy. For safety critical applications, you cannot trust ANY aspect of a compiler or any other tool that you use, and you need to carefully verify EVERYTHING about your program -- at least, put it this way, if you write the code for a plane that I will fly on, I will expect this! Are there ACVC tests to test order of elaboration? Sure! Do they help ensure that compilers are correct in this respect? Sure! Do they guarantee that compilers are correct in this respect? NO!