[antlr-interest] Handling HASEXCEPTION / HASFAILURE

Jim Idle jimi at temporal-wave.com
Thu Jul 30 11:09:18 PDT 2009


Search the list. Something like "displayRecognitionError C" and read  
the API docs for C and displayRecognitionError.

Jim

On Jul 30, 2009, at 4:40 AM, Andy Grove <andy.grove at codefutures.com>  
wrote:

> Jim,
>
> Thanks. Could you point me in the direction of the documentation for  
> setting up these error message routines. I could not find anything  
> on the ANTLR web site about this (apart from Java specific  
> information).
>
> Thanks,
>
> Andy.
>
>
>
> On Jul 28, 2009, at 11:40 AM, Jim Idle wrote:
>
>> The calling rule will make a call to the error message routines so  
>> check your stack there. But really you should parse, build a tree  
>> then do this in the tree walk and you won't have the issue.
>>
>> Jim
>>
>> On Jul 28, 2009, at 2:21 AM, Andy Grove  
>> <andy.grove at codefutures.com> wrote:
>>
>>> Because the C version of ANTLR does not support @after actions, I  
>>> have implemented the equivalent in my grammar by placing a block  
>>> of code at the end of my rule. For example:
>>>
>>> whereClause
>>> @init { sse.pushCall(sse.WHERECLAUSE); }
>>> 	:
>>> 	(
>>> 	WHERE
>>> 		c = searchCondition
>>>      )
>>>      { sse.popCall(); } <-- @after action
>>> 	;
>>>
>>> I noticed that this @after action was not running for some of my  
>>> input data, so I added debug logging to the generated parser code  
>>> and found that one of the calls to the HASEXCEPTION macro is  
>>> returning true and the parser is finishing at that point.
>>>
>>> How am I supposed to detect if an exception like this has occurred  
>>> and how do I find out what is causing the exception?
>>>
>>> Thanks,
>>>
>>> Andy.
>>>
>>>
>>>
>>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.antlr.org/pipermail/antlr-interest/attachments/20090730/99d95ada/attachment.html 


More information about the antlr-interest mailing list