C++0x PATCH to explicit conversion handling

Jason Merrill jason@redhat.com
Sat Jun 26 22:25:00 GMT 2010


In my earlier implementation of explicit conversion ops, I treated 
initialization of a reference temp for the argument of the copy 
constructor as direct-initialization.  This was later adopted as core DR 
899.  In my recent work on implicit move constructors (to be committed 
soon) I noticed that we need the same handling of move constructors, and 
indeed any other constructor used to initialize a class from an object 
of the same type.

The BAD_CONVERSION_RANK change is to fix comparison of bad conversions 
in order to keep the useful error ("bad conversion") on 
20_util/unique_ptr/cons/pointer_array_convertible.cc; without that 
change the error changes to "no match".

Tested x86_64-pc-linux-gnu, applying to trunk.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: copy-parm.patch
Type: text/x-patch
Size: 5029 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20100626/7cadc225/attachment.bin>


More information about the Gcc-patches mailing list