From 200b828ead9f6bb5b2f6f99919837d5828a250e4 Mon Sep 17 00:00:00 2001 From: Dimitri van Heesch Date: Sat, 22 Nov 2014 13:00:47 +0100 Subject: [PATCH] Bug 739863 - Regression: Base classes incorrect when using CRTP with default template parameter --- src/util.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/util.cpp b/src/util.cpp index acf0063d52a..64e63c8542d 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -6027,10 +6027,11 @@ QCString substituteTemplateArgumentsInString( // for its template instance argument. bool found=FALSE; for (formAli.toFirst(); - (formArg=formAli.current()) && !found && (actArg=actAli.current()); + (formArg=formAli.current()) && !found; ++formAli,++actAli ) { + actArg = actAli.current(); if (formArg->type.left(6)=="class " && formArg->name.isEmpty()) { formArg->name = formArg->type.mid(6); @@ -6046,7 +6047,7 @@ QCString substituteTemplateArgumentsInString( //printf("n=%s formArg->type='%s' formArg->name='%s' formArg->defval='%s'\n", // n.data(),formArg->type.data(),formArg->name.data(),formArg->defval.data()); //printf(">> formArg->name='%s' actArg->type='%s' actArg->name='%s'\n", - // formArg->name.data(),actArg->type.data(),actArg->name.data() + // formArg->name.data(),actArg ? actArg->type.data() : "",actArg ? actArg->name.data() : "" // ); if (formArg->name==n && actArg && !actArg->type.isEmpty()) // base class is a template argument {