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.
Jason