[Bug c++/45642] g++ 4.6 regression, c++0x, weird mismatch for arguments with forwarded declaration when attributes are involved
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45642 Jason Merrill jason at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED --- Comment #6 from Jason Merrill jason at gcc dot gnu.org 2010-10-14 16:09:10 UTC --- This seems to have been fixed by the patch for bug 45984.
[Bug c++/45642] g++ 4.6 regression, c++0x, weird mismatch for arguments with forwarded declaration when attributes are involved
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45642 Jason Merrill jason at gcc dot gnu.org changed: What|Removed |Added CC||jason at gcc dot gnu.org --- Comment #5 from Jason Merrill jason at gcc dot gnu.org 2010-10-04 18:05:18 UTC --- It shouldn't be necessary to declare the alignment until the point when we're completing the class.
[Bug c++/45642] g++ 4.6 regression, c++0x, weird mismatch for arguments with forwarded declaration when attributes are involved
--- Comment #1 from tbptbp at gmail dot com 2010-09-10 17:34 --- Created an attachment (id=21767) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21767action=view) large fugly testcase -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45642
[Bug c++/45642] g++ 4.6 regression, c++0x, weird mismatch for arguments with forwarded declaration when attributes are involved
--- Comment #2 from pinskia at gcc dot gnu dot org 2010-09-10 17:34 --- I think you need __attribute((aligned(16))) on the original forward declared class too. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45642
[Bug c++/45642] g++ 4.6 regression, c++0x, weird mismatch for arguments with forwarded declaration when attributes are involved
--- Comment #3 from pinskia at gcc dot gnu dot org 2010-09-10 17:35 --- This seems related to PR 45112. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45642
[Bug c++/45642] g++ 4.6 regression, c++0x, weird mismatch for arguments with forwarded declaration when attributes are involved
--- Comment #4 from tbptbp at gmail dot com 2010-09-10 18:00 --- (In reply to comment #2) I think you need __attribute((aligned(16))) on the original forward declared class too. As stated that does, indeed, fix it. So, ok, let's say previous versions were too permissive, then, the problem is with the extremely confusing and useless diagnostic: there's no warning with -Wall -Wextra about the declaration/definition mismatch, and a puzzling error about an unrelated foo(x, y) not matching foo(x, y). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45642