Commit Graph

3534 Commits

Author SHA1 Message Date
2c8fe2e737 update unusedmethods plugin to deal with constructors
and fix the operator< implementations in some of the other
plugins too.

Change-Id: Ie5631e0cdc8d2a994ad2af2533cdb558a6cfc035
Reviewed-on: https://gerrit.libreoffice.org/25057
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-18 10:03:44 +00:00
a9ff36a1e9 Fix typos
Change-Id: If7262e114b5b4cd40e9c0a8929940199ea747595
Reviewed-on: https://gerrit.libreoffice.org/25025
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: jan iversen <jani@documentfoundation.org>
2016-05-16 06:18:47 +00:00
bdacf96e3a Add SAL_FALLTHROUGH, where apparently appropriate
Change-Id: Id6e230d026184ab243e994a17515f2e5539d3646
2016-05-10 17:08:02 +02:00
14cd5182c5 Replace fallthrough comments with new SAL_FALLTHROUGH macro
...which (in LIBO_INTERNAL_ONLY) for Clang expands to [[clang::fallthrough]] in
preparation of enabling -Wimplicit-fallthrough.  (This is only relevant for
C++11, as neither C nor old C++ has a way to annotate intended fallthroughs.)

Could use BOOST_FALLTHROUGH instead of introducing our own SAL_FALLTHROUGH, but
that would require adding back in dependencies on boost_headers to many
libraries where we carefully removed any remaining Boost dependencies only
recently.  (At least make SAL_FALLTHROUGH strictly LIBO_INTERNAL_ONLY, so its
future evolution will not have any impact on the stable URE interface.)  C++17
will have a proper [[fallthroug]], eventually removing the need for a macro
altogether.

Change-Id: I342a7610a107db7d7a344ea9cbddfd9714d7e9ca
2016-05-10 16:42:16 +02:00
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
e97a8f339a BASIC : Remove an useless static_cast and use make_unique
Change-Id: I32ec7e02ebf5a469db87bd2206d5fcd604b86795
Reviewed-on: https://gerrit.libreoffice.org/24720
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-08 12:02:37 +00:00
464348e82d BASIC: SbiParser Remove useless static_cast and indent the code correctly.
Change-Id: I8c7a01c3023f998785c8b719f7ae53da57ff3e47
Reviewed-on: https://gerrit.libreoffice.org/23939
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Arnaud Versini <arnaud.versini@libreoffice.org>
2016-05-07 12:01:23 +00:00
f3d9aab841 teach passstuffbyref plugin to check for..
unnecessarily passing primitives by const ref.

Suggested by Tor Lillqvist

Change-Id: I445e220542969ca3e252581e5953fb01cb2b2be6
Reviewed-on: https://gerrit.libreoffice.org/24672
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-06 06:48:38 +00:00
58a32075ca use Any constructor instead of temporaries
Change-Id: Iffb82a2cee1a28d89eeea2b905aaa14086ee475a
2016-05-04 12:39:40 +02:00
6e70103da0 While at it, delete Any functions on sal_Bool*
(at least for LIBO_INTERNAL_ONLY), to help further reduce the occurrences of
sal_Bool across the code base

Change-Id: I70654a0cb56655984c717b7b894f26c9ab47536e
2016-05-04 11:59:23 +02:00
b0388ef109 Fix typo in code
Change-Id: Ib1daf257018d5a5da90773dd39086f18666fea9f
Reviewed-on: https://gerrit.libreoffice.org/24533
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2016-05-01 09:46:58 +00:00
d15163eceb Fix typos
Change-Id: Ideafa411b53fe4a5f2e6559be10c4cb82b58a256
Reviewed-on: https://gerrit.libreoffice.org/24543
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2016-05-01 09:46:27 +00:00
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
8762aa986d clang-tidy modernize-loop-convert in b*
Change-Id: I8ac6eb59e213eafa78e3dc4578738b53e8adef5b
2016-04-21 10:27:17 +02:00
5abc669599 new plugin stylepolice
check for local variables which follow our member field naming
convention, which is highly confusing

Change-Id: Idacedf7145d09843e96a584237b385f7662eea10
2016-04-21 08:32:47 +02:00
da50c790a7 loplugin:salbool: Automatic rewrite of sal_False/True
Change-Id: Ib91f20761167ab78b68813d8877dceea5fef801f
2016-04-20 17:25:35 +02:00
a7e23e7f7b BASIC : Partially revert SbxArray simplification.
Revert partially commit 0fa6c88007f61176ac707cb5d77fd35cf1521123
(BASIC : Simplify SbxArray) to make sure SbxArray::Put add too much objects behind 65k limit.

