From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10219 invoked by alias); 4 Mar 2013 17:00:10 -0000 Received: (qmail 9865 invoked by uid 48); 4 Mar 2013 16:58:46 -0000 From: "mmehlich at semanticdesigns dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/56506] variadic class template specialization not selected as best match Date: Mon, 04 Mar 2013 17:00:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c++ X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: mmehlich at semanticdesigns dot com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2013-03/txt/msg00264.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56506 --- Comment #3 from Michael Mehlich 2013-03-04 16:58:45 UTC --- Considering that based on 14.5.3(5) a template member declaration X,T>...>::type x; with T bound to int,bool,char must expand to X,int>, Y,bool>, Y,char>>::type x; I'd consider it rather counter-intuitive if I cannot get a match as described in my original message. Does the standard actually specify how the matching process works in detail in the presence of variadic templates? Going through the template section, I haven't found anything definite that would put light onto this issue (though I might have missed it). I can't really understand your "because it is not followed by ..."; after all, in X, U>...> the parameter pack U is also not immediately followed by a ..., so why is that case ok but my original one isn't? It is pretty easy to implement a matcher that successfully matches the case in the original message, so I don't think the standard has any excuse not to consider this a successful match, either. Notwithstanding that, the standards committee might have decided otherwise. If so, where does it say so in the standard, resp. how can I conclude this from what I can find in there? -- Michael