diff --git a/src/plugins/debugger/namedemangler/parsetreenodes.cpp b/src/plugins/debugger/namedemangler/parsetreenodes.cpp
index 5e59aec8864630bb20e0d409f75c5a635704e0ca..729ddcebd56a0813a75e5b330fcc763dd7506ede 100644
--- a/src/plugins/debugger/namedemangler/parsetreenodes.cpp
+++ b/src/plugins/debugger/namedemangler/parsetreenodes.cpp
@@ -60,7 +60,7 @@ namespace Internal {
 template<int base> static int getNonNegativeNumber(GlobalParseState *parseState)
 {
     ParseTreeNode::parseRule<NonNegativeNumberNode<base> >(parseState);
-    const NonNegativeNumberNode<base>::Ptr numberNode
+    const typename NonNegativeNumberNode<base>::Ptr numberNode
             = DEMANGLER_CAST(NonNegativeNumberNode<base>, parseState->popFromStack());
     const int value = static_cast<int>(numberNode->number());
     return value;