https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104343

--- Comment #5 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Clang gives:

x.C:11:3: error: no matching function for call to 'Sprint'
  Sprint("B: off=", 2, " now=", 3, endl);
  ^~~~~~
x.C:5:13: note: candidate template ignored: substitution failure: deduced
incomplete pack <char const (&)[8], int, char const (&)[6], int, (no value)>
for template parameter 'Args'
inline void Sprint(Args&&... args)
            ^
1 error generated.


The "(no value)" is the clue here.

EDG says:

"x.C", line 11: error: no instance of function template "Sprint" matches the
          argument list
            argument types are: (const char [8], int, const char [6], int,
                      <unknown-type>)
    Sprint("B: off=", 2, " now=", 3, endl);
    ^

1 error detected in the compilation of "x.C".


I'm surprised GCC doesn't say "<unresolved overloaded function type>"

Reply via email to