diff options
author | Andrew Pinski <andrew_pinski@playstation.sony.com> | 2009-11-06 19:10:07 +0000 |
---|---|---|
committer | Andrew Pinski <pinskia@gcc.gnu.org> | 2009-11-06 11:10:07 -0800 |
commit | 87e928642892922f18f1e652f41d8fc9169ae757 (patch) | |
tree | b288755ba9280ce0ec7b701f671fe7611718d52a /gcc/cp | |
parent | 2e3135726b941c5d1cd87d1905678a7533ed7d4d (diff) | |
download | gcc-87e928642892922f18f1e652f41d8fc9169ae757.zip gcc-87e928642892922f18f1e652f41d8fc9169ae757.tar.gz gcc-87e928642892922f18f1e652f41d8fc9169ae757.tar.bz2 |
re PR c++/41536 (always_inline does not work always with constructors)
2009-11-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR c++/41536
* optimize.c (maybe_clone_body): Copy DECL_ATTRIBUTES and
DECL_DISREGARD_INLINE_LIMITS also.
2009-11-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR c++/41536
* g++.dg/ext/always_inline-5.C: New test.
From-SVN: r153974
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cp/optimize.c | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 21a2221..6d7fd34 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2009-11-06 Andrew Pinski <andrew_pinski@playstation.sony.com> + + PR c++/41536 + * optimize.c (maybe_clone_body): Copy DECL_ATTRIBUTES and + DECL_DISREGARD_INLINE_LIMITS also. + 2009-11-06 Jakub Jelinek <jakub@redhat.com> PR c++/41967 diff --git a/gcc/cp/optimize.c b/gcc/cp/optimize.c index 58d5b90..662bd4a 100644 --- a/gcc/cp/optimize.c +++ b/gcc/cp/optimize.c @@ -199,6 +199,8 @@ maybe_clone_body (tree fn) DECL_VISIBILITY (clone) = DECL_VISIBILITY (fn); DECL_VISIBILITY_SPECIFIED (clone) = DECL_VISIBILITY_SPECIFIED (fn); DECL_DLLIMPORT_P (clone) = DECL_DLLIMPORT_P (fn); + DECL_ATTRIBUTES (clone) = copy_list (DECL_ATTRIBUTES (fn)); + DECL_DISREGARD_INLINE_LIMITS (clone) = DECL_DISREGARD_INLINE_LIMITS (fn); /* Adjust the parameter names and locations. */ parm = DECL_ARGUMENTS (fn); |