diff options
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) |