aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2010-09-10 12:36:03 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2010-09-10 12:36:03 +0200
commitf1ae594e081613f200e549399781c77fe2adfcb4 (patch)
tree264f5ef78379bb0bf6b826c9b10e70672a02dc4d /gcc
parentbe257e995d7fc59dcdbfcdbb8d549a4418d97f3b (diff)
downloadgcc-f1ae594e081613f200e549399781c77fe2adfcb4.zip
gcc-f1ae594e081613f200e549399781c77fe2adfcb4.tar.gz
gcc-f1ae594e081613f200e549399781c77fe2adfcb4.tar.bz2
[multiple changes]
2010-09-10 Eric Botcazou <ebotcazou@adacore.com> * exp_dbug.ads: Mention enhanced encoding for array types. 2010-09-10 Jerome Lambourg <lambourg@adacore.com> * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Size clause are unsupported in VM targets. Display a warning in this case. From-SVN: r164160
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/ChangeLog9
-rw-r--r--gcc/ada/exp_dbug.ads8
-rw-r--r--gcc/ada/sem_ch13.adb10
3 files changed, 23 insertions, 4 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 85f6c68..334e883 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,12 @@
+2010-09-10 Eric Botcazou <ebotcazou@adacore.com>
+
+ * exp_dbug.ads: Mention enhanced encoding for array types.
+
+2010-09-10 Jerome Lambourg <lambourg@adacore.com>
+
+ * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Size clause are
+ unsupported in VM targets. Display a warning in this case.
+
2010-09-10 Ed Schonberg <schonberg@adacore.com>
* sprint.adb (Sprint_Node_Actual, case N_Derived_Type_Definition): Do
diff --git a/gcc/ada/exp_dbug.ads b/gcc/ada/exp_dbug.ads
index 71c9bba..b4cf44b 100644
--- a/gcc/ada/exp_dbug.ads
+++ b/gcc/ada/exp_dbug.ads
@@ -895,10 +895,10 @@ package Exp_Dbug is
-----------------
-- Since there is no way for the debugger to obtain the index subtypes
- -- for an array type, we produce a type that has the name of the
- -- array type followed by "___XA" and is a record whose field names
- -- are the names of the types for the bounds. The types of these
- -- fields is an integer type which is meaningless.
+ -- for an array type, we produce a type that has the name of the array
+ -- type followed by "___XA" and is a record type whose field types are
+ -- the respective types for the bounds (and whose field names are the
+ -- names of these types).
-- To conserve space, we do not produce this type unless one of the
-- index types is either an enumeration type, has a variable upper
diff --git a/gcc/ada/sem_ch13.adb b/gcc/ada/sem_ch13.adb
index 5f067cc..f6d10e4 100644
--- a/gcc/ada/sem_ch13.adb
+++ b/gcc/ada/sem_ch13.adb
@@ -1532,6 +1532,16 @@ package body Sem_Ch13 is
Error_Msg_N
("size cannot be given for unconstrained array", Nam);
+ elsif VM_Target /= No_VM then
+
+ -- Size clauses are ignored for VM targets. Display a warning
+ -- unless we are in GNAT mode, in which case this is useless.
+
+ if not GNAT_Mode then
+ Error_Msg_N
+ ("?size clauses are ignored in this configuration", N);
+ end if;
+
elsif Size /= No_Uint then
if Is_Type (U_Ent) then
Etyp := U_Ent;