🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.gcc.bug
Article #352

possible gcc bug

#352
From: vbl
Date: Thu, 09 Apr 1992 13:17
49 lines
2174 bytes
It appears that the following is a bug.  Both versions of the
program compile using Sun's CFront compiler.

//================================================
//Program 1: (does not compile)

class MyClass {
public:
    MyClass () { }
    MyClass &operator=(char c) { return *this; } // line 5
    operator int() { return 9; }  // <---- DIFF
};
int main() {
    MyClass foo;
}

On a Sun Sparc running SunOS 4.1.2, gcc 2.1 generates:

127 adirondacks> gcc -v myclass.cc
Reading specs from /usr/gnu/lib/gcc-lib/sparc-sun-sunos4.1.2/2.1/specs
gcc version 2.1
 /usr/gnu/lib/gcc-lib/sparc-sun-sunos4.1.2/2.1/cpp -lang-c++ -v -undef -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -Dsparc -Dsun -Dunix -D__sparc__ -D__sun__ -D__unix__ -D__sparc -D__sun -D__unix myclass.cc /usr/tmp/cca13027.i
GNU CPP version 2.1 (sparc)
  /usr/gnu/lib/gcc-lib/sparc-sun-sunos4.1.2/2.1/cc1plus /usr/tmp/cca13027.i -quiet -dumpbase myclass.cc -version -o /usr/tmp/cca13027.s
GNU C++ version 2.1 (sparc) compiled by GNU C version 2.1.
myclass.cc: In method `class MyClass& MyClass::operator = (char)':
myclass.cc:5: too many arguments for constructor `MyClass'
myclass.cc:5: in conversion to type `MyClass'
myclass.cc:5: too many arguments for constructor `MyClass'
myclass.cc:5: in conversion to type `MyClass'
myclass.cc:5: too many arguments for constructor `MyClass'
myclass.cc:5: in conversion to type `MyClass'
...  (repeat infinitely)

//================================================


//------------------------------------------------
//Program 2: (compiles)
class MyClass {
public:
    MyClass () { }
    MyClass &operator=(char c) { return *this; }
    operator char() { return 'x'; }  // <---- DIFF
};
int main() {
    MyClass foo;
}
//------------------------------------------------
Technical Details
Message-ID: <9204092117.AA05345@z.eecs.umich.edu>
Path: arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!zip.eecs.umich.edu!vbl

Show Full Headers
Complete Article Headers
Newsgroups: gnu.gcc.bug
Path: arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!zip.eecs.umich.edu!vbl
From: vbl@zip.eecs.umich.edu
Subject: possible gcc bug
Message-ID: <9204092117.AA05345@z.eecs.umich.edu>
Sender: gnulists@ai.mit.edu
Organization: GNUs Not Usenet
Distribution: gnu
Date: Thu, 9 Apr 1992 13:17:01 GMT
Approved: bug-gcc@prep.ai.mit.edu
Lines: 51