[PATCH] D36238: Use "foo-12345.o" instead of "foo.o-12345" as temporary file name.

Reid Kleckner via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Aug 3 11:37:25 PDT 2017


rnk added a comment.

I discovered this code in llvm/lib/Support/Windows/Signals.inc which explains why we leak so many temp files on Windows:

  // FIXME: open files cannot be deleted.
  if (FilesToRemove != NULL)
    while (!FilesToRemove->empty()) {
      llvm::sys::fs::remove(FilesToRemove->back());
      FilesToRemove->pop_back();
    }

Output files are pretty much always open, so that FIXME is kind of a joke. The code basically doesn't work at all on Windows. =(


https://reviews.llvm.org/D36238





More information about the cfe-commits mailing list