anchor.diff:  #endif
   
   let signerSignatureSize pk = 
  +#if MONO
  +  if (pk:byte[]).Length > 32 then pk.Length - 32 else 128
  +#else
     let mutable pSize =  0u
   #if FX_ATLEAST_40
     let iclrSN = getICLRStrongName()
  
positive.code:   check "signerSignatureSize" (Marshal.GetLastWin32Error())
  #endif
    (int)pSize
  
  let signerSignFileWithKeyPair fileName kp = 
    let mutable pcb = 0u
    let mutable ppb = (nativeint)0
    let mutable ok = false
  
negative.code:       // Marshal.GetComInterfaceForObject adds an extra ref for importerPtr
        if IntPtr.Zero <> importerPtr then
          Marshal.Release(importerPtr) |> ignore
  #endif
  
  // The symbol reader's finalize method will clean up any unmanaged resources.
  // If file locks persist, we may want to manually invoke finalize
  