Commit Graph

128 Commits

Author SHA1 Message Date
Noel Grandin
03516c505e loplugin:stringadd in helpcompiler..oox
Change-Id: I858870d883de10a673d7ce2798bda8c8f511cee5
Reviewed-on: https://gerrit.libreoffice.org/79889
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-01 08:26:49 +02:00
Caolán McNamara
fa5c79b4c6 cid#1448441 Unchecked return value
Change-Id: I97f6ad2bd0a6d838871cfb9ff54f2e654d6abfd0
Reviewed-on: https://gerrit.libreoffice.org/75893
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-07-19 00:06:11 +02:00
Caolán McNamara
bc401b9850 cid#703974 Unchecked return value
Change-Id: I833175e7687df88719d4d946cf97181158187c67
Reviewed-on: https://gerrit.libreoffice.org/75840
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-07-18 16:20:00 +02:00
Gabor Kelemen
c329a1c112 tdf#42949 Fix IWYU warnings in helpcompiler/
Found with bin/find-unneeded-includes
Only removal proposals are dealt with here.

Change-Id: Ie7e20c77a8035c0ee4f0316966d163b9cd7d11f2
Reviewed-on: https://gerrit.libreoffice.org/73006
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-05-30 09:00:54 +02:00
Stephan Bergmann
c18e2ea2a5 New loplugin:data
...following up on 1453c2c8f1 "prefer vector::data
to &vector[0]"

Change-Id: I7c113747d92d144a521d49b89384dd8bf1215c01
Reviewed-on: https://gerrit.libreoffice.org/72765
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-05-22 16:35:20 +02:00
Noel Grandin
55783b8006 std::string has a std::hash specialisation since C++11
Change-Id: I8cc01420d0235a8d1686881eca1ad9cc4a67ebe0
Reviewed-on: https://gerrit.libreoffice.org/70362
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-04-07 11:50:43 +02:00
Noel Grandin
48f2d4e580 loplugin:unusedfields in helpcompiler..jvmfwk
Change-Id: Ic10c521de310e0f0ac1f79a1ae169252c20075b2
Reviewed-on: https://gerrit.libreoffice.org/68226
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-02-24 09:48:16 +01:00
Noel Grandin
c70f5f32e2 use clear() instead of erase(begin, end)
Change-Id: Ie1dcff4c2e5f52521b4172ef5726413a9d048214
Reviewed-on: https://gerrit.libreoffice.org/67961
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-02-18 14:25:41 +01:00
Noel Grandin
de8c193833 loplugin:indentation in helpcompiler..io
Change-Id: Ia3f05662cc9542feeac3096d29e9dec6d1858620
Reviewed-on: https://gerrit.libreoffice.org/67558
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-02-09 17:07:29 +01:00
Noel Grandin
21de55596c remove unnecessary "if (!empty()" checks before loops
found with
   git grep -n -A4 'if.*!.*empty' | grep -B3 -P
'(\bfor)|(\bwhile)|(\bdo)'

Change-Id: I582235b7cf977a0f9fb4099eb306fdb4a07b5334
Reviewed-on: https://gerrit.libreoffice.org/64169
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-11-29 07:17:37 +01:00
Noel Grandin
55e42805ea improve function-local statics in forms..reportdesign
Change-Id: I285e2e75c8d9cad35445c89f00ef68b155806ea2
Reviewed-on: https://gerrit.libreoffice.org/63703
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-11-21 13:00:02 +01:00
Noel Grandin
51d1ec7883 clang-tidy performance-unnecessary-copy-init in editeng..i18npool
Change-Id: I2ee2c8d15d8700cfaa1697363da4557c741a5f36
Reviewed-on: https://gerrit.libreoffice.org/62216
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-23 11:48:22 +02:00
Stephan Bergmann
206b5b2661 New loplugin:external
...warning about (for now only) functions and variables with external linkage
that likely don't need it.

