International audienceMost 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 article, 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
Abstract. Program transformations in terms of abstract syntax trees compromise referential integrity...
Thirty years after its creation, C remains one of the most widely used systems programming languages...
Renaming operators are introduced in concrete process algebra (concrete means that abstraction and s...
International audienceMost integrated development environments are shipped with refactoring tools. H...
GALLINETTE_HCERES2020Most integrated development environments are shipped with refactoring tools. Ho...
Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any m...
A global variable in C/C++ is one that is declared outside a function, and whose scope extends the l...
Refactoring has become a popular technique for the development and maintenance of object-oriented sy...
Tool support for refactoring code written in mainstream languages such as C and C is currently lacki...
Software refactoring is the process by which a sequence of incremental transforma-tions is performed...
This document reports on our work in extending CompCert memory model with a relation to model reloca...
Refactoriug has become a well-known technique for transforming code in a way that preserves behavior...
The C preprocessor is heavily used in C programs because it provides useful and even necessary addit...
The C preprocessor is heavily used in C programs because it provides useful and even necessary addit...
A refactoring is a program transformation that improves the design of the source code, while preserv...
Abstract. Program transformations in terms of abstract syntax trees compromise referential integrity...
Thirty years after its creation, C remains one of the most widely used systems programming languages...
Renaming operators are introduced in concrete process algebra (concrete means that abstraction and s...
International audienceMost integrated development environments are shipped with refactoring tools. H...
GALLINETTE_HCERES2020Most integrated development environments are shipped with refactoring tools. Ho...
Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any m...
A global variable in C/C++ is one that is declared outside a function, and whose scope extends the l...
Refactoring has become a popular technique for the development and maintenance of object-oriented sy...
Tool support for refactoring code written in mainstream languages such as C and C is currently lacki...
Software refactoring is the process by which a sequence of incremental transforma-tions is performed...
This document reports on our work in extending CompCert memory model with a relation to model reloca...
Refactoriug has become a well-known technique for transforming code in a way that preserves behavior...
The C preprocessor is heavily used in C programs because it provides useful and even necessary addit...
The C preprocessor is heavily used in C programs because it provides useful and even necessary addit...
A refactoring is a program transformation that improves the design of the source code, while preserv...
Abstract. Program transformations in terms of abstract syntax trees compromise referential integrity...
Thirty years after its creation, C remains one of the most widely used systems programming languages...
Renaming operators are introduced in concrete process algebra (concrete means that abstraction and s...