Open DanielBaciu opened 3 years ago
What is the purpose of anything between the block label and the block?
We won't spend time for purely academical syntax constructs.
Whet we have between label and block is a prolint directive, which needs to be just before for each block.
Here is the code we used:
ToteRoute_Loop:
{&_proparse_ prolint-nowarn(use-index)}
for each bfRunnoToteLink
On compile time this directive is empty resulting an empty line between.
@DanielBaciu Note that this issue (and the other ones that have been reported the same day) are already fixed in the sonar-openedge implementation of Proparse.
When there is a preprocessor between block level and block itself poparse generates an error.
Code: ROUTE-BLOCK: {&proparse prolint-nowarn(use-index)} do: . end.
Error parsing blockLabel.p
Original Exception: unexpected token: ROUTE-BLOCK
C:\Analiza\Parse issue 15_bloc_label\blockLabel.p:2:3: unexpected token: ROUTE-BLOCK
at com.joanju.proparse.ProParser.blockorstate(ProParser.java:568)
at com.joanju.proparse.ProParser.program(ProParser.java:120)
at com.joanju.proparse.DoParse.doParse(DoParse.java:202)
at org.prorefactor.treeparser.ParseUnit.parse(ParseUnit.java:270)
at org.prorefactor.treeparser.ParseUnit.parse(ParseUnit.java:226)
at org.prorefactor.treeparser.ParseUnit.treeParser01(ParseUnit.java:348)
at cli.Progress.ClrBridge.ClrApi.InvokeMethod(Unknown Source)
blockLabel.zip