mbeckerle commented on a change in pull request #488:
URL: https://github.com/apache/incubator-daffodil/pull/488#discussion_r575298883



##########
File path: daffodil-runtime2/src/main/resources/c/libruntime/infoset.c
##########
@@ -160,10 +160,11 @@ walkInfosetNode(const VisitEventHandler *handler, const 
InfosetBase *infoNode)
                 handler->visitNumberElem(handler, childERD, numLocation);
             break;
         case CHOICE:
+            // Point next ERD to choice of alternative elements' ERDs
             if (!infoNode->erd->initChoice(infoNode, rootElement()))
             {
                 error_msg =
-                    "node's _choice field was not initialized during walk";
+                    "Walk error: no match between choice dispatch key and any 
branch key";

Review comment:
       This one, we're walking the infoset. So the parser has already dealt 
with the choice. At this point, if the choice dispatch key isn't one of the 
choice branch keys, then the parser didn't do its job. So I think this is an 
abort()/impossible situation that in theory one should not even be able to 
exercise. 




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