static bool classof(StaticAssertDecl *D) { return true; }
};
-/// CXXTempVarDecl - Represents an implicit C++ temporary variable declaration.
-class CXXTempVarDecl : public VarDecl {
-protected:
- CXXTempVarDecl(DeclContext *DC, QualType T)
- : VarDecl(CXXTempVar, DC, SourceLocation(), 0, T, None) {}
-
-public:
- static CXXTempVarDecl *Create(ASTContext &C, DeclContext *DC,
- QualType T);
-
- static bool classof(const Decl *D) {
- return D->getKind() == Decl::CXXTempVar;
- }
- static bool classof(CXXTempVarDecl *D) { return true; }
-};
-
/// Insertion operator for diagnostics. This allows sending AccessSpecifier's
/// into a diagnostic with <<.
const DiagnosticBuilder &operator<<(const DiagnosticBuilder &DB,
DECL(ParmVar, VarDecl)
DECL(OriginalParmVar, ParmVarDecl)
DECL(NonTypeTemplateParm, VarDecl)
- DECL(CXXTempVar, VarDecl)
DECL(Template, NamedDecl)
DECL(FunctionTemplate, TemplateDecl)
DECL(ClassTemplate, TemplateDecl)
case ObjCForwardProtocol:
case Block:
case TranslationUnit:
- case CXXTempVar:
// Aren't looked up?
case UsingDirective:
StaticAssertDecl::~StaticAssertDecl() {
}
-CXXTempVarDecl *CXXTempVarDecl::Create(ASTContext &C, DeclContext *DC,
- QualType T) {
- assert((T->isDependentType() ||
- isa<CXXRecordDecl>(T->getAsRecordType()->getDecl())) &&
- "CXXTempVarDecl must either have a dependent type "
- "or a C++ record type!");
- return new (C) CXXTempVarDecl(DC, T);
-}
-
static const char *getAccessName(AccessSpecifier AS) {
switch (AS) {
default: