File tree 4 files changed +52
-4
lines changed
lsp-core-cobol-parser/src/main/antlr4/com/ca/lsp/core/cobol/parser
lsp-service-cobol/src/test/java/com/ca/lsp/cobol/usecases
4 files changed +52
-4
lines changed Original file line number Diff line number Diff line change @@ -1151,15 +1151,15 @@ paragraph
1151
1151
;
1152
1152
1153
1153
sentence
1154
- : statement* DOT_FS
1154
+ : ( statement* DOT_FS ) | skipStatement+
1155
1155
;
1156
1156
1157
1157
statement
1158
1158
: acceptStatement | addStatement | alterStatement | callStatement | cancelStatement | closeStatement | computeStatement | continueStatement | deleteStatement | disableStatement |
1159
1159
displayStatement | divideStatement | enableStatement | entryStatement | evaluateStatement | exhibitStatement | execCicsStatement | execSqlStatement | execSqlImsStatement |
1160
1160
exitStatement | generateStatement | gobackStatement | goToStatement | ifStatement | initializeStatement | initiateStatement | inspectStatement | mergeStatement | moveStatement |
1161
1161
multiplyStatement | openStatement | performStatement | purgeStatement | readStatement | receiveStatement | releaseStatement | returnStatement | rewriteStatement | searchStatement |
1162
- sendStatement | serviceReloadStatement | serviceLabelStatement | setStatement | skipStatement | sortStatement | startStatement | stopStatement | stringStatement | subtractStatement |
1162
+ sendStatement | serviceReloadStatement | serviceLabelStatement | setStatement | sortStatement | startStatement | stopStatement | stringStatement | subtractStatement |
1163
1163
terminateStatement | titleStatement | unstringStatement | writeStatement | xmlStatement
1164
1164
;
1165
1165
Original file line number Diff line number Diff line change @@ -74,7 +74,7 @@ paragraphs2
74
74
;
75
75
76
76
sentence
77
- : statement+ DOT_FS
77
+ : ( statement+ DOT_FS ) | skipNoStatement+
78
78
;
79
79
80
80
// all the possible combinations to form a statement, super-nongreddy
@@ -83,7 +83,7 @@ statement
83
83
continueStatement | deleteStatement | disableStatement | displayStatement | divideStatement | enableStatement | entryStatement | evaluateStatement |
84
84
exitStatement | generateStatement | gobackStatement | goStatement | ifStatement | initializeStatement | initiateStatement | inspectStatement | mergeStatement |
85
85
multiplyStatement | openStatement | performStatement | purgeStatement | readStatement | receiveStatement | releaseStatement | returnStatement | rewriteStatement |
86
- searchStatement | sendStatement | setStatement | skipNoStatement | sortStatement | startStatement | stopStatement | stringStatement | subtractStatement | terminateStatement |
86
+ searchStatement | sendStatement | setStatement | sortStatement | startStatement | stopStatement | stringStatement | subtractStatement | terminateStatement |
87
87
titleStatement | unstringStatement | useStatement | writeStatement | xmlStatement |execSqlStatement | execSqlImsStatement | execCicsStatement | copyStatement
88
88
;
89
89
Original file line number Diff line number Diff line change
1
+ /*
2
+ * Copyright (c) 2020 Broadcom.
3
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
4
+ *
5
+ * This program and the accompanying materials are made
6
+ * available under the terms of the Eclipse Public License 2.0
7
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
8
+ *
9
+ * SPDX-License-Identifier: EPL-2.0
10
+ *
11
+ * Contributors:
12
+ * Broadcom, Inc. - initial API and implementation
13
+ */
14
+
15
+ package com .ca .lsp .cobol .usecases ;
16
+
17
+ import org .junit .Test ;
18
+
19
+ public class TestSkipStatement extends PositiveUseCase {
20
+
21
+ private static final String TEXT =
22
+ " IDENTIFICATION DIVISION. \r \n "
23
+ + " PROGRAM-ID. SKIP_TEST.\r \n "
24
+ + " DATA DIVISION.\r \n "
25
+ + " WORKING-STORAGE SECTION. \r \n "
26
+ + " PROCEDURE DIVISION.\r \n "
27
+ + " PROGA.\r \n "
28
+ + " SKIP1\r \n "
29
+ + " PERFORM WITH TEST BEFORE UNTIL ID0 = 0\r \n "
30
+ + " SUBTRACT 1 FROM TAPARM1\r \n "
31
+ + " CALL 'ID1'\r \n "
32
+ + " END-PERFORM\r \n "
33
+ + " .\r \n "
34
+ + " SKIP2.\r \n "
35
+ + " PROGB.\r \n "
36
+ + " EXIT.\r \n "
37
+ + " EJECT" ;
38
+
39
+ public TestSkipStatement () {
40
+ super (TEXT );
41
+ }
42
+
43
+ @ Test
44
+ public void test () {
45
+ super .test ();
46
+ }
47
+ }
Original file line number Diff line number Diff line change 22
22
@ SuiteClasses ({
23
23
TestFormatTrim .class ,
24
24
TestSyntaxError .class ,
25
+ TestSkipStatement .class ,
25
26
TestVaryingCorrect .class ,
26
27
AnalyzeCopybookCaching .class ,
27
28
TestPerformUntilCorrect .class ,
You can’t perform that action at this time.
0 commit comments