summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx2
-rw-r--r--compilerplugins/clang/convertlong.cxx142
-rw-r--r--compilerplugins/clang/convertuintptr.cxx106
-rw-r--r--compilerplugins/clang/droplong.cxx190
-rw-r--r--compilerplugins/clang/test/convertlong.cxx41
-rw-r--r--compilerplugins/clang/test/convertuintptr.cxx20
-rw-r--r--compilerplugins/clang/test/droplong.cxx27
-rw-r--r--sax/source/tools/converter.cxx2
-rw-r--r--solenv/CompilerTest_compilerplugins_clang.mk3
-rw-r--r--solenv/clang-format/blacklist2
-rw-r--r--sot/source/sdstor/storage.cxx8
-rw-r--r--sot/source/sdstor/ucbstorage.cxx10
-rw-r--r--svl/source/items/itemset.cxx2
-rw-r--r--svl/source/numbers/zforscan.cxx2
-rw-r--r--tools/source/generic/poly.cxx2
-rw-r--r--tools/source/zcodec/zcodec.cxx2
16 files changed, 199 insertions, 362 deletions
diff --git a/bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx b/bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx
index 038f101a7edf..762d1392b34e 100644
--- a/bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx
@@ -56,7 +56,7 @@ static OUString toUNOname( char const * p )
while (*p != 'E')
{
// read chars count
- long n = (*p++ - '0');
+ int n = (*p++ - '0');
while ('0' <= *p && '9' >= *p)
{
n *= 10;
diff --git a/compilerplugins/clang/convertlong.cxx b/compilerplugins/clang/convertlong.cxx
new file mode 100644
index 000000000000..4d713aeecf2b
--- /dev/null
+++ b/compilerplugins/clang/convertlong.cxx
@@ -0,0 +1,142 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#include <memory>
+#include <cassert>
+#include <string>
+#include <iostream>
+#include <fstream>
+#include <set>
+#include "plugin.hxx"
+#include "check.hxx"
+
+/**
+ plugin to help to when converting code from
+
+ sal_uIntPtr/sal_uLong/sal_Long/long/unsigned long
+
+ to something more precise.
+ */
+namespace
+{
+class ConvertLong : public RecursiveASTVisitor<ConvertLong>, public loplugin::Plugin
+{
+public:
+ explicit ConvertLong(loplugin::InstantiationData const& data)
+ : Plugin(data)
+ {
+ }
+
+ virtual void run() override
+ {
+ std::string fn(compiler.getSourceManager()
+ .getFileEntryForID(compiler.getSourceManager().getMainFileID())
+ ->getName());
+ loplugin::normalizeDotDotInFilePath(fn);
+ // using sal_uIntPtr as in-between type when converting void* to rtl_TextEncoding
+ if (fn == SRCDIR "/sal/osl/unx/thread.cxx")
+ return;
+ // too much magic
+ if (fn == SRCDIR "/sal/rtl/alloc_arena.cxx")
+ return;
+ if (fn == SRCDIR "/sal/rtl/alloc_cache.cxx")
+ return;
+ // TODO not sure what is going on here
+ if (fn == SRCDIR "/tools/source/generic/bigint.cxx")
+ return;
+ TraverseDecl(compiler.getASTContext().getTranslationUnitDecl());
+ }
+
+ bool VisitVarDecl(VarDecl const*);
+ bool TraverseFunctionDecl(FunctionDecl*);
+
+private:
+ bool isInterestingType(QualType qt);
+};
+
+bool ConvertLong::TraverseFunctionDecl(FunctionDecl* functionDecl)
+{
+ // ignore template stuff
+ if (functionDecl->getTemplatedKind() != FunctionDecl::TK_NonTemplate)
+ {
+ return true;
+ }
+ return RecursiveASTVisitor::TraverseFunctionDecl(functionDecl);
+}
+
+bool ConvertLong::VisitVarDecl(VarDecl const* varDecl)
+{
+ if (ignoreLocation(varDecl))
+ return true;
+ StringRef fileName{ compiler.getSourceManager().getFilename(varDecl->getLocation()) };
+ if (loplugin::hasPathnamePrefix(fileName, SRCDIR "/include/tools/bigint.hxx"))
+ return true;
+ if (loplugin::hasPathnamePrefix(fileName, SRCDIR "/include/tools/solar.h"))
+ return true;
+ if (loplugin::hasPathnamePrefix(fileName, SRCDIR "/include/o3tl/string_view.hxx"))
+ return true;
+ if (!varDecl->hasInit())
+ return true;
+ if (isa<IntegerLiteral>(varDecl->getInit()->IgnoreParenImpCasts()))
+ return true;
+ // ignore int x = -1;
+ if (isa<UnaryOperator>(varDecl->getInit()->IgnoreParenImpCasts()))
+ return true;
+ auto lhsType = varDecl->getType();
+ auto rhsType = varDecl->getInit()->IgnoreParenImpCasts()->getType();
+ if (lhsType.getLocalUnqualifiedType() == rhsType)
+ return true;
+ if (!rhsType.getTypePtrOrNull())
+ return true;
+ if (isInterestingType(rhsType))
+ return true;
+ if (!isInterestingType(lhsType))
+ return true;
+ if (rhsType->isFloatingType()) // TODO
+ return true;
+ report(DiagnosticsEngine::Warning, "rather replace type of decl %0 with %1",
+ varDecl->getLocation())
+ << lhsType << rhsType << varDecl->getSourceRange();
+ //lhsType->dump();
+ //varDecl->dump();
+ return true;
+}
+
+bool ConvertLong::isInterestingType(QualType qt)
+{
+ auto tc = loplugin::TypeCheck(qt);
+ if (tc.Typedef())
+ {
+ TypedefType const* typedefType = qt->getAs<TypedefType>();
+ auto name = typedefType->getDecl()->getName();
+ if (name == "sal_uLong")
+ return true;
+ // because this is a typedef to long on 64-bit Linux
+ if (name == "sal_Int64" || name == "sal_uInt64" || name.find("size_t") != StringRef::npos)
+ return false;
+ }
+ if (isa<AutoType>(qt.getTypePtr()))
+ return false;
+ auto unqual = qt.getUnqualifiedType();
+ if (unqual->isSpecificBuiltinType(BuiltinType::Kind::Long)
+ || unqual->isSpecificBuiltinType(BuiltinType::Kind::ULong))
+ {
+ return true;
+ }
+ if (!tc.Typedef())
+ return false;
+ TypedefType const* typedefType = qt->getAs<TypedefType>();
+ auto name = typedefType->getDecl()->getName();
+ return name == "sal_uIntPtr" || name == "sal_IntPtr";
+}
+
+loplugin::Plugin::Registration<ConvertLong> X("convertlong", false);
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/compilerplugins/clang/convertuintptr.cxx b/compilerplugins/clang/convertuintptr.cxx
deleted file mode 100644
index d2cc93b458f6..000000000000
--- a/compilerplugins/clang/convertuintptr.cxx
+++ /dev/null
@@ -1,106 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- */
-
-#include <memory>
-#include <cassert>
-#include <string>
-#include <iostream>
-#include <fstream>
-#include <set>
-#include "plugin.hxx"
-#include "check.hxx"
-
-/**
- plugin to help to when converting code from sal_uIntPtr to something more precise.
- */
-namespace {
-
-class ConvertUIntPtr:
- public RecursiveASTVisitor<ConvertUIntPtr>, public loplugin::Plugin
-{
-public:
- explicit ConvertUIntPtr(loplugin::InstantiationData const & data):
- Plugin(data) {}
-
- virtual void run() override
- {
- std::string fn( compiler.getSourceManager().getFileEntryForID(
- compiler.getSourceManager().getMainFileID())->getName() );
- loplugin::normalizeDotDotInFilePath(fn);
- // using sal_uIntPtr as in-between type when converting void* to rtl_TextEncoding
- if (fn == SRCDIR "/sal/osl/unx/thread.cxx")
- return;
- // too much magic
- if (fn == SRCDIR "/sal/rtl/alloc_arena.cxx")
- return;
- if (fn == SRCDIR "/sal/rtl/alloc_cache.cxx")
- return;
- // TODO not sure what is going on here
- if (fn == SRCDIR "/tools/source/generic/bigint.cxx")
- return;
- TraverseDecl(compiler.getASTContext().getTranslationUnitDecl());
- }
-
- bool VisitImplicitCastExpr(ImplicitCastExpr const *);
-private:
- bool isIntPtr(QualType qt);
-};
-
-bool ConvertUIntPtr::VisitImplicitCastExpr(ImplicitCastExpr const * castExpr)
-{
- if (ignoreLocation(castExpr))
- return true;
-
- if (castExpr->getCastKind() == CK_LValueToRValue)
- return true;
- if (isa<IntegerLiteral>(castExpr->IgnoreCasts()))
- return true;
- // ignore literals like "-123"
- if (isa<UnaryOperator>(castExpr->IgnoreCasts()))
- return true;
-
- bool isSrcIntPtr = isIntPtr(castExpr->getSubExpr()->getType());
- bool isDestIntPtr = isIntPtr(castExpr->getType());
-
- if (!isSrcIntPtr && !isDestIntPtr)
- return true;
-
- // exclude casting between sal_uIntPtr <-> sal_IntPtr
- if (isSrcIntPtr && isDestIntPtr)
- return true;
-
- if (isSrcIntPtr && loplugin::TypeCheck(castExpr->getType()).AnyBoolean())
- return true;
-
- report(
- DiagnosticsEngine::Warning,
- "cast from %0 to %1",
- castExpr->getExprLoc())
- << castExpr->getSubExpr()->getType()
- << castExpr->getType()
- << castExpr->getSourceRange();
-
- return true;
-}
-
-bool ConvertUIntPtr::isIntPtr(QualType qt)
-{
- auto tc = loplugin::TypeCheck(qt);
- if (!tc.Typedef())
- return false;
- TypedefType const * typedefType = qt->getAs<TypedefType>();
- auto name = typedefType->getDecl()->getName();
- return name == "sal_uIntPtr" || name == "sal_IntPtr";
-}
-
-loplugin::Plugin::Registration< ConvertUIntPtr > X("convertuintptr", false);
-
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/compilerplugins/clang/droplong.cxx b/compilerplugins/clang/droplong.cxx
deleted file mode 100644
index 1efcf9bf9efb..000000000000
--- a/compilerplugins/clang/droplong.cxx
+++ /dev/null
@@ -1,190 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- */
-
-#include <memory>
-#include <cassert>
-#include <string>
-#include <iostream>
-#include <fstream>
-#include <set>
-#include "plugin.hxx"
-#include "check.hxx"
-
-/**
-The types 'long' and 'unsigned long' are different sizes on different platforms, making them wholly unsuitable
-for portable code.
-And when I mean different sizes, I mean 64bit Linux and 64bit Windows have different sizes.
- */
-namespace {
-
-static bool startswith(const std::string& rStr, const char* pSubStr) {
- return rStr.compare(0, strlen(pSubStr), pSubStr) == 0;
-}
-
-class DropLong:
- public RecursiveASTVisitor<DropLong>, public loplugin::Plugin
-{
-public:
- explicit DropLong(loplugin::InstantiationData const & data): Plugin(data) {}
-
- virtual void run() override
- {
- std::string fn( compiler.getSourceManager().getFileEntryForID(
- compiler.getSourceManager().getMainFileID())->getName() );
- loplugin::normalizeDotDotInFilePath(fn);
- if (startswith(fn, SRCDIR "/sal/"))
- return;
- if (startswith(fn, SRCDIR "/desktop/unx/"))
- return;
- if (startswith(fn, SRCDIR "/bridges/"))
- return;
- if (startswith(fn, SRCDIR "/registry/"))
- return;
- if (startswith(fn, SRCDIR "/tools/source/generic/fract.cxx"))
- return;
- if (startswith(fn, SRCDIR "/tools/source/generic/bigint.cxx"))
- return;
- // TODO figure out how to cope with iterators
- if (startswith(fn, SRCDIR "/cppu/source/threadpool/jobqueue.cxx"))
- return;
-
- TraverseDecl(compiler.getASTContext().getTranslationUnitDecl());
- }
-
- bool VisitBinAssign(BinaryOperator const *);
- bool VisitVarDecl(VarDecl const *);
- bool VisitCastExpr(CastExpr const *);
-private:
- bool isOK(QualType lhs, QualType rhs);
-};
-
-bool DropLong::VisitBinAssign(BinaryOperator const * expr)
-{
- if (ignoreLocation(expr))
- return true;
- StringRef fileName { compiler.getSourceManager().getFilename(expr->getExprLoc()) };
- if (loplugin::hasPathnamePrefix(fileName, SRCDIR "/include/tools/bigint.hxx"))
- return true;
-
- auto lhsType = expr->getLHS()->getType();
- auto rhsType = expr->getRHS()->IgnoreCasts()->getType();
- if (!isOK(lhsType, rhsType))
- {
- report(
- DiagnosticsEngine::Warning,
- "rather replace %0 with %1",
- expr->getExprLoc())
- << lhsType
- << rhsType
- << expr->getSourceRange();
-// lhsType->dump();
- }
- return true;
-}
-
-bool DropLong::VisitVarDecl(VarDecl const * varDecl)
-{
- if (ignoreLocation(varDecl))
- return true;
- StringRef fileName { compiler.getSourceManager().getFilename(varDecl->getLocation()) };
- if (loplugin::hasPathnamePrefix(fileName, SRCDIR "/include/tools/bigint.hxx"))
- return true;
- if (!varDecl->hasInit())
- return true;
- auto lhsType = varDecl->getType();
- auto rhsType = varDecl->getInit()->IgnoreCasts()->getType();
- if (!isOK(lhsType, rhsType))
- {
- report(
- DiagnosticsEngine::Warning,
- "rather replace %0 with %1",
- varDecl->getLocation())
- << lhsType
- << rhsType
- << varDecl->getSourceRange();
-// lhsType->dump();
- }
- return true;
-}
-
-bool DropLong::VisitCastExpr(CastExpr const * castExpr)
-{
- if (ignoreLocation(castExpr))
- return true;
- StringRef fileName { compiler.getSourceManager().getFilename(castExpr->getExprLoc()) };
- if (loplugin::hasPathnamePrefix(fileName, SRCDIR "/include/tools/bigint.hxx"))
- return true;
- if (loplugin::hasPathnamePrefix(fileName, SRCDIR "/include/sal/types.h"))
- return true;
- if (loplugin::hasPathnamePrefix(fileName, SRCDIR "/include/rtl/math.hxx"))
- return true;
- // TODO
- if (loplugin::hasPathnamePrefix(fileName, SRCDIR "/include/tools/helpers.hxx"))
- return true;
- if (isa<ImplicitCastExpr>(castExpr))
- return true;
-
- auto type = castExpr->getType();
- if (loplugin::TypeCheck(type).Typedef())
- {
- TypedefType const * typedefType = type->getAs<TypedefType>();
- if (typedefType->getDecl()->getName() == "sal_uLong")
- report(
- DiagnosticsEngine::Warning,
- "sal_uLong cast from %0",
- castExpr->getExprLoc())
- << castExpr->getSubExpr()->getType()
- << castExpr->getSourceRange();
- }
- else if (type->isSpecificBuiltinType(BuiltinType::Kind::Long)
- || type->isSpecificBuiltinType(BuiltinType::Kind::ULong))
- {
- report(
- DiagnosticsEngine::Warning,
- "long cast from %0",
- castExpr->getExprLoc())
- << castExpr->getSubExpr()->getType()
- << castExpr->getSourceRange();
- }
- return true;
-}
-
-bool DropLong::isOK(QualType lhs, QualType rhs)
-{
- if (loplugin::TypeCheck(lhs).Typedef())
- {
- TypedefType const * typedefType = lhs->getAs<TypedefType>();
- // Lots of stuff in the standard library and in sal/types.h is
- // 'long' on Linux, so just ignore all typedefs.
- if (typedefType->getDecl()->getName() != "sal_uLong")
- return true;
- }
- else if (lhs->isSpecificBuiltinType(BuiltinType::Kind::Long)
- || lhs->isSpecificBuiltinType(BuiltinType::Kind::ULong))
- {
- if (rhs->isSpecificBuiltinType(BuiltinType::Kind::Long)
- || rhs->isSpecificBuiltinType(BuiltinType::Kind::ULong))
- return true;
- }
- else
- return true;
-
- if (isa<SubstTemplateTypeParmType>(lhs))
- return true;
- if (isa<AutoType>(lhs))
- return true;
-
- return false;
-}
-
-loplugin::Plugin::Registration< DropLong > X("droplong", false);
-
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/compilerplugins/clang/test/convertlong.cxx b/compilerplugins/clang/test/convertlong.cxx
new file mode 100644
index 000000000000..850da3edebf1
--- /dev/null
+++ b/compilerplugins/clang/test/convertlong.cxx
@@ -0,0 +1,41 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#include <tools/solar.h>
+
+int main()
+{
+ sal_uIntPtr x = 1;
+ sal_uInt32 y = x;
+ y = x;
+ (void)y;
+}
+
+void main2()
+{
+ int x = 1;
+ int y = 1;
+ long tmp = x + y;
+ // expected-error@-1 {{rather replace type of decl 'long' with 'int' [loplugin:convertlong]}}
+ (void)tmp;
+ tmp = x + y;
+
+ sal_uLong tmp1 = x + y;
+ // expected-error-re@-1 {{rather replace type of decl 'sal_uLong' (aka 'unsigned {{.+}}') with 'int' [loplugin:convertlong]}}
+ (void)tmp1;
+
+ int tmp2 = (sal_uLong)1;
+ tmp2 = (long)1;
+
+ sal_uIntPtr tmp3 = x + y;
+ // expected-error-re@-1 {{rather replace type of decl 'sal_uIntPtr' (aka 'unsigned {{.+}}') with 'int' [loplugin:convertlong]}}
+ (void)tmp3;
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
diff --git a/compilerplugins/clang/test/convertuintptr.cxx b/compilerplugins/clang/test/convertuintptr.cxx
deleted file mode 100644
index f1c484d8f730..000000000000
--- a/compilerplugins/clang/test/convertuintptr.cxx
+++ /dev/null
@@ -1,20 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- */
-
-#include <tools/solar.h>
-
-int main()
-{
- sal_uIntPtr x = 1;
- sal_uInt32 y = x; // expected-error-re {{cast from 'sal_uIntPtr' (aka 'unsigned {{.+}}') to 'sal_uInt32' (aka 'unsigned {{.+}}') [loplugin:convertuintptr]}}
- y = x; // expected-error-re {{cast from 'sal_uIntPtr' (aka 'unsigned {{.+}}') to 'sal_uInt32' (aka 'unsigned {{.+}}') [loplugin:convertuintptr]}}
- (void)y;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
diff --git a/compilerplugins/clang/test/droplong.cxx b/compilerplugins/clang/test/droplong.cxx
deleted file mode 100644
index 6b9271a20103..000000000000
--- a/compilerplugins/clang/test/droplong.cxx
+++ /dev/null
@@ -1,27 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- */
-
-#include <tools/solar.h>
-
-int main()
-{
- int x = 1;
- int y = 1;
- long tmp = x + y; // expected-error {{rather replace 'long' with 'int' [loplugin:droplong]}}
- (void)tmp;
- tmp = x + y; // expected-error {{rather replace 'long' with 'int' [loplugin:droplong]}}
-
- sal_uLong tmp1 = x + y; // expected-error-re {{rather replace 'sal_uLong' (aka 'unsigned {{.+}}') with 'int' [loplugin:droplong]}}
- (void)tmp1;
-
- int tmp2 = (sal_uLong)1; // expected-error-re {{sal_uLong cast from 'sal_uLong' (aka 'unsigned {{.+}}') [loplugin:droplong]}}
- tmp2 = (long)1; // expected-error {{long cast from 'long' [loplugin:droplong]}}
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
diff --git a/sax/source/tools/converter.cxx b/sax/source/tools/converter.cxx
index 431cfde4308a..b824015d1126 100644
--- a/sax/source/tools/converter.cxx
+++ b/sax/source/tools/converter.cxx
@@ -351,7 +351,7 @@ void Converter::convertMeasure( OUStringBuffer& rBuffer,
case MeasureUnit::MM_10TH:
case MeasureUnit::MM_100TH:
{
- long nFac2 = (MeasureUnit::MM_100TH == nSourceUnit) ? 100 : 10;
+ int nFac2 = (MeasureUnit::MM_100TH == nSourceUnit) ? 100 : 10;
switch( nTargetUnit )
{
case MeasureUnit::MM_100TH:
diff --git a/solenv/CompilerTest_compilerplugins_clang.mk b/solenv/CompilerTest_compilerplugins_clang.mk
index 41990fab90f4..ff3f02c3a233 100644
--- a/solenv/CompilerTest_compilerplugins_clang.mk
+++ b/solenv/CompilerTest_compilerplugins_clang.mk
@@ -15,11 +15,10 @@ $(eval $(call gb_CompilerTest_add_exception_objects,compilerplugins_clang, \
compilerplugins/clang/test/casttovoid \
compilerplugins/clang/test/commaoperator \
compilerplugins/clang/test/constparams \
- $(if $(filter-out INTEL,$(CPU)),compilerplugins/clang/test/convertuintptr) \
+ compilerplugins/clang/test/convertlong \
compilerplugins/clang/test/cppunitassertequals \
compilerplugins/clang/test/datamembershadow \
compilerplugins/clang/test/dodgyswitch \
- compilerplugins/clang/test/droplong \
compilerplugins/clang/test/externvar \
compilerplugins/clang/test/expressionalwayszero \
compilerplugins/clang/test/faileddyncast \
diff --git a/solenv/clang-format/blacklist b/solenv/clang-format/blacklist
index ae00770a3ee7..6eb9adf1d741 100644
--- a/solenv/clang-format/blacklist
+++ b/solenv/clang-format/blacklist
@@ -1840,12 +1840,10 @@ compilerplugins/clang/test/casttovoid.cxx
compilerplugins/clang/test/commaoperator.cxx
compilerplugins/clang/test/constmethod.cxx
compilerplugins/clang/test/constparams.cxx
-compilerplugins/clang/test/convertuintptr.cxx
compilerplugins/clang/test/cppunitassertequals.cxx
compilerplugins/clang/test/cppunitassertequals.hxx
compilerplugins/clang/test/datamembershadow.cxx
compilerplugins/clang/test/dodgyswitch.cxx
-compilerplugins/clang/test/droplong.cxx
compilerplugins/clang/test/expressionalwayszero.cxx
compilerplugins/clang/test/externvar.cxx
compilerplugins/clang/test/externvar.hxx
diff --git a/sot/source/sdstor/storage.cxx b/sot/source/sdstor/storage.cxx
index 340b3202b342..be6aa1bf2d36 100644
--- a/sot/source/sdstor/storage.cxx
+++ b/sot/source/sdstor/storage.cxx
@@ -177,9 +177,9 @@ void SotStorageStream::SetSize(sal_uInt64 const nNewSize)
sal_uInt32 SotStorageStream::GetSize() const
{
- sal_uLong nPos = Tell();
+ sal_uInt64 nPos = Tell();
const_cast<SotStorageStream *>(this)->Seek( STREAM_SEEK_TO_END );
- sal_uLong nSize = Tell();
+ sal_uInt64 nSize = Tell();
const_cast<SotStorageStream *>(this)->Seek( nPos );
return nSize;
}
@@ -199,7 +199,7 @@ void SotStorageStream::CopyTo( SotStorageStream * pDestStm )
if( !pOwnStm || !pDestStm->pOwnStm )
{
// If Ole2 or not only own StorageStreams
- sal_uLong nPos = Tell(); // save position
+ sal_uInt64 nPos = Tell(); // save position
Seek( 0 );
pDestStm->SetSize( 0 ); // empty target stream
@@ -497,7 +497,7 @@ bool SotStorage::IsStorageFile( SvStream* pStream )
/** code for new storages must come first! **/
if ( pStream )
{
- long nPos = pStream->Tell();
+ sal_uInt64 nPos = pStream->Tell();
bool bRet = UCBStorage::IsStorageFile( pStream );
if ( !bRet )
bRet = Storage::IsStorageFile( pStream );
diff --git a/sot/source/sdstor/ucbstorage.cxx b/sot/source/sdstor/ucbstorage.cxx
index 6ec64d83ba83..272e65a82fdc 100644
--- a/sot/source/sdstor/ucbstorage.cxx
+++ b/sot/source/sdstor/ucbstorage.cxx
@@ -825,7 +825,7 @@ void UCBStorageStream_Impl::CopySourceToTemporary()
// current position of the temporary stream is not changed
if( m_bSourceRead )
{
- sal_uLong aPos = m_pStream->Tell();
+ sal_uInt64 aPos = m_pStream->Tell();
m_pStream->Seek( STREAM_SEEK_TO_END );
ReadSourceWriteTemporary();
m_pStream->Seek( aPos );
@@ -1010,10 +1010,10 @@ sal_uLong UCBStorageStream_Impl::GetSize()
if( !Init() )
return 0;
- sal_uLong nPos = m_pStream->Tell();
+ sal_uInt64 nPos = m_pStream->Tell();
m_pStream->Seek( STREAM_SEEK_TO_END );
ReadSourceWriteTemporary();
- sal_uLong nRet = m_pStream->Tell();
+ sal_uInt64 nRet = m_pStream->Tell();
m_pStream->Seek( nPos );
return nRet;
@@ -2884,7 +2884,7 @@ bool UCBStorage::IsStorageFile( SvStream* pFile )
if ( !pFile )
return false;
- sal_uLong nPos = pFile->Tell();
+ sal_uInt64 nPos = pFile->Tell();
pFile->Seek( STREAM_SEEK_TO_END );
if ( pFile->Tell() < 4 )
return false;
@@ -2914,7 +2914,7 @@ bool UCBStorage::IsStorageFile( SvStream* pFile )
OUString UCBStorage::GetLinkedFile( SvStream &rStream )
{
OUString aString;
- sal_uLong nPos = rStream.Tell();
+ sal_uInt64 nPos = rStream.Tell();
rStream.Seek( STREAM_SEEK_TO_END );
if ( !rStream.Tell() )
return aString;
diff --git a/svl/source/items/itemset.cxx b/svl/source/items/itemset.cxx
index f520b26a7371..7e99dfa098fb 100644
--- a/svl/source/items/itemset.cxx
+++ b/svl/source/items/itemset.cxx
@@ -708,7 +708,7 @@ void SfxItemSet::SetRanges( const sal_uInt16 *pNewRanges )
}
// create new item-array (by iterating through all new ranges)
- sal_uLong nSize = Capacity_Impl(pNewRanges);
+ sal_uInt16 nSize = Capacity_Impl(pNewRanges);
SfxItemArray aNewItems = new const SfxPoolItem* [ nSize ];
sal_uInt16 nNewCount = 0;
if (m_nCount == 0)
diff --git a/svl/source/numbers/zforscan.cxx b/svl/source/numbers/zforscan.cxx
index 8f0a7b71f9ac..e47623228814 100644
--- a/svl/source/numbers/zforscan.cxx
+++ b/svl/source/numbers/zforscan.cxx
@@ -627,7 +627,7 @@ Color* ImpSvNumberformatScan::GetColor(OUString& sStr)
if ( CharClass::isAsciiNumeric( sString ) )
{
- long nIndex = sString.toInt32();
+ sal_Int32 nIndex = sString.toInt32();
if (nIndex > 0 && nIndex <= 64)
{
pResult = pFormatter->GetUserDefColor((sal_uInt16)nIndex-1);
diff --git a/tools/source/generic/poly.cxx b/tools/source/generic/poly.cxx
index 19ac62c9bf0c..36cb5c69e90d 100644
--- a/tools/source/generic/poly.cxx
+++ b/tools/source/generic/poly.cxx
@@ -1041,7 +1041,7 @@ void Polygon::Optimize( PolyOptimizeFlags nOptimizeFlags )
{
tools::Polygon aNewPoly;
const Point& rFirst = mpImplPolygon->mxPointAry[ 0 ];
- const long nReduce = ( nOptimizeFlags & PolyOptimizeFlags::REDUCE ) ? 4 : 0;
+ const int nReduce = ( nOptimizeFlags & PolyOptimizeFlags::REDUCE ) ? 4 : 0;
while( nSize && ( mpImplPolygon->mxPointAry[ nSize - 1 ] == rFirst ) )
nSize--;
diff --git a/tools/source/zcodec/zcodec.cxx b/tools/source/zcodec/zcodec.cxx
index bf317594f4af..258677952a3d 100644
--- a/tools/source/zcodec/zcodec.cxx
+++ b/tools/source/zcodec/zcodec.cxx
@@ -400,7 +400,7 @@ void ZCodec::UpdateCRC ( sal_uInt8 const * pSource, long nDatSize)
bool ZCodec::AttemptDecompression(SvStream& rIStm, SvStream& rOStm)
{
assert(meState == STATE_INIT);
- sal_uLong nStreamPos = rIStm.Tell();
+ sal_uInt64 nStreamPos = rIStm.Tell();
BeginCompression(ZCODEC_DEFAULT_COMPRESSION, false/*updateCrc*/, true/*gzLib*/);
InitDecompress(rIStm);
EndCompression();