summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gnat.dg
diff options
context:
space:
mode:
authorebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>2011-01-04 22:44:04 +0000
committerebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>2011-01-04 22:44:04 +0000
commit8ce094c39337a291715844cb2c3626e93060717c (patch)
treed3f331d5e4da342751a22707e4ec2414cebc9f72 /gcc/testsuite/gnat.dg
parentd0313b854def28778ffcd83c9109c612019bca09 (diff)
downloadgcc-8ce094c39337a291715844cb2c3626e93060717c.tar.gz
* dwarf2out.c (rtl_for_decl_init): Strip no-op conversions off the
initializer. Skip view conversions from aggregate types. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168488 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/gnat.dg')
-rw-r--r--gcc/testsuite/gnat.dg/unchecked_convert8.adb34
-rw-r--r--gcc/testsuite/gnat.dg/unchecked_convert8.ads5
2 files changed, 39 insertions, 0 deletions
diff --git a/gcc/testsuite/gnat.dg/unchecked_convert8.adb b/gcc/testsuite/gnat.dg/unchecked_convert8.adb
new file mode 100644
index 00000000000..0b8f8d12d20
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/unchecked_convert8.adb
@@ -0,0 +1,34 @@
+-- { dg-do compile }
+-- { dg-options "-g -O" }
+
+with Ada.Unchecked_Conversion;
+
+package body Unchecked_Convert8 is
+
+ type T1 is range 0 .. 255;
+
+ type T2 is
+ record
+ A : T1;
+ B : T1;
+ end record;
+
+ for T2 use
+ record
+ A at 0 range 0 .. 7;
+ B at 1 range 0 .. 7;
+ end record;
+
+ for T2'Size use 16;
+
+ type T3 is range 0 .. (2**16 - 1);
+ for T3'Size use 16;
+
+ function T2_TO_T3 is
+ new Ada.Unchecked_Conversion (Source => T2, Target => T3);
+
+ C : constant T3 := T2_TO_T3 (S => (A => 0, B => 0));
+
+ procedure Dummy is begin null; end;
+
+end Unchecked_Convert8;
diff --git a/gcc/testsuite/gnat.dg/unchecked_convert8.ads b/gcc/testsuite/gnat.dg/unchecked_convert8.ads
new file mode 100644
index 00000000000..3a2857ccb09
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/unchecked_convert8.ads
@@ -0,0 +1,5 @@
+package Unchecked_Convert8 is
+
+ procedure Dummy;
+
+end Unchecked_Convert8;