2008/8/15 Chris Lattner <[EMAIL PROTECTED]>:
>> D) Printing Ranges. This requires:
>>
>>  *) Printing accurate column information. Similar to (B) above.
>>
>>  *) A location(s) -> source strings interface and machinery. Similar
>>     to (A.3) above.
>
> Ranges also require some way to get the end of a token (in addition to its
> beginning).  For example, a range for:
>
> X + some_long\
> _ident??/
> ifier
>
> The range should start at "X" and end at "r".  This is just a location like
> any other, but requires passing down like the begin loc.  You might instead
> decide to do some fuzzy matching or something, but clang at least gets this
> right.  This is important for other clients of the loc info, e.g.
> refactoring clients.

Oh yes. Well, there is a lot of fine-tunning to do but I think that
would be covered by A.1 and the binary_op expression would have at
least two locations begin/end pointing to X and r. If we are able to
print ({break;}), in the example I gave earlier, then we will be able
to print nice ranges most of the time.

Cheers,

Manuel.

Reply via email to