jadams-tresys commented on a change in pull request #369:
URL: https://github.com/apache/incubator-daffodil/pull/369#discussion_r416568023



##########
File path: 
daffodil-core/src/main/scala/org/apache/daffodil/grammar/HasStatementsGrammarMixin.scala
##########
@@ -18,10 +18,11 @@
 package org.apache.daffodil.grammar
 
 import org.apache.daffodil.dsom.Term
+import org.apache.daffodil.dsom.DFDLNewVariableInstance
 
 trait HasStatementsGrammarMixin extends GrammarMixin { self: Term =>
 
-  private lazy val statementGrams = statements.map { _.gram(self) }
+  private lazy val statementGrams = statements.filter{ st => 
!st.isInstanceOf[DFDLNewVariableInstance] }.map { _.gram(self) }

Review comment:
       So, the other possible statements are assert, discriminator, and 
setVariable. The reason NVI is filtered out is because they need to be 
processed before the other statements, or at least before setVariable 
statements. The test that Mike suggested elsewhere in the review actually 
triggered a bug as I was processing NVI after other statements.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to