Clean up copy-initialization in overloading code.
authorJason Merrill <jason@gcc.gnu.org>
Sat, 9 Dec 2000 19:03:24 +0000 (14:03 -0500)
committerJason Merrill <jason@gcc.gnu.org>
Sat, 9 Dec 2000 19:03:24 +0000 (14:03 -0500)
commitb1c1090273417dd1a2c46c1a02501199182c3504
tree046c19372cdfa032da73f332f85817179dbd2067
parent5e818b935158ec6f4b03e583c7e9a3c2d986fd9e
Clean up copy-initialization in overloading code.

        * call.c (build_user_type_conversion_1): Die if we are asked to
        convert to the same or a base type.
        (implicit_conversion): Avoid doing so.  Lose reference binding code.
        (convert_like_real): Treat BASE_CONV and RVALUE_CONV as implicit
        direct-initialization.  Also do direct-init part of copy-init.
        (build_user_type_conversion): Don't provide context to convert_like.
        * cvt.c (ocp_convert): build_user_type_conversion will now provide
        the constructor call for copy-init.

From-SVN: r38159
gcc/testsuite/g++.old-deja/g++.pt/auto_ptr.C