Commit Graph
2679 Commits
Author SHA1 Message Date
rounak 3b704dc06b tdf#124176 Use pragma once instead of include guards
Change-Id: I778393686b9a51df6437c61a814e5c62a34302de
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113433
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2021-04-01 14:26:36 +02:00
Noel eab3fa1f37 loplugin:unusedvarsglobal
Change-Id: Ie73c8bec0196c680311b0959f3a17c3af900ce88
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113084
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-25 14:13:12 +01:00
Michael Stahl 473f2dec08 compilerplugins: fix clang plugin allowlists for sccache-dist
While icecream passes preprocessed (via -frewrite-includes) input to the
compiler on stdin, sccache-dist writes it to a file at the same location
as the source file in its sandbox.

So we need a new heuristic to detect that the input has
-frewrite-includes applied; there is not any variable that sccache sets,
users could have SCCACHE_CACHE_SIZE set but only if they use the disk
cache, so check CXX for now.

Also set SCCACHE_EXTRAFILES to include log-areas.dox required by plugin.

Change-Id: I4e00bfb0db7dab28f228fc0e85d753506e2c86b1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112480
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2021-03-25 09:48:23 +01:00
Noel a7cf7da8d2 loplugin:unnecessaryvirtual
Change-Id: Ic414b72299b5c5c19e5b37156ac6dec4bedadf65
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113038
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-24 20:01:06 +01:00
Noel 3b9866ee35 loplugin:unusedmethods
Change-Id: Id54e7545b3a69e03c29daf9d372bbf605312f547
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113036
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2021-03-24 20:00:47 +01:00
Hossein c16158772d Using .md extension/Markdown syntax for modules README
Renaming all README files for all top level modules to README.md,
applying no content change at this stage to be able to track history
of the files. These files should be edited to use correct Markdown
syntax later.

Change-Id: I542fa3f3d32072156f16eaad2211a397cc212665
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112977
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2021-03-24 11:46:14 +01:00
Stephan Bergmann f416acdc3a systools is no longer part of the URE interface
...since de030cd7a2 "gbuild: Remove MSVC 2013
legacy code", so no longer treat it as such in compilerplugins.  (Which caused a
few loplugin:includeform and loplugin:nullptr warnings.)

Change-Id: I99b42e76992e31aff56b417c05738d4d29e3faf9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112575
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-03-16 14:53:44 +01:00
Caolán McNamara 843f41917e drop PrintWindowSubTree that is only callable by itself
Change-Id: I14ec71ca429e60f7e350c92534db6d983a559c61
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112536
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-03-15 17:56:08 +01:00
Noel ebe1f639cf loplugin:unusedmethods
Change-Id: I851eba4ca80eac9ee5896df53fbcd0f5ad125763
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112433
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-14 08:11:55 +01:00
Noel c58cc416b6 loplugin:unusedfields
Change-Id: Ic40d908c3063cc2537bc1746421fb76f070e5bc8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112432
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-13 20:20:52 +01:00
Caolán McNamara feb8164afa drop newly unused code and macros
Change-Id: I4b3fe1d7a62305f04589bd05a80aa771910a4f98
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112246
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-03-11 14:29:30 +01:00
Noel 04e7a34a19 loplugin:refcounting check for one more case
where we might be holding something newly created by pointer
instead of by *::Reference

Change-Id: Ife6f7acae4252bf56dcdeb95d72e43c523444f97
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112138
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-08 07:37:26 +01:00
Noel e4e80ed313 loplugin:staticdynamic now with extra salt
because it wasn't quite there yet - now checks for casts with and
without const, because const doesn't really matter here.

Change-Id: I319025b2095a803fcaad2a7a696d2730b7fd2f81
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112098
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-07 13:22:28 +01:00
Noel bd37588605 loplugin:staticdynamic look for static after dynamic
Change-Id: Ic3066d9a9441e369370cc6aa0fbffb9a321bc928
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111985
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-06 13:08:26 +01:00
Noel 5146d482a2 loplugin:refcounting return objects properly
check that when we return ref-counted objects, we do so using
rtl::Reference, so that the object actually has a non-zero
ref count.

