Go to the documentation of this file.
34 std::string SourceFileFullPath;
45 if (RecordedResult.empty()) {
46 if (
auto Envs = findAllChildren<PDBSymbolCompilandEnv>()) {
47 std::string EnvWorkingDir, EnvSrc;
49 while (
auto Env = Envs->getNext()) {
50 std::string Var = Env->getName();
52 EnvWorkingDir = Env->getValue();
56 EnvSrc = Env->getValue();
59 RecordedResult = EnvSrc;
63 if (!EnvWorkingDir.empty() && !EnvSrc.empty()) {
64 auto Len = EnvWorkingDir.length();
65 if (EnvWorkingDir[Len - 1] !=
'/' && EnvWorkingDir[Len - 1] !=
'\\') {
66 std::string
Path = EnvWorkingDir +
"\\" + EnvSrc;
70 SourceFileFullPath =
Path;
76 if (!RecordedResult.empty()) {
78 return RecordedResult;
84 return OneSrcFile->getFileName();
90 auto Details = findOneChild<PDBSymbolCompilandDetails>();
94 while (
auto File = SrcFiles->getNext()) {
95 std::string FileName = File->getFileName();
106 return File->getFileName();
110 return SourceFileFullPath;
StringSwitch & Case(StringLiteral S, T Value)
This is an optimization pass for GlobalISel generic memory operations.
StringRef extension(StringRef path, Style style=Style::native)
Get extension.
virtual std::unique_ptr< IPDBSourceFile > findOneSourceFile(const PDBSymbolCompiland *Compiland, llvm::StringRef Pattern, PDB_NameSearchFlags Flags) const =0
std::string getSourceFileName() const
bool is_absolute(const Twine &path, Style style=Style::native)
Is path absolute?
static void replace(Module &M, GlobalVariable *Old, GlobalVariable *New)
(vector float) vec_cmpeq(*A, *B) C
void dump(PDBSymDumper &Dumper) const override
Dumps the contents of a symbol a raw_ostream.
virtual void dump(const PDBSymbolAnnotation &Symbol)
virtual std::unique_ptr< IPDBEnumSourceFiles > getSourceFilesForCompiland(const PDBSymbolCompiland &Compiland) const =0
virtual std::string getSourceFileName() const =0
const IPDBSession & Session
SourceLanguage
These values correspond to the CV_CFL_LANG enumeration, and are documented here: https://msdn....
IPDBRawSymbol * RawSymbol
std::string getSourceFileFullPath() const
StringRef filename(StringRef path, Style style=Style::native)
Get filename.
A switch()-like statement whose cases are string literals.
std::string str() const
str - Get the contents as an std::string.