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



##########
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:
       I think the parser order is right. In ElementCombinator1.scala, the 
parse() method first does pattern discrim/asserts. Then it does parseBegin 
which just creates the infoset element. Then it does eBeforeParser which is the 
NVE (and framing), and so on. So I think we're doing pattern stuff first.




----------------------------------------------------------------
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