Commit Graph

19777 Commits

Author SHA1 Message Date
semmle-qlci
9995c12132 Merge pull request #2144 from shati-patel/monospace-links
Approved by jf205
2019-10-17 11:55:58 +01:00
Taus Brock-Nannestad
067bdf5ec4 Python: Disregard packages when looking for cyclic imports. 2019-10-17 12:47:34 +02:00
Shati Patel
54d7bba3dd Docs: Remove unused styling 2019-10-17 11:31:35 +01:00
Jonas Jensen
9bc7ce1fac Merge pull request #2141 from geoffw0/newtest
CPP: AV Rule 114 test cases
2019-10-17 09:28:10 +02:00
Esben Sparre Andreasen
93b1e59d62 JS: fix spelling: sanitisers -> sanitizers 2019-10-17 09:05:03 +02:00
Robert Marsh
30d7238921 C++: fix missing getPrimaryInstruction 2019-10-16 17:05:37 -07:00
Robert Marsh
fffe3c2432 C++: add sanity test for side effect primaries 2019-10-16 16:53:55 -07:00
Robert Marsh
6cef936046 C++: add function info to duplicateChiOperand 2019-10-16 15:59:00 -07:00
Dave Bartolomeo
6e61b1dcd0 C++: Fix up after merge from master
The one interesting piece that needed to be fixed up was the type of an `Indirect[Read|Write]SideEffect` operand/result. If the parameter type is a pointer or reference to an incomplete type, we need to set the type of the side effect memory access to `Unknown`, because we don't model incomplete types in the IR type system.

I also added minimal support for `__assume` (generated as a `NoOp`), because lack of `__assume` support got in the way of debugging the other issue above.
2019-10-16 15:55:56 -07:00
Ziemowit Laski
fb625c12ef [CPP-434] Move SignedOverflowCheck test to BadAdditionOverflowCheck directory; add additional tests. 2019-10-16 14:31:11 -07:00
Robert Marsh
3c127fb829 C++/Docs: expand on VN/HC and add wikipedia links 2019-10-16 13:09:36 -07:00
Robert Marsh
0cc0977a09 C++/Docs: more examples and rewording for guards 2019-10-16 12:45:59 -07:00
Dave Bartolomeo
167d2289c4 Merge from master 2019-10-16 10:10:10 -07:00
Max Schaefer
dfed7502b6 Merge pull request #2142 from Semmle/jf205-patch-1
docs: update path to support docs in readme.md
2019-10-16 16:58:34 +01:00
James Fletcher
d1a8152f29 update path to support docs in readme.md 2019-10-16 16:55:28 +01:00
semmle-qlci
280a62ed30 Merge pull request #2138 from Semmle/xiemaisi-patch-1
Approved by erik-krogh
2019-10-16 15:14:29 +01:00
Pavel Avgustinov
7fa6c54731 Merge pull request #2119 from hmakholm/pr/qlpacks
Add qlpack.json files
2019-10-16 14:27:10 +01:00
Geoffrey White
6f96d1759f Merge pull request #2077 from jbj/cfg-enable-pr
C++: enable the QL-based CFG code
2019-10-16 14:06:22 +01:00
Geoffrey White
5f1fdd08a7 CPP: Post-2115. 2019-10-16 13:51:06 +01:00
Geoffrey White
096af3c3f3 CPP: Add test cases involving __builtin_complex. 2019-10-16 13:46:11 +01:00
Tom Hvitved
c57015af7d C#: Data-flow pruning based on call contexts 2019-10-16 13:51:32 +02:00
Max Schaefer
f963ebcddc JavaScript: Remove stray comma from @tags. 2019-10-16 12:42:33 +01:00
Tom Hvitved
853cbd8728 C#: Add dataflow tests exhibiting missing call-context based pruning 2019-10-16 13:39:35 +02:00
Max Schaefer
712762481c Merge pull request #2001 from esben-semmle/js/identity-escape
JS: add query js/useless-regexp-character-escape
2019-10-16 10:27:50 +01:00
Geoffrey White
33ae7ee802 Merge pull request #2130 from jbj/cfg-pos-int
C++: Implement Pos and Spec as int, not newtype
2019-10-16 09:56:14 +01:00
Jonas Jensen
bca1be0601 Merge pull request #2135 from zlaski-semmle/zlaski/memset-model
[zlaski/memset-model] Add side effect modeling to Memset.
2019-10-16 08:49:24 +02:00
Esben Sparre Andreasen
e1d7434be4 JS: add query js/useless-regexp-character-escape 2019-10-16 00:15:54 +02:00
Ziemowit Laski
fcc1938143 [zlaski/memset-model] Ctrl+Shift+F. 2019-10-15 15:03:58 -07:00
Ziemowit Laski
2ca52a4124 [zlaski/memset-model] Add side effect modeling to Memset. 2019-10-15 14:43:39 -07:00
Robert Marsh
9aea2eda9b Apply suggestions from code review
Co-Authored-By: James Fletcher <42464962+jf205@users.noreply.github.com>
2019-10-15 14:11:45 -07:00
Jonas Jensen
25130f200b Merge pull request #2132 from hmakholm/pr/gitignore-codeql
.gitignore += codeql
2019-10-15 21:57:39 +02:00
Henning Makholm
12c44b1994 .gitignore += codeql
It is useful (though not necessary) to be able to place codeql in a Semmle/ql checkout.
2019-10-15 20:59:14 +02:00
Jonas Jensen
4c15ea581a C++: Autoformat CFG.qll 2019-10-15 19:32:55 +02:00
igfoo
61d21c1ec0 Merge pull request #2127 from matt-gretton-dann/cpp-451-invalid_key-for-var_decls-fun_decls
Use correct keysets for var_decls and fun_decls
2019-10-15 17:56:04 +01:00
yh-semmle
5aced3e432 Merge pull request #2128 from AlexTereshenkov/move-qll-java
Move qll file to support import from custom QL queries
2019-10-15 11:39:10 -04:00
Sam Lanning
54af67c40f Merge pull request #2126 from AlexTereshenkov/issue-template-general
Add general question issue template
2019-10-15 08:26:24 -07:00
Shati Patel
a2162ba6f3 Docs: Update some more links 2019-10-15 16:19:18 +01:00
Shati Patel
1a319b03cd Docs: Update links to language specification 2019-10-15 16:02:45 +01:00
Anders Schack-Mulligen
309961d493 Merge pull request #2118 from yh-semmle/java-non-sync-override
Java: restrict `java/non-sync-override` to immediate overrides
2019-10-15 16:40:00 +02:00
Jonas Jensen
a9984e9d8b C++: Implement Pos and Spec as int, not newtype
This change gives a slight performance improvement and makes the QL code
shorter. It introduces some magic numbers in the code, but those are
confined to the `Pos` and `Spec` classes.

