2014-09-14 2 views
0

내 대학의 컴파일러에 대한 과제를 수행하고 있으며 SableCC 3.7을 처음 사용하고 있습니다. 기대 [51.5] : EOFSableCC expecting : EOF

Helpers 

letter = ['a' .. 'z']; 
digit = ['0' .. '9']; 
plus = '+'; 
minus = '-'; 
mult = '*'; 
div = '/'; 
star = '*'; 
equals = '='; 
leftbrack = '('; 
rightbrack = ')'; 
leftcurly = '{'; 
rightcurly = '{'; 
tab = 9; 
cr = 13; 
space = 32; 
nl = 10; 
eol = cr nl | cr | nl |; 
func = 'func'; 
identifier = (letter|'_')(letter|'_'|digit)*; 
float = minus ? digit (digit) * '.' digit (digit) * (('E' | 'e') ('+' | '-') ? digit (digit) *) ?; 
combination = (tab|cr|eol|space|nl)+; 
line_comment ='/''/'[[ 0 .. 0xffff]-[cr+nl]]*eol|';'[[0..0xffff]-[cr+nl]]*eol; 
multiline_comment ='/''*'[[0..0xffff]-['*'+'/']]*'*''/'; 

토큰

을 내 문법 파일을 정의하기 위해 노력하고 있어요,하지만 난 (명령 줄을 통해)를 실행하려고하면이 오류 얻을 :

"의 ParserException을

func = 'FUNC'; 
plus = plus; 
minus = minus; 
mult = mult; 
div = div; 
equals = equals; 
leftbrack = leftbrack; 
rightbrack = rightbrack; 
leftcurly = leftcurly; 
rightcurly = rightcurly; 
identifier = ('ID,')(identifier); 
float = ('ID,')(float); 
number = digit+; 
line_comment = 'COMMENT'; 
multiline_comment = 'COMMENT'; 
combination = 'WHITESPACE'; 

는 무시 토큰

line_comment; 
multiline_comment; 

사람이이 문제를 해결하는 방법을 알고 있나요? 문서의 온라인 n은 최고야.

+0

Ecole de technologie supérieure? @ Razor88 –

답변

1

은 아마이 :

Ignored Tokens 

    line_comment, 
    multiline_comment; 

당신은 세미콜론 Ignored Tokens 쉼표로하지 분리해야합니다.