anchor.diff:                  walkExpr synExpr
                   |> Option.orElse (synMatchClauseList |> List.tryPick (fun (Clause(_, _, e, _, _)) -> walkExpr e))
                   |> Option.orTry (fun () ->
  -                    if List.exists (not << clauseIsCandidateForCodeGen) synMatchClauseList then
  -                        None
  -                    else
  +                    if List.forall clauseIsCandidateForCodeGen synMatchClauseList then
                           match sequencePointInfoForBinding with
                           | SequencePointAtBinding range ->
                               Some { MatchWithRange = range
  
positive.code:         | SynPat.DeprecatedCharRange(_, _, _)
          | SynPat.FromParseError(_, _) -> false
  
          | SynPat.Tuple(innerPatList, _) ->
              innerPatList
              |> trueForAll checkPattern
              
          | SynPat.Record(recordInnerPatList, _) ->
              recordInnerPatList
              |> List.map (fun (_, innerPat) -> innerPat)
              |> trueForAll checkPattern
  
          | SynPat.OptionalVal(_, _) -> true
          | SynPat.Wild(_) -> true
  
negative.code:                                    MatchedExpr = synExpr
                                     Clauses = synMatchClauseList }
                          | _ -> None
                      else
                          None
                  )
  
              | SynExpr.App(_exprAtomicFlag, _isInfix, synExpr1, synExpr2, _range) ->
  