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

--- Comment #8 from Will Wray <wjwray at gmail dot com> ---
Reduced example (but still with puts output) https://godbolt.org/z/Ttc2Za

    #include <cstdio>
    void cat(auto const(&...cstr)[]) { (puts(cstr),...); }
    // Comment out this next line[6]
    void cat(auto const(&...cstr)[6]) { (puts(cstr),...); }

    int main() { cat("Hello","world"); }

Fails to match the 1st overload when the 2nd overload is removed

Answering my own question "is this well formed?"

    void cat(auto const(&a)[]...);

Yes; it matches T(&)[] type argument exactly https://godbolt.org/z/NHjPrK

Reply via email to