Идентификатор __func__
является частью стандарта C99 и находится в черновике C ++ 0x.
Идентификатор __func__
неявно объявляется компилятором, как если бы в самом начале каждого тела функции было следующее:
static const char __func__[] = "function-name";
где function-name
- строка, определяемая реализацией, автоматически предоставляемая компилятором.
До тех пор, пока поддержка этих стандартов не станет доступной (или более широко доступной), вы застреваете в ганк для конкретного компилятора.