Update copyright year to 2014 by running admin/update-copyright.
[emacs.git] / src / ChangeLog.1
blobb4ddb0464392d14d189bd7dff4b73454f8ae6af9
1 1986-05-18  Richard M. Stallman  (rms@prep)
3         * alloc.c (malloc_warning_1): Add some advice on
4         the significance of the warning.
6 1986-05-09  Richard M. Stallman  (rms@prep)
8         * sysdep.c (get_screen_size):
9         Reject values of TIOCGSIZE if they are ridiculous.
11 1986-05-05  Richard M. Stallman  (rms@prep)
13         * process.c (send_process_1):
14         If pipe buffer is full, wait a second and try again.
16 1986-05-02  Richard M. Stallman  (rms@prep)
18         * termcap.c (tputs): Round rather than truncating
19         when dividing padcount.
21 1986-04-24  Richard M. Stallman  (rms@prep)
23         * insdel.c (del_range): Args passed to adjust_markers
24         are now properly adjusted for the gap.
26 1986-04-20  Richard M. Stallman  (rms@prep)
28         * alloca.c: Declare xmalloc.
30 1986-04-17  Richard M. Stallman  (rms@prep)
32         * filelock.c (unlock_buffer): New function to unlock
33         a specified buffer.  Use in Fdelete_buffer_internal
34         to avoid lossage if buffer being killed is not current.
36 1986-04-14  Richard M. Stallman  (rms@prep)
38         * alloc.c (malloc_warning, Fgarbage_collect):
39         If malloc_warning is called during GC, just save warning
40         in malloc_warn_string.  Try again to warn when GC ends.
42 1986-04-12  Richard M. Stallman  (rms@prep)
44         * m-celerity.h: Remove spurious effectless #define BSTRINGS.
46 1986-04-10  Richard M. Stallman  (rms@prep)
48         * xfns.c (Fx_get_default):
49         Avoid doing strlen(value) if value is 0.
51 1986-04-08  Richard M. Stallman  (rms@prep)
53         * indent.c (compute_motion):
54         Change unsigned short back to short.  unsigned short is plain
55         wrong and causes infinite loops when horizontal scrolling is used.
56         Introduced macros HPOS and VPOS for extracting components of cpos.
57         Alternate HPOS definition for Celerity since casting to (short)
58         loses there.
60 1986-04-07  Richard M. Stallman  (rms@prep)
62         * dispnew.c (update_screen):
63         Don't zero OPhysScreen and DesiredScreen until after
64         final error check.  Omit the error check unless debug_end_pos.
66 1986-04-06  Richard M. Stallman  (rms@prep)
68         * cm.c (calccost):
69         Was returning garbage if arrived at fail: by goto fail;.
71 1986-03-27  Richard Mlynarik  (mly@prep)
73         * dispnew.c:
74         Typo: `#ifdef defined...' => `#if defined...'
76 1986-03-26  Richard M. Stallman  (rms@prep)
78         * doc.c (FSnarf_documentation):
79         Appending the arg to the file name must be done
80         whether or not CANNOT_DUMP.
82 1986-03-25  Richard M. Stallman  (rms@prep)
84         * fileio.c (Fsubstitute_in_file_name):
85         // at beginning of filename is meaningful on Apollo.
87         * keyboard.c (command_loop_1):
88         If C_ALLOCA, cause it to garbage collect each time around this loop.
90         * crt0.c: If NEED_ERRNO defined, declare errno.
91         * m-7300.h: New file.
93 1986-03-25  Richard Mlynarik  (mly@prep)
95         * alloc.c (Fmake_symbol):
96         CHECK_STRING the argument.
98 1986-03-24  Richard M. Stallman  (rms@prep)
100         * xfns.c (Fx_proc_mouse_event):
101         Use shifts rather than byte addressing to extract from .detail.
103 1986-03-24  Richard Mlynarik  (mly@prep)
105         * minibuf.c (do_completion):
106         Only funcall predicate if it is non-nil
107         Make completion of "nil" in obarrays work.
109 1986-03-21  Richard M. Stallman  (rms@prep)
111         * fileio.c (Fsubstitute_in_file_name):
112         #if 0 last change (LOGNAME); it makes vax running 5.0 crash.
114 1986-03-20  Richard M. Stallman  (rms@prep)
116         * unexec.c (make_hdr): Avoid comparing a_bss field with 0.
117         It is unsigned on some machines.  Save sbrk (0) in tem.
119 1986-03-19  Richard M. Stallman  (rms@prep)
121         * minibuf.c (do_completion):
122         Don't say string is exact match if it fails the predicate.
124         * process.c (create_process):
125         For STRIDE: use FIONBIO to make pipe/pty non-blocking.
126         The fcntl alone failed to do it.
128         * fileio.c (Ffile_directory_p, Ffile_modes):
129         Don't remove trailing slash for stat if path is "/".
131         * process.c (kill_buffer_processes):
132         Pass nil, not 0, to sig_process for current_group arg.
134 1986-03-18  Richard M. Stallman  (rms@prep)
136         * process.c (handle_process_output):
137         Avoid error if process's buffer is dead.
139         * eval.c (un_autoload,do_autoload):
140         The Vautoload_queue mechanism was all broken.
142         * fileio.c (Fsubstitute_in_file_name):
143         On USG, if looking for env var USER and not found, use LOGNAME.
145 1986-03-16  Richard M. Stallman  (rms@prep)
147         * s-usg*.h, s-unipl*.h:
148         Replace default ADDR_CORRECT with a no-op.
149         Default triggers compiler bug on some systems.
150         Remove same thing from m-stride.h since now redundant there.
152         * keyboard.c (init_keyboard, interrupt_signal):
153         For USG, handle SIGQUIT just like SIGINT.
155         * sysdep.c (init_sys_modes):
156         For HPUX, use C-g for the SIGQUIT char as well as the SIGINT char
157         as using CDEL causes Meta-DEL to send a SIGQUIT!
159         * process.c: On Uniplus, time.h is under sys/, as in bsd.
161         * sysdep.c (reset_sys_modes):
162         Don't use FASYNC if it is not defined.
164 1986-03-15  Richard M. Stallman  (rms@prep)
166         * window.c (save_window_restore):
167         Fix logic for handling dead buffers.
168         Don't try to store nil for the mark into the buffer
169         if the buffer is nil.
171         * alloca.s: Put #ifndef HAVE_ALLOCA AFTER including config.
173         * ymakefile: Always assemble alloca.s if C_ALLOCA isn't set.
175 1986-03-14  Richard M. Stallman  (rms@prep)
177         * s-usg5.0.h: Remove LOADER_N_SWITCH.
179 1986-03-14  Richard Mlynarik  (mly@prep)
181         * editfns.c:
182         Improve doc for bolp, bobp, eolp.
184 1986-03-14  Richard M. Stallman  (rms@prep)
186         * cm.c (calccost): Refuse to use incremental cursor motion
187         after wrapping on terminals with MagicWrap (xn flag).
189 1986-03-13  Richard M. Stallman  (rms@prep)
191         * emacs.c (main): For APOLLO: reserve 4meg with set_sbrk_size.
193         * alloc.c (Fpurecopy): Fix typo unsignedint.
195 1986-03-12  Richard M. Stallman  (rms@prep)
197         * dired.c (file_name_completion):
198         Allow exact match against an ignored extension.
199         Can thus delete foo.o even if foo.out exists.
201         * s-hpux.h: Turn off HAVE_PTYS since their csh has "sanity
202         checking" and other programs seem to lose with ptys.
204 1986-03-11  Richard M. Stallman  (rms@prep)
206         * sysdep.c ({un,}request_sigio and callers):
207         Make alternate names init_sigio and reset_sigio;
208         callers in sysdep.c use those names.
209         In 4.1, change {un,}request_sigio to do sighold/sigrelse;
210         don't change init_sigio and reset_sigio.
212         * m-vax.h: If USG5_2, use -lPW and HAVE_ALLOCA.
214         * alloc.c (Fpurecopy, mark_object): In tests for pureness,
215         always use XUINT and unsigned comparison.
216         * lisp.h (CHECK_IMPURE): Likewise.
218         * doc.c (FSnarf_documentation):
219         If CANNOT_DUMP, find DOC in directory PATH_EXEC.
221         * ymakefile (APOLLO only): Set LTERMCAP.
222         * m-apollo.h: Alter VALBITS and GCTYPEBITS.
224         * term.c (delete_chars): Pass num chars to the hook.
225         * term.c (raw_topos), termhooks.h: Add raw_topos_hook.
227         * unexec.c (make_hdr):
228         New compiler switch NO_REMAP means don't change text/data boundary.
230 1986-03-10  Richard M. Stallman  (rms@prep)
232         * indent.c, window.c, xdisp.c:
233         Make compute_motion, vmotion and display_text_line
234         all return a pointer to a global structure, not a struct itself.
235         Add * to all calls.
237         * syntax.c (scan_sexps_forward):
238         Make it return a pointer to a global structure,
239         not a struct itself.  Change caller (Fparse_partial_sexp).
241         * s-usg*.h: #define static as nothing.
242         * m-hp200.h: No longer needs to #define static.
244         * unexec.c (adjust_lnnoptrs):
245         Replace dummy defn with one that does the job.  Also
246         involves including syms.h and making global vars
247         bias and lnnoptr that are set in make_hdr.
249 1986-03-08  Richard M. Stallman  (rms@prep)
251         * editfns.c (init_editfns):
252         Make AMPERSAND_FULL_NAME case start with USER_FULL_NAME.
254         * crt0.c (BOGUS case):
255         Move "start:" from non-tower32 case to unconditional.
257         * unexec.c [COFF]:
258         Put the rounding-to-page-boundaries of section positions
259         within the file into a UMAX conditional.  (See Feb 19).
261 1986-03-06  Richard M. Stallman  (rms@prep)
263         * ymakefile: Add -k100000 switch to ld, for celerity.
265         * eval.c (funcall_lambda):
266         Change a comma-sequence to a compound statement.
268 1986-03-03  Richard M. Stallman  (rms@prep)
270         * xfns.c, xterm.c:
271         Install much-changed versions already tested at Athena.
273         * ymakefile: Replace -lc with $(LIBSTD) and define LIBSTD
274         according to a config macro LIB_STANDARD.
275         m-tower32.h must define LIB_STANDARD.
277         * process.c (read_process_output):
278         New subroutine that does the reading and handling of process output.
279         Do so until none is left.
280         (wait_reading_process_input): Call new subroutine.
281         (sig_process): If we get a pgrp number, make it negative.
282         Always send signal to pggrp; use killpg if BSD, kill otherwise.
283         (child_signal): Don't deactivate dead processes here.
284         (change_msgs): Deactivate them here, when notification is done.
285         But first, call read_process_output to get any output that's left.
287         * keyboard.c (read_avail_input):
288         (for sysV) Use fcntl, not ioctl, to make read not wait.
290         * alloca.s: Put entire file inside #ifndef HAVE_ALLOCA.
292         * sysdep.c (child_setup_tty, init_sys_modes):
293         (for sysV) Set VTIME to zero; with VMIN=1 this means
294         no time limit.
296 1986-03-02  Richard M. Stallman  (rms@prep)
298         * keyboard.c (quit_throw_to_get_char):
299         Before really throwing, clear waiting_for_input
300         so another interrupt won't also try to throw.
301         (get_char): Add error check for getcjmp being zero
302         where it should not be.  Put this under DEBUG switch.
304 1986-03-01  Richard M. Stallman  (rms@prep)
306         * crt0.c: Defining BOGUS forces use of the vax-tahoe-sequent case.
307         Add a small conditional within it for tower32.
308         Don't allow use of the m68000/m68k code if BOGUS is defined.
310         * sysdep.c (init_sys_modes):
311         For sysV: If want flow control, actively set IXON,
312         and also clear IXANY if that is defined.
314         * sysdep.c (rename):
315         It was doing completely wrong things to various files.
317         * tparam.c (tgoto): Move buf outside the function
318         and rename as tgoto_buf.  In case #define static as nothing.
320         * unexec.c (make_hdr):
321         If macro EXEC_MAGIC is defined, let it specify the magic
322         number for the output file.
324         * xdisp.c (message): Change name `buf' to `message_buf'
325         to avoid name clash when #define static as nothing.
327         * ymakefile: Change DOCSTR to DOC.
329 1986-02-28  Richard M. Stallman  (rms@prep)
331         * buffer.c (Fdelete_buffer_internal):
332         Unchain all markers from a buffer being killed.
334 1986-02-27  Richard M. Stallman  (rms@prep)
336         * unexec.c, malloc.c:
337         If NBPG is used for getpagesize, multiply it by CLSIZE
338         and define that as 1 if not otherwise defined.
340 1986-02-26  Richard M. Stallman  (rms@prep)
342         * lread.c (Fload):
343         Detect when fdopen returns 0 given a valid descriptor.
345         * sysdep.c (stuff_char):
346         Declare arg as char, so TIOCSTI does not give wrong address.
348 1986-02-25  Richard M. Stallman  (rms@prep)
350         * dispnew.c (update_screen):
351         * xdisp.c (DoDsp, Fredraw_display):
352         Insert checks to abort if screen_height is zero,
353         to detect the memory clobbering bug.
355         * process.c:
356         For 4.1, include wait.h, not sys/wait.h.
357         Use O_NDELAY only if it is defined.
359         * s-bsd4.1.h:
360         Don't HAVE_TIMEVAL.  Define open as sys_open and lstat as stat.
361         Define the O_ symbols for open args.
362         Turn off CLASH_DETECTION, for now.  Turn off HAVE_TIMEVAL.
364         * sysdep.c (bcopy, bzero, bcmp):
365         Make them really do the work, not try to use memset, memcopy, etc.
367         * sysdep.c (get_system_name):
368         4.1 needs its own definition of this.
370         * sysdep.c (for BSD 4.1):
371         Define sys_open, since 4.1 open takes only two args.
372         Redefine LLITOUT as 0; it loses in 4.1.
373         Define LNOFLSH.  Include wait.h, not sys/wait.h.
375 1986-02-24  Richard M. Stallman  (rms@prep)
377         * malloc.c: Define getpagesize as macro when not avail as syscall.
379 1986-02-23  Richard M. Stallman  (rms@prep)
381         * terminfo.c: Provide a definition of ospeed.
383 1986-02-22  Richard M. Stallman  (rms@prep)
385         * alloca.s (hack_sky):
386         Move label hack3; bug was making some floating ops dump core.
388         * dispnew.c (update_screen):
389         Don't free a line twice if it is in both DesiredScreen
390         and OPhysScreen.  Can happen if line is copied into
391         DesiredScreen by `scrolling', then lost from PhysScreen
392         by the scrolling that is done.
393         Also remove a debugging check that did not go off
394         when this bug hit.
396 1986-02-18  Richard M. Stallman  (rms@prep)
398         * indent.c (compute_motion):
399         Change all short to unsigned short.  Needed for celerity.
401         * keyboard.c (init_keyboard):
402         Initialize kbd_ptr.  Needed for celerity.
404         * unexec.c (make_hdr for celerity):
405         Copy their own header field a_scovfrl from ohdr.
407         * unexec.c [COFF]:
408         Round positions of text and data sections in output file
409         to page boundaries.
411         * crt0.c: Install version for Encore machines.
412         Also for celerity (same as pyramid and orion).
414         * ymakefile:
415         Don't use -X for BSD systems that use COFF.
416         On UMAX, give ld the file align.umax (a new file)
417         via the make-macro ALIGNMENT.
419         * align.umax, s-umax.h:
420         Two new files for Encore computers.
422         * lread.c (Vload_path): Make it not static.
423         In sysV, static vars go in a place in memory below my_edata.
425         * dispnew.c (make_display_lines):
426         Store all the lines in an array for debugging, to help
427         debug the problem where lines get lost.
429 1986-02-14  Richard M. Stallman  (rms@prep)
431         * alloca.s (ns16000):
432         Change non-sequent defn of REGISTER: add a displacement of zero.
434 1986-02-13  Richard M. Stallman  (rms@prep)
436         * alloc.c (purecopy, mark_object), lisp.h:
437         Use XUINT, not XINT, in VIRT_ADDR_VARIES checks for pure object.
439 1986-02-11  Richard M. Stallman  (rms@prep)
441         * fns.c (Fload_average):
442         Don't use struct nlist if no LOAD_AVE_TYPE.
444         * crt0.c: Add missing semicolon in vax/tahoe/sequent code.
446 1986-02-10  Richard M. Stallman  (rms@prep)
448         * crt0.c: Remove duplicate _start for pyramid.
450 1986-02-07  Richard M. Stallman  (rms@prep)
452         * sysdep.c (gettimeofday): Define this only if HAVE_TIMEVAL.
454         * m-vax.h:
455         If USG, don't define LOAD_AVE_... and do define C_ALLOCA.
457         * filelock.c: On USG, include fcntl.h.
458         (lock_file): Declare getpwuid external.
460         * window.c (Fmove_to_window_line):
461         If window start is out of restriction,
462         choose a new start here.
464         * alloca.s:
465         Modify ns16000 assembler syntax for the sequent machine.
467         * crt0.c: Sequent uses same code as vax except start1
468         takes one extra first arg that it ignores.
469         A new macro BOGUS is defined to allow machines to use the
470         same code and control how many args to ignore.
472         * unexec.c: For sequent machine, handle its incompatible
473         meaning of N_TXTOFF, and use N_ADDRADJ where necessary.
475 1986-02-06  Richard M. Stallman  (rms@prep)
477         * sysdep.c (init_sys_modes):
478         Set tty flags ISTRIP, CS8 and PARENB right for Meta key.
480         * ymakefile:
481         Define CPP macro as name of cpp to use.  Use it for alloca.s.
482         Make LOADER_N_SWITCH control solely the -N.
484 1986-02-06  Richard Mlynarik  (mly@prep)
486         * fns.c (Frequire):
487         Fix documentation.
489 1986-02-06  Richard M. Stallman  (rms@prep)
491         * indent.c (compute_motion):
492         For tabs, make sure to take remainder of positive #
493         since % can round upward with negative numbers.
495         * bytecode.c (syms_of_bytecode):
496         Fix typo in symbol name "byte-code".
498         * xdisp.c (try_window_id):
499         Use adjusted hpos of bp in computation of ep.
500         Adjusted hpos can be negative after a continuation.
502         * fileio.c (Finsert_file_contents):
503         Was failing to update n as chars were read.
504         Rearrange order of actions to make it more like InsCStr.
505         Call prepare_to_modify_buffer even if no CLASH_DETECTION.
506         Don't make gap if gap is big enough.
508 1986-02-05  Richard M. Stallman  (rms@prep)
510         * termcap.c (tgetent):
511         Only use TERMCAP var as termcap entry value
512         if it has a name that matches the specified one.
513         New function name_match to match an entry against a name.
514         Do allow matching the first name in an entry.
516         * indent.c (pos_tab_offset):
517         Take remainder by window-width - 1 (# of effective columns)
518         to fix bug where alternating TAB 1 TAB 1... causes a 1
519         to shift sideways in incremental redisplay in DoDsp.
521 1986-02-04  Richard M. Stallman  (rms@prep)
523         * keyboard.c (command_loop_1):
524         Don't do direct output if input is pending.
526         * xterm.h: Find the file Xlib.h in /usr/include/X.
528 1986-02-03  Richard M. Stallman  (rms@prep)
530         * process.c (pty): HPUX has different dir for pty-tty devices.
532         * termcap.c: Don't include types.h or file.h.
534 1986-02-02  Richard M. Stallman  (rms@prep)
536         * print.c (print):
537         Print a marker's corrected position, not its bufpos.
539         * window.c (Fselect_window):
540         If old and new windows show same buffer,
541         make sure new point is inside the clipping region.
543 1986-01-31  Richard M. Stallman  (rms@prep)
545         * fns.c (Fload_average):
546         In NLIST_STRUCT case, set nl[1] to 0, not "".
547         Fix KERNEL_FILE and LDAV_SYMBOL for HPUX.
549 1986-01-30  Richard M. Stallman  (rms@prep)
551         * m-pyramid.h: Turn on NO_UNION_TYPE.
553         * fns.c: For BSD, include sys/param.h.
555 1986-01-29  Richard M. Stallman  (rms@prep)
557         * fns.c (Fload_average):
558         Define a few symbols LDAV_SYMBOL and KERNEL_FILE_NAME
559         and NLIST_STRUCT to use later to simplify the code.
561         * s-usg5.2.h: Turn on `subprocesses'.
563         * sysdep.c:
564         #undef open, read and write at the start.
565         Make sys_read, etc. always available for uses that need
566         a nonaborting read.
567         (select): Several bug fixes for system V.
568         (init_sys_modes, child_setup_tty): Init VTIME to a large #, not 0.
569         Use TCSETA, not TCSETAW (why wait?).
571         * process.c:
572         (wait_reading_process_output): If don't HAVE_TIMEVAL
573         and no timeout desired, use 100000 seconds, which
574         the select emulator recognizes.
575         When reading data, if a char is buffered in proc_buffered_char,
576         put it at the front of the data read.
577         (kill_buffer_process): Ignore processes really already dead.
578         (init_process): Initialize proc_buffered_char to -1 (empty).
580         * keyboard.c (fake_suspend):
581         Don't mess with the SIGCLD handler.
582         Use wait_for_termination to detect subshell termination.
583         (read_avail_input, for USG):
584         Use TCSETA, not TCSETAW; no waiting.
586         * term.c (set_terminal_modes): Don't clear screen here.
587         * xdisp.c (Fredraw_display): Clear screen here instead.
589 1986-01-28  Richard M. Stallman  (rms@prep)
591         * s-hpux.h: Do #undef SIGIO.
593         * callproc.c, data.c, dispnew.c, emacs.c, keyboard.c,
594         * process.c, sysdep.c:
595         Include signal.h before config so can #undef SIGIO in config.
597         * lread.c (read_escape):
598         Make ?\^? produce 0177.
600         * sysdep.c:
601         Define SIGCHLD as SIGCLD only if SIGCHLD not already defined.
602         (select): Don't give select_alarmed an initialization.
604         * unexec.c:
605         For HPUX, copy the peculiar header fields for debugger info.
607         * keyboard.c (kbd_buffer_get_char): Don't call read_avail_input
608         if kbd_count is nonzero.  (Don't know how it can be, but
609         it is observed to happen.)
611         * process.c:
612         Define SIGCHLD as SIGCLD only if SIGCHLD not already defined.
613         (wait_handling_process_output): Fill in one non-HAVE_TIMEVAL case.
615 1986-01-27  Richard M. Stallman  (rms@prep)
617         * sysdep.c (reset_sys_modes):
618         Call unrequest_sigio twice.
619         Make sure FASYNC is clear in old_fcntl_flags.
621 1986-01-26  Richard M. Stallman  (rms@prep)
623         * fns.c (Frandom):
624         Removed case for number as arg, since it has problems
625         in union-type case and it is not documented or used.
627         * lisp.h (XSET):
628         Fix bugs in the union-type definition.
630 1986-01-24  Richard M. Stallman  (rms@prep)
632         * process.c:
633         Define macros for accessing the `union wait' structure.
635         * keyboard.c (fake_suspend):
636         Set subshell current dir to current buffer's default dir.
638 1986-01-23  Richard M. Stallman  (rms@prep)
640         * dispnew.c (Fsit_for):
641         Call gobble_input only if SIGIO exists.
643         * keyboard.c (fake_suspend):
644         Save and restore the SIGCLD handler, if that exists.
646         * process.c (create_process):
647         SKTPAIR-or-not now controls only what to do if cannot use a pty.
648         For USG other than UNIPLUS, instead of sigsetmask (nonexistent),
649         save away and temporarily turn off the SIGCHLD handler.
650         (child_sig): Various USG changes.
652         * sysdep.c (wait_for_termination):
653         Provide case for sysV not UNIPLUS (right for STRIDE at least).
654         * sysdep.c (child_setup_tty):
655         Set the VMIN and VTIME fields.
657         * callint.c (Fcall_interactively):
658         Globalize the variable argfuns, for HPUX's sake.
660         * keyboard.c (fake_suspend):
661         Use execlp, not execl.
663         * sysdep.c (random, srandom):
664         Add dummy for srandom => srand.  Enable both for 4.1 and USG.
665         * fns.c (Frandom):
666         Remove conditional; let those dummies serve.
668         * Makefile:
669         Use sed to remove blank lines and from xmakefile.
671         * ymakefile:
672         Pass alloca.s thru more seds to remove #... lines, etc.
673         Move tparam.o into otherobjs; for HPUX, use terminfo.o instead.
674         No need to conditionalize recipes for xfns.o and xterm.o.
675         No longer need to duplicate the xemacs: line.
676         For HPUX, define LIBBSD.  Use that in LIBES.
678         * editfns.c (init_editfns):
679         Handle case of pw == 0 (USER is not a known user).
681         * cm.c:
682         Include config.  Make cost and evalcost global.
683         (cmcostinit): Don't pass 0 as string to tgoto (new macro CMCOST).
685         * terminfo.c (new file):
686         Defines a version of tparam for use with terminfo.
688 1986-01-22  Richard M. Stallman  (rms@prep)
690         * dispnew.c:
691         If HPUX, insert time.h instead of sys/time.h.
693         * sysdep.c:
694         If HPUX, insert time.h instead of sys/time.h.
695         In get_system_name, globalize a static variable `name'.
696         In readdir, globalize `dir' as `dir_static'.
697         Make some system-call imitations "not HPUX".
699         * process.c:
700         If HPUX, insert time.h instead of sys/time.h.
701         Do them only if HAVE_TIMEVAL.
702         If HAVE_PTYS and HPUX, insert sys/ptyio.h.
703         In function `pty', globalize static var `name' as `ptyname'.
705         * term.c:
706         (term_init): If TERMINFO, where tbuf is not used,
707         allocate combuf with size 2044.
708         (evalcost): Flush it.  Make it extern and use the one in cm.c.
710         * dired.c:
711         Include stat.h before config.h so config can override S_IFLNK on
712         HPUX (where that symbol exists but there are no symbolic links).
713         Do not include time.h; not needed.
715         * xdisp.c (fmodetrunc, decode_mode_spec):
716         Rename local static buffers buf, tbuf and make them global.
717         Static variables go into initialized data space in HPUX.
718         * fns.c (Fload_average):
719         Similar hack for internal static vars initialized, channel, nl.
721         * lread.c:
722         Change condition for defining X_OK to be that X_OK is not defined.
724         * alloc.c (init_alloc_once):
725         Fix erroneous names data_bytes_{un,}used
726         inside the VIRT_ADDR_VARIES conditions.
728         * emacs.c:
729         Don't include time.h or resource.h; just #define PRIO_PROCESS.
731         * xdisp.c (redisplay_window):
732         Don't shift window-start to avoid end of buffer
733         unless window contents have changed too.
735         * xdisp.c (DoDsp):
736         If nothing has changed except minibuffer message,
737         no need to call redisplay_window.
739         Problem: standard sysV has no file ioctl.h.
741         * process.c, keyboard.c, dispnew.c, sysdep.c:
742         Include ioctl.h in BSD, termio.h and/or fcntl.h in sysV.
744         * callproc.c: No longer needs ioctl.h; don't include.
745         * xdisp.c: No longer needs ioctl.h or signal.h; don't include.
747         * emacs.c:
748         Include sys/ioctl.h only for BSD.  ioctl used only in BSD.
750 1986-01-21  Richard Mlynarik  (mly@prep)
752         * keyboard.c (EchoThem):
753         Always display an explicit prompt, even if echo_keystrokes == 0.
755 1986-01-21  Richard M. Stallman  (rms@prep)
757         * keyboard.c (kbd_buffer_store_char, fake_suspend):
758         Take the STRIDE code for subshell out of kbd_buffer_store_char
759         and call it fake_suspend.  Call it from previous place and
760         also from Fsuspend_buffer, on all systems that lack SIGTSTP.
761         Clean the code up a little bit.
763         * process.c:
764         Don't include sgtty.h; no longer needed.
765         Make use of wait3 depend on existence of WNOHANG.
767         * unexec.c:
768         Allow the m- file to override defn of ADDR_CORRECT (m-stride.h does).
769         Have and use pagemask to round data_start in COFF case too.
770         Always define getpagesize as macro, for 4.1 and USG where
771         it is not provided as a system call.
772         This takes care of the STRIDE changes for unexec.
774         * ymakefile:
775         Give ld the arg $(STARTFLAGS), and define that based on cpp macro
776         TEXT_START_ADDR when that is defined.  This is for systems where
777         the -T switch is necessary.
779         * unexec.c (make_hdr):
780         Make one sun3 fix machine-independent.
781         (Prevent a_bss from being negative).
783         * casefiddle.c (casify_region):
784         New flag value CAPITALIZE_UP which is like CAPITALIZE
785         but changes only the initials.  Function upcase_initials_region
786         is an interface to this mode.
788         * abbrev.c (Fexpand_abbrev): Use upcase_initials_region.
790         * process.c (create_process):
791         Install Fish's other new UNIPLUS conditionalization
792         on the hackery for xforkin, etc.
794 1986-01-20  Richard M. Stallman  (rms@prep)
796         * fns.c (Frandom):
797         Optional arg of t means randomize the seed.
798         This change was really made at some previously time;
799         just changed the doc string now.
801         * eval.c (do_autoload):
802         Bind autoload-queue to avoid loss on recursive autoloads.
804         * xdisp.c (try_window_id):
805         If everything on screen below change is whitespace,
806         don't scroll, and return -2.
808         * dispnew.c (update_screen):
809         Rewrite to avoid dependence on distance between
810         the two arrays PhysScreen and DesiredScreen.
812 1986-01-19  Richard M. Stallman  (rms@prep)
814         * fns.c (mapcar1):
815         Preinitialize contents of vals, so it won't contain junk
816         to be seen by a GC inside this function.
818         * eval.c (various):
819         Use error, not Fsignal, to report eval-depth-overflow.
820         Previous calls to Fsignal were buggy.
822 1986-01-17  Richard Mlynarik  (mly@prep)
824         * lread.c (init_obarray):
825         Kludge around losing pyramid compiler.
827 1986-01-14  Richard Mlynarik  (mly@prep)
829         * window.c (Fdelete_window):
830         When deleting a dummy parent window, don't try to GC buffer stuff.
832         * process.c (list_processes_1):
833         Don't blow out if buffer associated with process is,
834         through some bug I don't understand, killed.
836         * keymap.c (get_keyelt), keyboard.c (Fcommand_execute):
837         Allow (lambda ...) to appear as a key's definition.
839         * m-sun3.h, unexec.c:
840         Sun3 changes from Barry Shein.
842 1986-01-10  Richard Mlynarik  (mly@prep)
844         * m-stride.h, s-stride.h, crt0.c, fns.c, keyboard.c, process.c,
845           sysdep.c.
846         Changes for STRIDE micro
847         Changes still pending for etc/loadst.c.
849         Fsuspend_emacs in keyboard.c is defined to run a subshell under
850         emacs -- perhaps this is a reasonable thing in all wimpy unix
851         versions.
853 1986-01-10  Richard M. Stallman  (rms@prep)
855         * dispnew.c (update_line):
856         Don't consider spaces at beginning as special if line is
857         highlighted.
858         Avoids losing the inverse-video on leading spaces in mode lines
859         on terminals where erasing does not turn on highlighting (vt100?).
861         * process.c (pty):
862         On UNIPLUS, don't try opening other side.
864         * filelock.c (lock_file_1):
865         If lock file is invalid, delete it and continue.
866         If delete fails, ignore the lock.
868 1986-01-09  Richard Mlynarik  (mly@prep)
870         * syntax.c:
871         New function check_syntax_table.
873         Make Fmodify_syntax_entry take third arg SYNTAX-TABLE,
874         which defaults to current buffer's syntax table.
875         -- doc change in auxdoc.c.
877         Rename Fmake_syntax_table FCopy_syntax_table
878         after making it take an arg (default Vstandard_syntax_table)
879         -- retain alias in subr.el.
881 1986-01-08  Richard M. Stallman  (rms@prep)
883         * sysdep.c, term.c (get_screen_size):
884         New function to get screen size from kernel when possible.
885         In sysdep; called from term_init in term.c.
886         Must test this on Sun and on 4.3.
888         * dispnew.c (Fding):
889         Make doc say it terminates kbd macros.
891 1986-01-07  Richard Mlynarik  (mly@prep)
893         * doc.c (Fsubstitute_command_keys):
894         Insert an explanatory message for "\\{unbound-variable}".
896 1986-01-06  Richard Mlynarik  (mly@prep)
898         * termcap.c (tputs):
899         Punt if passed (char) 0.
901 1985-12-31  Richard M. Stallman  (rms@prep)
903         * dispnew.c (Ding):
904         Expand error message for keyboard macro case.
906         * dired.c (Ffile_attributes):
907         Fix documentation error about meaning of ctime.
909 1985-12-28  Richard M. Stallman  (rms@prep)
911         * callproc.c (Fcall_process):
912         Fix typo in name synch_process_pid.
914 1985-12-27  Richard M. Stallman  (rms@prep)
916         * s-unipl5.2.h:
917         Define HAVE_SELECT.
919         * ymakefile (xemacs):
920         If the commands are conditional, the target/dependencies line must
921         be conditional also.
923 1985-12-20  Richard M. Stallman  (rms@prep)
925         * print.c (printchar, strout):
926         If output stream is Qt and noninteractive,
927         don't do the usual interactive output stuff.
928         In strout, avoid changing i so do not truncate the output.
930 1985-12-19  Richard M. Stallman  (rms@prep)
932         * fns.c (merge):
933         Don't assume args are consecutive; GCPRO each one separately.
935         * insdel.c (make_gap):
936         Was adding k bytes of gap; k is supposed to be
937         new desired amount of gap.  Wasted a lot of memory!
939         * alloc.c (malloc_warning):
940         Passing Fprinc to internal_with_output_to_temp_buffer
941         loses since Fprinc needs 2 args.  Use intermediate
942         function malloc_warning_1.
944 1985-12-18  Richard M. Stallman  (rms@prep)
946         * filelock.c (lock_if_free):
947         Kill failing means lock is free only if errno is ESRCH.
949         * fns.c (Fy_or_n_p, Fyes_or_no_p):
950         Call Fdiscard_input if user gives invalid answer.
952 1985-12-17  Richard M. Stallman  (rms@prep)
954         * eval.c (apply_lambda):
955         Do debug-on-exit here, because if we return to Feval
956         the stack vector of evaluated args will be deallocated by then.
958         * sysdep.c (wait_for_termination):
959         Add new variable wait_debugging.  Set it nonzero to make
960         this function work in a way that works under dbx.
962         * process.c (send_process_1):
963         If not all the data is written, try again to write the rest.
964         Eliminate the alarm stuff, including send_process_alarm.
965         Call report_file_error if write returns negative.
967 1985-12-15  Richard M. Stallman  (rms@prep)
969         * alloc.c (init_alloc_once):
970         Stop looping if shift produces 1, as well as if produces 0.
972 1985-12-14  Richard M. Stallman  (rms@prep)
974         * editfns.c (Fregion_{beginning,end}):
975         New Lisp primitives, needed for the things that
976         are put on the command history for "r" arguments.
978         * callint.c (Fcall_interactively):
979         If an argument was point or mark, represent it with
980         a suitable expression (point) or (mark) in the
981         command history element.  Also adjust for changed
982         calling conventions of quotify_args.
984         * callint.c (quotify_arg):
985         Take one arg; return it if constant, else return
986         a quote-expression for it.
988         * callint.c (quotify_args):
989         Don't exempt the first arg.  Use quotify_arg to do the work.
991 1985-12-13  Richard M. Stallman  (rms@prep)
993         * fileio.c (Fdo_auto_save):
994         Use message1 to output "Auto-saving..."
995         so do not clobber the old message to be restored at end.
997 1985-12-12  Richard M. Stallman  (rms@prep)
999         * syntax.c:
1000         After turning on immediate_quit, must do QUIT.
1002         * callproc.c (Fcall_process):
1003         Quitting out of running subproc did not happen immediately.
1004         Added QUIT;s after setting immediate_quit on,
1005         removed those after turning it off (not needed there).
1007         * lread.c (init_read):
1008         Don't put ../lisp on Vload_path if CANNOT_DUMP.
1010         * emacs.c (main):
1011         If CANNOT_DUMP, load "loadup.el" as soon as enter editor loop
1012         unless -nl switch is given.
1014         * lread.c (read_list):
1015         Don't use Fsetcdr, since might be changing a cell
1016         in pure space during initial loadup.
1017         Do explicit assign instead.
1019         * lisp.h:
1020         Define CHECK_IMPURE, to get error if object is pure.
1022         * data.c (Fsetcar, Fsetcdr, Faset):
1023         Use CHECK_IMPURE instead of old error checking code.
1025         * data.c (pure_write_error):
1026         New subroutine, called by CHECK_IMPURE.
1028         * m-apollo.h:
1029         Define VIRT_ADDR_VARIES.
1031         * alloc.c:
1032         We now load things into pure space even if cannot dump,
1033         to speed garbage collection.
1034         Turn on Vpurify_flag unconditionally.
1035         Give pure its full size unconditionally.
1036         Change remaining CANNOT_DUMP and APOLLO conditionals
1037         into VIRT_ADDR_VARIES conditionals.
1039 1985-12-10  Richard M. Stallman  (rms@prep)
1041         * fns.c:
1042         Don't include files for load-average if load-average not supported.
1044         * alloc.c:
1045         If CANNOT_DUMP, allocate `pure' very small.
1046         [This has been undone.]
1048         * buffer.c (list_buffers_1):
1049         Use 2 spaces minimum only after buffer name;
1050         go back to 1 space minimum after size and major mode.
1052         * termcap.c:
1053         Avoid use of O_RDONLY and index, so no need for explicit
1054         dependence on system type.
1056         * sysdep.c:
1057         Delete definition of `index'.  Now it's a macro when nec.
1059         * s-usg5.2.h, s-unipl5.2.h:
1060         Define index and rindex as macros.
1062         * dispnew.c (Fsit_for):
1063         Assume select is always available for use.
1065         * buffer.c (Fpop_to_buffer):
1066         Take second arg and pass as second arg to Fdisplay_buffer.
1068         * insdel.c (GapTo):
1069         Dump core if bf_p1, bf_p2 don't differ by gap size.
1071         * keyboard.c (Fsuspend_emacs):
1072         * emacs.c (Fkill_emacs):
1073         Both call new subroutine stuff_buffered_input (in keyboard.c)
1074         which stuffs a string's contents plus any unused input Emacs has
1075         already read.
1077 1985-12-09  Richard M. Stallman  (rms@prep)
1079         * fileio.c (Fdo_auto_save):
1080         Don't auto save a buffer that is not modified
1081         since last real save.
1083         * minibuf.c (minibuffer_completion_help_1):
1084         Use make_number for args to Findent_to.
1085         Omitting make_number always loses on Pyramid, it seems.
1087 1985-12-08  Richard M. Stallman  (rms@prep)
1089         * minibuf.c (Fminibuffer_complete_word):
1090         If next char not unique, try adding an actual space.
1091         If do achieve some completion, replace old buffer text
1092         with the completion (in case of different case).
1093         Also a little cleanup.
1095         * minibuf.c (Ftry_completion):
1096         Fix lossage when second completion found is an initial segment of
1097         the first one.
1099 1985-12-07  Richard M. Stallman  (rms@prep)
1101         * xdisp.c (redisplay_window):
1102         Don't use the clause for only-point-has-changed
1103         for the minibuffer; loses when redisplaying to bring
1104         back minibuffer after an echo area message.
1106         * crt0.c:
1107         Vax code is now used for tahoe machine also.
1109         * alloc.c (init_alloc_once):
1110         For APOLLO, set data_bytes_{free,used} to plausible constant
1111         values.
1113         * eval.c (unautoload):
1114         Declare return type Lisp_Object.
1116         * filelock.c (lock_file):
1117         Check attack with !NULL, not ==.
1119         * keymap.c (describe_command):
1120         Don't apply NULL directly to result of Fkeymapp.
1122         * lisp.h (XSET):
1123         Fix type field assignment in union-type case.
1125         * process.c (Faccept_process_output):
1126         Use XFASTINT around infd field of process.
1128         * search.c (signal_failure):
1129         Returns type Lisp_Object.
1131         * dired.c (Ffile_name_completion):
1132         If arg is null string, return null string immediately.
1133         Idea is don't want to complete "/foo/" into "/foo/bar"
1134         if "bar" is the only file in "/foo/".
1136         * minibuf.c (Ftry_completion):
1137         Handle correctly scmp returning -1.
1139         * alloc.c:
1140         Make malloc_sbrk_used and malloc_sbrk_unused
1141         not be external if APOLLO.
1143 1985-12-06  Richard M. Stallman  (rms@prep)
1145         * emacs.c, keyboard.c, sysdep.c:
1146         Rename InitDsp -> init_sys_modes and RstDsp -> reset_sys_modes.
1148         * emacs.c (main):
1149         Call init_keyboard before init_sys_modes
1150         so correct value of interrupt_input is set up.
1151         Fixes the mysterious first C-z bug.
1153         * minibuf.c:
1154         New Lisp variable completion-ignore-case.
1155         Affects Ftry_completion and Fall_completions.
1157         * emacs.c (main):
1158         Don't change C variable `noninteractive' if user
1159         sets the Lisp variable `noninteractive'.
1161 1985-12-05  Richard M. Stallman  (rms@prep)
1163         * callproc.c (Fcall_process):
1164         Close filefd if about to get error.
1166         * fileio.c (Finsert_file_contents, Fwrite_region):
1167         Set up unwind protect to close file if error happens.
1169         * fileio.c (Fcopy_file):
1170         Close input file if fail to open output file.
1172         * dispnew.c (change_screen_size):
1173         Change name from ChangeScreenSize.
1174         Do set_terminal_window (0); after changing height.
1176         * indent.c (vmotion & callers):
1177         Take window as fifth arg.  All callers pass window
1178         being displayed or selected window.
1179         If window is minibuffer, knows that first line starts at
1180         hps = minibuf_prompt_width.
1182         * minibuf.c (read_minibuf{,_string_unwind}):
1183         Save and restore minibuf_prompt_width.
1185         * xdisp.c:
1186         (display_text_line): Set minibuf_prompt_width if display the
1187         prompt.
1188         (various): Pass window being displayed as arg to vmotion.
1189         (various): Compute starting-hpos arg to compute_motion
1190         using minibuf_prompt_width if in minibuf starting at top.
1192         * window.c (Fdisplay_buffer & callers):
1193         Take second arg, non-nil means do not use selected window
1194         even if that already contains specified buffer.
1196         * buffer.c (Fpop_to_buffer):
1197         Pass t as second arg to Fdisplay_buffer.
1199         * buffer.c (list_buffers_1):
1200         Make at least two spaces between all fields on a line.
1202 1985-12-04  Richard M. Stallman  (rms@prep)
1204         * xfns.c:
1205         Define Fx_pop_up_window.
1206         Use make_string, not Fmake_string, in x-get-cut-buffer.
1207         Mysterious change from Martillo in Fx_change_display.
1208         Rename variable mouse-pos to x-mouse-pos.
1210         * xterm.c:
1211         Changes from Martillo.
1212         Change mouse command to C-c C-m.
1214         * term.c (calculate_costs):
1215         Return immediately if dont_calculate_costs is set.
1217         * lread.c (Fintern, Fintern_soft):
1218         Don't allow a symbol as argument to intern or intern-soft.
1220 1985-12-04  Richard Mlynarik  (mly@prep)
1222         * editfns.c (Fsubst_char_in_region):
1223         Typo.
1225 1985-12-03  Richard M. Stallman  (rms@prep)
1227         * fileio.c (Fdo_auto_save):
1228         Always restore old minibuf message if any.
1230         * alloc.c (Fgarbage_collect):
1231         Always restore old minibuf message if any.
1232         Truncate command-history to 30 elements.
1233         Add some register decls.
1235 1985-12-03  Richard Mlynarik  (mly@prep)
1237         * lread.c (Fload):
1238         Suppress "Loading %s... done" if noninteractive.
1240         * alloc.c (Fgarbage_collect):
1241         Suppress "garbage collecting..." message if noninteractive.
1243         * regex.c (re_compile_pattern):
1244         Fix error message (double "\"'s for c compiler).
1246 1985-12-03  Richard M. Stallman  (rms@prep)
1248         * editfns.c (Fsubst_char_in_region):
1249         If 5th arg is non-nil, don't record for undo.
1251 1985-12-02  Richard M. Stallman  (rms@prep)
1253         * unexec.c (copy_sym, make_hdr):
1254         Pass file names to these functions.
1255         Use PERROR properly, with filename as arg.
1257         * window.c (Fdelete_window):
1258         Don't let stretching the siblings delete them.
1260         * window.c (set_window_{height,width}):
1261         Make `nodelete' apply to children as well.
1263 1985-11-28  Richard M. Stallman  (rms@prep)
1265         * indent.c (compute_motion):
1266         Omit one register decl if TAHOE_REGISTER_BUG.
1268         * m-tahoe.h:
1269         New file.
1271 1985-11-27  Richard M. Stallman  (rms@prep)
1273         * sysdep.c (RstDsp):
1274         Do TIOCSETC before doing fcntl F_SETOWN.
1276         Note: bizarre bug exists: Fsuspend_emacs
1277         in impure temacs under vax 4.2 gets stopped
1278         in that TIOCSETC; but in dumped Emacs, that
1279         does not happen.  No idea why.  This change
1280         did not fix it.
1282         * keymap.c (describe_buffer_bindings):
1283         Avoid passing a null pointer to InsStr.
1285         * xterm.c:
1286         Many random bug fixes from Martillo.
1288         * xfns.c:
1289         Bug fixes in Fx_change_display.
1290         New function Fx_set_icon.
1291         Fx_set_bell must take 1 arg, not 0.
1292         Fx_set_window_edges: don't set window size if new size same as old.
1294         * term.c, termchar.h:
1295         Define variable `dont_calculate_cost's:
1296         If set nonzero, `calculate_costs' is not called.
1298 1985-11-25  Richard M. Stallman  (rms@prep)
1300         * sysdep.c, keyboard.c:
1301         Clean up USG simulation of FIONREAD.
1302         In keyboard.c, new function read_avail_input reads all
1303         input now in system buffer into kbd_buffer.
1304         get_pending_input is moved to keyboard.c, and works
1305         using read_avail_input when FIONREAD is not defined.
1306         select emulator in sysdep also uses read_avail_input.
1308         * unexec.c:
1309         Make PERROR do a return, in non-emacs version.
1310         Remove explicit returns following PERRORs.
1311         Replace ERROR with ERROR0, ERROR1 and ERROR2
1312         which pass along message and args to report_error_1.
1313         Make those macros do a return, in non-emacs version.
1315         * process.c (wait_reading_process_output):
1316         If read_kbd is 10 + I, don't read kbd, but don't
1317         return until input has arrived from channel I.
1319         * process.c (Faccept_process_input):
1320         New Lisp function.
1322 1985-11-24  Richard M. Stallman  (rms@prep)
1324         * unexec.c:
1325         Close output descriptor if get an error.
1327 1985-11-23  Richard M. Stallman  (rms@prep)
1329         * termcap.c (tgetstr):
1330         Supply second arg in call to tgetstr1.
1332 1985-11-22  Richard M. Stallman  (rms@prep)
1334         * s-bsd4.3.h:
1335         Undefine INTERUPT_INPUT.  Noninterrupt input should work
1336         properly given LPASS8 and LNOFLUSH.
1338         * dispnew.c, keyboard.c (Fset_input_mode):
1339         Move it from dispnew.c to keyboard.c.
1341         * sysdep.c (InitDsp):
1342         Use LNOFLUSH in BSD.
1344         * term.c (topos):
1345         Call hook before checking curY and curX.
1347 1985-11-22  Richard Mlynarik  (mly@prep)
1349         * fileio.c (Frename_file):
1350         Supply third arg to Fcopy_file.
1352 1985-11-22  Richard M. Stallman  (rms@prep)
1354         * keymap.c (push_text_char_description):
1355         Represent ESC by ^[, not $.
1357 1985-11-20  Richard M. Stallman  (rms@prep)
1359         * minibuf.c (read_minibuf):
1360         Make Vminibuffer_help_form do its intended job.
1361         Use alloca to get the space for the prompt.
1363 1985-11-20  Richard Mlynarik  (mly@prep)
1365         * callproc.c (Fcall_process_region):
1366         Documentation fix (why isn't this function written in lisp?).
1368         * minibuf.c (read_minibuf)
1369         Use MScreenWidth.
1371 1985-11-20  Richard M. Stallman  (rms@prep)
1373         * tparam.c (tparam):
1374         Don't pass `left' or `up' to strcat if it is null.
1376         * cmds.c (SelfInsert):
1377         Split register arg c into arg c1 and register local c.
1378         Using & on a register argument happens to work on vax.
1380 1985-11-19  Richard M. Stallman  (rms@prep)
1382         * xdisp.c (try_window_id):
1383         If change is on top line and display is not starting
1384         at a real line-beginning, give up so real scrolling is done.
1385         Return -1, which now tells redisplay_window not to try
1386         slow redisplay with the same window start.
1388 1985-11-18  Richard M. Stallman  (rms@prep)
1390         * m-apollo.h:
1391         New file.  Use with s-bsd4.2.h?
1393         * data.c (Fsetcar, Fsetcdr, Faset):
1394         Conditionalize checks for existing objects being pure
1395         on CANNOT_DUMP.
1397         * alloc.c (mark_object, Fpurecopy):
1398         Conditionalize checks for existing objects being pure
1399         on not CANNOT_DUMP.  Don't turn on Vpurify_flag if CANNOT_DUMP.
1401         * emacs.c (Fdump_emacs):
1402         Conditionalize existence of function on not CANNOT_DUMP.
1404         * lread.c (read_list, intern):
1405         Avoid using a conditional expression to compute function to call.
1406         Conditionalize the entire call (pure_cons vs Fcons or
1407         make_pure_string vs make_string).
1409         * syntax.c (scan_sexps_forward (case Sopen)):
1410         Changed around curlevel++->last since Apollo C compiler loses.
1412         * lisp.h:
1413         Define VALBITS and GCTYPEBITS inside #ifndefs
1414         so config.h can override them.
1416         * fileio.c (Fexpand_file_name, Fsubstitute_in_file_name):
1417         APOLLO conditionals to consider // at start of file name
1418         legitimate.
1420         * ymakefile:
1421         Make mention of alloca.o be conditional on not APOLLO.
1422         Make -lg conditional likewise.
1424 1985-11-15  Richard M. Stallman  (rms@prep)
1426         * ymakefile, read.c:
1427         Rename read.* to lread.* to avoid trouble with
1428         #define read sys_read.
1430 1985-11-14  Richard M. Stallman  (rms@prep)
1432         * New files xfns.c, xterm.c for X window system.
1433         xfns contains Lisp subrs for interacting with X.
1434         TrmTERM.c is eliminated.
1436         * ymakefile:
1437         Make compilation and loading of xterm.o and xfns.o
1438         conditional on HAVE_X_WINDOWS.
1440         * term.c, termhooks.h:
1441         Define fix_screen_hook.
1443         * process.c (wait_handing_process_output):
1444         Call the terminal's fix_screen_hook, if one is set up.
1446         * keymap.c:
1447         Define and initialize MouseMap, a keymap for mouse commands.
1449         * emacs.c (main):
1450         Call syms_of_xfns.
1452         * dispnew.c (init_display):
1453         For X window system terminals, call x_term_init.
1455         * buffer.c:
1456         Flush Lisp variable buffer-number.
1458 1985-11-13  Richard M. Stallman  (rms@prep)
1460         * term.c (term_init):
1461         For c100, do not set TS_set_window if termcap entry gives one
1462         or if the :ti string fails to fix the screen at the top
1463         of the display memory.
1465         * nearly every file changed.
1467         * New macro XSET to set both fields of a Lisp_Object.
1468         Most places where XSETTYPE was used, followed by setting
1469         the pointer field, now use XSET.
1471         * Many uses of wrong_type_argument replaced with use
1472         of CHECK_*, including new CHECK_MARKER.
1474         * Other uses of wrong_type_argument fixed so value
1475         returned gets used in place of the invalid object.
1476         Also, the third argument was deleted.
1478         * New functions xmalloc and xrealloc signal an error
1479         if memory is not available.  Many calls to malloc and
1480         realloc are replaced with them.
1482         * Some unused variables' declarations have been flushed.
1483         * Some register declarations have been added.
1485         * alloc.c:
1486         New functions xmalloc and xrealloc.
1488         * process.c:
1489         (pty): Flush unused variable.  Return 0 at end.
1490         (list_processes): New buffer tembuf for sprintf to use.
1491         (send_process_trap): Flush unused arg.
1492         (sig_process): Rename arg `signal' to `signo'.
1494         * read.c:
1495         Avoid `file' as variable name for lint's sake.
1497         * sysdep.c:
1498         Compile stuff_char only if SIGTSTP exists.
1499         Changed conditionals within stuff_char.
1500         Compile wait_without_blocking only if no subprocesses.
1501         Pass one arg (zero) to `wait'.
1502         Include old_fcntl_flags in #ifdef FASYNC condition.
1503         Put old_fcntl_owner inside #ifdef F_SETOWN condition.
1504         Don't compile end_of_text and end_of_data.
1505         Delete definitions of readlink and symlink;
1506         their callers should not exist when system doesn't have symlinks.
1508         * term.c:
1509         Don't give the impression that hooks' values are supposed
1510         to be returned.
1512         * userid.c:
1513         Entire file commented out; supposedly not used.
1515         * dispnew.c:
1516         Comment out preserve_my_columns, not used.
1517         Clean up conditionals in Fsleep_for and Fsit_for.
1519         * doc.c:
1520         Fix incorrect args to describe_map_tree.
1522         * eval.c:
1523         Flush Ffunction_type.
1524         Make Fautoload override an existing autoload definition.
1525         wrong_type_argument: check the user's new value
1526         and get error again unless it fits the predicate.
1528         * minibuf.c:
1529         Comment out Fread_function, not used.
1531 1985-11-12  Richard M. Stallman  (rms@prep)
1533         * keymap.c:
1534         Comment out synkey, which nobody calls.
1536         * lisp.h:
1537         Define XSET (var, type, ptr) to set both fields of a var.
1538         Use it in DEFSIMPLE.
1539         Remove extern decls of non-ex functions; fix dot -> point.
1540         Remove incorrect decl of staticprolist.
1542         * fns.c (Flength):
1543         (concat2, nconc2): Add /* ARGSUSED */ for lint.
1545         * fileio.c:
1546         A few declarations for lint's sake.
1547         Make alias file-readable-p for file-exists-p.
1549 1985-11-11  Richard M. Stallman  (rms@prep)
1551         * emacs.c (Fkill_emacs):
1552         Return arg as exit code if arg is numeric even if interactive.
1553         Rearrange code to make it smaller.
1555         * callint.c (Fcall_interactively, case 'v'):
1556         Use Fread_variable.
1558         * tparam.c (tparam):
1559         Rename %s as %f.
1561 1985-11-10  Richard M. Stallman  (rms@prep)
1563         * read.c (Fload):
1564         Rename closefile to load_unwind.
1565         New boolvar load-in-progress, set to t while loading, nil otherwise.
1567         * term.c (clear_end_of_line):
1568         Correct first_unused_hpos by chars_wasted, since curX is corrected.
1569         Set chars_wasted to zero if about to erase a standout marker.
1571         * term.c (write_standout_marker):
1572         Do write the end-standout marker even when sg#0.
1574 1985-11-09  Richard M. Stallman  (rms@prep)
1576         * term.c (set_scroll_region):
1577         Change parameters given to the `cs' string
1578         to adjust for changed effect of %i.
1580         * tparam.c (tparam):
1581         %i now increments two args, not just one.
1582         Redefine %a somewhat, as will be described in termcap.texinfo.
1584 1985-11-08  Richard Mlynarik  (mly@prep)
1586         * emacs.c (Fkill_emacs):
1587         Arg default is 0 if noninteractive, nil if interactive.
1589         * minibuf.c (Fread_variable):
1590         Only recognize symbols that are user-variable-p.
1592 1985-11-08  Richard M. Stallman  (rms@prep)
1594         * sysdep.c (init_display):
1595         Turn on LPASS8 if it is defined.
1596         Gives 8-bit input in CBREAK mode.
1598 1985-11-06  Richard M. Stallman  (rms@prep)
1600         * sysdep.c (get_input_pending, select):
1601         Provide alternate code for USG without FIONREAD.
1602         I suspect it does not really work, though.
1604         * fns.c (Fload_average):
1605         If LOAD_AVE_TYPE is not defined, just get an error,
1606         and allow LOAD_AVE_CVT to be undefined as well.
1608         * m-dual.h:
1609         Don't define LOAD_AVE_TYPE or LOAD_AVE_CVT.
1611 1985-11-05  Richard Mlynarik  (mly@prep)
1613         * print.c (print):
1614         Hack deleted buffers.
1616 1985-11-04  Richard M. Stallman  (rms@prep)
1618         * syntax.c (describe_syntax_1):
1619         Return type Lisp_Object and value Qnil.
1621 1985-11-04  Richard Mlynarik  (mly@prep)
1623         * minibuf.c (Fread_variable):
1624         Choose amongst user-variable-p frobs rather than boundp ones.
1626 1985-11-02  Richard M. Stallman  (rms@prep)
1628         * window.c (window_scroll):
1629         Get error if try to scroll back when at top.
1631         * window.c (Fscroll_down, Fscroll_up):
1632         Share new subroutine scroll_command to compute amount to scroll by.
1634 1985-11-01  Richard M. Stallman  (rms@prep)
1636         * dispnew.c (Fset_input_mode):
1637         Always set interrupt_input to 0 when SIGIO is undefined.
1639         * keyboard.c (gobble_input, input_available_signal, kbd_buffer_store_char):
1640         Make these functions exist only if SIGIO is defined.
1642 1985-10-30  Richard M. Stallman  (rms@prep)
1644         * sysdep.c (select):
1645         Use signal, not sigset, since we simulate signal on
1646         all system versions when nec.
1648         * buffer.c (syms_of_buffer, init_buffer_once)
1649         (reset_buffer_local_variables):
1650         Define default-abbrev-mode, and init new buffers' abbrev-mode
1651         from it.  Move definition of abbrev-mode here from abbrev.c.
1653         * print.c (Fmessage):
1654         Simplify it by using `message' to do the output.
1656         * alloca.s:
1657         Provide alloca for 3b5.
1659 1985-10-30  Richard Mlynarik  (mly@prep)
1661         * editfns.c, print.c (Fmessage):
1662         Move Fmessage from editfns to print
1663         If noninteractive, do not truncate message at all.
1664         If interactive truncate at MScreenWidth (not at 100).
1666         * alloc.c (mark_buffer):
1667         Catch a few places which should have been marked but weren't.
1669         * buffer.h, abbrev.c, cmds.c, xdisp.c
1670         abbrev_mode is buffer-local (like all other minor modes).
1672 1985-10-29  Richard M. Stallman  (rms@prep)
1674         * sysdep.c (wait_for_termination):
1675         Install case for 4.1 with subprocesses.
1676         Realize that what was thought to be that
1677         was really for no subprocesses; fix it up
1678         to avoid using synch_process_pid since child_sig won't maintain that.
1680         * read.c (Fload):
1681         If arg is empty string, just get error;
1682         don't try to open any file.
1684         * eval.c (internal_condition_case):
1685         Before unwinding after throw, remove any backtrace frames,
1686         catches or handlers that are in stack frames that have been exited.
1688         * window.c (save_window_restore):
1689         If saved state uses a dead buffer, don't use Fother_buffer
1690         to find a buffer to use instead, since that can call Fnext_window
1691         and the window hierarchy might be malformed at that time.
1693         * fns.c (Fequal):
1694         Markers are equal if they point at the same place.
1696 1985-10-29  Richard Mlynarik  (mly@prep)
1698         * fns.c (Frequire):
1699         Don't print message whilst loading required file.
1701 1985-10-29  Richard M. Stallman  (rms@prep)
1703         * syntax.c (scan_lists):
1704         Initialize mathexit.
1706 1985-10-28  Richard M. Stallman  (rms@prep)
1708         * process.c (child_sig):
1709         Rename `dead_pid' to `synch_process_pid'.
1710         Remove conditionals around calls to deactivate_process.
1712         * callproc.c (Fcall_process):
1713         In 4.1, store the pid in synch_process_pid.
1715         * sysdep.c (wait_for_termination):
1716         Add case for 4.1 (only with subprocesses)
1717         waiting for synch_process_pid to be zeroed by child_sig.
1719         * crt0.c:
1720         Add version for the orion machine.
1722         * data.c (arith_error):
1723         In 4.1, do sigrelse to reallow arith error signals.
1725         * read.c (read_escape):
1726         After C-, don't clear meta bit of what follows.
1728 1985-10-27  Richard M. Stallman  (rms@prep)
1730         * m-*.h:
1731         Define SIGN_EXTEND_CHAR for all machines.
1733 1985-10-26  Richard M. Stallman  (rms@prep)
1735         * xdisp.c (display_mode_line):
1736         If window is not full width but its parent is,
1737         display the mode line in inverse video.
1739         * cmds.c (SelfInsert):
1740         Call the blink paren hook for syntax class $ also.
1742         * eval.c (Fautoload):
1743         Accept fifth arg, non-nil meaning function will be a macro
1744         once it is loaded.
1746         * eval.c (Fmacroexpand):
1747         Autoload anything that will be a macro once loaded.
1748         If a symbol's definition is a symbol that is a macro,
1749         expand either one seen.
1751 1985-10-23  Richard M. Stallman  (rms@prep)
1753         * eval.c (Fthrow):
1754         If TAG is nil, always say it is not found, to avoid
1755         interference with condition-case, which uses nil as catch tag.
1757         * print.c (PRINTPREPARE & uses):
1758         Don't change print_depth in PRINTPREPARE;
1759         those callers for which it matters now do it themselves.
1761         *print.c (print):
1762         Do QUIT; at the beginning.  Also in string and symbol loops.
1764         * window.c (set_window_{height,width}):
1765         In args to recursive calls, use XINT, not XFASTINT.
1766         Perhaps a "too small" window could have negative size.
1768         * window.c (change_window_height):
1769         Fix calls to sizefun and setsizefun to dereference first.
1771         * window.c (save_window_restore):
1772         Make it return a Lisp_Object.
1774         * fns.c (concat & callers):
1775         New arg last_special which if non-0 says don't copy last arg.
1776         Only Fappend supplies it as nonzero.
1778         * keyboard.c (Fsuspend_emacs):
1779         Take already-read input and stuff it.
1781         * fileio.c (Ffile_directory_p, Ffile_modes):
1782         Remove final slash from file name before doing stat.
1783         In 4.2, final slash can cause wrong result
1784         if file is read-protected.
1786 1985-10-22  Richard Mlynarik  (mly@prep)
1788         * eval.c (Fcondition_case):
1789         Add some error-checks to condition-case;
1790         prevent core-dump when handler list is illegal.
1792         * keyboard.c (cmd_error):
1793         Do the file-error hack for conditions including file-error,
1794         not just file-error itself.
1796         * callint.c (Fcall_interactively):
1797         Quotify car of command-history in (interactive <list>) case
1798         New function quotify_args to do the work.
1800         * fns.c (Fnconc):
1801         Typo: wrong_type_arg called with Flistp, not Qlistp.
1803 1985-10-22  Richard M. Stallman  (rms@mit-prep)
1805         * process.c (Fset_process_buffer, Fstart_process):
1806         Allow a process's buffer to be nil.
1808 1985-10-21  Richard M. Stallman  (rms@mit-prep)
1810         * window.c (Fscroll_{left,right}):
1811         Default arg is now window width minus 2.
1813         * search.c (Freplace_match):
1814         If not literal, make \ always an escape.
1815         Thus two \'s are needed for one literal one.
1817         * data.c (wrong_type_argument):
1818         Eliminate third arg from function and its explicit callers.
1820         * window.c (Fpos_visible_in_window_p):
1821         Provide missing tab_offset arg to compute_motion.
1823         * xdisp.c (init_xdisp):
1824         Provide missing 3rd arg to set_window_height.
1826         * fileio.c (e_write):
1827         Make it really return -1 if write doesn't write everything.
1829         * data.c (Fsymbol_{function,value}):
1830         Replace Qvoid_symbol condition with two conditions
1831         Qvoid_{variable,function}.  No longer pass boundp or fboundp
1832         as part of the extra info, since would be redundant.
1834 1985-10-18  Richard M. Stallman  (rms@mit-prep)
1836         * editfns.c (Fformat):
1837         Remove limit on length of output.
1839         * doprnt.c (doprnt):
1840         Rearrange so can handle %2s, etc.
1842 1985-10-17  Richard M. Stallman  (rms@mit-prep)
1844         * process.c:
1845         Define sys_siglist for 4.1, which doesn't provide one.
1846         Use new flag HAVE_PTYS to enable compilation of `pty'
1847         and of some code in `create_process'.
1848         Flist_processes: omit unused third arg to Findent_to.
1849         create_process: Omit some code for ptys unless HAVE_PTYS.
1850          Provide 4.1 alternatives for sigsetmask.
1851         wait_reading_process_input:
1852          If not HAVE_TIMEVAL, provide alternative code using ints.
1853          Handle failure of FIONREAD.
1854         send_process_trap:
1855          In 4.1, release SIGPIPE and SIGALRM.
1856         sig_process: check current_group for nil or not,
1857          rather than 0 or not.
1858         count_active_processes: get rid of arg `buffer' which was unused.
1859         child_sig: strange hacks with dead_pid for 4.1.
1860          Hold and release SIGCHLD in 4.1.
1861          Do not call deactivate_process in 4.1 (puzzles me).
1863         * sysdep.c:
1864         Omit fcntl.h under 4.1.
1865         get_input_pending: return 0 if input not a tty.
1866         discard_terminal_input: do nothing if batch mode.
1867         stuff_char: err instead of aborting on system V.
1868         init_baud_rate: always set ospeed = 0 if batch mode.
1869         InitDsp: turn ANYP on rather than off.  Make lmode global.
1870          In 4.1, turn on LINTRUP if interrupt_input.
1871         child_setup_tty: in 4.1, clear LINTRUP in the child.
1872         tabs_safe_p: always say tabs are safe if batch mode.
1873         RstDsp: In 4.1, turn off LINTRUP if interrupt_input.
1874         setpriority: define as noop for 4.1.
1875         request_sigio: for 4.1, turn on LINTRUP.
1876         unrequest_sigio: for 4.1, turn off LINTRUP.
1878         * read.c (readevalloop, read_list, read_vector, intern):
1879         Dereference expressions of type pointer-to-function before calling.
1881         * read.c (hash_string):
1882         Use unsigned char, not char, for strings.
1884         * read.c (map_obarray):
1885         Expect function to be mapped to return int, not Lisp_Object.
1887         * undo.c:
1888         Include lisp.h before undo.h.
1890         * unexec.c:
1891         Introduce ADDR_CORRECT.  Apply it to supplied values
1892         for bss_start and data_start, and to values returned by sbrk.
1893         Use NBPG instead of getpagesize () in BSD4.1.
1894         Use char *'s for ptr and end in copy_text_and_data.
1896         * print.c (print):
1897         Remove unused fourth arg from recursive calls.
1899         * minibuf.c (Fminibuffer_complete{,_and_exit}):
1900         Copy function value into variable before switching on it.
1901         (Direct way loses on orion).
1903         * s-*.h:
1904         Define HAVE_SELECT and NONSYSTEM_DIR_LIBRARY where appropriate.
1905         Reorder the flags, and make all the s- files look parallel.
1907         * keyboard.c:
1908         Define new constructs sigfree, sigholdx, sigblockx,
1909         sigunblockx, sigpausex which do one thing in 4.1 and another in
1910         4.2.  In 4.1, use SIGTINT as if it were SIGIO.
1912         * keyboard.c (getchar, interrupt_signal):
1913         Don't omit the arg DoDsp or Fdo_auto_save wants.
1915         * keyboard.c (echo_them, input_available_signal):
1916         Put in hair for 4.1 for interfacing with select emulation.
1918         * keyboard.c (top_level_1):
1919         * macro.c (pop_kbd_macro):
1920         Must have type Lisp_Object, and return a valid one.
1922         * keymap.c (describe_{vector,alist}):
1923         Expect elt_describer to return int, not Lisp_Object.
1924         Dereference that variable before calling it.
1926         * keymap.c (apropos1):
1927         Must have type Lisp_Object, and return a valid one.
1929         * syntax.c (describe_syntax):
1930         Make it return type int, and don't bother about what int.
1932         * search.c (search_buffer):
1933         If fwd, require match to end not beyond search limit.
1935 1985-10-16  Richard M. Stallman  (rms@mit-prep)
1937         * alloc.c:
1938         New vars data-bytes-{used,free} that ref malloc_sbrk{,un}used.
1940         * editfns.c (save_{excursion,restriction}_restore):
1941         Must have type Lisp_Object, and return a valid one.
1943         * editfns.c (format1):
1944         Handle NO_ARG_ARRAY case.
1946         * eval.c (internal_catch, internal_condition_case, unbind_to):
1947         Dereference variables of type pointer-to-function before calling.
1949         * eval.c (Fautoload, call1, call2, call3):
1950         If NO_ARG_ARRAY, don't assume that consecutive args can be
1951         treated as an array.  Copy them into another array.
1953         * fileio.c (barf_or_query_if_file_exists):
1954         Fix paren error.
1956         * fileio.c (Fcopy_file):
1957         Use chmod instead of fchmod on 4.1bsd as well as usg.
1959         * fileio.c (Frename_file, Fmake_symbolic_link, Fadd_name_to_file):
1960         If NO_ARG_ARRAY, don't assume that consecutive args can be
1961         treated as an array.  Copy them into another array.
1963         * fileio.c (Frename_file):
1964         In 4.1bsd, use link and unlink, since don't have rename.
1966         * fileio.c (Fmake_symbolic_link):
1967         Eliminate this if S_IFLNK not defined.
1969         * fileio.c (Ffile_symlink_p):
1970         Always return nil if S_IFLNK not defined.
1972         * fileio.c (auto_save_error, auto_save_1):
1973         Must have type Lisp_Object, must really return something.
1975         * fns.c (concat2, nconc2):
1976         If NO_ARG_ARRAY, don't assume that consecutive args can be
1977         treated as an array.  Copy them into another array.
1979         * fns.c (Frequire):
1980         Was calling Fload with only 1 arg.  Pass 2 extra nil's.
1982         * fns.c (Fload_average):
1983         If FIXUP_KERNEL_SYMBOL_ADDR is defined, must detect
1984         if address of _avenrun is not abs, and fix it up if so.
1986         * indent.c (position_indentation):
1987         Add parens in nested ?...: for clarity.
1989         * sysdep.c:
1990         Add opendir, closedir and readdir, if NONSYSTEM_DIR_LIBRARY.
1992         * unexec.c:
1993         Add some definitions for case of USG and not COFF.
1994         These define the BSD names for hdr components in terms of pre-BSD names.
1996         * sysdep.c, editfns.c, s-*.c:
1997         Use (new) get_system_name (defined in sysdep) to get system name
1998         in init_editfns.  No more need for SYSTEM_NAME and
1999         SYSTEM_NAME_DECL.
2001         * sysdep.c (select):
2002         Use not HAVE_SELECT as condition to define this.
2004         * keyboard.c:
2005         Get error instead of croaking if want to send SIGTSTP.
2006         Get compile time error in gobble_input if SIGIO is not defined.
2008         * emacs.c:
2009         Always include types.h.  Omit time.h and resource.h in 4.1.
2011         * dispnew.c (Fsit_for, Fsleep_for):
2012         Rearrange conditionals to use only HAVE_TIMEVAL and (new) HAVE_SELECT.
2014         * dired.c:
2015         Flush NO_DIR_LIBRARY case.  If NONSYSTEM_DIR_LIBRARY,
2016         use "ndir.h" which will come with Emacs.
2018         * alloca.s, crt0.c:
2019         Check m68000 flag only if m68k flag is not defined.
2021         * fileio.c (Finsert_file_contents):
2022         Set up for this to be undone.
2024 1985-10-15  Richard M. Stallman  (rms@mit-prep)
2026         * syntax.c (Fmodify_syntax_entry):
2027         Use %s rather than %c in interactive string.
2029         * callint.c (Fcall_interactively):
2030         For arg read with code `c', convert as char to a string
2031         for use in prompting for future args.
2033         * keymap.c (describe_{map,map_tree,vector,alist}):
2034         All take additional arg PARTIAL which, if nonzero,
2035         means check each definition for a `suppress-keymap'
2036         property and ignore it if property non-nil.
2038         * keymap.c (describe_bindings):
2039         * doc.c (Fsubstitute_command_keys):
2040         * syntax.c (describe_syntax):
2041         Pass zero or 1 as PARTIAL arg to those functions.
2043         * filelock.c:
2044         Use PATH_SUPERLOCK as name of superlock file,
2045         and PATH_LOCK as name of lock directory.
2046         * paths.h, paths.h.dist:
2047         Define those two.
2049         * callproc.c (Fcall_process):
2050         Always try opening program before forking.
2052 1985-10-14  Richard M. Stallman  (rms@mit-prep)
2054         * Makefile:
2055         Now it takes ymakefile, passes it thru cpp to get xmakefile,
2056         then runs `make' on that.  ymakefile is the old Makefile.
2057         All comments now are within /*...*/, and #ifdef's are used
2058         to select the flags and libraries to be used.
2060         * s-*.h:
2061         Define new macro SYSTEM_NAME_DECL which does any global
2062         declarations needed to prepare for using SYSTEM_NAME.
2063         The flag ASSEMBLY is no longer needed to prevent s-*.h
2064         from doing anything besides defining macros.
2066         * editfns.c:
2067         Use SYSTEM_NAME_DECL.
2069         * alloca.s:
2070         No longer need to define ASSEMBLY.
2072         * eval.c (apply_lambda, funcall_lambda):
2073         Flush &quote support.
2075 1985-10-11  Richard M. Stallman  (rms@mit-prep)
2077         * fileio.c (Frename_file):
2078         If fails due to moving across devices, copy and delete old file.
2080         * keymap.c (insert_first_line):
2081         If the first line contains `\[', pass the string thru
2082         substitute-command-keys and try again.
2084 1985-10-10  Richard M. Stallman  (rms@mit-prep)
2086         * Makefile:
2087         Define new parameter LDFLAGS, and make more use of LIBES.
2088         Have new code to define their values for various systems.
2090         * sysdep.c, s-unipl5.2.h:
2091         Define MAXPATHLEN here if not def by system.
2092         Do not define it in s- files.
2094         * keyboard.c (interrupt_signal):
2095         In system V, cannot actually stop, but do offer to auto-save
2096         or abort.
2098         * dired.c:
2099         Do not include dir.h if including ndir.h.
2101 1985-10-09  Richard M. Stallman  (rms@mit-prep)
2103         * fileio.c (Fsubstitute_in_command_name):
2104         Simplify /~ and // if produced as result of variable substitution.
2106 1985-10-08  Richard M. Stallman  (rms@mit-prep)
2108         * fns.c (concat):
2109         Failed to initialize data type of `len'.
2111         * editfns.c (Fregion_to_string):
2112         Delete it.  Put it in mlsupport.el.
2114         * search.c (Fregion_around_match):
2115         Delete it.  Put it in mlsupport.el.
2117         * syntax.c (scan_lists):
2118         Fix bug of ignoring the character before a comment-start pair
2119         when parsing backward.  Also don't consider /*/ a complete comment.
2121         * dispnew.c (Fsit_for):
2122         Use simulator for select, if not HAVE_TIMEVAL.
2123         * dispnew.c (ChangeScreenSize):
2124         Pass zero as third arg to set_window_{height,width}.
2125         * dispnew.c (update_screen):
2126         Detect failure of ioctl TIOCOUTQ.
2127         * dispnew.c:
2128         Don't use fcntl.h; appears not to be needed.
2130         * dired.c:
2131         Handle fact that 4.1 has no symbolic links, just like sysV:
2132         Make conditionals check S_IFLNK rather than USG.
2133         Also, check new flag NONSYSTEM_DIR_LIBRARY which 4.1 will set.
2135         * cm.c (cmcostinit, cmgoto, cmputc):
2136         Make these the names of the functions that do the work
2137         instead of macros going through variables that
2138         might fail to be set up.
2140 1985-10-07  Richard Mlynarik  (mly@mit-prep)
2142         * print.c (print):
2143         No need to escape symbols + and - if not followed by digits.
2145 1985-10-07  Richard M. Stallman  (rms@mit-prep)
2147         * filelock.c:
2148         New file containing stuff to handle locking files while
2149         they are being edited.
2151         * buffer.c (Fset_buffer_modified_p):
2152         Lock or unlock the visited file accordingly.
2154         * buffer.c (Fdelete_buffer_internal)
2155         Unlock the visited file.
2157         * fileio.c (Fread_file_contents):
2158         Mark buffer as modified using modify_buffer.
2159         If visiting, unlock old and new visited files.
2161         * fileio.c (Fwrite_region):
2162         Lock file to begin with; unlock on error or when done.
2164         * undo.c (Fundo_more):
2165         Unlock file if undoing makes buffer unmodified.
2167 1985-10-06  Richard M. Stallman  (rms@mit-prep)
2169         * dired.c (file_name_completions):
2170         If looking for list of all completions, don't ignore any.
2171         Do this by starting with passcount = 1.
2173 1985-10-05  Richard M. Stallman  (rms@mit-prep)
2175         * xdisp.c (message):
2176         Use doprnt instead of sprintf: prevent overflowing buf.
2178         * xdisp.c (decode_mode_spec):
2179         Protect against overflowing tbuf even if strings are clobbered
2180         and have negative length.
2182 1985-10-02  Richard M. Stallman  (rms@mit-prep)
2184         * insdel.c (delete_range):
2185         Must immediately relocate markers into deleted text.
2186         Otherwise if an insertion follows they may end up pointing
2187         into the middle of it.
2189 1985-10-01  Richard M. Stallman  (rms@mit-prep)
2191         * dispnew.c, xdisp.c, minibuf.c:
2192         cursX and cursY are now origin zero.
2193         last_point_x and last_point_y of a window, likewise.
2195         * term.c (set_scroll_region, term_init, calculate_costs):
2196         New "cS" string, in TS_set_scroll_region_1,
2197         accepts four params suitable for handling aaa's \E[...p cmd.
2199 1985-09-30  Richard M. Stallman  (rms@mit-prep)
2201         * xdisp.c (redisplay_window):
2202         Don't clobber the point value of the buffer
2203         being redisplayed.
2204         Make sure the displayed point value is inside
2205         the buffer bounds; correct it if not.
2207         * term.c (reassert_line_highlight):
2208         Define reassert_line_highlight_hook, and call it.
2210         * dispnew.c (direct_output_for_self_insert):
2211         Call reassert_line_highlight.
2213 1985-09-29  Richard M. Stallman  (rms@mit-prep)
2215         * print.c (print):
2216         Fix one-off bug in Vprint_length; one element too few
2217         used to be printed.
2219         * fileio.c (Fread_file_name_internal):
2220         Avoid error when spec'd name has no slashes.
2222 1985-09-28  Richard M. Stallman  (rms@mit-prep)
2224         * term.c (clear_to_end, clear_screen):
2225         Set cleared lines to the background highlighting state.
2227         * read.c (read1):
2228         Don't ignore pure doc strings once DOCSTR already parsed.
2230         * read.c (readevalloop & callers):
2231         Eliminate delayflag feature.
2233         * eval.c (do_autoload):
2234         Set up unwind-protect un_autoload and bind
2235         Vautoload_queue non-nil.  This will undo all defuns and
2236         provides if the file does not finish loading.
2238         * data.c (Fset):
2239         If Vautoload_queue non-nil, record function and old definition
2240         by consing onto Vautoload_queue.
2242         * fns.c (Fprovide):
2243         If Vautoload_queue is non-nil, record old value of Vfeatures.
2245 1985-09-27  Richard M. Stallman  (rms@mit-prep)
2247         * abbrev.c (Fdefine_global_abbrev, Fdefine_mode_abbrev):
2248         Convert name to lower case before defining.
2249         (Since expansion always does that too.)
2251         * buffer.c (init_buffer):
2252         Don't add / to end of wd if it ends in / already.
2253         * buffer.c (init_buffer_once):
2254         Add variable `tem'.  Don't call Fcurrent_buffer.
2256 1985-09-26  Richard M. Stallman  (rms@mit-prep)
2258         * fileio.c (Fexpand_file_name):
2259         Discard through any slash that precedes a tilde.
2261 1985-09-20  Richard M. Stallman  (rms@mit-prep)
2263         * fns.c (concat):
2264         In the case of append, don't copy or test the last arg.
2266 1985-09-19  Richard M. Stallman  (rms@mit-prep)
2268         * keyboard.c (command_loop_1):
2269         If minibuffer and echo area both in use,
2270         wait 2 sec and redraw minibuffer.
2272         * keyboard.c (cmd_error):
2273         Remove similar feature for errors only.
2275         * read.c (readevalloop and callers):
2276         Don't eval any forms until all forms read.
2278         * dispnew.c (scrolling):
2279         Postpone fixup of free_at_end_vpos
2280         until unchanged_at_bottom is set up.
2282         * everywhere:
2283         Remove many variables not really used.
2285         * process.c (count_active_processes):
2286         Fix garbage code to ignore, correctly,
2287         stopped or dead processes.
2289 1985-09-17  Richard M. Stallman  (rms@mit-prep)
2291         * Don't use strings.h (not all Unix versions have it).
2292         Declare index explicitly where needed.
2294         * sysdep.c:
2295         Define select, for 4.1.
2297         * s-*.h, sysdep.c:
2298         New flag BSTRING says system has bcopy, etc., functions.
2299         If not, define them in sysdep.c.
2301         * buffer.c:
2302         Define MAXPATHLEN if system does not.
2303         Pass two args to Fnext_window, as it expects.
2305         * abbrev.c (Fdefine_global_abbrev, Fdefine_local_abbrev):
2306         Always pass Fdefine_abbrev five args.
2308         * term.c (write_chars):
2309         Clear error flag of stdout to recover from 4.2 kernel bug.
2311         * unexec.c (make_hdr):
2312         Remove sun data_start rounding change: round down again.
2314 1985-09-13  Richard M. Stallman  (rms@mit-prep)
2316         * minibuf.c (minibuf_completion_help_1):
2317         Always indent at least one space between the two function names on
2318         a line.
2320 1985-09-12  Richard M. Stallman  (rms@mit-prep)
2322         * syntax.h, syntax.c:
2323         Define new syntax class Spunct, for punctuation.
2324         Acts like whitespace in word and list parsing.
2325         Define all non-whitespace that used to be Swhitespace as
2326         being punctuation.
2328 1985-09-11  Richard M. Stallman  (rms@mit-prep)
2330         * dired.c (file_name_completions):
2331         Fix bug matching implicit slash after name of dir
2332         against an implicit slash in bestmatch.
2334 1985-09-10  Richard M. Stallman  (rms@mit-prep)
2336         * cmds.c (Fnewline):
2337         Barf immediately if buffer read only.
2339         * doc.c (Fsubstitute_command_keys):
2340         If string contains \{VAR}, get value of VAR and describe as
2341         keymap.
2343         * keymap.c (describe_map_tree):
2344         New function to describe a map and all maps reachable from it.
2346         * keymap.c (describe_bindings):
2347         Describe local bindings first.
2349         * abbrev.c (describe_abbrev):
2350         Direct final newline to same stream as everything else.
2352 1985-09-08  Richard M. Stallman  (rms@mit-prep)
2354         * editfns.c, dispnew.c:
2355         Definition of baud-rate moved to dispnew.c.
2357         * editfns.c:
2358         Functions point{-marker}, point-max{-marker} and
2359         point-min{-marker} defined.  Old dot- names still exist
2360         as aliases.
2362         * Pervasive:
2363         "dot" changed to "point" in just about everything,
2364         including names that contain it, such as SetDot.
2366         * callint.c (Fcall_interactively):
2367         Make elements of command-history be expressions
2368         by quoting each arg that is not self-evaluating.
2370         * eval.c (Fsignal, find_handler_clause):
2371         If debugger returns, return its value from Fsignal.
2373         * All calls to Fsignal:
2374         Do something reasonable if Fsignal returns.
2375         Often, just return what it returned.
2376         `error' still never returns to its caller.
2378         * Signaling Qargs_out_of_range:
2379         Use new functions args_out_of_range and args_out_of_range_3
2380         (in data.c) to do this.
2382 1985-09-07  Richard M. Stallman  (rms@mit-prep)
2384         * search.c (compile_pattern & callers):
2385         Must recompile even the same string if translate table is
2386         different.  Pass translate table as arg to compile_pattern.
2388         * buffer.c (switch-to-buffer-other-window):
2389         Eliminate this name; it's now defined in files.el.
2391         * window.c (Fget_lru_window):
2392         Give preference to full-width windows.
2393         * window.c (display_buffer):
2394         Only split full-width windows.
2396         * search.c (Fstring_match):
2397         Set the search_regs, like buffer searching commands.
2399 1985-09-06  Richard M. Stallman  (rms@mit-prep)
2401         * editfns.c (Finsert_before_markers):
2402         User interface to insert_before_markers.
2404         * insdel.c (insert_before_markers):
2405         New function that inserts and moves all markers pointing at
2406         insertion point to point after the inserted text.
2408         * sysdep.c (wait_for_termination):
2409         Cause a SIGCHLD just in case, when termination is detected.
2411         * unexec.c:
2412         Round data-end-address on Sun up, not down, to segment bdry.
2414         * crt0.c, alloca.s, m-sun2.h:
2415         For sun 2, call hack_sky from _start.  hack_sky is new, in alloca.s.
2416         m-sun2.h is a new file, which defines the symbol sun2.
2418         * buffer.c (Fswitch_to_buffer):
2419         Second arg non-nil means don't record buffer on selection history.
2421         * syntax.c (scan_sexps_forward):
2422         Stop properly if end of range comes after a char quote within a string.
2424 1985-09-05  Richard M. Stallman  (rms@mit-prep)
2426         * fileio.c (Fread_file_name):
2427         Abbreviate the default dir using ~ if possible.
2429         * search.c (search_buffer):
2430         Notice when re_search_2 returns "failure", in backward search.
2432         * term.c (write_chars):
2433         When using TS_repeat, the count was wrong, and len was not updated.
2435 1985-09-05  Richard M. Stallman  (rms@mit-prep)
2437         * process.c (handle_process_output):
2438         Preserve logical ordering of input and output when there is type ahead.
2440 1985-09-05  Richard M. Stallman  (rms@mit-prep)
2442         * macros.c:
2443         Define executing-kbd-macro as alias for executing-macro.
2444         Eventually old name will be flushed.
2446 1985-09-04  Richard M. Stallman  (rms@mit-prep)
2448         * keyboard.c (Fsuspend_emacs):
2449         Put back `kill', accidentally deleted.
2451         * buffer.c: Define switch-to-buffer-other-window = pop-to-buffer.
2453         * dispnew.c (update_line):
2454         Simplify handling of nlen == screen_width case
2455         to avoid calling write_chars on -1 chars.
2457 1985-09-02  Richard M. Stallman  (rms@mit-prep)
2459         * term.c ((re)set_terminal_modes):
2460         Use the correct hook in each case.
2461         (topos): Define topos_hook.
2463         * search.c (search_buffer):
2464         In backwards regexp search, use new `mstop' to re_search_2
2465         to avoid matches that extend forward past starting point.
2467         * editfns.c (init_editfns):
2468         Change #endif to #else; make AMPERSAND_FULL_NAME conditionals right.
2470         * print.c (print):
2471         Define variable print-length, and refer to it as nec.
2473 1985-08-31  Richard Mlynarik  (mly@mit-prep)
2475         * editfns.c (init_editfns)
2476         Try to improve AMPERSAND_FULL_NAME frobbing a little.
2478         * eval.c, callint.c
2479         Define function user-variable-p, which returns t if first char of
2480         var doc string is "*".  Make (interactive "v") use it.
2482 1985-08-31  Richard M. Stallman  (rms@mit-prep)
2484         * syntax.c (scan_words):
2485         Always clear immediate_quit on exit.
2487 1985-08-30  Richard M. Stallman  (rms@mit-prep)
2489         * process.c (handle_process_output):
2490         Don't use the name `howmany' to avoid possible conflict
2491         with system header files.
2493         * xdisp.c (decode_mode_spec):
2494         Never try to output 100% -- output 99% instead.
2496 1985-08-11  Richard Mlynarik  (mly@mit-prep)
2498         * m-sun.h:
2499         Don't define SUN -- "sun" already exists.
2500         Define COMPILER_REGISTER_BUG and use it in a few places in the
2501         source which used to be conditionalized on SUN.
2503         * config.h, config.h.dist:
2504         Increase pure size (sigh).
2506         * search.c (compile_pattern):
2507         Signal an  invalid-regexp  error if lose.
2509 1985-08-09  Richard Mlynarik  (mly@mit-prep)
2511         * term.c (clear_end_of_line):
2512         Calling cmplus before chars output when terminals lacks clreol
2513         (crl@newton.purdue.edu).
2515 1985-08-06  Richard Mlynarik  (mly@mit-prep)
2517         * macros.c (end-kdb-macro):
2518         Barf if not defining a macro.
2520         * doc.c, keymap.c:
2521         Interactive for Fdocumentation declaration was wrong, and has been
2522         deleted. (describe-function is what people should be using.)
2524         Make where_is_in_buffer take a firstonly arg to speed up
2525         substitute-command-keys.  Make it really use its buf argument.
2526         (crl@newton.purdue.edu)
2528         * emacs.c (kill-emacs):
2529         If noninteractive and arg is fixnum, return arg as program return
2530         code by exit(arg).
2532         * search.c (Fsearch_string):
2533         Wasn't initializing translate table based on case-fold-search.
2535         * process.c (deactivate_process):
2536         Fix timing screw if SIGCHLD received in middle of deactivation
2537         (by silogic!eggert@ucla-cs.arpa).
2539 1985-08-05  Richard Mlynarik  (mly@mit-prep)
2541         * callint.c
2542         Improve doc of {current-}prefix-arg.
2544         * minibuf.c (Fread_from_minibuffer):
2545         Thought it accepted maximum of 3 args, not 4.
2547         * sysdep.c (InitDsp):
2548         When you are (sigh) using CBREAK and flow control, C-@
2549         is botched.  Some tables are being initialized to zero (i.e. C-@)
2550         when they should be initialized to -1.  More debatably, LDECCTQ is
2551         needed for real, bad flow control.
2552         -- silogic!eggert@ucla-cs.arpa
2554 1985-07-21  Richard Mlynarik  (mly@mit-prep)
2556         * sysdep.c (tabs_safe_p):
2557         gtty call was missing fd arg.
2559 1985-07-15  Richard M. Stallman  (rms@mit-prep)
2561         * xdisp.c, minibuf.c, fileio.c:
2562         Add * to some variables' doc, remove from others.
2564         * term.c (ins_del_lines):
2565         Always go to real hpos 0 before insert or delete.
2567         * buffer.c (init_buffer_once):
2568         Pass correct data type to Fbuffer_flush_undo.
2570         * term.c (write_standout_marker):
2571         Don't output `se' if it's the same as `so'.
2573         * window.c (set_window_height):
2574         Pass correct data type (int) when call self at end.
2575         Similar in set_window_width.
2577 1985-07-14  Richard M. Stallman  (rms@mit-prep)
2579         * editfns.c (subst-char-in-region):
2580         * casefiddle.c (operate_on_region):
2581         Don't call modify_region before recording the changes.
2583         * editfns.c (Fgoto_char):
2584         Interactively read arg using n, not p.
2586         * undo.c (RecordChange1):
2587         A local and an arg were both named p.  Change arg to bufp.
2588         Fixed bug in undoing the undoing of RecordChange (such as Meta-l).
2590         * minibuf.c (read_minibuf):
2591         Postpone incrementing MinibufDepth until point where
2592         can no longer quit before setting up to decrement it on quits.
2594         * fns.c (Fyes_or_no_p):
2595         Use Fsleep_for rather than sleep, to allow immediate quit.
2597         * abbrev.c (expand_abbrev):
2598         Handle case of scan_words returning 0.
2600         * casefiddle.c (operate_on_word):
2601         Handle case of scan_words returning 0.
2603 1985-07-12  Richard M. Stallman  (rms@mit-prep)
2605         * xdisp.c (display_string):
2606         Regard display chars as unsigned chars.
2608 1985-07-12  Richard Mlynarik  (mly@mit-prep)
2610         * callint.c:
2611         Stuff was being added to command-history even if aborted out.
2613 1985-07-11  Richard M. Stallman  (rms@mit-prep)
2615         * process.c: delete-exited-processes is boolean.
2617         * term.c:
2618         chars_wasted is 0 if no `so' or `se' string;
2619         0100 | nchars if there is a `so' or `se' string.
2620         Should fix lossage with :sg#0:.
2622 1985-07-10  Richard M. Stallman  (rms@mit-prep)
2624         * keyboard.c:
2625         Rename waiting to waiting_for_input, no longer static.
2626         In get_char, be sure to clear alarm and zero input_available_clear_word
2627         when thrown to from quit_throw_to_get_char.
2629         * eval.c (Fsignal):
2630         Crash if waiting_for_input.
2632         * process.c (create_process):
2633         Set up alarm signal handler before requesting alarm.
2635 1985-07-09  Richard M. Stallman  (rms@mit-prep)
2637         * process.c (create_process):
2638         Don't let child change Emacs's values of forkin and forkout.
2639         Use a timer interrupt to unhang `close (forkin)'
2640         since it gets wedged if the child exited already.
2642 1985-07-08  Richard M. Stallman  (rms@mit-prep)
2644         * xdisp.c (redisplay_window):
2645         It was returning garbage.
2647         * keyboard.c, sysdep.c:
2648         Make stuff_char work correctly assuming its arg
2649         is the character to stuff, and always pass it the character.
2651 1985-07-07  Richard M. Stallman  (rms@mit-prep)
2653         * dispnew.c, cm.h, sysdep.c:
2654         ospeed must be short, not int.
2656         * dispnew.c (update_line):
2657         Protect against old being null in call to change_line_highlight.
2659         * dispnew.c (make_display_lines):
2660         Take account of fact that `free' clobbers the area freed.
2662         * buffer.c (SefBfp):
2663         Don't check c->major_mode if c is zero.
2665         * lisp.h, m-*.h:
2666         EXPLICIT_SIGN_EXTEND controls whether to define XINT using shifts.
2668 1985-07-05  Richard M. Stallman  (rms@mit-prep)
2670         * cmds.c (newline):
2671         Make it REALLY do auto-filling.
2673         * term.c (term_init):
2674         Turn on must_write_spaces for Concepts.
2675         Append \E^G! (i/d char within line) to `ti' string for Concepts.
2677         * dispnew.c (update_line):
2678         If need to do clear-eol but text reaches to right margin,
2679         clear before outputting the last character of text.
2681         * cm.h, term.c:
2682         Define Wcm.cm_losewrap, which says that reaching right margin
2683         has undefined results.  Turn this on for supdup terminals.
2685 1985-07-04  Richard M. Stallman  (rms@mit-prep)
2687         * dispnew.c (update_line):
2688         If want to insert chars early in line and delete chars late in line,
2689         do the deletion first.
2691         * dispnew.c (update_screen):
2692         Round outq down, not to nearest second, to get sleep time.
2694 1985-07-03  Richard M. Stallman  (rms@mit-prep)
2696         * term.c (term_init):
2697         Was storing "dc" string in wrong place.
2699         * term.c (ins_del_lines):
2700         On telerays, indicate that cursor is left in column 0.
2702         * dispnew.c (line_hash_code):
2703         Make line be null-terminated.
2705         * dispnew.c (direct_output_for_insert):
2706         Make line remain null-terminated.
2708 1985-07-02  Richard M. Stallman  (rms@mit-prep)
2710         * window.c (window_loop, case 5):
2711         Change < to > so get-largest-window gets largest, not smallest.
2713         * term.c (ins_del_line):
2714         Don't pass negative length arg to bzero, for chars_wasted.
2716         * editfns.c (init_editfns):
2717         In user full name, discard stuff starting with first comma if any.
2718         Change names of static structure: now user_real_name and
2719         user_full_name.
2720         Clean up AMPERSAND_FULL_NAME code a little.
2722 1985-07-01  Richard M. Stallman  (rms@mit-prep)
2724         * minibuf.c (minibuffer-complete-word):
2725         Fix case of Space in filename, where front of minibuffer
2726         gets deleted by completion.
2728         * Gross rewrite of display code.  No Gosling code left.
2729         Files fixedpoint.* and display.* and Trm*.* flushed.
2730         New files term.c, scroll.c, termhooks.h, termopts.h,
2731         and termchar.h.  Many changes in dispnew.c.
2733         * keyboard.c: Make stop_character not static.
2735 1985-06-26  Richard M. Stallman  (rms@mit-prep)
2737         * xdisp.c (try_window_id):
2738         If C-k is done at end of next-to-last line,
2739         this fn updates window_end_vpos and cannot leave
2740         window_end_pos nonnegative (it is zero, in fact).
2741         If display is preempted before lines are output,
2742         this is inconsistent.  Fix by setting
2743         blank_end_of_window to nonzero.
2745 1985-06-25  Richard M. Stallman  (rms@mit-prep)
2747         * cmds.c (Fnewline):
2748         Call the auto fill hook if appropriate.
2750         * xdisp.c (try_window_id):
2751         If dot is found by compute_motion after xp, record that
2752         permanently.  If display_text_line sets dot position wrong
2753         (case where like is killed, dot is at eob and that line
2754         is not displayed), detect and set it again in final compute_motion.
2756         * display.c, dispnew.c, sysdep.c, xdisp.c:
2757         Rewrite UpdateScreen (now update_screen),
2758         PrintM (now print_scrolling) and init_display;
2759         all vestiges of Gosling code gone.  They are now in dispnew.c.
2760         Some changes in how screen_garbaged is handled;
2761         work now done in Fredraw_display.
2762         Minor changes in InitDsp and in minibuf.
2764         * TrmAmb.c: Flushed.
2765         * Trm*.c: tt.t_init routine now passed no arguments.
2767 1985-06-23  Richard M. Stallman  (rms@mit-prep)
2769         * display.c: Include sys/ioctl.h so conditionals work right.
2771 1985-06-22  Richard M. Stallman  (rms@mit-prep)
2773         * doprnt.c: Flush extra increment of fmt for %%.
2775         * search.c (replace-match):
2776         Test of prevc was backwards in determining value for case_action.
2778         * TrmTERM.h (wipeline):
2779         Update curY and curX when ESC S is sent to Teleray.
2780         * TrmTERM.h (TrmTERM):
2781         Turn off use of LF on Teleray.
2783         * process.c (pty): Don't turn on FIONBIO.
2785 1985-06-18  Richard M. Stallman  (rms@mit-prep)
2787         * process.c (create_process):
2788         Make pty terminal the controlling terminal of the child.
2790         * fileio.c: Replace %1 with %s in various interactive strings.
2791         I wonder why they said "%1", and whether that ever worked.
2793         * process.c (change_msgs):
2794         Advance dot if at dot is at end; otherwise don't change dot.
2796         * search.c (replace-match):
2797         Fix bug in case preservation by initializing `last' for final loop.
2799 1985-06-17  Richard M. Stallman  (rms@mit-prep)
2801         * sysdep.c: New file containing interfaces to system-dependent
2802         kernel entries and libraries.
2804         * aux.c, dsp.c: Files eliminated.
2806         * m-dual68.h: m- file for Duals running unisoft port.
2808         * s-uniplus5.0.h: s- file for unisoft port of sys V rel 0.
2809         * s-uniplus5.2.h: s- file for unisoft port of sys V rel 2.
2811         * syntax.c: Eliminate find-line-comment and find-line-comment-body.
2812         Lisp code should use comment-start-skip to find comments.
2814 1985-06-15  Richard M. Stallman  (rms@mit-prep)
2816         * TrmTERM.c:
2817         Suppress use of ^M on telerays.  Know that ins line
2818         leaves cursor in column 0 on telerays.
2819         Don't decrement width for :am: terminals; this is an experiment.
2821 1985-06-14  Richard M. Stallman  (rms@mit-prep)
2823         * TrmTERM.c (TrmTERM):
2824         Override termcap's so and sg for telerays (xt is set).
2826         * display.c (hashline):
2827         Don't ignore trailing spaces if tt.t_needspaces is set.
2828         May fix C100 lossage.
2830         * Various files: Minor changes for system V.
2832         * disp_extern.h: Rename as dispextern.h.
2834         * commands.h (INTERACTIVE):
2835         Be false in batch mode.
2837         * aux.c:
2838         New file, containing system-dependent subroutines.
2840         * keyboard.c:
2841         Use new subroutines get_input_pending, stuff_char,
2842         discard_tty_input, in aux.c for now.
2844         * display.c (term_init):
2845         Use new subroutine init_baud_rate; avoid direct use of gtty.
2847         * callproc.c:
2848         Use new subroutines wait_without_blocking, setpgrp_of_tty,
2849         child_setup_tty, set_exclusive_use.
2851         * keyboard.c (EchoThem):
2852         Process quits only if `waiting' is set.
2854 1985-06-12  Richard Mlynarik  (mly@mit-prep)
2856         * minibuf.c, callint.c, read.c, mocklisp.c:
2857         New function read-from-minibuffer does all you could ever want.
2858         read-minibuffer, eval-minibuffer, read-string take second optional
2859         initial-contents arg.  read-input now a synonym for read-string.
2861         * keymap.c, callint.c, minibuf.c, fns.c, commands.h:
2862         Rename MinbufLocalMap to Vminibuffer_local_map, etc.
2863         Rename minibuf-local-{,-ns,-completion,must-match}map,
2864         and DefLispVar them (document even!).
2865         => New lisp variables minibuffer-local-map, minibuffer-local-ns-map,
2866         minibuffer-local-completion-map, minibuffer-local-must-match-map.
2868 1985-06-12  Richard M. Stallman  (rms@mit-prep)
2870         * keymap.c:
2871         Supply missing defsubr of keymapp.
2873 1985-06-11  Richard M. Stallman  (rms@mit-prep)
2875         * callint.c, editfns.c, doprnt.c:
2876         Use new function doprnt instead of _doprnt.
2878 1985-06-10  Richard M. Stallman  (rms@mit-prep)
2880         * TrmC100.c: Do termscript output.
2882 1985-06-10  Richard Mlynarik  (mly@mit-prep)
2884         * print.c, lisp.h, buffer.c
2885         New function prin1-to-string.
2886         (Needs an initialization done in buffer.c.)
2888 1985-06-10  Richard M. Stallman  (rms@mit-prep)
2890         * TrmTERM.c:
2891         Fix interaction of XTflag with SGnum (telerays):
2892         Don't put SEstr on most lines; special hair
2893         to erase SOstr when necessary.
2895         * keyboard.c:
2896         Clear Vquit_flag in read_key_sequence, not in get_char.
2897         This makes it possible to quit out of y-or-n-p again.
2899 1985-06-10  Richard Mlynarik  (mly@mit-prep)
2901         * dired.c (file_name_completion)
2902         Check Vquit_flag each time around and quit if requested.
2904 1985-06-10  Richard M. Stallman  (rms@mit-prep)
2906         * minibuf.c: Use Tab for completion, not ESC.
2908         * unexec.c: Round bss_start up to page bndry.
2910 1985-06-09  Richard M. Stallman  (rms@mit-prep)
2912         * keyboard.c (kbd_buffer_store_char):
2913         Call interrupt_signal for every C-g, even while waiting.
2915         * keyboard.c (input_available_signal):
2916         If C-g seen, ignore rest of chars already available.
2918         * keyboard.c (quit_throw_to_get_char):
2919         Don't clear Vquit_flag.  Let Lisp program see quit-flag set.
2921 1985-06-08  Richard M. Stallman  (rms@mit-prep)
2923         * various files:
2924         Make functions called by internal_with_output_to_temp_window
2925         all return Lisp_Object.
2927         * bytecode.c (case Bdup):
2928         PUSH (TOP) loses due to invalid assumption about where
2929         autoincrement gets done.
2931         * read.c (read_vector):
2932         Pass make_pure_vector an int, as it expects, not a Lisp_Object.
2934 1985-06-07  Richard Mlynarik  (mly@mit-prep)
2936         * buffer.c:
2937         Documentation fixes.
2939 1985-06-07  Richard M. Stallman  (rms@mit-prep)
2941         * TrmTERM.c:
2942         HLflags is now a three-way flag: 1 => line has SOstr,
2943         2 => line has SEstr, 0 => line has neither.
2944         State 0 results from clearing screen, ins/del line.
2946         * dispnew.c (preserve_other_columns):
2947         If copying beginning of line from other window,
2948         don't increase length of line beyond last column copied.
2950         * keyboard.c:
2951         Eliminate `executing' flag.
2952         Quit now always sets Vquit_flag; input code tests it.
2954 1985-06-06  Richard Mlynarik  (mly@mit-prep)
2956         * doc.c (Fdocumentation):
2957         Handle sparse keymaps (lists whose car is `keymap')
2958         by way of canned string.
2960 1985-06-06  Richard M. Stallman  (rms@mit-prep)
2962         * keyboard.c (kbd_buffer_get_char):
2963         Keep doing gobble_input and waiting, until kbd_count becomes nonzero.
2965 1985-06-05  Richard M. Stallman  (rms@mit-prep)
2967         * dired.c (file-name-completion, file-name-all-completions):
2968         Make these functions share most of their code.
2969         Use two passes: first try all filenames that don't end in an
2970         "ignored extension" and, if that yields nothing, try all filenames.
2972         * doc.c (Fdocumentation):
2973         Handle keyboard macros (symbols with strings as definitions)
2974         with a canned string.
2976 1985-06-05  Richard Mlynarik  (mly@mit-prep)
2978         * dired.c (file-name-completion)
2979         Spazz comparing against completion-ignored-extensions (boole!eggert)
2980         That was no spazz, that was a feature - rms.
2982 1985-06-05  K. Shane Hartman  (shane@mit-prep)
2984         * cmds.c (end-of-line): Fix documentation.  Claimed it moved to
2985         beginning of line.
2987         * buffer.c (fill-column): Fix typo in documentation.
2989 1985-06-04  Richard M. Stallman  (rms@mit-prep)
2991         * bytecode.c:
2992         Make Bread_char check for quit before finishing.
2993         A quit is likely to requested during the read_char.
2995 1985-06-04  Richard Mlynarik  (mly@mit-prep)
2997         * dired.c (file-name-completion, file-name-all-completions)
2998         Append "/" to names of directories.
3000 1985-06-04  K. Shane Hartman  (shane@mit-prep)
3002         * minibuf.c (Vminibuffer_help_form):
3003         Change the lisp name to be minibuffer-help-form rather than
3004         Vminibuffer-help-form.
3006 1985-06-02  Richard M. Stallman  (rms@mit-prep)
3008         * config.h, s-*.h:
3009         Eliminate CBREAK_INPUT and FRONT_END_PROCESS;
3010         INTERRUPT_INPUT just controls default for interrupt_input.
3012         * dsp.c, keyboard.c, xdisp.c:
3013         Use variable interrupt_input rather than switch INTERRUPT_INPUT.
3014         Don't change stopc/startc if flow_control is nonzero.
3016         * dsp.c, display.c:
3017         Change OldTchars => old_tchars, etc.
3018         Initialize new tchars from old tchars.
3019         Move setting window to 0 from InitDsp to term_init.
3021         * dispnew.c (set-input-mode):
3022         New function to set interrupt_input and flow_control.
3024         * read.c (read_escape):
3025         \ followed by one or two digits unreads following char.
3027         * TrmTERM.c (flash):
3028         If no bell defined, output C-g.
3030         * minibuf.c (read_minibuf, read_minibuf_unwind):
3031         Define Vminibuffer_help_form.
3032         Bind help_form to that inside minibuf.
3034         * callproc.c, doc.c:
3035         Make Vexec_directory end in a slash.
3037         * process.c (wait_reading_process_input):
3038         Remove debugging trap.  It showed that the select had
3039         returned, there was input available, it had not
3040         been read by interrupt level but FASYNC was set.
3041         (Kernel bug).
3043         * keyboard.c (kbd_buffer_get_char):
3044         If wait_reading_process_input returns and kbd_count still 0,
3045         gobble the buffered input.
3047 1985-06-01  Richard M. Stallman  (rms@mit-prep)
3049         * dispnew.c (sit-for):
3050         Gobble any pending input before calling wait_reading_process_input.
3052         * process.c (wait_reading_process_input):
3053         Dump core if `select' says input available and did not
3054         already get a SIGIO interrupt for it.
3056         * emacs.c (main):
3057         Detect -batch even when it's the only arg.
3059         * minibuf.c (read_minibuf):
3060         Don't call UpdateScreen if in batch mode.
3062         * keyboard.c:
3063         Use sigsetmask to prevent recursive SIGIO handling
3064         rather than kill, as previous change caused
3065         kbd_buffer_get_char to return -1 mysteriously.
3066         Change kbd_buffer_get_char never to return -1;
3067         kill emacs on eof in batch mode, abort on eof non-batch.
3069         * keyboard.c:
3070         Eliminate dribble_count.  fflush (dribble) after each char.
3072         * undo.c, undo.h:
3073         Define Uunmod; record when buffer becomes "modified"
3074         and clear out "modified" if undo past there.
3076         * undo.c (RecordDelete):
3077         Correct the condition for combining with previous delete.
3079         * keyboard.c (kbd_buffer_get_char):
3080         Actually cause SIGIO if have unread input.
3082         * display.c, TrmTERM.c:
3083         Do fflush(termscript) in UpdateScreen, not in TrmTERM.
3085 1985-05-31  Richard M. Stallman  (rms@mit-prep)
3087         * TrmVT100.c: Generate termscript output.
3089         * dsp.c: Define request_sigio, unrequest_sigio.
3091         * xdisp.c (DoDsp):
3092         Unrequest sigio on entry, rerequest on exit.
3093         Thus, no interrupts during redisplay.
3095         * keyboard.c (detect_input_pending):
3096         Check FIONREAD even if INTERRUPT_INPUT.
3098         * m-*.h:
3099         Add macros LOAD_AVE_TYPE and LOAD_AVE_CVT.
3101         * fns.c (load-average): Use those two.
3102         Makes it work on suns.
3104         * keyboard.c (kbd_buffer_get_char):
3105         #ifndef INTERRUPT_INPUT, always read at least 1 character.
3107 1985-05-30  Richard M. Stallman  (rms@mit-prep)
3109         * display.c (UpdateScreen):
3110         Allow preemption at beginning if already input avail.
3112         * keyboard.c (EchoKeys):
3113         If 1st char is help-char, echo it specially verbosely.
3115         * keymap.c (access_keymap):
3116         If nothing in keymap under specified character code,
3117         try converting to lower case and look again.
3119         * data.c (listp, nlistp, eq, null):
3120         Use EQ or NULL rather than old slow comparisons.
3122         * data.c (symbol-function, symbol-value):
3123         Pass Qboundp or Qfboundp as extra info when signal void-symbol.
3125 1985-05-29  Richard M. Stallman  (rms@mit-prep)
3127         * fileio.c (add-name-to-file):
3128         If no query or error about new name existing, delete it
3129         to avoid system error later.
3131         * buffer.c (generate-new-buffer):
3132         Remove duplicate declaration of local var `name'.
3134         * Makefile:
3135         Assume distribution contains paths.h.dist and config.h.dist.
3136         Copy them into paths.h and config.h if those don't exist;
3137         warn user if those exist but are older.
3139         * dispnew.c (Ding):
3140         If -batch mode, just output ^G.
3142         * cm.c (mytgoto):
3143         Eliminate "magic" treatment of \0 and \004.
3144         Flush cmevalcost, cmput; use evalcost, put.
3146         * TrmTERM.c: Always set DontSend to zero.
3148         * alloca.s:
3149         Add pyramid version of alloca, and _longjmp and _setjmp.
3151         * data.c, eval.c, fns.c, read.c, window.c:
3152         To get around Pyramid C compiler bugs:
3153         Eliminate many constructs return FOO = BAR;
3154         Eliminate some cases of calling function computed
3155         by conditional expression.
3157         * dired.c (directory-files):
3158         Avoid making double slash if spec'd directory ends in slash.
3160         * callint.c (case 'b'):
3161         Don't allow a minibuffer to be the default buffer.
3163 1985-05-28  Richard Mlynarik  (mly@mit-prep)
3165         * minibuffer.c (read_minibuf)
3166         Added variable enable-recursive-minibuffers
3167         (enable_recursive_minibuffers) so that Real Men may confuse
3168         themselves.  (Some commands such as c-h f can also use it) (This
3169         is not quite the right thing for commands to bind to read their
3170         arguments since it enables arbitrary recursion, not just one
3171         level to read args.)
3173         * buffer.c
3174         Wrote generate-new-buffer --- like gentemp for buffer names.
3175         Rewrote create-file-buffer into lisp code in lisp/files.el.
3177 1985-05-27  Richard M. Stallman  (rms@mit-prep)
3179         * crt0.c:
3180         Make each machine type use completely separate code.
3181         Put in code for pyramid.
3183         * display.h, Trm.h, disp_extern.h:
3184         Move InverseVideo to Trm.h, rename to inverse_video.
3185         Rename VisibleBell to visible_bell.
3186         Move ScreenLength and ScreenWidth to Trm.h.
3187         Rename ScreenGarbaged to screen_garbaged.
3189         * TrmVT100.c:
3190         Eliminate VT100_INVERSE.  People can do this with setq.
3192         * fixedpoint.c:
3193         Use new variable FPdebug instead of RDdebug.
3194         Include only Trm.h and fixedpoint.h, not display.h.
3196         * display.c:
3197         IDdebug and RDdebug are mentioned in this file only.
3199         * xdisp.c (decode_mode_spec):
3200         Display "Narrow" after minor modes if buffer has any clipping.
3202         * keyboard.c (command_loop_1):
3203         Kill Emacs on end of file only if not executing a macro.
3205 1985-05-26  Richard M. Stallman  (rms@mit-prep)
3207         * display.h, Trm.h:
3208         Move VisibleBell and baud_rate to Trm.h.
3209         Define tt.t_padspeed, minimum speed at which padding needed (pb#).
3211         * Trm*.c, dispnew.c (Ding):
3212         tt.t_flash is always set; it flashes the screen or beeps using `bl='.
3214         * TrmTERM.c:
3215         Use `IC', `DC', `rp' and `bl' termcap strings when appropriate.
3216         No longer look for nonstandard `nn' or `rn' flags or `ds' string.
3217         Do not assume ^M and ^J can be used unless `cr' or 'do' or `nl'
3218         says so.
3219         ?? Make second arg to tputs always number of LINES below cursor
3220         because the termcap documentation says so.  Is this right ??
3222 1985-05-24  Richard M. Stallman  (rms@mit-prep)
3224         * keymap.c (push_key_description):
3225         Use DEL for 0177, RET for 015, LFD for 012, TAB for 011, SPC for 040.
3227         * search.c (search_buffer):
3228         For n < 0 re-search, test search_regs.end[0] vs startpos, not pos.
3230         * callint.c (call-interactively):
3231         If interactive spec is a list, use num_input_chars
3232         to tell whether it read args from the command input.
3234         * keyboard.c (get_char):
3235         Increment new variable num_input_chars on each call.
3237         * All .h files: Make all variable definitions `extern'.
3239         * buffer.c, window.c, xdisp.c, display.c, dispnew.c,
3240         * syntax.c, fixedpoint.c: Put in one non-extern definition
3241         for each variable that used to have them only in the .h files.
3243         * keyboard.c:
3244         Refs to Cant1WinOpt should say windows_or_buffers_changed.
3246         * buffer.c (kill-all-local-variables):
3247         Don't clobber a variable currently set up for some other buffer.
3248         Was losing the other buffer's recent setq's if the other
3249         buffer had the same variable local.
3251 1985-05-23  Richard M. Stallman  (rms@mit-prep)
3253         * buffer.c (list_buffers_1):
3254         Put back the lost column in the entries
3255         rather than removing it from the header.
3257 1985-05-23  Richard M. Stallman  (rms@mit-prep)
3259         * xdisp.c (decode_mode_spec):
3260         Display "Abbrev" if abbrev_mode is set.
3261         Don't clobber past end of tbuf.
3263         * keyboard.c (kbd_buffer_get_char):
3264         If noninteractive, read from stdin.
3265         (open-dribble-file): Take filename as argument.
3266         (command_loop_1): On end of file, call kill-emacs.
3268 1985-05-22  Richard M. Stallman  (rms@mit-prep)
3270         * window.c (save_window_restore):
3271         Set windows_or_buffers_changed.
3273         * buffer.c (list_buffers_1):
3274         Print % not R for read-only buffers.
3276         * cmds.c (SelfInsert):
3277         !NULL => NULL testing buffer read onliness for abbrev expansion.
3279         * eval.c (interactive-p):
3280         Return nil if called within expression being evalled
3281         by a built-in C function such as eval-region.
3283 1985-05-22  K. Shane Hartman  (shane@mit-prep)
3285         * config.h, TrmXTERM.c, display.c
3286         Change define for XWINDOW to XVSWINDOW because XWINDOW
3287         is defined as a macro in lisp.h.
3289 1985-05-22  Richard M. Stallman  (rms@mit-prep)
3291         * print.c (printchar, strout):
3292         Output minibuffer chars to stdout if noninteractive.
3294         * xdisp.c (message, message1):
3295         Noninteractively, output newline if previous output was from print.
3297         * keyboard.c (cmd_error):
3298         If noninteractive, force out error message at end.
3300         * keyboard.c (get_char):
3301         Fix bugs in handling help_char:
3302         do a redisplay after restoring window configuration;
3303         clear NextK after reading a space.
3305         * buffer.c (other-buffer):
3306         Init notsogood to nil so don't return garbage value.
3308         * buffer.c (list_buffers_1):
3309         Put back missing space before each buffer name.
3311         * buffer.c (SetBfp):
3312         New code to dump core when paragraph-start gets its global value
3313         in a buffer in Lisp mode.
3315         * TrmXTERM.c: New file.  Used for interface to
3316         MIT's `X' window system.
3318 1985-05-22  Richard Mlynarik  (mly@mit-prep)
3320         * buffer.c (list_buffers_1):
3321         Made list-buffers print "R" if buffer read-only.
3322         (No change is needed to lisp/buff-menu.el.)
3324 1985-05-22  Richard M. Stallman  (rms@mit-prep)
3326         * keyboard.c (get_char):
3327         Use (in effect) save-window-excursion to flush the window
3328         made by or for the help-form.
3329         * minibuf.c:
3330         Flush remove_help_window and its DefBoolVar.
3331         * lisp.h:
3332         Flush obsolete externs for remove_help_window and flushhelp.
3334         * config.h: Increase maximum screen dimensions to 300x300.
3335         Define XWINDOW flag (off by default).
3337         * Trm.h: Add tt.t_socketinput slot, and t_ReadSocket slot.
3338         * dsp.c, keyboard.c: Code for using those slots.
3339         * display.c: Install code for XVSWINDOW.
3341         * dispnew.c (sleep-for): Flush spurious reference to
3342         nonexistent variable time_limit.
3344 1985-05-21  Richard Mlynarik  (mly@mit-prep)
3346         * The documentation for substitute-command-keys was fazed out by
3347         its own hairy heuristics!  Moby quoting (past the c compiler, and
3348         then past substitute-command-keys) added.
3349         People should be careful of this.  Also, hacks which make
3350         printed documentation out of doc strings need to know about this
3351         cruft.
3353 1985-05-21  Richard M. Stallman  (rms@mit-prep)
3355         * TrmTERM.c, dispnew.c, cm.c:
3356         open-termscript opens a termscript file,
3357         into which are written a copy of all characters (except padding)
3358         sent to the terminal.
3360         * Makefile:
3361         Recompute DOCSTR file only if other things have changed.
3363 1985-05-20  Richard M. Stallman  (rms@mit-prep)
3365         * keyboard.c (command-execute):
3366         Use do_autoload.
3368         * data.c (car, cdr, car-safe, cdr-safe):
3369         Open code them.  Flush carcdr and car_1.
3371         * eval.c:
3372         Define do_autoload to autoload a function and barf if that
3373         did not define it.  Use this in eval, apply, funcall.
3374         Make Fautoload do nothing if function is already defined.
3375         Open code the loops that trace function definitions of symbols.
3377 1985-05-19  Richard M. Stallman  (rms@mit-prep)
3379         * buffer.c, window.c:
3380         Change algorithm for reordering Vbuffer_alist:
3381         select-window now calls record_buffer.
3382         other-buffer now prefers buffers not visible in any window.
3383         bury-buffer, which puts a buffer at the end of the list,
3384         is now defined.
3386         * keyboard.c (get_char):
3387         Make first char of a command go into keybuf
3388         even if it is being reread.
3389         Make all chars go into keybuf if coming from a macro.
3391         * process.c (make_process):
3392         Fix bug where incremented-for-uniqueness name wasn't really used.
3394 1985-05-17  Richard M. Stallman  (rms@mit-prep)
3396         * undo.c:
3397         Fix bug of reinserting/replacing undone chars
3398         wrapping around wrong at end of undo buffer.
3399         Use tembuf to handle properly a Uchange
3400         of length > half the undo buffer.
3402 1985-05-16  Richard M. Stallman  (rms@mit-prep)
3404         * window.c (set-window-start):
3405         Accept third arg NOFORCE meaning don't set w->force_start.
3407         * indent.c (compute_motion):
3408         Clear tab_offset when scanning past a newline.
3410         * lisp.h, bytecode.c: Define Qbytecode.
3411         * eval.c: Fix interactive-p to look past a call to `bytecode'.
3412         Makes interactive-p work in compiled code.
3414         * xdisp.c:
3415         Supply missing taboffset arg to display_text_line from DoDsp.
3416         Fixes bug that inserting a character could shift line sideways.
3418         * display.c:
3419         Remove spurious * in setting terminal_driver.
3421         * lisp.h:
3422         Remove some obsolete externs for symbols that no longer exist.
3424         * dispnew.c:
3425         Define send-string-to-terminal.
3427         * TrmTERM.c, TrmVT100.c:
3428         Turn on alternate keypad on entry, turn off on exit.
3430 1985-05-16  Richard Mlynarik  (mly@mit-prep)
3432         * fileio.c: Added optional third arg ok-if-exists to
3433         rename-file, make-symbolic-link, add-name-to-file and copy-file.
3434         If the destination filename exists, then if ok-if-exists
3435         is non-nil it is silently bashed; else if the function was
3436         called interactively the user is queried as to whether s/he
3437         wants to bash the file; otherwise (ok-if-exists nil, non-interactive)
3438         a  file-already-exists  error is signaled.
3440         * window.c: Made get-window-buffer return nil if get-buffer of
3441         its arg returns nil, rather than erring.
3443 1985-05-14  Richard M. Stallman  (rms@mit-prep)
3445         * dispnew.c, display.c:
3446         Function scroll_max_lines_saved returns # lines in common
3447         between PhysScreen and DesiredScreen.
3448         UpdateScreen skips i/d calc on big window, fast screen
3449         when there are too few lines in common.
3451 1985-05-13  Richard M. Stallman  (rms@mit-prep)
3453         * indent.c:
3454         Fix cursor position calculation for continued tabs.
3455         New tab_offset argument to compute_motion.
3457         * xdisp.c:
3458         Make display of continued tabs work.
3460         * Makefile:
3461         Do inc-version in a separate invocation of temacs
3462         to make the dumped xemacs smaller.
3464         * eval.c:
3465         Put star in front of XSUBR (fun)->function where it is being called.
3467         * alloc.c:
3468         Mark buffers when pointers to them are found,
3469         like all other Lisp object types.
3471         * buffer.h, buffer.c:
3472         Created chain `all_buffers' containing all existing buffers
3473         not yet reclaimed by gc, including dead buffers.
3475         * read.c:
3476         Fix up register declarations.
3478         * emacs.c, dsp.c, xdisp.c:
3479         Define -batch switch: do no redisplay, don't change terminal modes.
3480         Lisp variable `noninteractive' is non-nil in this mode.
3482         * syntax.c:
3483         Made most scanning loops turn on immediate_quit.
3485         * eval.c:
3486         Fsignal clears immediate_quit.
3488 1985-05-12  Richard M. Stallman  (rms@mit-prep)
3490         * cmds.c: Modified `newline' to insert before an existing
3491         newline before dot.  This produces better redisplay.
3493         * xdisp.c: Fixed bug that modifying buffer displayed in two windows
3494         failed to redisplay both mode lines with stars.
3496         * xdisp.c (try_window_id): If scrolling upward and changed text is empty
3497         scroll up all the lines that fit below bp.
3499         * xdisp.c: Introduce num_contin, to display tabs right in contin. lines.
3501         * doc.c: Define substitute-command-keys, using crl@purdue's code.
3502         Make `documentation' call it.
3504         * eval.c, fns.c, bytecode.c: Put in register decls for Lisp_Objects.
3505         Saved 2500 bytes of object code.
3507 1985-05-11  Richard M. Stallman  (rms@mit-prep)
3509         * editfns.c: Put in code for & in fullname,
3510         under AMPERSAND_FULL_NAME flag.
3512         * lisp.h: Install NO_UNION_TYPE flag in lisp.h.
3513         This means XMARKBIT can no longer be on left side of =.
3514         New macros XMARK and XUNMARK and XSETMARKBIT are used instead.
3516         * alloc.c, marker.c: Use XMARK, XUNMARK, XSETMARKBIT where needed.
3518         * TrmTERM.c: Ignore `xs' termcap flag.
3519         Always use the SEstr on sg >= 0 terminals.
3521         * minibuf.c: Don't allow entry to minibuffer
3522         while minibuffer is selected.
3524     Copyright (C) 1985-1986, 2001-2014 Free Software Foundation, Inc.
3526   This file is part of GNU Emacs.
3528   GNU Emacs is free software: you can redistribute it and/or modify
3529   it under the terms of the GNU General Public License as published by
3530   the Free Software Foundation, either version 3 of the License, or
3531   (at your option) any later version.
3533   GNU Emacs is distributed in the hope that it will be useful,
3534   but WITHOUT ANY WARRANTY; without even the implied warranty of
3535   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3536   GNU General Public License for more details.
3538   You should have received a copy of the GNU General Public License
3539   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.