Change-Id: I2d86f213711665f8cb522879ff78ff5bc9f42b31
Reviewed-on: https://gerrit.libreoffice.org/24223
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2016-04-19 07:41:48 +00:00
789055bc2a clang-tidy performance-unnecessary-copy-initialization
probably not much performance benefit, but it sure is good at
identifying leftover intermediate variables from previous
refactorings.

Change-Id: I3ce16fe496ac2733c1cb0a35f74c0fc9193cc657
Reviewed-on: https://gerrit.libreoffice.org/24026
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-18 07:37:31 +00:00
150ac9cf05 clean-up: unused using declarations and includes
Searched source for using declarations.
Checked if those symbols reappear in the source file,
even in comments or dead code but not in #include statements.
If they don't reappear, remove the declaration.
Remove includes whose symbol got removed.

Change-Id: Ibb77163f63c1120070e9518e3dc0a78c6c59fab0
Reviewed-on: https://gerrit.libreoffice.org/24148
Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-18 07:25:24 +00:00
0fa6c88007 BASIC : Simplify SbxArray
Change-Id: I988fcfed2b03039cbc167eaee1d09bffe42cd411
Reviewed-on: https://gerrit.libreoffice.org/24171
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-18 07:20:57 +00:00
2f3dcc44ce tdf#99357: Basic, return if .with pNode null
Program received signal SIGSEGV, Segmentation fault.
0x00002aaaaed9741e in SbiExprNode::GetVar (this=0x0) at /home/julien/lo/libreoffice/basic/source/comp/exprnode.cxx:118
118	    if( eNodeType == SbxVARVAL )
(gdb) bt
0  0x00002aaaaed9741e in SbiExprNode::GetVar (this=0x0) at /home/julien/lo/libreoffice/basic/source/comp/exprnode.cxx:118
1  0x00002aaaaed9afd6 in SbiParser::With (this=0x50eac70) at /home/julien/lo/libreoffice/basic/source/comp/loops.cxx:266
2  0x00002aaaaed9d1a7 in SbiParser::Parse (this=0x50eac70) at /home/julien/lo/libreoffice/basic/source/comp/parser.cxx:437

Change-Id: If0ecacd007a14e2ba81181da0fe472ea667c4cb7
Reviewed-on: https://gerrit.libreoffice.org/24147
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2016-04-17 13:47:07 +00:00
494bd08c48 remove tools/solarmutex.hxx
Deprecated in favour of comphelper::SolarMutex

Change-Id: I159077562660de5df25601fa471447f4b64a2cf1
Reviewed-on: https://gerrit.libreoffice.org/24079
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-15 08:09:01 +00:00
311bc1fc8b loplugin:passstuffbyref in basic
Change-Id: Ie93b33502325f00ba95ab168a445a347148f9edd
2016-04-13 13:27:51 +02:00
5304b94878 Related tdf#99089: avoid second crash
Second bt quoted in https://cgit.freedesktop.org/libreoffice/core/commit/?id=43109b751bf5fd36318de56b2fb686acc724673f
wasn't solved, try to fix it now.

Change-Id: I68484f9417ff0bf747306ac8774cad5fdf84b924
Reviewed-on: https://gerrit.libreoffice.org/24042
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2016-04-13 07:11:33 +00:00
b2706fcf9c Avoid reserved identifier
Change-Id: I0ed8754bb06328b61a41079a4f446d8dd2b61bb7
2016-04-12 15:50:19 +02:00
d29c682259 Avoid reserved identifiers
Change-Id: If64f146fd9c6417ed16d459cef39b3a2d47bfb4d
2016-04-12 15:50:19 +02:00
4c7ec9f112 cleanup: remove unused com/sun/star/uno includes
Sequence.h(xx), Any.h(xx) and Type.h(xx)
and remove unused using-declarations from these files.

Add a few missing includes provided by them.

Change-Id: I6b91b6d1fdf9d0496dd546c0aab9bdcc6831a5d4
Reviewed-on: https://gerrit.libreoffice.org/23805
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-12 06:38:26 +00:00
d036e4df85 BASIC: Remove useless static_cast from basmgr.cxx
Change-Id: If389aaabd22751908beba7dee9dbc79460692524
Reviewed-on: https://gerrit.libreoffice.org/23958
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2016-04-11 12:57:56 +00:00
a2f91994df Avoid reserved identifier
Change-Id: I6dfb2961adeb412405c58e0a0b51e130cbd3e0c3
2016-04-11 14:32:29 +02:00
f088a556ca Remove an useless check I had added
Reverts partly https://cgit.freedesktop.org/libreoffice/core/commit/?id=43109b751bf5fd36318de56b2fb686acc724673f

