anchor.diff:                           invokeCode = (invokeCode |> Option.map convCode))
   
           /// When making a cross-targeting type provider, use this method instead of the corresponding ProvidedTypeDefinition constructor from ProvidedTypes
  -        member __.ProvidedTypeDefinition(className, baseType: Type option, ?hideObjectMethods: bool, ?nonNullable: bool, ?isErased: bool) =
  -          let isErased = defaultArg isErased true
  -          let nonNullable = defaultArg nonNullable false
  -          let hideObjectMethods = defaultArg hideObjectMethods false
  -          ProvidedTypeDefinition(className, 
  -                                 baseType |> Option.map convToTgt, 
  -                                 convToTgt, 
  -                                 HideObjectMethods=hideObjectMethods, 
  -                                 NonNullable=nonNullable, 
  -                                 IsErased=isErased)
  +        //member __.ProvidedTypeDefinition(className, baseType: Type option, ?hideObjectMethods: bool, ?nonNullable: bool, ?isErased: bool) =
   
           /// When making a cross-targeting type provider, use this method instead of the corresponding ProvidedTypeDefinition constructor from ProvidedTypes
           member __.ProvidedTypeDefinition(assembly, namespaceName, className, baseType: Type option, ?hideObjectMethods: bool, ?nonNullable: bool, ?isErased: bool) =
  
positive.code:     //   - Likewise, some operations in these quotation values like "expr.Type" may be a bit fragile, possibly returning non cross-targeted types in
      //     the result. However those operations are not used by the F# compiler.
      [<AutoOpen>]
      module internal UncheckedQuotations =
  
          let qTy = typeof<Microsoft.FSharp.Quotations.Var>.Assembly.GetType("Microsoft.FSharp.Quotations.ExprConstInfo")
          assert (not (isNull qTy))
  
negative.code:         override this.GetCustomAttributes(_inherit) = emptyAttributes
          override this.GetCustomAttributes(_attributeType, _inherit) = emptyAttributes
          override this.IsDefined(_attributeType, _inherit) = false
          override this.MakeArrayType() = TargetTypeSymbol(TargetTypeSymbolKind.SDArray, [| this |]) :> Type
          override this.MakeArrayType arg = TargetTypeSymbol(TargetTypeSymbolKind.Array arg, [| this |]) :> Type
          override this.MakePointerType() = TargetTypeSymbol(TargetTypeSymbolKind.Pointer, [| this |]) :> Type
          override this.MakeByRefType() = TargetTypeSymbol(TargetTypeSymbolKind.ByRef, [| this |]) :> Type
  
          override this.ToString() = this.FullName
  
      and TargetMethodSymbol(gmd: MethodInfo, gargs: Type[]) =
          inherit MethodInfo()
          let dty = gmd.DeclaringType
          let dinst = (if dty.IsGenericType then dty.GetGenericArguments() else [| |])
  