[COMMITTED] ada: Missing dependency with -gnatc

Marc Poulhiès poulhies@adacore.com
Tue May 16 08:39:35 GMT 2023


From: Arnaud Charlet <charlet@adacore.com>

When using -gnatc, dependencies on preprocessor and config files
were not recorded.

gcc/ada/

	* gnat1drv.adb: Ensure all dependencies are recorded even when not
	generating code.

Tested on x86_64-pc-linux-gnu, committed on master.

---
 gcc/ada/gnat1drv.adb | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/gcc/ada/gnat1drv.adb b/gcc/ada/gnat1drv.adb
index 238618468e1..e74036e506a 100644
--- a/gcc/ada/gnat1drv.adb
+++ b/gcc/ada/gnat1drv.adb
@@ -1396,6 +1396,17 @@ begin
          Back_End_Mode := Skip;
       end if;
 
+      --  Ensure that we properly register a dependency on system.ads, since
+      --  even if we do not semantically depend on this, Targparm has read
+      --  system parameters from the system.ads file.
+
+      Lib.Writ.Ensure_System_Dependency;
+
+      --  Add dependencies, if any, on preprocessing data file and on
+      --  preprocessing definition file(s).
+
+      Prepcomp.Add_Dependencies;
+
       --  At this stage Back_End_Mode is set to indicate if the backend should
       --  be called to generate code. If it is Skip, then code generation has
       --  been turned off, even though code was requested by the original
@@ -1542,17 +1553,6 @@ begin
          return;
       end if;
 
-      --  Ensure that we properly register a dependency on system.ads, since
-      --  even if we do not semantically depend on this, Targparm has read
-      --  system parameters from the system.ads file.
-
-      Lib.Writ.Ensure_System_Dependency;
-
-      --  Add dependencies, if any, on preprocessing data file and on
-      --  preprocessing definition file(s).
-
-      Prepcomp.Add_Dependencies;
-
       if GNATprove_Mode then
 
          --  In GNATprove mode we're writing the ALI much earlier than usual
-- 
2.40.0



More information about the Gcc-patches mailing list