Simple test:
int a() {
int i; short j;
float* k = 1 ? &i : &j;
}
This crashes in codegen because clang warns, and then neglects to
actually make the types match.
Patch attached. As noted, I deciced to coerce both pointers to void*
because that's what gcc does.
-Eli
incompatptrfix.txt (949 Bytes)