Format-3 move with multiple lines in 'ON EXCEPTION' block causes parse-error (AcuCobol)

We are trying to parse Cobol sources.

Some ‘format-3’ moves with multiple lines of code in an ‘ON EXCEPTION’ block cause parse-errors.
I have included an example that does not parse.
In this case it is not easy for us to determinewhat exactly causes the parse-error to occur.

Versions used:
Cobol: AcuCobol version 10.2.1, fixed format
SonarQube: Enterprise Edition Version 9.6.1 (build 59531)

– extract from the parser logging –

ERROR: Unable to parse COBOL source file : /build/builds/_NwxSV3v/0/dataserver-utilities/tdeltaplayground/sonar-parse-errors/cobol-src/source/PP0025 at line 17

Original contents starting from line 1 till line 17:
       IDENTIFICATION DIVISION.
       PROGRAM-ID. PP0025.
       WORKING-STORAGE SECTION.
       01  VARIABLE PIC 9.
       PROCEDURE DIVISION.
      *    The code between the 'ON EXCEPTION' and the 'END-MOVE'
      *    causes a parsing error. Not quite sure what exactly triggers 
      *    it: Removing the 'MOVE 3 TO VARIABLE' already fixes it, as
      *    does replacing the 'IF' statement by a simple MOVE statement.
           MOVE "1" TO VARIABLE WITH CONVERSION
              ON EXCEPTION
                 MOVE 3 TO VARIABLE
                 IF VARIABLE = 0
                    MOVE 4 TO VARIABLE
                 END-IF
           END-MOVE
           GOBACK.


Preprocessed contents: 
Parse error at line 17:

    4:  01 VARIABLE PIC 9 .
    5:  PROCEDURE DIVISION .
   10:  MOVE "1" TO VARIABLE WITH CONVERSION
   11:  ON EXCEPTION
   12:  MOVE 3 TO VARIABLE
   13:  IF VARIABLE = 0
   14:  MOVE 4 TO VARIABLE
   15:  END-IF
   16:  END-MOVE
   17:  GOBACK .
       ^
   18:  EOF

Please fix this parse-error

Yes, that’s the problem. More precisely, our parser doesn’t accept an ON EXCEPTION clause that contains more than 1 statement.
And that seems to be consistent with the AcuCOBOL reference for MOVE.

Edited
I have taken a look at the manual, and it looks like my example is indeed not valid code
(although it does compile).
However, if your remark about the parser is correct (’ our parser doesn’t accept an ON EXCEPTION clause that contains more than 1 statement.'), then there still is a problem.
The AcuCobol reference manual states:
‘Imperative statements specify an unconditional action to be taken by the object program. Whenever an imperative statement is allowed, it may consist of a sequence of consecutive imperative statements.’

I think your statement is incorrect, based on my comment in the code: When the ‘IF’ statement is replaced with a simple MOVE there are two consecutive MOVE stamtents. And that parses.
So it looks like the parser complies with the spec.

Why isn’t your example valid?
Can you please provide a valid example then?
Thanks.

We will investigate the problem anyway: SONARCOBOL-1664