Closed dkcumming closed 1 year ago
Hi, this issue on mir-semantics is the origin of this problem. You can see the discussion between me and @geo2a
@dkcumming is this still an issue? I see that the original issue you mention is closed.
@radumereuta Yes this is still an issue. The reason the first issue is closed is that it was about the difference between the nix
and poetry
builds. Which after investigation we realised they were on different versions. Now they are on the same version but we have uncovered the bug in this issue.
I think something is wrong with the formatting of the
I'm investigating now and found the root cause of the problem. We have a step which should correct the format attribute for the GeneratedTopCell, but this gets lost because the module transformer doesn't check for attribute differences. This happens when we have a configuration that is not in the main module.
module TEST-SYNTAX
imports INT-SYNTAX
endmodule
module MIR-CONFIG
imports TEST-SYNTAX
configuration
<k> $PGM:Int </k>
<returncode exit=""> 4 </returncode>
endmodule
module TEST
imports TEST-SYNTAX
imports MIR-CONFIG
endmodule
This is blocked on https://github.com/runtimeverification/k/issues/3530
Another thing that needs to be fixed is this line: https://github.com/runtimeverification/k/blob/master/kore/src/main/scala/org/kframework/definition/outer.scala#L535 which needs to include the has for attributes.
We should make it so that compilation passes are self-contained. Instead of having a pass that comes through and adjusts th eformat attribute after the fact, it should just be updated at the time the configuration is modified, so that later passes don't have to think about it at all. The definition between each compilation pass should be a valid (or at least self-consistent) one.
What component is the issue in?
Front-End
Which command
What K Version?
v6.0.71 and back to at least v6.0.67
Operating System
Linux
K Definitions (If Possible)
No response
Steps to Reproduce
Expected Results
should be