This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH] limit ranking change to C++0x
- From: "Doug Gregor" <doug dot gregor at gmail dot com>
- To: "Dirk Mueller" <dmueller at suse dot de>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Mon, 23 Jul 2007 09:26:12 -0400
- Subject: Re: [PATCH] limit ranking change to C++0x
- References: <firstname.lastname@example.org>
On 7/20/07, Dirk Mueller <email@example.com> wrote:
This is supposed to address PR 32756. The problem here is that the rvalue
references introduced a ranking change that causes the testcase to fail.
I'm not sure if this failure is correct under the C++0x rules, but under the
old standard it is definitely wrong. Fixed by putting the relevant change
into a if(cxx_dialect == cxx0x) block.
I believe the testcase should compile the same way under C++0x and
C++98, so deciding based on the C++ dialect isn't the right fix. I
suspect that our use of rvaluedness_matches_p in that section needs to
look at other parts of the conversion ranking to more narrowly apply
the lvalue/rvalue preference rule.