Can non-type template parameters in c++17 be decltype(auto)? : <p>I discovered that gcc and clang allow to use <code>decltype(auto)</code> in non-type template parameter type clause. E.g.:</p>

<pre><code>template &lt;decltype(auto)&gt;
struct X {};

int foo ;

int main() {
    X&lt;(foo)&gt; x;
    static_cast&lt;void&gt;(x);
}
</code></pre>

<p><a href="https://wandbox.org/permlink/WjMznykm1OHne1WP" rel="noreferrer">[live demo gcc]</a> <a href="https://wandbox.org/permlink/MTmKJb5JOmsOfeJx" rel="noreferrer">[live demo clang]</a></p>

<p>Is it standard compliant feature or is it some gnu extension?</p>
