diff options
author | Roman Divacky <rdivacky@FreeBSD.org> | 2010-01-23 11:10:26 +0000 |
---|---|---|
committer | Roman Divacky <rdivacky@FreeBSD.org> | 2010-01-23 11:10:26 +0000 |
commit | 5044f5c816adfd5cba17f1adee1a10127296d0bf (patch) | |
tree | c69d3f4f13d508570bb5257a6aea735f88bdf09c /include/clang/AST/CXXInheritance.h | |
parent | ee791dde723a2089c681d2ab6a9d4f96379d5f49 (diff) | |
download | src-5044f5c816adfd5cba17f1adee1a10127296d0bf.tar.gz src-5044f5c816adfd5cba17f1adee1a10127296d0bf.zip |
Update clang to r94309.
Notes
Notes:
svn path=/vendor/clang/dist/; revision=202879
Diffstat (limited to 'include/clang/AST/CXXInheritance.h')
-rw-r--r-- | include/clang/AST/CXXInheritance.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/include/clang/AST/CXXInheritance.h b/include/clang/AST/CXXInheritance.h index 7c826fe75d11..1491b1edbbac 100644 --- a/include/clang/AST/CXXInheritance.h +++ b/include/clang/AST/CXXInheritance.h @@ -65,9 +65,21 @@ struct CXXBasePathElement { /// subobject is being used. class CXXBasePath : public llvm::SmallVector<CXXBasePathElement, 4> { public: + CXXBasePath() : Access(AS_public) {} + + /// \brief The access along this inheritance path. This is only + /// calculated when recording paths. AS_none is a special value + /// used to indicate a path which permits no legal access. + AccessSpecifier Access; + /// \brief The set of declarations found inside this base class /// subobject. DeclContext::lookup_result Decls; + + void clear() { + llvm::SmallVectorImpl<CXXBasePathElement>::clear(); + Access = AS_public; + } }; /// BasePaths - Represents the set of paths from a derived class to @@ -131,10 +143,10 @@ class CXXBasePaths { /// is also recorded. bool DetectVirtual; - /// ScratchPath - A BasePath that is used by Sema::IsDerivedFrom + /// ScratchPath - A BasePath that is used by Sema::lookupInBases /// to help build the set of paths. CXXBasePath ScratchPath; - + /// DetectedVirtual - The base class that is virtual. const RecordType *DetectedVirtual; |