title: Is it guaranteed that template template parameter invoke user provided deduction guides
body: <p>Consider an example:</p>
  
  <pre><code>#include &lt;type_traits&gt;
  #include &lt;string&gt;
  
  template &lt;template &lt;class&gt; class TT&gt; //#1
  struct Foo {
     static void foo() {
        static_assert(std::is_same_v&lt;decltype(TT("abc")), TT&lt;std::string&gt;&gt;);
     }
  };
  
  template &lt;class T&gt;
  struct Bar {
      Bar(T) {}
  };
  
  template &lt;class T&gt;
  Bar(T) -&gt; Bar&lt;std::string&gt;; //#2
  
  int main() {
      Foo&lt;Bar&gt;::foo();
  }
  </code></pre>
  
  <p><a href="https://wandbox.org/permlink/dsdwHaes8YwCmAMm" rel="noreferrer">[clang]</a> as well as <a href="https://wandbox.org/permlink/gQyQtF0WswZdUe5u" rel="noreferrer">[gcc]</a> both seem to use user provided deduction guides (#2) when deducing the template parameter of template template parameter (#1). Is it a standard compliant feature?</p>