anchor.diff:  
   let sigptrGetZInt32 bytes sigptr = 
       let b0, sigptr = sigptrGetByte bytes sigptr
  -    if b0 <= 0x7Fuy then int b0, sigptr
  +    if b0 <= 0x7Fuy then struct (int b0, sigptr)
       elif b0 <= 0xBFuy then 
           let b0 = b0 &&& 0x7Fuy
           let b1, sigptr = sigptrGetByte bytes sigptr
  -        (int b0 <<< 8) ||| int b1, sigptr
  +        struct ((int b0 <<< 8) ||| int b1, sigptr)
       else 
           let b0 = b0 &&& 0x3Fuy
           let b1, sigptr = sigptrGetByte bytes sigptr
           let b2, sigptr = sigptrGetByte bytes sigptr
           let b3, sigptr = sigptrGetByte bytes sigptr
  -        (int b0 <<< 24) ||| (int b1 <<< 16) ||| (int b2 <<< 8) ||| int b3, sigptr
  +        struct ((int b0 <<< 24) ||| (int b1 <<< 16) ||| (int b2 <<< 8) ||| int b3, sigptr)
            
   let rec sigptrFoldAcc f n (bytes: byte[]) (sigptr: int) i acc = 
       if i < n then 
  
positive.code:         let ccByte, sigptr = sigptrGetByte bytes sigptr
          let generic, cc = byteAsCallConv ccByte
          if generic then failwith "fptr sig may not be generic"
          let numparams, sigptr = sigptrGetZInt32 bytes sigptr
          let retty, sigptr = sigptrGetTy ctxt numtypars bytes sigptr
          let argtys, sigptr = sigptrFold (sigptrGetTy ctxt numtypars) ( numparams) bytes sigptr
          let typ = 
  
negative.code:         let sigptr = 0
          let ccByte, sigptr = sigptrGetByte bytes sigptr
          if ccByte <> e_IMAGE_CEE_CS_CALLCONV_GENERICINST then dprintn ("warning: method inst ILCallingConv was "+string ccByte+" instead of CC_GENERICINST")
          let struct (numgpars, sigptr) = sigptrGetZInt32 bytes sigptr
          let argtys, _sigptr = sigptrFold (sigptrGetTy ctxt numtypars) numgpars bytes sigptr
          argtys
      VarArgMethodData(enclTy, cc, nm, argtys, varargs, retty, minst)
  