Fix issue with slice expressions not being visited or printed
This commit is contained in:
parent
5f5a10b8fa
commit
e6c83354e5
20
astprinter.d
20
astprinter.d
|
@ -1050,18 +1050,20 @@ class XMLPrinter : ASTVisitor
|
|||
override void visit(SliceExpression sliceExpression)
|
||||
{
|
||||
output.writeln("<sliceExpression>");
|
||||
if (sliceExpression.unaryExpression is null)
|
||||
visit(sliceExpression.unaryExpression);
|
||||
if (sliceExpression.lower !is null)
|
||||
{
|
||||
output.writeln("<low");
|
||||
output.writeln("<low>");
|
||||
visit(sliceExpression.lower);
|
||||
output.writeln("</low");
|
||||
output.writeln("<high");
|
||||
visit(sliceExpression.upper);
|
||||
output.writeln("</high");
|
||||
output.writeln("</low>");
|
||||
}
|
||||
else
|
||||
visit(sliceExpression.unaryExpression);
|
||||
output.writeln("<sliceExpression>");
|
||||
if (sliceExpression.upper !is null)
|
||||
{
|
||||
output.writeln("<high>");
|
||||
visit(sliceExpression.upper);
|
||||
output.writeln("</high>");
|
||||
}
|
||||
output.writeln("</sliceExpression>");
|
||||
}
|
||||
|
||||
override void visit(Statement statement)
|
||||
|
|
|
@ -2741,7 +2741,7 @@ public:
|
|||
mixin (visitIfNotNull!(primaryExpression, newExpression,
|
||||
deleteExpression, castExpression, functionCallExpression, argumentList,
|
||||
unaryExpression, type, identifierOrTemplateInstance, assertExpression,
|
||||
indexExpression));
|
||||
sliceExpression, indexExpression));
|
||||
}
|
||||
|
||||
/** */ Type type;
|
||||
|
|
Loading…
Reference in New Issue