forked from OSchip/llvm-project
If the type isn't trivially moveable emplace can skip a potentially
expensive move. It also saves a couple of characters.
Call sites were found with the ASTMatcher + some semi-automated cleanup.
memberCallExpr(
argumentCountIs(1), callee(methodDecl(hasName("push_back"))),
on(hasType(recordDecl(has(namedDecl(hasName("emplace_back")))))),
hasArgument(0, bindTemporaryExpr(
hasType(recordDecl(hasNonTrivialDestructor())),
has(constructExpr()))),
unless(isInTemplateInstantiation()))
No functional change intended.
llvm-svn: 238602
|
||
|---|---|---|
| .. | ||
| BugDriver.cpp | ||
| BugDriver.h | ||
| CMakeLists.txt | ||
| CrashDebugger.cpp | ||
| ExecutionDriver.cpp | ||
| ExtractFunction.cpp | ||
| FindBugs.cpp | ||
| LLVMBuild.txt | ||
| ListReducer.h | ||
| Makefile | ||
| Miscompilation.cpp | ||
| OptimizerDriver.cpp | ||
| ToolRunner.cpp | ||
| ToolRunner.h | ||
| bugpoint.cpp | ||