This patch adds very basic support for parsing and type-checking class
inheritance in C++. It'll parse the base-specifier list, e.g.,

 class D : public B1, virtual public B2 { };

and do some of the simpler semantic checks (B1 and B2 are classes;
they aren't unions or incomplete types, etc).



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49623 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/Sema.h b/lib/Sema/Sema.h
index 226ffa2..7b30573 100644
--- a/lib/Sema/Sema.h
+++ b/lib/Sema/Sema.h
@@ -588,7 +588,16 @@
                                                  SourceLocation ProtoLoc,
                                                  SourceLocation LParenLoc,
                                                  SourceLocation RParenLoc);
+
+  //===--------------------------------------------------------------------===//
+  // C++ Classes
+  //
+  /// ActOnBaseSpecifier - Parsed a base specifier
+  virtual void ActOnBaseSpecifier(DeclTy *classdecl, SourceRange SpecifierRange,
+                                  bool Virtual, AccessSpecifier Access,
+                                  DeclTy *basetype, SourceLocation BaseLoc);
   
+
   // Objective-C declarations.
   virtual DeclTy *ActOnStartClassInterface(
                     SourceLocation AtInterafceLoc,