That's what I had supposed too, but the client definition depends on the
machine
definition of long.
% more x.c
#include <stdlib.h>
#include <stdio.h>
#include <X11/X.h>
int main( int ac, char** av) {
VisualID id;
printf("sz=%d\n", sizeof(id));
}
% cc -I/usr/openwin/include x.c
rincewind 125% file a.out
a.out: ELF 32-bit MSB executable SPARC32PLUS Version 1, V8+
Required, dynamically linked, not stripped
% a.out
sz=4
% cc -I/usr/openwin/include -m64 x.c
% file a.out
a.out: ELF 64-bit MSB executable SPARCV9 Version 1, dynamically
linked, not stripped
% a.out
sz=8
-phil.
Jim Graham wrote:
Please revert this fix and re-read the X11 protocol. Something *else*
went wrong for parfait to think that we wanted to parse a 64-bit value
there. VisualID values are small numbers and transferred as 32-bit
quantities in the protocol. If the typedef ended up with a 64-bit
representation from the header files then we have probably not
configured something correctly...
...jim
On 3/9/11 2:37 AM, [email protected] wrote:
Changeset: 69ec42543dd9
Author: bae
Date: 2011-03-09 13:08 +0300
URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/69ec42543dd9
7022280: Parfait reports Format string argument mismatch in
/jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c
Reviewed-by: jgodinez, prr
! src/solaris/native/sun/awt/awt_GraphicsEnv.c