diff options
author | Tom Tromey <tom@tromey.com> | 2022-01-24 18:02:38 -0700 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2022-02-06 13:13:31 -0700 |
commit | c1f5e54825e4ac2d64b267578fd87409e0ea901c (patch) | |
tree | 01213bc6d20465dfc76a90363288a6fc8e86f278 /libiberty/putenv.c | |
parent | a92613915ec2f38e1ab62ab254dde2a1ad4ad408 (diff) | |
download | binutils-c1f5e54825e4ac2d64b267578fd87409e0ea901c.zip binutils-c1f5e54825e4ac2d64b267578fd87409e0ea901c.tar.gz binutils-c1f5e54825e4ac2d64b267578fd87409e0ea901c.tar.bz2 |
Fix Rust parser bug with function fields
In Rust, 'obj.f()' is a method call -- but '(obj.f)()' is a call of a
function-valued field 'f' in 'obj'. The Rust parser in gdb currently
gets this wrong. This is PR rust/24082.
The expression and Rust parser rewrites made this simple to fix --
simply wrapping a parenthesized expression in a new operation handles
it. This patch has a slight hack because I didn't want to introduce a
new exp_opcode enumeration constant just for this. IMO this doesn't
matter, since we should work toward removing dependencies on these
opcodes anyway; but let me know what you think of this.
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=24082
Diffstat (limited to 'libiberty/putenv.c')
0 files changed, 0 insertions, 0 deletions