anchor.diff:  
   [<CompilationRepresentation(CompilationRepresentationFlags.ModuleSuffix)>]
   module MemoryManager =
  -    
       let createHGlobal() = new MemoryManager(16, Marshal.AllocHGlobal, fun ptr _ -> Marshal.FreeHGlobal ptr)
       let createCoTaskMem() = new MemoryManager(16, Marshal.AllocCoTaskMem, fun ptr _ -> Marshal.FreeCoTaskMem ptr)
       let createExecutable() = new MemoryManager(16, ExecutableMemory.alloc, ExecutableMemory.free)
  +
  +    let private nopConfig = { malloc = (fun _ -> 0n); mfree = (fun _ _ -> ()); mcopy = (fun _ _ _ -> ()) }
  +    let createNop() = new MemoryManager(16, nopConfig)
   
       let inline alloc (size : int) (m : MemoryManager) =
           m.Alloc size
  
positive.code:         let oldCapacity = capacity
          let newCapacity = Fun.NextPowerOfTwo(capacity + additional)
          writePointer (fun () ->
              let n = malloc newCapacity
              Marshal.Copy(ptr, n, oldCapacity)
  
              mfree ptr capacity
              ptr <- n
              capacity <- newCapacity
          )
  
negative.code: 
      member x.Dispose() =
          if ptr <> 0n then
              config.mfree ptr capacity
              ptr <- 0n
              capacity <- 0
              allocated <- 0
  