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, MSGID_RANDY autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,b16c9883f36bc904 X-Google-Attributes: gid103376,public From: n_brunot@my-deja.com Subject: Re: WinNT ADA compilers comparison Date: 2000/08/03 Message-ID: <8mak9p$rbm$1@nnrp1.deja.com>#1/1 X-Deja-AN: 653839736 References: <3976C68A.12386D00@cadwin.com> <8l7fff$9kb$1@front1.grolier.fr> <3A92E737.E690906A@free.fr> <3978041A.EB0F8FCE@cadwin.com> <8lcgbi$gvb$1@front5.grolier.fr> <397C03F9.AF6DF60F@cadwin.com> <86zon5aio7.fsf@acm.org> <8m8psc$ef6$1@nnrp1.deja.com> <8m9a08$pu7$1@nnrp1.deja.com> X-Http-Proxy: 1.1 - (DeleGate/6.1.9), 1.0 x56.deja.com:80 (Squid/1.1.22) for client 202.228.192.146 Organization: Deja.com - Before you buy. X-Article-Creation-Date: Thu Aug 03 02:10:02 2000 GMT X-MyDeja-Info: XMYDJUIDn_brunot Newsgroups: comp.lang.ada X-Http-User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT) Date: 2000-08-03T00:00:00+00:00 List-Id: In article <8m9a08$pu7$1@nnrp1.deja.com>, gdemont@my-deja.com wrote: > Did you avoid inlining (-gnatn or -gnatN) too ? > A solution would be to share more instanciations of generics > e.g. having common subtypes. Create 1-line packages for those > generic ones used many times: > "with such_generic; package such_inst is new such_generic(x,y,z);" > If there are many main procedures p1, p2,... > (-> several linked executables p1.exe, p2.exe) > using almost the same packages, shell them through a common one > "with p1,p2,...; procedure p is..." We try not introducing any changes in our specifications and tools just to satisfy one compiler if all others are happy with a perfectly satisfying code (especially a compiler we don't use for release version) We prefer to wait that the compiler works fine with code ok for all others compilers. We always check our code with several compilers in order to keep our code as much independant as possible from the compiler, even for one single platform. Some compilers don't have the same behavior, and a perfectly bad code can work very well on a very good compiler. It's a very good way to chase bad or non portable code with this method, and it's doesn't make you lose a lot of time (and you win a lot) gnat 3.12p is one we use to check our code, but anyway it is unusable for our applications due to its very poor reliability when components of foreign code are called under WinNT, (see discussion for float_io.put on gnat chat july archives www.gnat.com) Gnat works in a very different way than others compilers which makes it a good check tool even if we don't use it for release versions. Of course a (very expensive) supported version exists, and bugs could be quickly solved, but we think it's not a good thing that support is needed for basic reliability problems . Compiler vendor often forget than even if their support answers and provides a patch in less than 1 hour, the time to detect the problem (especially hardly noticeable ill behavior without warning or crash, and especially if it's detected after official release), isolate it, contact support, get the patch, make a new version of your application, providing it to your customers, is of incredibly high cost. It's much better to have a not so good support you need once every two years, than an excellent support you need every 3 monthes. > > And what makes you unhappy with the Ada95 compilers other than GNAT ? > > G. Currently we have more than 1 million ADA lines code compiled with an ADA 83 compiler. We never need any support in 5 or 6 years. We test several compilers to switch to ADA95 (our code is designed so we have very few specific units requiring different code for ADA83 and ADA95) and we are not in a hurry. Nothing makes us unhappy with others ADA95 compilers We just take the time to check internally our softs compiled with others compilers, and compare the easy of use, time required to compile, link etc ... Sent via Deja.com http://www.deja.com/ Before you buy.