diff options
| author | Guillaume Papin <guillaume.papin@epitech.eu> | 2013-07-24 14:24:33 +0000 |
|---|---|---|
| committer | Guillaume Papin <guillaume.papin@epitech.eu> | 2013-07-24 14:24:33 +0000 |
| commit | ebde78c4c6149dfd6dfcddd39ed07e5aec1860ed (patch) | |
| tree | f7f8d701fa318b856bb99c801f0b3e62ed33873d /clang-tools-extra/cpp11-migrate/UseAuto/UseAuto.cpp | |
| parent | 197af31aba9208e35b153d7f3caad8cc819d2ff2 (diff) | |
| download | bcm5719-llvm-ebde78c4c6149dfd6dfcddd39ed07e5aec1860ed.tar.gz bcm5719-llvm-ebde78c4c6149dfd6dfcddd39ed07e5aec1860ed.zip | |
cpp11-migrate: Register the transforms automatically using llvm::Registry
With this change each transform now register a factory. The factories are
registered using an llvm::Registry which makes them available globally.
llvm-svn: 187041
Diffstat (limited to 'clang-tools-extra/cpp11-migrate/UseAuto/UseAuto.cpp')
| -rw-r--r-- | clang-tools-extra/cpp11-migrate/UseAuto/UseAuto.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/clang-tools-extra/cpp11-migrate/UseAuto/UseAuto.cpp b/clang-tools-extra/cpp11-migrate/UseAuto/UseAuto.cpp index b85f54712a7..47c2cd53215 100644 --- a/clang-tools-extra/cpp11-migrate/UseAuto/UseAuto.cpp +++ b/clang-tools-extra/cpp11-migrate/UseAuto/UseAuto.cpp @@ -47,3 +47,17 @@ int UseAutoTransform::apply(FileOverrides &InputStates, return 0; } + +struct UseAutoFactory : TransformFactory { + Transform *createTransform(const TransformOptions &Opts) LLVM_OVERRIDE { + return new UseAutoTransform(Opts); + } +}; + +// Register the factory using this statically initialized variable. +static TransformFactoryRegistry::Add<UseAutoFactory> +X("use-auto", "Use of 'auto' type specifier"); + +// This anchor is used to force the linker to link in the generated object file +// and thus register the factory. +volatile int UseAutoTransformAnchorSource = 0; |

