diff options
| author | Chandler Carruth <chandlerc@gmail.com> | 2013-09-04 17:35:07 +0000 |
|---|---|---|
| committer | Chandler Carruth <chandlerc@gmail.com> | 2013-09-04 17:35:07 +0000 |
| commit | d9063c46f59f4bec47bcbeddca8ca2f789348c03 (patch) | |
| tree | 76505542df7a05016dc71ffe44ed3ba264fb54be /clang-tools-extra/cpp11-migrate/UseNullptr/UseNullptr.cpp | |
| parent | 6a23d212897d5402035cfaea82260f6dae1c8f2a (diff) | |
| download | bcm5719-llvm-d9063c46f59f4bec47bcbeddca8ca2f789348c03.tar.gz bcm5719-llvm-d9063c46f59f4bec47bcbeddca8ca2f789348c03.zip | |
Rename cpp11-migrate to clang-modernize.
There is no reason to expect this tool to be limited to C++11, it seems
very likely to be of on-going interest. It seems likely to be useful for
modernizing even as new libraries come out in TSes and other formats
than a complete standard. Fundamentally, we need something a bit more
general. After some discussion on the list, going with
'clang-modernize'.
I've tried to do a reasonably comprehensive job of fixing up the names,
but I may still have missed some. Feel free to poke me if you spot any
fallout here. Things I've tried reasonably hard to find and fix:
- cpp11-migrate -> clang-modernize
- Migrator -> Modernizer
- Clean up the introductory documentation that was C++11 specific.
I'll also point out that this tool continues to delight me. =] Also,
a huge thanks to those who have so carefully, thoroughly documented the
tool. The docs here are simply phenomenal. Every tool should be this
well documented. I hope I have updated the documentation reasonably
well, but I'm not very good at documentation, so review much
appreciated.
llvm-svn: 189960
Diffstat (limited to 'clang-tools-extra/cpp11-migrate/UseNullptr/UseNullptr.cpp')
| -rw-r--r-- | clang-tools-extra/cpp11-migrate/UseNullptr/UseNullptr.cpp | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/clang-tools-extra/cpp11-migrate/UseNullptr/UseNullptr.cpp b/clang-tools-extra/cpp11-migrate/UseNullptr/UseNullptr.cpp deleted file mode 100644 index e07ee6682ee..00000000000 --- a/clang-tools-extra/cpp11-migrate/UseNullptr/UseNullptr.cpp +++ /dev/null @@ -1,70 +0,0 @@ -//===-- UseNullptr/UseNullptr.cpp - C++11 nullptr migration ---------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -/// -/// \file -/// \brief This file provides the implementation of the UseNullptrTransform -/// class. -/// -//===----------------------------------------------------------------------===// - -#include "UseNullptr.h" -#include "NullptrActions.h" -#include "NullptrMatchers.h" -#include "clang/Frontend/FrontendActions.h" -#include "clang/Tooling/Refactoring.h" -#include "clang/Tooling/Tooling.h" - -using clang::ast_matchers::MatchFinder; -using namespace clang::tooling; -using namespace clang; - -int UseNullptrTransform::apply(const FileOverrides &InputStates, - const CompilationDatabase &Database, - const std::vector<std::string> &SourcePaths) { - ClangTool UseNullptrTool(Database, SourcePaths); - - unsigned AcceptedChanges = 0; - - MatchFinder Finder; - NullptrFixer Fixer(AcceptedChanges, Options().MaxRiskLevel, /*Owner=*/ *this); - - Finder.addMatcher(makeCastSequenceMatcher(), &Fixer); - - setOverrides(InputStates); - - if (int result = UseNullptrTool.run(createActionFactory(Finder))) { - llvm::errs() << "Error encountered during translation.\n"; - return result; - } - - setAcceptedChanges(AcceptedChanges); - - return 0; -} - -struct UseNullptrFactory : TransformFactory { - UseNullptrFactory() { - Since.Clang = Version(3, 0); - Since.Gcc = Version(4, 6); - Since.Icc = Version(12, 1); - Since.Msvc = Version(10); - } - - Transform *createTransform(const TransformOptions &Opts) LLVM_OVERRIDE { - return new UseNullptrTransform(Opts); - } -}; - -// Register the factory using this statically initialized variable. -static TransformFactoryRegistry::Add<UseNullptrFactory> -X("use-nullptr", "Make use of nullptr keyword where possible"); - -// This anchor is used to force the linker to link in the generated object file -// and thus register the factory. -volatile int UseNullptrTransformAnchorSource = 0; |

