-
Notifications
You must be signed in to change notification settings - Fork 1.9k
C#: Remove PreSsa library
#20994
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
C#: Remove PreSsa library
#20994
Conversation
5fb90fb to
857b1d1
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR removes the PreSsa library from the C# codebase following the removal of CFG splitting based on Boolean values. The cleanup consolidates SSA-related functionality into the BaseSSA module.
- The entire
PreSsa.qlllibrary is deleted along with its associated test files - SSA functionality previously in
PreSsa(likeSimpleLocalScopeVariableand related predicates) is migrated toBaseSSA.qll - References to
PreSsaacross the codebase are updated to useBaseSSAinstead
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
csharp/ql/lib/semmle/code/csharp/controlflow/internal/PreSsa.qll |
Deleted - entire PreSsa library removed |
csharp/ql/test/library-tests/dataflow/ssa/PreSsaConsistency.ql |
Deleted - test file for PreSsa consistency checks |
csharp/ql/test/library-tests/dataflow/ssa/PreSsaConsistency.expected |
Deleted - expected output for PreSsa consistency tests |
csharp/ql/lib/semmle/code/csharp/dataflow/internal/BaseSSA.qll |
Moved SimpleLocalScopeVariable class and supporting predicates from PreSsa |
csharp/ql/lib/semmle/code/csharp/dataflow/internal/SsaImpl.qll |
Updated import from PreSsa to BaseSSA |
csharp/ql/lib/semmle/code/csharp/controlflow/internal/Splitting.qll |
Removed TSsaBooleanSplitSubKind and PreSsa import |
csharp/ql/lib/semmle/code/csharp/controlflow/Guards.qll |
Removed PreCfg module and moved predicates to top level; one incorrect reference updated |
csharp/ql/test/library-tests/dataflow/defuse/useUseEquivalence.ql |
Updated import and type references from PreSsa to BaseSSA |
csharp/ql/test/library-tests/dataflow/defuse/parameterUseEquivalence.ql |
Updated import and type references from PreSsa to BaseSSA |
csharp/ql/test/library-tests/dataflow/defuse/defUseEquivalence.ql |
Updated import and type references from PreSsa to BaseSSA |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
7589533 to
adac392
Compare
aschackmull
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!
Now that CFG splitting based on Boolean values has been removed, we no longer need the
PreSsalibrary.