From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.5-pre1 (2020-06-20) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-1.9 required=3.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.5-pre1 Date: 14 Feb 93 22:48:27 GMT From: ucivax!gateway@ucbvax.Berkeley.EDU (Kenneth Anderson) Subject: Pet Peeve Message-ID: <9302141448.aa04739@Paris.ics.uci.edu> List-Id: In comp.lang.ada Adam Beneschan writes: > function "*" (left, right : APPLES) return APPLES is > begin > raise PROGRAM_ERROR; > return 0.0; -- Ada won't let us write a function that just raises > -- an exception without returning anything! > end "*"; This is off the subject that Adam is talking about, but this example displays one of my Pet Peeves. If you compile a file with a function like the one above using the SunAda compiler with this command a.make -v -C "ada -v -ev" -f *.a The compiler inserts warning statements into the source file telling you that the return statement will never be reached. Since the source file is modified, the a.make command thinks that the program is out of date, so that the NEXT time that you recompile with the above command it recompiles this file, even though it doesn't need to be recompiled. This can be avoided by using the following command a.make -v -f *.a but then you can't correct any errors that are found "on the fly" Grrrrr. Thanks for letting me vent a little steam... Ken