This patch contains these changes:

-Renamed ContextDecl -> DeclContext
-Removed DeclContext pointer from FieldDecl
-EnumDecl inherits from DeclContext, instead of TagDecl

Patch by Argiris Kirtzidis!



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49261 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/Sema.h b/lib/Sema/Sema.h
index b1d0499..98ecf87 100644
--- a/lib/Sema/Sema.h
+++ b/lib/Sema/Sema.h
@@ -32,7 +32,7 @@
   class ASTConsumer;
   class Preprocessor;
   class Decl;
-  class ContextDecl;
+  class DeclContext;
   class NamedDecl;
   class ScopedDecl;
   class Expr;
@@ -75,7 +75,7 @@
   /// the method decl for the method being parsed.
   ObjCMethodDecl *CurMethodDecl;
 
-  ContextDecl *CurContext;
+  DeclContext *CurContext;
 
   /// LabelMap - This is a mapping from label identifiers to the LabelStmt for
   /// it (which acts like the label decl in some ways).  Forward referenced
@@ -250,8 +250,8 @@
                              DeclTy **Elements, unsigned NumElements);
 private:
   /// Set the current declaration context until it gets popped.
-  void PushContextDecl(ContextDecl *CD);
-  void PopContextDecl();
+  void PushDeclContext(DeclContext *CD);
+  void PopDeclContext();
 
   /// Subroutines of ActOnDeclarator().
   TypedefDecl *ParseTypedefDecl(Scope *S, Declarator &D, QualType T,