Using C++14. Why will this compile:
template constexpr bool foo() { std::array arr; return true; }
but
They don't. Your test is flawed.
The problem is not detected until you actually attempt to instantiate the broken function template.