The problems with moving entities into unnamed namespacs and breaking ADL
(as alluded to in comments in compilerplugins/clang/external.cxx) are
illustrated by the fact that while

  struct S1 { int f() { return 0; } };
  int f(S1 s) { return s.f(); }
  namespace N {
    struct S2: S1 { int f() { return 1; } };
    int f(S2 s) { return s.f(); }
  }
  int main() { return f(N::S2()); }

returns 1, both moving just the struct S2 into an nunnamed namespace,

  struct S1 { int f() { return 0; } };
  int f(S1 s) { return s.f(); }
  namespace N {
    namespace { struct S2: S1 { int f() { return 1; } }; }
    int f(S2 s) { return s.f(); }
  }
  int main() { return f(N::S2()); }

as well as moving just the function f overload into an unnamed namespace,

  struct S1 { int f() { return 0; } };
  int f(S1 s) { return s.f(); }
  namespace N {
    struct S2: S1 { int f() { return 1; } };
    namespace { int f(S2 s) { return s.f(); } }
  }
  int main() { return f(N::S2()); }

would each change the program to return 0 instead.

Change-Id: I4d09f7ac5e8f9bcd6e6bde4712608444b642265c
Reviewed-on: https://gerrit.libreoffice.org/60539
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-09-17 09:05:38 +02:00
Gabor Kelemen
bdb0775a26 Add missing sal/log.hxx headers
rtl/string.hxx and rtl/ustring.hxx both unnecessarily #include <sal/log.hxx> (and don't make use of it themselves), but many other files happen to depend on it.
This is a continuation of commit 6ff2d84ade to be able to remove those unneeded includes.

This commit adds missing headers to every file found by:
grep -FwL sal/log.hxx $(git grep -Elw 'SAL_INFO|SAL_INFO_IF|SAL_WARN|SAL_WARN_IF|SAL_DETAIL_LOG_STREAM|SAL_WHERE|SAL_STREAM|SAL_DEBUG')
to directories from filter to jvmfwk

Change-Id: I2a73d63f2aaef5f26d7d08957daaa8a30b412ac5
Reviewed-on: https://gerrit.libreoffice.org/58204
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-07-30 09:28:40 +02:00
Noel Grandin
e6d79e896c loplugin:returnconstant in helpcompiler
and fix scanForFiles to return false on error

Change-Id: I246e906de9985947be421d361340874c94a2102d
Reviewed-on: https://gerrit.libreoffice.org/58085
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-07-27 08:28:27 +02:00
Stephan Bergmann
98db90e2cc Don't create std::string from nullptr
...which violates the ctor's preconditions, so is UB.  Also, the "XML Help
Document Type Definition" appendix of
<http://documentation.openoffice.org/online_help/OOo2HelpAuthoring.pdf> states
that "branch" and "id" attributes are #REQUIRED for the "bookmark" element.

(There's probably further cases in the surrounding code where a std::string is
created from a potentially null argument, which would benefit from similar
fixes.)

