summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--compilerplugins/clang/plugin.cxx14
-rw-r--r--compilerplugins/clang/plugin.hxx4
-rw-r--r--compilerplugins/clang/pluginhandler.cxx16
-rw-r--r--compilerplugins/clang/pluginhandler.hxx2
4 files changed, 2 insertions, 34 deletions
diff --git a/compilerplugins/clang/plugin.cxx b/compilerplugins/clang/plugin.cxx
index 07f1edecf4c7..56d40e337bf9 100644
--- a/compilerplugins/clang/plugin.cxx
+++ b/compilerplugins/clang/plugin.cxx
@@ -18,8 +18,6 @@
#include <clang/Basic/FileManager.h>
#include <clang/Lex/Lexer.h>
-#include <llvm/Support/Path.h>
-
#include "pluginhandler.hxx"
/*
@@ -653,20 +651,10 @@ bool hasPathnamePrefix(StringRef pathname, StringRef prefix)
[](StringRef p, StringRef a) { return p.startswith(a); });
}
-std::string getAbsolutePath(StringRef path)
-{
- llvm::SmallString<1024> absPath(path);
- llvm::sys::fs::make_absolute(absPath);
- llvm::sys::path::remove_dots(absPath, true);
- return absPath.str().str();
-}
-
bool isSamePathname(StringRef pathname, StringRef other)
{
- std::string absPathname = getAbsolutePath(pathname);
- std::string absOther = getAbsolutePath(other);
return checkPathname(
- absPathname, absOther, [](StringRef p, StringRef a) { return p == a; });
+ pathname, other, [](StringRef p, StringRef a) { return p == a; });
}
} // namespace
diff --git a/compilerplugins/clang/plugin.hxx b/compilerplugins/clang/plugin.hxx
index 95983c00060d..5299e7f2eac3 100644
--- a/compilerplugins/clang/plugin.hxx
+++ b/compilerplugins/clang/plugin.hxx
@@ -80,7 +80,6 @@ protected:
bool isInUnoIncludeFile(const FunctionDecl*) const;
bool isDebugMode() const { return handler.isDebugMode(); }
- bool isLOOLMode() const { return handler.isLOOLMode(); }
static bool isUnitTestMode();
@@ -230,9 +229,6 @@ void normalizeDotDotInFilePath(std::string&);
// prefix may also contain backslashes:
bool hasPathnamePrefix(StringRef pathname, StringRef prefix);
-// get the absolute path for a given path
-std::string getAbsolutePath(StringRef path);
-
// Same as pathname == other, except on Windows, where pathname and other may
// also contain backslashes:
bool isSamePathname(StringRef pathname, StringRef other);
diff --git a/compilerplugins/clang/pluginhandler.cxx b/compilerplugins/clang/pluginhandler.cxx
index 959941fb72a9..3f169972f6a2 100644
--- a/compilerplugins/clang/pluginhandler.cxx
+++ b/compilerplugins/clang/pluginhandler.cxx
@@ -18,7 +18,6 @@
#include <clang/Frontend/CompilerInstance.h>
#include <clang/Frontend/FrontendPluginRegistry.h>
#include <clang/Lex/PPCallbacks.h>
-
#include <stdio.h>
#if defined _WIN32
@@ -117,8 +116,6 @@ void PluginHandler::handleOption( const std::string& option )
unitTestMode = true;
else if (option == "debug")
debugMode = true;
- else if ( option.substr(0, 15) == "lool-base-path=" )
- loolBasePath = option.substr(15);
else
report( DiagnosticsEngine::Fatal, "unknown option %0" ) << option;
}
@@ -196,7 +193,7 @@ bool PluginHandler::checkIgnoreLocation(SourceLocation loc)
if( compiler.getSourceManager().isInSystemHeader( expansionLoc ))
return true;
const char* bufferName = compiler.getSourceManager().getPresumedLoc( expansionLoc ).getFilename();
- if (bufferName == nullptr
+ if (bufferName == NULL
|| hasPathnamePrefix(bufferName, SRCDIR "/external/")
|| isSamePathname(bufferName, SRCDIR "/sdext/source/pdfimport/wrapper/keyword_list") )
// workdir/CustomTarget/sdext/pdfimport/hash.cxx is generated from
@@ -225,11 +222,6 @@ bool PluginHandler::checkIgnoreLocation(SourceLocation loc)
if (hasPathnamePrefix(s, WORKDIR))
return true;
}
- if ( isLOOLMode() ) {
- std::string absPath = getAbsolutePath(bufferName);
- if ( StringRef(absPath).startswith(loolBasePath) )
- return false;
- }
if( hasPathnamePrefix(bufferName, BUILDDIR)
|| hasPathnamePrefix(bufferName, SRCDIR) )
return false; // ok
@@ -305,12 +297,6 @@ void PluginHandler::HandleTranslationUnit( ASTContext& context )
pathWarning = "modified source in build dir : %0";
else if( name.startswith(SRCDIR "/") )
; // ok
- else if ( isLOOLMode() )
- {
- std::string absPath = getAbsolutePath(name);
- if ( !StringRef(absPath).startswith(loolBasePath) )
- bSkip = true;
- }
else
{
pathWarning = "modified source in unknown location, not modifying : %0";
diff --git a/compilerplugins/clang/pluginhandler.hxx b/compilerplugins/clang/pluginhandler.hxx
index 890b0cf53c3d..0b53d7043f00 100644
--- a/compilerplugins/clang/pluginhandler.hxx
+++ b/compilerplugins/clang/pluginhandler.hxx
@@ -55,7 +55,6 @@ public:
CompilerInstance& compiler, SourceLocation loc = SourceLocation());
bool ignoreLocation(SourceLocation loc);
bool isDebugMode() const { return debugMode; }
- bool isLOOLMode() const { return !loolBasePath.empty(); }
static bool isUnitTestMode();
// If we overlap with a previous area we modified, we cannot perform this change
// without corrupting the source
@@ -72,7 +71,6 @@ private:
Rewriter rewriter;
std::string scope;
std::string warningsOnly;
- std::string loolBasePath;
bool warningsAsErrors;
bool debugMode = false;
std::vector<std::pair<char const*, char const*>> mvModifiedRanges;