Граф коммитов

5807 Коммитов

Автор SHA1 Сообщение Дата
Ziemowit Laski e989eabc0a Update test case (remove references to MacroInvocationStmt and MacroInvocationExpr) 2019-07-22 11:09:30 -07:00
Ziemowit Laski f8d52a3bea Remove getCanonicalQLClass() from MacroInvocationExpr and MacroInvocationStmt. 2019-07-22 11:04:30 -07:00
Ziemowit Laski dbf655253f Get rid of tabs. 2019-07-19 17:01:34 -07:00
Ziemowit Laski a0570213d7 [CPP-386] Separate printing of casts and conversion, per Dave's request. 2019-07-19 16:56:22 -07:00
Ziemowit Laski 45d944411f [CPP-386] Fix Local{Class,Struct,Union}, macro invocations,
printing of member functions and operators.
2019-07-18 16:09:04 -07:00
Ziemowit Laski 926742561b [CPP-340] Eliminate superfluous print-outs of `NestedStruct`,
`NestedUnion` and `MemberFunction`
2019-07-17 13:39:43 -07:00
Ziemowit Laski f0982791e3 [CPP-340] Remove colons and extraenous QLDoc comments; add a few more classes. 2019-07-16 17:58:39 -07:00
Ziemowit Laski c906560edd Fix up expected IR output after rebase. 2019-07-13 12:57:25 -07:00
Ziemowit Laski 960a41be85 Handle `__builtin_addressof`. 2019-07-13 12:23:40 -07:00
Ziemowit Laski 175ba7b3b0 Fix up .expected on the IR side. 2019-07-13 12:23:40 -07:00
Ziemowit Laski 2637c22732 Fix up .expected file. 2019-07-13 12:23:40 -07:00
Ziemowit Laski 2459d2ab92 Reformat PrintAST.qll ONLY. 2019-07-13 12:23:40 -07:00
Ziemowit Laski 49b0fc0a57 [CPP-386] A few more QL classes. 2019-07-13 12:23:40 -07:00
Ziemowit Laski ab82aebbd7 [CPP-386] Add `override` keyword as needed; annotate a few more classes. 2019-07-13 12:23:40 -07:00
Ziemowit Laski e5fc07660d [CPP-386] Print QL AST classes next to elements in PrintAST trees. 2019-07-13 12:23:09 -07:00
Ziemowit Laski ddb0fd90e9 [CPP-386] Provide `getCanonicalQLClass()` predicate for many AST elements. 2019-07-13 12:19:40 -07:00
Ziemowit Laski a4affbebbf [CPP-386] Add ElementBase::getCanonicalQLClass(). 2019-07-13 12:19:40 -07:00
Robert Marsh 41e46f6686
Merge pull request #1584 from geoffw0/swap
CPP: Model std::swap
2019-07-12 10:41:14 -07:00
Geoffrey White cd449e1336 CPP: Change note. 2019-07-12 18:00:39 +01:00
Geoffrey White c2fd2e273e CPP: Model taint flow through std::swap. 2019-07-12 18:00:39 +01:00
Geoffrey White f132bca06e CPP: Add a taint flow test of 'std::swap'. 2019-07-12 16:37:01 +01:00
semmle-qlci e1454abaf4
Merge pull request #1582 from xiemaisi/js/more-examples
Approved by asger-semmle
2019-07-12 13:01:46 +01:00
Max Schaefer a41fb6571c JavaScript: Address review comment. 2019-07-12 10:47:55 +01:00
semmledocs-ac e1da6e915c
Merge pull request #1515 from geoffw0/continuefalseloop
CPP: Improvements to ContinueInFalseLoop.ql
2019-07-12 08:38:22 +01:00
Max Schaefer 0ad51ac273 JavaScript: Add syntax examples in `Classes.qll`, `JSX.qll` and `Templates.qll`. 2019-07-12 08:37:49 +01:00
Dave Bartolomeo 1b38208bab
Merge pull request #1567 from jbj/ir-operand-cycles
C++ IR: guard against cycles in operand graph
2019-07-11 13:14:10 -07:00
Dave Bartolomeo c73b516862
Merge pull request #1541 from jbj/ir-operand-exact
C++ IR: Make instruction operand getters have only exact results
2019-07-11 13:13:20 -07:00
Dave Bartolomeo 00ff2bb6c4
Merge pull request #1554 from jbj/ir-ErrorExpr
C++ IR: support for translating ErrorExpr
2019-07-11 13:05:04 -07:00
Jonas Jensen 23001d5471
Merge pull request #1566 from rdmarsh2/rdmarsh/cpp/pure-functions-effect-model
C++: alias and side effect info for pure functions
2019-07-11 21:21:54 +02:00
Geoffrey White bfe570399a CPP: Update change note. 2019-07-11 20:06:29 +01:00
Geoffrey White ed069fe3cc CPP: Upgrade precision/severity. 2019-07-11 20:00:50 +01:00
Geoffrey White 62fb216102 CPP: Fix false positive. 2019-07-11 20:00:50 +01:00
Geoffrey White 629d127174 CPP: QLDoc comments. 2019-07-11 20:00:50 +01:00
Geoffrey White e1efdd7d47 CPP: Add a test where continue is used in a switch to exit the loop. 2019-07-11 20:00:50 +01:00
Geoffrey White 3337a859aa CPP: Corrections to qhelp. 2019-07-11 20:00:50 +01:00
Geoffrey White 83b0906f67 CPP: Change note. 2019-07-11 20:00:50 +01:00
Geoffrey White 4c4be2d3c2 CPP: Add (basic) qhelp. 2019-07-11 20:00:50 +01:00
Geoffrey White 8a3f8c5c1d CPP: Add precision/tags and adjust severity. 2019-07-11 20:00:50 +01:00
Geoffrey White 83d4b23ae3 CPP: Fix false positives in while/for loops. 2019-07-11 20:00:50 +01:00
Geoffrey White 136ca72297 CPP: Add a test. 2019-07-11 20:00:49 +01:00
Robert Marsh c195420ba1 C++: respond to PR comments 2019-07-11 11:00:52 -07:00
Geoffrey White db6be05a92
Merge pull request #1580 from jbj/inconsistent-loop-direction-perf
C++: Fix inconsistent-loop-direction performance
2019-07-11 16:39:05 +01:00
semmle-qlci 40f6dc1692
Merge pull request #1578 from asger-semmle/splice
Approved by xiemaisi
2019-07-11 15:44:21 +01:00
Jonas Jensen 2324ce77ae C++ IR: Fix soundness of ConstantAnalysis
Now that `PhiInstruction.getAnInput` only has results for congruent
operands, a previous optimization I made to `getConstantValue` is no
longer sound. We have to check that all phi inputs give the same value,
not just the congruent ones. After this change, if there are any
non-congruent operands on a phi instruction, the whole aggregate will
have no result.
2019-07-11 15:51:09 +02:00
Asger F 30265537b2
Update javascript/ql/src/semmle/javascript/dataflow/Nodes.qll
Co-Authored-By: Max Schaefer <max@semmle.com>
2019-07-11 14:38:47 +01:00
Jonas Jensen 7fb43a5a03 C++ IR: getAnyDef -> getDef in RangeUtils.qll
As recommended by Dave in PR review.
2019-07-11 15:35:14 +02:00
ian-semmle 463547f810
Merge pull request #1581 from jbj/revert-noTarget-workaround
Revert "C++: Work around extractor issue CPP-383"
2019-07-11 14:26:15 +01:00
Jonas Jensen c831c4b58e C++ IR: Fix SignAnalysis after getAnyDef -> getDef
In the `SignAnalysis` abstract interpretation, "unknown sign"
corresponds to the set of _all_ `Sign`, but using `getDef` leads to the
operand having _no_ `Sign`. To fix that, we assign all signs to inexact
operands.
2019-07-11 15:17:55 +02:00
Geoffrey White 59964bd9a4
Merge pull request #1575 from jbj/UncheckedLeapYear-bb
C++: Fix performance of unchecked leap year query
2019-07-11 13:57:07 +01:00
Jonas Jensen ee5eaef5e4 Revert "C++: Work around extractor issue CPP-383"
The issue is now fixed in the extractor, and I've confirmed that the
workaround is no longer needed for g/an-tao/drogon.

This reverts commit 48a3385809.
2019-07-11 14:18:29 +02:00