inline.adb, [...]: Suppress unmodified in-out parameter warning in some cases This...
authorRobert Dewar <dewar@adacore.com>
Tue, 14 Aug 2007 08:37:08 +0000 (10:37 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Tue, 14 Aug 2007 08:37:08 +0000 (10:37 +0200)
commit939c12d26a67c4e4d42d106d31c8f821b68cb1fb
tree0b0083f9957b2140f9c2d30921874267d00521be
parent835d23b2e08bb08e88163700eac0dc08442b2b0b
inline.adb, [...]: Suppress unmodified in-out parameter warning in some cases This patch is a also...

2007-08-14  Robert Dewar  <dewar@adacore.com>
    Ed Schonberg  <schonberg@adacore.com>

* inline.adb, types.ads, inline.ads, frontend.adb, alloc.ads:
Suppress unmodified in-out parameter warning in some cases
This patch is a also fairly significant change to the way suppressible
checks are handled.

* checks.ads, checks.adb (Install_Null_Excluding_Check): No check
needed for access to concurrent record types generated by the expander.
(Generate_Range_Check): When generating a temporary to capture the
value of a conversion that requires a range check, set the type of the
temporary before rewriting the node, so that the type is always
properly placed for back-end use.
(Apply_Float_Conversion_Check): Handle case where the conversion is
truncating.
(Get_Discriminal): Code reformatting. Climb the scope stack looking
for a protected type in order to examine its discriminants.

From-SVN: r127410
gcc/ada/alloc.ads
gcc/ada/checks.adb
gcc/ada/checks.ads
gcc/ada/frontend.adb
gcc/ada/inline.adb
gcc/ada/inline.ads
gcc/ada/types.ads