__FILE__ and __LINE__ are well known. There is a __func__ since C99.
#include <iostream>
struct Foo {
        void Do(){ std::cout << __func__ << std::endl; }
};
int main()
{
        std::cout << __func__ << std::endl;
        Foo foo; foo.Do();
        return 0;
}
will output
main
Do
Is there any macro / keyword that would output method name like Foo::Do?