diff options
Diffstat (limited to 'include/clang/Lex')
-rw-r--r-- | include/clang/Lex/HeaderMap.h | 7 | ||||
-rw-r--r-- | include/clang/Lex/HeaderSearch.h | 5 | ||||
-rw-r--r-- | include/clang/Lex/PTHManager.h | 4 | ||||
-rw-r--r-- | include/clang/Lex/Preprocessor.h | 3 |
4 files changed, 15 insertions, 4 deletions
diff --git a/include/clang/Lex/HeaderMap.h b/include/clang/Lex/HeaderMap.h index 9837e29653..4f17ae3ec3 100644 --- a/include/clang/Lex/HeaderMap.h +++ b/include/clang/Lex/HeaderMap.h @@ -21,6 +21,7 @@ namespace llvm { namespace clang { class FileEntry; class FileManager; + class FileSystemOptions; struct HMapBucket; struct HMapHeader; @@ -43,11 +44,13 @@ public: /// HeaderMap::Create - This attempts to load the specified file as a header /// map. If it doesn't look like a HeaderMap, it gives up and returns null. - static const HeaderMap *Create(const FileEntry *FE); + static const HeaderMap *Create(const FileEntry *FE, FileManager &FM, + const FileSystemOptions &FSOpts); /// LookupFile - Check to see if the specified relative filename is located in /// this HeaderMap. If so, open it and return its FileEntry. - const FileEntry *LookupFile(llvm::StringRef Filename, FileManager &FM) const; + const FileEntry *LookupFile(llvm::StringRef Filename, FileManager &FM, + const FileSystemOptions &FileSystemOpts) const; /// getFileName - Return the filename of the headermap. const char *getFileName() const; diff --git a/include/clang/Lex/HeaderSearch.h b/include/clang/Lex/HeaderSearch.h index 80b38dee06..7d467a5680 100644 --- a/include/clang/Lex/HeaderSearch.h +++ b/include/clang/Lex/HeaderSearch.h @@ -23,6 +23,7 @@ namespace clang { class ExternalIdentifierLookup; class FileEntry; class FileManager; +class FileSystemOptions; class IdentifierInfo; /// HeaderFileInfo - The preprocessor keeps track of this information for each @@ -71,6 +72,7 @@ struct HeaderFileInfo { /// file referenced by a #include or #include_next, (sub-)framework lookup, etc. class HeaderSearch { FileManager &FileMgr; + const FileSystemOptions &FileSystemOpts; /// #include search path information. Requests for #include "x" search the /// directory of the #including file first, then each directory in SearchDirs @@ -118,10 +120,11 @@ class HeaderSearch { explicit HeaderSearch(const HeaderSearch&); void operator=(const HeaderSearch&); public: - HeaderSearch(FileManager &FM); + HeaderSearch(FileManager &FM, const FileSystemOptions &FSOpts); ~HeaderSearch(); FileManager &getFileMgr() const { return FileMgr; } + const FileSystemOptions &getFileSystemOpts() const { return FileSystemOpts; } /// SetSearchPaths - Interface for setting the file search paths. /// diff --git a/include/clang/Lex/PTHManager.h b/include/clang/Lex/PTHManager.h index 5e8a4f144c..a3787e3ffe 100644 --- a/include/clang/Lex/PTHManager.h +++ b/include/clang/Lex/PTHManager.h @@ -119,7 +119,9 @@ public: /// Create - This method creates PTHManager objects. The 'file' argument /// is the name of the PTH file. This method returns NULL upon failure. - static PTHManager *Create(const std::string& file, Diagnostic &Diags); + static PTHManager *Create(const std::string& file, FileManager &FileMgr, + const FileSystemOptions &FSOpts, + Diagnostic &Diags); void setPreprocessor(Preprocessor *pp) { PP = pp; } diff --git a/include/clang/Lex/Preprocessor.h b/include/clang/Lex/Preprocessor.h index 7b138884e0..b45f47bf11 100644 --- a/include/clang/Lex/Preprocessor.h +++ b/include/clang/Lex/Preprocessor.h @@ -35,6 +35,7 @@ namespace clang { class SourceManager; class ExternalPreprocessorSource; class FileManager; +class FileSystemOptions; class FileEntry; class HeaderSearch; class PragmaNamespace; @@ -57,6 +58,7 @@ class Preprocessor { LangOptions Features; const TargetInfo &Target; FileManager &FileMgr; + const FileSystemOptions &FileSystemOpts; SourceManager &SourceMgr; ScratchBuffer *ScratchBuf; HeaderSearch &HeaderInfo; @@ -279,6 +281,7 @@ public: const LangOptions &getLangOptions() const { return Features; } const TargetInfo &getTargetInfo() const { return Target; } FileManager &getFileManager() const { return FileMgr; } + const FileSystemOptions &getFileSystemOpts() const { return FileSystemOpts; } SourceManager &getSourceManager() const { return SourceMgr; } HeaderSearch &getHeaderSearchInfo() const { return HeaderInfo; } |