$c+
module confuse2 { test12_2 -- should do a better job here}

{ This test uses various identifiers where exprs are needed
-- but they are not exprs.  These are not the only
-- possibilities in GCL.  It can also happen in subscripting, 
-- for example.  NOTE. The sample compiler may fail some of 
-- these tests.  }
private

typedefinition integer int;
constant c = int; { error}
int x,y;
x z; { error}

begin

 int := xx;  { error}
 confuse := y;  { error }
 read int;  { error}
 x := - confuse;   { error}
 write confuse.confuse;  { error}
 write int.confuse; { error}
 if x < int ->   { error}
	write confuse;  { error}
 [] int ->  { error}
	write int;  { error}
 fi;
end. { 12 errors}
