Age | Commit message (Collapse) | Author |
|
...as MSVC would warn about those anyway.
Change-Id: If22dfd35bc01aff1a1bef68702c616e711db42fb
|
|
...as MSVC would warn about those anyway (at least about cases that do not
compare against literal sal_True/sal_False, but warning even about those helped
clean up lots of redundant
if (foo == true)
instead of just
if (foo)
etc. across the code base).
Change-Id: Iad4b335c35c5411070f04f87f974db7942c288d4
|
|
Change-Id: If5c104adc05aa362d15cedf6f8953bda478897bc
|
|
Change-Id: I011e74fd044d0b76cccc60adea362805917c584a
|
|
...as they are often enough errors, like a typo in brace placement in
if (foo == (FOO || bar == BAR) && baz)
or a literal true passed as an argument to a function that rather expects an
integer bit mask, etc. The plugin is smart enough to detect interaction with
logically boolean return/parameter types of C functions that use [unsigned] int
instead, and knows the relevant boolean typedefs (sal_Bool, gboolean, etc.).
Change-Id: I5f0e4344fe86589bec35a71018c7effdedf85e3e
|
|
...which is typically external or generated code and causes warnings that
we cannot easily fix.
Change-Id: If86ecd96c069ec23c6b3d7f5c32bf962397393e5
|
|
Use a clang rewriter to rewrite SvStream::operator<< to methods
like WriteUInt32.
Note that the rewriter is not perfect, and hand-tweaking the output
is necessary.
Change-Id: I0291c8192ca74d6334ed3cf8cb713212b2f0c67d
Reviewed-on: https://gerrit.libreoffice.org/7307
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Michael Stahl <mstahl@redhat.com>
|
|
These are not part of LO and need to be built with native bitness
of the compiler.
Change-Id: I41fdec130a63e0c0d07f1df228031014cd2351c2
|
|
Change-Id: Ia5f104bfd707bcf4e159c78ca2764c861fb0b6d9
|
|
It is constant and can just be replaced by $(SRCDIR)/solenv.
Use BUILD_TYPE where it was used to check if config_*.mk is sourced.
Change-Id: Ib9d480c57194b6340093aa47776f8768df69b7d1
|
|
... it is an abbreviation of "Solar Version".
Since nobody can remember that:
remove OUTDIR OUTDIR_FOR_BUILD SOLARVER SOLARVERSION solarpath
and any mention thereof.
Change-Id: Idb3031c4f25a76ac05b22ec67e3ca3e1e8e512ad
Reviewed-on: https://gerrit.libreoffice.org/6515
Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|
|
Change-Id: Id1e74f18c90e69d1a781c8f02e30dc3c005ed4fd
|
|
The mass-conversion has been already done, so it's most probably
not needed anymore.
Change-Id: I3f161b8ea122e4dd185746ea29509b0d7768d6c7
|
|
Compiler plugin to replace with matching number(), boolean() or OUString ctor,
ran it, few manual tweaks, mark as really deprecated.
Change-Id: I4a79bdbcf4c460d21e73b635d2bd3725c22876b2
|
|
Apparently Clang rewriter API doesn't properly bail out if the range
given is not inside one file, so check explicitly.
Change-Id: I27be6d396a131d385231e9c0dfa8c84d9fa15ccc
|
|
Change-Id: I97519c2fb08efa2c694c9fb91a4cc402a6347c2c
|
|
Given that locations often point to a (start of) token, even if it's
e.g. getLocEnd(), this should be very useful.
Change-Id: I266e4c0a234262e99158c8f495b631f54f8a5608
|
|
Some improvements, like making it simple to actually remove a statement
or a token including its associated whitespace.
Change-Id: I02a5bd919f1fadae1dcd45a76f9d25df353ac518
|
|
...with recent Clang trunk towards 3.4
Change-Id: Ie0991c7bd560c30551aeaada426382a889b46391
|
|
Change-Id: If037eac010d3cb72ca185382232c211758d009e6
|
|
Change-Id: I0a4cfd0ddb0c03b0db95d003004195df29a3f6df
|
|
Change-Id: I60756d9054dfa5c55aeae8ddc904ddf6d67d2088
|
|
Change-Id: I5611ffd36f9c6d1560a6ada6118a1efaeb6dc522
|
|
The warn_unused attribute has been upstream to GCC and Clang, so use it if present.
Still warn about STL types if those do not use it yet (which is the status as of now).
Change-Id: I3c003e44c08d1d141e23bba38cf92e663a5ac353
|
|
Change-Id: I050019b30d2ec96bbd25916624f8cb88d72110e4
|
|
C/C++ silently converts pointers to booleans, which is presumably seen as
a good idea by lazy people, but it can occassionally silently break code
in strange ways, most notably by selecting a bool overload when no matching
overload for the pointer exists (OUStringBuffer::append() can break like that,
e.g. in ba37e4062f538db7e51d6a64ba544eeddbc567cf, other cases are
8e3bf1598fa95ac8d099e45ae4252e7654a6f590 or 28e4c0250e67a344b4d6088bdca2e680a4bffad0).
So far the plugin checks only conversions in function call arguments, there's
disabled code that could check more places, but I'm not aware so far of any place
where anything actually broke because of that, and it'd require fixups to be
explicit in some places (e.g. 'bool b = returns_pointer();' would require '!= NULL'
added), so for it'll be only the simple various and it can be made more strict if wanted.
Change-Id: I6a5d207daf925e6c2d1bf684060536795ecfcc35
|
|
Ctor bodies can also have code inside of member variables initialization,
which is not considered to be inside function body.
Change-Id: Id68960093a51396b9486f1364b1a361526c3431d
|
|
Change-Id: Ia2fe10af2ca555c7b88348e7ed571f1176586580
|
|
Change-Id: I93fa422afe7f3e1e10576dd64af9d57b2302f44e
|
|
Clang API doesn't provide this, but it's occasionally needed, and so far
the way has been inspecting the highest possible node in AST and walking down
and remembering, which is complicated, error-prone and annoying.
Change-Id: Id5b72cb5ebfc069e90efe6d673c0ef18ebcdab61
|
|
Change-Id: Ia1b443d22b3b7f6f93f1ad8c5fa760b0f1da3b83
|
|
(as occur at least in trunk Clang builds)
Change-Id: I7e74200ae1042133fa04477e39e46fd2f01cc1b0
|
|
Change-Id: I6af5236358a51a51514d646c809147db56b2464b
|
|
Change-Id: If2eb7595ca7d25f6d491e332bb3060061d3b42a7
|
|
Change-Id: I72f1a11ce86d66e773e66116c725310df77fce39
|
|
Change-Id: I8ca9b09a6ffd4b2f00740563fa9682fdabb26b3d
|
|
At the top should be stuff to set manually if needed.
Change-Id: I516ac6df8102f00f6fc34c4c87d040688fcc2e99
|
|
Change-Id: I8493afa8e2264a42fba090c9c72f36f36cb2d165
|
|
In order to help catch Clang API changes.
Change-Id: I5738f5dff405f7a2dd377c983fb32c1c7a2ff921
|
|
Also create a Clang compiler plugin to detect such cases.
Change-Id: I61ad1a1d6b1c017eeb51f226d2dde0e9bb7f1752
Reviewed-on: https://gerrit.libreoffice.org/4001
Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
|
|
A different way to do 1c0669af2f1f58e6431b5e489ac48a883e242ba7.
Sometimes one piece of code can be represented several times in the AST,
e.g. with default function arguments.
Change-Id: Ic7799fa0bd918a638bdc8ebef69e6aa91d355bdc
|
|
Change-Id: Ibc487aa78d9eba3f936b4f4cc0298adfaef60d5c
|
|
This does not always work well, e.g. when building a return value
in a return statement from a temporary, there is CXXConstructExpr
containing CXXTemporaryObjectExpr, which both share the same location.
This reverts commit 1c0669af2f1f58e6431b5e489ac48a883e242ba7.
|
|
Change-Id: Icba8dfa61aee7237af569b2414b1cf4ce93ca476
|
|
Turns out removeText( SourceRange ) treats it as a token range, so it's
not always character-exact if used for removal of only several characters
from a token (e.g. an identifier).
Change-Id: I0223d52da90f9535d9ef1d48b0f56d69131536c8
|
|
Change-Id: I71236b9ca6300372ba00c85401cf19f6c0e7ac99
|
|
Change-Id: If54a3d7047f13ae9c9345c21737a89afee645403
|
|
Needs work to actually do something useful, but the basics are there.
Change-Id: I193922f2f5572760c8c20def0f9b830138f47fef
|
|
Change-Id: I3bccfa773448e17ac3c8ece6b99f85c6d399b0cf
|
|
http://lists.freedesktop.org/archives/libreoffice/2013-March/047769.html
Change-Id: Ibba9d3dcc87d6d6eee58ab3690a8f87339d00956
|