1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-10 21:50:37 -08:00
emacs/src
Paul Eggert b3e1b38245 Improve integer overflow handling a bit
* src/charset.c (read_hex): Use INT_LEFT_SHIFT_OVERFLOW for clarity.
The machine code is the same on my platform.
* src/doprnt.c (doprnt):
* src/emacs-module.c (module_funcall):
* src/font.c (font_intern_prop):
* src/keyboard.c (Frecursion_depth):
* src/lread.c (read1):
Use WRAPV macros instead of checking overflow by hand.
* src/editfns.c (hi_time, time_arith, decode_time_components):
* src/emacs-module.c (Fmodule_load):
Simplify by using FIXNUM_OVERFLOW_P.
* src/emacs-module.c: Include intprops.h.
* src/xdisp.c (percent99): New function.
(decode_mode_spec): Use it to simplify overflow avoidance and
formatting of %p and %P.
2016-09-24 02:35:29 -07:00
..
bitmaps
.dbxinit
.gdbinit Remove interpreter’s byte stack 2016-08-09 01:31:22 -07:00
alloc.c Use flexmembers on IBM XL C for AIX 2016-09-20 08:32:15 -07:00
atimer.c Fix the MSDOS build 2016-04-30 13:45:33 +03:00
atimer.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
bidi.c Merge from origin/emacs-25 2016-08-05 14:09:09 -07:00
blockinput.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
buffer.c Merge from origin/emacs-25 2016-08-05 14:09:08 -07:00
buffer.h STRING_CHAR does not unify characters; update documentation 2016-09-09 03:07:15 +02:00
bytecode.c Simplify exec_byte_code via moving decls etc. 2016-08-09 01:31:23 -07:00
callint.c Doc fixes for quoting 2016-05-03 08:03:04 -07:00
callproc.c Merge from origin/emacs-25 2016-08-22 14:40:35 -07:00
casefiddle.c * src/casefiddle.c (casify_word): Simplify. 2016-09-12 08:18:56 -07:00
casetab.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
category.c Document CATEGORY arg to modify-category-entry 2016-08-13 22:56:11 -04:00
category.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
ccl.c Merge from origin/emacs-25 2016-03-11 13:33:32 -08:00
ccl.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
ChangeLog.1 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
ChangeLog.2 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
ChangeLog.3 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
ChangeLog.4 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
ChangeLog.5 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
ChangeLog.6 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
ChangeLog.7 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
ChangeLog.8 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
ChangeLog.9 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
ChangeLog.10 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
ChangeLog.11 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
ChangeLog.12 ; ChangeLog spelling fixes 2016-08-21 04:15:44 -07:00
ChangeLog.13 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
character.c Port to ISO/IEC TS 18661-1:2014 2016-09-13 15:31:04 -07:00
character.h Port to ISO/IEC TS 18661-1:2014 2016-09-13 15:31:04 -07:00
charset.c Improve integer overflow handling a bit 2016-09-24 02:35:29 -07:00
charset.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
chartab.c Fix setting a range of char-table slots in a singular case 2016-06-19 18:25:17 +03:00
cm.c Replace IF_LINT by NONVOLATILE and UNINIT 2016-06-08 11:50:42 -07:00
cm.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
cmds.c Adjust match data before calling after-change-funs 2016-07-22 23:55:23 -04:00
coding.c Avoid warnings about undo list while decoding 2016-07-30 11:23:10 +03:00
coding.h emacs_strerror cleanups 2016-06-11 23:49:00 -07:00
commands.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
composite.c Port to ISO/IEC TS 18661-1:2014 2016-09-13 15:31:04 -07:00
composite.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
conf_post.h Use flexmembers on IBM XL C for AIX 2016-09-20 08:32:15 -07:00
COPYING
cygw32.c Avoid compiler warnings 2016-05-28 13:56:54 -04:00
cygw32.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
data.c Prefer now-standard int width macros 2016-09-15 15:55:30 -07:00
dbusbind.c Merge from origin/emacs-25 2016-06-19 00:53:51 +02:00
decompress.c Rename C names to match Lisp symbols better 2016-03-27 15:53:34 -07:00
deps.mk Fix the MSDOS build 2016-04-30 13:45:33 +03:00
dired.c Merge from origin/emacs-25 2016-05-31 08:07:41 -07:00
dispextern.h Port to ISO/IEC TS 18661-1:2014 2016-09-13 15:31:04 -07:00
dispnew.c Fix compiler warnings in the MinGW build 2016-05-21 20:06:33 +03:00
disptab.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
doc.c Minor doc quoting fixes 2016-08-30 19:45:05 -07:00
doprnt.c Improve integer overflow handling a bit 2016-09-24 02:35:29 -07:00
dosfns.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
dosfns.h Fix the MSDOS build 2016-04-30 13:45:33 +03:00
dynlib.c Fix compiler warnings in the MinGW build 2016-05-21 20:06:33 +03:00
dynlib.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
editfns.c Improve integer overflow handling a bit 2016-09-24 02:35:29 -07:00
emacs-icon.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
emacs-module.c Improve integer overflow handling a bit 2016-09-24 02:35:29 -07:00
emacs-module.h Merge from origin/emacs-25 2016-03-11 13:33:32 -08:00
emacs.c Spelling and minor grammar fixes 2016-08-05 13:35:13 -07:00
emacsgtkfixed.c New macro GNUC_PREREQ for GCC version 2016-06-12 10:33:52 -07:00
emacsgtkfixed.h Port to GTK with strict C99 compiler 2016-03-17 23:45:23 -07:00
epaths.in Update copyright year to 2016 2016-01-01 01:34:24 -08:00
eval.c Avoid aborts in GC due to abort_on_gc 2016-09-14 20:41:04 +03:00
fileio.c Avoid compiler warning on MS-Windows due to clone_file 2016-09-14 20:46:59 +03:00
filelock.c Check actual contents before promting about changed file 2016-09-02 11:44:13 -04:00
firstfile.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
floatfns.c Doc fixes for grammar and typos (bug#23746) 2016-06-13 18:08:22 +02:00
fns.c Merge from origin/emacs-25 2016-08-05 14:09:08 -07:00
font.c Improve integer overflow handling a bit 2016-09-24 02:35:29 -07:00
font.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
fontset.c Rename FACE_OPT_FROM_ID to FACE_FROM_ID_OR_NULL 2016-07-02 12:39:47 +03:00
fontset.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
frame.c Fix compiler thinking width and height may be unitialised in frame.c 2016-09-12 21:57:36 +02:00
frame.h Revert "Cleanup tooltips" 2016-07-12 15:27:25 -07:00
fringe.c Rename FACE_OPT_FROM_ID to FACE_FROM_ID_OR_NULL 2016-07-02 12:39:47 +03:00
ftcrfont.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
ftfont.c New C macro AUTO_STRING_WITH_LEN 2016-04-04 10:31:25 -07:00
ftfont.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
ftxfont.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
getpagesize.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
gfilenotify.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
gmalloc.c Prefer now-standard int width macros 2016-09-15 15:55:30 -07:00
gnutls.c Fix GnuTLS includes 2016-08-03 14:21:21 -07:00
gnutls.h Improve --without-x GCC pacification 2016-06-22 03:05:22 +02:00
gtkutil.c Revert "Cleanup tooltips" 2016-07-12 15:27:25 -07:00
gtkutil.h Revert "Cleanup tooltips" 2016-07-12 15:27:25 -07:00
image.c Prefer now-standard int width macros 2016-09-15 15:55:30 -07:00
indent.c Prefer now-standard int width macros 2016-09-15 15:55:30 -07:00
indent.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
inotify.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
insdel.c Merge from origin/emacs-25 2016-08-05 14:10:30 -07:00
intervals.c Avoid assertion violations when using marker positions 2016-09-06 19:46:06 +03:00
intervals.h Yet another fix for copying properties by 'format' 2016-07-08 22:34:34 +03:00
keyboard.c Improve integer overflow handling a bit 2016-09-24 02:35:29 -07:00
keyboard.h Use DEV_TTY more consistently 2016-09-06 17:29:07 -07:00
keymap.c Advertize set-keymap-parent as replacement for copy-keymap 2016-06-15 11:36:51 -04:00
keymap.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
kqueue.c Merge from origin/emacs-25 2016-03-11 13:33:32 -08:00
lastfile.c Merge from origin/emacs-25 2016-03-11 13:33:32 -08:00
lisp.h Prefer now-standard int width macros 2016-09-15 15:55:30 -07:00
lread.c Improve integer overflow handling a bit 2016-09-24 02:35:29 -07:00
macfont.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
macfont.m Fix synthetic bold on macOS retina displays 2016-09-04 23:06:14 +01:00
macros.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
macros.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
macuvs.h Include sources used to create macuvs.h. 2014-05-26 08:48:28 -07:00
Makefile.in Remove unused SHEAP_OBJ 2016-07-14 09:29:38 +02:00
marker.c Avoid assertion violations when using marker positions 2016-09-06 19:46:06 +03:00
menu.c Port to ISO/IEC TS 18661-1:2014 2016-09-13 15:31:04 -07:00
menu.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
minibuf.c Fix test-completion with completion-regexp-list 2016-06-26 21:12:33 -04:00
msdos.c Rename FACE_OPT_FROM_ID to FACE_FROM_ID_OR_NULL 2016-07-02 12:39:47 +03:00
msdos.h Fix the MSDOS build 2016-04-30 13:45:33 +03:00
nsfns.m Fix macOS 12 deprecation notices 2016-08-24 19:21:56 +01:00
nsfont.m Rename FACE_OPT_FROM_ID to FACE_FROM_ID_OR_NULL 2016-07-02 12:39:47 +03:00
nsgui.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
nsimage.m Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
nsmenu.m Fix macOS 12 deprecation notices 2016-08-24 19:21:56 +01:00
nsselect.m Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
nsterm.h Fix macOS 12 deprecation notices 2016-08-24 19:21:56 +01:00
nsterm.m Invert y coord of NS image files (bug#7847) 2016-09-10 23:49:02 +01:00
print.c Avoid aborts in GC due to abort_on_gc 2016-09-14 20:41:04 +03:00
process.c Port flexible array members to GCC + valgrind 2016-09-07 18:10:11 -07:00
process.h Fix process leak with make-network-process 2016-08-11 11:26:34 -07:00
profiler.c Fix compiler warnings in the MinGW build 2016-05-21 20:06:33 +03:00
puresize.h * src/puresize.h (BASE_PURESIZE): Increase it some more. 2016-05-27 18:12:08 -07:00
ralloc.c Port January __morecore changes to AIX 7.1 2016-09-17 15:06:55 -07:00
README Update copyright year to 2016 2016-01-01 01:34:24 -08:00
regex.c Remove dead loop iterations in regex.c 2016-09-09 03:07:15 +02:00
regex.h Hardcode regex syntax to remove dead code handling different syntax 2016-08-02 15:39:10 +02:00
region-cache.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
region-cache.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
scroll.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
search.c Fix debugging of string-match-p errors 2016-08-07 10:24:40 -04:00
sheap.c Merge from origin/emacs-25 2016-03-11 13:33:32 -08:00
sheap.h Double static heap size. 2016-02-01 08:50:10 -08:00
sound.c emacs_strerror cleanups 2016-06-11 23:49:00 -07:00
syntax.c Refactor regex character class parsing in [:name:] 2016-08-02 15:39:10 +02:00
syntax.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
sysdep.c Prefer now-standard int width macros 2016-09-15 15:55:30 -07:00
sysselect.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
syssignal.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
sysstdio.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
systime.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
systty.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
syswait.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
term.c Prefer now-standard int width macros 2016-09-15 15:55:30 -07:00
termcap.c Update copyright year to 2016 2016-01-01 01:34:24 -08:00
termchar.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
termhooks.h Autosave buffers on logout if HAVE_NTGUI 2016-05-12 15:52:26 -04:00
terminal.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
terminfo.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
termopts.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
textprop.c Yet another fix for copying properties by 'format' 2016-07-08 22:34:34 +03:00
tparam.c Update copyright year to 2016 2016-01-01 01:34:24 -08:00
tparam.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
undo.c Fix missing point information in undo 2016-07-05 09:27:59 +01:00
unexaix.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
unexcoff.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
unexcw.c Avoid compiler warnings 2016-05-28 13:56:54 -04:00
unexec.h Make src headers idempotent and standalone 2015-10-16 14:56:11 -07:00
unexelf.c Merge from origin/emacs-25 2016-03-11 13:33:32 -08:00
unexhp9k800.c Consistently use min and max macros from lisp.h. 2014-10-03 08:35:10 +04:00
unexmacosx.c Define _GNU_SOURCE in files delaying config.h 2016-09-17 11:06:05 -07:00
unexsol.c Include-file cleanup for src directory 2015-10-20 18:35:53 -07:00
unexw32.c Fix compiler warnings in the MinGW build 2016-05-21 20:06:33 +03:00
vm-limit.c Port January __morecore changes to AIX 7.1 2016-09-17 15:06:55 -07:00
w16select.c Fix the MSDOS build 2016-04-30 13:45:33 +03:00
w32.c Define _GNU_SOURCE in files delaying config.h 2016-09-17 11:06:05 -07:00
w32.h Fix compiler warnings in the MinGW build 2016-05-21 20:06:33 +03:00
w32common.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
w32console.c Rename FACE_OPT_FROM_ID to FACE_FROM_ID_OR_NULL 2016-07-02 12:39:47 +03:00
w32fns.c Fix calculation of tool bar width reported by `frame-geometry' (Bug#24107) 2016-07-30 14:11:12 +02:00
w32font.c Fix compiler warnings in Cygwin-w32 build 2016-06-20 23:05:12 -04:00
w32font.h Fix compiler warnings in the MinGW build 2016-05-21 20:06:33 +03:00
w32gui.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
w32heap.c Fix compiler warnings in the MinGW build 2016-05-21 20:06:33 +03:00
w32heap.h Fix compiler warnings in the MinGW build 2016-05-21 20:06:33 +03:00
w32inevt.c Improve w32notify notifications 2016-03-19 14:44:53 +02:00
w32inevt.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
w32menu.c ‘signal’ no longer returns 2016-07-25 00:38:34 +02:00
w32notify.c Define _GNU_SOURCE in files delaying config.h 2016-09-17 11:06:05 -07:00
w32proc.c Define _GNU_SOURCE in files delaying config.h 2016-09-17 11:06:05 -07:00
w32reg.c Fix compiler warnings in the MinGW build 2016-05-21 20:06:33 +03:00
w32select.c Fix compiler warnings in the MinGW build 2016-05-21 20:06:33 +03:00
w32select.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
w32term.c Revert "Cleanup tooltips" 2016-07-12 15:27:25 -07:00
w32term.h Revert "Cleanup tooltips" 2016-07-12 15:27:25 -07:00
w32uniscribe.c Fix compiler warnings in the MinGW build 2016-05-21 20:06:33 +03:00
w32xfns.c Fix compilation of Cygwin w32 port 2016-04-02 12:39:44 +03:00
widget.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
widget.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
widgetprv.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
window.c Avoid assertion violations when scrolling narrowed buffer 2016-09-05 19:57:22 +03:00
window.h * src/window.c (sanitize_window_sizes): Remove unused arg `frame' 2016-08-02 22:43:11 -04:00
xdisp.c Improve integer overflow handling a bit 2016-09-24 02:35:29 -07:00
xfaces.c Prefer now-standard int width macros 2016-09-15 15:55:30 -07:00
xfns.c Prefer now-standard int width macros 2016-09-15 15:55:30 -07:00
xfont.c Replace IF_LINT by NONVOLATILE and UNINIT 2016-06-08 11:50:42 -07:00
xftfont.c Provide workaround for xftfont rendering problem 2016-05-22 19:20:28 +03:00
xgselect.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
xgselect.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
xmenu.c ‘signal’ no longer returns 2016-07-25 00:38:34 +02:00
xml.c Rename C names to match Lisp symbols better 2016-03-27 15:53:34 -07:00
xrdb.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
xselect.c Prefer now-standard int width macros 2016-09-15 15:55:30 -07:00
xsettings.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
xsettings.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
xsmfns.c Merge from origin/emacs-25 2016-04-11 09:07:16 -07:00
xterm.c Prefer now-standard int width macros 2016-09-15 15:55:30 -07:00
xterm.h Revert "Cleanup tooltips" 2016-07-12 15:27:25 -07:00
xwidget.c Omit unnecessary #includes from xwidget.c 2016-07-13 10:17:35 +02:00
xwidget.h Rework C source files to avoid ^( 2016-03-10 07:59:19 -08: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-2016 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 is copied elsewhere.

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

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 C source files.  All of this should
work transparently; you should only need to change to the parent
directory, run './configure', and then run '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/>.