summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaAccess.cpp
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2009-05-13 21:11:42 +0000
committerAnders Carlsson <andersca@mac.com>2009-05-13 21:11:42 +0000
commit49d216db155b50a266ea945a240c019f7cefc15e (patch)
tree2c9c4574897243b97a25153cb27f7da7ccb433fd /clang/lib/Sema/SemaAccess.cpp
parent3b204e4c2e0669ff570214ef6f2771c532114de7 (diff)
downloadbcm5719-llvm-49d216db155b50a266ea945a240c019f7cefc15e.tar.gz
bcm5719-llvm-49d216db155b50a266ea945a240c019f7cefc15e.zip
Add a new, more advanced CheckDerivedToBaseConversion that takes custom diagnostic IDs.
llvm-svn: 71720
Diffstat (limited to 'clang/lib/Sema/SemaAccess.cpp')
-rw-r--r--clang/lib/Sema/SemaAccess.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/clang/lib/Sema/SemaAccess.cpp b/clang/lib/Sema/SemaAccess.cpp
index b832d38d1d8..bae69ac6dc7 100644
--- a/clang/lib/Sema/SemaAccess.cpp
+++ b/clang/lib/Sema/SemaAccess.cpp
@@ -46,7 +46,9 @@ bool Sema::SetMemberAccessSpecifier(NamedDecl *MemberDecl,
/// CheckBaseClassAccess - Check that a derived class can access its base class
/// and report an error if it can't. [class.access.base]
bool Sema::CheckBaseClassAccess(QualType Derived, QualType Base,
- BasePaths& Paths, SourceLocation AccessLoc) {
+ unsigned InaccessibleBaseID,
+ BasePaths& Paths, SourceLocation AccessLoc,
+ DeclarationName Name) {
Base = Context.getCanonicalType(Base).getUnqualifiedType();
assert(!Paths.isAmbiguous(Base) &&
"Can't check base class access if set of paths is ambiguous");
@@ -101,8 +103,8 @@ bool Sema::CheckBaseClassAccess(QualType Derived, QualType Base,
}
if (InacessibleBase) {
- Diag(AccessLoc, diag::err_conv_to_inaccessible_base)
- << Derived << Base;
+ Diag(AccessLoc, InaccessibleBaseID)
+ << Derived << Base << Name;
AccessSpecifier AS = InacessibleBase->getAccessSpecifierAsWritten();
OpenPOWER on IntegriCloud