[OpenAFS] "package" won't build 1.4.1-rc2

Jeffrey Hutzelman jhutz@cmu.edu
Wed, 04 Jan 2006 18:18:23 -0500


On Wednesday, January 04, 2006 12:02:18 PM -0500 Andrew Bacchi 
<bacchi@rpi.edu> wrote:

> OK, I know this is very old technology, but we still use 'package' for
> WS updates.
>
> Here is the compile error, I've looked through the package files, but I
> can't tell which value is void that shouldn't be.  This built fine in
> 1.2.13.  Thanks.

You haven't told us what platform or compiler you're using, but I'm going 
to guess that it's a recent Linux using gcc 4.  The thing that changed here 
is not OpenAFS; it's your compiler.

The complaint is not that a value is void that shouldn't be.
The complaint is that a value that _is_ void is not being ignored.

Specifically, sync() returns void, but we are comparing its return value as 
if it were an integer.  This is a perfectly reasonable thing to do; it 
wasn't until relatively recently that some platforms started declaring 
sync(2) as returning void.  The reason you're losing is that you've 
switched to a compiler that is rather more pedantic about such things than 
the one you were using before.

You might consider sending a report to openafs-bugs@openafs.org.
I bet the gatekeepers would be happy if you included a patch.

-- Jeffrey T. Hutzelman (N3NHS) <jhutz+@cmu.edu>
   Sr. Research Systems Programmer
   School of Computer Science - Research Computing Facility
   Carnegie Mellon University - Pittsburgh, PA