Turbo C++ 3.0 bugs

Sean 'Captain Napalm' Conner spc at conman.org
Wed Dec 14 13:16:24 CST 2005


It was thus said that the Great 9000 VAX once stated:
> 
> I met a problem in Watcom C 11.0. I uses wcl which makes 8086 code.
> The code is running on a 386. I got wired result with
> printf("%x %x %x ",inportb(H_ADDR2), inportb(H_ADDR1), inportb(H_ADDR0));
> 
> but the following code worked as expected,
> printf("%x ", inportb(H_ADDR2));
> printf("%x ",inportb(H_ADDR1));
> printf("%x ", inportb(H_ADDR0));
> 
> The hardware is straightforward and unlikely to have problem. I don't
> have time to determine the real source of this problem, though.

  Did you need to read the ports in the sequence H_ADDR2, H_ADDR1 and
H_ADDR0, or could they be read in any sequence?  Because in C, parameters
are evaluated right to left ...

  -spc (rarely is it an issue though ... )




More information about the cctalk mailing list