2014-01-22 10 views
0

我有以下語法。 antlr4給這個語法錯誤。 請幫我解決這個錯誤antlr4語法錯誤「完全讓我驚訝,同時匹配替代」

非常感謝。


grammar test_grammar; 

addressSpaceIdentifier : '_readonly' 
| '_kernarg' 
; 

optaddressSpace : [addressSpaceIdentifier] 
; 

錯誤: 錯誤(50):C:\測試\ test_grammar1.g:12:18:語法錯誤: 'addressSpaceIden tifier' 來作爲一個完全的意外我,而匹配替代

回答

2

此:

optaddressSpace : [addressSpaceIdentifier] 
; 

是無效的。如果您打算讓生產addressSpaceIdentifier爲可選項,您需要像這樣編寫:

optaddressSpace : addressSpaceIdentifier? 
;