According to the C++ 20 Standard (Reference: 6.4.4 Function parameter scope)
«1 A function parameter (including one appearing in a lambda-declarator) or function-local predefined variable (9.5) has function parameter scope….»
So should this function declaration be valid?
void f( size_t n = sizeof __func__ );
At least from the C++ Standard it is unclear whether such a declaration is valid. Pay attention to that there is used a function declaration that is not the function definition.
With best regards
(Vlad from Moscow) 
You can meet me at or or