[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-gnubg] Bug: 14 point one-sided race database withmakebearoff.ex
Re: [Bug-gnubg] Bug: 14 point one-sided race database withmakebearoff.exe
Fri, 7 Jan 2005 01:40:21 +0100
On Thu 06 Jan 2005 (15:11 -0700), Michael Petch wrote:
> I don't have mingw32 on a system here but I was wondering if mingw32
> supports the 64 bit variants like lseek64, feesk64, ftell64, truncate64
> etc etc?
Looking at the FreeBSD man pages I see:
fgetpos(FILE * restrict stream, fpos_t * restrict pos);
fsetpos(FILE *stream, const fpos_t *pos);
fseeko(FILE *stream, off_t offset, int whence);
with the following notes:
The fseeko() function is identical to fseek(), except it takes an
off_t argument instead of a long. Likewise, the ftello()
function is identical to ftell(), except it returns an off_t.
The fgetpos() and fsetpos() functions are alternate interfaces
for retrieving and setting the current position in the file,
similar to ftell() and fseek(), except that the current position
is stored in an opaque object of type fpos_t pointed to by pos.
These functions provide a portable way to seek to offsets larger
than those that can be repre- sented by a long int. They may
also store additional state information in the fpos_t object to
facilitate seeking within files containing multi- byte characters
with state-dependent encodings. Although fpos_t has tra-
ditionally been an integral type, applications cannot assume that
it is; in particular, they must not perform arithmetic on objects
of this type.
checking on this system, off_t is unsigned long - 2^32-1 bytes, which
would allow for the 14 point board. I'm guessing these functions are
more standardised than fseek64 or similar. <on 64 bit machines none of
this should be an issue, even the traditional fseek/ftell work with
signed longs, but 2^63 -1 will last for at least a little while.
Jim Segrave address@hidden