ANTLR - несоответствующая ошибка ввода

У меня есть грамматика, которая выглядит следующим образом: комментарии и управляющие операторы определенного языка:

Грамматика:

grammar DD;

ddlist: (ddstmt| jclcomment)+;

ddstmt:        dd1 | dd2 | dd3 | dd4 ;

dd1:    JCLBEGIN ddname  DDWORD 'DUMMY';
dd2:    JCLBEGIN ddname  DDWORD 'DYNAM';
dd3:    JCLBEGIN ddname  DDWORD NAME'=' ('*'|NAME);
dd4:    JCLBEGIN ddname  DDWORD '*' inlinerec INLINESTMTEND?;

inlinerec: (INLINEDATA )+ ;
fragment INLINEDATA: (~[\r\n])*;

ddname: NAME;

jclcomment: JCLCOMMENT+;
JCLCOMMENT: COMMENTBEGIN ~[\r\n]*;

DDWORD:     'DD';

JCLBEGIN:       '//'    ;
COMMENTBEGIN:   '//*'   ;
INLINESTMTEND:  '/*'    ;

NAME  : [A-Z#] (ALPHA | NUMBER | SPECIALCHARS)*;

NUMBER: [0-9];
ALPHA: [A-Z];
SPECIALCHARS:   '#' | '@' | '

Мой вклад это:

//SYSIN    DD  *                                      
SORT FIELDS=COPY
INCLUDE COND
/*                                                    
//SYSPRINT DD  SYSOUT=*        
//* Comment line #1                       
//* Comment line #2
//SYSOUT   DD  SYSOUT=*                               
//CEEDUMP  DD  SYSOUT=*                               
//* Comment line #3
//SYSUDUMP DD  SYSOUT=A           

Когда я использую AntlrWorks для запуска этой грамматики с вводом, я получаю следующую ошибку:

line 2:0 mismatched input 'SORT' expecting INLINEDATA

Как можно устранить эту ошибку?

; STRING : '\'' (~[\r\n"])* '\'' | '"' (~[\r\n"])* '"' ; WS : [ \r\n] -> channel(HIDDEN);

Мой вклад это:

//SYSIN    DD  *                                      
SORT FIELDS=COPY
INCLUDE COND
/*                                                    
//SYSPRINT DD  SYSOUT=*        
//* Comment line #1                       
//* Comment line #2
//SYSOUT   DD  SYSOUT=*                               
//CEEDUMP  DD  SYSOUT=*                               
//* Comment line #3
//SYSUDUMP DD  SYSOUT=A           

Когда я использую AntlrWorks для запуска этой грамматики с вводом, я получаю следующую ошибку:

line 2:0 mismatched input 'SORT' expecting INLINEDATA

Как можно устранить эту ошибку?

Ответы на вопрос(1)

Ваш ответ на вопрос