anchor.diff:      dict.Add(getMethod <@ byte 1 @>, doNothing)
       dict.Add(getMethod <@ sbyte 1 @>, doNothing)
       dict.Add(getMethod <@ char 1 @>, doNothing)
  -    dict.Add(getMethod <@ decimal 1 @>, emitCall (getMethod <@ System.Convert.ToDecimal(1) @>))
  +    dict.Add(getMethod <@ decimal 1 @>, emitCall (getMethod <@ Convert.ToDecimal(1) @>))
       dict.Add(getMethod <@ float 1 @>, emitOneOpCode OpCodes.Conv_R8)
       dict.Add(getMethod <@ float32 1 @>, emitOneOpCode OpCodes.Conv_R4)
       dict.Add(getMethod <@ int 1 @>, doNothing)
  
positive.code:   let emitTwoOpCodes (opcode1, opcode2) (gen: ILGenerator) = gen.Emit(opcode1); gen.Emit(opcode2)
  
    let emitOpCodeWithInt opcode (value: int) (gen: ILGenerator) = gen.Emit(opcode, value)
    let emitOpCodeWithType opcode (value: System.Type) (gen: ILGenerator) = gen.Emit(opcode, value)
  
    let emitCall mi (gen: ILGenerator) = gen.EmitCall(OpCodes.Call, mi, null)
    let emitPropGet (pi: PropertyInfo) (gen: ILGenerator) = emitCall pi.GetMethod gen
  
    let private (|>>) emit1 emit2 = (fun (gen: ILGenerator) -> emit1 gen; emit2 gen)
  
    let private altEmitterTable1 =
      let dict = Dictionary<MethodInfo, (ILGenerator -> unit)>(identityEqualityComparer)
  
negative.code:                                       |>> emitOneOpCode OpCodes.Conv_Ovf_U1)
      dict.Add(getMethod <@ sbyte "" @>, emitCall (getMethod <@ LanguagePrimitives.ParseInt32("") @>)
                                         |>> emitOneOpCode OpCodes.Conv_Ovf_I1)
      dict.Add(getMethod <@ char "" @>, emitCall (getMethod <@ Char.Parse("") @>))
      dict.Add(getMethod <@ decimal "" @>, emitStrToFloat (getMethod <@ Decimal.Parse("", NumberStyles.None, Unchecked.defaultof<IFormatProvider>) @>))
      dict.Add(getMethod <@ float "" @>, emitStrToFloat (getMethod <@ Double.Parse("", NumberStyles.None, Unchecked.defaultof<IFormatProvider>) @>))
      dict.Add(getMethod <@ float32 "" @>, emitStrToFloat (getMethod <@ Single.Parse("", NumberStyles.None, Unchecked.defaultof<IFormatProvider>) @>))
      dict :> IReadOnlyDictionary<_, _>
  
    open Microsoft.FSharp.Core.Operators.Checked
  