Clang's C++ Modernizer Is Becoming More Useful
Last year Intel proposed a tool to auto-convert C++ code into C++11 compliant code. The last time I wrote about this automatic code migrator it was called the C++11 Migrator and was still making steady progress, but that was months ago. Today we have an update on this useful utility now known as the C++ Modernizer and can auto-convert large amounts of code.
The LLVM/Clang utility for automatically translating C++ code into taking advantage of modern C++ language functionality is now called the Clang C++ Modernizer. Over the summer the C++ Modernizer made a huge leap forward after student developer Guillaume Papin was focusing upon the utility as a Google Summer of Code project. While it started off as an Intel project, the C++ Modernizer has become a much larger LLVM/Clang undertaking.
Among the improvements to be found in the Clang C++ Modernizer is the ability to now modernize header files, new command options for controlling what's modernized, support for six transforms, override transform improvements, LLVM's LibFormat is being used to reformat the modernized code, and transforms can now be chosen based upon the intended compiler target -- including GCC, Microsoft Visual C, and LLVM version targets.
Coming soon is the ability to transform many translation units in parallel along with supporting more transforms for automatically cleaning up and modernizing C++ code using LLVM. More details on the C++ Modernizer can be found via this LLVM blog post.
The LLVM/Clang utility for automatically translating C++ code into taking advantage of modern C++ language functionality is now called the Clang C++ Modernizer. Over the summer the C++ Modernizer made a huge leap forward after student developer Guillaume Papin was focusing upon the utility as a Google Summer of Code project. While it started off as an Intel project, the C++ Modernizer has become a much larger LLVM/Clang undertaking.
Among the improvements to be found in the Clang C++ Modernizer is the ability to now modernize header files, new command options for controlling what's modernized, support for six transforms, override transform improvements, LLVM's LibFormat is being used to reformat the modernized code, and transforms can now be chosen based upon the intended compiler target -- including GCC, Microsoft Visual C, and LLVM version targets.
Coming soon is the ability to transform many translation units in parallel along with supporting more transforms for automatically cleaning up and modernizing C++ code using LLVM. More details on the C++ Modernizer can be found via this LLVM blog post.
3 Comments