[Libreoffice-commits] core.git: compilerplugins/clang include/LibreOfficeKit
Stephan Bergmann
sbergman at redhat.com
Tue Nov 10 02:08:55 PST 2015
compilerplugins/clang/store/nullptr.cxx | 9 +++++++++
include/LibreOfficeKit/LibreOfficeKit.hxx | 20 ++++++++++----------
2 files changed, 19 insertions(+), 10 deletions(-)
New commits:
commit 1cd6e2e08eba3bc55fbf6dda3cd3d19a5d95f798
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Tue Nov 10 11:08:30 2015 +0100
Keep LibreOfficeKit.hxx compatible with C++03
Change-Id: Ic2f123c9b341dbb421b766c3bba1fc56c1bfb41d
diff --git a/compilerplugins/clang/store/nullptr.cxx b/compilerplugins/clang/store/nullptr.cxx
index 528bb6a..83812d0 100644
--- a/compilerplugins/clang/store/nullptr.cxx
+++ b/compilerplugins/clang/store/nullptr.cxx
@@ -42,6 +42,8 @@ public:
bool VisitImplicitCastExpr(CastExpr const * expr);
private:
+ bool isInLokIncludeFile(SourceLocation spellingLocation) const;
+
bool isFromCIncludeFile(SourceLocation spellingLocation) const;
bool isMacroBodyExpansion(SourceLocation location) const;
@@ -134,6 +136,8 @@ bool Nullptr::VisitImplicitCastExpr(CastExpr const * expr) {
((!compiler.getLangOpts().CPlusPlus
|| isInUnoIncludeFile(
compiler.getSourceManager().getSpellingLoc(loc))
+ || isInLokIncludeFile(
+ compiler.getSourceManager().getSpellingLoc(loc))
|| isFromCIncludeFile(
compiler.getSourceManager().getSpellingLoc(loc)))
? "NULL" : "nullptr"));
@@ -143,6 +147,11 @@ bool Nullptr::VisitImplicitCastExpr(CastExpr const * expr) {
return true;
}
+bool Nullptr::isInLokIncludeFile(SourceLocation spellingLocation) const {
+ return compiler.getSourceManager().getFilename(spellingLocation)
+ .startswith(SRCDIR "/include/LibreOfficeKit/");
+}
+
bool Nullptr::isFromCIncludeFile(SourceLocation spellingLocation) const {
return !compat::isInMainFile(compiler.getSourceManager(), spellingLocation)
&& (StringRef(
diff --git a/include/LibreOfficeKit/LibreOfficeKit.hxx b/include/LibreOfficeKit/LibreOfficeKit.hxx
index f506bb4..303f397 100644
--- a/include/LibreOfficeKit/LibreOfficeKit.hxx
+++ b/include/LibreOfficeKit/LibreOfficeKit.hxx
@@ -47,7 +47,7 @@ public:
* @param pFormat the format to use while exporting, when omitted, then deducted from pURL's extension
* @param pFilterOptions options for the export filter, e.g. SkipImages.
*/
- inline bool saveAs(const char* pUrl, const char* pFormat = nullptr, const char* pFilterOptions = nullptr)
+ inline bool saveAs(const char* pUrl, const char* pFormat = NULL, const char* pFilterOptions = NULL)
{
return mpDoc->pClass->saveAs(mpDoc, pUrl, pFormat, pFilterOptions) != 0;
}
@@ -220,7 +220,7 @@ public:
* @param pCommand uno command to be posted to the document, like ".uno:Bold"
* @param pArguments arguments of the uno command.
*/
- inline void postUnoCommand(const char* pCommand, const char* pArguments = nullptr, bool bNotifyWhenFinished = false)
+ inline void postUnoCommand(const char* pCommand, const char* pArguments = NULL, bool bNotifyWhenFinished = false)
{
mpDoc->pClass->postUnoCommand(mpDoc, pCommand, pArguments, bNotifyWhenFinished);
}
@@ -243,7 +243,7 @@ public:
* @param pMimeType suggests the return format, for example text/plain;charset=utf-8.
* @param pUsedMimeType output parameter to inform about the determined format (suggested one or plain text).
*/
- inline char* getTextSelection(const char* pMimeType, char** pUsedMimeType = nullptr)
+ inline char* getTextSelection(const char* pMimeType, char** pUsedMimeType = NULL)
{
return mpDoc->pClass->getTextSelection(mpDoc, pMimeType, pUsedMimeType);
}
@@ -361,17 +361,17 @@ public:
* @param pUrl the URL of the document to load
* @param pFilterOptions options for the import filter, e.g. SkipImages.
*/
- inline Document* documentLoad(const char* pUrl, const char* pFilterOptions = nullptr)
+ inline Document* documentLoad(const char* pUrl, const char* pFilterOptions = NULL)
{
- LibreOfficeKitDocument* pDoc = nullptr;
+ LibreOfficeKitDocument* pDoc = NULL;
if (LIBREOFFICEKIT_HAS(mpThis, documentLoadWithOptions))
pDoc = mpThis->pClass->documentLoadWithOptions(mpThis, pUrl, pFilterOptions);
else
pDoc = mpThis->pClass->documentLoad(mpThis, pUrl);
- if (pDoc == nullptr)
- return nullptr;
+ if (pDoc == NULL)
+ return NULL;
return new Document(pDoc);
}
@@ -405,11 +405,11 @@ public:
};
/// Factory method to create a lok::Office instance.
-inline Office* lok_cpp_init(const char* pInstallPath, const char* pUserProfilePath = nullptr)
+inline Office* lok_cpp_init(const char* pInstallPath, const char* pUserProfilePath = NULL)
{
LibreOfficeKit* pThis = lok_init_2(pInstallPath, pUserProfilePath);
- if (pThis == nullptr || pThis->pClass->nSize == 0)
- return nullptr;
+ if (pThis == NULL || pThis->pClass->nSize == 0)
+ return NULL;
return new ::lok::Office(pThis);
}
More information about the Libreoffice-commits
mailing list