When writing tests, it is sometimes useful to output the fully qualified name of a function that failed the test, or causes an error when debugging the program.
#include <iostream>
struct A
{
void operator()()
{
std::cout << __PRETTY_FUNCTION__ << std::endl;
}
};
int main()
{
A a;
a();
};
The __PRETTY_FUNCTION__
is a
gcc
extension that makes it possible to get the following output:
?> ./prettyfunction
void A::operator()()