The Ada status on tuples is now that you can build it (on i686 at least)
but gnatmake is miscompiled (or rather, the global initializer stuff
doesn't work - all the ___elabs are missing, as you can see in
for example gnat.dg/renaming3.adb failing if you just use gnat1 from
tuples in a trunk tree).
You need the patch below to allow the gnat/rts build to succeed, but
I'm lost with the above now - this is failures at -O0 after all - so
I expect some help from you Ada guys here.
Thanks,
Richard.
2008-07-20 Richard Guenther <[EMAIL PROTECTED]>
* gimple.c (gimple_has_side_effects): Disable asserts.
(gimple_rhs_has_side_effects): Likewise.
Index: gcc/gimple.c
===================================================================
*** gcc/gimple.c (revision 138006)
--- gcc/gimple.c (working copy)
*************** gimple_has_side_effects (const_gimple s)
*** 2318,2324 ****
for (i = 0; i < gimple_num_ops (s); i++)
if (TREE_SIDE_EFFECTS (gimple_op (s, i)))
{
! gcc_assert (gimple_has_volatile_ops (s));
return true;
}
}
--- 2318,2326 ----
for (i = 0; i < gimple_num_ops (s); i++)
if (TREE_SIDE_EFFECTS (gimple_op (s, i)))
{
! /* FIXME tuples. This assign is over-eager at least
! for Ada.
! gcc_assert (gimple_has_volatile_ops (s)); */
return true;
}
}
*************** gimple_rhs_has_side_effects (const_gimpl
*** 2367,2373 ****
if (TREE_SIDE_EFFECTS (gimple_op (s, i))
|| TREE_THIS_VOLATILE (gimple_op (s, i)))
{
! gcc_assert (gimple_has_volatile_ops (s));
return true;
}
}
--- 2369,2377 ----
if (TREE_SIDE_EFFECTS (gimple_op (s, i))
|| TREE_THIS_VOLATILE (gimple_op (s, i)))
{
! /* FIXME tuples. This assign is over-eager at least
! for Ada.
! gcc_assert (gimple_has_volatile_ops (s)); */
return true;
}
}
*************** gimple_rhs_has_side_effects (const_gimpl
*** 2378,2384 ****
if (TREE_SIDE_EFFECTS (gimple_op (s, i))
|| TREE_THIS_VOLATILE (gimple_op (s, i)))
{
! gcc_assert (gimple_has_volatile_ops (s));
return true;
}
}
--- 2382,2390 ----
if (TREE_SIDE_EFFECTS (gimple_op (s, i))
|| TREE_THIS_VOLATILE (gimple_op (s, i)))
{
! /* FIXME tuples. This assign is over-eager at least
! for Ada.
! gcc_assert (gimple_has_volatile_ops (s)); */
return true;
}
}