<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - clang-cl error : no matching function for call to 'get'"
   href="https://bugs.llvm.org/show_bug.cgi?id=35758">35758</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>clang-cl error : no matching function for call to 'get'
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>clang
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>5.0
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Windows NT
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>C++11
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedclangbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>dvirtz@gmail.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>dgregor@apple.com, llvm-bugs@lists.llvm.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=19607" name="attach_19607" title="preprocessed">attachment 19607</a> <a href="attachment.cgi?id=19607&action=edit" title="preprocessed">[details]</a></span>
preprocessed

Works for other compilers: <a href="https://godbolt.org/g/qABFqf">https://godbolt.org/g/qABFqf</a>

<span class="quote">>type Source.cpp</span >
#include <tuple>

struct S : std::tuple<int> {};

int main() {
  S s;
  return std::get<0>(s);
}
<span class="quote">>"c:\Program Files\LLVM\msbuild-bin\cl.exe" -c Source.cpp</span >
Source.cpp(7,10):  error: no matching function for call to 'get'
  return std::get<0>(s);
         ^~~~~~~~~~~
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\utility(572,3): 
note: candidate template ignored: could not match 'pair<type-parameter-0-1,
type-parameter-0-2>'
      against 'S'
                get(pair<_Ty1, _Ty2>& _Pr) _NOEXCEPT
                ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\utility(596,3): 
note: candidate template ignored: could not match 'pair<type-parameter-0-1,
type-parameter-0-2>'
      against 'S'
                get(const pair<_Ty1, _Ty2>& _Pr) _NOEXCEPT
                ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\utility(620,3): 
note: candidate template ignored: could not match 'pair<type-parameter-0-1,
type-parameter-0-2>'
      against 'S'
                get(pair<_Ty1, _Ty2>&& _Pr) _NOEXCEPT
                ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\utility(644,3): 
note: candidate template ignored: could not match 'pair<type-parameter-0-1,
type-parameter-0-2>'
      against 'S'
                get(const pair<_Ty1, _Ty2>&& _Pr) _NOEXCEPT
                ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\tuple(785,3):  note:
candidate template ignored: failed template argument deduction
                get(tuple<_Types...>& _Tuple) _NOEXCEPT
                ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\tuple(794,3):  note:
candidate template ignored: failed template argument deduction
                get(const tuple<_Types...>& _Tuple) _NOEXCEPT
                ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\tuple(803,3):  note:
candidate template ignored: failed template argument deduction
                get(tuple<_Types...>&& _Tuple) _NOEXCEPT
                ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\tuple(813,3):  note:
candidate template ignored: failed template argument deduction
                get(const tuple<_Types...>&& _Tuple) _NOEXCEPT
                ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\tuple(927,28): 
note: candidate template ignored: could not match 'array<type-parameter-0-1,
_Size>' against 'S'
        _NODISCARD constexpr _Ty& get(array<_Ty, _Size>& _Arr) _NOEXCEPT;
                                  ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\tuple(932,34): 
note: candidate template ignored: could not match 'array<type-parameter-0-1,
_Size>' against 'S'
        _NODISCARD constexpr const _Ty& get(const array<_Ty, _Size>& _Arr)
_NOEXCEPT;
                                        ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\tuple(937,29): 
note: candidate template ignored: could not match 'array<type-parameter-0-1,
_Size>' against 'S'
        _NODISCARD constexpr _Ty&& get(array<_Ty, _Size>&& _Arr) _NOEXCEPT;
                                   ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\tuple(942,35): 
note: candidate template ignored: could not match 'array<type-parameter-0-1,
_Size>' against 'S'
        _NODISCARD constexpr const _Ty&& get(const array<_Ty, _Size>&& _Arr)
_NOEXCEPT;
                                         ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\utility(580,29): 
note: candidate template ignored: invalid explicitly-specified argument for
template parameter
      '_Ty1'
        _NODISCARD constexpr _Ty1& get(pair<_Ty1, _Ty2>& _Pr) _NOEXCEPT
                                   ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\utility(587,29): 
note: candidate template ignored: invalid explicitly-specified argument for
template parameter
      '_Ty2'
        _NODISCARD constexpr _Ty2& get(pair<_Ty1, _Ty2>& _Pr) _NOEXCEPT
                                   ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\utility(604,35): 
note: candidate template ignored: invalid explicitly-specified argument for
template parameter
      '_Ty1'
        _NODISCARD constexpr const _Ty1& get(const pair<_Ty1, _Ty2>& _Pr)
_NOEXCEPT
                                         ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\utility(611,35): 
note: candidate template ignored: invalid explicitly-specified argument for
template parameter
      '_Ty2'
        _NODISCARD constexpr const _Ty2& get(const pair<_Ty1, _Ty2>& _Pr)
_NOEXCEPT
                                         ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\utility(628,30): 
note: candidate template ignored: invalid explicitly-specified argument for
template parameter
      '_Ty1'
        _NODISCARD constexpr _Ty1&& get(pair<_Ty1, _Ty2>&& _Pr) _NOEXCEPT
                                    ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\utility(635,30): 
note: candidate template ignored: invalid explicitly-specified argument for
template parameter
      '_Ty2'
        _NODISCARD constexpr _Ty2&& get(pair<_Ty1, _Ty2>&& _Pr) _NOEXCEPT
                                    ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\utility(652,36): 
note: candidate template ignored: invalid explicitly-specified argument for
template parameter
      '_Ty1'
        _NODISCARD constexpr const _Ty1&& get(const pair<_Ty1, _Ty2>&& _Pr)
_NOEXCEPT
                                          ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\utility(659,36): 
note: candidate template ignored: invalid explicitly-specified argument for
template parameter
      '_Ty2'
        _NODISCARD constexpr const _Ty2&& get(const pair<_Ty1, _Ty2>&& _Pr)
_NOEXCEPT
                                          ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\tuple(823,28): 
note: candidate template ignored: invalid explicitly-specified argument for
template parameter
      '_Ty'
        _NODISCARD constexpr _Ty& get(tuple<_Types...>& _Tuple) _NOEXCEPT
                                  ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\tuple(831,34): 
note: candidate template ignored: invalid explicitly-specified argument for
template parameter
      '_Ty'
        _NODISCARD constexpr const _Ty& get(const tuple<_Types...>& _Tuple)
_NOEXCEPT
                                        ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\tuple(839,29): 
note: candidate template ignored: invalid explicitly-specified argument for
template parameter
      '_Ty'
        _NODISCARD constexpr _Ty&& get(tuple<_Types...>&& _Tuple) _NOEXCEPT
                                   ^
C:\Program Files (x86)\Microsoft Visual
Studio\Preview\Community\VC\Tools\MSVC\14.12.25907\include\tuple(847,35): 
note: candidate template ignored: invalid explicitly-specified argument for
template parameter
      '_Ty'
        _NODISCARD constexpr const _Ty&& get(const tuple<_Types...>&& _Tuple)
_NOEXCEPT
                                         ^
1 error generated.</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>