i.e lots now able to be detected after...
commit b44cbb26efe1d0b0950b1e1613e131b506dc3876
Author: Noel Grandin <noel@peralex.com>
Date: Tue Jan 20 12:38:10 2015 +0200
new loplugin: change virtual methods to non-virtual
Where we can prove that the virtual method is never overriden.
In the case of pure-virtual methods, we remove the method entirely.
Sometimes this leads to entire methods and fields being
eliminated.
Change-Id: I605e2fa56f7186c3d3a764f3cd30f5cf7f881f9d
This cleanups up indentation and removes dead classes.
This is a followup patch to commit
272b1dd55797aacf511fb4342b0054e3697243f6
"new loplugin: change virtual methods to non-virtual"
Change-Id: I1c2139589cf8cb23bb9808defe22c51039d38de1
Where we can prove that the virtual method is never overriden.
In the case of pure-virtual methods, we remove the method entirely.
Sometimes this leads to entire methods and fields being
eliminated.
Change-Id: I138ef81c95f115dbd8c023a83cfc7e9d5d6d14ae
Second or later compilation uses value type returned by previous execution of code.
Use the defined type as return value of the runtime function of Basic always.
(cherry picked from commit 7470c682e136a4a89c1e9474bbc79b2d61f31048)
Conflicts:
basic/inc/basic/sbxmeth.hxx
basic/inc/basic/sbxobj.hxx
basic/source/runtime/stdobj.cxx
basic/source/sbx/sbxobj.cxx
Change-Id: I3064e8403286a9c1401ef658bf139bedeae11f17
Also note that I fixed a bug in SvxFontMenuControl::Notify
where the if statement had the check the wrong way around.
Change-Id: I611e8929c65818191e36bd80f2b985820ada4411
Reviewed-on: https://gerrit.libreoffice.org/11147
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
Tested-by: Norbert Thiebaud <nthiebaud@gmail.com>
Also remove the tools/solar.h included from tools/debug.hxx. The include of solar.h
header was necessary in some cases because of a macro or a typedef that was needed.
Change-Id: Ia6e15d5c2571c58c9e9138b0d0a7f08ae88053c9
Reviewed-on: https://gerrit.libreoffice.org/11075
Reviewed-by: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
Tested-by: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
Find places where we are returning a pointer to something, where we can
be returning a reference.
e.g.
class A {
struct X x;
public X* getX() { return &x; }
}
which can be:
public X& getX() { return x; }
Change-Id: I796fd23fd36a18aedf6e36bc28f8fab4f518c6c7
To prevent rogue DocBasicItem objects (which are global objects) from
attempting to stop listening after the main app is dead.
Change-Id: I68a667137ca4e0eff18278f4d2d5dd67466eaf34
It appears that the C++ standard allows overriding destructors to be marked
"override," but at least some MSVC versions complain about it, so at least make
sure such destructors are explicitly marked "virtual."
Change-Id: I0e1cafa7584fd16ebdce61f569eae2373a71b0a1
Converted wrong usage of sal_uIntPtr to appropriate other types in basic
module.
The bug is not fully fixed with this since many other occurences of sal_uIntPtr remain.
Update due to code review comments:
Fixed forgetting to change some declarations in iosys.cxx.
Cleaned up the one remaining sal_uIntPtr in iosys.cxx
Fixed adding a sal_uInt64 to a Date (uses long now instead) in methods.cxx
Fixed the VarDecFromUI4 call in sbxdec.cxx from sal_uLong to ULONG .
Conflicts:
basic/source/runtime/iosys.cxx
Change-Id: Ia6460be04967deb68b92eb62d945da8814fae605
...mostly done with a rewriting Clang plugin, with just some manual tweaking
necessary to fix poor macro usage.
Change-Id: I71fa20213e86be10de332ece0aa273239df7b61a