Mike Beckerle created DAFFODIL-2686:
---------------------------------------

             Summary: left over data message diagnostic not clear enough
                 Key: DAFFODIL-2686
                 URL: https://issues.apache.org/jira/browse/DAFFODIL-2686
             Project: Daffodil
          Issue Type: Bug
          Components: Diagnostics
    Affects Versions: 3.3.0
            Reporter: Mike Beckerle
             Fix For: 3.4.0


Daffodil's diagnostic message on left-over-data is inadequate. 

When a user gets this message about left-over data, nothing mentions that
 * the parse ended normally
 * An infoset was created (nor is this infoset or any representation of it 
shown)

Furthermore, the message provided mentions offsets in bits, without giving a 
translation of those into units of bytes. (Even if divisible by 8). 

This diagnostic needs improvement. 

Furthermore, when this diagnostic is issued, it needs to suggest what stopped 
processing.  This may require a breadcrumb of why a repeating structure ended - 
e.g., if occursCountKind is parsed or implicit, that it a parse failure ended 
the array. 

I'm thinking a finite depth stack of parse errors needs to be maintained so 
that after a final failure that is resolved by terminating an array, that the 
prior diagnostic message (the one suppressed by the recurring element's 
termination), can have access to the most recent few processing errors. (By 
finite stack, I mean if the stack is full and you try to push, the bottom 
element of the stack is removed to make room for another top element)



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to