Change-Id: I414576d13de784de1290951bcdd5e3ecb51f9cb8
Reviewed-on: https://gerrit.libreoffice.org/55735
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-06-13 16:05:26 +02:00
Arkadiy Illarionov
3bd8759f5e tdf#96099 Remove some trivial std::vector typedefs
Change-Id: I0e60ec7a3edae42b25ff0917828d0a893ed39a38
Reviewed-on: https://gerrit.libreoffice.org/55245
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-06-11 08:57:06 +02:00
Abhyudaya Sharma
251cb2a7b8 tdf#96099 Remove std::vector typedefs
Change-Id: Ic7e1cecaecadf3f9ebfa183727d61046dd87e473
Reviewed-on: https://gerrit.libreoffice.org/55260
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tor Lillqvist <tml@collabora.com>
2018-06-07 07:28:54 +02:00
Noel Grandin
73c29a2978 loplugin:useuniqueptr in StreamTable
Change-Id: I6a6314a3e6df9edfb6d92d2afbc1567195946292
Reviewed-on: https://gerrit.libreoffice.org/52885
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-04-16 08:22:20 +02:00
Julien Nabet
93f8b703a0 Use for-range loops in helpcompiler
Change-Id: I787a5b43cb09ac308082cac0e66540f975d79ead
Reviewed-on: https://gerrit.libreoffice.org/51473
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2018-03-18 09:13:59 +01:00
Mike Kaganski
f0f43e0c1e helpcompiler: MSVC: pragma warning: make more specific, remove obsolete
Change-Id: I56298ee1962a4989bcc5446df2766d7aa30c28cd
Reviewed-on: https://gerrit.libreoffice.org/48980
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-02-01 10:41:16 +01:00
Noel Grandin
a2f86708a5 loplugin:useuniqueptr in BasicCodeTagger
Change-Id: I85b7d5b3030d4b3ec5318e4ee6793927c1f16355
Reviewed-on: https://gerrit.libreoffice.org/47835
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-15 07:27:12 +01:00
Julien Nabet
d8282c9adc Replace lists by vector and deque (helpcompiler)
Change-Id: I8d65947f3188ab7b54653eee887de2c5d4f8095d
Reviewed-on: https://gerrit.libreoffice.org/45290
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2017-11-26 18:02:05 +01:00
Noel Grandin
9ee60319c6 loplugin:constmethod in idl,helpcompiler
Change-Id: I9b328fc0a3ebdd15a646ee6dab800ffbadb1aaef
Reviewed-on: https://gerrit.libreoffice.org/44050
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-30 13:06:54 +01:00
Mike Kaganski
1944e3ddc0 Rename and move SAL_U/W to o3tl::toU/W
Previosly (since commit 9ac98e6e34)
it was expected to gradually remove SAL_U/W usage in Windows code
by replacing with reinterpret_cast or changing to some bettertypes.
But as it's useful to make use of fact that LibreOffice and Windows
use compatible representation of strings, this commit puts these
functions to a better-suited o3tl, and recommends that the functions
be consistently used throughout Windows-specific code to reflect the
compatibility and keep the casts safe.

Change-Id: I2f7c65606d0e2d0c01a00f08812bb4ab7659c5f6
Reviewed-on: https://gerrit.libreoffice.org/43150
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2017-10-05 16:02:52 +02:00
Mike Kaganski
532a4dcba6 Replace more reinterpret_cast with SAL_W/SAL_U
Change-Id: Ia632e4083222ad9e7f17c2ad0d0825f189c700cc
Reviewed-on: https://gerrit.libreoffice.org/43071
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2017-10-03 16:30:36 +02:00
Jochen Nitschke
356debabba cppcheck: unreadVariable
since initial commit d6cf80c14e
     CWS-TOOLING: integrate CWS l10nframework01

Change-Id: I3d9761911c535965795b10b3ae96da3e7b51f23d
Reviewed-on: https://gerrit.libreoffice.org/40808
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-06 17:28:45 +02:00
Noel Grandin
72f36adb93 loplugin:constparams in vcl
Change-Id: I36afe2107e07ffb9b73c0b76be600e3e999a0fd4
Reviewed-on: https://gerrit.libreoffice.org/40116
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-18 09:57:26 +02:00
Stephan Bergmann
207d625a9d loplugin:casttovoid: helpcompiler
Change-Id: Ifd37b99b27d1bf25109c83a054b36c1da3825d84
2017-07-02 22:31:52 +02:00
Noel Grandin
a006f60b6a loplugin:oncevar in helpcompiler..jvmfwk
Change-Id: Ia9b20a8ca95684cbeb21e3425972c43ba50df3cd
Reviewed-on: https://gerrit.libreoffice.org/39187
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-06-25 17:19:36 +02:00
Noel Grandin
0e2a6e8ea2 remove some unnecessary use of OUStringBuffer
Change-Id: Ia4e02589d2fe79a27b83200a0e7a528a2c806519
Reviewed-on: https://gerrit.libreoffice.org/38508
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-06-08 08:45:56 +02:00
Noel Grandin
ef513fd4b0 remove unnecessary use of OString::getStr
Change-Id: I0490efedf459190521f4339854b3394d57765fdb
Reviewed-on: https://gerrit.libreoffice.org/38058
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-28 19:44:08 +02:00
Gabor Kelemen
59793d67d4 Make helpcompiler more verbose on dot ahelps
Currently we get a warning if the ahelp is one dot
and there was no previous bookmark tag.

