Subject: Re: 24.1.50; Maximum buffer size exceeded

From: Paul Eggert <[email-masked]>
Date: Sun, 22 Apr 2012 22:12:36 -0700

> the struct st, which has:
> 
>   ...
>   st_size = 5425793530331136,
>   st_blocks = 10617159159808,
> 
> Ls delivers:
> 
> 	gls -lin lisp/loaddefs.el
> 	43973072 -rw-r--r-- 1 501 80 1263291 16. Apr 10:40 lisp/loaddefs.el

Since 5425793530331136 == 1263291 << 32, this suggests that
there's a mismatch between the ABI that Emacs is assuming
and the ABI that the 'stat' system call is actually using.

Perhaps it's a bug in the way largefile mode is being set up (see
Autoconf's AC_SYS_LARGFILE, which Emacs uses).  Perhaps some code is
compiled in largefile mode, and other code is not -- that's a no-no.
Or, as Andreas Schwab suggests, if you're mixing code that's compiled
by incompatible compilers, that would cause these symptoms.

One other thought: is Emacs invoking 'stat' directly, or indirectly
via the 'stat' defined in lib/stat.c?  If the latter, perhaps there's
something messed up with the indirection.