Hi,

I'm using Doxygen 1.8.4, and I have what I think is a bug. I have attached a simple testcase, which produces the warning: test.c:27: Warning: documented symbol `typedef Derived::Base::operator' was not declared or defined. test.c:34: Warning: documented symbol `typedef Derived::Base::operator' was not declared or defined. This occurs when the 'using' keyword is used to import operators from the inherited class - I think that this confuses Doxygen!

Can you confirm that this is a bug, and if so how should I report it properly, so that it gets fixed?

Thanks,

Alasdair

#include <iostream>

class Base {
public:
    int value;

    Base( int v )
    {
        value = v;
    }
    ~Base(){}

    bool operator>=(const int right)
    {
        return ( value >= right );
    }
    bool operator<=(const int right)
    {
        return ( value <= right );
    }
};

class Derived : public Base {
public:
    Derived( int v ): Base( v ) {}

    using Base::operator>=;

    bool operator>=(const unsigned int right)
    {
        return ( value >= (int)right );
    }

    using Base::operator<=;
    bool operator<=(const unsigned int right)
    {
        return ( value <= (int)right );
    }

};

int main ( int argc, char **argv ) {
    Derived p(10);

    if ( p <= 5 )
    {
        std::cout << "P is <= 5" << std::endl;
    }

    return 0;
}
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Doxygen-users mailing list
Doxygen-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/doxygen-users

Reply via email to