Thanks @techee! This was great. I also felt that modifying the tags array is not a good idea but I didn't see why. Thanks.
Your suggestion is great, I fine tuned it a bit to not work on `__init__` tags directly (then their scope would be removed) because I needed to remove the scope from the calltip text if the tag name was replaced (otherwise we would have got "LocalClass.LocalClass (...)".
Tested also with some D code. I moved the two special cases out of "find_calltip" to make it a bit less cluttered. For me, this is now fine.