https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127316
--- Comment #8 from ensadc at mailnesia dot com --- `current_function()` doesn't work. When it is called in a function's return type, it skips the function per http://eel.is/c++draft/meta.reflection.scope#3.3 . `parent_of` is weirder. For `parent_of(^^a)` in the return type, GCC currently seems to return `^^::`, which doesn't make sense to me. ``` #include <meta> template<auto V> struct constant_wrapper { static constexpr auto value = V; }; auto f(int a) -> constant_wrapper<parent_of(^^a)> { static_assert(parent_of(^^a) == decltype(f(0))::value); // error: the comparison reduces to '(^^f(int) == ^^::)' } ```
