guard package:ghc-lib-parser

Guard Located Statement
Guard Statement
f p { | e1 = e2
| e3 = e4 }
where ds
TcRnNonStdGuards is a warning thrown when a user uses non-standard guards (e.g. patterns in guards) without enabling the PatternGuards extension. More realistically: the user has explicitly disabled PatternGuards, as it is enabled by default with `-XHaskell2010`. Example(s): f | 5 <- 2 + 3 = ... Test cases: renameshould_compilern049
A value bound by a pattern guard must have a fixed runtime representation. Test cases: none.
Arguments to a guard in a monad comprehension must have a fixed runtime representation. Test case: RepPolyMcGuard.
Guards of pattern bindings, e.g., (Just b) | Just _ <- x = e | otherwise = e'
Pattern guard for specified thing