Hi,

I'm trying to correct some warnings in a port marked
ONLY_FOR_ARCHS=i386.  They stem from casting a pointer (which I assume
is a 64-bit unsigned) to "unsigned int" which is apparently 32 bits?
I sort of thought int was supposed to be the atomic register size, but
no doubt that would break more than it would help, so it's 32-bits.
Anyways, what's the right way to fix this?  The port actually works
fine as-is on amd64, so I can only assume something was fixed for 7.1,
or someone was being extra cautious with the i386 tag.

The code:

   typedef unsigned int cardinal;
   ...
   fprintf(stderr, "Mode Table Offset: $C0000 + $%x\n",
((cardinal)map->mode_table) - ((cardinal)map->bios_ptr));

Can I just ditch the cast+%x and use %p?  I don't have an i386 system
to test on, and I don't want to break anything if I submit a patch...

Thanks,
Steve
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to