This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
c++/2232: Numerous g++ internal errors #122 after trivial omissions of closing brackets/braces/parens
- To: gcc-gnats at gcc dot gnu dot org
- Subject: c++/2232: Numerous g++ internal errors #122 after trivial omissions of closing brackets/braces/parens
- From: greg dot edwards at tenix dot com
- Date: 8 Mar 2001 22:46:56 -0000
- Reply-To: greg dot edwards at tenix dot com
>Number: 2232
>Category: c++
>Synopsis: Numerous g++ internal errors #122 after trivial omissions of closing brackets/braces/parens
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Mar 08 14:56:01 PST 2001
>Closed-Date:
>Last-Modified:
>Originator: Greg Edwards, Tenix Defence Systems, Sydney, Australia
>Release: gcc version 2.96 20000731 (Red Hat Linux 7.0)
>Organization:
>Environment:
HP Kayak PIII 500Mhz, RedHat 7.0, C++ code.
>Description:
Apologies for spartan report.
I regularly get a g++ complete collapse with internal error (122 on this occasion)
which turns out to be provoked by merely omitting the closing
} on a function, or other block, or in some cases other incomplete
statements, eg "myfunc(arg1," where I have typed half a line
of code, gone away to think, come back and compiled.
Completion of the statement, or the closing } on a block or
func, always fixes the problem.
Previous compilers I have used (not GNU) manage to resync and recover,
albeit with usually bogus error messages around the error point.
Do you want detailed reports of these cases ?
Is g++ designed to simply give up at these large error points ?
Happily remaining parsing seems very robust, congrats.
Apologies again for spartan error report, I am quite happy to
document a case completely if needed.
Greg Edwards
>How-To-Repeat:
Leave the closing brace off a function in a large code file.
Chop off the last half of a complex statement with lots of
brackets.
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: