From d01795d9334a96f0ae3f2b19b689fe9abd7fdf34 Mon Sep 17 00:00:00 2001 From: Roberto Raggi Date: Mon, 9 Feb 2009 17:44:06 +0100 Subject: Reimplemented Type::as*Type() using virtual methods. --- src/shared/cplusplus/CheckDeclarator.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/shared/cplusplus/CheckDeclarator.cpp') diff --git a/src/shared/cplusplus/CheckDeclarator.cpp b/src/shared/cplusplus/CheckDeclarator.cpp index beb2ed0bca..169a9f5d81 100644 --- a/src/shared/cplusplus/CheckDeclarator.cpp +++ b/src/shared/cplusplus/CheckDeclarator.cpp @@ -135,9 +135,12 @@ bool CheckDeclarator::visit(DeclaratorAST *ast) // ### check the initializer // FullySpecifiedType exprTy = semantic()->check(ast->initializer, _scope); - if (ast->initializer && _fullySpecifiedType->isFunction()) { - _fullySpecifiedType->asFunction()->setPureVirtual(true); + if (ast->initializer && _fullySpecifiedType) { + if (Function *funTy = _fullySpecifiedType->asFunctionType()) { + funTy->setPureVirtual(true); + } } + return false; } -- cgit v1.2.1