[gnu.g++.bug] G++ 1.34.1 Undeclared identifier warnings

rjc@maui.cs.ucla.edu (03/17/89)

G++ 1.34.1 GCC 1.34
Vax 8350, Ultrix 2.2-1 System #4
config.g++ vax

I am told that "Each undeclared identifier is reported only once for
each function it appears in."  This clearly is not the case.

bug.cc
-----------------------------------------------------------------------
/* test undeclared identifier warnings
 * Rob Collins (rjc@cs.ucla.edu)
 */

struct A {
	int i;
	A(int x) { printf("A(%d)\n", x); i = x; };
	A(A& x) { printf("A(A& x), x.i == %d\n", x.i); i = x.i; };
	~A(void) { printf("~A(%d)\n", i); };
	void operator += (A& x) { printf("+=(%d, %d)\n", i, x.i); i += x.i; };
};

A foo (void)
{
	tmp = 1;
	tmp = 1;
	tmp = 1;
	tmp = 1;
	tmp = 1;
	printf("foo(void), tmp.i == %d\n", tmp.i);
	return tmp;
}

main()
{
	A bar = 5;
	bar += foo();
	printf("main(), bar.i == %d\n", bar.i);
}
-----------------------------------------------------------------------

Script started on Thu Mar 16 10:39:20 1989
% g++ -v bug.cc
g++ version 1.34.1
 /usr/local/lib/gcc-cpp -+ -v -undef -D__GNU__ -D__GNUG__ -Dvax -Dunix -D__vax__ -D__unix__ bug.cc /tmp/cc007973.cpp
GNU CPP version 1.34
 /usr/local/lib/gcc-c++ /tmp/cc007973.cpp -quiet -dumpbase bug.cc -noreg -version -o /tmp/cc007973.s
GNU C++ version 1.34.1 (vax) compiled by GNU C version 1.34.
In function foo ():
bug.cc:15: `tmp' was not declared (first use this function)
bug.cc:15: (Each undeclared identifier is reported only once
bug.cc:15: for each function it appears in.)
bug.cc:16: `tmp' was not declared (first use this function)
bug.cc:17: `tmp' was not declared (first use this function)
bug.cc:18: `tmp' was not declared (first use this function)
bug.cc:19: `tmp' was not declared (first use this function)
bug.cc:20: `tmp' was not declared (first use this function)
bug.cc:21: `tmp' was not declared (first use this function)
% ^D
script done on Thu Mar 16 10:39:34 1989
-------------------------------------------------------------------------------
rjc@cs.ucla.edu
This is what happens when I sit on my keyboard: AISBDFAORI:KHGEDSYTFBFISKVDJ MN
Next week:  what happens when I throw my keyboard out the window!