Change-Id: Ib3ffae0d2502f6d117550c82fde5449729c27324
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111487
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-05 08:09:21 +01:00
Caolán McNamara f645d4c35e vcl/floatwin.hxx can be toolkit only now
Change-Id: Ifd8f58771ea6f9212a0dca7d4550c86ebecd9333
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111814
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-03-03 15:54:56 +01:00
Noel 11083d1fcf new loplugin:staticdynamic
look for places we are dynamic_cast'ing after static_cast'ing,
which means the dynamic_cast is a waste of time.

Change-Id: Ife11bb675020738040646230bbd038278d84f7f2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111631
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-01 12:33:17 +01:00
Noel 58f4c0eee2 loplugin:unusedfields
Change-Id: Ie82cfbc8294ffb6b07e66f6cf15fd326bd551d91
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111625
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-02-27 11:58:36 +01:00
Noel 3190244989 loplugin:unnecessaryvirtual
Change-Id: I99f5302ec5727aae3fad6767b9b477d37beb573b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111624
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-02-27 08:21:47 +01:00
Noel ba20fcaa25 loplugin:unusedmethods
Change-Id: Ie0534244cc7a30ad006e65baf125c59757c90d50
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111388
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-02-23 19:02:25 +01:00
Noel 4b9ad812fa loplugin:constantparam
Change-Id: Ieaee9a3e3ef4aa9bc390ddb198ee1718f635bcbf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111391
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-02-23 17:43:06 +01:00
Noel e549d81146 loplugin:unnecessaryvirtual
Change-Id: I792a717306c232cf200940f9e3944f91885e426a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111387
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-02-23 14:56:44 +01:00
Noel e7f82300b9 loplugin:unusedfields
Change-Id: Ieb1b890040964e755de5bdf5f8576d4d3bd8a407
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111386
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-02-23 13:33:33 +01:00
Noel c13133b613 loplugin:refcounting check for managing OWeakObject with raw pointer
Change-Id: I7471725f1e658940b5e6993361c327be6ccf0d31
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111064
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-02-23 12:11:31 +01:00
Stephan Bergmann b0f1672a5d Avoid loplugin:refounting in uninstantiated template code
...causing e.g. false positive

> In file included from shell/source/win32/spsupp/COMOpenDocuments_x64.cxx:11:
> In file included from shell/source/win32/spsupp/COMOpenDocuments.cxx:16:
> In file included from shell/inc/spsupp\COMOpenDocuments.hpp:21:
> shell/inc/spsupp/COMRefCounted.hpp(35,13): error: cppu::OWeakObject subclass 'COMRefCounted<Interfaces...>' being deleted via delete, should be managed via rtl::Reference [loplugin:refcounting]
>             delete this;
>             ^~~~~~~~~~~

with clang-cl on Windows.  (Ideally, this would be made up for with setting this
plugins' shouldVisitTemplateInstantiations() to true, see the TODO added in
compilerplugins/clang/test/refcounting.cxx, but that would cause lots of other
findings, so is left out for now.)

Change-Id: Ia52b13498a0c7169b37ecf4882ce84c3cc1d2cc4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111339
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-02-22 16:43:46 +01:00
Miklos Vajna f4b1095451 compilerplugins: fix referencecasting for clang 7.0.1
The error was:

error: 'error' diagnostics seen but not expected:
  File /libreoffice/master-clang/compilerplugins/clang/test/referencecasting.cxx Line 113: unnecessary get() call [loplugin:referencecasting]
1 error generated.

I.e. it seems clang7 has the same problem as clang5 that it emits
multiple diagnostics for that problematic code line. Adapt the ifdef
accordingly.

