re PR ada/78524 (failure of ACATS c41104a at -O0)
authorEric Botcazou <ebotcazou@adacore.com>
Sun, 27 Nov 2016 22:04:13 +0000 (22:04 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Sun, 27 Nov 2016 22:04:13 +0000 (22:04 +0000)
PR ada/78524
* gcc-interface/utils.c (max_size) <tcc_reference>: Add missing
conversion to original type in the PLACEHOLDER_EXPR case.

From-SVN: r242902

gcc/ada/ChangeLog
gcc/ada/gcc-interface/utils.c

index d89b9674556c3441236cf608a99b71ae0087960a..ca438dbf626324dcbf11c660906871fbe87bb490 100644 (file)
@@ -1,3 +1,9 @@
+2016-11-27  Eric Botcazou  <ebotcazou@adacore.com>
+
+       PR ada/78524
+       * gcc-interface/utils.c (max_size) <tcc_reference>: Add missing
+       conversion to original type in the PLACEHOLDER_EXPR case.
+
 2016-11-27  Eric Botcazou  <ebotcazou@adacore.com>
 
        PR ada/78531
index fd6c2029d035529386d930028caf32c20fe366a9..cde17fe3b367f1ce69f676b85ae667df06e5f410 100644 (file)
@@ -3548,7 +3548,9 @@ max_size (tree exp, bool max_p)
        {
          tree val_type = TREE_TYPE (TREE_OPERAND (exp, 1));
          tree val = (max_p ? TYPE_MAX_VALUE (type) : TYPE_MIN_VALUE (type));
-         return max_size (convert (get_base_type (val_type), val), true);
+         return
+           convert (type,
+                    max_size (convert (get_base_type (val_type), val), true));
        }
 
       return exp;