diff --git a/libdparse b/libdparse
index 0ed3773..50f0e83 160000
--- a/libdparse
+++ b/libdparse
@@ -1 +1 @@
-Subproject commit 0ed37730cfe0036b700d8a96fea849a4ac227638
+Subproject commit 50f0e833ce664ebb46ada342a2e14c1e1eff0c71
diff --git a/src/analysis/enumarrayliteral.d b/src/analysis/enumarrayliteral.d
index 0564767..545851a 100644
--- a/src/analysis/enumarrayliteral.d
+++ b/src/analysis/enumarrayliteral.d
@@ -49,38 +49,15 @@ class EnumArrayLiteralCheck : BaseAnalyzer
{
if (initializer is null) continue;
if (initializer.nonVoidInitializer is null) continue;
- if (initializer.nonVoidInitializer.assignExpression is null) continue;
- line = autoDec.identifiers[i].line;
- column = autoDec.identifiers[i].column;
- text = autoDec.identifiers[i].text;
-// visit(initializer.nonVoidInitializer.assignExpression);
+ if (initializer.nonVoidInitializer.arrayInitializer is null) continue;
+ addErrorMessage(autoDec.identifiers[i].line,
+ autoDec.identifiers[i].column, "dscanner.performance.enum_array_literal",
+ "This enum may lead to unnecessary allocation at run-time."
+ ~ " Use 'static immutable " ~ autoDec.identifiers[i].text
+ ~ " = [ ...' instead.");
}
}
autoDec.accept(this);
}
-
- override void visit(const ArrayLiteral arrayLiteral)
- {
- if (!looking)
- return;
- addErrorMessage(line, column, "dscanner.performance.enum_array_literal",
- "This enum may lead to unnecessary allocation at run-time."
- ~ " Use 'static immutable " ~ text ~ " = [ ...' instead.");
- }
-
- override void visit(const AssocArrayLiteral assocArrayLiteral)
- {
- if (!looking)
- return;
- addErrorMessage(line, column, "dscanner.performance.enum_array_literal",
- "This enum may lead to unnecessary allocation at run-time."
- ~ " Use 'static immutable " ~ text ~ " = [ ...' instead.");
- }
-
-private:
-
- string text;
- size_t line;
- size_t column;
}
diff --git a/src/astprinter.d b/src/astprinter.d
index 6cf7e1d..8302510 100644
--- a/src/astprinter.d
+++ b/src/astprinter.d
@@ -960,10 +960,10 @@ class XMLPrinter : ASTVisitor
override void visit(const VariableDeclaration variableDeclaration)
{
- output.writeln("");
- writeDdoc(variableDeclaration.comment);
- variableDeclaration.accept(this);
- output.writeln("");
+ output.writeln("");
+ writeDdoc(variableDeclaration.comment);
+ variableDeclaration.accept(this);
+ output.writeln("");
}
override void visit(const XorExpression xorExpression)
@@ -985,7 +985,9 @@ class XMLPrinter : ASTVisitor
override void visit(const AliasThisDeclaration aliasThisDeclaration) { mixin (tagAndAccept!"aliasThisDeclaration"); }
override void visit(const ArgumentList argumentList) { mixin (tagAndAccept!"argumentList"); }
override void visit(const Arguments arguments) { mixin (tagAndAccept!"arguments"); }
+ override void visit(const ArrayInitializer arrayInitializer) { mixin (tagAndAccept!"arrayInitializer"); }
override void visit(const ArrayLiteral arrayLiteral) { mixin (tagAndAccept!"arrayLiteral"); }
+ override void visit(const ArrayMemberInitialization arrayMemberInitialization) { mixin (tagAndAccept!"arrayMemberInitialization"); }
override void visit(const AsmAddExp asmAddExp) { mixin (tagAndAccept!"asmAddExp"); }
override void visit(const AsmAndExp asmAndExp) { mixin (tagAndAccept!"asmAndExp"); }
override void visit(const AsmBrExp asmBrExp) { mixin (tagAndAccept!"asmBrExp"); }