• 11
• 10
• 12
• 10
• 11

Can't call base function if the function name is the same as a class name

This topic is 430 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

Recommended Posts

Here's a simple example that demonstrates the problem. Note how there is a class Cat, Foo, and Bar. There is no class named "Dog".
class Cat
{
}

class Foo
{
int Cat()
{
return 0;
}

int Dog()
{
return 0;
}
}

class Bar : Foo
{
int Cat() override
{
return Foo::Cat(); // ERROR: Identifier 'Cat' is not a data type in namespace 'Foo' or parent
}

int Dog() override
{
return Foo::Dog(); // OK
}
}

Edit: I forgot to set the prefix of the thread to Bug. Sorry about that! Edited by Ansjh

Share on other sites

Thanks Ansjh!

I'll look into this and provide a fix for it as soon as I can.

Share on other sites

I finally managed to fix this problem. You can get the fix in revision 2376.

Sorry for the delay.

Share on other sites

That's great! Thanks for letting me know :)