[PATCH] D47662: Move some function declarations out of WindowsSupport.h

Zachary Turner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 1 15:15:35 PDT 2018


zturner created this revision.
zturner added a reviewer: rnk.
Herald added a subscriber: hiraditya.
Herald added a reviewer: jfb.

The idea behind `WindowsSupport.h` is that it's in the source directory so that windows.h'isms don't leak out into the larger LLVM project.  To that end, any symbol that references a symbol from `windows.h` must be in this private header, and not in a public header.

However, we had some useful utility functions in `WindowsSupport.h` which have no dependency on the Windows API, but still only make sense on Windows.  Those functions should be usable outside of Support since there is no risk of causing a windows.h leak.  Although this introduces some `#define` logic in some header files, It's not too egregious and it's better than the alternative of duplicating a ton of code.


https://reviews.llvm.org/D47662

Files:
  llvm/include/llvm/Support/ConvertUTF.h
  llvm/include/llvm/Support/Path.h
  llvm/lib/Support/Windows/DynamicLibrary.inc
  llvm/lib/Support/Windows/Path.inc
  llvm/lib/Support/Windows/Process.inc
  llvm/lib/Support/Windows/Program.inc
  llvm/lib/Support/Windows/Signals.inc
  llvm/lib/Support/Windows/WindowsSupport.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D47662.149569.patch
Type: text/x-patch
Size: 5060 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180601/393764c1/attachment.bin>


More information about the llvm-commits mailing list