anchor.diff:  
       let makeStream = function
           | FileMetadataReference f -> File.OpenRead f :> Stream
  -        | ImageMetadataReference (p, a) -> new MemoryStream (a) :> Stream
  -        | ProjectMetadataReference (p, a) -> let ms = new MemoryStream () in a ms; ms :> Stream
  +        | ImageMetadataReference (_, a) -> new MemoryStream (a) :> Stream
  +        | ProjectMetadataReference (_, a) -> let ms = new MemoryStream () in a ms; ms :> Stream
   
       let makeByteArray = function
           | FileMetadataReference f -> File.ReadAllBytes f
  -        | ImageMetadataReference (p, a) -> a
  -        | ProjectMetadataReference (p, a) -> use ms = new MemoryStream () in a ms; ms.ToArray ()
  +        | ImageMetadataReference (_, a) -> a
  +        | ProjectMetadataReference (_, a) -> use ms = new MemoryStream () in a ms; ms.ToArray ()
   
       let makeFs refs =
           let defaultFileSystem = Shim.FileSystem
  
positive.code: 
          let withTemp fn = fun () ->
              let path = getTempPath ()
              Directory.CreateDirectory path
              let result = fn path
              Directory.Delete (path, true)
              result
  
negative.code: module Helpers =
      let inline ni () = raise (new System.NotImplementedException ())
  
  [<NoEquality>]
  type internal MetadataReference =
  | FileMetadataReference of string
  | ImageMetadataReference of string * byte array
  