aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/gcc-interface/decl.c
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2012-02-17 15:26:20 +0100
committerArnaud Charlet <charlet@gcc.gnu.org>2012-02-17 15:26:20 +0100
commitf45ccc7c0dd88d2526422ae6fe4cafa368adb931 (patch)
tree9f4f2af6e3113b2ef899126881507ca2e11f8c19 /gcc/ada/gcc-interface/decl.c
parentacf49e88aaf315ea29c1b96950a91bffd7e7ea3d (diff)
downloadgcc-f45ccc7c0dd88d2526422ae6fe4cafa368adb931.zip
gcc-f45ccc7c0dd88d2526422ae6fe4cafa368adb931.tar.gz
gcc-f45ccc7c0dd88d2526422ae6fe4cafa368adb931.tar.bz2
[multiple changes]
2012-02-17 Ed Schonberg <schonberg@adacore.com> * exp_ch6.adb (Legal_Copy): If layout is not determined in the front-end, do not emit error message when by-reference actual is potentially unaligned. * gcc-interface/decl.c (gnat_to_gnu_field): Better error message for illegal representation clause on tagged or aliased component, or on by-reference type with forced alignment. 2012-02-17 Nicolas Roche <roche@adacore.com> * gcc-interface/Makefile.in: Ensure FORCE_DEBUG_ADAFLAGS variables is propagated by gnatlib-sjlj and gnatlib-zcx targets. * gcc-interface/Make-lang.in: Update dependencies. 2012-02-17 Thomas Quinot <quinot@adacore.com> * sem_ch12.adb (Analyze_Package_Instantiation): For an instantiation in an RCI library unit, omit the instance body if the RCI library unit is the instance itself (E.2.3(18)), but include the body if the instantiation is within the RCI declaration (12.3(12)). From-SVN: r184343
Diffstat (limited to 'gcc/ada/gcc-interface/decl.c')
-rw-r--r--gcc/ada/gcc-interface/decl.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/gcc/ada/gcc-interface/decl.c b/gcc/ada/gcc-interface/decl.c
index a71c86f..c3c4f99 100644
--- a/gcc/ada/gcc-interface/decl.c
+++ b/gcc/ada/gcc-interface/decl.c
@@ -7032,10 +7032,10 @@ gnat_to_gnu_field (Entity_Id gnat_field, tree gnu_record_type, int packed,
TYPE_ALIGN (gnu_field_type));
else if (Strict_Alignment (gnat_field_type))
- post_error_ne_num
- ("position of & with aliased or tagged components not multiple of ^ bits",
- First_Bit (Component_Clause (gnat_field)), gnat_field,
- TYPE_ALIGN (gnu_field_type));
+ post_error_ne
+ ("position of & is not compatible with alignment required "
+ "by its components",
+ First_Bit (Component_Clause (gnat_field)), gnat_field);
else
gcc_unreachable ();
@@ -7132,8 +7132,8 @@ gnat_to_gnu_field (Entity_Id gnat_field, tree gnu_record_type, int packed,
return gnu_field;
}
-/* Return true if TYPE is a type with variable size, a padding type with a
- field of variable size or is a record that has a field such a field. */
+/* Return true if TYPE is a type with variable size or a padding type with a
+ field of variable size or a record that has a field with such a type. */
static bool
type_has_variable_size (tree type)