guard package:ghc
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