www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - A bug in the back-end?

I was reading the 1.041's back-end code.  Here's something that looked
wrong to me: in cgelem.c, in function elcmp(), at line 3318:

		    case 4:
			if (sz > 2)
			    e = el_una(OPu32_64,TYshort,e);
			else
			    e = el_una(OP32_16,TYshort,e);
			break;

Specifically the line

e = el_una(OPu32_64,TYshort,e);

looks wrong, the unary operator type should be 64 bit, not short.  Am I
missing something?
Mar 18 2009