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=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,6e45fe936511d518 X-Google-Attributes: gid103376,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news2.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!wn12feed!worldnet.att.net!bgtnsc05-news.ops.worldnet.att.net.POSTED!53ab2750!not-for-mail Newsgroups: comp.lang.ada From: anon@anon.org (anon) Subject: Re: GNAT - System.ads - System Implementation Parameters Reply-To: anon@anon.org (anon) References: <74711a57-e7f2-4a11-90bc-865a3fd07d5d@z17g2000hsg.googlegroups.com> X-Newsreader: IBM NewsReader/2 2.0 Message-ID: Date: Fri, 15 Feb 2008 06:34:00 GMT NNTP-Posting-Host: 12.64.60.199 X-Complaints-To: abuse@worldnet.att.net X-Trace: bgtnsc05-news.ops.worldnet.att.net 1203057240 12.64.60.199 (Fri, 15 Feb 2008 06:34:00 GMT) NNTP-Posting-Date: Fri, 15 Feb 2008 06:34:00 GMT Organization: AT&T Worldnet Xref: g2news1.google.com comp.lang.ada:19803 Date: 2008-02-15T06:34:00+00:00 List-Id: Gnat uses the "System Implementation Parameters" as a Initialization file that the user can alter without recompiling the compiler. It one reason that the file "System.ads" must be in the RTS search path. If you move or alter those parameter list too much the compiler will not work. That is, the GNAT compiler first reads in the command line, then calls the "Targparm.Get_Target_Parameters" to find a load "System.ads" and process those Boolean flags. Then the compile continue with compiling the source code. There is no documentation on these Boolean flags because they are use by Adacore (GNAT creators) in house. Also some are slowly be removed while others are becoming non-operational. In <74711a57-e7f2-4a11-90bc-865a3fd07d5d@z17g2000hsg.googlegroups.com>, Hibou57 writes: >Hola, Hello, Salam lik, > >In the GNAT standard librarie source code, one may see in the "System" >package specification (system.ads), a section commented as "System >Implementation Parameters". > >Here is what it contains : > >> -------------------------------------- >> -- System Implementation Parameters -- >> -------------------------------------- >> >> -- These parameters provide information about the target that is used >> -- by the compiler. They are in the private part of System, where they >> -- can be accessed using the special circuitry in the Targparm unit >> -- whose source should be consulted for more detailed descriptions >> -- of the individual switch values. >> >> AAMP : constant Boolean := False; >> Backend_Divide_Checks : constant Boolean := False; >> Backend_Overflow_Checks : constant Boolean := False; >> Command_Line_Args : constant Boolean := True; >> Configurable_Run_Time : constant Boolean := True; >> Denorm : constant Boolean := True; >> Duration_32_Bits : constant Boolean := False; >> Exit_Status_Supported : constant Boolean := True; >> Fractional_Fixed_Ops : constant Boolean := False; >> Frontend_Layout : constant Boolean := False; >> Functions_Return_By_DSP : constant Boolean := False; >> Machine_Overflows : constant Boolean := False; >> Machine_Rounds : constant Boolean := True; >> OpenVMS : constant Boolean := False; >> Signed_Zeros : constant Boolean := True; >> Stack_Check_Default : constant Boolean := False; >> Stack_Check_Probes : constant Boolean := False; >> Support_64_Bit_Divides : constant Boolean := True; >> Support_Aggregates : constant Boolean := True; >> Support_Composite_Assign : constant Boolean := True; >> Support_Composite_Compare : constant Boolean := True; >> Support_Long_Shifts : constant Boolean := True; >> Suppress_Standard_Library : constant Boolean := True; >> Use_Ada_Main_Program_Name : constant Boolean := False; >> ZCX_By_Default : constant Boolean := False; >> GCC_ZCX_Support : constant Boolean := False; >> Front_End_ZCX_Support : constant Boolean := False; > >Unfortinately, I was not able to found any formal documentation about >the meaning of each of this parameter. I may guess some meanings, but >I do not want to guess, I rather want to be sure. > >I've found one the web some mailing list where people try to guess and >play with it, but without beeing sure of anything (not better than >me). By the way, there seems to be some interesting project of OS >kernels written in Ada ;) Good! (good idea to use Ada for this kind of >stuff... certainly better than C). > >I would like, if some people know, to have some suggestions to get >formal documentations about those parameters. > >I think this may be an interresting subject, not solely for me ;) > >Thanks to all boys and girls around here :) > >Read you soon... > >Yannick