anchor.diff:          | _ -> UnitTypeExpected (denv, ty, m)
   
       match expr with 
  -    | Some(Expr.Let(_, Expr.Sequential(_, inner, _, _, _), _, _))
  -    | Some(Expr.Sequential(_, inner, _, _, _)) ->
  +    | Expr.Let(_, Expr.Sequential(_, inner, _, _, _), _, _)
  +    | Expr.Sequential(_, inner, _, _, _) ->
           let rec extractNext expr =
               match expr with
               | Expr.Sequential(_, inner, _, _, _) -> extractNext inner
               | _ -> checkExpr expr.Range expr
           extractNext inner
  -    | Some expr -> checkExpr m expr
  -    | _ -> UnitTypeExpected (denv, ty, m)
  -
  -let UnifyUnitType cenv denv m ty exprOpt =
  +    | expr -> checkExpr m expr
  +
  +let UnifyUnitType cenv denv m ty expr =
       if AddCxTypeEqualsTypeUndoIfFailed denv cenv.css m ty cenv.g.unit_ty then 
           true
       else
  
positive.code:             if not (typeEquiv cenv.g cenv.g.bool_ty ty) then 
                  warning (UnitTypeExpected (denv, ty, m)) 
              else
                  warning (ReportImplicitlyIgnoredBoolExpression denv m ty exprOpt)
          false
  
  //-------------------------------------------------------------------------
  
negative.code:                 else TcExprThatCantBeCtorBody cenv overallExprTy envinner tpenv rhsExpr)
  
          if bkind = StandaloneExpression && not cenv.isScript then 
              UnifyUnitType cenv env.DisplayEnv mBinding overallPatTy rhsExprChecked |> ignore<bool>
  
          // Fix up the r.h.s. expression for 'fixed'
          let rhsExprChecked =
  