------- Comment #3 from tkoenig at gcc dot gnu dot org  2008-07-02 12:34 -------
I caused this.

Here's an obvious patch:

Index: iresolve.c
===================================================================
--- iresolve.c  (revision 137255)
+++ iresolve.c  (working copy)
@@ -106,7 +106,7 @@ resolve_mask_arg (gfc_expr *mask)
       /* In the library, we access the mask with a GFC_LOGICAL_1
         argument.  No need to waste memory if we are about to create
         a temporary array.  */
-      if (mask->expr_type == EXPR_OP)
+      if (mask->expr_type == EXPR_OP && mask->ts.kind != 1)
        {
          ts.type = BT_LOGICAL;
          ts.kind = 1;


-- 

tkoenig at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |tkoenig at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2008-07-01 00:51:28         |2008-07-02 12:34:13
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36681

Reply via email to