Jonas Jensen
d2f8029625
Merge pull request #1492 from geoffw0/exprnoeffectweak
...
CPP: Fix for 'Expression has no effect' on calls to weak functions
2019-06-25 10:58:28 +02:00
Jonas Jensen
de65dc5501
Merge pull request #1490 from geoffw0/leapyeararith
...
CPP: Improvements to LeapYear.qll
2019-06-25 10:46:12 +02:00
Geoffrey White
9a0645ac0b
CPP: Calls to weak functions should be considered impure.
2019-06-24 22:04:12 +01:00
Geoffrey White
aee2af7ca1
CPP: Add a test of ExprHasNoEffect.ql with a call to a 'weak' function.
2019-06-24 22:01:46 +01:00
Geoffrey White
562141759a
CPP: Autoformat LeapYear.qll.
2019-06-24 15:20:24 +01:00
Geoffrey White
69533a7fd3
CPP: Clean up duplication in Adding365DaysPerYear.ql.
2019-06-24 15:18:29 +01:00
Geoffrey White
7fca220eda
CPP: Fix UncheckedLeapYearAfterYearModification FPs.
2019-06-24 11:21:48 +01:00
Geoffrey White
cff3f9bdaf
CPP: Add another test case based on a real world case.
2019-06-21 17:43:17 +01:00
Geoffrey White
b1f6294083
CPP: Add a test case where a date is created.
2019-06-21 14:32:44 +01:00
Geoffrey White
09b33bc1a7
CPP: Adjust file name case for consistency.
2019-06-21 12:53:04 +01:00
Geoffrey White
1a7269b206
CPP: Rename the test subdirectories.
2019-06-21 12:51:25 +01:00
Jonas Jensen
cace411974
C++: NonConstantFormat taint only for string types
...
To speed up the taint analysis in `NonConstantFormat.ql` and to remove
FPs that were due to taint spreading from `i` to `a[i]`, this commit
stops the taint tracking in `NonConstantFormat.ql` at every node that
could not possibly contain a string.
I tested performance on Wireshark, and it's fine. Pulling out the
`isSanitizerNode` prevented `isSanitizer` from turning into four
half-slow RA predicates due to both CPE and `#antijoin_rhs`
transformations happening.
2019-06-20 15:39:47 +02:00
Jonas Jensen
364100f043
Merge pull request #1480 from geoffw0/time
...
CPP: Speed up StructWithExactEraDate.ql
2019-06-20 15:27:52 +02:00
Jonas Jensen
e99c68885c
C++: Demonstrate ArrayExpr FP
2019-06-20 14:00:42 +02:00
Geoffrey White
0e69063e3c
CPP: Restore the query precision.
2019-06-20 12:39:16 +01:00
Geoffrey White
936afadc43
CPP: Speed up StructWithExactEraDate.ql.
2019-06-20 12:21:06 +01:00
Jonas Jensen
ad337de6ce
Merge branch 'master' into taintedallocfp
2019-06-19 15:35:09 +02:00
Jonas Jensen
53d4b2dfc9
Merge pull request #1365 from geoffw0/uninit
...
CPP: Fix for the 'LoopConditionAlwaysTrueUponEntry' logic
2019-06-19 11:01:57 +02:00
Jonas Jensen
9d18b351cc
Merge pull request #1469 from geoffw0/av95perf
...
CPP: Fix AV Rule 95 performance issue.
2019-06-19 10:32:57 +02:00
Jonas Jensen
0b891013a4
Merge pull request #1466 from geoffw0/castarrayperf
...
CPP: Resolve performance issue in CastArrayPointerArithmetic.ql
2019-06-19 10:23:23 +02:00
Jonas Jensen
ba3ec500fd
Merge pull request #1467 from geoffw0/dates-cleanup1
...
CPP: Follow-up for Mishandling Japanese Era and Leap Year in calculations
2019-06-18 20:13:33 +02:00
Geoffrey White
98d80deefb
CPP: Improved solution (mostly performance).
2019-06-18 15:56:22 +01:00
Geoffrey White
47ff38ef22
CPP: Add a warning to getFollowingStmt.
2019-06-18 15:56:22 +01:00
Geoffrey White
ef3ceb5910
CPP: Don't use getFollowingStmt.
2019-06-18 15:56:22 +01:00
Geoffrey White
536adaae7f
CPP: Additional test cases.
2019-06-18 15:56:22 +01:00
Geoffrey White
52b68a77bd
CPP: Remove commented out code.
2019-06-18 15:56:22 +01:00
Geoffrey White
56adcff2c9
CPP: Fix for LocalScopeReachability.
2019-06-18 15:56:22 +01:00
Geoffrey White
f4b4ddbdaf
CPP: Add a test examining the LoopEntryConditionEvaluator on this code.
2019-06-18 15:56:22 +01:00
Geoffrey White
12bbb0755f
CPP: Additional test cases.
2019-06-18 15:56:22 +01:00
Geoffrey White
6cca2d54f4
CPP: Autoformat.
2019-06-18 13:26:54 +01:00
Geoffrey White
717522f469
CPP: Fix qhelp more.
2019-06-18 13:00:41 +01:00
Geoffrey White
fb5d02a634
CPP: Remove a redundant line.
2019-06-18 11:40:12 +01:00
Geoffrey White
bdb495d58a
CPP: Fix AV Rule 95 performance issue.
2019-06-18 11:25:48 +01:00
Geoffrey White
83ec5f1ae9
Merge pull request #1354 from denislevin/denisl/cpp/MishandlingJapaneseDatesAndLeapYear
...
C++: Mishandling Japanese Era and Leap Year in calculations
2019-06-18 09:26:35 +01:00
Geoffrey White
b9a57a46d2
CPP: More accurate qldoc comment.
2019-06-18 08:56:52 +01:00
Geoffrey White
ce29047840
CPP: Resolve performance issue in CastArrayPointerArithmetic.ql's 'introducesNewField' predicate.
2019-06-17 16:33:48 +01:00
Geoffrey White
413788ae2d
CPP: Fix qhelp.
2019-06-17 11:55:24 +01:00
Geoffrey White
415655ac23
CPP: Remove precision (for now) from a query that I've seen time out.
2019-06-17 10:07:34 +01:00
Geoffrey White
df230d2ba6
CPP: Make precision/severity more conservative for now.
2019-06-17 10:07:32 +01:00
Geoffrey White
93c4f1eea5
CPP: Autoformat.
2019-06-17 10:07:22 +01:00
Geoffrey White
8ebc0b9c39
CPP: Add basic .qhelp for Adding365daysPerYear.ql.
2019-06-14 14:25:02 +01:00
Geoffrey White
f1b76be57f
CPP: Fix LeapYear.qhelp.
2019-06-14 14:25:01 +01:00
Jonas Jensen
41d5d5ab86
Merge pull request #1438 from geoffw0/assignedvalue
...
CPP: Support for aggregate initializers in getAnAssignedValue()
2019-06-14 00:37:46 -07:00
Denis Levin
7ff8fcd50e
Some more typo fixes and a fix to test files
2019-06-13 17:16:30 -07:00
Denis Levin
ad489db815
Corrections related to the review comments.
2019-06-13 13:04:42 -07:00
Geoffrey White
37a1c48071
CPP: Optimize AV Rule 71.ql.
2019-06-13 15:30:56 +01:00
Ziemowit Laski
88a39d9454
[CPP-370] Fix up // GOOD and // BAD test annotations so that they're consistent.
2019-06-12 12:56:11 -07:00
Esben Sparre Andreasen
3f11ae7eaa
Merge remote-tracking branch 'rc/1.21' into master
2019-06-12 12:57:55 +02:00
Jonas Jensen
32122e86b0
C++: use plain recursion in PrimitiveBasicBlocks
...
It's sometimes faster but sometimes up to 2x slower to use plain
recursion here. On the other hand, plain recursion won't run out of Java
heap space, and it won't make unrelated computation slower by forcing
all RAM data out to disk.
2019-06-11 14:30:21 +02:00
Geoffrey White
bf680161fd
CPP: Optimize.
2019-06-11 11:00:45 +01:00