tree c138b42838a3cca4d70c5f95c82b224427e0eb3b
parent 5cd318a9f0dd7c63227387c233628e83d77a8814
author Googler <no-reply@google.com> 1698248479 -0700
committer Copybara-Service <copybara-worker@google.com> 1698248523 -0700

Fix crash in member accessor code due to data member not being modeled

This uses the value of the Expr itself instead of the underlying member for const accessor cases where the framework doesn't model the underlying member. For example (where `C` is some arbitrary class or struct):

```
C().get_member();
```

or

```
C foo() { ... }
foo().get_member();
```

PiperOrigin-RevId: 576540164
Change-Id: I7c1c8c84df07c83662708ab513103b3a4ea8815b
