zlaski-semmle
8896fa5bc9
Merge pull request #1924 from geoffw0/quickfix
...
CPP: Tiny qldoc fixes.
2019-10-09 14:52:54 -07:00
Anders Schack-Mulligen
e123f97303
Java: Remove useless pruning.
2019-10-09 09:35:30 +02:00
Jonas Jensen
daabb2c5d0
Merge pull request #2082 from rdmarsh2/rdmarsh/cpp/ir-getASTVariable
...
IR: add getASTVariable to VariableInstruction
2019-10-09 08:56:01 +02:00
Ziemowit Laski
e617a05a1f
[CPP-434] One bad usage is undetected; adjust test accordingly.
2019-10-08 17:20:25 -07:00
Ziemowit Laski
bd87d7bc76
[CPP-434] Switch to global value numbering (GVN). Improve qlhelp doc.
2019-10-08 16:33:05 -07:00
Ziemowit Laski
afa34b5054
[CPP-434] Improvements to Qhelp; hashCons-ify query.
2019-10-08 14:12:35 -07:00
Ziemowit Laski
872054a89a
[CPP-434] Narrow down query.
2019-10-08 14:12:35 -07:00
Ziemowit Laski
341dc12fc8
[CPP-434] Adjust expected output.
2019-10-08 14:12:35 -07:00
Ziemowit Laski
16411d1b6e
[CPP-434] Remove references to underflow and subtraction.
2019-10-08 14:12:35 -07:00
Ziemowit Laski
8c6caf2b4e
[CPP-434] Rename everything to SignedOverflowCheck. Add .qlhelp. Deal with addition only, not subtraction.
2019-10-08 14:12:35 -07:00
Ziemowit Laski
c9a9aff221
[CPP-434] Expected result.
2019-10-08 14:12:35 -07:00
Ziemowit Laski
55c26a8880
[CPP-434] Initial version of query + test cases.
2019-10-08 14:12:34 -07:00
Anders Schack-Mulligen
5e0ce81030
Java: Refactor to improve join-pipeline.
2019-10-08 17:15:06 +02:00
Jonas Jensen
5d7a0b8dd5
Merge remote-tracking branch 'upstream/master' into dataflow-ref-parameter
...
I've accepted the new test output, which shows that this branch fixes
two false negatives in the test cases from #2088 .
2019-10-08 13:09:20 +02:00
Jonas Jensen
19f642fc8d
Merge commit '7434702' into dataflow-ref-parameter
...
This merges #1735 into this branch to resolve the semantic merge
conflicts between them.
2019-10-08 12:55:47 +02:00
Anders Schack-Mulligen
20084fb3c0
Java: Fix pruning in partialPathStep.
2019-10-08 11:28:53 +02:00
Anders Schack-Mulligen
bf14889077
Java: Refactor to improve performance.
2019-10-08 11:28:35 +02:00
Robert Marsh
7fa367d6cf
C++: autoformat
2019-10-07 16:37:35 -07:00
Robert Marsh
5c084f8b39
C++: respond to more PR comments
2019-10-07 14:17:56 -07:00
Robert Marsh
b60e7c204d
C++: autoformat and accept test output
2019-10-07 14:07:25 -07:00
Anders Schack-Mulligen
f8123679a1
Java: Qldoc updates.
2019-10-07 16:12:31 +02:00
Anders Schack-Mulligen
75ebc098bb
Java: Fix semantic merge conflict.
2019-10-07 15:42:26 +02:00
Anders Schack-Mulligen
b581e38782
Java: Autoformat and sync post rebase.
2019-10-07 15:26:39 +02:00
Tom Hvitved
ee5503146e
Add stub implementations for isUnreachableInCall()
2019-10-07 15:13:49 +02:00
Tom Hvitved
eabfa31767
Synchronize data flow files
2019-10-07 15:13:48 +02:00
Robert Marsh
057c634fe4
C++: fix identical chi node operands
2019-10-04 13:05:47 -07:00
Robert Marsh
17e14348d5
C++: sanity test for identical Chi node operands
2019-10-04 12:57:30 -07:00
Robert Marsh
3377f88494
C++: generate Chi nodes on total IndirectMayWrites
2019-10-04 11:59:22 -07:00
Jonas Jensen
6c87d75190
Merge pull request #2088 from geoffw0/swap3
...
CPP: Add taint tests.
2019-10-04 20:44:18 +02:00
Robert Marsh
5f8a3054d1
C++: add UninitializedInstructions for direct init
2019-10-04 11:34:14 -07:00
Robert Marsh
7fefe4385a
Merge pull request #1963 from jbj/predictableInstruction
...
C++: Implement predictableInstruction without Expr
2019-10-04 10:04:52 -07:00
Geoffrey White
050d99fa87
CPP: Add test cases.
2019-10-04 17:44:27 +01:00
ian-semmle
ebc10cf5db
Merge pull request #2084 from matt-gretton-dann/cpp-445-synthetic_destructor_call-INVALID_KEY-warnings
...
Update keysets for synthetic_destructor_call and *variables tuple
2019-10-04 16:38:35 +01:00
Geoffrey White
0e478d1c0e
Merge pull request #2066 from jbj/dataflow-conditionAlwaysTrue-perf
...
C++: Improve join orders for QL CFG
2019-10-04 14:16:41 +01:00
Geoffrey White
e465f4cc81
Merge pull request #2064 from jbj/leapyear-extends-abstract
...
C++: Avoid `extends Operation` in LeapYear.qll
2019-10-04 14:15:21 +01:00
Jonas Jensen
a7641a8765
C++: Clarify OutNode and ReturnNode QLDoc
2019-10-04 14:33:04 +02:00
Tom Hvitved
9b58d799cb
Java/C++/C#: Tweak AccessPathNil::toString()
...
Move the type annotation outside the brackets, to avoid prefixes such as
`[ : T]`.
2019-10-04 11:09:44 +02:00
Robert Marsh
bc973973df
C++: accept test changes
2019-10-03 14:43:54 -07:00
Robert Marsh
6e587f3f2a
IR: Add VariableInstruction.getASTVariable
2019-10-03 13:12:06 -07:00
Robert Marsh
c1e3821ab0
IR: rename getVariable to getIRVariable
2019-10-03 13:10:49 -07:00
Robert Marsh
a76c4d9b3b
C++: index for constructor qualifier side effects
2019-10-03 12:39:32 -07:00
Robert Marsh
47b9c497fa
C++: IR SSA tests for explicit constructor calls
2019-10-03 12:25:41 -07:00
Matthew Gretton-Dann
d06e3d79c6
C++: Add DB Upgrade script
2019-10-03 15:16:50 +01:00
Matthew Gretton-Dann
618d0a9603
C++: Update DB Stats
2019-10-03 15:16:50 +01:00
Matthew Gretton-Dann
a7f682a9be
C++: Update *variables keysets.
2019-10-03 15:16:50 +01:00
Matthew Gretton-Dann
d62730a9f3
C++: Update synthetic_destructor_call keysets.
...
Reorder the [ destructor_call, expr ] tuple.
Add a [ expr, i ] tuple.
2019-10-03 15:16:50 +01:00
Matthew Gretton-Dann
06d1d6ed5d
C++: Fix synthetic_destructor_call key uniqueness.
2019-10-03 15:16:50 +01:00
Jonas Jensen
dca39f0fad
Merge pull request #2027 from zlaski-semmle/zlaski/memset-model
...
[zlaski/memset-model] QL model for `memset` and friends
2019-10-03 14:31:23 +02:00
Jonas Jensen
01a3a037bc
C++: Make complex_numbers/expr.ql less brittle
...
This test used `getAQlClass`, which caused it to break when new classes
were added anywhere in the libraries. That's now avoided by switching to
`getCanonicalQLClass`. It turns out that `getCanonicalQLClass` didn't
support arithmetic expressions on complex numbers, so that support had
to be added.
2019-10-03 13:19:16 +02:00
Jonas Jensen
41d344a8b7
C++: Support if constexpr in QL CFG
...
This fixes the test `cpp/ql/test/library-tests/constexpr_if/cfg.ql`,
which broke when the QL CFG was enabled.
The new cases are just copy-pastes of the `IfStmt` cases (they don't
share a useful common superclass) with added checks for whether their
constant value equals 0.
2019-10-03 12:21:41 +02:00