diff options
Diffstat (limited to 'src/shared/cplusplus/CheckDeclarator.cpp')
-rw-r--r-- | src/shared/cplusplus/CheckDeclarator.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
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; } |