summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2009-03-27 18:54:29 +0000
committerAnders Carlsson <andersca@mac.com>2009-03-27 18:54:29 +0000
commit93d35acb287038a9585e16aa72711e24112a4dc3 (patch)
tree6389d7b8811a76e6c744867e190b71708d56e613 /clang/lib
parent586c66d5bab690c4f5f86bd7688e115cf002ab12 (diff)
downloadbcm5719-llvm-93d35acb287038a9585e16aa72711e24112a4dc3.tar.gz
bcm5719-llvm-93d35acb287038a9585e16aa72711e24112a4dc3.zip
Add a Class field to the base path element structure. This holds the record decl of the class taht the base is a base of.
llvm-svn: 67859
Diffstat (limited to 'clang/lib')
-rw-r--r--clang/lib/Sema/SemaInherit.cpp1
-rw-r--r--clang/lib/Sema/SemaInherit.h3
2 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaInherit.cpp b/clang/lib/Sema/SemaInherit.cpp
index c572f62d611..cc495c5ea49 100644
--- a/clang/lib/Sema/SemaInherit.cpp
+++ b/clang/lib/Sema/SemaInherit.cpp
@@ -132,6 +132,7 @@ bool Sema::LookupInBases(CXXRecordDecl *Class,
// Add this base specifier to the current path.
BasePathElement Element;
Element.Base = &*BaseSpec;
+ Element.Class = Class;
if (BaseSpec->isVirtual())
Element.SubobjectNumber = 0;
else
diff --git a/clang/lib/Sema/SemaInherit.h b/clang/lib/Sema/SemaInherit.h
index 8d008a2ce61..6138685b264 100644
--- a/clang/lib/Sema/SemaInherit.h
+++ b/clang/lib/Sema/SemaInherit.h
@@ -39,6 +39,9 @@ namespace clang {
/// path element.
const CXXBaseSpecifier *Base;
+ /// Class - The record decl of the class that the base is a base of.
+ const CXXRecordDecl *Class;
+
/// SubobjectNumber - Identifies which base class subobject (of type
/// @c Base->getType()) this base path element refers to. This
/// value is only valid if @c !Base->isVirtual(), because there
OpenPOWER on IntegriCloud