Commit Graph

32 Commits

Author SHA1 Message Date
Stephan Bergmann
b4c9c0d137 More clang::*Type vs. llvm::*Type ambiguities
Change-Id: I21133976793ab018c633dda077029666308526db
2017-09-11 10:48:12 +02:00
Stephan Bergmann
df8d092c3a Adapt pathname checks to mixed usage of \ and / on Windows
Change-Id: I91bc89a9076c6642e06b238f65f2d31a1d20c6b5
2017-05-18 09:56:01 +02:00
Stephan Bergmann
0f4f5621d1 Use compat::isLookupContext
Change-Id: I5b4523929f971d0345f112ba4f5faff1181cee2b
2017-01-16 10:26:03 +01:00
Stephan Bergmann
ad9cfbcf02 Don't exclude a var from loplugin:salbool merely because of use in >>=
Change-Id: I1b8a3dfa1dc6b351ab0903a74eae19dfa6d0888d
2017-01-05 09:17:47 +01:00
Stephan Bergmann
385f624027 Prevent use of ORowSetValue with sal_Bool as TINYINT
sal_Bool and sal_uInt8 are typedefs for the same underlying type, so any use of
ORowSetValue with sal_Bool instead of bool, apparently intending to treat the
value as a boolean, actually treated it as a TINYINT.  (See e.g. recent
7b0c57b2fa "some compilers don't like implicit
bool-to-ORowSetValue conversion".)

Now that there's no way to create a sal_uInt8 ORowSetValue, getUInt8 and the
m_uInt8 union member can probably go away, too.

Change-Id: Ia27554f76e7e9edce6410284b578064573e54fd3
Reviewed-on: https://gerrit.libreoffice.org/31909
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2016-12-12 18:02:57 +00:00
Noel Grandin
40fd53a238 loplugins: extract some common functionality
Change-Id: If470e1d9b481c9eda0829aa985152baf8fb46d7a
2016-10-18 08:51:07 +02:00
Andrea Gelmini
943919692e Fix typos
Change-Id: I8374d6d08f4eb4ae2821e213371c615b92d7e9ab
Reviewed-on: https://gerrit.libreoffice.org/29432
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-10-01 19:02:02 +00:00
Stephan Bergmann
6f8d047519 loplugin:salbool: Better heuristic to determine code shared between C and C++
Change-Id: I09c9c57d5adeb665cc2508fad9727085a3289bfb
2016-07-11 16:32:28 +02:00
Stephan Bergmann
733198de1b Remove support for Clang < 3.4
Change-Id: I81e97c5f720535b33dd3ce72d01151765e4e93a0
2016-06-29 09:15:25 +02:00
Stephan Bergmann
1ce7176ba1 Remove support for Clang < 3.3
Change-Id: I185852a738bac10dc6d331afccfcbc7ae1225cb1
2016-06-29 08:55:27 +02:00
Stephan Bergmann
0d3738a258 More Clang 3.4 "(anonymous namespace)" fixes
Change-Id: I7cb43f915565dadd611b90ee30373e472f97efb5
Reviewed-on: https://gerrit.libreoffice.org/26748
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
2016-06-28 20:33:58 +00:00
Stephan Bergmann
82da3d95c1 loplugin:salbool: Implicit conversions from non-Boolean fundamental types
Change-Id: I67eac95686678e6f5a2d60798535b2c65a9ba5d7
2016-06-19 21:29:43 +02:00
Stephan Bergmann
783419657c loplugin:salbool: sal_Bool[] -> bool[]
Change-Id: I3c5bf7a53c9ae173f8fce885ecf022f092aa43a9
2016-04-21 17:29:40 +02:00
Stephan Bergmann
8d934b73cc Better fix for 13758a3d15
"SourceManager::isMacroArgExpansion has only one param in older Clang", which
caused false positives like warning about sal_False in

  CPPUNIT_ASSERT_EQUAL(guard.p->m1, sal_False);

in cppu/qa/cppumaker/test_cppumaker.cxx

Change-Id: I1c5a67527aef381e336d71cb8fefbb87961bbf96
2016-04-21 12:05:48 +02:00
Stephan Bergmann
13758a3d15 SourceManager::isMacroArgExpansion has only one param in older Clang
Change-Id: I5aa4f7cca70b8196263613b92c018323152411a1
2016-04-21 08:51:40 +02:00
Stephan Bergmann
e8425c4810 loplugin:salbool: Warn about uses of sal_False/True
...that can generally be rewritten as false/true, and sometimes could hide
errors, see e.g. <5be5f00fe16b0e255b31fbaba5f119773d1cd071> "So this is
apparently about right-to-left levels, not a boolean flag".

Change-Id: Ib39a936a632c2aab206f24c346252e31dcbb98f3
2016-04-20 17:27:33 +02:00
Stephan Bergmann
7024c86b17 Extract checking code to its own check.cxx
Change-Id: I9d5b14c374ce62ac7b970faa30c38a5a76568ed4
2016-03-08 21:37:42 +01:00
Stephan Bergmann
1316543eb8 TODO: Work around loplugin:salbool in cppu/source/uno/data.cxx for now
Change-Id: I1730c09669426e049aba941ef27341581ce31887
2016-03-08 18:16:58 +01:00
Stephan Bergmann
01f3b95884 These version checks are about the Clang the plugins are built /against/
...not the (Clang) compiler they are being built /with/.  (Also simplifies the
checking #if code.)

Change-Id: I416321be4ef4478785be40571f81500fd3b6feb8
2016-02-26 14:34:29 +01:00
Michael Stahl
7ef698a47b compilerplugins: fix warning message copy-pasta
Change-Id: I3b845ae46b0d0b14be90382727cc02a838a0392e
2015-10-30 16:09:37 +01:00
Stephan Bergmann
78ad5ecd98 Clean up isMacroBodyExpansion
Change-Id: I745b320dd5f44d54371d8a0b961c49793e3e0ad6
2015-03-28 19:16:47 +01:00
Stephan Bergmann
193957750a Adapt compilerplugins to Clang trunk towards 3.7
Change-Id: I5b41039bf63a4c2f313fe7a57c0f6934dcb0752d
2015-02-26 17:22:01 +01:00
Stephan Bergmann
a995f82799 Remove excess [%1 %2] that doesn't match any arguments
...and is apparently a leftover from temporary debug output in
e36badb98d "Fix workaround for bug in Clang 3.2
FunctionDecl::isInlined."

Change-Id: I3213981c5d236a7b67083014692566f75a2bcd51
2014-10-01 17:35:12 +02:00
Stephan Bergmann
8ab9ea00b6 ...and another
Change-Id: If9d85236177c819c159d1b836e806fc2b03da45c
2014-09-16 09:35:07 +02:00
Stephan Bergmann
e36badb98d Fix workaround for bug in Clang 3.2 FunctionDecl::isInlined
Change-Id: I9b0b6affc60ae030b644fdd13eecfb1aed1f472a
2014-09-16 09:14:29 +02:00
Stephan Bergmann
037a1adac9 Work around bug in Clang 3.2 FunctionDecl::isInlined
Change-Id: I214a9745f27c27868b3e74785cf7138fc1db1943
2014-09-15 18:48:17 +02:00
Stephan Bergmann
8dccc4d9b7 loplugin:salbool env var is no longer necessary, all code is clean
Change-Id: Ibf1d8c74dc8abb8c1fef59c53a8873cc426e2932
2014-09-15 17:12:08 +02:00
Stephan Bergmann
e333adb1ff loplugin:salbool: exclude sal_Bool vars passed to non-const ref
Change-Id: I45b323b326cc56cfc48e0abaa52d51fd86adbf79
2014-09-12 14:46:54 +02:00
Stephan Bergmann
4da8281d5a compat for Clang 3.2
Change-Id: I2746abd05edd00dadfe613c17b9874b1035c3be4
2014-07-02 19:19:17 +02:00
Stephan Bergmann
0e8d69fa7d Make configmgr loplugin:salbool-clean
Change-Id: Ib1f33387c50bcd853140eb2fc46995d23d7f367b
2014-07-02 18:48:18 +02:00
Stephan Bergmann
6397b93eb3 loplugin:salbool: Fix handling of potentially overriding functions
Change-Id: I63d00cf5ab1dac953fae07ca4eb4d987610551a2
2014-07-02 17:03:54 +02:00
Stephan Bergmann
9263b101c3 Activate the "suspicious cast to sal_Bool" parts of loplugin:salbool
Change-Id: I78a368ef2899b2462251b45a327fc7b1f31fe764
2014-07-01 17:49:10 +02:00