utils2.c (gnat_build_constructor): Test the TREE_STATIC flag of elements to compute that of the constructor.
* gcc-interface/utils2.c (gnat_build_constructor): Test the TREE_STATIC flag of elements to compute that of the constructor. From-SVN: r182203
This commit is contained in:
parent
4f96985d58
commit
cce30ea89c
@ -1,3 +1,8 @@
|
||||
2011-12-11 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* gcc-interface/utils2.c (gnat_build_constructor): Test the TREE_STATIC
|
||||
flag of elements to compute that of the constructor.
|
||||
|
||||
2011-12-11 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* gcc-interface/decl.c (gnat_to_gnu_param): Set the restrict qualifier
|
||||
|
@ -1817,7 +1817,7 @@ gnat_build_constructor (tree type, VEC(constructor_elt,gc) *v)
|
||||
FOR_EACH_CONSTRUCTOR_ELT (v, n_elmts, obj, val)
|
||||
{
|
||||
/* The predicate must be in keeping with output_constructor. */
|
||||
if (!TREE_CONSTANT (val)
|
||||
if ((!TREE_CONSTANT (val) && !TREE_STATIC (val))
|
||||
|| (TREE_CODE (type) == RECORD_TYPE
|
||||
&& CONSTRUCTOR_BITFIELD_P (obj)
|
||||
&& !initializer_constant_valid_for_bitfield_p (val))
|
||||
|
@ -1,3 +1,7 @@
|
||||
2011-12-11 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* gnat.dg/specs/elab3.ads: New test.
|
||||
|
||||
2011-12-10 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* gcc.target/powerpc/altivec-perm-1.c: New.
|
||||
|
16
gcc/testsuite/gnat.dg/specs/elab3.ads
Normal file
16
gcc/testsuite/gnat.dg/specs/elab3.ads
Normal file
@ -0,0 +1,16 @@
|
||||
-- { dg-do compile }
|
||||
|
||||
pragma Restrictions(No_Elaboration_Code);
|
||||
|
||||
package Elab3 is
|
||||
|
||||
type T_List is array (Positive range <>) of Integer;
|
||||
type T_List_Access is access constant T_List;
|
||||
|
||||
type R is record
|
||||
A : T_List_Access;
|
||||
end record;
|
||||
|
||||
C : constant R := (A => null);
|
||||
|
||||
end Elab3;
|
Loading…
Reference in New Issue
Block a user