Fix for PR c++/PR39754
authorDodji Seketeli <dodji@redhat.com>
Thu, 28 May 2009 11:24:18 +0000 (11:24 +0000)
committerDodji Seketeli <dodji@gcc.gnu.org>
Thu, 28 May 2009 11:24:18 +0000 (13:24 +0200)
commitcd41d410da230dafae73a791281ef058c06a6c72
treeb90e673a3046b819f2c25ca56d8e3043b60045f4
parent233215fe7cedf3cfa908f11c9543e1f7f10e3283
Fix for PR c++/PR39754

gcc/cp/ChangeLog:
    PR c++/39754
    * cp-tree.h (canonical_type_variant): Remove this function declaration.
    (strip_typedefs): New function declaration.
    * tree.c (strip_typedefs): New function definition.
    (canonical_type_variant): Remove function definition.
    * cvt.c (convert_from_reference): No need to use
    canonical_type_variant.
    * typeck.c (cp_build_indirect_ref): Likewise.
    * error.c (dump_template_bindings): Use strip_typedefs instead of
    canonical_type_variant.
    * pt.c (convert_template_argument, unify): Likewise.
    * mangle.c (canonicalize_for_substitution): Don't use
    canonical_type_variant.

gcc/testsuite/ChangeLog:
    PR c++/39754
    * g++.dg/template/canon-type-1.C: New test.
    * g++.dg/template/canon-type-2.C: Likewise.
    * g++.dg/template/canon-type-3.C: Likewise.
    * g++.dg/template/canon-type-4.C: Likewise.
    * g++.dg/template/canon-type-5.C: Likewise.
    * g++.dg/template/canon-type-6.C: Likewise.
    * g++.dg/template/canon-type-7.C: Likewise.

From-SVN: r147951
16 files changed:
gcc/cp/ChangeLog
gcc/cp/cp-tree.h
gcc/cp/cvt.c
gcc/cp/error.c
gcc/cp/mangle.c
gcc/cp/pt.c
gcc/cp/tree.c
gcc/cp/typeck.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/template/canon-type-1.C [new file with mode: 0644]
gcc/testsuite/g++.dg/template/canon-type-2.C [new file with mode: 0644]
gcc/testsuite/g++.dg/template/canon-type-3.C [new file with mode: 0644]
gcc/testsuite/g++.dg/template/canon-type-4.C [new file with mode: 0644]
gcc/testsuite/g++.dg/template/canon-type-5.C [new file with mode: 0644]
gcc/testsuite/g++.dg/template/canon-type-6.C [new file with mode: 0644]
gcc/testsuite/g++.dg/template/canon-type-7.C [new file with mode: 0644]