found 326451 3.0-3
thanks

Hi,

3.0-3 is still failing to build:
jlint.cc: In function 'void format_message(int, const utf_string&, int, 
__va_list_tag*)':
jlint.cc:240: warning: field precision should have type 'int', but argument 3 
has type 'long int'
jlint.cc:264: error: cast from 'const void*' to 'int' loses precision


It looks like the patch was only partially applied?

Anyway, please do not cast a pointer to either an int or a long.
Cast it to an intptr_t if you have to, but you should be able to
avoid that too.

It seems to be using stdargs.  It really should just call
va_arg() with the right type instead of always using a void *.
If you always call va_arg for a void *, this means whenever you
pass something to it, you'll always have to cast it to a void *.

PS: The TODO file says:

* (1) Make code 64 bit clean by adding more type casts. E.g.
  void *p;
  int i;
  p = (void *) (ptrword) i;
  where ptrword is derived from a ./configure script.

ptrword should just be intptr_t.  And he shouldn't be using it.


PS: It would be nice if you could run the testsuite (in
tests.tar.bz2) and make the build fail if it found any errors.


Kurt



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to