summaryrefslogtreecommitdiff
path: root/lib/ASTMatchers/Dynamic/VariantValue.cpp
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2017-01-06 20:13:35 +0000
committerDimitry Andric <dim@FreeBSD.org>2017-01-06 20:13:35 +0000
commit6694ed095d6b27a2c92ec4fd63664fcd88a05749 (patch)
tree0633c29bd8350e306f3a24a30f3f6045efd35420 /lib/ASTMatchers/Dynamic/VariantValue.cpp
parentd5dc75c5cf109efe52b1da32ec44a667389a0f0a (diff)
Diffstat (limited to 'lib/ASTMatchers/Dynamic/VariantValue.cpp')
-rw-r--r--lib/ASTMatchers/Dynamic/VariantValue.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/ASTMatchers/Dynamic/VariantValue.cpp b/lib/ASTMatchers/Dynamic/VariantValue.cpp
index 8f3c70c1a8d8..f0339ed479cd 100644
--- a/lib/ASTMatchers/Dynamic/VariantValue.cpp
+++ b/lib/ASTMatchers/Dynamic/VariantValue.cpp
@@ -216,18 +216,20 @@ private:
VariantMatcher::VariantMatcher() {}
VariantMatcher VariantMatcher::SingleMatcher(const DynTypedMatcher &Matcher) {
- return VariantMatcher(new SinglePayload(Matcher));
+ return VariantMatcher(std::make_shared<SinglePayload>(Matcher));
}
VariantMatcher
VariantMatcher::PolymorphicMatcher(std::vector<DynTypedMatcher> Matchers) {
- return VariantMatcher(new PolymorphicPayload(std::move(Matchers)));
+ return VariantMatcher(
+ std::make_shared<PolymorphicPayload>(std::move(Matchers)));
}
VariantMatcher VariantMatcher::VariadicOperatorMatcher(
DynTypedMatcher::VariadicOperator Op,
std::vector<VariantMatcher> Args) {
- return VariantMatcher(new VariadicOpPayload(Op, std::move(Args)));
+ return VariantMatcher(
+ std::make_shared<VariadicOpPayload>(Op, std::move(Args)));
}
llvm::Optional<DynTypedMatcher> VariantMatcher::getSingleMatcher() const {