Subject: libradius broken on amd64
To: None <current-users@netbsd.org>
From: Paulo Alexandre Pinto Pires <p@ppires.org>
List: current-users
Date: 02/20/2005 12:46:03
Hello.

While trying to cross-build an amd64 release from sources as of today 
(2005/02/20), I got a bunch of lint errors that prevented it to go 
successfully.  Most (all?) errors seemed related to the assumption that 
sizeof(int)==sizeof(long), which isn't true for 64-bit gcc.  Building 
the same sources natively on i386 runs smoothly to the end.

#   compile  libradius/radlib.ln
CC=/usr/src/tooldir.NetBSD-2.0-i386/bin/x86_64--netbsd-gcc /usr/src/tooldir.NetB
SD-2.0-i386/bin/x86_64--netbsd-lint -chapbxzF -Sw -d /usr/dest/usr/include  -I. -DWITH_SSL    -i /usr/src/lib/libradius/radlib.c
/usr/src/lib/libradius/radlib.c(111): warning: conversion to 'unsigned long' due to prototype, arg #2 [259]
/usr/src/lib/libradius/radlib.c(125): warning: conversion from 'unsigned long' to 'int' may lose accuracy [132]
/usr/src/lib/libradius/radlib.c(127): warning: conversion to 'unsigned long' due to prototype, arg #3 [259]
/usr/src/lib/libradius/radlib.c(192): warning: conversion to 'unsigned long' due to prototype, arg #3 [259]
/usr/src/lib/libradius/radlib.c(252): warning: conversion to 'unsigned long' due to prototype, arg #3 [259]
/usr/src/lib/libradius/radlib.c(260): warning: conversion to 'unsigned long' due to prototype, arg #3 [259]
/usr/src/lib/libradius/radlib.c(275): warning: conversion to 'unsigned long' due to prototype, arg #3 [259]
/usr/src/lib/libradius/radlib.c(307): warning: conversion from 'unsigned long' to 'int' may lose accuracy [132]
/usr/src/lib/libradius/radlib.c(328): warning: conversion from 'unsigned long' to 'unsigned char' may lose accuracy [132]
/usr/src/lib/libradius/radlib.c(416): warning: conversion to 'int' due to prototype, arg #2 [259]
/usr/src/lib/libradius/radlib.c(436): warning: conversion from 'unsigned long' to 'int' may lose accuracy [132]
/usr/src/lib/libradius/radlib.c(452): warning: conversion to 'int' due to prototype, arg #3 [259]
/usr/src/lib/libradius/radlib.c(501): warning: conversion from 'unsigned long' to 'int' may lose accuracy [132]
/usr/src/lib/libradius/radlib.c(567): warning: conversion to 'unsigned long' due to prototype, arg #3 [259]
/usr/src/lib/libradius/radlib.c(608): warning: conversion from 'long' to 'int' may lose accuracy [132]
/usr/src/lib/libradius/radlib.c(699): warning: conversion from 'unsigned long' to 'int' may lose accuracy [132]
/usr/src/lib/libradius/radlib.c(725): warning: conversion to 'unsigned int' due to prototype, arg #3 [259]
/usr/src/lib/libradius/radlib.c(757): warning: conversion from 'unsigned long' to 'unsigned char' may lose accuracy [132]
/usr/src/lib/libradius/radlib.c(758): warning: conversion from 'unsigned long' to 'unsigned char' may lose accuracy [132]
/usr/src/lib/libradius/radlib.c(904): warning: conversion from 'unsigned long' to 'int' may lose accuracy [132]
/usr/src/lib/libradius/radlib.c(1093): warning: conversion from 'unsigned long' to 'unsigned char' may lose accuracy [132]
/usr/src/lib/libradius/radlib.c(1127): warning: conversion to 'unsigned long' due to prototype, arg #3 [259]

*** Failed target:  radlib.ln
*** Failed command: CC=/usr/src/tooldir.NetBSD-2.0-i386/bin/x86_64--netbsd-gcc /usr/src/tooldir.NetBSD-2.0-i386/bin/x86_64--netbsd-lint -chapbxzF -Sw -d /usr/dest/usr/include -I. -DWITH_SSL -i /usr/src/lib/libradius/radlib.c
*** Error code 1
  

Hmmm...  Actually it is strange that only libradius triggered this 
abort, as lint on at least 355 other files show similar problems when 
building for amd64, against only 2 (in the recently imported 
ipsec-tools) in a native i386 build.

-- 
	Pappires

... Qui habet aurem audiat quid Spiritus dicat ecclesiis.