Skip to content

Data flow: Add tests for missing summary flow#6841

Merged
hvitved merged 5 commits into
github:mainfrom
hvitved:dataflow/incorrect-summary-chaining
Oct 12, 2021
Merged

Data flow: Add tests for missing summary flow#6841
hvitved merged 5 commits into
github:mainfrom
hvitved:dataflow/incorrect-summary-chaining

Conversation

@hvitved
Copy link
Copy Markdown
Contributor

@hvitved hvitved commented Oct 8, 2021

The first two commits add (identical) C# and Java tests that show we are missing some flow through summarized callables. The details why we are missing the flow are quite involved, but it happens because we recently introduced derived flow steps inside summarized callables.

The third commit adds debugging functionality for visualizing the data flow graph for summarized callables, which is quite handy for understanding why we are missing flow. In combination with github/vscode-codeql#705, this allows us to render graphs like

Screenshot 2021-10-08 at 16 13 38

Adding the missing flow will be done in follow-up work.

@hvitved hvitved requested review from a team as code owners October 8, 2021 14:14
@hvitved hvitved force-pushed the dataflow/incorrect-summary-chaining branch from 722eac9 to 68ea3e7 Compare October 11, 2021 09:29
Comment thread csharp/ql/lib/semmle/code/csharp/dataflow/internal/FlowSummaryImpl.qll Outdated
Comment thread java/ql/test/library-tests/dataflow/callback-dispatch/A.java Outdated
hvitved and others added 2 commits October 12, 2021 14:28
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com>
@hvitved hvitved merged commit 10739b1 into github:main Oct 12, 2021
@hvitved hvitved deleted the dataflow/incorrect-summary-chaining branch October 12, 2021 13:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants