typedef int c;
enum { i = 1 };

class X
	{
	char v[i];
	int f() { return sizeof(c); }
	char c;             // error: typedef name 'c'
                        // redefined after use
	enum { i = 2; };    // error: constant 'i'
	                    // redefined after use
	};

typedef char *T;

struct Y
	{
	T a;
	typedef long T;     // error: T already defined
	T b;
	};



