diff --git a/utils/genprimopcode/Syntax.hs b/utils/genprimopcode/Syntax.hs
index 64e7875a40113f37ee646e54da968ab583e7af06..809467020fa331698cff436c1aed82c3a97a0bdc 100644
--- a/utils/genprimopcode/Syntax.hs
+++ b/utils/genprimopcode/Syntax.hs
@@ -109,8 +109,8 @@ sane_ty Compare (TyF t1 (TyF t2 td))
    | t1 == t2 && td == TyApp "Bool" []  = True
 sane_ty Monadic (TyF t1 td) 
    | t1 == td  = True
-sane_ty Dyadic (TyF t1 (TyF t2 _))
-   | t1 == t2 && t2 == t2  = True
+sane_ty Dyadic (TyF t1 (TyF t2 td))
+   | t1 == td && t2 == td  = True
 sane_ty GenPrimOp _
    = True
 sane_ty _ _