4315 Commits

Author SHA1 Message Date
Tom Hvitved
d01904d404 Merge pull request #3846 from hvitved/csharp/autobuilder-refactor
C#: Factor C++ parts out of autobuilder
2020-07-02 12:02:04 +02:00
Jonas Jensen
2bd84a3a5e Merge pull request #3865 from geoffw0/bufferwrite-fixup
C++: 'modelling' -> 'modeling' part 2.
2020-07-02 08:37:19 +02:00
Jonas Jensen
62a656de0f Merge pull request #3860 from dbartol/codeql-c-analysis-team/40/2
C++: QLDoc cleanup
2020-07-02 08:32:44 +02:00
Tom Hvitved
498ee9b5f5 C#: Factor C++ parts out of autobuilder 2020-07-01 20:06:46 +02:00
Geoffrey White
a260df9035 C++: 'modelling' -> 'modeling'. 2020-07-01 17:49:22 +01:00
Mathias Vorreiter Pedersen
bb9c8881d6 Merge pull request #3786 from geoffw0/bufferwritecleanup
C++: Clean up BufferWrite.qll
2020-07-01 18:33:26 +02:00
Dave Bartolomeo
f0215d1748 C++: Fix typo 2020-07-01 11:57:56 -04:00
Geoffrey White
8d8e47dc29 C++: QLDoc other straightforward model implementations. 2020-07-01 16:25:24 +01:00
Geoffrey White
e39c115746 C++: QLDoc Strcpy (as demanded by the tests). 2020-07-01 16:23:50 +01:00
Dave Bartolomeo
566d7fad63 C++: Autoformat some more 2020-07-01 10:14:35 -04:00
Anders Schack-Mulligen
7d057598d8 Merge pull request #3857 from jbj/flowthrough-bigstep-perf
C++: Remove big-step relation in flow-through code
2020-07-01 14:23:23 +02:00
Jonas Jensen
50cd759718 Merge pull request #3733 from geoffw0/models5
C++: Constructor and assignment models
2020-07-01 13:58:27 +02:00
Anders Schack-Mulligen
38b73ff684 Merge pull request #3854 from hvitved/dataflow/node-type-interface
Data flow: Replace `getErasedRepr()` and `Node::getTypeBound()` with `getNodeType()`
2020-07-01 11:37:19 +02:00
Dave Bartolomeo
10bbd566d4 C++: Autoformat 2020-07-01 02:28:53 -04:00
Dave Bartolomeo
6592f8c1bb C++: QLDoc cleanup
This PR just fixes a few bits of PR feedback from my previous QLDoc PR.
2020-06-30 17:33:52 -04:00
Jonas Jensen
cff0f48d34 C++: Work around join-order issue in flow-through
In this non-linear recursion, a `#prev` relation was joined earlier than
the `#prev_delta` relation. As a result, each iteration of the predicate
processes every tuple from previous iterations.

