public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug c++/13407] New: Confusing error message from extraneous typename @ 2003-12-16 0:03 austern at apple dot com 2003-12-16 8:33 ` [Bug c++/13407] " bangerth at dealii dot org ` (6 more replies) 0 siblings, 7 replies; 8+ messages in thread From: austern at apple dot com @ 2003-12-16 0:03 UTC (permalink / raw) To: gcc-bugs Consider the following code sample: struct A { }; struct B { typedef A Type; }; template <typename T> struct X : public typename T::Type { }; X<B> x; The mainline compiler gives the following error messages: bc.cc:5: error: expected class-name bc.cc:5: error: expected `{' bc.cc:6: error: expected unqualified-id bc.cc:6: error: expected `;' ... An error message is appropriate, since the code really is wrong. However, a naive user (even a sophisticated user!) would be hard pressed to figure out the real reason for this cascade of errors: 'typename' is forbidden in a base-specifier. This is a regression from 3.3. The 3.3 error messages were pretty bad too, but at least they gave a hint that the problem had something to do with 'typename'. -- Summary: Confusing error message from extraneous typename Product: gcc Version: 3.4 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: austern at apple dot com CC: gcc-bugs at gcc dot gnu dot org GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13407 ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/13407] Confusing error message from extraneous typename 2003-12-16 0:03 [Bug c++/13407] New: Confusing error message from extraneous typename austern at apple dot com @ 2003-12-16 8:33 ` bangerth at dealii dot org 2003-12-16 17:08 ` pinskia at gcc dot gnu dot org ` (5 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: bangerth at dealii dot org @ 2003-12-16 8:33 UTC (permalink / raw) To: gcc-bugs ------- Additional Comments From bangerth at dealii dot org 2003-12-16 08:05 ------- Confirmed. I think the error messages of 3.3 and 3.4 are equally bad, so wouldn't rate this a regression. It would be nice to have this improved nevertheless. W. -- What |Removed |Added ---------------------------------------------------------------------------- CC| |gdr at gcc dot gnu dot org Status|UNCONFIRMED |NEW Ever Confirmed| |1 GCC build triplet| i686-pc-linux-gnu |i686-pc-linux-gnu GCC host triplet| i686-pc-linux-gnu |i686-pc-linux-gnu GCC target triplet| i686-pc-linux-gnu |i686-pc-linux-gnu Keywords| |diagnostic Last reconfirmed|0000-00-00 00:00:00 |2003-12-16 08:05:03 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13407 ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/13407] Confusing error message from extraneous typename 2003-12-16 0:03 [Bug c++/13407] New: Confusing error message from extraneous typename austern at apple dot com 2003-12-16 8:33 ` [Bug c++/13407] " bangerth at dealii dot org @ 2003-12-16 17:08 ` pinskia at gcc dot gnu dot org 2004-01-16 3:19 ` giovannibajo at libero dot it ` (4 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: pinskia at gcc dot gnu dot org @ 2003-12-16 17:08 UTC (permalink / raw) To: gcc-bugs -- What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13407 ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/13407] Confusing error message from extraneous typename 2003-12-16 0:03 [Bug c++/13407] New: Confusing error message from extraneous typename austern at apple dot com 2003-12-16 8:33 ` [Bug c++/13407] " bangerth at dealii dot org 2003-12-16 17:08 ` pinskia at gcc dot gnu dot org @ 2004-01-16 3:19 ` giovannibajo at libero dot it 2004-01-16 3:21 ` giovannibajo at libero dot it ` (3 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: giovannibajo at libero dot it @ 2004-01-16 3:19 UTC (permalink / raw) To: gcc-bugs ------- Additional Comments From giovannibajo at libero dot it 2004-01-16 03:19 ------- Mine! -- What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at gcc dot gnu |giovannibajo at libero dot |dot org |it Status|NEW |ASSIGNED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13407 ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/13407] Confusing error message from extraneous typename 2003-12-16 0:03 [Bug c++/13407] New: Confusing error message from extraneous typename austern at apple dot com ` (2 preceding siblings ...) 2004-01-16 3:19 ` giovannibajo at libero dot it @ 2004-01-16 3:21 ` giovannibajo at libero dot it 2004-01-16 12:29 ` cvs-commit at gcc dot gnu dot org ` (2 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: giovannibajo at libero dot it @ 2004-01-16 3:21 UTC (permalink / raw) To: gcc-bugs ------- Additional Comments From giovannibajo at libero dot it 2004-01-16 03:21 ------- Patch submitted, waiting for review: http://gcc.gnu.org/ml/gcc-patches/2004-01/msg01545.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13407 ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/13407] Confusing error message from extraneous typename 2003-12-16 0:03 [Bug c++/13407] New: Confusing error message from extraneous typename austern at apple dot com ` (3 preceding siblings ...) 2004-01-16 3:21 ` giovannibajo at libero dot it @ 2004-01-16 12:29 ` cvs-commit at gcc dot gnu dot org 2004-01-16 12:33 ` cvs-commit at gcc dot gnu dot org 2004-01-16 12:34 ` giovannibajo at libero dot it 6 siblings, 0 replies; 8+ messages in thread From: cvs-commit at gcc dot gnu dot org @ 2004-01-16 12:29 UTC (permalink / raw) To: gcc-bugs ------- Additional Comments From cvs-commit at gcc dot gnu dot org 2004-01-16 12:29 ------- Subject: Bug 13407 CVSROOT: /cvs/gcc Module name: gcc Changes by: giovannibajo@gcc.gnu.org 2004-01-16 12:29:41 Modified files: gcc/cp : ChangeLog parser.c Log message: PR c++/13407 * parser.c (cp_parser_base_specifier): Check for an invalid keyword 'typename' and emit an user-friendly error message. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&r1=1.3886&r2=1.3887 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/parser.c.diff?cvsroot=gcc&r1=1.156&r2=1.157 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13407 ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/13407] Confusing error message from extraneous typename 2003-12-16 0:03 [Bug c++/13407] New: Confusing error message from extraneous typename austern at apple dot com ` (4 preceding siblings ...) 2004-01-16 12:29 ` cvs-commit at gcc dot gnu dot org @ 2004-01-16 12:33 ` cvs-commit at gcc dot gnu dot org 2004-01-16 12:34 ` giovannibajo at libero dot it 6 siblings, 0 replies; 8+ messages in thread From: cvs-commit at gcc dot gnu dot org @ 2004-01-16 12:33 UTC (permalink / raw) To: gcc-bugs ------- Additional Comments From cvs-commit at gcc dot gnu dot org 2004-01-16 12:33 ------- Subject: Bug 13407 CVSROOT: /cvs/gcc Module name: gcc Changes by: giovannibajo@gcc.gnu.org 2004-01-16 12:33:29 Modified files: gcc/testsuite : ChangeLog Added files: gcc/testsuite/g++.dg/parse: typename6.C Log message: PR c++/13407 * g++.dg/parse/typename6.C: New test. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.3383&r2=1.3384 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/parse/typename6.C.diff?cvsroot=gcc&r1=NONE&r2=1.1 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13407 ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/13407] Confusing error message from extraneous typename 2003-12-16 0:03 [Bug c++/13407] New: Confusing error message from extraneous typename austern at apple dot com ` (5 preceding siblings ...) 2004-01-16 12:33 ` cvs-commit at gcc dot gnu dot org @ 2004-01-16 12:34 ` giovannibajo at libero dot it 6 siblings, 0 replies; 8+ messages in thread From: giovannibajo at libero dot it @ 2004-01-16 12:34 UTC (permalink / raw) To: gcc-bugs ------- Additional Comments From giovannibajo at libero dot it 2004-01-16 12:34 ------- Fixed in GCC 3.4.0! -- What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution| |FIXED Target Milestone|--- |3.4.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13407 ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2004-01-16 12:34 UTC | newest] Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2003-12-16 0:03 [Bug c++/13407] New: Confusing error message from extraneous typename austern at apple dot com 2003-12-16 8:33 ` [Bug c++/13407] " bangerth at dealii dot org 2003-12-16 17:08 ` pinskia at gcc dot gnu dot org 2004-01-16 3:19 ` giovannibajo at libero dot it 2004-01-16 3:21 ` giovannibajo at libero dot it 2004-01-16 12:29 ` cvs-commit at gcc dot gnu dot org 2004-01-16 12:33 ` cvs-commit at gcc dot gnu dot org 2004-01-16 12:34 ` giovannibajo at libero dot it
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).