clang 20.0.0git
Functions
InitHeaderSearch.cpp File Reference
#include "clang/Basic/DiagnosticFrontend.h"
#include "clang/Basic/FileManager.h"
#include "clang/Basic/LangOptions.h"
#include "clang/Config/config.h"
#include "clang/Lex/HeaderMap.h"
#include "clang/Lex/HeaderSearch.h"
#include "clang/Lex/HeaderSearchOptions.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/Twine.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/Path.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/TargetParser/Triple.h"
#include <optional>

Go to the source code of this file.

Functions

static bool CanPrefixSysroot (StringRef Path)
 
static unsigned RemoveDuplicates (std::vector< DirectoryLookupInfo > &SearchList, unsigned First, bool Verbose)
 If there are duplicate directory entries in the specified search list, remove the later (dead) ones.
 
static std::vector< DirectoryLookupextractLookups (const std::vector< DirectoryLookupInfo > &Infos)
 Extract DirectoryLookups from DirectoryLookupInfos.
 
static llvm::DenseMap< unsigned, unsignedmapToUserEntries (const std::vector< DirectoryLookupInfo > &Infos)
 Collect the mapping between indices of DirectoryLookups and UserEntries.
 

Function Documentation

◆ CanPrefixSysroot()

static bool CanPrefixSysroot ( StringRef  Path)
static

Definition at line 109 of file InitHeaderSearch.cpp.

References Path.

◆ extractLookups()

static std::vector< DirectoryLookup > extractLookups ( const std::vector< DirectoryLookupInfo > &  Infos)
static

Extract DirectoryLookups from DirectoryLookupInfos.

Definition at line 456 of file InitHeaderSearch.cpp.

◆ mapToUserEntries()

static llvm::DenseMap< unsigned, unsigned > mapToUserEntries ( const std::vector< DirectoryLookupInfo > &  Infos)
static

Collect the mapping between indices of DirectoryLookups and UserEntries.

Definition at line 466 of file InitHeaderSearch.cpp.

References E, and I.

◆ RemoveDuplicates()

static unsigned RemoveDuplicates ( std::vector< DirectoryLookupInfo > &  SearchList,
unsigned  First,
bool  Verbose 
)
static