This quadratic behavior caused severe slowdowns on oneapi-src/oneDNN.
2020-06-30 21:12:57 +02:00
Jonas Jensen
17beb2d867 C++: Remove big-step relation in flow-through code
This relation was originally introduced to improve performance but may
no longer be necessary. The `localFlowStepPlus` predicate had an
explosion of tuples on oneapi-src/oneDNN for C++.
2020-06-30 21:06:45 +02:00
Geoffrey White
8bdcc47a50 C++: Add a test. 2020-06-30 17:46:08 +01:00
Geoffrey White
54b8f8e662 C++: Make getSecureAlgorithmRegex() return a single regexp as expected, and as getInsecureAlgorithmRegex() does. 2020-06-30 16:51:16 +01:00
Mathias Vorreiter Pedersen
286c09183f Merge pull request #3837 from geoffw0/qldoc5
C++/Java: Update QLDoc and terminology in Encryption.qll
2020-06-30 17:44:59 +02:00
Mathias Vorreiter Pedersen
cb39525f3b Merge pull request #3847 from nickrolfe/71-this-followup
C++: make MemberFunction::getTypeOfThis() return PointerType
2020-06-30 17:44:32 +02:00
Tom Hvitved
de3dc734ff C++: Follow-up changes 2020-06-30 17:44:16 +02:00
Tom Hvitved
1fa58bd82d Data flow: Sync files 2020-06-30 17:37:16 +02:00
Jonas Jensen
63de58c557 Merge pull request #3819 from dbartol/codeql-c-analysis-team/40/2
C++: More IR QLDoc (including `Opcode.qll`)
2020-06-30 17:09:15 +02:00
Jonas Jensen
4a5299e368 Merge pull request #3843 from geoffw0/qldoc6
C++: Bit more QLDoc
2020-06-30 16:21:37 +02:00
Geoffrey White
3bdfab8d8c C++: Autoformat. 2020-06-30 14:12:34 +01:00
Nick Rolfe
09e13ca2f2 C++: make MemberFunction::getTypeOfThis() return PointerType
The dbscheme technically allows for any Type, but in practice it will
always be a PointerType, so this should make it easier for users to
understand.
2020-06-30 13:45:21 +01:00
Matthew Gretton-Dann
ab876b8b78 Merge pull request #3814 from nickrolfe/71-this
C++: add MemberFunction::getTypeOfThis()
2020-06-30 13:31:14 +01:00
Geoffrey White
51db1475ff Apply suggestions from code review
Co-authored-by: Jonas Jensen <jbj@github.com>
2020-06-30 12:42:12 +01:00
Geoffrey White
4c088b19ad C++: Delete outdated bit. 2020-06-30 12:38:02 +01:00
Geoffrey White
bbb9396300 C++: Improvement in Overflow.qll. 2020-06-30 12:20:19 +01:00
Geoffrey White
0ee73cce51 Update cpp/ql/src/semmle/code/cpp/security/FunctionWithWrappers.qll
Co-authored-by: Jonas Jensen <jbj@github.com>
2020-06-30 12:16:20 +01:00
Geoffrey White
de25bc6c78 C++: Improvement in Synchronization.qll. 2020-06-30 12:14:56 +01:00
Geoffrey White
3a3cc9a60a C++: Autoformat. 2020-06-30 12:06:18 +01:00
Mathias Vorreiter Pedersen
c52f68e337 Merge pull request #3808 from geoffw0/qldoc4
C++: Yet more QLDoc
2020-06-30 10:33:29 +02:00
Geoffrey White
5c51bb7979 C++: QLDoc Literal.qll. 2020-06-30 09:32:48 +01:00
Jonas Jensen
f79299883a Merge pull request #3831 from MathiasVP/remove-abstract-decl-var-call
C++: Remove abstractness from DeclarationEntry, AccessHolder and Call
2020-06-30 10:21:55 +02:00
Geoffrey White
40e02bee53 C++: QLDoc Overflow.qll. 2020-06-30 09:19:41 +01:00
Geoffrey White
0102322544 C++: QLDoc FunctionWithWrappers.qll. 2020-06-30 09:10:21 +01:00
Jonas Jensen
47bb007b9a C++: Autoformat fixups 2020-06-30 09:56:39 +02:00
Mathias Vorreiter Pedersen
acee9eb7ab C++: Add comment to pseudo-abstract predicates 2020-06-30 09:19:47 +02:00
Mathias Vorreiter Pedersen
50709b235e C++: Replace implication with disjunction in charpred for Call 2020-06-30 09:18:52 +02:00
Mathias Vorreiter Pedersen
667bb323ac C++: Rename union types to follow the naming convention of IPA types (and make them private) 2020-06-30 08:40:46 +02:00
Tom Hvitved
b57cfc965a Merge pull request #3804 from aschackmull/dataflow/dispatch-refactor
Dataflow: Refactor dispatch with call context.
2020-06-30 08:28:27 +02:00
Dave Bartolomeo
42657dbe3f C++: Miscellaneous IR QLDoc 2020-06-29 14:30:12 -04:00
Dave Bartolomeo
1fa38474e9 C++: Autoformat 2020-06-29 14:09:53 -04:00
Nick Rolfe
4b6908c5bf C++: test template classes with MemberFunction::getTypeOfThis() 2020-06-29 18:05:58 +01:00
Geoffrey White
fc69c16ba6 C++: Deprecate some old terminology. 2020-06-29 18:03:16 +01:00
Geoffrey White
71492f90ac C++: QLDoc Encryption.qll, improve existing QLDoc, and update terminology. 2020-06-29 18:03:15 +01:00
Dave Bartolomeo
c52653270e C++: QLDoc for IRConfiguration.qll 2020-06-29 12:43:51 -04:00