Capturing errors is not the issue, I've already got such a framework  
setup --- the problem I'm running into is finding that "token" object  
with the line and col information in it so that I can call a method  
such as your AddError in the first place.


In other words, using your example,  suppose I have a grammar rule

foo:    a=expr b=expr
             {
                 if $a.type != $b.type
                    //then
                        AddError("Types are  
incompatible",    ????????,     severity);
             }

What goes in the field marked by ?????????


D


On Apr 10, 2009, at 12:41 PM, Sam Harwell wrote:
>
> public void AddError( string message, CommonToken token, Severity  
> severity )
> {
>     if ( string.IsNullOrEmpty( message ) || token == null ||  
> ErrorHandler == null )
>         return;
>
>     int line = token.Line;
>     int col = token.CharPositionInLine;
>     int length = token.StopIndex - token.StartIndex + 1;
>     // these errors aren't forcing the parser into recovery mode so  
> they
>     // shouldn't have the same devastating performance impact
>     bool canCancel = false;
>
>     ErrorHandler.AddError( message, line, col, length, severity,  
> canCancel );
> }
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"il-antlr-interest" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/il-antlr-interest?hl=en
-~----------~----~----~----~------~----~------~--~---

List: http://www.antlr.org/mailman/listinfo/antlr-interest
Unsubscribe: 
http://www.antlr.org/mailman/options/antlr-interest/your-email-address

Reply via email to