[omniORB] CORBA::Long

Luke Deller ldeller@xplantechnology.com
Mon, 04 Mar 2002 17:56:17 +1100


Hi,

Why is CORBA::Long typedef'ed to "long" rather than "int" on 32-bit 
architectures?

This makes using the printf/scanf family of functions with CORBA::Long 
quite awkward...

With gcc2.96 on x86, the following code produces a warning "int format, 
Long arg (arg 2)":

     CORBA::Long number = 3;
     printf("number = %d\n", number);

but the required fix [changing %d to %ld] would make this code snippet not 
64-bit clean.

Would it be possible to change CORBA::Long to be "int"?

Regards,
Luke.