This warning contains only the text with the problemmatic ahelp.

It would make it easier to hunt down such problems if we would
know the file names.

This patch does that, and now I see 334 problems in 137 files.

Change-Id: I364368f7affb85d5c5d526dd4674757c51956aea
Reviewed-on: https://gerrit.libreoffice.org/38044
Reviewed-by: Andras Timar <andras.timar@collabora.com>
Tested-by: Andras Timar <andras.timar@collabora.com>
2017-05-26 10:09:00 +02:00
Noel Grandin
68e213319f remove empty comments
found with:
   git ls-files | xargs grep -Pzl '/\*\*
(\*|\s|
)*\*/'

Change-Id: I1f47bcb94d5a7b290a6c622c6941195fbb578597
Reviewed-on: https://gerrit.libreoffice.org/37159
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-03 09:07:36 +02:00
Chris Sherlock
da64d198ec tools: svstream.hxx needs only errcode.hxx & not errinf.hxx
Change-Id: Ia28e35ae5af4f601e9a586a3deffbcd61702b0ca
Reviewed-on: https://gerrit.libreoffice.org/36896
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
2017-04-25 09:31:31 +02:00
Stephan Bergmann
e665ecfc32 Use rtl::isAscii* instead of ctype.h is* (and fix passing plain char)
Change-Id: If8085dc00db196eb51b6f14b4f4bac7c37dab249
2017-03-22 21:41:44 +01:00
Stephan Bergmann
7778d9f51b Prevent calls to rtl/character.hxx functions with (signed) char arguments
...that would implicitly be sign extended (for plain char only if it is signed),
so non-ASCII char values would trigger the isUnicodeCodePoint assert.

Change-Id: Iaf8024ad509e64525558e882fe3fd078cfb4ea91
Reviewed-on: https://gerrit.libreoffice.org/35523
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-03-22 09:00:57 +00:00
Noel Grandin
ce3441c2d5 convert HelpProcessingErrorClass to scoped enum
and drop unused HELPPROCESSING_INTERNAL_ERROR enumerator

Change-Id: I0f2cf063a3f1472e1d52bab5039b1c3158d4865e
2017-02-16 08:17:34 +02:00
Stephan Bergmann
e57ca02849 Remove dynamic exception specifications
...(for now, from LIBO_INTERNAL_CODE only).  See the mail thread starting at
<https://lists.freedesktop.org/archives/libreoffice/2017-January/076665.html>
"Dynamic Exception Specifications" for details.

Most changes have been done automatically by the rewriting loplugin:dynexcspec
(after enabling the rewriting mode, to be committed shortly).  The way it only
removes exception specs from declarations if it also sees a definition, it
identified some dead declarations-w/o-definitions (that have been removed
manually) and some cases where a definition appeared in multiple include files
(which have also been cleaned up manually).  There's also been cases of macro
paramters (that were used to abstract over exception specs) that have become
unused now (and been removed).

Furthermore, some code needed to be cleaned up manually
(avmedia/source/quicktime/ and connectivity/source/drivers/kab/), as I had no
configurations available that would actually build that code.  Missing @throws
documentation has not been applied in such manual clean-up.

