------- Comment #4 from pault at gcc dot gnu dot org 2010-03-09 11:33 ------- (In reply to comment #3)
> > Paul, since you were the one who implemented this: Could you me remind me why > this is needed at all? Shouldn't it be enough to resolve the call as is, i.e. > just for the base class? Checking the actual arguments for every descendant of > the base class seems unnecessary to me. > Dear Janus, I believe that it is not necessary. The code reuses the original resolve_compcall for class hierarchies in order to get the specific instance of the procedure for the given class member. You will note that resolution for each class members is foregone in the case of subroutines. Perhaps the most straightforward thing to do would be to add a further static boolean flag that signals that the derived type is the declared type? I have just updated my tree to take the fixes in that you mention below. I'll try to check out what I say later but don wait for me - the painkillers that I am taking after my operation are leaving me very prone to nodding off to sleep. Paul -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43291