[PATCH] Pass pratt parsed token to expr parser functions to fix expr locus
Philip Herron
philip.herron@embecosm.com
Sun Aug 8 11:53:55 GMT 2021
On 07/08/2021 02:01, Mark Wielaard wrote:
> On Fri, Aug 06, 2021 at 04:23:27PM +0100, Philip Herron wrote:
>> On 05/08/2021 20:37, Mark Wielaard wrote:
>>> Hi,
>>>
>>> On Fri, Jul 30, 2021 at 03:03:13AM +0200, Mark Wielaard wrote:
>>>> That variant is attached and can also be found here:
>>>> https://code.wildebeest.org/git/user/mjw/gccrs/commit/?h=pass-pratt-parse-loc
>>>> The original is also here:
>>>> https://code.wildebeest.org/git/user/mjw/gccrs/commit/?h=pass-pratt-parse-token
>>>>
>>>> Hopefully one of the two is acceptable. If not please let me know how
>>>> to rewrite it in a cheaper more idiomatic way.
>>> Any feedback on these patches? I really like to get the locations
>>> correct for these pratt parsed expressions. If both variants are
>>> problematic please let me know what I can do to improve them.
>>>
>>> Thanks,
>>>
>>> Mark
>>>
>> Hi Mark,
>>
>> Sorry for lack of reply on this. After looking into this and also
>> getting Arthur Cohen to review, I think:
>>
>> * Token passing: If we end up using the token for more than the
>> location this might be useful but at present I can't think of a
>> use-case for the token. If we do need it maybe we could look into
>> passing it by reference.
>> * Location passing: I think this is the best solution and is directly
>> associated with the issue you have fixed. The function says that you
>> can call me but tell me the location as well so its up to the caller
>> to handle this. We should add a comment to the function prototypes
>> to say what the location is but that's it.
>>
>> What do you think?
> OK, lets go with the location passing. I added a comment to the
> function prototypes in rust-parse.h about the passed in
> pratt_parsed_token.
>
> https://code.wildebeest.org/git/user/mjw/gccrs/commit/?h=pass-pratt-parse-token
>
> Cheers,
>
> Mark
Thanks Mark, I will merge this one.
--Phil
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 665 bytes
Desc: OpenPGP digital signature
URL: <https://gcc.gnu.org/pipermail/gcc-rust/attachments/20210808/b150febe/attachment-0001.sig>
More information about the Gcc-rust
mailing list