[comp.lang.c++] bug in C++

frans@cs.vu.nl (Frans Heeman) (11/08/88)

On the following code, <<cfront 1.2.1 2/16/87>> produces an error
message, as it should:
	$ CC -c m.c
	CC  m.c:
	"m.c", line 15: error:  object missing for tList::append()
	1 error
	$ 
However, if the statement shown within comment is included in the code,
the compiler does NOT give an error message, although it still should:
	$ CC -c m.c
	CC  m.c:
	cc  -c  m..c
	$
Here is the code:


    1	/* enum confusion { append }; */

    3	class tList {
    4	    public:
    5		void append(void *p)	{ }
    6	};
	
    8	class tDemo {
    9	    public:
   10		void append(int);
   11	};
	
   13	void tDemo::append(int i)
   14	{
   15	    tList::append(&i);
   16	}


Normally, I don't overload names that much, but the enum with 'append'
appears in <stream.h>: 'enum open_mode { input=0, output=1, append=2 }'.

Is this a known bug, any reactions?