Re: Cannot compile with _FILE_OFFSET_BITS = 64
- From: richard@xxxxxxxxxxxxxxx (Richard Tobin)
- Date: 31 Dec 2007 12:28:28 GMT
In article <5truv2F1f3un6U1@xxxxxxxxxxxxxxxxx>,
Ulrich Eckhardt <doomster@xxxxxxxx> wrote:
lseek64(fd, 4*1024*1024*1024, SEEK_SET) // integer overflow
Others already explained what is happening, but I'd suggest another approach
that works without C99's long long type simply cast the expression to
off_t, which will automatically be the correct 64 bit type, regardless of
whether you use C89 or C99.
Casting the expression won't help, if it's already overflowed as an
int.
-- Richard
--
:wq
.
- Follow-Ups:
- Re: Cannot compile with _FILE_OFFSET_BITS = 64
- From: Ulrich Eckhardt
- Re: Cannot compile with _FILE_OFFSET_BITS = 64
- References:
- Re: Cannot compile with _FILE_OFFSET_BITS = 64
- From: Ulrich Eckhardt
- Re: Cannot compile with _FILE_OFFSET_BITS = 64
- Prev by Date: Re: Uninitialised fields in structures
- Next by Date: Re: Uninitialised fields in structures
- Previous by thread: Re: Cannot compile with _FILE_OFFSET_BITS = 64
- Next by thread: Re: Cannot compile with _FILE_OFFSET_BITS = 64
- Index(es):
Relevant Pages
|