From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15637 invoked by alias); 11 May 2013 13:14:15 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 15570 invoked by uid 48); 11 May 2013 13:14:03 -0000 From: "daniel.kruegler at googlemail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/57239] cannot handle inner/nested class templates with non-type parameter packs that were declared in the outer/containing class Date: Sat, 11 May 2013 13:14:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c++ X-Bugzilla-Version: 4.8.1 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: daniel.kruegler at googlemail dot com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2013-05/txt/msg00755.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D57239 Daniel Kr=C3=BCgler changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |daniel.kruegler@googlemail. | |com --- Comment #1 from Daniel Kr=C3=BCgler --- The report misses a complete example. The following is a reduced form and f= ree of library stuff: //------------------------------------------------------- struct true_type { enum { value =3D true }; }; struct false_type { enum { value =3D false }; }; template struct Foo {}; template struct is_instantiation_of_nontypes { template class TT, typename T> struct check : false_type {}; template class TT, Ts... Args> struct check> : true_type {}; }; static_assert(is_instantiation_of_nontypes::check >::value, "Ouch"); //------------------------------------------------------- compiled with gcc 4.9.0 20130505 (experimental) gives the error "main.cpp|14|error: 'Ts ...' is not a valid type for a template non-type parameter| main.cpp|14|error: template argument 2 is invalid| main.cpp|17|error: type/value mismatch at argument 1 in template parameter = list for 'template template > class TT, class T> template template > class TT, class T> struct is_instantiation_of_nontypes::check'| \main.cpp|17|error: expected a template of type 'template template > class TT', got 'template struct Foo'" >>From gcc-bugs-return-422083-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Sat May 11 15:15:08 2013 Return-Path: Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 1693 invoked by alias); 11 May 2013 15:15:08 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Delivered-To: mailing list gcc-bugs@gcc.gnu.org Received: (qmail 1625 invoked by uid 48); 11 May 2013 15:15:03 -0000 From: "scottbaldwin at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/57239] cannot handle inner/nested class templates with non-type parameter packs that were declared in the outer/containing class Date: Sat, 11 May 2013 15:15:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c++ X-Bugzilla-Version: 4.8.1 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: scottbaldwin at gmail dot com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2013-05/txt/msg00756.txt.bz2 Content-length: 1127 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D57239 --- Comment #2 from etherice --- (In reply to Daniel Kr=C3=BCgler from comment #1) > The report misses a complete example. The following is a reduced form and > free of library stuff: >=20 > //------------------------------------------------------- > ... The reason I provided two separate examples (which both appear complete to = me, and only use standard headers and ) was to demonstr= ate that the bug can either result in compilation errors, but in some cases not have any compilation errors at all (in which case incorrect code is generat= ed unless explicitly checked for with a static_assert or template metaprogramming-based error). The "compile-time error demo" (the one you reduced), by itself, does not demonstrate the latter case since the test (whether it's a static or runtime test) can never be "reached" due to the compile error ("'Ts ...' is not a v= alid type for a template non-type parameter", which is essentially the same in 4.7/4.8/4.9). So both examples were needed to show the full extent. >>From gcc-bugs-return-422084-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Sat May 11 17:08:04 2013 Return-Path: Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 22344 invoked by alias); 11 May 2013 17:08:03 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Delivered-To: mailing list gcc-bugs@gcc.gnu.org Received: (qmail 22194 invoked by uid 48); 11 May 2013 17:08:00 -0000 From: "steven at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug rtl-optimization/55278] [4.8/4.9 Regression] Botan performance regressions, other compilers generate better code than gcc Date: Sat, 11 May 2013 17:08:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: rtl-optimization X-Bugzilla-Version: 4.8.0 X-Bugzilla-Keywords: missed-optimization, ra X-Bugzilla-Severity: normal X-Bugzilla-Who: steven at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 4.8.1 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cf_reconfirmed_on short_desc Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2013-05/txt/msg00757.txt.bz2 Content-length: 702 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55278 Steven Bosscher changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed|2013-03-23 00:00:00 |2013-05-11 0:00 Summary|[4.8/4.9 Regression] Botan |[4.8/4.9 Regression] Botan |performance regressions |performance regressions, |apparently due to LRA |other compilers generate | |better code than gcc --- Comment #13 from Steven Bosscher --- Per comment #11, not an LRA issue.