aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2020-08-09 11:48:21 +0200
committerPierre-Marie de Rodat <derodat@adacore.com>2020-10-21 03:22:50 -0400
commita219511d1d20775ea418de1b7e60dd90030c8354 (patch)
tree93bada2428095733cdb9b7dd80599a9e12a88f42 /gcc
parent4270e94541bb865334849677b7c887c7eceb8353 (diff)
downloadgcc-a219511d1d20775ea418de1b7e60dd90030c8354.zip
gcc-a219511d1d20775ea418de1b7e60dd90030c8354.tar.gz
gcc-a219511d1d20775ea418de1b7e60dd90030c8354.tar.bz2
[Ada] Work around missing Long_Long_Long_Size entry in .atp file
gcc/ada/ * set_targ.adb (DTN): Fix oversight. (Read_Target_Dependent_Values): Do not error out on missing Long_Long_Long_Size entry and reuse Long_Long_Size for it.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/set_targ.adb13
1 files changed, 10 insertions, 3 deletions
diff --git a/gcc/ada/set_targ.adb b/gcc/ada/set_targ.adb
index c1c83cb..b8578f5 100644
--- a/gcc/ada/set_targ.adb
+++ b/gcc/ada/set_targ.adb
@@ -84,8 +84,8 @@ package body Set_Targ is
S_Float_Size 'Unrestricted_Access,
S_Float_Words_BE 'Unrestricted_Access,
S_Int_Size 'Unrestricted_Access,
- S_Long_Long_Long_Size 'Unrestricted_Access,
S_Long_Double_Size 'Unrestricted_Access,
+ S_Long_Long_Long_Size 'Unrestricted_Access,
S_Long_Long_Size 'Unrestricted_Access,
S_Long_Size 'Unrestricted_Access,
S_Maximum_Alignment 'Unrestricted_Access,
@@ -748,8 +748,15 @@ package body Set_Targ is
for J in DTR'Range loop
if not DTR (J) then
- Fail ("missing entry for " & DTN (J).all & " in file "
- & File_Name);
+ -- Make an exception for Long_Long_Long_Size???
+
+ if DTN (J) = S_Long_Long_Long_Size'Unrestricted_Access then
+ Long_Long_Long_Size := Long_Long_Size;
+
+ else
+ Fail ("missing entry for " & DTN (J).all & " in file "
+ & File_Name);
+ end if;
end if;
end loop;