x86-64: Fix Wrong comparisonbetweenpointerandlongcste
main (int argc, char *argv[]) { char *p = (char *)0x12345678ABCD000F; int res; res = (p != (char *)0x12345678ABCD000F); return res; }
This commit is contained in:
parent
e500c9118a
commit
614790dc14
1 changed files with 4 additions and 0 deletions
4
tccgen.c
4
tccgen.c
|
@ -1543,6 +1543,10 @@ static void gen_cast(CType *type)
|
|||
vtop->c.ll = vtop->c.ull;
|
||||
else if (sbt & VT_UNSIGNED)
|
||||
vtop->c.ll = vtop->c.ui;
|
||||
#ifdef TCC_TARGET_X86_64
|
||||
else if (sbt == VT_PTR)
|
||||
;
|
||||
#endif
|
||||
else if (sbt != VT_LLONG)
|
||||
vtop->c.ll = vtop->c.i;
|
||||
|
||||
|
|
Loading…
Reference in a new issue