summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaDecl.cpp
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2009-12-06 00:23:49 +0000
committerAnders Carlsson <andersca@mac.com>2009-12-06 00:23:49 +0000
commit0911ae8ef20f0251d51cb840cbe41b4255565351 (patch)
tree16119fee7e3c33cd3f92757363d9e1fcc79d30e2 /clang/lib/Sema/SemaDecl.cpp
parent58eea20f47c54ff0f230234cddac70dec44da16c (diff)
downloadbcm5719-llvm-0911ae8ef20f0251d51cb840cbe41b4255565351.tar.gz
bcm5719-llvm-0911ae8ef20f0251d51cb840cbe41b4255565351.zip
Pass the desired vtable linkage to GenerateVtable directly. Only call MaybeMarkVirtualImplicitMembersReferenced for non-inline functions.
llvm-svn: 90686
Diffstat (limited to 'clang/lib/Sema/SemaDecl.cpp')
-rw-r--r--clang/lib/Sema/SemaDecl.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp
index c5bebcc9516..d05340a4267 100644
--- a/clang/lib/Sema/SemaDecl.cpp
+++ b/clang/lib/Sema/SemaDecl.cpp
@@ -4120,7 +4120,9 @@ Sema::DeclPtrTy Sema::ActOnFinishFunctionBody(DeclPtrTy D, StmtArg BodyArg,
if (Method->isVirtual() && !Method->isPure())
MarkDeclarationReferenced(Method->getLocation(), Method);
- MaybeMarkVirtualImplicitMembersReferenced(Method->getLocation(), Method);
+ if (!Method->isInlined())
+ MaybeMarkVirtualImplicitMembersReferenced(Method->getLocation(),
+ Method);
}
assert(FD == getCurFunctionDecl() && "Function parsing confused");
} else if (ObjCMethodDecl *MD = dyn_cast_or_null<ObjCMethodDecl>(dcl)) {
OpenPOWER on IntegriCloud