コード6行目に表題のエラーが出て原因がわかりません。
インデントもしてるし余分な=も入ってないのにエラーになる原因が見つけられません。
ご指導のほどよろしくお願いします。

data T = T {x::Either _ Int, y::Maybe Int}
f = \t -> case t of
  T x y
    Just y
      | x :: Right Int -> x+y
      | x :: Left _ -> x
    Nothing -> 0
    _ -> undefined