diff options
author | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-06-27 09:16:45 +0000 |
---|---|---|
committer | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-06-27 09:16:45 +0000 |
commit | deb74db2d98b0e59d053e268412fc6a49f6a7e7f (patch) | |
tree | 20850ce6ad49a6f73566862cf73cc69563654f3c /gcc/testsuite/gnat.dg | |
parent | db04b5aba9a48e6a27761d15f37c7c6ae11656cd (diff) | |
download | gcc-deb74db2d98b0e59d053e268412fc6a49f6a7e7f.tar.gz |
* utils.c (convert) <CONSTRUCTOR>: When converting it to a packable
version of its type, attempt to first convert its elements.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@137173 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/gnat.dg')
-rw-r--r-- | gcc/testsuite/gnat.dg/aggr9.adb | 12 | ||||
-rw-r--r-- | gcc/testsuite/gnat.dg/aggr9.ads | 7 | ||||
-rw-r--r-- | gcc/testsuite/gnat.dg/aggr9_pkg.ads | 17 |
3 files changed, 36 insertions, 0 deletions
diff --git a/gcc/testsuite/gnat.dg/aggr9.adb b/gcc/testsuite/gnat.dg/aggr9.adb new file mode 100644 index 00000000000..70d026fdd28 --- /dev/null +++ b/gcc/testsuite/gnat.dg/aggr9.adb @@ -0,0 +1,12 @@ +-- { dg-do compile } +-- { dg-options "-O" } + +package body Aggr9 is + + procedure Proc (X : R1) is + M : R2 := (F => X); + begin + Send (M); + end; + +end Aggr9; diff --git a/gcc/testsuite/gnat.dg/aggr9.ads b/gcc/testsuite/gnat.dg/aggr9.ads new file mode 100644 index 00000000000..cb5757b64af --- /dev/null +++ b/gcc/testsuite/gnat.dg/aggr9.ads @@ -0,0 +1,7 @@ +with Aggr9_Pkg; use Aggr9_Pkg; + +package Aggr9 is + + procedure Proc (X : R1); + +end Aggr9; diff --git a/gcc/testsuite/gnat.dg/aggr9_pkg.ads b/gcc/testsuite/gnat.dg/aggr9_pkg.ads new file mode 100644 index 00000000000..c7c7b9e10b8 --- /dev/null +++ b/gcc/testsuite/gnat.dg/aggr9_pkg.ads @@ -0,0 +1,17 @@ +package Aggr9_Pkg is + + type Byte is range 0 .. 255; + + type R1 is + record + A,B : Byte; + end record; + + type R2 is + record + F : R1; + end record; + + procedure Send (M : R2); + +end Aggr9_Pkg; |