re PR c++/43033 (--enable-checking=valgrind C++ failures)

PR c++/43033
	* name-lookup.c (pushdecl_maybe_friend): Check default args of t
	instead of x.

	* g++.dg/other/default3.C: Xfail g4 test.

From-SVN: r156735
This commit is contained in:
Jakub Jelinek 2010-02-12 18:27:33 +01:00 committed by Jakub Jelinek
parent db0c207bb3
commit 16013fea58
4 changed files with 15 additions and 4 deletions

View File

@ -1,3 +1,9 @@
2010-02-12 Jakub Jelinek <jakub@redhat.com>
PR c++/43033
* name-lookup.c (pushdecl_maybe_friend): Check default args of t
instead of x.
2010-01-21 Release Manager
* GCC 4.4.3 released.

View File

@ -1,5 +1,5 @@
/* Definitions for C++ name lookup routines.
Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009
Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
Contributed by Gabriel Dos Reis <gdr@integrable-solutions.net>
@ -840,8 +840,8 @@ pushdecl_maybe_friend (tree x, bool is_friend)
add_decl_to_level (x, NAMESPACE_LEVEL (CP_DECL_CONTEXT (t)));
}
if (TREE_CODE (x) == FUNCTION_DECL || DECL_FUNCTION_TEMPLATE_P (x))
check_default_args (x);
if (TREE_CODE (t) == FUNCTION_DECL || DECL_FUNCTION_TEMPLATE_P (t))
check_default_args (t);
if (t != x || DECL_FUNCTION_TEMPLATE_P (t))
POP_TIMEVAR_AND_RETURN (TV_NAME_LOOKUP, t);

View File

@ -1,3 +1,8 @@
2010-02-12 Jakub Jelinek <jakub@redhat.com>
PR c++/43033
* g++.dg/other/default3.C: Xfail g4 test.
2010-02-10 Jakub Jelinek <jakub@redhat.com>
PR debug/43010

View File

@ -25,7 +25,7 @@ template<typename> void g3(int, int);
template<typename> void g3(int = 0, int); // { dg-error "default" }
template<typename> void g4(int, int);
template<typename> void g4(int = 0, int) {} // { dg-error "default" }
template<typename> void g4(int = 0, int) {} // { dg-error "default" "" { xfail *-*-* } }
template<typename> void g5();
template<typename> void g5(int = 0, int); // { dg-error "default" }