Hi Jason, On 15 Oct 2024, at 15:18, Jason Merrill wrote:
> On 10/13/24 7:55 AM, Simon Martin wrote: >> The patch that I merged via r15-4282-g60163c85730e6b breaks the build >> for the rust front-end because it does not work well when virtual >> inheritance is in play. >> >> The problem is that in such a case, an overrider and its overridden >> base >> method might have a different DECL_VINDEX, and the derived method >> would >> be incorrectly considered as hiding the base one. >> >> This patch fixes this by not comparing the DECL_VINDEX anymore, but >> rather going back to comparing the signatures, only after having >> excluded conversion operators to different types. > > Incidentally, it seems I was wrong to say you can just compare > DECL_NAME: the name ends up being different in case of typedefs like > in inherit/virtual14.C, so we do need to compare the type after all. Thanks for calling this out. I’ll integrate such a case in my next iteration. Simon