aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2009-08-16 13:42:41 -0400
committerJason Merrill <jason@gcc.gnu.org>2009-08-16 13:42:41 -0400
commitb49bd3798d288b781b2562c03231cca3d5eb8e8c (patch)
tree32fe1df0247ca1c2c6d69c4652436a8f5ef60956
parent30fff3d8cb8986a6d31cac16492c58b31019fd1a (diff)
downloadgcc-b49bd3798d288b781b2562c03231cca3d5eb8e8c.zip
gcc-b49bd3798d288b781b2562c03231cca3d5eb8e8c.tar.gz
gcc-b49bd3798d288b781b2562c03231cca3d5eb8e8c.tar.bz2
* decl2.c (mark_used): It's ok to synthesize for default args now.
From-SVN: r150805
-rw-r--r--gcc/cp/ChangeLog4
-rw-r--r--gcc/cp/decl2.c7
2 files changed, 5 insertions, 6 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index dc9f1ca..e5ca35d 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,7 @@
+2009-08-15 Jason Merrill <jason@redhat.com>
+
+ * decl2.c (mark_used): It's ok to synthesize for default args now.
+
2009-08-10 Jason Merrill <jason@redhat.com>
Implement DR 757: It's OK for a decl to use a type without linkage
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c
index 610d62d2..4644427 100644
--- a/gcc/cp/decl2.c
+++ b/gcc/cp/decl2.c
@@ -3943,12 +3943,7 @@ mark_used (tree decl)
&& DECL_NONSTATIC_MEMBER_FUNCTION_P (decl)
&& DECL_DEFAULTED_FN (decl)
&& !DECL_THUNK_P (decl)
- && ! DECL_INITIAL (decl)
- /* Kludge: don't synthesize for default args. Unfortunately this
- rules out initializers of namespace-scoped objects too, but
- it's sort-of ok if the implicit ctor or dtor decl keeps
- pointing to the class location. */
- && current_function_decl)
+ && ! DECL_INITIAL (decl))
{
synthesize_method (decl);
/* If we've already synthesized the method we don't need to