Commit Graph

4510 Commits

Author SHA1 Message Date
semmle-qlci
945413a791 Merge pull request #42 from tibbes/qhelp/fix-links
Approved by jbj, xiemaisi
2018-08-10 13:00:17 +01:00
Julian Tibble
98e866e967 C++, JS: fix broken links in query help 2018-08-10 08:40:22 +01:00
Robert Marsh
31819be32d C++: add security tags to some format queries 2018-08-09 13:31:29 -07:00
Jonas Jensen
961a7dcf15 C++ IR: Remove Instruction.hasUse predicate
Now that it's been simplified to be the same as `getOperand`, it doesn't
seem to have a purpose.
2018-08-09 15:36:52 +02:00
Jonas Jensen
8c06a68835 C++ IR: Remove redundant check for same function
The check that an instruction is in the same function as its operands is
hopefully redundant and can be removed. Just to be sure, I've added the
check to a sanity query.

This check turned out to cause bad performance in the alias analysis
because it got inlined into `AliasAnalysis::resultEscapes` and then
pulled out to a loop-invariant predicate that got a bad join order. With
this check removed, the `ssa/AliasAnalysis.qll` file is orders of
magnitude faster.
2018-08-09 15:36:52 +02:00
Robert Marsh
bf39674761 C++: remove accidental blank line 2018-08-08 14:17:35 -07:00
Robert Marsh
f280de7ae3 C++: add security tags to more queries 2018-08-08 13:55:36 -07:00
Jonas Jensen
dab45c527e C++: cpp/incomplete-parity-check: medium precision
As reported in CPP-236, this query has false positives on signed
integers that cannot be negative. It could possibly be improved with a
local range analysis, but the query would most likely still have so many
false positives that we would have to lower its precision.

Under our current policy, this change will make the query hidden by
default on LGTM.
2018-08-08 10:14:45 +02:00
Robert Marsh
6546b37d5d C++: handle more macros in UseInOwnInitializer 2018-08-06 11:40:35 -07:00
Pavel Avgustinov
b55526aa58 QL code and tests for C#/C++/JavaScript. 2018-08-02 17:53:23 +01:00