anchor.diff:                  | None -> null
                   | Some md -> gtd.MakeMethodInfo (this, md) 
   
  -            | _ -> notRequired this "ContextTypeSymbol: GetMethodImpl" this.Name
  +            | _ -> notRequired this "GetMethodImpl" this.Name
   
           override this.GetConstructorImpl(_bindingAttr, _binderBinder, _callConvention, types, _modifiers) =
               match kind with
  
positive.code:             loop expr
      #endif
  
          member __.TranslateExpression q = transExpr q
  
          member __.TranslateQuotationToCode qexprf (paramNames: string[]) (argExprs: Expr[]) =
              // Use the real variable names instead of indices, to improve output of Debug.fs
  
negative.code:             | Sequential(e',vexpr') ->
                  (* let v = (e'; vexpr') in bexpr => e'; let v = vexpr' in bexpr *)
                  Expr.Sequential(e', transLetOfByref v vexpr' bexpr)
                  |> simplifyExpr
              | IfThenElse(c,b1,b2) ->
                  (* let v = if c then b1 else b2 in bexpr => if c then let v = b1 in bexpr else let v = b2 in bexpr *)
                  //
                  // Note, this duplicates "bexpr"
                  Expr.IfThenElseUnchecked(c, transLetOfByref v b1 bexpr, transLetOfByref v b2 bexpr)
                  |> simplifyExpr
              | Var _ ->
                  (* let v = v1 in bexpr => bexpr[v/v1] *)
                  bexpr.Substitute(fun v' -> if v = v' then Some vexpr else None)
                  |> simplifyExpr
              | _ ->
                  failwith (sprintf "Unexpected byref binding: %A = %A" v vexpr)
  
  