aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGhjuvan Lacambre <lacambre@adacore.com>2022-03-14 09:58:52 +0100
committerPierre-Marie de Rodat <derodat@adacore.com>2022-05-16 08:42:05 +0000
commit9eb55045f8d22919c47b38809afbcad7ad9a38d5 (patch)
tree8bcb47b7f6312bac89633ede04b072d06481b0b9
parentf29e9e88965ade628873182a866bb26830994217 (diff)
downloadgcc-9eb55045f8d22919c47b38809afbcad7ad9a38d5.zip
gcc-9eb55045f8d22919c47b38809afbcad7ad9a38d5.tar.gz
gcc-9eb55045f8d22919c47b38809afbcad7ad9a38d5.tar.bz2
[Ada] Don't crash on ghost packages when emitting CUDA symbols in ALI files
Before this commit, a GNAT compiled with assertions would crash when attempting to emit CUDA symbols in ALI files for spark_mode/ghost packages, whose content is a single null statement. gcc/ada/ * lib-writ.adb (Output_CUDA_Symbols): Check for null packages.
-rw-r--r--gcc/ada/lib-writ.adb4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/ada/lib-writ.adb b/gcc/ada/lib-writ.adb
index 556df9a..b525bba 100644
--- a/gcc/ada/lib-writ.adb
+++ b/gcc/ada/lib-writ.adb
@@ -403,7 +403,9 @@ package body Lib.Writ is
Kernel_Elm : Elmt_Id;
Kernel : Entity_Id;
begin
- if not Enable_CUDA_Expansion then
+ if not Enable_CUDA_Expansion
+ or else Nkind (Unit_Id) = N_Null_Statement
+ then
return;
end if;
Spec_Id := (if Nkind (Unit_Id) = N_Package_Body