mbeckerle opened a new pull request #141: Fixed infinite loop due to not 
gathering the error reliably.
URL: https://github.com/apache/incubator-daffodil/pull/141
 
 
   Problem is that a regular scala lazy val x = expression
   If the expression throws, this lazy val will be re-evaluated over and
   over each time it is requested.
   
   That's why we have the LV system. This insures such values are attempted
   exactly once, and if they throw, the fact that they threw is remembered,
   and they're not attempted again.
   
   To reduce overhead we've taken out a bunch of the LVs. But this results
   in compiler errors that ripple. When parts of the compiler can't be LVs
   because they are methods with parameters, it's important to CALL such
   methods from something that IS an LV so that if an error is thrown, it's not
   repeatedly thrown.
   
   So a number of LVs have been put back in. Especially on things that
   involve recursive descent or traversal of the DSOM objects or
   corresponding XML.
   
   This also fixes some other minor bugs which were being masked. E.g., a
   test for hiddenGroupRef where the ref is empty string. I also renamed this
   test since it was poorly named.
   
   DAFFODIL-2202

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to