Handle Switch in Taclets w/o Transformer#3761
Conversation
…es w/ string literals in queries)
|
I have looked into your commit. You have violated some principles of the javaparser: The AST class was not registered in ALL_NODE_CLASSES. This will lead to further reconstructions. Also, we should avoid keywords with minuses. My first question is: Do we really need a special case for marking the active one? Should we not mark the statements/expression instead? (Active statement vs. inactive prefix) |
|
I also moved the development to https://github.com/jmltoolkit/jmltk Repo wadoon/key-javaparser is obsolete. |
Alright. fixed.
I'm fine with
I see no other way to mark that we are currently executing a switch entry. Other ways like moving statements out of the switch do not model fall through semantics. |
Intended Change
Instead of relying on the switch-to-if transformer, which may have some bugs, this PR attempts to handle switch statements purely in taclets.
The general approach is to mark the branch currently executed as the
active-case.Effect on Proofs
Plan
Type of pull request
Ensuring quality
.github/workflows/tests.ymlAdditional information and contact(s)
The contributions within this pull request are licensed under GPLv2 (only) for inclusion in KeY.