Ziemowit Laski
0c86d4c112
[CPP-370] Tentative implementation of NonConstantFormat.ql using the global
...
DataFlow library. This is intended solely for further discussion.
2019-05-21 06:18:30 -07:00
Robert Marsh
e899120270
C++: replace getType().getUnspecifiedType()
2019-05-20 15:08:28 +01:00
Robert Marsh
14795863e2
Merge pull request #1303 from jbj/hasQualifiedName
...
C++: Fix `getQualifiedName` performance issues
2019-05-15 12:42:57 -07:00
Jonas Jensen
662d55fd72
C++: Add tests for qualified names
2019-05-06 10:58:05 +02:00
Jonas Jensen
93658038bc
C++: Use a smaller double literal in test
...
This number got rounded differently on Linux and Windows, causing the
Windows test to fail.
2019-05-03 09:06:10 +02:00
Dave Bartolomeo
34a422c756
C++: Accept test output after value category extractor fix
2019-05-02 11:18:10 -07:00
Dave Bartolomeo
ad966e4bd4
C++: Accept test diffs after imprecise use format change
2019-05-02 11:18:09 -07:00
Dave Bartolomeo
fef58ec1ee
C++: Add "~" prefix to inexact uses
2019-05-02 11:18:09 -07:00
Dave Bartolomeo
ff12ed145e
C++: Update test expectations after StmtExpr changes
2019-05-02 11:18:09 -07:00
Dave Bartolomeo
95a62beb7a
C++: Update test expectations due to better dataflow analysis
2019-05-02 11:18:09 -07:00
Dave Bartolomeo
e0f7344676
C++: Imprecise definitions in SSA
2019-05-02 11:18:08 -07:00
Dave Bartolomeo
9726428bcc
C++: More SSA test cases
2019-05-02 11:18:08 -07:00
Dave Bartolomeo
eed0894029
C++: Add operand labels for more operand tags
...
I kept forgetting which operand on a Chi instruction was which, so I added dump labels. I added labels for the function target of a `Call`, for positional arguments, and for address operands as well.
2019-05-02 11:18:08 -07:00
Dave Bartolomeo
a7f3160684
C++: New SSA tests
2019-05-02 11:18:08 -07:00
Nick Rolfe
50c901d6d9
C++: remove pointless predicate
2019-05-02 11:16:21 +01:00
Nick Rolfe
74f81c7f46
C++: test for fold expressions
2019-05-02 11:16:21 +01:00
Jonas Jensen
3905cf70f4
Merge pull request #1255 from geoffw0/wrongtypeformatmore
...
CPP: WrongTypeFormatArguments.ql Improvements
2019-05-02 09:17:21 +02:00
Jonas Jensen
dcbf70f616
Merge pull request #1279 from geoffw0/large-parameter
...
CPP: Tests and changes for LargeParameter.ql
2019-05-02 09:15:57 +02:00
Geoffrey White
d2f386ccb7
CPP: Effect of changes on tests.
2019-05-01 15:56:44 +01:00
Geoffrey White
19e6b238b7
CPP: Add test cases.
2019-05-01 15:43:06 +01:00
Jonas Jensen
9d15e67f3c
C++: Use variableAccessedAsValue in LargeParameter
...
Using `variableAccessedAsValue` fixes a FP because we can now
distinguish modifications to the parameter from modifications to data
_reachable from_ the parameter.
2019-05-01 13:58:55 +01:00
Geoffrey White
60494fd6d5
CPP: Subtle test case.
2019-05-01 13:17:11 +01:00
Geoffrey White
2ef3cc30c0
CPP: Fix for functions with no definition.
2019-05-01 13:17:11 +01:00
Geoffrey White
6f2274aa5e
CPP: Another test case.
2019-05-01 13:17:10 +01:00
Geoffrey White
32b6e9bd3c
CPP: Exclude cases where the parameter is written to.
2019-05-01 13:17:10 +01:00
Geoffrey White
54c766c622
CPP: Add more test cases for LargeParameter.ql.
2019-05-01 13:17:10 +01:00
Jonas Jensen
490dd0e8c0
Merge pull request #1245 from geoffw0/classesmanyfields
...
CPP: Fix performance issues in ClassesWithManyFields.ql
2019-05-01 13:58:28 +02:00
Geoffrey White
1ee28fa15b
CPP: Add a test cases that uses restrict.
2019-05-01 11:12:07 +01:00
Geoffrey White
a749b5b6d1
CPP: Improve WrongTypeFormatArguments logic when there is more than one possible expected argument type.
2019-05-01 11:12:06 +01:00
Geoffrey White
ac277ad7ad
CPP: Fix %I length specifier.
2019-05-01 11:12:06 +01:00
Geoffrey White
98c3e1475e
CPP: Add test cases of %I64 and similar.
2019-05-01 11:12:06 +01:00
Geoffrey White
3a0dfbd00f
CPP: Normalize test cases between some of the WrongTypeFormatArguments tests.
2019-05-01 11:12:06 +01:00
Geoffrey White
efa3c77db5
CPP: Additional test cases.
2019-05-01 10:58:03 +01:00
Geoffrey White
89c26ca394
CPP: Rewrite the VDE grouping in ClassesWithManyField.ql to be more performant (and modern).
2019-05-01 10:35:59 +01:00
Jonas Jensen
40aea2f76d
C++: Shorten alert message
...
We don't write the reason for the alert in the alert message.
2019-05-01 08:33:36 +02:00
Jonas Jensen
e38ac9f88a
C++: suppress alerts in tightly bounded loops
2019-05-01 08:33:35 +02:00
Jonas Jensen
54091e87fa
Merge pull request #1136 from zlaski-semmle/cpp340a
...
[CPP-340] Refinements to FutileParams.ql etc.
2019-05-01 08:21:35 +02:00
Ziemowit Laski
17066cfe3e
[CPP-340] Adjust annotations in test.c file.
2019-04-30 13:21:36 -07:00
Ziemowit Laski
be77eb7367
[CPP-340] Add new test cases to test.c; this required the .expected
...
files to be regenerated.
2019-04-29 15:30:28 -07:00
Ziemowit Laski
4a760b1561
[CPP-340] Delete ArgumentsToImplicit.ql and associated files.
...
Reduce MistypedFunctionArguments.ql precision to `medium`.
2019-04-28 13:49:46 -07:00
Jonas Jensen
bdb678a318
Merge pull request #1267 from rdmarsh2/rdmarsh/cpp/def-by-ref-taint
...
C++: add taint edges to DefinitionByReferenceNode
2019-04-26 08:50:20 +02:00
Ziemowit Laski
ac58bdfc58
[CPP-340] For MistypedFunctionArguments.ql, add support for pointers to pointers and pointers to arrays.
2019-04-24 14:54:01 -07:00
Robert Marsh
919f5c616f
C++: comment and test for taint flow via memcpy
2019-04-23 11:17:18 -07:00
Robert Marsh
262f724235
C++: add taint edges to DefinitionByReferenceNode
2019-04-22 10:39:02 -07:00
Robert Marsh
45a35a8572
Merge pull request #1265 from rdmarsh2/rdmarsh/cpp/gvn-string-pooling
...
C++: string pooling in IR value numbering
2019-04-22 09:29:44 -07:00
Robert Marsh
e7ca6c8bd9
C++: test for value number string pooling
2019-04-19 10:50:52 -07:00
Ziemowit Laski
62b030d27f
[CPP-340] Add a fourth query, ArgumentsToImplicit.ql, to deal strictly with implicitly declared
...
functions. TooManyArguments.ql will now deal with explicitly declared/prototyped functions.
2019-04-18 17:56:41 -07:00
Robert Marsh
c6f01265be
Merge pull request #1263 from geoffw0/bufferoverflowqueries
...
CPP: Resolve overlap between OverflowCalculated.ql and NoSpaceForZeroTerminator.ql
2019-04-18 13:21:57 -04:00
Geoffrey White
57a4e52b47
CPP: Remove the overlap between these two queries.
2019-04-18 10:33:33 +01:00
Geoffrey White
ca6ba36d87
CPP: Unify and improve the MallocCall classes.
2019-04-18 10:30:18 +01:00