diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2009-08-20 14:04:30 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2009-08-20 14:04:30 +0000 |
commit | 456976d81d0d5c3d01050d4f6c12b80db61b5d55 (patch) | |
tree | 06e8be604568a4fdad47be340fc9287316228a35 /gcc/ada/gcc-interface/ada-tree.h | |
parent | 197c68cc978ee36fab09445e9f09a5752f2585f1 (diff) | |
download | gcc-456976d81d0d5c3d01050d4f6c12b80db61b5d55.zip gcc-456976d81d0d5c3d01050d4f6c12b80db61b5d55.tar.gz gcc-456976d81d0d5c3d01050d4f6c12b80db61b5d55.tar.bz2 |
ada-tree.h (SET_TYPE_RM_VALUE): Mark the expression as visited.
* gcc-interface/ada-tree.h (SET_TYPE_RM_VALUE): Mark the expression
as visited.
* gcc-interface/misc.c (gnat_get_subrange_bounds): Always return the
bounds.
* gcc-interface/trans.c (add_decl_expr): Do not mark gigi-specific
fields.
(gnat_gimplify_expr) <DECL_EXPR>: New case.
From-SVN: r150963
Diffstat (limited to 'gcc/ada/gcc-interface/ada-tree.h')
-rw-r--r-- | gcc/ada/gcc-interface/ada-tree.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/ada/gcc-interface/ada-tree.h b/gcc/ada/gcc-interface/ada-tree.h index 8983139..18eb416 100644 --- a/gcc/ada/gcc-interface/ada-tree.h +++ b/gcc/ada/gcc-interface/ada-tree.h @@ -208,6 +208,10 @@ do { \ tree tmp = (X); \ if (!TYPE_RM_VALUES (NODE)) \ TYPE_RM_VALUES (NODE) = make_tree_vec (3); \ + /* ??? The field is not visited by the generic \ + code so we need to mark it manually. */ \ + if (!TREE_CONSTANT (tmp)) \ + mark_visited (&tmp); \ TREE_VEC_ELT (TYPE_RM_VALUES (NODE), (N)) = tmp; \ } while (0) |