aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorViljar Indus <indus@adacore.com>2023-11-16 14:51:13 +0200
committerMarc Poulhiès <poulhies@adacore.com>2023-11-30 11:12:48 +0100
commitce5572d4b8b391657f050b783f0a65471cd36ad2 (patch)
tree42e1347fb6bbe946c709fe2ac0c32a0fe855e742
parente5eb84aa8ceebfa42c4fc02876f4902b461f87f3 (diff)
downloadgcc-ce5572d4b8b391657f050b783f0a65471cd36ad2.zip
gcc-ce5572d4b8b391657f050b783f0a65471cd36ad2.tar.gz
gcc-ce5572d4b8b391657f050b783f0a65471cd36ad2.tar.bz2
ada: Ignore defered compile time errors without backend
We defer some compile time warnings and errors until the backend has added the extra information needed. However it is not guaranteed that the backend has run by this point. Avoid checking these errors if the backend has not been activated and no code has been generated. gcc/ada/ * sem_prag.adb (Validate_Compile_Time_Warning_Errors): Avoid checking compile time warnings and errors if backend has not been activated.
-rw-r--r--gcc/ada/sem_prag.adb10
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ada/sem_prag.adb b/gcc/ada/sem_prag.adb
index 02f6f29..bd1d9d3 100644
--- a/gcc/ada/sem_prag.adb
+++ b/gcc/ada/sem_prag.adb
@@ -33972,6 +33972,16 @@ package body Sem_Prag is
-- Start of processing for Validate_Compile_Time_Warning_Errors
begin
+
+ -- These error/warning messages were deferred because they could not be
+ -- evaluated in the front-end and they needed additional information
+ -- from the back-end. There is no reason to run these checks again if
+ -- the back-end was not activated by this point.
+
+ if not Generating_Code then
+ return;
+ end if;
+
Expander_Mode_Save_And_Set (False);
In_Compile_Time_Warning_Or_Error := True;