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;
          }
      }

Reply via email to