Change-Id: I3408691256c9b0c12bc5332de976743626e13960
Reviewed-on: https://gerrit.libreoffice.org/33574
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-01-26 12:54:43 +00:00
Noel Grandin
7a60e90ef0 new loplugin: useuniqueptr: helpcompiler..io
Change-Id: I6b394163c144e6b5540cb160abb613d56fe327de
Reviewed-on: https://gerrit.libreoffice.org/33165
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-01-17 08:34:42 +00:00
Stephan Bergmann
0680fc5195 New loplugin:conststringvar: helpcompiler
Change-Id: Iaf9cedae10b9bc04353d175778ff68cb38fdb409
2017-01-10 08:11:57 +01:00
Stephan Bergmann
a7d554f3b2 New loplugin:charrightshift
Change-Id: Ib645fb11004bc0fe05c9c416ae72b0ae56c23a15
2017-01-06 18:15:24 +01:00
Stephan Bergmann
d689ad29c2 New o3tl::runtimeToOUString to convert from C++ runtime NTBS to OUString
Change-Id: I613bb70b6828f615fd45af38b2d873ece55ace60
2016-11-23 23:11:02 +01:00
Noel Grandin
a7369d9899 loplugin:oncevar in helpcompiler..reportdesign
Change-Id: I2dc57931fb230953c285aeb18f57c0a41fedafcb
Reviewed-on: https://gerrit.libreoffice.org/30463
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-11-02 07:12:46 +00:00
Stephan Bergmann
f255c3e96e [API CHANGE] Remove HAVE_GCC_VISIBILITY_FEATURE, always true
* GCC documents -fvisibility at least as far back as the GCC 4.0 online
  documentation at
  <https://gcc.gnu.org/onlinedocs/gcc-4.0.4/gcc/Code-Gen-Options.html>.

* For external code, odk/settings/settings.mk unconditionally set
  HAVE_GCC_VISIBILITY_FEATURE for all platforms other than Windows.

Make this a fatal configure error for now.  The check should be removed
completely after LO 5.3 branch-off.

Change-Id: I1de415b6ed1591e0a7b6640ece861b6f0ef74112
Reviewed-on: https://gerrit.libreoffice.org/29073
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
2016-09-20 07:34:27 +00:00
Noel Grandin
a2b77b4368 loplugin:singlevalfields in basic..idl
Also fix obvious bug in the initialisation of the
connectivity::odbc::OConnection::m_bClosed field.
Probably closes some kind of connection leak there.

Change-Id: I04579cf91bcd6d6c51c697d83971da4142743a82
Reviewed-on: https://gerrit.libreoffice.org/28932
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-09-16 08:30:26 +00:00
Stephan Bergmann
2b4d13f135 Reduce scope of variable
Change-Id: Ib3669c8946b431b845bcb217e7cf4a5f7a89177f
2016-08-23 12:17:35 +02:00
Krishna Keshav
26d314d2e2 tdf#99589 tolower / toupper - dangerous to Turks ...
Used toAsciiUpperCase() from character.hxx

Change-Id: I79f4638866daf8952103c8a521db925150e8dcda
Reviewed-on: https://gerrit.libreoffice.org/24709
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Michael Meeks <michael.meeks@collabora.com>
2016-05-09 09:30:27 +00:00
Noel Grandin
91adb929d7 clang-tidy modernize-loop-convert in h-l/*
Change-Id: I843528327b25d18476f8959cabba16371213a48a
Reviewed-on: https://gerrit.libreoffice.org/24460
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-28 09:31:29 +00:00
Noel Grandin
e8fd5a07ec update loplugin stylepolice to check local pointers vars
are actually pointer vars.

Also convert from regex to normal code, so we can enable this
plugin all the time.

Change-Id: Ie36a25ecba61c18f99c77c77646d6459a443cbd1
Reviewed-on: https://gerrit.libreoffice.org/24391
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-26 10:55:58 +00:00