forked from qt-creator/qt-creator
CppEditor: Fix "insert definition" for templates with value parameters
Fixes: QTCREATORBUG-26113 Change-Id: I2d2a1c1bdcffd67072bbda99dabbbfbfafe115c5 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -274,8 +274,15 @@ public:
|
||||
void visit(const TemplateNameId *name) override
|
||||
{
|
||||
QVarLengthArray<TemplateArgument, 8> args(name->templateArgumentCount());
|
||||
for (int i = 0; i < name->templateArgumentCount(); ++i)
|
||||
args[i] = rewrite->rewriteType(name->templateArgumentAt(i).type());
|
||||
for (int i = 0; i < name->templateArgumentCount(); ++i) {
|
||||
const TemplateArgument &oldArg = name->templateArgumentAt(i);
|
||||
args[i] = rewrite->rewriteType(oldArg.type());
|
||||
const NumericLiteral * const number = oldArg.numericLiteral();
|
||||
if (number) {
|
||||
args[i].setNumericLiteral(control()->numericLiteral(number->chars(),
|
||||
number->size()));
|
||||
}
|
||||
}
|
||||
temps.append(control()->templateNameId(identifier(name->identifier()), name->isSpecialization(),
|
||||
args.data(), args.size()));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user