Bug 64208 - Internal error #382.
Internal error #382.
Status: CLOSED CURRENTRELEASE
Product: Red Hat Linux
Classification: Retired
Component: gcc (Show other bugs)
7.2
All Linux
medium Severity low
: ---
: ---
Assigned To: Jakub Jelinek
Brian Brock
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2002-04-29 06:23 EDT by Peter Englmaier
Modified: 2007-04-18 12:42 EDT (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2002-12-15 15:07:00 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Peter Englmaier 2002-04-29 06:23:01 EDT
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.2.1) Gecko/20010901

Description of problem:
Compiler gets confused by some bad code and prints 'Internal error #382'. As a
'beginner' in C++, I would prefer a better error message.
Best, Peter.

Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
1.Compile program using 'gcc bug382.c', or 'gcc3 bug382.c':

bug382.cc:
namespace mc {
  class A {
    /// next line 'protected:' or 'public:' triggers the internal bug
  public:
    A() { };
  };

}// end namespace mc

using ::mc;


Actual Results:  bug382.cc:14: Internal error #382.
bug382.cc:14: confused by earlier errors, bailing out


Expected Results:  More meaningful error message about missing namespace
identifier in statement 'using ::mc'. The code should read 'using namespace mc',
or 'using mc::A'.


Additional info:

*******************************************Output of gcc:
Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/2.96/specs
gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-98)
 /usr/lib/gcc-lib/i386-redhat-linux/2.96/cpp0 -lang-c++ -D__GNUG__=2
-D__EXCEPTIONS -v -D__GNUC__=2 -D__GNUC_MINOR__=96 -D__GNUC_PATCHLEVEL__=0
-D__ELF__ -Dunix -Dlinux -D__ELF__ -D__unix__ -D__linux__ -D__unix -D__linux
-Asystem(posix) -D__NO_INLINE__ -Acpu(i386) -Amachine(i386) -Di386 -D__i386
-D__i386__ -D__tune_i386__ bug382.cc bug382.ii
GNU CPP version 2.96 20000731 (Red Hat Linux 7.1 2.96-98) (cpplib) (i386 Linux/ELF)
ignoring nonexistent directory "/usr/i386-redhat-linux/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/include/g++-3
 /usr/local/include
 /usr/lib/gcc-lib/i386-redhat-linux/2.96/include
 /usr/include
End of search list.
 /usr/lib/gcc-lib/i386-redhat-linux/2.96/cc1plus bug382.ii -quiet -dumpbase
bug382.cc -version -o bug382.s
GNU C++ version 2.96 20000731 (Red Hat Linux 7.1 2.96-98) (i386-redhat-linux)
compiled by GNU C version 2.96 20000731 (Red Hat Linux 7.1 2.96-98).
bug382.cc:14: Internal error #382.
bug382.cc:14: confused by earlier errors, bailing out

*********************Output file bug382.ii 
# 5 "bug382.cc"
namespace mc {
  class A {

  public:
    A() { };
  };

}

using ::mc;

********************************Output file bug382.s:
	.file	"bug382.cc"
	.version	"01.01"
gcc2_compiled.:
Comment 1 Alan Cox 2002-12-15 15:07:00 EST
Works in g++ 3.2

Note You need to log in before you can comment on or make changes to this bug.