re PR c++/21383 (Crash when finding &a_templated_func<>)
cp: PR c++/21383 * name-lookup.c (arg_assoc): Template args can be null in a template-id-expr. testsuite: PR c++/21383 * g++.dg/overload/koenig2.C: New. From-SVN: r105553
This commit is contained in:
parent
b77fe7b45f
commit
c19aaba573
|
@ -1,5 +1,9 @@
|
|||
2005-10-18 Nathan Sidwell <nathan@codesourcery.com>
|
||||
|
||||
PR c++/21383
|
||||
* name-lookup.c (arg_assoc): Template args can be null in a
|
||||
template-id-expr.
|
||||
|
||||
PR c++/22604
|
||||
* class.c (update_vtable_entry_for_fn): Don't process invalid
|
||||
covariant overriders.
|
||||
|
|
|
@ -4594,9 +4594,10 @@ arg_assoc (struct arg_lookup *k, tree n)
|
|||
return true;
|
||||
|
||||
/* Now the arguments. */
|
||||
for (ix = TREE_VEC_LENGTH (args); ix--;)
|
||||
if (arg_assoc_template_arg (k, TREE_VEC_ELT (args, ix)) == 1)
|
||||
return true;
|
||||
if (args)
|
||||
for (ix = TREE_VEC_LENGTH (args); ix--;)
|
||||
if (arg_assoc_template_arg (k, TREE_VEC_ELT (args, ix)) == 1)
|
||||
return true;
|
||||
}
|
||||
else if (TREE_CODE (n) == OVERLOAD)
|
||||
{
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
2005-10-18 Nathan Sidwell <nathan@codesourcery.com>
|
||||
|
||||
PR c++/21383
|
||||
* g++.dg/overload/koenig2.C: New.
|
||||
|
||||
PR c++/23118
|
||||
* g++.dg/overload/error2.C: New.
|
||||
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
// Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
// Contributed by Nathan Sidwell 18 Oct 2005 <nathan@codesourcery.com>
|
||||
|
||||
// PR 21383
|
||||
// Origin: Matthew Hall <mahall@ncsa.uiuc.edu>
|
||||
|
||||
template <class T>
|
||||
void dummy(T& t);
|
||||
|
||||
void anyfunc(int x);
|
||||
|
||||
void Foo ()
|
||||
{
|
||||
anyfunc (&dummy<>); // { dg-error "cannot resolve overload" "" }
|
||||
}
|
Loading…
Reference in New Issue