From: ebotcazou Date: Mon, 25 May 2015 21:30:39 +0000 (+0000) Subject: * gcc-interface/utils.c (maybe_pad_type): Do not apply adjustment to X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=108d967d42c9c01098d5dc147311a597a20e4961;p=thirdparty%2Fgcc.git * gcc-interface/utils.c (maybe_pad_type): Do not apply adjustment to original size for elementary types before issuing the size warning. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223657 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 05b1edf7bd6c..f75ecf0a37aa 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,5 +1,15 @@ 2015-05-25 Eric Botcazou + * gcc-interface/utils.c (maybe_pad_type): Do not apply adjustment to + original size for elementary types before issuing the size warning. + +2015-05-25 Eric Botcazou + + * get_targ.adb (C_Get_Float_Words_BE): Adjust import name. + (C_Get_Words_BE): Likewise. + (C_Get_Bytes_BE): Likewise. + (C_Get_Bits_BE): Likewise. + (Width_From_Size): Remove superfluous space. * gcc-interface/targtyps.c (get_float_words_be): Rename into... (get_target_float_words_be): ...this. (get_words_be): Rename into... diff --git a/gcc/ada/gcc-interface/utils.c b/gcc/ada/gcc-interface/utils.c index c20378ab0350..291e82420ab3 100644 --- a/gcc/ada/gcc-interface/utils.c +++ b/gcc/ada/gcc-interface/utils.c @@ -1426,7 +1426,7 @@ built: if (CONTAINS_PLACEHOLDER_P (orig_size)) orig_size = max_size (orig_size, true); - if (align) + if (align && AGGREGATE_TYPE_P (type)) orig_size = round_up (orig_size, align); if (!operand_equal_p (size, orig_size, 0) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 3be8bfcce72f..aeb7308fbeba 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-05-25 Eric Botcazou + + * gnat.dg/warn11.adb: New test. + * gnat.dg/specs/alignment2.ads: Add dg-warning directive. + 2015-05-25 Eric Botcazou * gnat.dg/vfa1_1.adb: New test. diff --git a/gcc/testsuite/gnat.dg/specs/alignment2.ads b/gcc/testsuite/gnat.dg/specs/alignment2.ads index 4adffc6f703d..0b6c14f1b7d4 100644 --- a/gcc/testsuite/gnat.dg/specs/alignment2.ads +++ b/gcc/testsuite/gnat.dg/specs/alignment2.ads @@ -43,7 +43,7 @@ package Alignment2 is -- OK, big size type I3 is new Integer_32; - for I3'Size use 32 * 8; + for I3'Size use 32 * 8; -- { dg-warning "unused" } for I3'Alignment use 32; end Alignment2; diff --git a/gcc/testsuite/gnat.dg/warn11.adb b/gcc/testsuite/gnat.dg/warn11.adb new file mode 100644 index 000000000000..ff24d7c336c3 --- /dev/null +++ b/gcc/testsuite/gnat.dg/warn11.adb @@ -0,0 +1,14 @@ +with Ada.Text_IO; use Ada.Text_IO; + +procedure Warn11 is + + type My_Integer is new Integer range 1 .. 10; + for My_Integer'Size use 65; -- { dg-warning "unused" } + + type My_Integer2 is new Integer range 1 .. 10; + for My_Integer2'Size use 129; -- { dg-warning "unused" } + +begin + Put_Line ("MB'Size is " & Natural'Image (My_Integer'Size)); + Put_Line ("MB'Size is " & Natural'Image (My_Integer2'Size)); +end;