]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
* convert.c (convert): Fold BOOLEAN_TYPE types to the proper variant.
authorSteven Bosscher <steven@gcc.gnu.org>
Sat, 10 Mar 2012 13:42:46 +0000 (13:42 +0000)
committerSteven Bosscher <steven@gcc.gnu.org>
Sat, 10 Mar 2012 13:42:46 +0000 (13:42 +0000)
From-SVN: r185174

gcc/fortran/ChangeLog
gcc/fortran/convert.c

index 1683a10cdda973db0846eaf82d6b8eccb501adbf..2da6551b608b74f337ba41ddbaa57b3a0aea0d20 100644 (file)
@@ -1,3 +1,7 @@
+2012-03-10  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * convert.c (convert): Fold BOOLEAN_TYPE types to the proper variant.
+
 2012-03-09  Steven Bosscher  <steven@gcc.gnu.org>
 
        * Make-lang.in (convert.o): Depend on convert.h.
index 52476adbb52aaf6811fdaa50c0cf89e76fe7a067..639f6c4864da3c9e587abe152f8be4747c04d96a 100644 (file)
@@ -95,7 +95,8 @@ convert (tree type, tree expr)
   if (code == VOID_TYPE)
     return fold_build1_loc (input_location, CONVERT_EXPR, type, e);
   if (code == BOOLEAN_TYPE)
-    return truthvalue_conversion (e);
+    return fold_build1_loc (input_location, NOP_EXPR, type,
+                           truthvalue_conversion (e));
   if (code == INTEGER_TYPE)
     return fold (convert_to_integer (type, e));
   if (code == POINTER_TYPE || code == REFERENCE_TYPE)