[Patch, Ada] pragma Discard_Names for Restriction_Id

Y.Tomino demoonlit@panathenaia.halfmoon.jp
Sat Nov 11 15:44:00 GMT 2006


Hello.

It is written in s-rident.ads.

> so we can do the instantiation under control of Discard_Names to
remove the tables.

But, The "pragma Discard_Names;" in s-restri.ads doesn't work as
intended. String images of Restriction_Id are included in my binary.
This configuration pragma seems not to work well if it's not at the head
of the file.

I tested this patch on i686-pc-mingw32 with --disable-bootstrap.
(I cannot build trunk without --disable-bootstrap on mingw.)

Ok for mainline?

Index: gcc/ada/s-restri.ads
===================================================================
--- gcc/ada/s-restri.ads	(revision 118692)
+++ gcc/ada/s-restri.ads	(working copy)
@@ -40,11 +40,12 @@
 --  with names discarded, so that we do not have image tables for the
 --  large restriction enumeration types at run time.

+pragma Discard_Names;
+
 with System.Rident;

 package System.Restrictions is
    pragma Preelaborate;
-   pragma Discard_Names;
    package Rident is new System.Rident;

    Run_Time_Restrictions : Rident.Restrictions_Info;



More information about the Gcc-patches mailing list