I've committed the obvious patch after confirmation from
the original author that it is correct.

2015-12-04  Steven G. Kargl  <ka...@gcc.gnu.org>

        PR fortran/68684
        * resolve.c (resolve_lock_unlock_event): Fix logic faux pas.

Index: resolve.c
===================================================================
--- resolve.c   (revision 231243)
+++ resolve.c   (working copy)
@@ -8745,7 +8745,7 @@ resolve_lock_unlock_event (gfc_code *cod
              !gfc_is_coindexed (code->expr1))))
     gfc_error ("Lock variable at %L must be a scalar of type LOCK_TYPE",
               &code->expr1->where);
-  else if ((code->op == EXEC_EVENT_POST && code->op == EXEC_EVENT_WAIT)
+  else if ((code->op == EXEC_EVENT_POST || code->op == EXEC_EVENT_WAIT)
           && (code->expr1->ts.type != BT_DERIVED
               || code->expr1->expr_type != EXPR_VARIABLE
               || code->expr1->ts.u.derived->from_intmod
-- 
Steve

Reply via email to