Transforming C++11 Code to C++03 to Support Legacy Compilation Environments
G\'abor Antal, D\'avid Havas, Istv\'an Siket, \'Arp\'ad Besz\'edes,, Rudolf Ferenc, J\'ozsef Mihalicza

TL;DR
This paper presents an automated source code transformation framework that converts C++11 code into C++03, enabling developers to use modern features while maintaining compatibility with legacy systems.
Contribution
We developed an open-source framework that automatically backports C++11 features to C++03, facilitating modern development within legacy environment constraints.
Findings
Successfully applied to large industrial codebases
Enabled use of C++11 features in legacy-compatible code
Open-source tool available for community use
Abstract
Newer technologies - programming languages, environments, libraries - change very rapidly. However, various internal and external constraints often prevent projects from quickly adopting to these changes. Customers may require specific platform compatibility from a software vendor, for example. In this work, we deal with such an issue in the context of the C++ programming language. Our industrial partner is required to use SDKs that support only older C++ language editions. They, however, would like to allow their developers to use the newest language constructs in their code. To address this problem, we created a source code transformation framework to automatically backport source code written according to the C++11 standard to its functionally equivalent C++03 variant. With our framework developers are free to exploit the latest language features, while production code is still built…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed and Parallel Computing Systems · Scientific Computing and Data Management · Computational Physics and Python Applications