Change-Id: Ief7fd752d260031e243ea4304f6c55fa4dc42bfd
Reviewed-on: https://gerrit.libreoffice.org/23984
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2016-04-11 10:15:51 +00:00
f678b82f0e clang-tidy performance-unnecessary-value-param in basic
Change-Id: I997213ca28efc2df04d454ffaf3c81c9cbad09ac
2016-04-11 11:38:57 +02:00
f3dabe7507 make GetGlobalUNOConstant and GetUNOConstant take an OUString
and eliminate converting backwards and forwards between
sal_Char*/OString/OUString

Change-Id: Iaf52ce93f0e732ab338f75d21b95ab4b020a4d6f
Reviewed-on: https://gerrit.libreoffice.org/23919
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-11 06:20:10 +00:00
43109b751b tdf#99089: avoid some crashes in Basic
First stacktrace:

soffice.bin: /home/julien/compile-libreoffice/libreoffice/include/rtl/ustring.hxx:577:
sal_Unicode rtl::OUString::operator[](sal_Int32) const:
Assertion `index >= 0 && static_cast<sal_uInt32>(index) < static_cast<sal_uInt32>(getLength())' failed.
...
3  0x00002aaaab327452 in __GI___assert_fail (assertion=0x2aaaaeea62a8 "index >= 0 && static_cast<sal_uInt32>(index) < static_cast<sal_uInt32>(getLength())", file=0x2aaaaeea6260 "/home/julien/compile-libreoffice/libreoffice/include/rtl/ustring.hxx", line=577, function=0x2aaaaeea6860 <rtl::OUString::operator[](int) const::__PRETTY_FUNCTION__> "sal_Unicode rtl::OUString::operator[](sal_Int32) const") at assert.c:101
4  0x00002aaaaed91e89 in rtl::OUString::operator[](int) const (this=0x7fffffff2770, index=0) at /home/julien/compile-libreoffice/libreoffice/include/rtl/ustring.hxx:577
5  0x00002aaaaee1c66f in SbRtl_Val(StarBASIC*, SbxArray&, bool) (pBasic=0xa2a7ec0, rPar=..., bWrite=false)
    at /home/julien/compile-libreoffice/libreoffice/basic/source/runtime/methods.cxx:1792

Second stacktrace:

0x00002aaaaee6054d in printfmtstr (rStr="", rRes="", rFmt="\£0.##") at /home/julien/compile-libreoffice/libreoffice/basic/source/sbx/sbxscan.cxx:534
534             while( *pFmt != '\' );
(gdb) bt
0  0x00002aaaaee6054d in printfmtstr(rtl::OUString const&, rtl::OUString&, rtl::OUString const&) (rStr="", rRes="", rFmt="\£0.##")
    at /home/julien/compile-libreoffice/libreoffice/basic/source/sbx/sbxscan.cxx:534
1  0x00002aaaaee617ce in SbxValue::Format(rtl::OUString&, rtl::OUString const*) const (this=0xb12dd60, rRes="", pFmt=0x7fffffff20e0)
    at /home/julien/compile-libreoffice/libreoffice/basic/source/sbx/sbxscan.cxx:883
2  0x00002aaaaee217af in SbRtl_Format(StarBASIC*, SbxArray&, bool) (pBasic=0xa2cffa0, rPar=..., bWrite=false)
    at /home/julien/compile-libreoffice/libreoffice/basic/source/runtime/methods.cxx:3519

Change-Id: I1798a1545ce08efa9d6fc39f4696195f9dc96c67
Reviewed-on: https://gerrit.libreoffice.org/23956
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2016-04-10 08:17:56 +00:00
ba95e61314 fix bug in SbxArray::Merge
bug was recently introduced by
commit a5c232831395f8987a8395816c5a60105a52b6a0
"BASIC: Store directly SbxVarEntry in SbxArray"

bug was found by clang-tidy

Change-Id: Ibcce6d6024ac60eb143cd873760586a7f6231858
Reviewed-on: https://gerrit.libreoffice.org/23890
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Michael Stahl <mstahl@redhat.com>
2016-04-07 21:03:30 +00:00
c83173940a Avoid reserved identifier
Change-Id: I2f8dc470100e91841eebbe1e3b02a3d31ab3a535
2016-04-06 08:31:46 +02:00
45adae8fd6 Avoid reserved identifiers
Change-Id: Ibba1a36d4f3744fa68f7e9d0076c997e076262cb
2016-04-06 08:31:46 +02:00
f7a3bdf623 Turn SbiOpcode into scoped enum
Change-Id: I75d808dd3a42e57e7f55bad97e24fef65bb62dc6
2016-04-06 08:31:46 +02:00
7beeced463 Avoid reserved identifiers
Change-Id: I3fbc7cb107bdab770d5ce9ed3ecddb962d2d4666
2016-04-06 08:31:46 +02:00
c1e4d402c6 BASIC : Use a vector to store the argv stack
Change-Id: I29c93aec598b7f784f549ce05f6b32dfabbfc3ad
Reviewed-on: https://gerrit.libreoffice.org/23815
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Arnaud Versini <arnaud.versini@libreoffice.org>
2016-04-04 19:44:19 +00:00
8c2f2e1dd7 tdf#94306 replace boost::noncopyable in ..
.. accessibility, avmedia, basctl, basic and bridges
remove boost from module if not needed anymore

Change-Id: I6177f8276766a0a7df1703e81bf1b448912df6e2
Reviewed-on: https://gerrit.libreoffice.org/23744
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2016-04-04 06:54:36 +00:00
c20cc7e79b tdf#97499 Fixed containers parameters clearing #4
Change-Id: I7c96181399f4d7e62d4aceca404b22d68f903513
Reviewed-on: https://gerrit.libreoffice.org/23754
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-04 05:49:06 +00:00
362ab03eb2 tdf#97499 Fixed containers parameters clearing #2
Change-Id: I2e77c3b33ae3b8a49a7890cac77be566391972f2
Reviewed-on: https://gerrit.libreoffice.org/23751
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-04 05:44:36 +00:00
917e3656e9 BASIC : Use a vector to store the go sub stack.
Change-Id: I80987f3f7c036279a8292a7fbbd2dcd232196226
Reviewed-on: https://gerrit.libreoffice.org/23753
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Arnaud Versini <arnaud.versini@libreoffice.org>
2016-04-03 17:34:04 +00:00
0b8e5ca5a2 tdf#97966 Drop 'static' keywords
Including no keywords from extern "C" blocks

Change-Id: Id0304994a692f1004993dda2ffd7fb819ab8e8d0
Reviewed-on: https://gerrit.libreoffice.org/23670
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
2016-04-01 06:44:05 +00:00
402572e25c loplugin:constantparam in basic
Change-Id: I6831cb8628eed76db35070934f62dccb1345ba12
2016-03-23 11:22:34 +02:00
a62ad21f98 BASIC: Calling SbxDimArray::Clear should also call SbxArray.
Change-Id: I832a192bbb3ddd2d32d80f22ae8f2cf95e3edfb7
Reviewed-on: https://gerrit.libreoffice.org/23192
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Arnaud Versini <arnaud.versini@libreoffice.org>
2016-03-20 13:45:06 +00:00
bb3930bb91 BASIC : Use std::vector in SbiRuntime to save references
Change-Id: Ica819538b39e58416825e651d057620a66f731cd
Reviewed-on: https://gerrit.libreoffice.org/23193
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Arnaud Versini <arnaud.versini@libreoffice.org>
2016-03-20 12:56:04 +00:00
8ca50d20c1 loplugin:constantparam in tools
Change-Id: I3774661799c074561c694515baba42a375d0a077
Reviewed-on: https://gerrit.libreoffice.org/23301
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-03-17 06:09:42 +00:00
4530bc5079 coverity#1355498 assume Unchecked return value is deliberate
Change-Id: I8b0597a5ab87d4d4529e3ccc097902486a41e957
2016-03-14 21:00:35 +00:00
a139320da2 deref of null
regression from

commit f17a4694b07856292804c23b80ce92967d401bb8
Author: Arnaud Versini <arnaud.versini@gmail.com>
Date:   Sat Feb 13 20:17:41 2016 +0100

    BASIC : use std::unique_ptr for storing SbiExprList

    Change-Id: I37f2a1c837c6742cf6d403962d2730b5e80004ec
    Reviewed-on: https://gerrit.libreoffice.org/22345

because they have been moved into the container at this
point

Change-Id: If21e0321ffdce66aa9629637d0ff8c16efbbd25e
2016-03-09 15:16:07 +00:00