diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2017-04-25 14:56:34 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2017-04-25 14:56:34 +0200 |
commit | a267d8ccb7df8b87c9f8680a32ea4530c86a600e (patch) | |
tree | 740cce6ad93536544617996dd0b2b928b1dab54c /gcc/ada/debug.adb | |
parent | 241f328c235be95a49c25681af0ccd34985560e1 (diff) | |
download | gcc-a267d8ccb7df8b87c9f8680a32ea4530c86a600e.zip gcc-a267d8ccb7df8b87c9f8680a32ea4530c86a600e.tar.gz gcc-a267d8ccb7df8b87c9f8680a32ea4530c86a600e.tar.bz2 |
[multiple changes]
2017-04-25 Hristian Kirtchev <kirtchev@adacore.com>
* exp_ch6.adb, sem_ch13.adb, sem_ch6.adb: Minor reformatting.
2017-04-25 Bob Duff <duff@adacore.com>
* sem_res.adb (Resolve_Actuals): Under -gnatd.q, reset
Is_True_Constant for an array variable that is passed to a
foreign function as an 'in' parameter.
* debug.adb: Document -gnatd.q.
From-SVN: r247218
Diffstat (limited to 'gcc/ada/debug.adb')
-rw-r--r-- | gcc/ada/debug.adb | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/gcc/ada/debug.adb b/gcc/ada/debug.adb index b404ac8..d855fa8 100644 --- a/gcc/ada/debug.adb +++ b/gcc/ada/debug.adb @@ -107,7 +107,7 @@ package body Debug is -- d.n Print source file names -- d.o Conservative elaboration order for indirect calls -- d.p Use original Ada 95 semantics for Bit_Order (disable AI95-0133) - -- d.q + -- d.q Suppress optimizations on imported 'in' -- d.r Enable OK_To_Reorder_Components in non-variant records -- d.s -- d.t Disable static allocation of library level dispatch tables @@ -562,6 +562,13 @@ package body Debug is -- interpretation of component clauses crossing byte boundaries when -- using the non-default bit order (i.e. ignore AI95-0133). + -- d.q If an array variable or constant is not modified in Ada code, and + -- is passed to an 'in' parameter of a foreign-convention subprogram, + -- and that subprogram modifies the array, the Ada compiler normally + -- assumes that the array is not modified. This option suppresses such + -- optimizations. This option should not be used; the correct solution + -- is to declare the parameter 'in out'. + -- d.r Forces the flag OK_To_Reorder_Components to be set in all record -- base types that have no discriminants. @@ -826,8 +833,8 @@ package body Debug is -- prefer specs with no bodies to specs with bodies, and between two -- specs with bodies, prefers the one whose body is closer to being -- able to be elaborated. This is a clear improvement, but we provide - -- this debug flag in case of regressions. Note: -do is even older than - -- -dp. + -- this debug flag in case of regressions. Note: -gnatdo is even older + -- than -gnatdp. -- dp Use old elaboration order preference. The new preference rules -- elaborate all units within a strongly connected component together, |