﻿id	summary	reporter	owner	description	type	status	priority	component	version	resolution	keywords	cc
140	conditional expression bad code generation	pabuhr		"{{{
int main() {
    char c[1] = { 3 };
    int i = 4;
    int r = 3 < 4 ? c[0] : i;
    printf( ""%d\n"", r );
}
$ a.out
-460718077
}}}
The problem code is:
{{{
    char _X1cA0c_2[((unsigned long int )1)] = { ((char )3) };
    signed int _X1ii_2 = 4;
    signed int _X1ri_2 = (*(((3<4)!=((signed int )0)) ? ((signed int *)(&_X1cA0c_2[((signed long int )0)])) : (&_X1ii_2)));
}}}
and the cast is wrong for _X1cA0c_2. It should be (char *). I think the problem is unifying the type for the two expressions."	defect	new	critical	cfa-cc	1.0			
