From 3f85f9ee6d0db6e50d6606e744df7e1f87aa037c Mon Sep 17 00:00:00 2001 From: Kristina Brooks Date: Fri, 21 Sep 2018 01:53:51 +0000 Subject: [PATCH] [Docs] [Support] Correct a missed reference and use up to date .inc examples. In my original diff I missed #include "llvm/System/Thing.h" and forgot to update a reference to .inc files a few lines down. This patch corrects these things as they were missed in revision 342500. llvm-svn: 342705 --- docs/SupportLibrary.rst | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/docs/SupportLibrary.rst b/docs/SupportLibrary.rst index ef998cef600..9e5e091cc33 100644 --- a/docs/SupportLibrary.rst +++ b/docs/SupportLibrary.rst @@ -58,10 +58,11 @@ Don't Expose System Headers --------------------------- The Support Library must shield LLVM from **all** system headers. To obtain -system level functionality, LLVM source must ``#include "llvm/System/Thing.h"`` -and nothing else. This means that ``Thing.h`` cannot expose any system header -files. This protects LLVM from accidentally using system specific functionality -and only allows it via the ``lib/Support`` interface. +system level functionality, LLVM source must +``#include "llvm/Support/Thing.h"`` and nothing else. This means that +``Thing.h`` cannot expose any system header files. This protects LLVM from +accidentally using system specific functionality and only allows it via +the ``lib/Support`` interface. Use Standard C Headers ---------------------- @@ -213,20 +214,20 @@ the ``LLVM_ON_UNIX`` and ``_WIN32`` ``#defines``. Each source file in ``lib/Support``, after implementing the generic (operating system independent) functionality needs to include the correct implementation using a set of ``#if defined(LLVM_ON_XYZ)`` directives. For example, if we had -``lib/Support/File.cpp``, we'd expect to see in that file: +``lib/Support/Path.cpp``, we'd expect to see in that file: .. code-block:: c++ #if defined(LLVM_ON_UNIX) - #include "Unix/File.inc" + #include "Unix/Path.inc" #endif #if defined(_WIN32) - #include "Windows/File.inc" + #include "Windows/Path.inc" #endif -The implementation in ``lib/Support/Unix/File.cpp`` should handle all Unix -variants. The implementation in ``lib/Support/Windows/File.cpp`` should handle -all Windows variants. What this does is quickly differentiate the basic class +The implementation in ``lib/Support/Unix/Path.inc`` should handle all Unix +variants. The implementation in ``lib/Support/Windows/Path.inc`` should handle +all Windows variants. What this does is quickly inc the basic class of operating system that will provide the implementation. The specific details for a given platform must still be determined through the use of ``#ifdef``.