Files
emacs/src
Paul Eggert f66c7cf8f7 Variadic C functions now count arguments with ptrdiff_t.
This partly undoes my 2011-03-30 change, which replaced int with size_t.
Back then I didn't know that the Emacs coding style prefers signed int.
Also, in the meantime I found a few more instances where arguments
were being counted with int, which may truncate counts on 64-bit
machines, or EMACS_INT, which may be unnecessarily wide.
* lisp.h (struct Lisp_Subr.function.aMANY)
(DEFUN_ARGS_MANY, internal_condition_case_n, safe_call):
Arg counts are now ptrdiff_t, not size_t.
All variadic functions and their callers changed accordingly.
(struct gcpro.nvars): Now size_t, not size_t.  All uses changed.
* bytecode.c (exec_byte_code): Check maxdepth for overflow,
to avoid potential buffer overrun.  Don't assume arg counts fit in 'int'.
* callint.c (Fcall_interactively): Check arg count for overflow,
to avoid potential buffer overrun.  Use signed char, not 'int',
for 'varies' array, so that we needn't bother to check its size
calculation for overflow.
* editfns.c (Fformat): Use ptrdiff_t, not EMACS_INT, to count args.
* eval.c (apply_lambda):
* fns.c (Fmapconcat): Use XFASTINT, not XINT, to get args length.
(struct textprop_rec.argnum): Now ptrdiff_t, not int.  All uses changed.
(mapconcat): Use ptrdiff_t, not int and EMACS_INT, to count args.
2011-06-14 11:57:19 -07:00
..
2011-06-13 01:00:15 -07:00
2011-06-10 22:46:16 -07:00
2011-04-13 22:04:02 -07:00
2011-02-23 20:56:30 +01:00
2011-04-13 13:58:47 +02:00
2011-03-19 15:46:50 -07:00
2011-04-13 22:04:02 -07:00
2011-04-13 22:04:02 -07:00
2011-05-28 15:39:39 -07:00
2011-05-28 15:39:39 -07:00
2011-04-13 22:04:02 -07:00
2011-05-14 12:06:08 -07:00
2011-02-08 14:42:56 -07:00
2011-04-13 22:04:02 -07:00
2011-05-28 15:39:39 -07:00
2011-05-02 22:47:50 -07:00
2011-04-13 23:26:22 -07:00
2011-05-17 17:39:40 -07:00
2011-05-27 12:17:59 -04:00
2011-05-27 12:17:59 -04:00
2011-05-28 15:39:39 -07:00
2011-03-08 10:26:34 -08:00
2011-03-16 17:03:31 -07:00
2011-05-28 15:39:39 -07:00
2011-06-13 01:00:15 -07:00
2011-06-12 23:53:31 -07:00
2011-04-14 13:16:48 -07:00

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Copyright (C) 2001-2011  Free Software Foundation, Inc.
See the end of the file for license conditions.


This directory contains the source files for the C component of GNU Emacs.
Nothing in this directory is needed for using Emacs once it is built
and installed, if the dumped Emacs (on Unix systems) is copied elsewhere.

See the files ../README and then ../INSTALL for installation instructions.

Under GNU and Unix systems, the file `Makefile.in' is used as a
template by the script `../configure' to produce `Makefile'.  This
is the file which actually controls the compilation of Emacs.
All of this should work transparently to the user; you should only
need to run `../configure', and then type `make'.


This file is part of GNU Emacs.

GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.