A Correct Refactoring Operation to Rename Global Variables in C Programs
Abstract
Most integrated development environments are shipped with refactoring tools. However, their refactoring operations are often known to be unreliable. As a consequence, developers have to test their code after applying an automatic refactoring. In this report, we consider a refactoring operation (renaming of global variables in C), and we prove that its core implementation preserves the set of possible behaviors of transformed programs. That proof of correctness relies on the operational semantics of C provided by Compcert C in Coq. We also prove some static properties of the considered refactoring operation and we use them to find properties of some composed refactoring operations.
Origin | Files produced by the author(s) |
---|
Loading...
![]()
Has part hal-01277269 Conference output Julien Cohen. Renaming Global Variables in C Mechanically Proved Correct. Fourth International Workshop on Verification and Program Transformation, Apr 2016, Eindhoven, Netherlands. ⟨hal-01277269⟩