diff --git a/src/libs/cplusplus/CheckUndefinedSymbols.cpp b/src/libs/cplusplus/CheckUndefinedSymbols.cpp
index 245b6be21eaddacd7a2037164f76a56645a8f035..c91de03cde82721898b106f25f0e6cc399ac82ea 100644
--- a/src/libs/cplusplus/CheckUndefinedSymbols.cpp
+++ b/src/libs/cplusplus/CheckUndefinedSymbols.cpp
@@ -413,7 +413,7 @@ bool CheckUndefinedSymbols::visit(QualifiedNameAST *ast)
 
 bool CheckUndefinedSymbols::visit(TypenameTypeParameterAST *ast)
 {
-    if (ast->name) {
+    if (ast->name && ast->name->name) {
         if (const Identifier *templId = ast->name->name->identifier()) {
             const QByteArray id = QByteArray::fromRawData(templId->chars(), templId->size());
             if (_potentialTypes.contains(id)) {