PR c++/20669
commitdb0e6c680912e8af44b145970e74aacb199ffb32
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 12 May 2010 17:34:55 +0000 (12 17:34 +0000)
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 12 May 2010 17:34:55 +0000 (12 17:34 +0000)
tree2313d89c18902359a7691d09beab1a87f30f42a9
parent0d836813e192373f9b1485e50823a4f64136a5d2
PR c++/20669
* call.c (add_template_candidate_real): If deduction fails, still
add the template as a non-viable candidate.
(equal_functions): Handle template candidates.
(print_z_candidate): Likewise.
(print_z_candidates): Likewise.
(build_new_function_call): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159335 138bc75d-0d04-0410-961f-82ee72b054a4
70 files changed:
gcc/cp/ChangeLog
gcc/cp/call.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/conversion/op1.C
gcc/testsuite/g++.dg/cpp0x/nullptr15.C
gcc/testsuite/g++.dg/cpp0x/pr31431-2.C
gcc/testsuite/g++.dg/cpp0x/pr31431.C
gcc/testsuite/g++.dg/cpp0x/temp_default2.C
gcc/testsuite/g++.dg/cpp0x/trailing4.C
gcc/testsuite/g++.dg/cpp0x/variadic-ex3.C
gcc/testsuite/g++.dg/cpp0x/variadic-ex4.C
gcc/testsuite/g++.dg/cpp0x/variadic-throw.C
gcc/testsuite/g++.dg/cpp0x/variadic35.C
gcc/testsuite/g++.dg/cpp0x/vt-35147.C
gcc/testsuite/g++.dg/cpp0x/vt-37737-1.C
gcc/testsuite/g++.dg/cpp0x/vt-37737-2.C
gcc/testsuite/g++.dg/ext/visibility/anon8.C
gcc/testsuite/g++.dg/ext/vla2.C
gcc/testsuite/g++.dg/other/pr28114.C
gcc/testsuite/g++.dg/other/ptrmem10.C
gcc/testsuite/g++.dg/other/ptrmem11.C
gcc/testsuite/g++.dg/overload/unknown1.C
gcc/testsuite/g++.dg/parse/template7.C
gcc/testsuite/g++.dg/parse/typename7.C
gcc/testsuite/g++.dg/template/conv11.C
gcc/testsuite/g++.dg/template/copy1.C
gcc/testsuite/g++.dg/template/deduce3.C
gcc/testsuite/g++.dg/template/dependent-expr5.C
gcc/testsuite/g++.dg/template/friend.C
gcc/testsuite/g++.dg/template/incomplete2.C
gcc/testsuite/g++.dg/template/local4.C
gcc/testsuite/g++.dg/template/local6.C
gcc/testsuite/g++.dg/template/operator10.C
gcc/testsuite/g++.dg/template/overload6.C
gcc/testsuite/g++.dg/template/ptrmem2.C
gcc/testsuite/g++.dg/template/ptrmem20.C
gcc/testsuite/g++.dg/template/ptrmem8.C
gcc/testsuite/g++.dg/template/sfinae2.C
gcc/testsuite/g++.dg/template/ttp25.C
gcc/testsuite/g++.dg/template/unify10.C
gcc/testsuite/g++.dg/template/unify11.C
gcc/testsuite/g++.dg/template/unify6.C
gcc/testsuite/g++.dg/template/unify7.C
gcc/testsuite/g++.dg/template/unify9.C
gcc/testsuite/g++.dg/template/varmod1.C
gcc/testsuite/g++.old-deja/g++.brendan/crash56.C
gcc/testsuite/g++.old-deja/g++.law/operators32.C
gcc/testsuite/g++.old-deja/g++.pt/crash28.C
gcc/testsuite/g++.old-deja/g++.pt/crash60.C
gcc/testsuite/g++.old-deja/g++.pt/explicit38.C
gcc/testsuite/g++.old-deja/g++.pt/explicit39.C
gcc/testsuite/g++.old-deja/g++.pt/explicit41.C
gcc/testsuite/g++.old-deja/g++.pt/explicit67.C
gcc/testsuite/g++.old-deja/g++.pt/explicit77.C
gcc/testsuite/g++.old-deja/g++.pt/expr2.C
gcc/testsuite/g++.old-deja/g++.pt/overload7.C
gcc/testsuite/g++.old-deja/g++.pt/ptrmem6.C
gcc/testsuite/g++.old-deja/g++.pt/spec5.C
gcc/testsuite/g++.old-deja/g++.pt/spec6.C
gcc/testsuite/g++.old-deja/g++.pt/t24.C
gcc/testsuite/g++.old-deja/g++.pt/unify4.C
gcc/testsuite/g++.old-deja/g++.pt/unify6.C
gcc/testsuite/g++.old-deja/g++.pt/unify8.C
gcc/testsuite/g++.old-deja/g++.robertl/eb119.C
gcc/testsuite/g++.old-deja/g++.robertl/eb79.C
gcc/testsuite/g++.old-deja/g++.robertl/eb98.C
libstdc++-v3/ChangeLog
libstdc++-v3/testsuite/20_util/auto_ptr/assign_neg.cc
libstdc++-v3/testsuite/20_util/unique_ptr/assign/assign_neg.cc
libstdc++-v3/testsuite/20_util/weak_ptr/comparison/cmp_neg.cc