Change-Id: I232ff9a158663e2cb3030e51f655249ff315361e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111196
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2021-02-19 11:20:53 +01:00
Noel 1ad26c9fc2 loplugin:referencecasting add check for new rtl::Reference operator
rtl::Reference now has a conversion operator to uno::Reference,
so look for places where we can simplify the code and use that.

Change-Id: Ic81db50d670bed5e875300577d4bf5f3599cc2c4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110798
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-02-18 13:45:03 +01:00
Tomaž Vajngerl 2270a58d7b Move GIF writer from filter module into VCL
Change-Id: I8db3ca0f7953b44791bda47534220902931fab8d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111023
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2021-02-18 04:12:27 +01:00
Noel beeed38773 loplugin:refcounting check for calling delete
Change-Id: I5b723d4d2376a28777e3ee7e9706e5f54fcb55e3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110809
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-02-12 17:38:19 +01:00
Noel 14cb12bde0 loplugin:refcounting generalise type checking
Change-Id: Ia013878ac9c2918d8eaf9aab16b291d8211e708f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110700
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-02-11 07:57:56 +01:00
Stephan Bergmann 4cae353cae Fix loplugin:stringliteralvar
...detection of

  OUString( const sal_Unicode * value, sal_Int32 length )

ctor.  (On platforms where sal_Int32 is a typedef for int, an argument that
already is of type int will not be wrapped in an ImplicitCastExpr to the
sal_Int32 typedef.)

Change-Id: Ifc5456a62d42c1acad76ea949549dc24bd67201a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110654
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-02-10 10:33:25 +01:00
Noel dcb1022362 loplugin:refcounting also check OWeakObject subclasses
Change-Id: I2d89085a22d7424c6f8f7662307433ce50fc61d2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110666
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-02-10 09:18:53 +01:00
Noel 066799b4a1 loplugin:referencecasting check for Reference::query
Change-Id: I008d16d933c70df132699872ac4c39a5c1f87b34
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110592
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-02-09 07:42:11 +01:00
Stephan Bergmann 6b00d0576a Improve loplugin:cppunitassertequal for CPPUNIT_ASSERT(a && b)
...by re-enabling the code temporarily #if'ed-out in
a528392e71 "Fixed/improved
loplugin:cppunitassertequals" (and which then triggers lots of other
lopglugin:cppunitassertequal CPPUNIT_ASSERT -> CPPUNIT_ASSERT_EQUAL warnings).

For two css::uno::Reference equality comparisons in cppu/qa/test_any.cxx, it
was more straightforward to rewrite them with an explicit call to operator ==
(which silences loplugin:cppunitassertequal) than to adapt them to
CPPUNIT_ASSERT_EQUAL's requirement for arguments of identical types.

In sc/qa/unit/ucalc_pivottable.cxx, ScDPItemData needs toString, which has been
implemented trivially for now, but might want to combine that with the
DEBUG_PIVOT_TABLE-only ScDPItemData::Dump.

Change-Id: Iae6d09cf69bd4e52fe4411bba9e50c48e696291c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110546
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-02-08 09:15:01 +01:00
Stephan Bergmann 7529dbcb24 Make loplugin:cppunitassetequals diagnostic more informative
...which will come in handy for a later improvement of that plugin

Change-Id: I548b9388bee60b381c0a2c820f20f596aa0072f4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110453
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-02-05 21:58:41 +01:00
dante 404f14ce91 Clean up SmColorTokenTableEntry
Remove useless member SmColorTokenTableEntry::cIdent
aColorTokenTableDVIPS renamed (make the loop enter in one line)
removed redundant code in visitors (related to color)
removed temporal variables on visitors (related to color)
removed temporal variables on mthmlexport (related to color)
removed redundant code in mathmlexport (related to color)
Since SmColorTokenTableEntry is used as pointer remove useless operators

