[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-24 Thread rguenth at gcc dot gnu dot org
--- Comment #16 from rguenth at gcc dot gnu dot org 2009-02-24 14:52 --- Fixed. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNE

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-24 Thread rguenth at gcc dot gnu dot org
--- Comment #15 from rguenth at gcc dot gnu dot org 2009-02-24 14:50 --- Subject: Bug 39242 Author: rguenth Date: Tue Feb 24 14:50:30 2009 New Revision: 144408 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=144408 Log: 2009-02-24 Richard Guenther PR c++/39242

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-21 Thread rguenth at gcc dot gnu dot org
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39242

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-21 Thread rguenth at gcc dot gnu dot org
--- Comment #14 from rguenth at gcc dot gnu dot org 2009-02-21 12:54 --- Patch posted. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added URL|

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-20 Thread hubicka at ucw dot cz
--- Comment #13 from hubicka at ucw dot cz 2009-02-20 14:39 --- Subject: Re: [4.4 Regression] Inconsistent reject / accept of code > > What that means is that we *must not* implicitly instantiate things > > declared "extern template" unless they are DECL_DECLARED_INLINE_P. As a > > co

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-19 Thread jason at gcc dot gnu dot org
--- Comment #12 from jason at gcc dot gnu dot org 2009-02-19 17:39 --- (In reply to comment #10) > What that means is that we *must not* implicitly instantiate things > declared "extern template" unless they are DECL_DECLARED_INLINE_P. As a > consequence, at -O3, we cannot implicitly in

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-19 Thread rguenth at gcc dot gnu dot org
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |rguenth at gcc dot gnu dot |dot org

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-19 Thread rguenther at suse dot de
--- Comment #11 from rguenther at suse dot de 2009-02-19 16:54 --- Subject: Re: [4.4 Regression] Inconsistent reject / accept of code On Thu, 19 Feb 2009, mark at codesourcery dot com wrote: > --- Comment #10 from mark at codesourcery dot com 2009-02-19 16:41 > --- > Subjec

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-19 Thread mark at codesourcery dot com
--- Comment #10 from mark at codesourcery dot com 2009-02-19 16:41 --- Subject: Re: [4.4 Regression] Inconsistent reject / accept of code rguenth at gcc dot gnu dot org wrote: > The ultimate question is of course if the standard allows (or even requires) > an error here. The (someon

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-19 Thread hubicka at ucw dot cz
--- Comment #9 from hubicka at ucw dot cz 2009-02-19 15:40 --- Subject: Re: [4.4 Regression] Inconsistent reject / accept of code > /* Check to see whether we know that this template will be > instantiated in some other file, as with "extern template" > extension. */ > e

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-19 Thread rguenth at gcc dot gnu dot org
--- Comment #8 from rguenth at gcc dot gnu dot org 2009-02-19 15:20 --- Note that the patch only affects extern explicit template instantiations. /* Check to see whether we know that this template will be instantiated in some other file, as with "extern template" extension.

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-19 Thread hubicka at ucw dot cz
--- Comment #7 from hubicka at ucw dot cz 2009-02-19 14:59 --- Subject: Re: [4.4 Regression] Inconsistent reject / accept of code > Index: cp/pt.c > === > --- cp/pt.c (revision 144292) > +++ cp/pt.c (working copy)

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-19 Thread rguenth at gcc dot gnu dot org
--- Comment #6 from rguenth at gcc dot gnu dot org 2009-02-19 14:51 --- Note that in the original testcase YStatement is incomplete, but properly derives from Rep in the TU with the explicit instantiation of RepPtrStore. Instead of not instantiating so much we could also try to suppress

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-19 Thread rguenth at gcc dot gnu dot org
--- Comment #5 from rguenth at gcc dot gnu dot org 2009-02-19 14:30 --- Or rather we don't want template instantiation (and errors from it) to differ from optimized to non-optimized build. So, Index: cp/pt.c === --- cp/pt.

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-19 Thread rguenth at gcc dot gnu dot org
--- Comment #4 from rguenth at gcc dot gnu dot org 2009-02-19 14:19 --- This fixes it for me: Index: decl2.c === --- decl2.c (revision 144292) +++ decl2.c (working copy) @@ -3755,7 +3755,8 @@ bool possibly_inlined_

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-19 Thread rguenth at gcc dot gnu dot org
--- Comment #3 from rguenth at gcc dot gnu dot org 2009-02-19 13:50 --- The error is that RepPtrStore::assign is instantiated at all in face of extern template class RepPtrStore; -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39242

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-19 Thread rguenth at gcc dot gnu dot org
--- Comment #2 from rguenth at gcc dot gnu dot org 2009-02-19 13:46 --- Randomly poking around the tree shows Index: cp/ChangeLog === --- cp/ChangeLog(revision 138149) +++ cp/ChangeLog(revision 138150) @@ -1

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-19 Thread rguenth at gcc dot gnu dot org
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.4.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39242

[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code

2009-02-19 Thread rguenth at gcc dot gnu dot org
--- Comment #1 from rguenth at gcc dot gnu dot org 2009-02-19 13:40 --- Created an attachment (id=17329) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17329&action=view) original testcase Original testcase from Yast YCP. Requires -std=c++0x. -- http://gcc.gnu.org/bugzilla/sh