diff options
Diffstat (limited to 'gcc/ada/decl.c')
-rw-r--r-- | gcc/ada/decl.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/gcc/ada/decl.c b/gcc/ada/decl.c index fd82da9..458213e 100644 --- a/gcc/ada/decl.c +++ b/gcc/ada/decl.c @@ -565,12 +565,9 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) && CONTAINS_PLACEHOLDER_P (TYPE_SIZE (gnu_type))) { if (gnu_expr != 0 && kind == E_Constant) - { - gnu_size = TYPE_SIZE (TREE_TYPE (gnu_expr)); - if (CONTAINS_PLACEHOLDER_P (gnu_size)) - gnu_size = build (WITH_RECORD_EXPR, bitsizetype, - gnu_size, gnu_expr); - } + gnu_size + = SUBSTITUTE_PLACEHOLDER_IN_EXPR + (TYPE_SIZE (TREE_TYPE (gnu_expr)), gnu_expr); /* We may have no GNU_EXPR because No_Initialization is set even though there's an Expression. */ |