summaryrefslogtreecommitdiff
path: root/gcc/ada/exp_imgv.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2005-11-15 13:58:08 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2005-11-15 13:58:08 +0000
commite2d71f89e9d7fe267702afe7d3069e983c42d2f3 (patch)
treeea170e162f96eb8fe97243c3e4b27a39dbf5ccca /gcc/ada/exp_imgv.adb
parent5b91f0e70dfc5d0289f1ca6b140743763b5675a1 (diff)
downloadgcc-e2d71f89e9d7fe267702afe7d3069e983c42d2f3.tar.gz
2005-11-14 Robert Dewar <dewar@adacore.com>
* exp_fixd.adb: Use Universal_Real instead of Long_Long_Float when we need a high precision float type for the generated code (prevents gratuitous Vax_Float stuff when pragma Float_Representation (Vax_Float) used). * exp_imgv.adb: Use Universal_Real instead of Long_Long_Float when we need a high precision float type for the generated code (prevents gratuitous Vax_Float stuff when pragma Float_Representation (Vax_Float) used). (Expand_Width_Attribute): In configurable run-time, the attribute is not allowed on non-static enumeration subtypes. Force a load error to emit the correct diagnostic. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@106975 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/exp_imgv.adb')
-rw-r--r--gcc/ada/exp_imgv.adb18
1 files changed, 17 insertions, 1 deletions
diff --git a/gcc/ada/exp_imgv.adb b/gcc/ada/exp_imgv.adb
index 6e25788cfd5..1fdbced6814 100644
--- a/gcc/ada/exp_imgv.adb
+++ b/gcc/ada/exp_imgv.adb
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
--- Copyright (C) 2001-2005 Free Software Foundation, Inc. --
+-- Copyright (C) 2001-2005, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@@ -831,6 +831,22 @@ package body Exp_Imgv is
else
pragma Assert (Is_Enumeration_Type (Rtyp));
+ if Discard_Names (Rtyp) then
+
+ -- This is a configurable run-time, or else a restriction is in
+ -- effect. In either case the attribute cannot be supported. Force
+ -- a load error from Rtsfind to generate an appropriate message,
+ -- as is done with other ZFP violations.
+
+ declare
+ pragma Warnings (Off); -- since Discard is unreferenced
+ Discard : constant Entity_Id := RTE (RE_Null);
+ pragma Warnings (On);
+ begin
+ return;
+ end;
+ end if;
+
Ttyp := Component_Type (Etype (Lit_Indexes (Rtyp)));
case Attr is