diff options
author | Nico Weber <nicolasweber@gmx.de> | 2017-09-28 16:16:39 +0000 |
---|---|---|
committer | Nico Weber <nicolasweber@gmx.de> | 2017-09-28 16:16:39 +0000 |
commit | b688d131f0a3f062d3d4c7c936a11c353547d866 (patch) | |
tree | 556e40b0e56d2d6c1f2822012ea257313bbf53cd /clang/lib/Analysis/UninitializedValues.cpp | |
parent | 35fdaa94f7fae76bb8dc905e16f2a4fcef8ed34e (diff) | |
download | llvm-b688d131f0a3f062d3d4c7c936a11c353547d866.zip llvm-b688d131f0a3f062d3d4c7c936a11c353547d866.tar.gz llvm-b688d131f0a3f062d3d4c7c936a11c353547d866.tar.bz2 |
Consolidate std::move() detection code. No behavior change.
llvm-svn: 314427
Diffstat (limited to 'clang/lib/Analysis/UninitializedValues.cpp')
-rw-r--r-- | clang/lib/Analysis/UninitializedValues.cpp | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/clang/lib/Analysis/UninitializedValues.cpp b/clang/lib/Analysis/UninitializedValues.cpp index 7d295a1..5f11d8a 100644 --- a/clang/lib/Analysis/UninitializedValues.cpp +++ b/clang/lib/Analysis/UninitializedValues.cpp @@ -440,16 +440,11 @@ static bool isPointerToConst(const QualType &QT) { void ClassifyRefs::VisitCallExpr(CallExpr *CE) { // Classify arguments to std::move as used. - if (CE->getNumArgs() == 1) { - if (FunctionDecl *FD = CE->getDirectCallee()) { - if (FD->isInStdNamespace() && FD->getIdentifier() && - FD->getIdentifier()->isStr("move")) { - // RecordTypes are handled in SemaDeclCXX.cpp. - if (!CE->getArg(0)->getType()->isRecordType()) - classify(CE->getArg(0), Use); - return; - } - } + if (CE->isCallToStdMove()) { + // RecordTypes are handled in SemaDeclCXX.cpp. + if (!CE->getArg(0)->getType()->isRecordType()) + classify(CE->getArg(0), Use); + return; } // If a value is passed by const pointer or by const reference to a function, |