We get a speed-up because the evaluator has built-in support for integer
literals in the `OUTPUT` of `JOIN` operations, whereas `newtype`s have
to be explicitly joined on. As a result, a predicate like
`CFG::straightLineSparse#ffff` drops from 262 pipeline nodes to 242.

I measured performance on https://github.com/jluttine/suitesparse, which
is one of the projects that had the biggest slowdown when enabling the
QL CFG on lgtm.com. I took two measurements before this change and two
after. The `CFG.qll` stage took 117s and 112s before, and it took 106s
and 107s after.
2019-10-15 16:22:37 +02:00
alexey
715f1ddaca Move qll file to support import from custom QL queries 2019-10-15 14:55:09 +01:00
Matthew Gretton-Dann
692c29d095 C++: Test fun_decl for INVALID_KEYs 2019-10-15 14:47:32 +01:00
Matthew Gretton-Dann
0f6d64e27e C++: Update schema stats 2019-10-15 14:42:57 +01:00
Matthew Gretton-Dann
e4174ff610 C++: Add schema upgrade script 2019-10-15 14:42:57 +01:00
Matthew Gretton-Dann
f98d20c33a C++: Update var_decls, fun_decls keysets. 2019-10-15 14:42:57 +01:00
Tom Hvitved
b142113037 Merge pull request #2087 from calumgrant/cs/localexprflow
C#: Implement localExprFlow and localExprTaint
2019-10-15 15:33:50 +02:00
Tom Hvitved
3f170142c9 Merge pull request #2086 from calumgrant/cs/indexer-detection
C#: Fix an InvalidCastException
2019-10-15 15:33:32 +02:00
alexey
a2478296db Add general question issue template 2019-10-15 12:13:45 +01:00
Rasmus Wriedt Larsen
d3f3cefa54 Python: Autoformat (4 spaces) falcon library 2019-10-15 11:23:51 +02:00
Rasmus Wriedt Larsen
7a112f37cb Python: Modernise falcon library 2019-10-15 11:22:46 +02:00