Change-Id: Icef831711c95e4f9c23b29a3a3606dd9d6fcf6c8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110321
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-02-03 07:56:45 +01:00
Stephan Bergmann dec14c4a07 Avoid --disable-assert-always-abort loplugin:stringviewparam false positives
...like

> l10ntools/source/helper.cxx:19:69: error: replace function parameter of type 'const rtl::OString &' with 'std::string_view' [loplugin:stringviewparam]
>     const OString& rText, const OString& rUnEscaped, const OString& rEscaped )
>                                                      ~~~~~~~~~~~~~~~^~~~~~~~

where the call to rEscaped.getLength(), which would otherwise suppress the
warning, is hidden inside an assert.

(Similar to aab0322580 "Disable
loplugin:casttovoid when --disable-assert-always-abort".)

Change-Id: Ie054f75317707757b1c6243c593f539d445a9fee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110331
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-02-02 20:45:24 +01:00
Noel 068d4108e5 loplugin:redundantcast catch more dynamic_cast
Change-Id: Ia28e58217cefa306567b53688d851fa210b7821c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110287
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-02-02 12:24:00 +01:00
Noel 1250aecd71 loplugin:stringviewparam extend to new..
O[U]StringBuffer methods

Change-Id: I0ffbc33d54ae7c98b5652434f3370ee4f819f6f4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110090
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-01-29 09:25:12 +01:00
Noel 1da6908173 add string_view variants of methods to O[U]StringBuffer
and update the stringview loplugin to detect cases where we can
use these new methods.

Change-Id: I998efe02e35c8efcb3abfb4d7186165bbe6dfb2c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110046
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-01-28 11:11:28 +01:00
Stephan Bergmann aa2064c5c5 Improve loplugin:stringliteralvar
...to also consider O[U]String ctors taking pointer and length

Change-Id: Iea5041634bfbf5054a1317701e30b56f72e940fb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110025
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-01-27 23:24:42 +01:00
Stephan Bergmann 2682feb036 Adapt loplugin:stringconstant to many functions taking string_view args now
So look through (implicit) O[U]String to string_view conversions for those
arguments.

Change-Id: I1101d3f681d227ad0a76a4477bf52a1a3898cfdc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109926
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-01-26 08:42:09 +01:00
Dr. David Alan Gilbert 506036ba3f clang/constfieldsrewrite.cxx: Remove duped lines
Spotted by cppcheck.
A duplicated if and comment; looks like a merge screwup ?

Change-Id: Iceed88d85d42be601975b7a1daff7a1f002644d6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109863
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-01-25 14:30:36 +01:00
Noel 6907cbb897 improve loplugin:pointerbool
to look through template instantiations involving std::forward

motivated by
    commit b1617acde1
    drop RadioButton arg defaults
    the nBits arg in builder.cxx was in the wrong place

Change-Id: I222ea2aeea6f44ae54839e824a247a8105392c2d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109789
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-01-22 17:46:01 +01:00
Stephan Bergmann af34108d90 Use C++20 consteval for the Color(sal_uInt32) ctor
...to make it more obvious that, since 63a68064bb
"make the Color constructors explicitly specify transparency", it should only be
called when the argument is known at compile-time to have no transparency/alpha
channel.

(This revealed a GCC bug causing bogus

> xmloff/source/chart/ColorPropertySet.cxx: In constructor ‘xmloff::chart::ColorPropertySet::ColorPropertySet(Color)’:
> xmloff/source/chart/ColorPropertySet.cxx:81:9: error: ‘this’ is not a constant expression
>    81 |         m_nDefaultColor( 0x0099ccff )  // blue 8
>       |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~

so in configure.ac suppress HAVE_CPP_CONSTEVAL when the compiler is found
broken.)

Change-Id: I68df7bd5fbd9b2dcf2243b5a4bde4064d3d665fd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109697
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-01-21 07:58:02 +01:00
Stephan Bergmann db1561f051 Build compilerplugings code with -fvisibility-inlines-hidden
Even though `llvm-config --cxxflags` does not reflect it, LLVM generally uses
-fvisibility-inlines-hidden on Unix-like platforms at least since <https:
//github.com/llvm/llvm-project/commit/6b43f1f40f644b896f44078872c0b93ec3afef67>
"[CMake] Support -fvisibility-inlines-hidden when LLVM_ENABLE_PIC=Off" debuting
in release/3.8.x.

At least with my build on macOS 11.1 ARM64 against recent LLVM 12 trunk, that
caused a mismatch between

> $ nm -m compilerplugins/clang/sharedvisitor/analyzer.o | grep __ZGVZNK5clang24TemplateTemplateParmDecl18getDefaultArgumentEvE7NoneLoc
> 0000000000028038 (__DATA,__data) weak external __ZGVZNK5clang24TemplateTemplateParmDecl18getDefaultArgumentEvE7NoneLoc

and

> $ nm -m ~/llvm/inst/lib/libclangAST.a\(JSONNodeDumper.cpp.o\) | grep __ZGVZNK5clang24TemplateTemplateParmDecl18getDefaultArgumentEvE7NoneLoc
> 000000000001ccf0 (__DATA,__data) weak private external __ZGVZNK5clang24TemplateTemplateParmDecl18getDefaultArgumentEvE7NoneLoc

etc., causing (albeit harmless) warnings

> [GEN] compilerplugins/clang/sharedvisitor/analyzer
> ld: warning: direct access in function 'clang::JSONNodeDumper::VisitTemplateTemplateParmDecl(clang::TemplateTemplateParmDecl const*)' from file '~/llvm/inst/lib/libclangAST.a(JSONNodeDumper.cpp.o)' to global weak symbol 'guard variable for clang::TemplateTemplateParmDecl::getDefaultArgument() const::NoneLoc' from file 'compilerplugins/clang/sharedvisitor/analyzer.o' means the weak symbol cannot be overridden at runtime. This was likely caused by different translation units being compiled with different visibility settings.
[...]

-fvisibility-inline-hidden is presumably supported by all
$(COMPILER_PLUGINS_CXX) used on non-Windows platforms in the wild, so lets be
bold and add it unconditionally.

Change-Id: I0d405b4f57066baa098977e65e5ba4a3a47575c9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109712
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-01-20 22:17:35 +01:00
Stephan Bergmann 4b55847b81 Improve loplugin:doubleconvert
(The use of isa_and_nonnull<> instead of isa<> is necessary for cases like

  return (i_styleSettings.*i_getDefaultColor)();

in lcl_getEffectiveColor, svtools/source/table/gridtablerenderer.cxx.)

Change-Id: Iffc59b1146dd4ce13bbd3c8a6f46bd3c78a39344
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109663
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-01-20 11:27:33 +01:00
Noel 750d96706c loplugin:unusedmethods
GtkPrintWrapper stuff is dead since

    commit ed07ec7606
    drop never completed GtkSalPrinter

Change-Id: Ia42e9bca020a9683ba247d466f743a0018e920f7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109618
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-01-19 18:24:25 +01:00
dante e552ddda9a Mathml gets it's own directory
It has grown recently and is going to grow more.
cfgitem.hxx has been moved and clangformated because it is not anymore in excludelist

Change-Id: I277837b2c0a90ae4e84028dc6e19962939c1aef3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108645
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-01-18 13:12:27 +01:00
Noel 63a68064bb make the Color constructors explicitly specify transparency
to reduce the churn, we leave the existing constructor in place,
and add a clang plugin to detect when the value passed to the
existing constructor may contain transparency/alpha data.

i.e. we leave expressions like Color(0xffffff) alone, but
warn about any non-constant expression, and any expression
like Color(0xff000000)

Change-Id: Id2ce58e08882d9b7bd0b9f88eca97359dcdbcc8c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109362
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-01-16 10:07:07 +01:00