[Lldb-commits] Remove the use of mkstemp, as it's not portable

Greg Clayton gclayton at apple.com
Fri Aug 1 10:26:01 PDT 2014

I was actually thinking of removing this code in Driver.cpp and replacing with native pipes. This would avoid the temp file. I didn't really want to expose the pipe class we made internally. We could use #ifdef's and use pipe() for non windows and _pipe() for windows. Thoughts?

My main objection to adding temp file support to the API is the only thing that really needs it is the Driver and we could just work around this in Driver.cpp by using #ifdef and native pipes.


> On Jul 31, 2014, at 1:46 PM, Zachary Turner <zturner at google.com> wrote:
> Sorry, here's a more easily digestable patch.
> On Thu, Jul 31, 2014 at 1:45 PM, Zachary Turner <zturner at google.com> wrote:
> mkstemp doesn't exist on Windows.  LLVM already has a support function which is the same in spirit as mkstemp.  This patch adds a method to the host layer to create a temporary file, and the implementation of this method on the private side delegates to the corresponding LLVM support function.
> This fixes the build on Windows and should have identical semantics on other platforms, but please verify.
> <mkstemp.diff>

More information about the lldb-commits mailing list