Mathias Vorreiter Pedersen
4746320f3c
Merge pull request #4684 from criemen/cleanup-api
...
C++: Clean up Type.qll, getSpecifierString() API.
2020-11-18 13:07:51 +01:00
Mathias Vorreiter Pedersen
715f233360
C++: Add a new model class describing pure memory functions, and use this new model in DefaultSafeExternalAPIFunction.
2020-11-18 12:47:33 +01:00
Geoffrey White
decbb08340
Merge pull request #4402 from github/matt-gretton-dann/cpp20-constinit-results
...
Update expected results for `constint' support
2020-11-18 11:46:41 +00:00
Cornelius Riemenschneider
959b8f39d2
C++: Autoformat.
2020-11-18 12:13:46 +01:00
Cornelius Riemenschneider
b670522a9f
Clean up Type.qll, getSpecifierString() API.
2020-11-18 10:21:03 +01:00
Mathias Vorreiter Pedersen
09c5caa3bd
C++: Move ExternalAPI files into query directory to prevent out-of-tree use.
2020-11-18 10:18:03 +01:00
Mathias Vorreiter Pedersen
f16591dffc
C++: Respond to qhelp review comments.
2020-11-18 09:18:14 +01:00
Cornelius Riemenschneider
a92f7a4563
C++: Include trailing whitespace in Type.getSpecifierString().
2020-11-17 18:50:34 +01:00
Cornelius Riemenschneider
5c3de06b6d
C++: Improve PrintAST performance.
...
Co-authored-by: Jonas Jensen <jbj@github.com >
2020-11-17 17:47:16 +01:00
Mathias Vorreiter Pedersen
52bbb326ca
QLDoc: Wrap lines and disambiguate explanation.
2020-11-17 16:23:27 +01:00
Mathias Vorreiter Pedersen
d93d3c8699
C++: Use the getSourceType predicate on RemoteFlowSources for better alert messages.
2020-11-17 16:23:27 +01:00
Mathias Vorreiter Pedersen
d1272d3a79
C++: Use strictcount instead of count.
2020-11-17 16:23:27 +01:00
Mathias Vorreiter Pedersen
4cb25d8e18
C++: Add isParameterDerefOrQualifierObject helper predicate to FunctionInput and FunctionOutput.
2020-11-17 16:23:27 +01:00
Mathias Vorreiter Pedersen
dea16d4d62
QLDoc/C++: Rename {IR}ExternalAPIsUsedWithUntrustedData to {IR}CountUntrustedDataToExternalAPI
2020-11-17 16:23:13 +01:00
Mathias Vorreiter Pedersen
eabc69b98e
C++: Autoformat
2020-11-17 16:09:25 +01:00
Matthew Gretton-Dann
62767e7e0d
Update expected results for `constinit' support
2020-11-17 14:01:00 +00:00
Anders Schack-Mulligen
f74fc0ff26
Dataflow: Fix bad join-orders.
2020-11-17 14:28:25 +01:00
Mathias Vorreiter Pedersen
5d2b85fcf5
Update cpp/ql/src/semmle/code/cpp/models/implementations/Getenv.qll
...
Co-authored-by: hubwriter <hubwriter@github.com >
2020-11-17 13:02:28 +01:00
Mathias Vorreiter Pedersen
c37093f4bc
C++: Add copies of qhelp files for IR.
2020-11-17 12:28:31 +01:00
Mathias Vorreiter Pedersen
3b8580efaf
C++: Add qhelp and example files (modeled after the Java examples).
2020-11-17 12:27:53 +01:00
Mathias Vorreiter Pedersen
c3c29b8dd0
C++: Add qldoc to new library files.
2020-11-17 12:27:53 +01:00
Mathias Vorreiter Pedersen
5ad18eb748
C++: Add ExternalAPI query files (for AST and IR).
2020-11-17 12:27:40 +01:00
Jonas Jensen
55a38803cb
Merge pull request #4673 from MathiasVP/ir-post-dominance
...
C++: IR post dominance
2020-11-17 09:35:51 +01:00
Mathias Vorreiter Pedersen
057bb14eee
C++: Add ExternalAPI library files (for AST and IR).
2020-11-16 22:59:54 +01:00
Robert Marsh
a94826dc81
C++: common superclass for Remote/LocalFlowSource
2020-11-16 18:05:17 +01:00
Robert Marsh
31d3e94cec
C++: Grammar/style fixes from code review
...
Co-authored-by: Jonas Jensen <jbj@github.com >
2020-11-16 18:03:44 +01:00
Robert Marsh
74e05c111e
C++: add local flow sources
2020-11-16 18:02:19 +01:00
Mathias Vorreiter Pedersen
4a7f9100e4
C++: Respond to review comments.
2020-11-16 15:30:42 +01:00
Mathias Vorreiter Pedersen
27aab4062a
C++/C#: Sync identical files.
2020-11-16 15:05:59 +01:00
Mathias Vorreiter Pedersen
088d5863fc
C++: Implement IR post-dominance predicates.
2020-11-16 15:04:40 +01:00
Mathias Vorreiter Pedersen
10a9f7ba13
Update cpp/change-notes/2020-11-12-unsafe-use-of-this.md
...
Co-authored-by: hubwriter <hubwriter@github.com >
2020-11-16 12:28:57 +01:00
Mathias Vorreiter Pedersen
020af1c88c
C++: Add qhelp.
2020-11-16 11:21:18 +01:00
Geoffrey White
4b8f338139
C++: Autoformat.
2020-11-16 10:19:06 +00:00
Anders Schack-Mulligen
3dbd48063c
Dataflow: Add Unit type for all languages.
2020-11-16 09:02:44 +01:00
Mathias Vorreiter Pedersen
0a6a22562b
C++: Respond to more review comments.
...
- Remove post-dominance requirement. It was really just hiding good
results.
- Fix test annotations. Turns out Clang and GCC's 'undefined behavior'
warning didn't align with the C++ standard.
2020-11-13 15:44:33 +01:00
Geoffrey White
dfcb0ae7c2
C++: Autoformat.
2020-11-13 14:39:33 +00:00
Anders Schack-Mulligen
9e45f10c5d
Dataflow: Remove headUsesContent.
2020-11-13 15:12:39 +01:00
Anders Schack-Mulligen
e0a6a485df
Dataflow: Sync.
2020-11-13 15:12:16 +01:00
Jonas Jensen
8bb9e8a4af
Merge pull request #4592 from geoffw0/varnotused
...
C++: Work around two false positive issues with the UnusedLocals.ql query
2020-11-13 14:53:58 +01:00
Mathias Vorreiter Pedersen
b249777bfb
C++: Respond to review comments.
2020-11-13 10:44:06 +01:00
Geoffrey White
0804df42d1
C++: Autoformat.
2020-11-12 18:23:11 +00:00
Mathias Vorreiter Pedersen
5e1f36e7ff
Merge branch 'unsafe-use-of-this-query' of github.com:MathiasVP/ql into unsafe-use-of-this-query
2020-11-12 15:51:19 +01:00
Mathias Vorreiter Pedersen
f417831a23
C++: Add two more tests to 'unsafe use of this'. First, test that post-dominance removes some results. Second, that a cast to the pure virtual function's defining class (skipping past a derived class that overrides the function) followed by a call to the function still results in an alert. This is also undefined behavior.
2020-11-12 15:51:04 +01:00
Mathias Vorreiter Pedersen
896dee5fb7
C++: Fix dataflow pruning by evaluating successor before flowsToSink/flowsFromSource.
2020-11-12 15:47:48 +01:00
Mathias Vorreiter Pedersen
f2317aed55
C++/C#: Make post-dominator related predicates member predicates of IRBlock.
2020-11-12 15:41:52 +01:00
Geoffrey White
498177ce02
C++: Autoformat.
2020-11-12 13:30:58 +00:00
Mathias Vorreiter Pedersen
00f067be84
Update cpp/change-notes/2020-11-12-unsafe-use-of-this.md
...
Co-authored-by: Jonas Jensen <jbj@github.com >
2020-11-12 11:28:12 +01:00
Mathias Vorreiter Pedersen
50e90510ef
C++: Follow the new change-note protocol.
2020-11-12 10:27:11 +01:00
Mathias Vorreiter Pedersen
4c27c3757c
C++: Respond to more review comments.
2020-11-12 10:27:03 +01:00
Geoffrey White
2aa6ff6239
C++: Add comments about the temporary exclusions.
2020-11-11 17:33:16 +00:00