Date: Mon, 9 Nov 1998 11:27:10 -0500 (EST) From: Thomas David Rivers <rivers@dignus.com> To: freebsd-hackers@freefall.cdrom.com Subject: A stdio question... does fpos_t really need to be 'long long'? Message-ID: <199811091627.LAA23614@lakes.dignus.com>
next in thread | raw e-mail | index | archive | help
Ok - here's a question for the stdio internal gurus...
ftell() is defined to return a 'long' (32 bits).
fpos_t is defined as a 'long long' (64 bits).
fgetpos() accepts an fpos_t as it's second argument, and is
implemented as:
{
int retval;
retval = (*pos = ftell(fp)) == (fpos_t) -1;
return (retval);
}
Now - given this - how will fgetpos() ever succeed on a file
position greater than 2**32 - since ftell() can't return anything
larger than that...
Moreover - what if you do an fsetpos() on something larger than
2**32 and then do an fgetpos() to see if it actually worked...
If this is the case... then why is fpos_t a 'long long'? If, in fact,
it can never be set that large?
I must be missing something here...
- Dave Rivers -
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199811091627.LAA23614>
