On 14-03-28 10:31 AM, Pavel Roschin wrote:
Am 28.03.2014 10:00, schrieb Lex Trotman:
On 28 March 2014 19:46, Frank Lanitz frank@frank.uvena.de wrote:
Am 28.03.2014 01:10, schrieb Lex Trotman:
The one you made on Geanypy has already been improved by upstream (Matthew) so you should just commit that improvement.
I was planning to have a look onto it Sunday (you mean #116, don't you?). But this is not a feature, only kind of a bug fix ;)
Yep that one, I guess its more a feature since there is no bug (in Geanypy), more its a bug in cppcheck :)
... well.... puh... At least it's not changing any string ;) However, will do it at the weekend.
cheers, Frank _______________________________________________ Devel mailing list Devel@lists.geany.org https://lists.geany.org/cgi-bin/mailman/listinfo/devel
Here is definitely false-positeve. cppcheck was confused by a terrible define: return operator inside... Without return operator of course here could be a bug.
Good static analyzer (eg. clang's static analyzer) can expand macros and would see the return. Maybe we could/should preprocess the code before we cppcheck it?
IIRC Py_RETURN_NONE just expands to something like
Py_INCREF(Py_None); return Py_None;
I'm not opposed to using the full code like this, it's maybe a little nicer than the "fix" I mentioned in the PR comment, but IIRC there are multiple places where `Py_RETURN_NONE` and `Py_RETURN_TRUE/FALSE` are used like this that might also need to be updated.
Cheers, Matthew Brush
On 14-03-28 10:31 AM, Pavel Roschin wrote:
Am 28.03.2014 10:00, schrieb Lex Trotman:
On 28 March 2014 19:46, Frank Lanitz frank@frank.uvena.de wrote:
Am 28.03.2014 01:10, schrieb Lex Trotman:
The one you made on Geanypy has already been improved by upstream (Matthew) so you should just commit that improvement.
I was planning to have a look onto it Sunday (you mean #116, don't you?). But this is not a feature, only kind of a bug fix ;)
Yep that one, I guess its more a feature since there is no bug (in Geanypy), more its a bug in cppcheck :)
... well.... puh... At least it's not changing any string ;) However, will do it at the weekend.
cheers, Frank _______________________________________________ Devel mailing list Devel@lists.geany.org https://lists.geany.org/cgi-bin/mailman/listinfo/devel
Here is definitely false-positeve. cppcheck was confused by a terrible define: return operator inside... Without return operator of course here could be a bug.
Good static analyzer (eg. clang's static analyzer) can expand macros and would see the return. Maybe we could/should preprocess the code before we cppcheck it?
IIRC Py_RETURN_NONE just expands to something like
Py_INCREF(Py_None); return Py_None;
I'm not opposed to using the full code like this, it's maybe a little nicer than the "fix" I mentioned in the PR comment, but IIRC there are multiple places where `Py_RETURN_NONE` and `Py_RETURN_TRUE/FALSE` are used like this that might also need to be updated.
Cheers, Matthew Brush _______________________________________________ Devel mailing list Devel@lists.geany.org https://lists.geany.org/cgi-bin/mailman/listinfo/devel
cppcheck has ability to search includes, just add option -I<path-to-python-include-dir> like for compiler But it will increase checking time significantly. Other way - create simple header file with this define implementation and use it with --include option.
-- Best regards, Pavel Roschin aka RPG