(ibuffer-auto-update-changed): Use `frame-or-buffer-changed-p' to
[emacs.git] / lib-src / ChangeLog
blob5767b49aaed803c0dfa3aececc0f398527466fa7
1 2005-07-27  Juanma Barranquero  <lekktu@gmail.com>
3         * .cvsignore: Don't ignore fns-* and fns.el, which are no longer
4         generated.  Ignore also ctags.c and getopt.h.
6         * makefile.w32-in (clean): Delete getopt.h.
7         (getopt.h): New rule.
9 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
11         Merge gnulib getopt implementation into Emacs.
13         * Makefile.in (mostlyclean): Remove getopt.h, getopt.h-t.
14         (GETOPT_H): New macro, from gnulib.
15         (getopt.h): New rule, from gnulib.
16         (GETOPTOBJS): Now autoconfigured.
17         (GETOPTDEPS): getopt.h is now autoconfigured.
18         (getopt.o, getopt1.o): Depend on $(GETOPT_H), not ${srcdir}/getopt.h.
19         (getopt.o): Depend on ${srcdir}/gettext.h.
20         (movemail.o): Depend on $(GETOPT_H).
21         * getopt.c, getopt1.c: Sync from gnulib.
22         * getopt_.h, getopt_int.h, gettext.h: New files, from gnulib.
23         * getopt.h: Removed (now is getopt_.h).
25 2005-07-13  Ken Raeburn  <raeburn@gnu.org>
27         * pop.c: Don't include des.h (or variants thereof); krb.h will do
28         it.
29         (sendline): Add the \r\n to the line in a temporary buffer, and
30         write it all at once.
32 2005-07-04  Lute Kamstra  <lute@gnu.org>
34         Update FSF's address in GPL notices.
36 2005-06-13  Eli Zaretskii  <eliz@gnu.org>
38         * makefile.w32-in ($(DOC)): Fix last change.
40 2005-06-12  Eli Zaretskii  <eliz@gnu.org>
42         * makefile.w32-in ($(DOC)): Depend on make-docfile.exe,
43         temacs.exe, and the preloaded *.elc files.  This avoids
44         unnecessary dumping and DOC rebuilding.
46 2005-06-04  Eli Zaretskii  <eliz@gnu.org>
48         * ntlib.h (fileno): Don't define if already defined.
50 2005-05-25  Thien-Thi Nguyen  <ttn@gnu.org>
52         * yow.c (setup_yow): Use EXIT_FAILURE in case no separators found.
53         (yow): Use EXIT_FAILURE in case of memory error.
55 2005-05-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
57         * make-docfile.c (DIRECTORY_SEP): New macro.
58         (IS_DIRECTORY_SEP): Use it.
60 2005-03-18  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
62         * emacsclient.c: Avoid expansion of getcwd when defined as a macro.
64 2005-03-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
66         * make-docfile.c: Undo previous change.
68 2005-02-04  Andreas Schwab  <schwab@suse.de>
70         * movemail.c (fatal): Accept third parameter and pass down to
71         error.
72         (pfatal_with_name): Pass error string as format parameter instead
73         of as part of format string.
74         (pfatal_and_delete): Likewise.
75         (main): Adjust call to fatal.
76         (xmalloc): Likewise.
78 2005-01-29  Richard M. Stallman  <rms@gnu.org>
80         * movemail.c (popmail): Don't use Errmsg as format string.
82 2004-12-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
84         * make-docfile.c: Include stdlib.h even if WINDOWSNT is not
85         defined.
87 2004-12-15  Andreas Schwab  <schwab@suse.de>
89         * etags.c (main): Fix typo in conversion of LONG_OPTIONS from
90         preprocessing to compile time constant.
92 2004-11-17  Kim F. Storm  <storm@cua.dk>
94         * etags.c: Undo last change.
96 2004-11-09  Kim F. Storm  <storm@cua.dk>
98         * make-docfile.c (scan_c_file): Set defvarperbufferflag to
99         silence compiler.
101         * hexl.c (main): Init local var c to silence compiler.
103         * etags.c (main, consider_token, C_entries): Add misc switch
104         default targets to silence compiler.
106 2004-11-09  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
108         * makefile.w32-in (obj): Add all files (X and Mac) to doc so the
109         resulting DOC file can be used on Unix/Mac also.
111 2004-09-13  Francesco Potort\e,Al\e(B  <pot@gnu.org>
113         * etags.c (main): When relative file names are given as argument,
114         make them relative to the current working dir, rather than
115         relative to the output tags file, if the latter is in /dev.
117 2004-09-13  Francesco Potort\e,Al\e(B  <pot@gnu.org>
119         * etags.c [EXIT_SUCCESS, EXIT_FAILURE]: Define them when no
120         <stdlib.h> is available.
121         (enum sym_type): New st_C_attribute value for parsing
122         gcc's __attribute__.  Deleted st_C_typespec value.
123         (gperf, in_word_set): Use gperf 3, options changed.  Added the
124         __attribute__ keyword, removed all the st_C_typespec keywords,
125         changed attribute for Java to (C_JAVA & !C_PLPL).
126         (inattribute): New global bool, part of the C state machine.
127         (cblev): Identifier renamed to bracelev throughout.
128         (consider_token, C_entries): Numerous changes for making the
129         parser more robust and adding support for __attribute__.
131 2004-09-13  David A. Capello  <dacap@users.sourceforge.net>  (tiny change)
133         * etags.c: (Lua_suffixes, Lua_help, lang_names, Lua_functions):
134         Support the Lua scripting language <http://www.lua.org>.
136 2004-09-08  Francesco Potort\e,Al\e(B  <pot@gnu.org>
138         * etags.c: [LONG_OPTIONS]: make it TRUE (ifdef) or FALSE (ifndef)
139         for ease of use.
141 2004-07-17  Richard M. Stallman  <rms@gnu.org>
143         * emacsclient.c (quote_file_name): Pass COPY thru %s to output it.
145 2004-06-01  Juanma Barranquero  <lektu@terra.es>
147         * makefile.w32-in (obj): Add image.c.
149 2004-05-10  Thien-Thi Nguyen  <ttn@gnu.org>
151         * test-distrib.c (main): For failing cases, exit with
152         `EXIT_FAILURE'.
154 2004-05-08  Jason Rumney  <jasonr@gnu.org>
156         * makefile.w32-in (lisp1, lisp2): Split lisp to avoid long
157         command-lines.
159 2004-05-08  Thien-Thi Nguyen  <ttn@gnu.org>
161         * cvtmail.c: Throughout, replace 0 destined for `exit' arg
162         with `EXIT_SUCCESS'.  Likewise, replace 1 with `EXIT_FAILURE'.
163         (main): Use `EXIT_SUCCESS' or `EXIT_FAILURE' for return value.
165         * ebrowse.c, emacsclient.c, fakemail.c, hexl.c,
166         * make-docfile.c, movemail.c, profile.c, sorted-doc.c,
167         * test-distrib.c, update-game-score.c, yow.c: Likewise.
169 2004-05-08  Thien-Thi Nguyen  <ttn@gnu.org>
171         * Makefile.in (emacsclient${EXEEXT}): Use makefile var `version'.
173 2004-05-07  Thien-Thi Nguyen  <ttn@gnu.org>
175         * b2m.c (GOOD, BAD): Delete macros.  Throughout,
176         replace w/ `EXIT_SUCCESS' and `EXIT_FAILURE', respectively.
177         (main): Use `EXIT_SUCCESS' or `EXIT_FAILURE' for return value.
179         * etags.c: Likewise.
181 2004-05-03  Jason Rumney  <jasonr@gnu.org>
183         * makefile.nt: Remove.
185 2004-04-26  Eli Zaretskii  <eliz@gnu.org>
187         * make-docfile.c (IS_DIRECTORY_SEP): New macro.
188         (put_filename): Remove unused variable len.  Use IS_DIRECTORY_SEP
189         instead of a literal '/'.
191 2004-04-23  Juanma Barranquero  <lektu@terra.es>
193         * makefile.w32-in: Add "-*- makefile -*-" mode tag.
195 2004-04-17  Paul Eggert  <eggert@gnu.org>
197         * rcs2log (Help): Clarify wording of the usage message.
198         Problem reported by Alan Mackenzie in
199         <http://mail.gnu.org/archive/html/bug-gnu-emacs/2004-04/msg00188.html>.
201 2004-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
203         * make-docfile.c (xmalloc): Fix return type.
204         (put_filename): New fun.
205         (scan_file): Use it.
207 2004-03-09  Juanma Barranquero  <lektu@terra.es>
209         * grep-changelog: Changes to support ChangeLog.10+.
210         (main): Tidy up usage string.  Fix "Use of uninitialized value"
211         warning.  Set version to 0.2.  Parse the directory listing to get
212         any ChangeLog.n file, not just 1..9.
213         (header_match_p, entry_match_p, print_log, parse_changelog):
214         Remove Perl prototypes (their purpose is to help the parser, which
215         isn't needed here, not declare arguments).
216         (parse_changelog): Make --reverse faster on big batches by not
217         modifying the entries list.
219 2004-03-01  Juanma Barranquero  <lektu@terra.es>
221         * makefile.w32-in (obj): Add fringe.c.
223 2004-02-14  Paul Eggert  <eggert@twinsun.com>
225         * rcs2log: Work correctly if CVSROOT specifies :fork: or
226         :local: methods, or omits the colon between the hostname
227         and the path.  Allow :/ in repository path, since CVS does.
228         Fix typo: "pository" should be set from $CVSROOT, not $repository.
229         This fixes a bug reported by Wolfgang Scherer in
230         <http://mail.gnu.org/archive/html/bug-gnu-emacs/2004-02/msg00085.html>,
231         along with some related bugs I discovered by inspecting how
232         CVS itself parses $CVSROOT.
234 2004-02-04  J\e,bi\e(Br\e,bt\e(Bme Marant  <jmarant@nerim.net>  (tiny change)
236         * emacsclient.c (decode_options): Fix handling of alternate editor.
238 2004-01-27  Stefan Monnier  <monnier@iro.umontreal.ca>
240         * emacsclient.c (main): Don't use the hostname in the socket name.
241         Look for relative socket names in the /tmp dir rather than in cwd.
243 2004-01-24  Richard M. Stallman  <rms@gnu.org>
245         * emacsclient.c (main): Restore errno from saved_errno,
246         so the error message comes from socket_status.
248 2004-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
250         * emacsclient.c (main): Stop if socket name too long.
251         Only try su-fallback if the socket name was not explicit.
252         Check socket name length in su-fallback case as well.
254 2004-01-08  Andreas Schwab  <schwab@suse.de>
256         * emacsclient.c (main): Save errno from socket_status.
258 2004-01-04  Andreas Schwab  <schwab@suse.de>
260         * emacsclient.c (main): Fix socket name when using another user.
262 2003-12-27  Paul Eggert  <eggert@twinsun.com>
264         * rcs2log (rlog_options): Append -rbranchtag if CVS/Tag indicates
265         a tag, and if the user has not specified an rlog option.
266         Adapted from a suggestion by Martin Stjernholm in
267         <http://mail.gnu.org/archive/html/bug-gnu-emacs/2003-07/msg00066.html>.
268         (Copyright): Update to 2003.
270 2003-12-24  Thien-Thi Nguyen  <ttn@gnu.org>
272         * make-docfile.c (main): For return code, no longer special-case VMS.
273         Instead, use `EXIT_SUCCESS' and `EXIT_FAILURE' from stdlib.h.
275 2003-09-28  Andreas B\e,A|\e(Bsching  <crunchy@tzi.de>  (tiny change)
277         * emacsclient.c (quote_file_name): Print the result instead of
278         returning it.  Fix the return type accordingly.
279         (main): With --eval, if no file name, read from stdin.
280         Quote file names.
282 2003-09-10  Richard M. Stallman  <rms@gnu.org>
284         * emacsclient.c (main): Use socket_name.
286 2003-09-10  Andreas B\e,A|\e(Bsching  <crunchy@tzi.de>  (tiny change)
288         * emacsclient.c (socket_name): New variable.
289         (longopts, decode_options, print_help_and_exit):
290         Handle --socket-name argument.
292 2003-08-25  Takaaki Ota  <Takaaki.Ota@am.sony.com>  (tiny change)
294         * etags.c (consider_token): Check C++ `operator' only when the
295         token len is long enough.
297 2003-08-20  Dave Love  <fx@gnu.org>
299         * Makefile.in: Remove obsolete references to alloca.
301 2003-07-29  Ken Brush  <ken@wirex.com>
303         * emacsclient.c (main)
304         * etags.c (suggest_asking_for_help)
305         * movemail.c (main): Fix having macros in a printf statement.
307 2003-05-31  Juanma Barranquero  <lektu@terra.es>
309         * makefile.w32-in (lisp): Fix references to byte-run.el,
310         float-sup.el and map-ynp.el, which are now in emacs-lisp.
312 2003-05-22  Dave Love  <fx@gnu.org>
314         * update-game-score.c (difftime) [!HAVE_DIFFTIME]: Define.
315         (strerror) [!HAVE_STRERROR && !WINDOWSNT]: New.
317 2003-05-20  Dave Love  <fx@gnu.org>
319         * movemail.c: Check HAVE_LIBLOCKFILE like HAVE_LIBMAIL.
321         * Makefile.in [HAVE_LIBLOCKFILE]: Define LIBS_MAIL=-llockfile.
323 2003-04-27  Oliver Scholz  <alkibiades@gmx.de>
325         * update-game-score.c (read_scores): Fix corruption of scores on
326         read.
328 2003-04-12  Stefan Monnier  <monnier@cs.yale.edu>
330         * emacsclient.c (main): Use new safe location for socket.
332 2003-03-12  Tom Tromey  <tromey@redhat.com>
334         * emacsclient.c (print_help_and_exit): Print to stdout.
335         Exit successfully.  Added some blank lines for readability.
336         (decode_options): Don't call print_help_and_exit in default case.
337         Print version information to stdout.
338         (main): Don't call print_help_and_exit.
340 2003-02-15  Richard M. Stallman  <rms@gnu.org>
342         * cvtmail.c: Cast result of malloc and realloc.
343         Don't include stdlib.h, becuase config.h does.
344         (malloc, realloc): Declarations deleted.
346         * yow.c (yow): Cast result of malloc and realloc.
347         (malloc, realloc): Declarations deleted.
349 2003-02-11  Juanma Barranquero  <lektu@terra.es>
351         * makefile.w32-in (lisp): Add malayalam.el and tamil.el.
353 2003-02-08  Andreas Schwab  <schwab@suse.de>
355         * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
356         instead of the substitution.
358 2003-02-04  Richard M. Stallman  <rms@gnu.org>
360         * update-game-score.c (push_score, read_scores): Cast values
361         of malloc and realloc.
362         (main, lock_file): Avoid assignment inside if.
364 2003-01-31  Joe Buehler  <jhpb@draco.hekimian.com>
366         * Makefile.in: Use @EXEEXT@ for Cygwin.
368 2003-01-21  Dave Love  <fx@gnu.org>
370         * etags.c (Cplusplus_help, Cjava_help): Re-phrase and avoid
371         column-0 `('.
373         * yow.c: Don't include string.h.
375 2003-01-20  Richard M. Stallman  <rms@gnu.org>
377         * Makefile.in (rcs2log, rcs-checkin, grep-changelog, vcdiff):
378         New targets.
380 2003-01-06  Kim F. Storm  <storm@cua.dk>
382         * pop.c (__P): Renamed from _P to avoid problems on Cygwin.
383         All uses changed.
385 2002-12-18  Andrew Innes  <andrewi@gnu.org>
387         * makefile.w32-in ($(DOC)): Use -o and -a options to make-docfile,
388         because GNU make doesn't append when using >> redirection.
390 2002-12-12  Jonathan Kamens  <jik@kamens.brookline.ma.us>
392         * b2m.pl: Make sure every message ends with a blank line, because
393         some mbox parsers require a blank line before "From " lines.
395 2002-12-08  Richard M. Stallman  <rms@gnu.org>
397         * getopt.c: Do include libintl.h if HAVE_LIBINTL_H.
398         (_): Test only HAVE_LIBINTL_H to decide what to do.
400 2002-12-05  Richard M. Stallman  <rms@gnu.org>
402         * getopt.c: Comment out include of libintl.h or gettext.h.
404 2002-12-04  Richard M. Stallman  <rms@gnu.org>
406         * Update getopt from gnulib version; changes described below.
408         * getopt1.c: Conditionally find getopt.h.
409         [_LIBC] (getopt_long, getopt_long_only): Do libc_hidden_def.
411         * getopt.c (const): Move outside !HAVE_CONFIG_H conditional.
412         (libintl.h): Include this if _LIBC.  Otherwise include gettext.h.
413         (wchar.h): Include, maybe.
414         (attribute_hidden): Define if not defind.
415         (__getopt_initialized): Use attribute_hidden.
416         (__libc_argc, __libc_argv): Renamed from original_argc, etc.
417         (__getopt_nonoption_flags, nonoption_flags_max_len, nonoption_flags_len):
418         Conditional on USE_NONOPTION_FLAGS.
419         (SWAP_FLAGS): New definitions.
420         (exchange): Test USE_NONOPTION_FLAGS.
421         (_getopt_initialize): Test USE_NONOPTION_FLAGS.
422         (_getopt_internal): Error if argc < 1.  New local var print_errors.
423         Improve test for ambiguous long option.
424         Add LIBIO support for error message output.
425         (NONOPTION_P): Test USE_NONOPTION_FLAGS.
427         * getopt.h: Maybe include ctype.h.
428         Treat __cplusplus like __STDC__.
429         (decls): Use __ in arg names.
431 2002-12-02  Stephen Eglen  <stephen@gnu.org>
433         * emacsclient.c (main): Tell user how to start server within Emacs
434         if socket could not be found.
436 2002-12-02  Richard M. Stallman  <rms@gnu.org>
438         * emacsclient.c (main): Test HAVE_GETCWD rather than BSD_SYSTEM.
440 2002-11-19  Ben Key  <bkey1@tampabay.rr.com>
442         * makefile.w32-in: Fixed a bug that caused the documentation for
443         the built in function play-sound-internal not to be included in
444         /etc/DOC.
446 2002-11-18  Dave Love  <fx@gnu.org>
448         * update-game-score.c: Include unistd.h, string.h, stdlib.h,
449         fcntl.h, stdarg.h conditionally.
450         (_GNU_SOURCE, __attribute__): Don't define.
451         (optarg, optind, opterr): Declare.
452         (lose, lose_syserr): Use NO_RETURN.
453         (get_user_id): Use P_.
455 2002-11-17  Richard M. Stallman  <rms@gnu.org>
457         * Makefile.in (${archlibdir}): Ignore errors operating on $(gamedir).
459 2002-11-14  Dave Love  <fx@gnu.org>
461         * movemail.c (pop_retr): Declare comment.
463         * make-docfile.c (read_c_string_or_comment): Declare msgno.
465         * Makefile.in (YACC): Deleted.
467 2002-10-19  Andreas Schwab  <schwab@suse.de>
469         * Makefile.in (${archlibdir}): Always create $(gamedir).
470         (update-game-score): Pass $(gamedir) as HAVE_SHARED_GAME_DIR.
472 2002-10-04  Juanma Barranquero  <lektu@terra.es>
474         * makefile.w32-in (lisp): Load devanagari.el, not .elc.
476 2002-09-30  Markus Rost  <rost@math.ohio-state.edu>
478         * emacsclient.c (main): Remove reference to SERVER_HOME_DIR
479         completely.
481 2002-09-27  Stefan Monnier  <monnier@cs.yale.edu>
483         * emacsclient.c: Remove SYSV support.
484         (eval, display): New vars.
485         (longopts): Add --eval and --display.
486         (decode_options): Add -e and -d processing.
487         (print_help_and_exit): Update the usage string.
488         (main): Add support for --eval and --display.
489         (main): Always use /tmp and non-qualified hostname.
491 2002-09-25  Stefan Monnier  <monnier@cs.yale.edu>
493         * emacsserver.c: Remove.
495 2002-09-17  Stefan Monnier  <monnier@cs.yale.edu>
497         * emacsclient.c (quote_file_name): Quote \n.
498         (main): Print a final \n when needed.
500 2002-09-03  Francesco Potorti`  <pot@gnu.org>
502         * etags.c (regex_tag_multiline, readline): Never pass pfnote a
503         string that cannot be freed.
505 2002-08-30  Francesco Potorti`  <pot@gnu.org>
507         * etags.c (consider_token, C_entries): Switch to C++ parsing when
508         auto-detection is enabled and the `::' qualifier is met.
509         (consider_token, C_entries): Several bugs corrected that tagged
510         some declarations even though --declarations was not used.
511         (plainc): New macro.
512         (C_entries): Use it.
513         (C_entries): Several cosmetic changes.
514         (C_entries): Invalidate the token is some cases.
516 2002-08-29  Francesco Potorti`  <pot@gnu.org>
518         * etags.c (C_entries): Correct a problem with const C++ funcs.
519         (ignoreindent): Renamed from noindentypedefs.
520         (cjava, cplpl): They are now macros instead of local vars.
522 2002-08-28  Francesco Potorti`  <pot@gnu.org>
524         * etags.c (HTML_labels): Tag ID= also.
526 2002-08-27  Francesco Potorti`  <pot@gnu.org>
528         * etags.c (Ada_funcs): Do not tag "use type Xxxx;".
530         * etags.c: (HTML_labels): New language HTML.
531         (etags_strcasecmp): Like BSD's, for compatibility.
532         (strcaseeq): Make it into a macro.
534         * etags.c (make_tag): Never generate null length tag names.
535         (linebuffer_init): Renamed from initbuffer.  All callers changed.
536         (pattern): Structure renamed to `regexp', member regex renamed to
537         pattern.
538         (node_st): Member pat renamed to regex.
539         (pattern); New member force_explicit_name, for future use.
540         Now always set to true, cannot be reset.
541         (add_regex, regex_tag_multiline, readline): Use it.
542         (main): Free some global structures.
543         (fdesc): New member `written'.
544         (readline, process_file): Initialise it.
545         (put_entries): Set it.
546         (main): Use it to create entries for files without tags.
547         (total_size_of_entries): Do not count invalid tags.
549 2002-08-19  Stefan Monnier  <monnier@cs.yale.edu>
551         * make-docfile.c (scan_keyword_or_put_char, write_c_args): Use `fn'
552         for the function name in the usage info.
554 2002-07-31  Colin Walters  <walters@gnu.org>
556         * update-game-score.c (P_): New macro.  Use it for all prototypes.
557         (lose): Don't use varargs.
558         (lose_syserr): New function.
560         * update-game-score.c: Change all functions to K&R style.
562 2002-07-30  Andreas Schwab  <schwab@suse.de>
564         * Makefile.in (localstatedir): New variable.
566 2002-07-29  Jonathan Kamens  <jik@kamens.brookline.ma.us>
568         * b2m.pl: Fix regexp for finding return address fields.
570 2002-07-15  Stefan Monnier  <monnier@cs.yale.edu>
572         * make-docfile.c (scan_c_file): Warn about missing `usage' info.
574 2002-07-05  Jonathan Kamens  <jik@kamens.brookline.ma.us>
576         * b2m.pl: Obey the rmail file and use the unpruned header properly.
578 2002-06-26  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
580         * b2m.pl: New file.
582 2002-06-21  Francesco Potorti`  <pot@gnu.org>
584         * etags.c: (F_getit, Fortran_functions, Ada_getit, Asm_labels)
585         (Python_functions, PHP_functions, PHP_functions, PHP_functions)
586         (PHP_functions, PHP_functions, Cobol_paragraphs)
587         (Makefile_targets, Postscript_functions, Texinfo_nodes)
588         (prolog_pr, erlang_func, erlang_attribute)
589         (Perl_functions, Perl_functions, Pascal_functions)
590         (TeX_commands, get_tag): Use make_tag instead of pfnote.
591         (get_tag): Prototype changed, all callers changed.
593 2002-06-20  Francesco Potorti`  <pot@gnu.org>
595         * etags.c: Implement implicit tag names, that is, unnamed tags
596         whose name is automatically deduced by etags.el.  The advantage is
597         that there is no explicit tag name in most tags, so the size of
598         the tags file is reduced, yet find-tag is able to do a match as
599         accurate as with named tags.  See the comment in make_tag for details.
600         (make_tag): New function (was the disabled function new_pfnote).
601         (make_C_tag): Use it.
603 2002-06-19  Francesco Potorti`  <pot@gnu.org>
605         * etags.c (add_regex): Invalid regexp modifiers are ignored.
606         (Makefile_targets): Tag variables unless --no-globals.
607         (LOOP_ON_INPUT_LINES): Serious bug corrected.
609 2002-06-13  Francesco Potorti`  <pot@gnu.org>
611         * etags.c (erlang_atom, erlang_attribute): Bugs corrected.
612         (invalidate_nodes): Bug corrected.
613         (print_help): Better help for regexps.
615 2002-06-13  Juanma Barranquero  <lektu@terra.es>
617         * makefile.w32-in (lisp): Add international/ucs-tables.elc and
618         font-core.elc.
620 2002-06-12  Francesco Potorti`  <pot@gnu.org>
622         * etags.c: New multi-line regexp and new regexp syntax.
623         (arg_type): at_icregexp label removed (obsolete).
624         (pattern): New member multi_line for multi-line regexps.
625         (filebuf): A global buffer containing the whole file as a string
626         for multi-line regexp matching.
627         (need_filebuf): Global flag raised if multi-line regexps used.
628         (print_help): Document new regexp modifiers, remove references to
629         obsolete option --ignore-case-regexp.
630         (main): Do not set regexp syntax and translation table here.
631         (main): Treat -c option as a backward compatibility hack.
632         (main, find_entries): Init and free filebuf.
633         (find_entries): Call regex_tag_multiline after the regular parser.
634         (scan_separators): Check for untermintaed regexp and return NULL.
635         (analyse_regex, add_regex): Remove the ignore_case argument, which
636         is now a modifier to the regexp.  All callers changed.
637         (add_regex): Manage the regexp modifiers.
638         (regex_tag_multiline): New function.  Reads from filebuf.
639         (readline_internal): If necessary, copy the whole file into filebuf.
640         (readline): Skip multi-line regexps, leave them to regex_tag_multiline.
642 2002-06-11  Francesco Potorti`  <pot@gnu.org>
644         * etags.c (add_regex): Better check for null regexps.
645         (readline): Check for regex matching null string.
646         (find_entries): Reorganisation.
648 2002-06-07  Francesco Potorti`  <pot@gnu.org>
650         * etags.c (scan_separators): Support all character escape
651         sequences supported by Gcc.
652         (find_entries): Rewind unconditionally.
653         (find_entries): Do not call language functions directly, now calls
654         itself.
655         (find_entries): Do general initialisations here.
656         (CNL_SAVE_DEFINEDEF, C_entries, LOOP_ON_INPUT_LINES, F_getit)
657         (Ada_getit, Pascal_functions, Pascal_functions)
658         (prolog_skip_comment): Do not do them here.
659         (readline_internal): Increment lineno here.
660         (readline): Conditionally undo readline_internal increment.
661         (readline): Do not return a value.
663 2002-06-06  Francesco Potorti`  <pot@gnu.org>
665         * etags.c: New option --parse-stdin=FILE.
666         (enum arg_type): New label at_stdin.
667         (STDIN): New constant.
668         (parsing_stdin): New flag.
669         (longopts): New option --parse-stdin=NAME.
670         (print_help): Document it.
671         (main): Handle it.
672         (process_file): Split into process_file and process_file_name.
673         (process_file_name): New function.
675         * etags.c: Improvements and bug squashing in TeX handling.
676         (TeX_commands): Skip comments.
677         (TEX_defenv): Now contains more contructs.
678         (TEX_cmt): Make it a static char and move it before TeX_commands.
679         (TeX_commands): Shorten the tag to the brace after the name.
680         (TeX_commands): Names now include the initial backslash.
681         (TeX_commands): Names do not include numeric args #n.
682         (TeX_commands): Correct line char number in tags.
683         (TEX_tabent, TEX_token): Deleted.
684         (TeX_commands, TEX_decode_env): Streamlined.
686 2002-06-05  Francesco Potorti`  <pot@gnu.org>
688         * etags.c (main): Avoid a buffer overrun with sprintf.
690 2002-05-30  Richard M. Stallman  <rms@gnu.org>
692         * Makefile.in (LIBS_MAIL): Renamed from LIB_MAIL.
693         (LIBS_MOVE): Renamed from MOVE_LIBS.
695 2002-05-26  Paul Eggert  <eggert@twinsun.com>
697         Reinstate the following change from 2002-03-22, which was
698         inadvertently lost on 2002-04-13.
700         * etags.c (main): Use `sort -o TAGFILE TAGFILE' instead of
701         `sort TAGFILE -o TAGFILE', as POSIX 1003.1-2001 disallows
702         the latter usage.
704 2002-05-17  Eli Zaretskii  <eliz@is.elta.co.il>
706         * pop.c (socket_connection): Move the code to resolve the POP
707         host right before trying to connect with it.
709 2002-04-28  Colin Walters  <walters@verbum.org>
711         * Makefile.in (${archlibdir}): Don't conditionalize on
712         HAVE_SHARED_GAME_DIR.  Instead, test at installation time whether
713         or not we have access to the specified game user.
715         * update-game-score.c (SCORE_FILE_PREFIX): Delete.
716         (main): New argument -d, for specifying directory.
717         (usage): Document.
718         (get_user_id): Compute.
719         (get_home_dir): Deleted.
720         (get_prefix): New function, taken from main.
721         (main): Check whether or not we are running setuid.  Move prefix
722         computation to get_prefix.  Don't call getpwent; we don't need to
723         any more.  Instead, move it to get_user_id().
725 2002-04-24  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
727         * ebrowse.c (skip_initializer): Return void.
729 2002-04-23  Colin Walters  <walters@verbum.org>
731         * update-game-score.c (read_score) [HAVE_GETDELIM]: Trim trailing
732         space.
734 2002-04-22  Francesco Potorti`  <pot@gnu.org>
736         * etags.c: (last_node): Make it a global variable.
737         (process_file): Print the tags from the nodes as soon as
738         possible, and delete the nodes.  This brings down the memory
739         occupancy as etags to almost the same level as when the #line
740         directives were not parsed.
741         (free_fdesc): New function.
742         (find_entries): Use it.
743         (invalidate_nodes): In etags mode, do not just mark the nodes as
744         invalid, do delete them.
746 2002-04-21  Gerd Moellmann  <gerd@gnu.org>
748         * ebrowse.c (add_declarator): Test *CLS instead of CLS.
750 2002-04-16  Eli Zaretskii  <eliz@is.elta.co.il>
752         * update-game-score.c: Move config.h before the other headers, to
753         avoid compiler warnings.
755 2002-04-16  Francesco Potorti`  <pot@gnu.org>
757         * etags.c (find_entries): Bug fix in list management.
759 2002-04-15  Francesco Potorti`  <pot@gnu.org>
761         * etags.c (get_language_from_filename): Add one argument.
762         (strcaseeq): New function.
763         (get_language_from_filename): Use it to do a case insenstitive
764         comparison if called with appropriate args.
765         (find_entries): Try with case insensitive match.
766         (process_file): Bug fixed.
768 2002-04-13  Francesco Potorti`  <pot@gnu.org>
770         * etags.c (find_entries): Delete tags previously obtained from
771         file xxx.c's #line directives when parsing file xxx.y.  This is
772         generally done for automatically generated files containing
773         #line directives.  This handles the case when xxx.y is tagged
774         before xxx.c, and the entries of xxx.c pointing to xxx.y should
775         be discarded.
776         (language): Add the metasource member.  Initializers changed.
777         (invalidate_nodes): New function.
778         (readline): Discard lines after having found a #line
779         directive pointing to an already tagged file.  This handles the
780         case when xxx.y is tagged before xxx.c, and the entries of
781         xxx.c pointing to xxx.y should be discarded.
782         (fdesc): New structure for keeping track of input files.
783         (fdesc): Remove `file' member (a string) and use instead a pointer
784         to a file description structure.
785         (curfile, curfiledir, curtagfname, curlang, nocharno)
786         (forced_lang): Global variables removed in favor of fdhead and
787         curfdp, pointers to file description strucures.
788         (longopts, main, print_help): Use the CTAGS conditional to include
789         or exclude options that work on etags or ctags only.
790         (process_file, find_entries, pfnote, add_node, put_entries)
791         (readline): Use fdhead and curfdp.
792         (process_file, find_entries): Do not take an arg string, all
793         callers changed.
795         * etags.c (longopts, print_help, main): Test CTAGS to disallow
796         options that are not right for either etags or ctags.
798         * etags.c (number_len, total_size_of_entries): Define them also
799         in CTAGS mode, because gcc does not compile all refs away.
801 2002-04-14  Colin Walters  <walters@debian.org>
803         * update-game-score.c (lock_file): If the lock file is older than
804         an hour, delete it.  Reset attempts to zero if we have to break
805         the lock.
807 2002-04-14  Andreas Schwab  <schwab@suse.de>
809         * update-game-score.c (read_score): Fix type of second parameter
810         of getdelim to be of type size_t instead of int.  Use 0 instead of
811         ESUCCES.
813 2002-04-10  Colin Walters  <walters@verbum.org>
815         * update-game-score.c: (toplevel): Include stdarg.h.
816         (MAX_DATA_LEN, MAX_SCORES): New.
817         (SCORE_FILE_PREFIX): If HAVE_SHARED_GAME_DIR is not defined,
818         default to ~/.emacs.d/games.
819         (get_user_id): Don't zero uid in the case where we can't get the
820         username.
821         (lose): New function.
822         (main): Actually use `max', and default it to MAX_SCORES.
823         Correctly handle new default for SCORE_FILE_PREFIX.  Use `lose'
824         function.
825         (read_score): Handle the case of reading unamelen characters, then
826         finishing.  Use mktemp if mkstemp isn't available.
827         (lock_file, unlock_file): Delete unused versions.
828         (lock_file): Always sleep, even if we unlinked the lock file.
830         * Makefile.in (gamedir, gameuser): New variables.
831         (toplevel, UTILITIES): Add update-game-score.
832         (${archlibdir}): Handle HAVE_SHARED_GAME_DIR.
834 2002-04-07  Colin Walters  <walters@verbum.org>
836         * update-game-score.c (SCORE_FILE_PREFIX): Don't hardcode.
837         (get_user_id): Take struct passwd as an argument.
838         (get_home_dir): New function.
839         (main): Read in user information here.  Discover home directory if
840         necessary.
841         (read_score): Trim newline only in `getline' case.
843 2002-04-05  Colin Walters  <walters@debian.org>
845         * update-game-score.c (toplevel): Include pwd.h.
846         (struct score_entry): Add username field.
847         (push_score): Use it.
848         (get_user_id): New function.
849         (main): Don't malloc excessively.
850         (main): Use username field.
851         (read_score): Read it.
852         (push_score): Handle it.
853         (write_scores) Write it.
854         (read_score): Handle arbitrary length data.
856 2002-03-30  Eli Zaretskii  <eliz@is.elta.co.il>
858         * ebrowse.c (add_declarator): Fix the first call to add_member_defn.
860 2002-03-29  Gerd Moellmann  <gerd@gnu.org>
862         * ebrowse.c (add_declarator, skip_initializer): New functions.
863         (declaration): Use them.
865 2002-03-28  Jason Rumney  <jasonr@gnu.org>
867         * makefile.w32-in (lisp): Move backquote.elc into emacs-lisp.
869 2002-03-27  Colin Walters  <walters@debian.org>
871         * update-game-score.c: New file.
873 2002-03-22  Paul Eggert  <eggert@twinsun.com>
875         * etags.c (main): Use `sort -o TAGFILE TAGFILE' instead of
876         `sort TAGFILE -o TAGFILE', as POSIX 1003.1-2001 disallows
877         the latter usage.
879 2002-03-12  Francesco Potorti`  <pot@gnu.org>
881         * etags.c (Python_functions): Skip spaces at beginning of lines.
882         (Python_functions, PHP_functions): Name tags, for ctags' sake.
883         (TeX_commands): Name tags.  Correction of old disabled code.
885         * etags.c (curfiledir, curtagfname): New global variables.
886         (process_file): Initialise them.
887         (readline): Canonicalize the name found in #line directive.
889 2002-03-06  Jason Rumney  <jasonr@gnu.org>
891         * etags.c (put_entries): Use #if !CTAGS, to fix link error on
892         compilers that don't optimize out dead code.
894 2002-03-05  Francesco Potorti`  <pot@gnu.org>
896         * etags.c: Honour #line directives.
897         (no_line_directive): New global var; set it for old behaviour.
898         (main): Remove some #ifdef in the getopt switch.
899         (add_node, put_entries): Code added to merge different chunks of
900         nodes referring to the same file.  Currently the tags are just
901         appended, without any check for duplicates.
902         (Perl_functions): Do not special case ctags.
903         (readline): Identify #line directives and do the right thing.
904         (nocharno, invalidcharno): New global vars.
905         (process_file): Reset nocharno.
906         (readline): Set nocharno.
907         (pfnote): Read nocharno and maybe put invalidcharno in node.
908         (total_size_of_entries, put_entries): Use invalidcharno.
910         * etags.c: Keep the whole tag table in memory, even in etags mode.
911         (main): Call put_entries here even in CTAGS mode.
912         (main, process_file): Check the return values of fclose and pclose.
913         (process_file): Do not call put_entries after parsing each file.
914         (process_file): Canonicalise file names even for ctags.
915         (process_file): Set curfile here...
916         (find_entries): ... not here any more.
917         (add_node): In etags mode, build a linked list of entries (on
918         right pointer) for each file, and link the first entry of each
919         file on left nodes.
920         (put_entries): Print here the name of the file.
921         (put_entries): Print the entries starting from the first file.
922         (number_len, total_size_of_entries): Define these only in etags
923         mode, make the second work only on the right nodes.
925         * etags.c: Make all global variables static.
927 2002-02-25  Juanma Barranquero  <lektu@terra.es>
929         * makefile.w32-in (lisp): Add missing backslash.
931 2002-02-24  Jason Rumney  <jasonr@gnu.org>
933         * makefile.w32-in (WINNT_SUPPORT, MOUSE_SUPPORT, lisp): Revert to
934         using .elc files.
935         (lisp): Sync with list in src/Makefile.in
936         (VMS_SUPPORT, MSDOS_SUPPORT): Define, so DOC files can be shared.
938 2002-02-10  Paul Eggert  <eggert@twinsun.com>
940         * rcs-checkin: Use `sort -k 2', not `sort +1', as POSIX 1003.1-2001
941         disallows the old syntax.
943 2002-02-03  Paul Eggert  <eggert@twinsun.com>
945         * rcs2log(Copyright): Update to 2002.
946         (AWK, TMPDIR): Work around portability problem in broken shells that
947         don't understand `: ${VAR=val}'.
948         (SORT_K_OPTIONS): New var, for hosts that conform to POSIX 1003.1-2001.
949         Prefer the new -k option to the traditional +M -N option.
951 2002-01-01  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
953         * b2m.c (main): Parenthesize assignment when used as truth value
954         to prevent gcc warnings.
956         * fakemail.c: Include <config.h>.
958 2001-12-29  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
960         * cvtmail.c, emacsclient.c, emacsserver.c, pop.c, sorted-doc.c,
961         * yow.c: Include <config.h>.
963 2001-12-21  Francesco Potorti`  <pot@gnu.org>
965         * etags.c (Perl_functions): Tag packages and use them in sub tags.
966         (get_tag): Return a pointer to the tag that is found.
968         * etags.c (LOOKING_AT): Use !intoken instead of iswhite.
969         (F_takeprec): Renamed from takeprec.  All callers changed.
970         (F_getit): Renamed from getit.  All callers changed.
971         (nocase_tail): Renamed from tail.  All callers changed.
972         (Ada_getit): Renamed from adagetit.  All callers changed.
973         (L_getit): Simplify by using get_tag.
974         (Perl_functions, Postscript_functions, erlang_attribute): Use the
975         modified LOOKING_AT.
976         (notinname): Removed '[' and added ')' to the recognised chars.
977         (LOOKING_AT, get_tag, PHP_functions): Use notinname.
978         (Ada_getit, Ada_funcs, Python_functions, Scheme_functions):
979         Clarified, using strneq or notinname.
980         (L_isdef, L_isquote): Removed.
981         (Lisp_functions, L_getit): Clarified.
983         * etags.c: (P_): Renamed to __P for consistency with config.h.
984         [HAVE_CONFIG_H]: Let config.h deal with __P.
985         [__STDC__] [!HAVE_CONFIG_H]: Define PTR as in config.h.
986         [!__STDC__] [!HAVE_CONFIG_H]: Do not undefine static, because
987         gperf code needs it.
988         [HAVE_CONFIG_H] [!PTR]: Define PTR (for use with Xemacs).
989         [HAVE_CONFIG_H] [!__P]: Define __P (for use with Xemacs).
990         (xmalloc, xrealloc): Use PTR instead of long *.
991         (bool): Make it a define, not a typedef, for C++ compilers.
992         (pattern): Members renamed to avoid name clash in some C++ compilers.
993         (get_language_from_langname): Use const argument.
995 2001-12-22  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
997         * makefile.nt, makefile.w32-in: Remove mocklisp files.
999 2001-12-19  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
1001         * emacsserver.c: Conditionally include config.h.
1003         * fakemail.c: Likewise.
1005         * emacsclient.c: Include "config.h", not <../src/config.h>.
1006         (main): Parenthesize assignment when used as truth value to
1007         prevent gcc warnings.
1009         * ebrowse.c: Include stdlib.h and string.h conditionally.
1011 2001-12-18  Eli Zaretskii  <eliz@is.elta.co.il>
1013         * yow.c (main): Use time_t, not long, to avoid a compiler warning.
1015 2001-12-18  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
1017         * test-distrib.c: Fix previous change.
1019 2001-12-18  Dave Love  <fx@gnu.org>
1021         * test-distrib.c: Conditionally include fcntl.h.
1023         * fakemail.c: Include "config.h", not <../src/config.h>.
1024         (_XOPEN_SOURCE): Define as 500.
1026         * emacsserver.c: Include "config.h", not <../src/config.h>.
1028         * cvtmail.c: Include config.h, stdlib.h.
1029         (xmalloc, xrealloc, skip_to_lf sysfail): Prototype.
1031         * yow.c: Conditionally include various headers.  Use "epaths.h",
1032         not <../src/epaths.h>.
1033         (malloc, realloc) [!HAVE_STDLIB_H]: Prototype.
1035 2001-12-12  Francesco Potorti`  <pot@gnu.org>
1037         * etags.c (PHP_functions): New function for parsing PHP.
1038         (LOOKING_AT): New macro.
1039         (Perl_functions, Python_functions, PHP_functions)
1040         (Scheme_functions, Texinfo_nodes): Use it.
1041         (Perl_functions): Use strneq.
1042         (prolog_pred): Renamed to prolog_pr.
1043         (prolog_pr): Recognise Prolog rules in addition to predicates.
1044         [ETAGS_REGEXPS] [!HAVE_CONFIG_H] [__CYGWIN__]: Prevent
1045         unmodified compile, as Cygwin's regex.h is incompatible with us.
1046         [!HAVE_CONFIG_H] [!__STDC__]: #define const as the empty string.
1048 2001-12-11  Richard M. Stallman  <rms@gnu.org>
1050         * Makefile.in (clean): Don't delete ../etc/DOC*.
1052 2001-12-11  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
1054         * COPYING: Moved back.
1056 2001-11-30  Andrew Innes  <andrewi@gnu.org>
1058         * makefile.w32-in (FACE_SUPPORT):
1059         (MOUSE_SUPPORT):
1060         (FLOAT_SUPPORT):
1061         (WINNT_SUPPORT):
1062         (lisp): Reference .el files instead of .elc files, to simplify
1063         bootstrapping.
1064         ($(DOC)): Change dependency to just `make-docfile'.
1066 2001-11-29  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
1068         * COPYING: Removed.
1070 2001-11-28  Paul Eggert  <eggert@twinsun.com>
1072         * rcs2log (Copyright): Add '(C)' as per coding guidelines.
1074         The following changes are derived from suggestions by Bob Chapman
1075         <rechapman@compuserve.com>.
1077         * rcs2log (printlogline): Also allow tab and newline to separate
1078         '(function):' from the rest of a comment.
1079         (reformat the sorted log entries): Require date and author to
1080         match the clumpname.
1082 2001-11-16  Gerd Moellmann  <gerd@gnu.org>
1084         * ebrowse.c (matching_regexp): Escape '\\'.
1086 2001-11-15  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
1088         * Makefile.in: Add support for --program-prefix, --program-suffix
1089         and --program-transform-name options.
1091 2001-11-03  Richard M. Stallman  <rms@gnu.org>
1093         * cvtmail.c (xrealloc): Always pass two args to `fatal'.
1095         * movemail.c (popmail): Always pass two args to `error'.
1097 2001-10-24  Ken Raeburn  <raeburn@gnu.org>
1099         * Makefile.in (HESIODLIB) [HAVE_LIBHESIOD]: Set to include
1100         -lhesiod and maybe -lresolv.
1101         (CRYPTOLIB) [HAVE_LIBK5CRYPTO]: Use -lk5crypto for Kerberos
1102         support if it's available.
1104 2001-10-21  Miles Bader  <miles@gnu.org>
1106         * make-docfile.c (struct rcsoc_state): New type.
1107         (read_c_string_or_comment): Add SAW_USAGE
1108         parameter, and implement scanning for a `usage:' keyword.
1109         Use a variable of type `rcsoc_state' to hold most of our state.
1110         (put_char): Add STATE parameter, and remove all other parameters
1111         except CH.  Use STATE to get access to all needed state.
1112         (scan_keyword_or_put_char): New function.
1113         (scan_c_file): Pass SAW_USAGE argument to read_c_string_or_comment.
1114         Don't output a usage-string if there was one in the doc-string.
1116 2001-10-20  Gerd Moellmann  <gerd@gnu.org>
1118         * (Version 21.1 released.)
1120 2001-10-19  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
1122         * b2m.c: Properly spell the name of Emacs.
1124 2001-10-17  Miles Bader  <miles@gnu.org>
1126         * make-docfile.c (put_char): New function.
1127         (read_c_string_or_comment): Strip trailing spaces and newlines.
1129 2001-10-16  Miles Bader  <miles@gnu.org>
1131         * make-docfile.c (scan_c_file): Handle `new style' doc strings in
1132         comments [with `doc:' keyword prefix].
1134 2001-10-15  Gerd Moellmann  <gerd@gnu.org>
1136         * make-docfile.c (read_c_string_or_comment): Don't drop a '*'
1137         in a C doc comment.
1139 2001-10-13  Gerd Moellmann  <gerd@gnu.org>
1141         * make-docfile.c (read_c_string_or_comment): Renamed from
1142         read_c_string.  Add parameter COMMENT.  Read C-style comments.
1143         (scan_c_file): Handle doc strings in C comments.
1145 2001-10-12  Andrew Innes  <andrewi@gnu.org>
1147         * makefile.nt (ALL): Do not include fakemail.
1149         * makefile.w32-in (install): Do not copy fakemail.
1151 2001-10-10  Jason Rumney  <jasonr@gnu.org>
1153         * makefile.w32-in (ALL) Do not include fakemail.
1155         * makefile.nt (install) Ditto.
1157 2001-10-09  Gerd Moellmann  <gerd@gnu.org>
1159         * emacsserver.c (main): Cast geteuid in sprintf to int.
1161         * emacsclient.c (main): Cast isdigit argument to unsigned char.
1163 2001-10-07  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
1165         * profile.c: Include config.h, not ../src/config.h.
1166         Include systime.h, not ../src/systime.h.
1168 2001-10-05  Gerd Moellmann  <gerd@gnu.org>
1170         * Branch for 21.1.
1172 2001-10-01  Alexander Zhuckov  <zuav@int.spb.ru>
1174         * ebrowse.c (struct alias): Add two new struct members: NAMESP and
1175         ALIASEE to help work with namespace aliases.
1176         (struct sym): Remove struct member NAMESP_ALIASES.
1177         (namespace_alias_table): New variable.
1178         (make_namespace): Add parameter CONTEXT.
1179         (check_namespace): New function.
1180         (find_namespace): Add parameter CONTEXT.
1181         (check_namespace_alias): New function.
1182         (register_namespace_alias): Change type of parameter OLD_NAME.
1183         Search for already defined alias in NAMESPACE_ALIAS_TABLE.
1184         (check_namespace): New function.
1185         (enter_namespace): Call find_namespace with CONTEXT parameter.
1186         (match_qualified_namespace_alias): New function.
1187         (parse_qualified_ident_or_type): Fix typo in comment.
1188         While parsing qualified ident or type update namespace context and
1189         restore it on exit.
1190         (parse_qualified_param_ident_or_type): Fix typo in comment.
1191         (globals): Change handling of namespace aliases.
1192         (version): Add year 2001.
1194 2001-09-15  Eli Zaretskii  <eliz@is.elta.co.il>
1196         * etags.c (analyse_regex): If regex_arg is NULL, return
1197         immediately after a call to free_patterns.
1199 2001-09-05  Paul Eggert  <eggert@twinsun.com>
1201         * rcs2log (Help, mainline code): Add new option -L FILE.
1202         (Copyright): Update year.
1203         (LANG, LANGUAGE, LC_ALL, LC_COLLATE, LC_CTYPE, LC_MESSAGES)
1204         (LC_NUMERIC, LC_TIME): New shell vars, to make sure we live in the
1205         C locale.
1206         (mainline code): Handle nonstandard -u option differently, by
1207         transforming it to standard form.  Check for "Working file: ", not
1208         "Working file:".  Allow file names with spaces.
1209         (SOH, rlogfile): New shell vars.
1210         (rlogout): Remove.  Its old functionality is mostly migrated to
1211         rlogfile.
1213         Append ';;' to the last arm of every case statement, for
1214         portability to ancient broken BSD shells.
1216         (logins): Fix bug; was not being computed at all, lowering performance.
1217         (pository): New var.  This fixes some bugs where repositories are
1218         remote, or have trailing slashes.
1219         (authors): $llogout is never an empty shell var, so don't worry
1220         about that possibility.
1221         (printlogline, mainline code): Fix bug with SOH's being put into
1222         the output.
1224 2001-09-01  Eli Zaretskii  <eliz@is.elta.co.il>
1226         * ebrowse.c (SEEK_END): #define if not defined by system headers.
1227         Suggested by Dave Love <d.love@dl.ac.uk>.
1229 2001-08-29  Eli Zaretskii  <eliz@is.elta.co.il>
1231         * makefile.nt (lisp): Synchronize with src/Makefile.in.
1232         * makefile.w32-in (lisp): Ditto.
1234 2001-07-25  Juanma Barranquero  <lektu@terra.es>
1236         * grep-changelog (parse_changelog): Remove unused local variable.
1238         * grep-changelog (main): Add new option --reverse.
1239         (print_log): Use it.
1240         (parse_changelog): Use it.
1242 2001-07-20  Gerd Moellmann  <gerd@gnu.org>
1244         * grep-changelog: Remove RCS Id keyword.
1246 2001-07-20  Juanma Barranquero  <lektu@terra.es>
1248         * grep-changelog (parse_changelog): Add tests for defined values
1249         to quiet warning from Perl 5.005 or above.
1250         (entry_match_p, header_match_p): Fix handling of null or empty
1251         argument to prevent duplicate headers.
1253         * grep-changelog (main, parse_changelog): Make "use strict"-clean.
1255 2001-07-17  Jan Nieuwenhuizen  <janneke@gnu.org>
1257         * emacsclient.c (print_help_and_exit): Fix help message for
1258         +LINE:COLUMN option.
1260 2000-07-17  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1262         * emacsclient.c (main): Add support for +LINE:COLUMN command line
1263         argument.
1265 2001-07-16  Gerd Moellmann  <gerd@gnu.org>
1267         * ebrowse.c (main): Check that the output file exists and
1268         is non-empty if invoked with `--append'.
1270 2001-05-14  Francesco Potorti`  <pot@gnu.org>
1272         * etags.c (add_regex): Reset the whole newly allocated pattern
1273         buffer instead of the individual members.  It's safer and works
1274         with Xemacs.
1276         * etags.1: Markups corrected.
1278 2001-05-08  Gerd Moellmann  <gerd@gnu.org>
1280         * ebrowse.c (enter_namespace): Fix reallocation of namespace_stack.
1282 2001-05-03  Gerd Moellmann  <gerd@gnu.org>
1284         * ebrowse.c (globals): Fix handling of namespace aliases.
1286 2001-04-27  Eli Zaretskii  <eliz@is.elta.co.il>
1288         * etags.c (print_help): Enclose the regexp in the help text
1289         example in quotes.
1291 2001-04-05  Dave Love  <fx@gnu.org>
1293         * emacsclient.c (fail): Don't return a value.
1294         (main): Cast uid values for sprintf.
1296 2001-04-03  Gerd Moellmann  <gerd@gnu.org>
1298         * emacsclient.c (fail, main): Don't use implicit int return type.
1300         * b2m.c (main): Always return a value.
1302 2001-03-02  Gerd Moellmann  <gerd@gnu.org>
1304         * ebrowse.c (parse_qualified_param_ident_or_type): Return a
1305         freshly allocated object in *LAST_ID.
1306         (read_line): Accept \r\n line endings.
1308 2001-02-24  Andrew Innes  <andrewi@gnu.org>
1310         * makefile.w32-in: Fix copyright notice.
1312 2001-02-23  Francesco Potorti`  <pot@gnu.org>
1314         * etags.c (enum sym_type): New label st_C_template.
1315         (gperf input): Use it for switching to C++ from C.
1316         (consider_token): Do it.
1317         (C_entries): Initialise typdefcblev to quiet compilers.
1318         [!HAVE_CONFIG_H] [!__STDC__]: #define static as nothing.
1320 2001-02-22  Andrew Innes  <andrewi@gnu.org>
1322         * makefile.nt ($(BLD)\movemail.obj): Remove reference to
1323         VMS header files.
1324         ($(BLD)\profile.obj): Ditto.
1326         * makefile.w32-in ($(BLD)/movemail.$(O)): Remove reference to
1327         VMS header files.
1328         ($(BLD)/profile.$(O)): Ditto.
1330 2001-02-05  Andrew Innes  <andrewi@gnu.org>
1332         * makefile.w32-in ($(DOC)): Use $(THISDIR) instead of . in
1333         invocation of make-docfile, to work with Windows 2000.
1335 2001-01-31  Dave Love  <fx@gnu.org>
1337         * etags.c (in_word_set): Use `static' in definition (for pcc).
1339 2001-01-31  Francesco Potorti`  <pot@gnu.org>
1341         * etags.c: [NDEBUG] #undef assert and #define it as ((void)0), for
1342         the sake of some buggy assert.h (e.g. in MinGW and sunos4 pcc).
1343         (C_entries): Tag token renamed to still_in_token because sunos4
1344         pcc wants to expand it as the token() macro even though it has no
1345         arguments.
1347 2001-01-30  Andrew Innes  <andrewi@gnu.org>
1349         * etags.c (assert) [__MINGW32__]: Redefine assert to work around a
1350         bug in the Mingw32 assert.h header file.
1352 2001-01-30  Francesco Potorti`  <pot@gnu.org>
1354         * etags.c: [WIN32-NATIVE]: #undef MSDOS, #undef WINDOWSNT and
1355         #define it for the sake of Xemacs.
1356         [WINDOWSNT]: #undef HAVE_NTGUI even if built without
1357         HAVE_CONFIG_H.  This change only affects a standalone etags.
1358         [WINDOWSNT]: #undef DOS_NT and #define it even if built with
1359         HAVE_CONFIG_H.  This change does nothing in Emacs, as DOS_NT is
1360         always defined when HAVE_CONFIG_H and WINDOWS are both defined.
1361         [!HAVE_UNISTD_H]: use defined(WINDOWSNT) instead of the bare
1362         WINDOWSNT, as this is the correct way to use it.
1364 2001-01-28  Francesco Potorti`  <pot@gnu.org>
1366         * etags.c: Be capable to parse nested struct-like structures.
1367         (structdef, structtag): Struct state machine revisited.
1368         (struct tok): Revisited.
1369         (cstack, nestlev, instruct): New struct and macros.
1370         (pushclass_above, popclass_above, write_classname): New functions
1371         for dealing with nested class names.
1372         (consider_token, make_C_tag, C_entries): Many changes for dealing
1373         with arbitrarily nested structures.
1374         (etags_getcwd): #if MSDOS, not #ifdef MSDOS!
1375         (C_entries): Consider templates in C++.
1376         (sym_type): New constant st_C_class for detecting "class" also in
1377         C mode.
1378         (C_AUTO): New macro for automatic detection of C++.
1379         (consider_token): Automatic set C++ mode.
1380         (C_entries): New security check for yacc.
1381         (print_language_names, print_help): Mention the autodetect
1382         feature, do not show help for the -C option, now mostly useless.
1383         (C_entries): Tag C++ forward declarations if --declarations.
1384         (C_entries): Don't be fooled by things like XDEFUN.
1385         (consider_token): Discard asm pseudo function.
1387 2001-01-27  Eli Zaretskii  <eliz@is.elta.co.il>
1389         * etags.c: Add a coding: tag.
1391 2001-01-26  Gerd Moellmann  <gerd@gnu.org>
1393         * ebrowse.c (matching_regexp_buffer, matching_regexp_end_buf):
1394         New variables.
1395         (matching_regexp): Use them instead of static variables in
1396         function scope.
1398 2001-01-25  Francesco Potorti`  <pot@gnu.org>
1400         * etags.c (struct tok): Renamed from struct token.
1401         (token): Renamed from tok.
1402         (structtype): Make it a local variable.
1403         [DEBUG]: Use assert.
1404         (xrnew): Change the synopsis.
1405         (typedefs_or_cplusplus): Renamed from typedefs_and_cplusplus.
1406         (grow_linebuffer): Don't call xrnew when not needed.
1407         (token): Buffer renamed to line.
1408         (C_entries): Three calls to inibuffer moved here from main.
1409         (C_entries): Remove all references to var methodlen, delete it.
1410         (linebuffer_setlen): Was grow_buffer, now also sets len.
1411         (consider_token, C_entries, Pascal_functions): Use it.
1412         (C_entries): Preventing problems relative to extern "C".
1413         (C_entries): Can tag more than one variable or func separated by
1414         comma when --declarations is used.
1415         (C_entries): More accurate tagging of members and declarations.
1416         (yacc_rules): Was global, made local to C_entries.
1417         (next_token_is_func): Removed.
1418         (fvdef): New constants fdefunkey, fdefunname.
1419         (consider_token, C_entries): Use them.
1420         (C_entries): Build proper lisp names for Emacs DEFUNs.
1422 2001-01-22  Gerd Moellmann  <gerd@gnu.org>
1424         * ebrowse.c (xfree): New function.
1425         (member, declaration, globals): Use xmalloc instead of alloca.
1427 2001-01-15  Francesco Potorti`  <pot@gnu.org>
1429         * etags.c (print_language_names): Print filenames in addition to
1430         suffixes.
1432 2001-01-14  Francesco Potorti`  <pot@gnu.org>
1434         * etags.c (get_language_from_langname): Renamed from
1435         get_language_from_name.
1436         (get_language_from_filename): Renamed from get_language_from_suffix.
1437         Now first looks for the complete file name.
1438         (language): New member char **filenames.
1439         (Makefile_filenames): List of possible filenames for makefiles.
1440         (lang_names): Add a NULL member for every entry, added an entry
1441         for makefiles.
1442         (Makefile_targets): New function.
1443         (Texinfo_nodes): Renamed from Texinfo_fuctions and made
1444         it conformant to the style of the rest of the code.
1446 2001-01-13  Gerd Moellmann  <gerd@gnu.org>
1448         * make-docfile.c (write_c_args): Print newlines as spaces.
1450 2001-01-06  Andrew Innes  <andrewi@gnu.org>
1452         * makefile.w32-in (clean): Delete $(COMPILER_TEMP_FILES) instead
1453         of *.pdb.
1455 2001-01-03  Paul Eggert  <eggert@twinsun.com>
1457         * lib-src/rcs2log: Avoid security hole allowing attacker to
1458         cause user of rcs2log to overwrite arbitrary files, fixing
1459         a bug reported by Morten Welinder.
1461         Don't put "exit 1" at the end of the exit trap; it's
1462         ineffective in POSIX shells.
1464 2001-01-02  Gerd Moellmann  <gerd@gnu.org>
1466         * ebrowse.c (yyerror): Change to take two arguments.
1467         Add prototype.  Change callers.
1469 2001-01-02  Eli Zaretskii  <eliz@is.elta.co.il>
1471         * ebrowse.c (enter_namespace, main): Cast variables to shut up
1472         compiler warnings.
1473         (yyerror): Change parameter declarations to be of type long, so
1474         that they can take pointers on 64-bit platforms.
1476         * emacsclient.c (main): Remove unused local variable statbfr.
1477         (main) <homedir>: Make its declaration conditional on
1478         SERVER_HOME_DIR, to avoid compiler warnings.
1480         * emacsserver.c (main) <homedir>: Make its declaration conditional
1481         on SERVER_HOME_DIR, to avoid compiler warnings.
1483         * fakemail.c (readline): Cast buffer to "long *" to pacify
1484         over-zealous compilers.
1486 2000-12-16  Eli Zaretskii  <eliz@is.elta.co.il>
1488         * etags.c (canonicalize_filename) [DOS_NT]: Fix last change.
1490 2000-12-15  Gerd Moellmann  <gerd@gnu.org>
1492         * ebrowse.c (operator_name): Cast argument of isalpha to
1493         unsigned char.
1495         * etags.c (ISALNUM, ISALPHA, ISDIGIT, ISLOWER): New macros.
1496         Use them throughout instead of ctype functions/macros.
1497         (lowcase): Cast to unsigned char.
1498         (UPCASE): New macro.
1499         (canonicalize_filename): Use UPCASE instead toupper.
1501         * fakemail.c (get_keyword): Make sure that isspace and
1502         similar aren't called with a negative argument.
1504 2000-12-13  Dave Love  <fx@gnu.org>
1506         * ebrowse.c (ensure_scope_buffer_room): Fix xrealloc call.
1508 2000-12-06  Andrew Innes  <andrewi@gnu.org>
1510         * makefile.w32-in (LOCAL_FLAGS): Remove -DVERSION flag, since we
1511         don't know the real version, and I can't seem to get the quoting
1512         right in all circumstances.
1514         * ebrowse.c (VERSION): Provide default definition, like etags.c
1515         does, because Windows build can't snarf this from version.el.
1517 2000-11-30  Andrew Innes  <andrewi@gnu.org>
1519         * makefile.w32-in ($(BLD)/ebrowse.exe): Use tabs not spaces.
1520         (install): Ditto.
1522 2000-11-23  Jason Rumney  <jasonr@gnu.org>
1524         * makefile.w32-in: Add targets for ebrowse.exe.
1525         (LOCAL_FLAGS): Add -DVERSION flag.
1527 2000-09-25  Dave Love  <fx@gnu.org>
1529         * sorted-doc.c: Include config.h.
1530         [!HAVE_STDLIB_H]: Declare malloc.
1532 2000-09-14  Andrew Innes  <andrewi@gnu.org>
1534         * makefile.w32-in: Revert to Unix line endings.
1536 2000-09-04  Dave Love  <fx@gnu.org>
1538         * movemail.c (index, rindex): Prototype conditionally.
1540 2000-09-03  Andrew Innes  <andrewi@gnu.org>
1542         * makefile.w32-in: Change to DOS line endings.
1544 2000-09-01  Eli Zaretskii  <eliz@is.elta.co.il>
1546         * movemail.c (toplevel): Remove redundant fcntl.h.
1547         [!F_OK]: Provide default definitions only after including both
1548         fcntl.h and unistd.h.
1550 2000-08-29  Dave Love  <fx@gnu.org>
1552         * movemail.c: Revert previous change.
1554 2000-08-29  Eli Zaretskii  <eliz@is.elta.co.il>
1556         * Makefile.in (profile, make-docfile, hexl): Depend on config.h.
1558 2000-08-28  Dave Love  <fx@gnu.org>
1560         * movemail.c (toplevel) [HAVE_STRING_H]: Include string.h.
1561         (toplevel) [HAVE_STRINGS_H]: Include strings.h.
1563 2000-08-22  Andrew Innes  <andrewi@gnu.org>
1565         * ntlib.h (WIN32): Remove unnecessary definition.
1566         (sleep): Make argument unsigned long.
1567         (_WINSOCK_H): Undefine so normal winsock definitions can be used.
1569         * ntlib.c (sleep): Make argument unsigned long.
1571         * movemail.c (main) [WINDOWSNT]: Force binary mode for fileio.
1573         * makefile.w32-in: New file.
1575 2000-08-20  Eli Zaretskii  <eliz@is.elta.co.il>
1577         * etags.c (canonicalize_filename) [DOS_NT]: Upcase the first
1578         letter only if it is a drive letter.
1580 2000-07-14  Gerd Moellmann  <gerd@gnu.org>
1582         * ebrowse.c (xrealloc, xmalloc): Renamed from yrealloc and ymalloc.
1584         * etags.c (xmalloc, xrealloc): Make externally visible, for use
1585         by alloca.o.
1587         * Makefile.in (alloca.o): Add -Demacs so that alloca will use xmalloc.
1589 2000-07-10  Gerd Moellmann  <gerd@gnu.org>
1591         * ebrowse.c (yylex): Accept string literals with newlines in them.
1592         (process_pp_line): Handle case of string literal with newline
1593         in it in replacement text, which counts as continuing the
1594         replacement text in GNU C.
1596 2000-07-02  Gerd Moellmann  <gerd@gnu.org>
1598         * ebrowse.c (token_string): Add missing tokens.
1599         (parm_list): Handle case of qualified pointers.
1601 2000-06-23  Dave Love  <fx@gnu.org>
1603         * ebrowse.c: Move config.h before other includes (which may use
1604         feature tests).
1606 2000-06-14  Jim Meyering  <meyering@lucent.com>
1608         * grep-changelog: Fix typos in comments.  Remove trailing blanks.
1610 2000-06-11  Jason Rumney  <jasonr@gnu.org>
1612         * makefile.nt: Add targets for ebrowse.
1614         * ebrowse.c [WINDOWS_NT]: Use stricmp instead of strcasecmp to
1615         compare filenames.
1617 2000-06-06  Gerd Moellmann  <gerd@gnu.org>
1619         * ebrowse.c (ymalloc): Renamed from xmalloc.
1620         (yrealloc): Renamed from xrealloc.
1622 2000-05-21  Dave Love  <fx@gnu.org>
1624         * movemail.c: Include config.h, not ../src/config.h.
1625         (Errmsg): Bump length.
1627         * pop.c (ERROR_MAX): Increase to 160.
1629 2000-05-04  Gerd Moellmann  <gerd@gnu.org>
1631         * ebrowse.c (DEFAULT_OUTFILE): Set to `BROWSE'.
1633 2000-05-02  Eli Zaretskii  <eliz@is.elta.co.il>
1635         * ebrowse.c (PATH_LIST_SEPARATOR) [__MSDOS__ || WINDOWSNT]:
1636         Define to semi-colon.
1637         (FILENAME_EQ): New macro, for comparing file names.
1638         (add_member_decl, add_global_decl, add_member_defn): Use FILENAME_EQ.
1639         (process_file): Don't assume that fread always reads as many bytes
1640         as it was told to (DOS-style CR-LF text files fail this logic).
1641         (open_file): Allocate enough space for path->path plus the file
1642         name and the slash.
1644 2000-04-19  Dave Love  <fx@gnu.org>
1646         * etags.c (Texinfo_functions): New function.
1647         (lang_names): Install it.
1648         (Texinfo_suffixes): New variable.
1650 2000-04-19  Gerd Moellmann  <gerd@gnu.org>
1652         * ebrowse.c (xmalloc, xrealloc): Rewritten.
1653         (declaration): Remove parameter IS_EXTERN.
1654         (class_definition): Remove unused variable.
1656 2000-04-09  Gerd Moellmann  <gerd@gnu.org>
1658         * Makefile.in (INSTALLABLES): Add ebrowse.
1659         (ebrowse): New target.
1661         * ebrowse.c: New file.
1663 2000-03-29  Andreas Schwab  <schwab@suse.de>
1665         * make-docfile.c (scan_lisp_file): Also look for `defsubst'.
1667 2000-03-02  Gerd Moellmann  <gerd@gnu.org>
1669         * etags.c (lisp_suffixes)  Add `LSP'.
1671 2000-02-10  Francesco Potorti`  <pot@gnu.org>
1673         * etags.c (iswhite): Redefine not to consider '\0' as white
1674         space, and use it throughout in place of isspace, thus preventing a
1675         potential signed char to int conversion problem.
1676         (MSDOS): #undefine befere redefining
1678 2000-02-04  Francesco Potorti`  <pot@gnu.org>
1680         * etags.c (many functions): Add prototypes.
1682 2000-02-10  Dave Love  <fx@gnu.org>
1684         * etags.c (pfnote, new_pfnote, C_entries, prolog_pred)
1685         (erlang_func): Add `static' to definitions to keep pcc happy.
1687 2000-01-31  Francesco Potorti`  <pot@gnu.org>
1689         * etags.c [MSDOS]: Set MSDOS to 1 if #defined, 0 otherwise.
1690         (get_compressor_from_suffix, process_file): Use MSDOS in if clause.
1691         (etags_strchr, etags_strrchr): Use const char * and int as arguments.
1692         (getenv, getcwd): Only declare them if necessary.
1693         (EMACS_NAME): New constant macro.
1694         (print_version): Use it.
1695         (P_) [__STDC__]: Macro for defining function prototypes.
1697 2000-01-18  Fabrice Popineau  <Fabrice.Popineau@supelec.fr>
1699         * etags.c [WINDOWSNT]: #include <direct.h>
1701 2000-01-18  Martin Buchholz  <martin@xemacs.org>
1703         * etags.c (all functions): Made them static.
1704         (all functions): Write prototypes.
1706 2000-01-29  Richard M. Stallman  <rms@caffeine.ai.mit.edu>
1708         * movemail.c (main): Improve error message if can't create lock file.
1710 2000-01-28  Eric Hanchrow  <offby1@blarg.net>
1712         * emacsclient.c (socket_status): New function.
1713         (main): If $LOGNAME or $USER exist and differ from our euid, look
1714         for a socket based on the UID associated with the name.
1716 2000-01-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1718         * emacsclient.c: Add option -a EDITOR and environment variable
1719         ALTERNATE_EDITOR.  Exec this editor if we fail to contact Emacs.
1721 1999-12-10  Jonathan Kamens  <jik@kamens.brookline.ma.us>
1723         * movemail.c (popmail): Allow mailbox specifications of the
1724         form `po:username:hostname'.
1726 1999-11-19  Francesco Potorti`  <pot@gnu.org>
1728         * etags.c (_GNU_SOURCE): Define only if undefined.
1729         (get_scheme): Declaration deleted.
1730         (main): Error was called with an integer as second arg, instead of
1731         a char pointer.
1732         (canonicalize_filename): Bug removed.
1734 1999-11-18  Dave Love  <d.love@dl.ac.uk>
1736         * etags.c (C_entries): Rename label `intoken', avoiding K&R
1737         lossage from name clash with macro.
1739 1999-11-13  Gerd Moellmann  <gerd@gnu.org>
1741         * Makefile.in (b2m): Add dependency on GETOPTDEPS.
1743 1999-11-03  Gerd Moellmann  <gerd@gnu.org>
1745         * etags.c (print_help): Change email address to send bugs to.
1747 1999-11-01  Francesco Potorti`  <pot@gnu.org>>
1749         * etags.c: Add suffix psw for PSWrap.
1750         (L_getit): Generalize a "cp!=' '" into "!isspace(*cp)".
1751         (Postscript_functions): Add code for PSWrap.
1752         (Scheme_functions): Use local pointer and new get_tag function.
1753         (get_tag): New name for old get_scheme.
1754         (process_file): Do not free NULL when file does not exist.
1755         (typdef): ttypedefseen renamed to tkeyseen, new label ttypeseen.
1756         (C_entries): Modifications that make --members tag even inside
1757         typedefs and C nested structs (one level only).
1758         (consider_token): Correct a bug which prevented tagging of enum
1759         constants.
1760         (C_stab_entry): Add if, for, while, switch, return as
1761         st_C_ignore.  This makes it simpler to work when cblev!=0.
1763         * etags.c (C_entries): Tag member function declarations when
1764         --declarations is used.
1766         * etags.c (C_entries, consider_token): C++ `operator' now is
1767         tagged in most cases.
1768         As before, :: is not recognised if surrounded by spaces.
1770         * etags.c (relative_filename): Account for DOS file names such
1771         that is impossible to make one relative to another.
1773         * etags.c (sym_type): New st_C_extern tag.
1774         (gperf input): Use it for spotting external declarations.
1775         (print_help): Document the new behaviour of --declarations.
1776         (fvextern): New global variable.
1777         (consider_token, C_entries): Use it.
1779         * etags.c (HAVE_GETCWD) [WINDOWSNT]: Define if undefined.
1780         (etags_getcwd): Remove test for WINDOWSNT.
1782         * etags.c (process_file) [MSDOS]: If foo.c.gz is not found, try
1783         foo.cgz, foo.cz, etc.
1785         * etags.c (declarations): New global switch.
1786         (longopts): Describe it.
1787         (print_help): Document it.
1788         (C_entries): Use it.
1789         (process_file): Don't process a file twice.
1791         * etags.c (Fortran_functions): No tags for "procedure".
1793 1999-11-01  Eli Zaretskii  <eliz@is.elta.co.il>
1795         * etags.c (get_compressor_from_suffix): Second argument EXTPTR, if
1796         non-zero, returns a pointer to where the extension begins; callers
1797         changed.
1798         [MSDOS]: Support DOS file names by handling e.g. foo.cgz as if it
1799         were foo.c.gz.
1801 1999-11-01  Francesco Potorti`  <pot@gnu.org>
1803         * etags.c (sym_type, C_stab_entry): New constant st_C_operator.
1804         (fvdev): New constant foperator.
1805         (consider_token): Use it to get "operator" in C++.
1806         (C_entries): Extend length of operator@ function name.
1807         (C_entries): Use foperator when necessary.
1809         * etags.c (main) [!ETAGS_REGEXPS]: Do not call free_patterns.
1811         * etags.c (compressor): New struct for compressed files.
1812         (get_compressor_from_suffix): New function.
1813         (get_language_from_suffix): Use it.  Also, semantics changed.
1814         (process_file): Consider compressed files, close file.
1815         (find_entries): Use different call arg for get_language_from_suffix,
1816         don't close file.
1818         * etags.c (main): Call free_tree.
1819         (find_entries): Do not free curfile.
1820         (pfnote): Cosmetic change: NULL and '\0' where appropriate.
1821         (prolog_pred, erlang_func, substitute): Cast strlen to int when
1822         comparing.
1823         (canonicalize_filename): Shut up compiler warning.
1824         (Perl_functions): Make tag significant.
1826 1999-11-01  Dave Love  <d.love@dl.ac.uk>
1828         * etags.c (longopts, optstring): New option --ignore-case-regex (-c).
1829         (argument_type): New member at_icregexp.
1830         (lc_trans): New global.
1831         (main): Fill lc_trans.  Process -c args.
1832         (add_regex): New arg determining whether to use translation table.
1833         (analyse_regex): New arg.  Use it for add_regex.
1835 1999-11-01  Francesco Potorti`  <pot@gnu.org>
1837         * etags.c (init): Cosmetic change: NULL --> '\0'.
1838         (erlang_attribute): Bug corrected (uninitialized variable).
1839         (filename_is_absolute): New function replaces absolutefn macro and
1840         corrects a bug.  All callers changed.
1841         (canonicalize_filename): New function.
1842         (process_file, etags_getcwd, absolute_dirname): Use it.
1843         (relative_filename, absolute_filename): Removed var shadowing.
1844         (C_entries, Pascal_functions): Add fake initializations to keep
1845         compilers quiet.
1846         (TeX_functions, Prolog_functions, Erlang_functions): Cleanup.
1848         * etags.c (xrnew): New macro.  All callers of xrealloc changed.
1849         (language): New typedef (was struct lang_entry).
1850         (curlang): New global variable.
1851         (node): Typedef renamed from NODE.
1852         (linebuffer): New typedef (was struct linebuffer).
1853         (pattern): New typedef (was struct pattern).  Some members added.
1854         Now used as element of a linked list.
1855         (patterns, num_patterns): Global variables deleted.
1856         (p_head): New global variable.
1857         (forced_lang): New global variable (replaces lang_func).
1858         (get_language_from_name, get_language_from_interpreter)
1859         (get_language_from_suffix): Semantics changed.  All callers changed.
1860         (last_node): New global variable.
1861         (free_tree, add_node, put_entries, total_size_of_entries):
1862         Change name of local vars to avoid clashes with typedef node.
1863         (number_len): Rewritten for elegance.
1864         (token): New typedef replaces TOKEN.
1865         (analyse_regex, add_regex): Rewritten for new functionality.
1866         (free_patterns): New function called from main and add_regex.
1867         (initbuffer, readline_internal, readline, grow_linebuffer):
1868         Change name of local vars to avoid clashes with typedef linebuffer.
1869         (readline): Rewritten for new functionality.
1871         * etags.c: (Scheme_suffixes): New suffix ".ss".
1872         (print_help): --globals is now used for more than C-type languages.
1873         (Perl_functions): Tag global variables ("my" and "local").
1875         * etags.c (print_help): Some messages clarified.
1876         (LOOP_ON_INPUT_LINES): New macro.
1877         (just_read_file, Fortran_functions, Asm_labels, Perl_functions)
1878         (Python_functions, Cobol_paragraphs, Pascal_functions)
1879         (Lisp_functions, Postscript_functions, Scheme_functions)
1880         (TeX_functions, Prolog_functions, Erlang_functions): Use it.
1881         (Cobol_paragraphs, Postscript_functions, TeX_functions)
1882         (Prolog_functions, Erlang_functions): Use a local variable instead
1883         of the global variable dbp.
1884         (Pascal_functions, L_isquote, Scheme_functions): Use GNU coding
1885         standard indentation.
1887         * etags.c (Python_suffixes, lang_names, Python_functions):
1888         Python support.
1889         (skip_spaces, skip_non_spaces): Utility functions.
1890         (find_entries, takeprec, getit, Fortran_functions, Perl_functions)
1891         (Python_functions, L_getit, Lisp_functions, Scheme_functions)
1892         (prolog_pred, erlanf_func, erlang_attribute): Use them.
1893         (eat_white): Deleted.
1895         * etags.c (CHAR, init): Keep into account non US-ASCII
1896         characters and compilers with default signed chars.
1897         (L_getit): Tag "(defstruct (foo", "(defun (operator" and similar
1898         constructs.
1900         * (C_stab_entry): "interface" in Java behaves like "class".
1902         * etags.c: (HAVE_NTGUI) [WINDOWSNT]: #undef if HAVE_CONFIG_H.
1903         (main): Put interval syntax here.
1904         (add_regex): And remove it from here.
1906         * etags.c (suggest_asking_for_help): Provide a
1907         meaningful help message with and without LONG_OPTIONS.
1909         * etags.c: <io.h> [MSDOS]: Include it, don't include string.h.
1910         <stdlib.h, string.h>: Don't test MSDOS when including them.
1911         (white, nonam, endtk): Like elsewhere, use \r instead of \013.
1912         (put_entries): Correctly use %ld instead of %d in printf.
1914         * etags.c: <unistd.h> [HAVE_UNISTD_H]: Include conditionally, else
1915         declare getcwd if HAVE_GETCWD.
1916         (consider_token): Dead break instruction removed.
1918 1999-10-19  Paul Eggert  <eggert@twinsun.com>
1920         Add support for large files.  Merge glibc 2.1.2.
1922         * b2m.c, emacsclient.c, emacsserver.c, fakemail.c, make-docfile.c,
1923         movemail.c, pop.c:
1924         Do not include <stdlib.h>, as <config.h> does this now.
1926         * b2m.c, emacsserver.c, etags.c, profile.c:
1927         Include <config.h> before any system include files.
1929         * emacsclient.c, emacsserver.c, fakemail.c, movemail.c, pop.c,
1930         test-distrib.c:
1931         (read, write, open, close): Do not undef.
1933         * getopt.c, getopt1.c: Adopt glibc 2.1.2, with the following fix:
1934         (const): Do not define if HAVE_CONFIG_H; that's config.h's job.
1936         * getopt.h: Adopt glibc 2.1.2.
1938 1999-10-15  Dave Love  <fx@gnu.org>
1940         * Makefile.in (pop.o): Depend on config.h.
1942 1999-10-11  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
1944         * pop.c: Use "pop3" as the POP service name on all platforms,
1945         instead of using "pop" on Unix and "pop3" on Windows NT.  "pop3"
1946         has been the standard service name since RFC 1340 was published in
1947         July 1992, so I think it's safe to start using it by default.
1949 1999-09-27  Dave Love  <fx@gnu.org>
1951         * make-docfile.c (scan_lisp_file): Fix typo causing infloop.
1953 1999-09-19  Richard M. Stallman  <rms@caffeine.ai.mit.edu>
1955         * make-docfile.c (scan_lisp_file): Fix previous changes;
1956         swallow CRLF like just CR or just LF.
1958 1999-09-03  Richard Stallman  <rms@gnu.org>
1960         * make-docfile.c: Include config.h not ../src/config.h.
1961         (main, fopen, chdir): Add #undef.
1962         (read_c_string, scan_c_file, skip_white, read_lisp_symbol)
1963         (scan_lisp_file): Handle \r like \n.
1965 1999-08-30  Andreas Schwab  <schwab@gnu.org>
1967         * make-docfile.c, fakemail.c: Include <stdlib.h> if available.
1969         * emacsserver.c: Include <stdlib.h> if available.  Don't declare
1970         errno if it's a macro.
1972         * test-distrib.c: Include <unistd.h> if available.
1974 1999-08-29  Richard Stallman  <rms@gnu.org>
1976         * emacsclient.c (print_help_and_exit): Mention --version.
1978 1999-08-25  Richard M. Stallman  <rms@gnu.org>
1980         * emacsclient.c (decode_options): Update version output.
1981         (print_help_and_exit): Update bug report address.
1983 1999-08-13  Richard M. Stallman  <rms@gnu.org>
1985         * emacsclient.c (main): Move the dynamic allocation of
1986         system_name outside of the SERVER_HOME_DIR conditional.
1987         * emacsserver.c (main): Likewise.
1989 1999-08-10  Gerd Moellmann  <gerd@gnu.org>
1991         * grep-changelog: New.
1992         * Makefile.in (INSTALLABLE_SCRIPTS): Add it.
1994 1999-07-12  Richard Stallman  <rms@gnu.org>
1996         * Version 20.4 released.
1998 1999-06-30  Markus Rost  <markus.rost@mathematik.uni-regensburg.de>
2000         * Makefile.in (clean): Remove fns*.el.
2002 1999-06-23  Dave Love  <fx@gnu.org>
2004         * etags.c (erlang_attribute): Fix undefined variable usage (after
2005         Potorti).
2007 1999-05-2  Andrew Innes  <andrewi@gnu.org>
2009         * movemail.c (main) [WINDOWSNT]: Call ftruncate, which is now
2010         mapped to _chsize.
2012 1999-04-29  Richard M. Stallman  <rms@gnu.org>
2014         * emacsclient.c (main, both versions): Use quote_file_name on cwd.
2016 1999-03-30  Dave Love  <fx@gnu.org>
2018         * sorted-doc.c (main): Split up tables.  Modify the preamble
2019         somewhat.
2021 1999-03-05  Geoff Voelker  <voelker@cs.washington.edu>
2023         * makefile.nt: Remove common multiple file compilation commands.
2025 1999-02-26  Richard Stallman  <rms@gnu.org>
2027         * Version 20.4 released.
2029         * Makefile.in (yow): Depend on epaths.h, not paths.h.
2031         * yow.c: Refer to epaths.h.
2033 1999-02-22  Simon Josefsson  <jas@pdc.kth.se>
2035         * emacsserver.c (perror_1, fatal_error): Don't compile unless needed.
2037 1999-01-27  Andrew Innes  <andrewi@gnu.org>
2039         * makefile.nt: Do make version comparison as strings.
2041 1999-01-25  Richard Stallman  <rms@gnu.org>
2043         * emacsclient.c (xmalloc): Fix previous change.
2045 1999-01-24  Richard M. Stallman  <rms@borg.ai.mit.edu>
2047         * emacsclient.c (xmalloc): Declare to return long.
2049 1999-01-22  Geoff Voelker  <voelker@cs.washington.edu>
2051         * etags.c (etags_getcwd, absolute_filename) [DOS_NT]: Canonicalize
2052         the case of the drive letter.
2054 1999-01-15  Richard Stallman  <rms@psilocin.ai.mit.edu>
2056         * emacsserver.c (main): Eliminate arbitrary limit on
2057         length of system_name.
2059         * emacsclient.c (main): Eliminate arbitrary limit on
2060         length of system_name.
2061         (xmalloc): Define unconditionally.
2063 1999-01-12  Darrin B. Jewell  <jewell@mit.edu>
2065         * etags.c (relative_filename): Stop backward search at beginning
2066         of string, since non-Unix systems can have absolute paths with no
2067         initial slash.
2069 1998-12-08  Geoff Voelker  <voelker@cs.washington.edu>
2071         * makefile.nt: Do string comparision of _NMAKE_VER.
2073 1998-11-03  Theodore Jump  <tjump@cais.com>
2075         * makefile.nt: Compile multiple source files when possible.
2077 1998-10-13  Richard Stallman  <rms@psilocin.ai.mit.edu>
2079         * Makefile.in: Replace tabs with spaces
2080         when they might confuse some Make versions.
2082 1998-10-10  Richard Stallman  <rms@psilocin.ai.mit.edu>
2084         * emacsclient.c (main): Null-terminate system_name.
2086         * emacsserver.c (main): Null-terminate system_name.
2088 1998-09-21  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
2090         * movemail.c (popmail, pop_retr) [MAIL_USE_POP]: When displaying
2091         an error message from POP, mention that it's from POP, to
2092         distinguish it from local error messages.
2094 1998-09-04  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
2096         * movemail.c [MAIL_USE_POP]: Add the "-r" flag to reverse the
2097         order of messages downloaded from a POP server (e.g., if the
2098         server stores messages in mailboxes in reverse order).
2100 1998-08-19  Richard Stallman  <rms@psilocin.ai.mit.edu>
2102         * Version 20.3 released.
2104 1998-08-11  Paul Eggert  <eggert@twinsun.com>
2106         * rcs2log: Update copyright date and bug report address.
2107         (initialize_fullname): Prefer getent if available.
2109 1998-07-30  Paul Eggert  <eggert@twinsun.com>
2111         * lib-src/Makefile.in (REGEXPDEPS, regex.o):
2112         Prepend $(srcdir)/ to rule dependencies outside this dir.
2114 1998-06-09  Andrew Innes  <andrewi@harlequin.co.uk>
2116         * etags.c (etags_getcwd) [WINDOWSNT]: Use getcwd on Windows.
2118 1998-06-06  Richard Stallman  <rms@psilocin.ai.mit.edu>
2120         * Makefile.in: Properly terminate a comment.
2122 1998-06-01  Andrew Innes  <andrewi@mescaline.gnu.org>
2124         * movemail.c (sys_wait): Rename to wait.
2126         * ntlib.h: Undefine _WINSOCKAPI_.
2128         * makefile.nt (LOCAL_FLAGS): Define HAVE_CONFIG_H.
2130 1998-05-30  Geoff Voelker  <voelker@cs.washington.edu>
2132         * ntlib.c (getppid): Look for EM_PARENT_PROCESS_ID.
2134 1998-05-01  Andrew Innes  <andrewi@harlequin.co.uk>
2136         * movemail.c [WINDOWSNT]: Undefine DISABLE_DIRECT_ACCESS.  Force
2137         all file i/o to be in binary mode.  Include ntlib.h.
2139 1998-04-27  Andreas Schwab  <schwab@delysid.gnu.org>
2141         * make-docfile.c: Include <unistd.h> for chdir.
2143 1998-04-25  Richard Stallman  <rms@psilocin.gnu.org>
2145         * etags.c (TEX_decode_env): Don't free the value getenv returns.
2147 1998-04-17  Geoff Voelker  <voelker@cs.washington.edu>
2149         * makefile.nt (obj): Update with new files in src.
2150         (clean): Delete patch scratch files, optimized compilation dir.
2152 1998-04-08  Dave Love  <fx@gnu.org>
2154         * emacsclient.c: Move inclusion of unistd.h to top, else fails on
2155         Irix6, at least.
2157 1998-04-06  Andreas Schwab  <schwab@gnu.org>
2159         Silence -Wimplicit:
2160         * movemail.c: Move cancelations up.  Include <stdlib.h> if
2161         available.
2162         * fakemail.c (_XOPEN_SOURCE): Define for declaration of cuserid.
2163         (parse_header): Explicitly declare return type.
2164         * emacsserver.c: Include <unistd.h> if available.
2165         (main, handle_signals, perror_1, fatal_error): Explicitly declare
2166         return types.  Add forward declarations.
2167         * emacsclient.c: Include <stdlib.h> and <unistd.h> if available.
2168         Don't declare geteuid.
2169         (print_help_and_exit): Change return type to void.  Forward
2170         declare it.
2171         * b2m.c: Include <stdlib.h> if available.
2172         (main): Explicitly declare return type.
2174 1998-04-03  Richard Stallman  <rms@delysid.gnu.org>
2176         * etags.c (put_entries): Use %ld.
2178         * b2m.c (fatal): Declare the arg.
2180 1998-04-03  Richard Stallman  <rms@psilocin.gnu.org>
2182         * etags.c (put_entries): Use %ld.
2184         * b2m.c (fatal): Declare the arg.
2186 1998-03-26  Richard Stallman  <rms@psilocin.gnu.org>
2188         * pop.c (pop_getline): Renamed from getline.
2190 1998-03-05  Richard Stallman  <rms@psilocin.gnu.org>
2192         * Makefile.in (install): Use INSTALL_STRIP with INSTALL_PROGRAM
2193         for the utilities.
2195 1998-01-23  Dave Love  <d.love@dl.ac.uk>
2197         * etags.c (getit, Cobol_paragraphs, Pascal_functions,
2198         Postscript_functions, prolog_pred, erlang_func, erlang_attribute):
2199         Always make named tags.
2200         (Fortran_functions): Grok BLOCK DATA.
2202 1998-01-23  Andreas Schwab  <schwab@gnu.org>
2204         * movemail.c (main): Fix interwoven brace and cpp conditional
2205         nesting.
2207 1997-12-04  Karl Heuer  <kwzh@delysid.gnu.org>
2209         * movemail.c, pop.c, pop.h: Allow messages retrieved from the POP
2210         server to contain embedded nulls.
2212 1997-12-03  Paul Eggert  <eggert@delysid.gnu.org>
2214         * movemail.c:
2215         (mbx_write) [MAIL_USE_POP]: Disable the code which quotes with a
2216         '>' any lines starting with "From " read from the POP server, but
2217         leave the code in place, wrapped in #ifdef
2218         MOVEMAIL_QUOTE_POP_FROM_LINES, in case we have to restore it later
2219         because it turns out that something is depending on it.  Change
2220         suggested by Paul Eggert <eggert@twinsun.com>.
2221         Convert the character \037 (^_) at the beginning of a line into
2222         the character '^' followed by the character '_', because otherwise
2223         Emacs can't parse the resulting file as a valid BABYL file.
2224         Change suggested by Paul Eggert <eggert@twinsun.com>.
2226 1997-12-03  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
2228         * movemail.c, pop.c, pop.h: Allow messages retrieved from the POP
2229         server to contain embedded nulls.
2231 1997-12-02  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
2233         * movemail.c (mbx_write) [MAIL_USE_POP]: Disable the code which
2234         quotes with a '>' any lines starting with "From " read from the
2235         POP server, but leave the code in place, wrapped in #ifdef
2236         MOVEMAIL_QUOTE_POP_FROM_LINES, in case we have to restore it later
2237         because it turns out that something is depending on it.  Change
2238         suggested by Paul Eggert <eggert@twinsun.com>.
2240         Convert the character \037 (^_) at the beginning of a line into
2241         the character '^' followed by the character '_', because otherwise
2242         Emacs can't parse the resulting file as a valid BABYL file.
2243         Change suggested by Paul Eggert <eggert@twinsun.com>.
2245 1997-11-22  Richard Stallman  <rms@gnu.org>
2247         * b2m.c: Include getopt.h.
2248         (main): Use getopt_long to handle --version and --help.
2250         * Makefile.in (b2m): Define VERSION.  Link with $(GETOPTOBJS).
2252 1997-10-31  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
2254         * pop.c (fullwrite): Get rid of an extra call to write.  Problem
2255         pointed out by Chiaki Ishikawa.
2257 1997-10-16  Dave Love  <d.love@dl.ac.uk>
2259         * etags.c (L_getit): Always make named tags so that Emacs
2260         completion on symbols containing `:' etc. works.
2261         (get_scheme): Likewise.
2263 1997-09-24  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
2265         * pop.c: Use system header files instead of declaring C-library
2266         functions explicitly.
2268 1997-09-19  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2270         * Version 20.2 released.
2272 1997-09-15  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2274         * Version 20.1 released.
2276 1997-09-02  Andrew Innes  <andrewi@harlequin.co.uk>
2278         * makefile.nt (movemail.exe): Link wsock32.lib before LIBS.
2280         * ntlib.c (getpid): Delete function.
2282 1997-08-28  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2284         * make-docfile.c (scan_lisp_file): Handle custom-declare-variable.
2286 1997-08-26  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2288         * emacsclient.c [HAVE_SYSVIPC]: Include errno.h, as in the other case.
2289         (main) [!BSD_SYSTEM]: Fix error message for getcwd failure.
2291 1997-08-14  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2293         * emacsserver.c (main): Use SOCKLEN_TYPE for fromlen, if it is defined.
2295 1997-08-13  Kazushi (Jam) Marukawa  <jam@poboxes.com>
2297         * profile.c (get_time): Cast arg to fprintf.
2299         * hexl.c (main): Use %08lx instead of %08x in printf because the
2300         variable named addresses is long.
2302 1997-08-08  Geoff Voelker  <voelker@cs.washington.edu>
2304         * makefile.nt (lisp): Update paths to lisp files that have moved.
2306 1997-08-08  Andrew Innes  <andrewi@harlequin.co.uk>
2308         * makefile.nt (ctags.obj): New target.
2309         (etags.obj, getopt.obj, make-docfile.obj): Update dependencies.
2311         * ntlib.h: Add includes.
2312         Undo definitions of crt routines from config.h.
2314 1997-08-06  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2316         * etags.c (Yacc_suffixes, Asm_suffixes): Add some alternatives.
2318 1997-07-22  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
2320         * pop.c: Support auto-configuration of both Kerberos V4 and
2321         Kerberos V5 for movemail, including detection of V4 and V5 header
2322         files and libraries.
2323         Include <string.h> when STDC_HEADERS is defined, to get
2324         declarations of string functions.
2325         [KERBEROS5] (socket_connection): Support the current MIT Kerberos
2326         V5 API rather than the old one.
2327         [KERBEROS] (socket_connection): Change a constant name from
2328         SOCKET_ERROR to POP_SOCKET_ERROR to avoid a namespace conflict
2329         with a constant in a header file.
2331         * Makefile.in: Support auto-configuration of both Kerberos V4 and
2332         Kerberos V5 for movemail, including detection of V4 and V5 header
2333         files and libraries.
2335 1997-07-17  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2337         * fakemail.c [HAVE_UNISTD_H]: Include unistd.h.
2339         * etags.c [HAVE_UNISTD_H]: Include unistd.h.
2341 1997-07-09  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2343         * emacsclient.c [C_ALLOCA] (xmalloc): New function.
2345 1997-07-04  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2347         * movemail.c (rindex): Add declaration.
2349 Tue Jul  1 01:09:07 1997  Geoff Voelker  <voelker@cs.washington.edu>
2351         * makefile.nt (GETOPTOBJS, GETOPTDEFS, MOVEMAILOBJS): Define.
2352         (movemail.exe): Depend upon and link with getopt files.
2353         (obj): Include new source files.
2354         (FACE_SUPPORT, MOUSE_SUPPORT, FLOAT_SUPPORT, WINNT_SUPPORT): Define.
2355         (lisp): Include new and reorganized elisp files.
2357 1997-06-27  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2359         * Makefile.in (blessmail): Find blessmail.el in mail subdirectory.
2361 1997-06-25  Paul Eggert  <eggert@twinsun.com>
2363         * rcs2log: Don't assign to $0 in awk; some awks don't allow this.
2365 1997-06-14  Karl Heuer  <kwzh@gnu.ai.mit.edu>
2367         * b2m.c (readline): Terminate buffer properly when EOF seen.
2368         Test for valid pointer before dereferencing it.
2370 1997-05-30  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2372         * Makefile.in (etags): Remove -DETAGS_REGEXPS, because now it is
2373         defined inside etags.c if HAVE_CONFIG_H is defined.
2375 1997-05-29  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2377         * etags.c: (logical): Type name changed to bool.
2378         (ETAGS_REGEXPS, LONG_OPTIONS) [HAVE_CONFIG_H]: #define them.
2379         (<getopt.h>) [LONG_OPTIONS]: Include conditionally.
2380         (getopt_long) [!LONG_OPTIONS]: Redefine as macro.
2381         (main): Accepted options depend on ETAGS_REGEXPS and LONG_OPTIONS.
2382         (longopts): New long options without short counterpart are
2383         globals, members, no-globals, no-members.  Regexp options are now
2384         defined  conditionally to ETAGS_REGEXPS.
2385         (print_help): Updated.
2387 1997-05-22  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2389         * etags.c (C_entries): Use "." instead of "::" for Java.
2390         (consider_token): is_func renamed to is_func_or_var.
2391         (C_entries): is_func renamed to funorvar.
2392         (C_entries): Initialise tok.named.
2393         (sym_type, C_stab_entry, consider_token): st_C_ignore is used to
2394         get rid of "import", "package" and "friend".
2395         (fvdef): Renamed from funcdef.  Also some constants renamed.  All
2396         users changed.
2397         (C_entries): Make separate tags for variables separated by comma.
2398         (globals, members): New flags.
2399         (main, C_entries): Use them.
2400         (make_C_tag, C_entries): Make tok a global variable.
2402 1997-05-16  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2404         * etags.c (funcdef): New vignore constant.
2405         (consider_token, C_entries): Use it to tag global variables.
2406         (print_help): Update for global variables.
2407         (consider_token, C_entries): Set the len member of token_name.
2408         (prolog_pred): Cleanup according to GNU coding standards.
2409         (Cobol_suffixes, lang_names, Cobol_paragraphs): Cobol support.
2410         (prolog_white, erlang_white): Renamed to eat_white, callers changed.
2412 1997-05-15  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2414         * etags.c (CHARS, CHAR): New constant and macro.
2415         (iswhite, begtoken, intoken, endtoken): Use them.
2416         (notinname, _nin, nonam): New macro, array, string.
2417         (init): Cleanup and init _nin.
2418         (new_pfnote): New function.
2419         (make_C_tag) [traditional_tag_style]: Use it.
2420         (traditional_tag_style): Costant set to TRUE for now.
2422 1997-05-14  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2424         * etags.c (C_entries, Pascal_functions): Cleanup.
2425         (TeX_functions): NULL as a function arg needs a cast.
2426         (Erlang_functions, erlang_func, erlang_attribute): Cleanup.
2428 1997-05-13  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2430         * etags.c (TeX_functions): Cleaned up.
2431         (tex_getit): Removed.
2433 1997-05-13  Paul Eggert  <eggert@twinsun.com>
2435         * rcs2log (files): When computing arguments automatically, ignore
2436         non-files within the RCS subdirectory.
2438 1997-05-13  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2440         * etags.c (C_JAVA): New #define.
2441         (Cjava_suffixes): .java is Java.
2442         (Cjava_entries): New function.
2443         (lang_names): Add Java.
2444         (sym_type): Add st_C_javastruct for Java.
2445         (C_stab_entry): Add `extends' and `implements' keywords.
2446         (consider_token, C_entries): Recognise Java structures.
2448 1997-05-12  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2450         * etags.c: (Cplusplus_suffixes): .pdb is Postscript with C syntax.
2451         (Postscript_suffixes): .ps is Postscript.
2452         (lang_names): Add Postscript.
2453         (Postscript_functions): New function.
2454         (TEX_decode_env): Close minor memory leak.
2455         (just_read_file): Correct the char number of the tag.
2457 1997-05-11  Paul Eggert  <eggert@twinsun.com>
2459         * rcs2log (loginFullnameMailaddrs, logins, rlog_options, files):
2460         Don't prepend $nl since this causes some shells to generate the
2461         empty string when IFS is $nl.
2462         (printlogline): Use SOH (octal code 1), not CR, since some
2463         PC-based shells mishandle CR.
2464         (initialize_fullname): Set NIS_PATH to the empty string before invoking
2465         nismatch, in case it's set to some nonstandard value.
2467 1997-05-06  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
2469         * pop.c (getline): Don't miss CRLF pairs when the CR and LF are
2470         read in separate blocks.
2472 1997-04-30  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2474         * etags.c [TeX_named_tokens]: Set to FALSE if undefined.
2475         (struct linebuffer): New member `len' is the length of the string.
2476         (find_entries, Pascal_functions, TeX_functions, TEX_getit):
2477         Use it instead of strlen.
2478         (TEX_getit): Declare and define unconditionally as static.
2479         (TeX_functions): Use if instead of #if TeX_named_tokens.
2480         (add_regex): Set RE_INTERVALS flag for regex compilation.
2481         (substitute): Code cleanup.
2482         (readline_internal): Code cleanup, set new member `len'.
2483         (readline): Bug corrected.
2485 1997-04-23  Geoff Voelker  <voelker@cs.washington.edu>
2487         * makefile.nt: Change references of windowsnt.h to ms-w32.h.
2488         (obj): Change references of nt*.c files to w32*.c files.
2490 1997-04-15  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2492         * etags.c (xnew): Add support for debugging with chkmalloc.
2493         (error): Use this instead of printf whenever possible.
2494         (main): Only call xnew after having initialised progname.
2495         (substitute): Bad memory corruption error corrected.
2497 1997-04-08  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2499         * etags.c (add_regex): Undo previous change.
2500         (relative_filename): Small memory leak closed.
2501         (absolute_filename): Cleaned up the code, possibly closing a bug.
2502         (absolute_dirname): Always return a newly allocated string.
2504 1997-03-21  Paul Eggert  <eggert@twinsun.com>
2506         * rcs2log (files): Ignore files in RCS directory whose names are
2507         of the form ,*, or *_; they are probably RCS lock files.
2508         Also, ignore files named .rcsfreeze.log or .rcsfreeze.ver;
2509         they are used by rcsfreeze.
2511 1997-03-14  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2513         * etags.c (add_regex): reset *putbuf before using it.
2515 1997-02-23  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
2517         * movemail.c (popmail): Remove some unnecessary function
2518         declarations.
2519         (popmail, pop_retr): Since popmail always passes mbx_write and mbf
2520         into pop_retr, there's no reason to pass in mbx_write, and the
2521         file argument can be declared FILE * explicitly.  This fixes a
2522         compilation problem on systems with 64-bit pointers.
2524 1997-02-13  Richard Stallman  <rms@whiz-bang.gnu.ai.mit.edu>
2526         * movemail.c: Delete duplicate inclusion of fcntl.h
2527         and duplicate #undefs of open, read, write, close.
2529 1997-01-20  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
2531         * movemail.c (main): Do not display "[POP-password]" in the usage
2532         message when movemail is compiled without POP support.
2533         (main, popmail): Add the optional "-p" argument, which causes
2534         movemail to leave mail in the inbox after copying it into the
2535         output file.
2537         * Makefile.in (movemail): Link with getopt.
2539 1997-01-20  Paul Eggert  <eggert@twinsun.com>
2541         * rcs2log: (--help, --version): New options, per GNU coding standards.
2542         (Copyright, Help, Id): New variables, for above.
2543         (rlog): Use -q option with cvs log, to avoid useless chatter.
2545         Treat logs of "Initial revision" (RCS) or "file F was initially added
2546         on branch B." (CVS) as if they said "New file.", for consistency with
2547         change log entries.
2549 1997-01-01  Paul Eggert  <eggert@twinsun.com>
2551         * vcdiff (PATH): Add /usr/xpg4/bin,
2552         where XPG4 SCCS hangs out in Solaris 2.5.
2553         (sid1): Don't use bare -r, since XPG4 `get' does not allow it.
2555 1996-12-19  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
2557         * etags.c (streq, strneq): Use == NULL rather than !.
2559 1996-12-18  Jonathan I. Kamens  <jik@annex-1-slip-jik.cam.ov.com>
2561         * Makefile.in (LIBMAIL): New macro.  Conditionally includes -lmail.
2562         (movemail): Use LIBMAIL, to link against -lmail.
2564         * movemail.c: Include maillock.h (conditionally).
2565         Remove a redundant inclusion of <stdio.h>.
2566         (MAIL_USE_MAILLOCK): New macro, conditionally defined.
2567         (main): Add variable spool_name.
2568         Support the usage of maillock and mailunlock to
2569         lock and unlock mailboxes.
2570         (mail_spool_name): New function.
2572         * movemail.c: Fix an uninitialized variable which could cause
2573         movemail to exit with an error status incorrectly on systems which
2574         use lock files rather than a system locking function to lock
2575         mailboxes.
2577 1996-12-16  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2579         * pop.c (socket_connection): Free realhost after using it.
2581 1996-12-04  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2583         * etags.c (C_entries): Test tok.valid.  This handles some
2584         particular cases involving function declarations that failed.
2586 1996-11-22  Charles Hannum  <mycroft@gnu.ai.mit.edu>
2588         * pop.c (socket_connection):
2589         gethostbyname may return a pointer to static data.
2590         krb_realmofhost can clobber it.  So copy it.
2592 1996-11-14  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2594         * etags.c (pfnote, fatal, error): Callers using a NULL pointer
2595         must cast it to (char *) because we have no prototypes.
2596         (make_C_tag): Macro deleted, new function.
2597         (C_entries): Calls to make_C_tag macro changed to call function.
2599 1996-11-13  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2601         * etags.c (grow_linebuffer): New function.
2602         (GROW_LINEBUFFER): Macro deleted.  All callers changed.
2603         (make_tag): Macro renamed to make_C_tag.  All callers changed.
2604         (<stdlib.h>, <string.h>) [STDC_HEADERS]: New #include's.
2605         (Prolog_functions): prolog_skip_comment was called with wrong
2606         number of arguments.
2607         (xrealloc): fatal was called with wrong number of arguments
2609 1996-11-08  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2611         * etags.c (relative_filename): Bug corrected.
2612         (etags_getcwd): Avoid warning of unused variable.
2613         (C_entries, consider_token): Added support for enum labels.
2615 1996-11-03  Paul Eggert  <eggert@twinsun.com>
2617         * rcs2log: When processing cvs log output, remove `Attic/' from
2618         repository file names.
2620 1996-10-22  Karl Heuer  <kwzh@gnu.ai.mit.edu>
2622         * emacsserver.c: Fix 1996-09-02 change.
2624 1996-10-12  Paul Eggert  <eggert@twinsun.com>
2626         * rcs2log (rlog_options): Look for ' option' rather than 'unknown
2627         option', since CVS says 'invalid option'.
2628         (datearg): Use the empty string, not '-d>1970-01-01', to extract all
2629         revisions, since some hosts reject 1970-01-01 when east of UTC.
2630         (date): Remove.
2632 1996-10-06  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
2634         * etags.c (etags_getcwd) [WINDOWSNT]: Convert backslashes to slashes.
2636 1996-10-02  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2638         * etags.c (print_version): Print copyright info.
2640         * etags.c (print_help): Print the bug reporting address.
2641         (main): Use return as the last instruction, instead of exit.
2643         * etags.c (main): Don't open the tags file in cxref mode.
2645 1996-09-29  Dave Love  <d.love@dl.ac.uk>
2647         * rcs2log (date): Make default format acceptable to CVS post v1.8
2648         as well as earlier CVSs and RCS.
2650 1996-09-29  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
2652         * movemail.c (main): If the lock call fails with EBUSY or
2653         EAGAIN, retry a few times.
2655 1996-09-25  Paul Eggert  <eggert@twinsun.com>
2657         * rcs2log (rlog_options): Use $rlog, not rlog, when deciding
2658         whether to append -zLT.
2660 1996-09-16  Karl Heuer  <kwzh@gnu.ai.mit.edu>
2662         * fakemail.c: Replaced symbol BSD with BSD_SYSTEM.
2663         * emacsclient.c, movemail.c: Likewise.
2665 1996-09-09  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
2667         * emacsclient.c (longopts): Change nowait to no-wait.
2668         (print_help_and_exit): Fix option name; upcase metavars.
2670 1996-09-06  Erik Naggum  <erik@naggum.no>
2672         * emacsserver.c (main): Declare `fromlen' as size_t.
2674 1996-09-02  Eli Zaretskii  <eliz@is.elta.co.il>
2676         * etags.c (etags_getcwd): Use getcwd if available even if MSDOS.
2678 1996-09-02  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
2680         * emacsclient.c (quote_file_name): Quote with &, not \.
2681         Quote `-' only at start of file name.  Terminate the value string.
2683         * emacsserver.c: Include signal.h properly;
2684         delete the duplicate includes for it.
2686         * emacsserver.c: On fatal signal, delete socket-file:
2687         * emacsserver.c: Include signal.h.
2688         (xmalloc, fatal, error): New functions.
2689         (delete_socket, handle_signals): New functions.
2690         (progname, socket_name): New variables.
2691          [HAVE_SOCKETS] (main): Call handle_signals; set the new variables.
2693 1996-09-01  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
2695         * emacsclient.c (quote_file_name): New function.
2696         (main, both versions): Use quote_file_name.
2697         (decode_options): Don't return a value.
2698         (main, both versions): Use optind.
2699         Don't check for -nowait here.
2701         * emacsclient.c (decode_options): New function.
2702         (main, both versions): Call decode_options.
2703         (print_help_and_exit): New function.
2704         (VERSION): New macro.
2706         * Makefile.in (emacsclient): Link with getopt.
2707         Add -DVERSION so emacsclient knows its version number.
2709 1996-08-31  Geoff Voelker  <voelker@cs.washington.edu>
2711         * makefile.nt (lisp): Include dos-nt.elc.
2713 1996-08-31  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
2715         * Makefile.in (blessmail): Use $srcdir to find blessmail.el.
2717 1996-08-28  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2719         * emacsclient.c (both versions): Handle -nowait and --nowait
2720         by sending data to the server.
2722 1996-08-26  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
2724         * Makefile.in (INSTALL_STRIP): New variable.
2725         (${archlibdir}): Use INSTALL_STRIP.
2727         * Makefile.in (MOVE_LIBS): Use conditionals on KERBEROS,
2728         HAVE_LIBKRB, HAVE_LIBDES, HAVE_LIBCOM_ERR to set it up.
2730         * pop.c: Reverse conditional in previous change.
2732 1996-08-24  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
2734         * pop.c: Include des.h krb.h with no dir name if SOLARIS2.
2736 1996-08-24  Paul Eggert  <eggert@twinsun.com>
2738         * rcs2log: Use ISO 8601 date format, with time zone appended
2739         if change-log-time-zone-rule is non-nil, instead of
2740         traditional Unix date format.
2742         (datearg): When computing default from ChangeLog, handle ISO format
2743         dates in addition to old-fashioned dates from Emacs 19.31 and earlier.
2744         Don't worry about hh:mm:ss since the resolution is now by day.
2745         Use emtpy datearg, not empty rlog_options, to decide whether to pass
2746         "$datearg" option to $rlog.
2747         (logTZ): New variable, set to TZ specified by change-log-time-zone-rule.
2748         (month_data): Remove `mo'; no longer needed.
2749         (rlog_options): Use -zLT for localltime output, if `rlog' supports it.
2751         Match `revision' line of rlog output more accurately.
2753         Add -c, -v options.
2755 1996-08-23  Eli Zaretskii  <eliz@is.elta.co.il>
2757         * hexl.c: Include <config.h>, so DOS_NT is defined on MSDOS.
2759 1996-08-11  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2761         * Version 19.33 released.
2763 1996-07-31  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2765         * Version 19.32 released.
2767 1996-07-23  Andrew Innes  <andrewi@harlequin.co.uk>
2769         * etags.c (readline_internal) [DOS_NT]: Don't include CRs when
2770         computing character positions in source files.
2772 1996-07-16  Andrew Innes  <andrewi@harlequin.co.uk>
2774         * makefile.nt (clean): Use OBJDIR macro.
2776 1996-07-16  Karl Heuer  <kwzh@gnu.ai.mit.edu>
2778         * cvtmail.c, sorted-doc.c, yow.c, emacsserver.c: Undo previous change.
2780 1996-07-15  David Mosberger-Tang  <davidm@AZStarNet.com>
2782         * cvtmail.c, sorted-doc.c, yow.c: [__GNU_LIBRARY__]: Use <string.h>.
2783         * emacsserver.c (main) [__GNU_LIBRARY__]: Use size_t for fromlen.
2784         * etags.c, fakemail.c, profile.c: Declare main as int, not void.
2786 1996-07-15  Andrew Innes  <andrewi@harlequin.co.uk>
2788         * ntlib.h: Correct return type of getwd.
2789         * ntlib.c (getwd): Correct return type.
2791 1996-07-02  Richard Stallman  <rms@whiz-bang.gnu.ai.mit.edu>
2793         * emacsserver.c (main) [HAVE_SOCKETS]: Call rewind before writing
2794         to infile.
2796 1996-07-01  Andrew Innes  <andrewi@harlequin.co.uk>
2798         * makefile.nt: Remove all references to wakeup.
2800 1996-06-28  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2802         * etags.c (C_stab_entry): New keywords for C++ namespace, bool,
2803         explicit, mutable, typename.
2805 1996-06-29  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2807         * emacsclient.c (main) [HAVE_SOCKETS]: Use two separate stdio
2808         streams, one for sending and one for reading the reply.
2810 1996-06-21  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2812         * Makefile.in (timer, timer.o, getdate.o, $(srcdir)/getdate.c)
2813         (wakeup): Target deleted.
2814         (UTILITIES): Delete wakeup and timer.
2816         * wakeup.c, timer.c, getdate.y, getdate.c: Files deleted.
2818 1996-06-11  Geoff Voelker  <voelker@cs.washington.edu>
2820         * etags.c (etags_getcwd) [DOS_NT]: Change conditional to MSDOS only.
2821         * makefile.nt (ETAGS_CFLAGS): Define HAVE_GETCWD macro.
2823 1996-06-06  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
2825         * etags.c (main): Copy cwd when appending slash.
2827 1996-05-25  Karl Heuer  <kwzh@gnu.ai.mit.edu>
2829         * Version 19.31 released.
2831 1996-05-17  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2833         * etags.c (CNL_SAVE_DEFINEDEF): Set linecharno for use by readline.
2834         (Pascal_functions): Increase linecharno by the correct number of
2835         chars, inline the GET_NEW_LINE macro and delete its definition.
2837 1996-05-03  Andrew Innes  <andrewi@harlequin.co.uk>
2839         * makefile.nt (OBJDIR, BLD): Remove macro definitions.
2841 1996-05-03  Andrew Innes  <andrewi@harlequin.co.uk>
2843         * makefile.nt (LOCAL_FLAGS): Include path to NT shadow includes.
2844         (movemail.exe, fakemail.exe): Now built under Win32.o
2846         * ntlib.c: Include ntlib.h.
2847         (nt_sleep): Rename to sleep.
2848         (getwd): Return directory.
2849         (getlogin, cuserid, getuid, setuid, getpwuid, getpass, fchown,
2850         sys_ctime, sys_fopen): New functions.
2852         * ntlib.h: New file.
2854 1996-04-29  Richard Stallman  <rms@delasyd.gnu.ai.mit.edu>
2856         * pop.c (SEND, RECV): Renamed from send, recv.
2857         (pop_open, pop_trash): Make the trash_started code unconditional.
2858         (socket_connection): Delete casts to void.
2860 1996-04-28  Richard Stallman  <rms@delasyd.gnu.ai.mit.edu>
2862         * movemail.c (DIRECTORY_SEP, IS_DIRECTORY_SEP): Definitions
2863         copied from lisp.h.
2865 1996-04-22  Andrew Innes  <andrewi@harlequin.co.uk>
2867         * fakemail.c [WINDOWSNT]: Include ntlib.h.
2869         * hexl.c [DOSNT]: Include fcntl.h.
2870         [WINDOWSNT]: Include io.h.
2871         (main) [MSDOS]: Change conditional to DOS_NT.
2873         * movemail.c (access, unlink) [WINDOWSNT]: Macros undefined.
2874         (fork, syswait, DISABLE_DIRECT_ACCESS) [WINDOWSNT]: Macros defined.
2875         [WINDOWSNT]: Include locking.h.
2876         (main): Update usage message.  Use IS_DIRECTORY_SEP.
2877         (main) [DISABLE_DIRECT_ACCESS]: Don't check access if defined.
2878         (main) [WINDOWSNT]: Invoke locking instead of flock.
2879         (main) [MAIL_USE_SYSTEM_LOCK && WINDOWSNT]: Emulate ftruncate.
2880         (main) [MAIL_USE_POP]: Pass password to popmail if used.
2881         Include winsock.h; don't include unix inet headers.
2882         (popmail): Add password argument and pass it to pop_open.
2883         Open output file in binary mode.
2885         * pop.c [WINDOWSNT]: Include winsock.h and ntlib.h.
2886         Macro SOCKET_ERROR undefined.
2887         Don't declare h_errno.
2888         [!WINDOWSNT]: Define macros recv and send.
2889         [!WINDOWSNT] (POP_SERVICE): Change to pop3.
2890         (pop_open) [WINDOWSNT]: Initialize trash_started.
2891         (have_winsock) [WINDOWSNT]: New variable.
2892         (socket_connection) [WINDOWSNT]: Initialize winsock.
2893         (socket_connection): Use closesocket instead of close.
2894         (getline): Use recv instead of read.
2895         (fullwrite): Use send instead of write.
2896         (pop_trash): Use closesocket instead of close.
2897         (pop_trash) [WINDOWSNT]: Cleanup winsock.
2898         Check if being called recursively by sendline.
2900         * pop.h (struct _popserver): New field trash_started.
2902         * wakeup.c [HAVE_CONFIG_H]: Only include config.h when defined.
2904 1996-04-14  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
2906         * hexl.c (main) [DJGPP v2]: Don't change to binary for a tty.
2908 1996-04-10  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
2910         * etags.c [WINDOWSNT]: Include io.h.
2912 1996-04-10  Geoff Voelker  <voelker@cs.washington.edu>
2914         * makefile.nt (CTAGSOBJ): Compile with regexp support.
2916 1996-04-09  Eli Zaretskii  <eliz@is.elta.co.il>
2918         * hexl.c [DJGPP v2]: Include io.h.
2919         (main) [DJGPP v2]: Switch standard streams to binary with setmode.
2921         * b2m.c (main) [MSDOS]: Switch standard streams to binary under
2922         DJGPP v2.
2924 1996-04-02  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
2926         * etags.c (absolute_filename): Use absolutefn.
2928 1996-03-31  Eli Zaretskii  <eliz@is.elta.co.il>
2930         * etags.c (absolutefn) [DOS_NT]: Support Novell drives whose drive
2931         letter isn't an alphabetic character.
2932         (main) [DOS_NT]: Use binary mode on redirected `stdout'.
2933         (process_file) [DOS_NT]: Convert all slashes to forward style.
2934         (absolute_filename) [DOS_NT]: Emit error message for relative
2935         paths with a drive letter.
2936         (absolute_filename) [DOS_NT]: Handle absolute pathnames with
2937         DOS/NT drive letters which try to reference the parent of the root.
2938         (absolute_dirname) [DOS_NT]: Convert all slashes to forward style.
2940 1996-03-27  Geoff Voelker  <voelker@cs.washington.edu>
2942         * makefile.nt: Change uses of del to $(DEL).
2944 1996-03-22  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2946         * etags.c (just_read_file): Reset lineno and charno on entry.
2948 1996-03-15  Anders Lindgren  <andersl@csd.uu.se>
2950         * etags.c: Prolog language totaly rewritten.
2951         (Prolog_functions): Rewritten from scratch.
2952         (skip_comment, prolog_getit): Removed.
2953         (prolog_skip_comment): New function, like old skip_comment.
2954         (prolog_pred, prolog_atom, prolog_white): New functions.
2955         (erlang_func, erlang_attributes): Forward declarations added.
2956         (erlang_atom): Check if backslash ends line inside quoted atom.
2958 1996-03-14  Francesco Potorti`  <F.Potorti@cnuce.cnr.it>
2960         * etags.c (absolutefn): DOS_NT version corrected.
2961         (main): Append "/" to the dir name only if not already there.
2962         (print_help): Explain the absolute/relative file name issue.
2964 1996-03-08  Anders Lindgren  <andersl@csd.uu.se>
2966         * etags.c: New Languange Erlang added.
2967         (Erlang_functions, erlang_func, erlang_attribute, erlang_atom,
2968         erlang_white): New functions.
2969         (Erlang_suffixes): New suffix list.
2970         (lang_names): Erlang entry added.
2971         (prolog_getit): Accepts headers spanning several lines.
2972         Always name tags.
2973         (Prolog_functions): Removed incorrect compensation for
2974         newline characters.
2975         (readline_internal): Zero-terminate last line.
2977 1996-03-20  Mike Long  <mike.long@analog.com>
2979         * b2m.c (main): Initialize progname variable before using it.
2980         Quote `username' in From_ header.
2982 1996-03-18  Geoff Voelker  <voelker@cs.washington.edu>
2984         * ntlib.c (getpid): New function.
2986 1996-02-21  Richard Stallman  <rms@whiz-bang.gnu.ai.mit.edu>
2988         * emacsclient.c (main, both definitions):
2989         Print a newline for normal termination.
2991 1996-02-21  Noah Friedman  <friedman@prep.ai.mit.edu>
2993         * tcp.c (main): Convert port to network byte order.
2995 1996-01-20  Karl Heuer  <kwzh@gnu.ai.mit.edu>
2997         * pop.c (pop_retrieve, getline): Avoid type clashes.
2999 1996-01-19  Karl Heuer  <kwzh@gnu.ai.mit.edu>
3001         * etags.c (enum sym_type, anonymous enum): Delete final comma.
3003 1996-01-15  Paul Eggert  <eggert@twinsun.com>
3005         * rcs2log (initialize_fullname): Add support for NIS+.
3006         (hostname): Fully qualify the default hostname with the domainname
3007         if the hostname lacks a `.'.
3009 1996-01-15  Paul Eggert  <eggert@twinsun.com>
3011         * rcs2log (initialize_fullname): Add support for NIS+.
3012         (hostname): Fully qualify the default hostname with the domainname
3013         if the hostname lacks a `.'.
3015 1996-01-10  Karl Heuer  <kwzh@gnu.ai.mit.edu>
3017         * etags.c (consider_token): Fix typo in expression.
3019 1996-01-04  Paul Eggert  <eggert@twinsun.com>
3021         * etags.c (substitute): Fix spelling in message.
3023 1996-01-03  George V. Reilly  <georger@microcrafts.com>
3025         * makefile.nt (etags, ctags): Compile with regexp support.
3026         (make-docfile, wakeup, etags, ctags, hexl): Ensure build
3027         subdirectory exists before compiling.
3029 1996-01-02  Karl Heuer  <kwzh@gnu.ai.mit.edu>
3031         * emacsserver.c (main): Do chmod based on existing permission.
3033 1995-12-27  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3035         * Makefile.in (install): Turn on read/execute permission.
3037 1995-12-03  Richard Stallman  <rms@whiz-bang.gnu.ai.mit.edu>
3039         * Makefile.in (LIB_STANDARD_LIBSRC): Use this instead of LIB_STANDARD.
3040         (LOADLIBES): Use LIB_STANDARD_LIBSRC.
3042 1995-12-01  Richard Stallman  <rms@whiz-bang.gnu.ai.mit.edu>
3044         * Makefile.in (THIS_IS_MAKEFILE): Renamed from THIS_IS_YMAKEFILE.
3046 1995-12-07  Francesco Potorti`  <pot@cnuce.cnr.it>
3048         * etags.c (pfnote): Don't make a tag for ctags if there is no name.
3049         (getit, Asm_labels, Perl_functions, Pascal_functions, L_getit,
3050         get_scheme, prolog_getit): Name the tag in ctags mode.
3051         (pfnote): Truncate ctags lines to 50 chars, like it worked once.
3052         (Perl_interpreters): Accept "@PERL@" as an interpreter.
3053         (suggest_asking_for_help): New function.
3054         (main, get_language_from_name): Use suggest_asking_for_help.
3055         (main): Let get_language_from_name make language existence check.
3056         (streq, strneq): Check the arguments #if DEBUG.
3058 1995-12-06  Francesco Potorti`  <pot@cnuce.cnr.it>
3060         * etags.c (Cplusplus_suffixes): Add .M suffix for Objective C++.
3061         (gperf): Added keywords for Objective C and GNU macros.
3062         (sym_type): Added values to account for Objective C and GNU macros.
3063         (begtk): The '@' character can start a token.
3064         (objdef, methodlen, objtag): New variables for Objective C.
3065         (consider_token, C_entries): Added code for Objective C.
3066         (plain_C_suffixes): Add .m and .lm for Objective C.
3067         (Yacc_suffixes): Add .ym for Objective yacc.
3068         (GROW_LINEBUFFER): New macro.
3069         (consider_token, C_entries, Pascal_functions): Use the new macro.
3070         (consider_token): Take one more argument.  Caller changed.
3071         (consider_token): Use the hashing function to spot GNU macros.
3072         (C_entries): Consider // as a comment start even in plain C for
3073         the sake of Objective C parsing.
3075 1995-12-04  Francesco Potorti`  <pot@cnuce.cnr.it>
3077         * Makefile.in (ctags): depend on etags only for simplicity;
3078         compile with regexp support enabled.
3080 1995-11-24  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3082         * Version 19.30 released.
3084 1995-11-22  Geoff Voelker  <voelker@cs.washington.edu>
3086         * makefile.nt (DOC, clean): Don't use switches to del not
3087         supported by Windows 95.
3089 1995-11-13  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3091         * Makefile.in (regex.o): Depend on ../src/config.h.
3093 1995-11-12  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3095         * Makefile.in (LIB_STANDARD): Extract this as in src/Makefile.in.
3096         (LOADLIBES): Use LIB_STANDARD.
3098 1995-11-07  Kevin Gallo  <kgallo@microsoft.com>
3100         * makefile.nt (DOC): Include strings from w32term.c, w32xfns.c,
3101         w32fns.c, w32faces.c, w32select.c, w32menu.c, w32reg.c; remove
3102         Windows 95 conditional.
3104 1995-11-06  Francesco Potorti`  (pot@cnuce.cnr.it)
3106         * etags.c (get_lang_from_name, get_lang_from_interpreter,
3107         get_lang_from_suffix): New functions.
3108         (get_language): Function deleted.
3109         (lang_entry): Two members added to struct.
3110         (lang_names): Reflect the new layout of lang_entry.
3111         (print_language_names, main, find_entries): Use the new functions.
3112         (find_entries): Look at the first line for #! if no language.
3113         (C_entries): Invalidate the token when funcdef is reset.
3114         (Perl_functions): New function.
3115         (lang_suffixes): .pl and .pm are Perl suffixes.
3117 1995-11-02  Francesco Potorti`  (pot@cnuce.cnr.it)
3119         * etags.c (lowcase): Use the standard tolower function.
3120         (substitute): Remove some wrong and some useless code related with
3121         escape '\' character in regexp replacement string.
3122         (TEX_defenv): Added part, appendix, entry, index.  Removed typeout.
3123         (lang_suffixes): New suffixes: .hpp for C++; .f90 for Fortran;
3124         .bib, .ltx, .TeX for TeX (.bbl, .dtx removed); .ml for Lisp;
3125         .prolog for prolog (.pl removed).
3126         (massage_name, etags_getcwd): Use lowcase instead of tolower.
3127         (C_entries, find_entries): Added comments about memory leakage.
3128         (add_node): Dead code removed.
3130 1995-10-29  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3132         * Makefile.in (getdate.o, movemail.o): Specify -Demacs.
3133         (ALL_CFLAGS, LINK_CFLAGS, CPP_CFLAGS): Delete -Demacs.
3135 1995-08-30  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3137         * test-distrib.c: Add #undef for open, close, read, write.
3139 1995-08-23  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3141         * test-distrib.c [HAVE_CONFIG_H]: Include config.h.
3142         [! O_RDONLY]: Define it to zero.
3143         (main): Use O_RDONLY instead of explicit zero.
3145 1995-08-17  Francesco Potorti`  (pot@cnuce.cnr.it)
3147         * etags.c (Pascal_functions): Close comment bug corrected.
3148         (add_node): Correctly compare node file names.
3149         (Pascal_functions): Correctly allocate and free memory for tline.
3150         (pfnote): Put the definition of fp in the innermost block.
3151         (NODE): `named' member removed.
3152         (pfnote, free_tree, put_entries, total_size_of_entries): Do not
3153         use the `named' member, check whether `name' is NULL instead.
3154         (pfnote): `named' argument removed, all callers changed.
3155         (getit, Asm_labels, Pascal_functions, L_getit, get_scheme,
3156         TeX_functions, TEX_getit, prolog_getit): Useless string allocation
3157         removed from pfnote call, some code cleanup.
3158         (relative_filename): Free temporary space allocated by concat.
3160 1995-08-16  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3162         * Makefile.in (getdate.c): New target.
3163         (getdate.o): Just compile getdate.c.
3165 1995-08-12  Karl Heuer  <kwzh@gnu.ai.mit.edu>
3167         * fakemail.c (xrealloc): Change cast to match return type.
3169 1995-08-10  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3171         * fakemail.c (xmalloc, xrealloc): Use return-type long *.
3173 1995-08-06  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3175         * movemail.c (main): Fix previous change.
3176         Add error check for empty OUTNAME.
3178 1995-08-05  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3180         * movemail.c (main): Mention lock file name in error message.
3182 1995-07-30  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3184         * profile.c (gettimeofday): New function, defined if necessary.
3186 1995-07-18  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3188         * Makefile.in: Renamed from Makefile.in.in.
3189         (distclean): Delete Makefile.c, not Makefile.in.
3191 1995-07-17  Michael Shields  <shields@tembel.org>
3193         * Makefile.in.in (tags): Synonym for `TAGS'.
3195 1995-07-16  Karl Heuer  <kwzh@gnu.ai.mit.edu>
3197         * Makefile.in.in (install, maybe-blessmail): Don't cd ..;
3198         configure has already set $(INSTALL) to the proper relative path.
3200 1995-06-27  Francesco Potorti`  (pot@cnuce.cnr.it)
3202         * etags.c (plain_C_entries): new function.
3203         (lowcase): new macro.
3204         (tail, Fortran_functions, Pascal_functions): use new macro lowcase.
3205         (lang_suffixes): new suffix ".pc" for Pro*C files.
3206         (consider_token): don't tag all tokens beginning with DEFUN & Co..
3207         (tail): look for the end of the token when comparing.
3208         (takeprec): since now tail behaves differently, use strneq.
3210 1995-07-08  Paul Eggert  <eggert@twinsun.com>
3212         * rcs2log (datearg): Separate date from time with comma, not space,
3213         to work around CVS 1.5 bug.
3214         (CVSROOT): Don't abort when unset if repository is absolute.
3216 1995-07-07  Paul Eggert  <eggert@twinsun.com>
3218         * rcs-checkin, rcs2log, vcdiff:
3219         Replace `#!/bin/sh' with `#! /bin/sh', for benefit of systems
3220         that interpret `#! /' as a 4-byte magic number.
3222 1995-06-29  Jonathan I. Kamens  <jik@cam.ov.com>
3224         * movemail.c (main) [MAIL_USE_POP]: When a user specifies a
3225         mailbox with "po:mailbox", the mailbox is everything after the
3226         "po:" prefix.
3228 1995-06-28  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3230         * emacsserver.c: Make all error messages start with `Error: '.
3231         (fatal_error, perror_1): New functions, use throughout.
3233 1995-06-28  Paul Eggert  <eggert@twinsun.com>
3235         * rcs2log (CVSROOT, repository):
3236         Allow remote repositories a la CVS 1.4.
3238 1995-06-27  Francesco Potorti`  (pot@cnuce.cnr.it)
3240         * etags.c (plain_C_entries): new function.
3241         (lowcase): new macro.
3242         (tail, Fortran_functions, Pascal_functions): use new macro lowcase.
3243         (lang_suffixes): new suffix ".pc" for Pro*C files.
3244         (consider_token): don't tag all tokens beginning with DEFUN & Co..
3245         (tail): look for the end of the token when comparing.
3246         (takeprec): since now tail behaves differently, use strneq.
3248 1995-06-26  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3250         * movemail.c (main): Add newline in usage message.
3252 1995-06-21  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3254         * make-docfile.c (scan_file): Make sure it never looks at filename[-1].
3256 1995-06-21  Francesco Potorti`  (pot@cnuce.cnr.it)
3258         * etags.c (find_entries): Rewind before rereading the input file.
3260 1995-06-20  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3262         * Version 19.29 released.
3264         * make-docfile.c (main) [MSDOS]: Do set _fmode.
3265         This undoes part of the previous change.
3267 1995-06-19  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3269         * make-docfile.c (main): On MSDOS, don't change stdout
3270         to binary, and insist on an -o option.
3272 1995-06-13  Geoff Voelker  <voelker@cs.washington.edu>
3274         * etags.c (process_file,absolute_filename): Handle filenames
3275         starting with a drive letter.
3277         * makefile.nt (install): Copy wakeup.exe properly.
3279 1995-06-08  Karl Heuer  <kwzh@gnu.ai.mit.edu>
3281         * make-docfile.c [MSDOS]: #undef chdir.
3283 1995-06-04  Paul Eggert  <eggert@twinsun.com>
3285         * rcs2log (output_authors): Allow ':' in time zone,
3286         as per ISO 8601 and RCS 5.6.8 beta.
3288 1995-05-29  Francesco Potorti`  (pot@cnuce.cnr.it)
3290         * etags.c (etags_getcwd): Undo the /bin/pwd change.  It may raise
3291         compatibility problems.
3293 1995-05-26  Richard Stallman  <rms@gnu.ai.mit.edu>
3295         * etags.c (etags_getcwd): Don't use #elif.
3296         Have just one function body.
3298 1995-05-25  Geoff Voelker  <voelker@cs.washington.edu>
3300         * makefile.nt (LIBS): Use BASE_LIBS.
3301         (make-docfile.exe,hexl.exe,wakeup.exe,etags.exe): Don't depend
3302         upon LIBS.
3303         (DOC): Use del instead of rm.
3304         (DOC) [WINDOWS95]: Use DOC.
3305         (clean): Handle MSVC aux files.
3306         (config.h,paths.h): Use $(CP) instead of cp.
3307         (config.h): Use $(CONFIG_H)
3308         (make-docfile.obj): Depend upon config.h.
3309         Clean up comments.
3311 1995-05-23  Francesco Potorti`  (pot@cnuce.cnr.it)
3313         * etags.c (etags_getcwd): Use /bin/pwd instead of pwd because the
3314         former gives the true path even in the presence of simlinks.
3316 1995-05-07  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3318         * movemail.c (main): Increase lock timeout to five minutes.
3320 1995-05-06  Geoff Voelker  <voelker@cs.washington.edu>
3322         * makefile.nt (obj): Use .c files.
3324 1995-05-04  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3326         * make-docfile.c: Include config.h.
3327         (NO_SHORTNAMES): New definition.
3328         (xmalloc): Return long *.
3330         * etags.c (C_entries): Cast result of xrealloc.
3331         (xmalloc, xrealloc): Declare them to return long *.
3333         * b2m.c (xmalloc, xrealloc): Declare them long *.
3335         * movemail.c (xmalloc): Declare it to return long *.
3337 1995-04-30  Paul Eggert  <eggert@twinsun.com>
3339         * rcs2log (datearg): If rlog options are specified explicitly,
3340         omit the implicit '-d>DATE' option.
3341         (repository, rlog): Allow absolute paths to CVS repositories.
3342         Look only at the first line of CVS/Repository.
3344 1995-04-26  Karl Heuer  <kwzh@gnu.ai.mit.edu>
3346         * Makefile.in.in (extraclean): Depend on maintainer-clean, not
3347         realclean.
3349 1995-04-24  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3351         * Makefile.in.in [REGEXP_IN_LIBC] (REGEXPOBJ, REGEXPDEPS):
3352         Alternative (empty) definitions.
3354 1995-04-18  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3356         * emacsclient.c (main): Add argv[0] to an error message.
3358 1995-04-13  Karl Heuer  <kwzh@gnu.ai.mit.edu>
3360         * emacsclient.c (main): Improve error handling.
3361         * cvtmail.c (main, skip_to_lf): Improve error handling.
3362         (sysfail): New function.
3364         * b2m.c (main): Check for trailing ", " before trying to delete it.
3366 1995-04-12  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3368         * Makefile.in.in (all): Build test-distrib and make-docfile.
3370         * make-docfile.c (scan_c_file): At end, restore file name last char
3371         to its original value.
3373 1995-04-10  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3375         * emacsclient.c, emacsserver.c: Test NO_SOCKETS_IN_FILE_SYSTEM.
3377 1995-04-08  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3379         * Makefile.in.in (BASE_CFLAGS): Renamed from ALLOCA_CFLAGS.
3380         (alloca.o, regex.o): Use BASE_CFLAGS.
3382 1995-04-06  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3384         * emacsclient.c [Berkeley sockets version] (main): Declare getcwd.
3386 1995-04-04  Karl Heuer  <kwzh@gnu.ai.mit.edu>
3388         * Makefile.in.in (aixcc, aixcc.c): Targets deleted.
3389         (SOURCES, distclean): Removed obsolete references to aixcc.
3391 1995-04-02  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3393         * aixcc.lex: File deleted--surely obsolete now.
3395 1995-03-23  Paul Eggert  <eggert@twinsun.com>
3397         * rcs2log (output_authors): Replace /[/]/ by /[\/]/, for
3398         portability to mawk and nawk.
3400 1995-03-21  Paul Eggert  <eggert@twinsun.com>
3402         * rcs2log: Treat -u "login:fullname:mailaddr" as if it were
3403         -u "login<tab>fullname<tab>mailaddr".
3405 1995-03-21  Paul Eggert  <eggert@twinsun.com>
3407         * rcs2log: Add -u "login<tab>fullname<tab>mailaddr" option, which
3408         replaces the (now obsolescent) -n login fullname mailaddr option.
3409         Add -R option for recursive rlog.
3410         (AWK): New environment variable (default `awk') for awk program name.
3411         (output_authors, tab, loginFullnameMailaddrs, recursive): New vars.
3412         Quote authors and fullnames correctly.
3413         Don't omit path from repository root when logging CVS files.
3415 1995-03-15  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3417         * emacsclient.c, emacsserver.c: Use BSD sockets whenever available,
3418         even if HAVE_SYSVIPC.
3419         * emacsclient.c (main): Use getcwd if not BSD.
3421 1995-03-13  Francesco Potorti`  (pot@cnuce.cnr.it)
3423         * etags.c (process_file): free (filename) after using it.
3424         (readline_internal): Do not access the char before start of line.
3426 1995-02-22  Francesco Potorti`  (pot@cnuce.cnr.it)
3428         * etags.c (C_entries): token_saved removed.  Initialise tok.valid and
3429         savetok.valid.  Mark token as valid when it is initialised.
3430         (make_tag): Make token only if token is valid and reset validity.
3431         (CNL_SAVE_DEFINEDEF): Test for savetok.valid instead of token_saved.
3432         (TOKEN): Added a new member: valid.
3434 1995-02-15  Francesco Potorti`  (pot@cnuce.cnr.it)
3436         * etags.c (C_entries): Bug corrected in xrealloc of token_str.
3437         (main): Do not read twice the last filename in the stdin file list.
3439 1995-02-14  Francesco Potorti`  (pot@cnuce.cnr.it)
3441         * etags.c (C_entries): Initialise the new members of TOKEN.
3442         (C_entries): Do not allocate a new space for each token found by
3443         consider_token.  Let make_tag do that instead.
3444         (make_tag): Since now TOKEN has memory of where it is taken from,
3445         this new macro substitutes both make_tag_from_new_lb and
3446         make_tag_from_oth_lb.  All callers changed.
3447         (TOKEN): Add linepos and buffer members.
3448         (main): Initialise token_str.
3449         (lang_extensions): Recognise .c++ and .h++ as C++ file suffixes.
3450         (token_str): New global variable used by C_entries.
3452 1995-02-07  Richard Stallman  <rms@pogo.gnu.ai.mit.edu>
3454         * Makefile.in.in (maintainer-clean): Renamed from realclean.
3456 1995-02-01  Francesco Potorti`  (pot@cnuce.cnr.it)
3458         * etags.c (pfnote): Initialise been_warned in the node.
3459         (C_entries): Removed a speed hack for the sake of clarity.
3461 1995-01-18  Francesco Potorti`  (pot@cnuce.cnr.it)
3463         * etags.c (longopts, print_help, main): Use -I as abbreviation
3464         for the --ignore-indentation option.
3465         (main): Do not print an error message for unknown options.
3467 1995-01-12  Francesco Potorti`  (pot@cnuce.cnr.it)
3469         * etags.c (FILEPOS, GET_CHARNO, GET_FILEPOS, max, LINENO): Deleted.
3470         (append_to_tagfile, typedefs, typedefs_and_cplusplus,
3471          constantypedefs, update, vgrind_style, no_warnings,
3472          cxref_style, cplusplus, noindentypedefs): Were int, now logical.
3473         (permit_duplicates): Was a var, now a #define.
3474         (filename_lb): Was global, now local to main.
3475         (main): Open the tag file when in cxref mode.
3476         Use a BUFSIZ size buffer for making the shell commands.
3477         Look at the return value from the system routine.
3478         Exit when cannot open the tag file.
3479         (process_file): Open the file and pass the FILE* to find_entries.
3480         (find_entries): Now void, because does not open the file itself.
3481         (pfnote): Recovering from lack of memory does not work.  Removed.
3482         Use savenstr and simplify the code.
3483         (free_tree): Only free the name space if node is named.
3484         (structtag): Now a pointer, not a fixed length array of chars.
3485         (consider_token): Don't take a token as argument.  Use savenstr
3486         when saving a tag in structtag.  Callers changed.
3487         (TOKEN): Structure changed.  Now used only in C_entries.
3488         (TOKEN_SAVED_P, SAVE_TOKEN, RESTORE_TOKEN): Deleted.
3489         (C_entries): nameb and savenameb deleted.  Use dinamic allocation.
3490         (pfcnt): Deleted.  Users updated.
3491         (getit, Asm_labels, Pascal_functions, L_getit, get_scheme,
3492          TEX_getit, prolog_getit): Use dinamic allocation for storing
3493         the tag instead of a fixed size buffer.
3495 1995-01-10  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3497         * movemail.c (main): Skip past the colon in inname.
3499 1995-01-10  Francesco Potorti`  (pot@cnuce.cnr.it)
3501         * etags.c (pfatal): New function.
3502         (main, etags_getcwd): Use pfatal.
3503         (etags_getcwd): Corrected another bug in the HAVE_GETCWD version.
3505 1995-01-10  Francesco Potorti`  (pot@cnuce.cnr.it)
3507         * etags.c (Lang_function): Use void instead to declare the
3508         language functions, because many compilers are buggy.
3509         (etags_getcwd): Fix the previous fix on the #else branch.
3510         (readline_internal): Discard possible \r before \n here.
3511         (C_entries): Do not deal with \r here: undo previous fix.
3513 1995-01-09  Francesco Potorti`  (pot@fly)
3515         * b2m.c (concat, xmalloc, xrealloc, readline, xnew): Four new
3516         functions and a macro that allow the program to work on input
3517         lines of whatever length.  Copied from etags.c.
3518         (fatal): Print a fatal error message and exit.
3519         (main): Use the new functions.  Fixed a bug that made a \037 char
3520         appear at the end of the output.
3522 1995-01-06  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3524         * etags.c (C_entries): Ignore carriage return at end of line.
3526 1994-12-26  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3528         * fakemail.c (xmalloc, xrealloc): Add casts.
3529         (add_field): Handle <...> and "..." syntax.
3530         (setup_files, get_keyword): Clean up parens and line breaks.
3531         (args_size): Likewise.
3533 1994-12-21  David J. MacKenzie  <djm@geech.gnu.ai.mit.edu>
3535         * yow.c: Include program name in error messages.
3537 1994-12-21  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3539         * make-docfile.c (scan_lisp_file): Handle dynamic doc strings.
3540         (xmalloc, fatal, error): New functions.
3541         (progname): New variable.
3542         (main): Set progname.
3544 1994-12-05  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3546         * emacsclient.c, emacsserver.c [HAVE_SYSVIPC]: Include sys/utsname.h.
3547         (main): If socket/mqueue name is in home dir, add in the host name.
3548         Rename .emacs_server to .emacs-server....
3550 1994-12-04  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3552         * emacsclient.c [!HAVE_SYSVIPC] (main): Fix error message diction.
3554 1994-11-22  Francesco Potorti`  (pot@cnuce.cnr.it)
3556         * etags.c (print_help): print --regex usage for ctags also.
3557         (main): use -h in addition to -H as abbreviation for --help.
3559 1994-11-16  Francesco Potorti`  (pot@cnuce.cnr.it)
3561         * etags.c [ETAGS_REGEXP]: All the new code that deals with regexps
3562         is compiled if this is defined.  The new functions and variables
3563         added #ifdef ETAGS_REGEXP are not listed in this ChangeLog.
3564         [VMS]: All VMS specific code previously contained in
3565         etags-vmslib.c is now included here, modified for dealing with
3566         language and regex options intermixed with filenames.
3567         (header_file): Global variable deleted.
3568         (Lang_Function): New typedef.  All language parser functions
3569         changed to this new type.
3570         (string_numeric_p, substr, prestr): Functions deleted.
3571         (readline_internal): Does the job that readline did previously.
3572         (longopts): --language and --regex options added.
3573         (lang_names, lang_extensions, lang_func, print_language_names):
3574         New structures, variables and functions for choosing languages.
3575         (print_help): Help strings updated.  Calls print_language_names.
3576         (argument_type, ARGUMENT): Typedefs for dealing with language and
3577         regex options intermixed with filenames.
3578         (main): Changed the way of dealing with arguments on the command
3579         line to deal with language and regex options intermixed with
3580         filenames.
3581         (get_language, default_C_entries, Cplusplus_entries,
3582         Cstar_entries, Yacc_entries, just_read_file): New functions.
3583         (find_entries): Use the new method for choosing the language.
3584         (Pascal_functions): Allow intermixing of comment styles.
3585         (prolog_getit, skip_comment): Rewritten for speed.
3586         (readline): Rewritten to deal with regexps.
3588 1994-11-16  Francesco Potorti`  (pot@cnuce.cnr.it)
3590         * etags.c (<errno.h>): #include added.
3591         (etags_getcwd): Check return value from getcwd.
3593 1994-11-10  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3595         * profile.c (TV1, TV2): Use EMACS_TIME as type.
3596         (get_time): Use EMACS_SUB_TIME.
3598 1994-10-30  voelker  <voelker@cs.washington.edu>
3600         * ntlib.c: New file.
3601         * makefile.nt: New file.
3603         * make-docfile.c (main) [WINDOWSNT]: Set _fmode and stdout to O_BINARY.
3604         [WINDOWSNT]: Include the NT headers.
3605         (READ_TEXT, READ_BINARY): Test DOS_NT, not MSDOS.
3607         * etags.c (main, etags_getcwd): Test DOS_NT instead of MSDOS.
3608         [WINDOWSNT]: Include some NT headers.
3610 1994-10-24  Jonathan I. Kamens  (jik@cam.ov.com)
3612         * pop.c (getline): When a search of already-read input for CRLF
3613         fails, store the fact that we've searched it and don't search it
3614         again after reading more data.
3616         * pop.c (getline): When determining whether or not it's necessary
3617         to grow the input buffer, take into account the null that's stored
3618         at the end of already-read input in the buffer.
3620 1994-10-21  Francesco Potorti`  (pot@cnuce.cnr.it)
3622         * etags.c (prestr, substr): return a logical type.
3623         (consider_token): Comment out "EXFUN".  Use "DEFUN" instead of "DEF".
3624         (consider_token): set funcdef to fignore when a DEFUN is met.
3625         (C_entries): Now we can use Tom Hageman patch for extern "C".
3627 1994-10-20  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3629         * movemail.c: PopServer renamed to popserver throughout.
3631 1994-10-20  David J. MacKenzie  <djm@duality.gnu.ai.mit.edu>
3633         * etags.c: Don't declare malloc, since we include config.h.
3634         * fakemail.c: Likewise.
3636 1994-10-19  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3638         * movemail.c: Don't declare malloc.
3640 1994-10-19  David J. MacKenzie  <djm@duality.gnu.ai.mit.edu>
3642         * rcs-checkin: Use test -r instead of < to check readability, to
3643         avoid syntax error.
3645 1994-10-19  Jonathan I. Kamens  (jik@cam.ov.com)
3647         * pop.c: Only include ../src/config.h if HAVE_CONFIG_H is
3648         defined, and if HAVE_CONFIG_H isn't defined, define
3649         MAIL_USE_POP always (so that this file can be included in
3650         other programs besides emacs).
3652         * pop.c: Only declare h_errno if HAVE_H_ERRNO isn't defined or
3653         HAVE_CONFIG_H isn't defined.
3655         * pop.c (find_crlf, getline): Instead of using strstr, use a
3656         custom function for finding CRLF.
3657         (my_strstr): Function deleted.
3659 1994-10-17  Jonathan I. Kamens  (jik@cam.ov.com)
3661         * pop.c (getline): Fix a segfault because of passing a
3662         non-null-terminated string into strstr().  Fix from
3663         djm@va.pubnix.com (David J. MacKenzie).
3665         * pop.c: Don't include <string.h> and <strings.h>.
3667         * pop.c: Include <des.h> before <krb.h>, rather than after.  They
3668         should be interchangeable, and indeed the inclusion is done in
3669         both orders in various files in the Kerberos 4 library sources,
3670         but djm@va.pubnix.com (David J. MacKenzie) reports that BSDI
3671         requires that <des.h> be included first, and I don't see any harm
3672         in changing the order.
3674         * pop.c: Include ../src/config.h, to get HAVE_STRING_H and
3675         STDC_HEADERS, if they're defined.  Undef open, read, write and
3676         close after including it.
3678 1994-10-18  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3680         * pop.c: Fix mismatch in conditionals.
3682         * make-docfile.c (main): Don't process one input file twice.
3683         Never use exit code > 1.
3685         * pop.c (open, close, read, write): Add #undefs.
3687         * pop.c: Don't declare malloc, realloc, free.
3688         Include ../src/config.h.
3689         Don't include string.h or strings.h.
3690         Include des.h before krb.h.
3691         Do declare my_strstr.
3692         (getline): Really use my_strstr.
3693         Leave one empty place in server->buffer,
3694         and put a null at the end of the data in it.
3696 1994-10-17  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3698         * emacsserver.c [SYSV_IPC] (main): Catch SIGHUP as well.  Don't
3699         call kill with pid 0.  Handle EINTR when receiving messages.
3701 1994-10-17  Karl Heuer  <kwzh@gnu.ai.mit.edu>
3703         * Makefile.in.in (regex.o): Use full path to find regex.c.
3705 1994-10-17  Francesco Potorti`  (pot@fly.cnuce.cnr.it)
3707         * Makefile.in.in (etags): add dependency on regex.o, link with it.
3708         (REGEXPOBJ, REGEXPDEPS, regex.o): target and macros added.
3710 1994-10-12  David J. MacKenzie  (djm@duality.gnu.ai.mit.edu)
3712         * Makefile.in.in (DONT_INSTALL): Remove make-path.
3713         (${archlibdir}): Use mkinstalldirs instead.
3715         * movemail.c: Make functions that return nothing void, not
3716         implicitly int.
3717         (main): Improve usage message.
3718         (error): Write to stderr, not stdout.
3720         * b2m.c cvtmail.c digest-doc.c emacsclient.c emacsserver.c etags.c
3721         fakemail.c hexl.c make-docfile.c profile.c sorted-doc.c test-distrib.c
3722         timer.c wakeup.c yow.c: Eliminate some -Wall warnings from unused
3723         variables and implicitly declared functions.
3725 1994-10-11  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3727         * Makefile.in.in (clean): rm DOC* and *.tab.[ch].
3728         (distclean): Not here.
3730         * Makefile.in.in (libexecdir): Renamed from libdir.
3732 1994-10-11  Francesco Potorti`  (pot@cnuce.cnr.it)
3734         * etags.c (C_entries): Name the #define's that are macros.
3736 1994-10-10  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3738         * emacsserver.c [! SYSVIPC] (main): Fix uses of FD_* macros:
3739         fd_set arg is a pointer, descriptor arg comes first.
3741 1994-09-29  Francesco Potorti`  (pot@cnuce.cnr.it)
3743         * etags.c (C_entries): Recognise typedef of ANSI style functions.
3744         (C_entries): Recognise #define inside a struct.
3745         (C_entries): ANSI tells that preprocessor commands do not have to
3746         start on the first column.
3747         (print_help): Documentation corrected for -d and -D.
3748         (white, endtk): ANSI tells the vertical tab is a separator.
3750 1994-09-24  Jonathan I. Kamens  (jik@gza-client1.aktis.com)
3752         * Makefile.in.in (MOVE_FLAGS, MOVE_LIBS): New variables.
3753         (pop.o, movemail.o): New targets.
3754         (movemail): Link in pop.o and movemail.o.  Use MOVE_LIBS, MOVE_FLAGS.
3756         * pop.c, pop.h: New files.
3758         * movemail.c: Improve POP code, move most of it into a separate file.
3759         (mbx_delimit_end, mbx_delimit_begin): Check for errors.
3760         (mbx_write): Check for errors and for From line.
3761         (pop_retr, popmail): Use subroutines in pop.c to do the real work.
3762         (get_errmsg, multiline, getline, putline, pop_stat, pop_command)
3763         (pop_init): Functions deleted.
3765 1994-09-23  Richard Stallman  <rms@churchy.gnu.ai.mit.edu>
3767         * make-path.c (touchy_mkdir): Make dir ugo+rx even if it isn't new.
3768         Rename path to dirname.
3770 1994-09-23  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3772         * Makefile.in.in (UTILITIES):
3773         Remove test-distrib, make-docfile, make-path.
3774         (DONT_INSTALL): New variable--list those files here.
3775         (clean): Delete the files in DONT_INSTALL.
3777 1994-09-20  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3779         * b2m.c (from, labels, data): Use MAX_DATA_LEN as length.
3780         (main): Use fgets, not gets.
3782 1994-09-17  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3784         * timer.c: Don't declare malloc.
3786 1994-09-16  Karl Heuer  <kwzh@gnu.ai.mit.edu>
3788         * emacsserver.c (FD_*) [HAVE_SOCKETS & !HAVE_SYSVIPC]: If not already
3789         defined, use simple 32-bit versions of these macros.
3790         (main) [HAVE_SOCKETS & !HAVE_SYSVIPC]: Use these macros.
3792 1994-09-16  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3794         * etags.c (etags_getcwd): Use getcwd if available.
3796 1994-09-11  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3798         * Version 19.27 released.
3800 1994-09-07  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3802         * Version 19.26 released.
3804 1994-08-15  Paul Eggert  <eggert@twinsun.com>
3806         * rcs2log: Add support for CVS.
3807         Work with `rlog's that output ISO 8601 dates.
3809 1994-08-09  Lawrence R. Dodd  <dodd@roebling.poly.edu>
3811         * rcs2log: Use <> to delimit email address.
3813 1994-08-06  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3815         * emacsserver.c [SYSV_IPC] (main): Make a separate process
3816         so we can listen for multiple requests.
3818 1994-08-04  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3820         * movemail.c: Include config.h first thing.
3822 1994-08-01  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3824         * emacsserver.c (main): Add casts to avoid warnings.
3826 1994-07-29  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3828         * Makefile.in.in (${archlibdir}): Compare the proper dir
3829         before installing the scripts.
3831 1994-07-27  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3833         * emacsclient.c (main): New local var progname saves argv[0].
3835 1994-07-26  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3837         * emacsclient.c (main): Don't actually modify argv[0].
3838         Modify a copy instead.
3840 1994-07-25  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
3842         * profile.c (reset_watch, get_time): Use EMACS_GET_TIME.
3843         (tzp): Var deleted.
3845         * Makefile.in.in: Add #undef alloca.
3847 1994-07-12  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3849         * timer.c (xmalloc): New function.
3851 1994-07-11  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3853         * Makefile.in.in (ALLOCA_CFLAGS): New variable.
3854         (alloca.o): New target.
3856 1994-07-08  Dave Love  (d.love@dl.ac.uk)
3858         * etags.c (takeprec): recognise `character*(*) function'
3860 1994-07-08  Francesco Potorti`  (pot@cnuce.cnr.it)
3862         * etags.c (main): Don't barf on obsolete -t and -T switches.
3863         (main): Print an explicative message when a switch is not known.
3865 1994-06-23  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3867         * hexl.c: Don't declare exit or perror.
3869         * emacsserver.c (main): Don't declare geteuid.
3870         Don't declare getenv if convex.
3872 1994-06-07  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3874         * Makefile.in.in (test-distrib): Use ALL_CFLAGS.
3876 1994-06-03  Francesco Potorti`  (pot@fly.cnuce.cnr.it)
3878         * etags.c (absolute_filename): Remove infinite loop bug when
3879         accessing files in directories whose name begins with a dot.
3881 1994-06-03  Francesco Potorti`  (pot@fly.cnuce.cnr.it)
3883         * etags.c (etags_getcwd): Delete the trailing newline from cwd.
3885 1994-06-01  Morten Welinder  (terra@diku.dk)
3887         * yow.c (rootrelativepath) [MSDOS]: Define, expanding to dynamic
3888         location of data directory.
3890 1994-05-30  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3892         * Version 19.25 released.
3894 1994-05-28  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3896         * Makefile.in.in (distclean): Delete Makefile, Makefile.in, blessmail.
3898 1994-05-27  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3900         * Makefile.in.in (blessmail): Don't depend on ../src/emacs.
3902 1994-05-23  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3904         * Version 19.24 released.
3906 1994-05-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3908         * make-docfile.c (write_c_args): Put `default' in upper case.
3910 1994-05-17  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3912         * etags.c (etags_getcwd): Cast result of popen.
3913         (popen): Declaration deleted.
3915 1994-05-17  Karl Heuer  (kwzh@gnu.ai.mit.edu)
3917         * etags.c [!MSDOS]: Declare popen.
3919 1994-05-17  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3921         * b2m.c (main): Avoid crash if argc is 1.
3923 1994-05-16  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3925         * Version 19.23 released.
3927         * Makefile.in.in (blessmail): Specify directory for blessmail.el.
3929 1994-05-12  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3931         * Makefile.in.in (maybe-blessmail): Mention bless-mail is in lib-src.
3933 1994-05-05  David J. MacKenzie  (djm@nutrimat.gnu.ai.mit.edu)
3935         * Makefile.in.in: Fix out of date comment.
3937 1994-05-05  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3939         * Makefile.in.in: Put in a separator for where to start cpp procssing.
3940         Move all autoconf substitutions above that point.
3941         Above that point, use Make-style comments.
3942         This goes with changes in ../configure.in.
3944 1994-05-03  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3946         * Makefile.in.in (maybe-blessmail): New target to print the blessmail
3947         warning message.
3948         (${archlibdir}): Don't do it here.  Don't depend on blessmail.
3950 1994-05-02  Karl Heuer  (kwzh@gnu.ai.mit.edu)
3952         * Makefile.in.in (${archlibdir}): Be lenient about wc output format.
3954 1994-05-01  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3956         * Makefile.in.in (${archlibdir}): Don't run blessmail; instead
3957         print advice to run it, if it has anything significant to do.
3958         And only if MOVEMAIL_NEEDS_BLESSING.
3959         (blessmail): Use emacs, not temacs.
3960         (configuration): Renamed from configname.
3962 1994-04-30  Morten Welinder  (terra@diku.dk)
3964         * etags.c (find_entries): Treat `*.cpp' as C++ files.
3966 1994-04-30  Morten Welinder  (terra@diku.dk)
3968         * etags.c [MSDOS]: #include <sys/param.h> for the following.
3969         [MSDOS] (etags_getcwd): Define simple MSDOS version without spawning
3970         a shell.
3972 1994-04-29  Morten Welinder  (terra@diku.dk)
3974         * hexl.c [MSDOS]: Don't define proto type for exit.
3976 1994-04-28  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3978         * b2m.c: Don't include string.h or strings.h.
3980 1994-04-27  Karl Heuer  (kwzh@gnu.ai.mit.edu)
3982         * Makefile.in.in: C_SWITCH_SYSTEM and C_SWITCH_MACHINE are now cpp
3983         symbols, not make variables.
3985 1994-04-23  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3987         * Makefile.in.in (etags, ctags): Make VERSION a string constant.
3988         * etags.c (print_version): Print VERSION as a string.
3990 1994-04-20  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
3992         * fakemail.c (readline): Fix updating of p when buffer grows.
3994 1994-04-20  Karl Heuer  (kwzh@gnu.ai.mit.edu)
3996         * Makefile.in.in (blessmail): New target.
3997         ${archlibdir}: Use blessmail when installing movemail.
3999 1994-04-18  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4001         * fakemail.c (readline): When extending the buffer,
4002         calculate end afresh using the new size.
4004 1994-04-18  Francesco Potorti`  (pot@fly.cnuce.cnr.it)
4006         * etags.c (main, print_help): eliminate the -F option.
4008 1994-04-18  Francesco Potorti`  (pot@fly.cnuce.cnr.it)
4010         * etags.c (absolute_filename): compare against '\0' instead of NULL.
4012 1994-04-16  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4014         * Makefile.in.in: Renamed from Makefile.in.
4015         Makefile.in is now generated from it, and then preprocessed.
4016         Change comments to C syntax.
4017         Include config.h.
4018         (LIBS_SYSTEM, LIBS_MACHINE): Define as empty if not defined.
4019         (LOADLIBES): Define from LIBS_SYSTEM and LIBS_MACHINE.
4021 1994-04-13  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4023         * movemail.c [HAVE_UNISTD_H]: Include unistd.h.
4025 1994-04-12  Francesco Potorti`  (pot@fly.cnuce.cnr.it)
4027         * etags.c (etags_getcwd): Initialize bufsize.
4029 1994-04-11  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4031         * profile.c (gettimeofday): If system doesn't have this, define it
4032         to give a fatal error.
4034 1994-04-11  Karl Heuer  (kwzh@gnu.ai.mit.edu)
4036         * movemail.c (main): Use setuid, not seteuid.
4038 1994-04-11  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4040         * etags.c: #undef static.
4042 1994-04-08  Francesco Potorti`  (pot@fly.cnuce.cnr.it)
4044         * etags.c (outf, outfiledir): renamed to tagf, tagfiledir.
4045         (PF_funcs, Asm_funcs, L_funcs, PAS_funcs, TEX_funcs,
4046         Scheme_funcs, prolog_funcs): renamed to Fortran_functions,
4047         Asm_labels, Lisp_functions, Pascal_functions, Scheme_functions,
4048         TeX_functions, Prolog_functions.
4049         (inf): no more a global variable.
4050         (C_entries): take 2nd parameter `inf' instead of using the global one.
4051         (find_entries): added the cp1 var for optimisation.
4052         (find_entries): added more suffixes for assembler files.
4053         (Asm_funcs): Now finds labels even without an ending colon.
4055 1994-03-30  Francesco Potorti`  (pot@fly.cnuce.cnr.it)
4057         * etags.c (main): use etags_getcwd for compatibility.
4058         (etags_getcwd): new function.
4060 1994-03-25  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4062         * Makefile.in (etags, ctags): Pass -D for VERSION.
4064 1994-03-25  Francesco Potorti`  (pot@cnuce.cnr.it)
4066         * etags.c (emacs_tags_format, ETAGS): removed.  Use CTAGS instead.
4067         (main): don't allow the use of -t and -T in etags mode.
4068         (print_help): don't show options enabled by default.
4069         (print_version): show the emacs version number if VERSION is #defined.
4070         (find_entries): add "ss" as suffix for Chez Scheme.
4072 1994-03-23  Francesco Potorti`  (pot@cnuce.cnr.it)
4074         * etags.c (cwd, outfiledir): vars added.
4075         (relative_filename, absolute_filename, absolute_dirname):
4076         functions added to compute filenames in tags files.
4077         (process_file): filenames in tags file are relative to the
4078         directory where the tags file is (useful with the -o option).
4079         (main): initialise the outfiledir var.
4080         (TYPEDST): added the `tignore' value.
4081         (C_entries): corrected various small bugs.
4083 1994-03-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4085         * Makefile.in (UTILITIES): `env' deleted.
4086         (env): Target deleted.
4087         * env.c: File deleted.
4089 1994-03-14  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4091         * Makefile.in (install, ${archlibdir}): Switch back to ..
4092         before running INSTALL_PROGRAM.
4094 1994-03-14  Francesco Potorti`  (pot@cnuce.cnr.it)
4096         * etags.c (TYPEDST): added the `tignore' value.
4097         (C_entries): corrected various bugs, now correctly parses the
4098         `extern "C" {' construction (patch by Tom R.Hageman).
4100 1994-03-05  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4102         * b2m.c: Use <...> to include config.h.
4103         Don't include stdlib.h.
4105 1994-03-03  Heiko Muenkel  (muenkel@tnt.uni-hannover.de)
4107         * b2m.c (main): Change delimiter from "^L" to "^_^L".
4108         Allow for text following "BABYL OPTIONS:".
4109         Add --help option.  Use argv[0] in error messages.
4111 1994-03-01  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4113         * emacsclient.c (main) [HAVE_SYSVIPC]:
4114         Make msgp->mtext longer if necessary.
4115         On HPUX, error if it's more than 512 chars.
4117 1994-02-26  David J. MacKenzie  (djm@geech.gnu.ai.mit.edu)
4119         * etags-vmslib.c: Use GPL.
4120         * emacstool.c: Use GPL.
4121         * fakemail.c: Update GPL.
4123         * make-path.c (main): Return 1 on error, not -1.
4124         Update GPL.
4126         * cvtmail.c: Declare malloc, realloc, xmalloc, xrealloc, getenv.
4127         (xmalloc, xrealloc): Return char *, not int.
4128         (error): Write to stderr, not stdout.
4129         Update GPL.
4131 1994-02-23  Karl Heuer  (kwzh@gnu.ai.mit.edu)
4133         * profile.c (main, get_time): Don't crash on invalid input.
4135 1994-02-22  Karl Heuer  (kwzh@gnu.ai.mit.edu)
4137         * profile.c (get_time): Simplify; avoid calling index.
4138         (main): exit on EOF.
4140 1994-02-17  Francesco Potorti`  (pot@cnuce.cnr.it)
4142         * etags.c (--absolute-pathnames): Option removed.
4144 1994-02-16  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4146         * fakemail.c (put_line): Don't break the line if it all fits.
4148 1994-02-14  Francesco Potorti`  (pot@fly)
4150         * etags.c (absolute_pathnames, cwd): added global vars.
4151         (longopts, print_help, main, process_file): put absolute filenames
4152         in the tag file if the -A --absolute-pathnames option is used.
4153         (print_help): alfabetically order the options.
4154         (malloc, realloc, strcpy, strncpy, strcmp): remove extern declar.
4156 1994-02-09  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4158         * Makefile.in (C_SWITCH_MACHINE): Get this from autoconf.
4159         (ALL_CFLAGS, LINK_CFLAGS, CPP_CFLAGS): Use C_SWITCH_MACHINE.
4161 1994-02-07  Christian Lynbech  (lynbech@avignon)
4163         * emacsserver.c (main) [HAVE_SYSVIPC]: Reverse test of fork value.
4165 1994-02-04  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4167         * Makefile.in (UTILITIES): Mention profile.
4168         (profile): New target.
4170         * profile.c: New file.
4172 1994-01-16  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
4174         * make-docfile.c: Make the argument list output look more like the
4175         Lisp docstrings do.
4176         (write_c_args): Take new arg FUNC.  Make output
4177         look like lisp call prototypes: (function ARG1 ARG2), upcasing args.
4178         (scan_c_file): Pass BUF to write_c_args for FUNC arg.
4180 1994-01-14  Francesco Potorti`  (pot@cnuce.cnr.it)
4182         * etags.c (stab_entry, stab_create, stab_find, stab_search,
4183         stab_type, add_keyword, C_reate_stab, C_create_stabs): deleted.
4184         Use gperf generated hash table instead of linked list.
4185         (C_stab_entry, hash, in_word_set, get_C_stab, C_symtype): added.
4186         Mostly code generated by gperf.
4187         (consider_token): removed unused parameter `lp'.
4188         (PF_funcs, getit): allow subroutine and similar declarations
4189         to span multiple lines.
4190         (C_entries): check for newline if inchar to avoid bus errors.
4191         (process_file, find_entries): distinguish among nonexistent
4192         and not regular file.
4194 1994-01-14  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4196         * timer.c: Include errno.h; don't include fasync.h.
4197         (schedule): Don't return a value.
4198         (sigcatch): Reestablish the handler first.
4199         (getevent): Always call notify at the end.
4200         (notify): Defer alarms around the whole body of function.
4202 1994-01-12  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4204         * timer.c (main): Don't request SIGIO, and don't handle it.
4205         Loop calling getevent.
4206         (sigcatch): Delete code to handle SIGIO.
4207         if defer_alarms is set, don't call notify, just set alarm_deferred.
4208         (getevent): Use read, not getchar.  Handle EINTR and EAGAIN.
4209         Set defer_alarms around realloc and schedule.
4210         If alarm_deferred gets set, call notify.
4211         Likewise if this event is the only pending event.
4212         Make buf and buf_size global variables.
4213         Don't malloc buf if it is already non-zero.
4214         (schedule): Just exit if run out of memory.
4215         Return the number of events.
4216         (signal) [_CX_UX]: Add #undef.
4218 1994-01-11  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4220         * timer.c [USG] (SIGIO): Define as SIGPOLL.
4221         (main) [USG]: Do ioctl to enable SIGPOLL.
4223 1994-01-08  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
4225         * timer.c: Don't declare sys_errlist; declare strerror instead.
4226         (schedule, main): Call strerror instead of using sys_errlist.
4227         * movemail.c (get_errmsg, pfatal_with_name, pfatal_and_delete):
4228         Call strerror instead of using sys_errlist.
4229         * env.c (main): Call strerror instead of using sys_errlist.
4230         * emacsclient.c: Don't declare sys_errlist; declare strerror instead.
4231         (main): Call strerror instead of using sys_errlist.
4232         * emacsclient.c [! HAVE_STRERROR] (strerror): Define the function.
4233         * env.c [! HAVE_STRERROR] (strerror): Likewise.
4234         * timer.c [! HAVE_STRERROR] (strerror): Likewise.
4235         * movemail.c [! HAVE_STRERROR] (strerror): Likewise.
4237 1994-01-05  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4239         * hexl.c: Fix up whitespace.  Get rid of spurious casts to void.
4241         * movemail.c (malloc): Don't declare it.
4242         (xmalloc): Cast result of malloc.
4243         (strcpy): Don't declare it.
4245 1993-11-14  Morten Welinder  (terra@diku.dk)
4247         * hexl.c [MSDOS]: Use binary file modes for non-text side of pipe.
4248         (main): Use fclose to close file opened by fopen.
4250         * fakemail.c (main) [MSDOS]: Dummy stub just to make the file compile.
4252         * movemail.c [MSDOS]: #undef `access'.
4254         * b2m.c (main) [MSDOS]: Open all files as binary.
4255         * etags.c (main) [MSDOS]: Open all files as binary.
4257         * make-docfile.c [MSDOS]: Use text/binary mode as appropriate.
4258         (scan_c_file, scan_lisp_file): Extra parameter for the mode to open
4259         with.
4261 1994-01-02  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4263         * Makefile.in (ALL_CFLAGS): Include LDFLAGS.
4264         Use ALL_CFLAGS in all the rules that compile and link with one cmd.
4265         (LINK_CFLAGS): New variable.
4266         (timer): Use LINK_CFLAGS.
4268 1993-12-30  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4270         * movemail.c: Include syswait.h.
4271         Fork a subprocess and use it to copy the mail file.
4273 1993-12-07  Richard Stallman  (rms@srarc2)
4275         * make-docfile.c (scan_lisp_file): Don't add newline at end of string.
4277 1993-12-04  Richard Stallman  (rms@srarc2)
4279         * movemail.c (main): When making tempname, cast result of xmalloc.
4280         Include room for EXXXXXX in the size.
4281         Don't use result of strcpy.
4283 1993-12-03  Paul Eggert  (eggert@twinsun.com)
4285         * vcdiff: Add --brief option.
4287 1993-12-02  Richard Stallman  (rms@srarc2)
4289         * Makefile.in (${archlibdir}, install): Use $(INSTALL_PROGRAM)
4290         for all executables and scripts.
4292 1993-11-27  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4294         * Version 19.22 released.
4296 1993-11-26  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4298         * Makefile.in (mostlyclean): Make it distinct from clean.
4300 1993-11-24  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4302         * Makefile.in (${archlibdir}): Don't do chown or chgrp.
4304 1993-11-16  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4306         * Version 19.21 released.
4308         * Makefile.in (install): Don't change mode or group when installing.
4310         * etags.c (FUNCST, TYPEDST, STRUCTST, DEFINEST): Delete excess commas.
4312 1993-11-12  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4314         * make-docfile.c (read_c_string): For "", concatenate the two strings.
4316         * movemail.c (main): Fix error message text.
4318 1993-11-11  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4320         * Version 19.20 released.
4322 1993-11-08  Tom Hageman  (tom@basil.icce.rug.nl)
4324         * etags.c: (C_entries): Keep track of ()-parenthesis level so that
4325         functions returning a pointer to a function, a la `signal', can be
4326         parsed.  This also required new state `fstartlist' to `FUNCST'.
4327         (SAVE_TOKEN, RESTORE_TOKEN, TOKEN_SAVED_P): 1-deep token save stack.
4328         (C_entries, CNL): use it to isolate preprocessor directive processing
4329         from the other state engines.
4330         (begtk): add '~', for C++ class destructors.
4332 1993-11-02  Francesco Potorti`  (pot@cnuce.cnr.it)
4334         * etags.c (consider_token): removed unused variable firsttok.
4335         (prolog_getit): call pfnote with the right number of arguments.
4337 1993-10-19  Paul Eggert  (eggert@twinsun.com)
4339         * rcs2log (printlogline): Don't generate lines containing only
4340         white space.
4342 1993-10-04  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
4344         * Makefile.in (${archlibdir}):
4345         Install ${SCRIPTS} from ${srcdir}, not cwd.
4347 1993-10-03  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
4349         * Makefile.in: Fixed typos or brainos of whoever thought `@' was
4350         the comment character.
4352 1993-10-01  Francesco Potorti`  (pot@cnuce.cnr.it)
4354         * etags.c (process_file): dead code removed.
4355         (S_ISREG): #define it using S_IFREG if not defined.
4356         (process_file): regular files have nothing to do with symlinks.
4358 1993-09-28  Brian Fox  (bfox@ai.mit.edu)
4360         * Makefile.in (${archlibdir}): Install ${SCRIPTS} from ${srcdir}, not
4361         from current directory.  Only chmod and chgrp files that we
4362         installed, which excludes ${INSTALLABLE_SCRIPTS}.  They go in
4363         ${bindir}.
4364         (INSTALLFLAGS): Deleted definition, since it is an unused variable
4365         now.
4367 1993-09-27  Brian Fox  (bfox@ai.mit.edu)
4369         * Makefile.in (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Let
4370         configure figure out the correct values for these variables.
4372 1993-09-14  Brian Fox  (bfox@ai.mit.edu)
4374         * Makefile.in (archlibdir): Only install execuatables internally
4375         used by emacs; don't install bindir binaries here.
4377 1993-09-24  Paul Eggert  (eggert@twinsun.com)
4379         * rcs2log: Add -h, -n, -r options.
4380         By default, look for *,v files as well as RCS/*,v files.
4381         Use $TMPDIR (default /tmp) instead of /tmp.
4383 1993-09-20  Francesco Potorti`  (pot@fly)
4385         * etags.c (C_entries): is_func is initialised here instead of in
4386         consider_token for the sake of the yacc rules section.
4387         (C_entries): Now class, struct, enum, union and typedef produce
4388         named tags.
4390 1993-09-11  Roland McGrath  (roland@baalperazim.gnu.ai.mit.edu)
4392         * yow.c: Include <src/paths.h>, instead of "src/paths.h".
4394 1993-09-10  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
4396         * Makefile.in: Support configuring in a different directory when
4397         ${srcdir} has already been configured.
4398         (ALL_CFLAGS, CPP_CFLAGS): Put -I. -I../src before -I${srcdir}
4399         -I${srcdir}/../src.
4400         (b2m, movemail, fakemail, env, emacsserver, emacsclient,
4401         getdate.o, timer.o, timer): Remove `-I${srcdir}/../src', since it
4402         is already in CPP_FLAGS.
4403         * etags.c, emacsclient.c, wakeup.c, timer.c, b2m.c, fakemail.c,
4404         movemail.c, emacsserver.c: Include <config.h> instead of "config.h".
4406 1993-08-25  Paul Eggert  (eggert@twinsun.com)
4408         * rcs2log: Change /{/ to /\{/ for Posix ERE compatibility;
4409         otherwise, HP awk complains.
4411         * vcdiff: Append /usr/ccs/bin and /usr/sccs to PATH, since these
4412         are common hangouts for SCCS commands.
4414 1993-08-14  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4416         * Version 19.19 released.
4418 1993-08-12  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4420         * Makefile.in (make-path): Dep on config.h.
4422 1993-08-11  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4424         * b2m.c (TRUE, FALSE): Don't define if already defined.
4426 1993-08-09  Paul Eggert  (eggert@twinsun.com)
4428         * rcs2log (awkscript):
4429         Some sites put comma-separated junk after the fullname.
4430         Remove it, but leave "Bill Gates, Jr" alone.
4431         Remove the junk from fullnames like "0000-Admin(0000)".
4433 1993-08-08  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4435         * Version 19.18 released.
4437 1993-08-04  Francesco Potorti`  (pot@spiff.gnu.ai.mit.edu)
4439         * etags.c (L_isdef, L_isquote, L_getit): small optimisations.
4440         (L_funcs): the (foo::defmumble stuff now should work.
4441         (consider_token): function returned random value--corrected.
4442         (C_entries): corrected == versus = typo.
4444 1993-08-01  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
4446         * etags.c (put_entries): For NODE->rewritten, put pattern before
4447         \177 and name after, not vice versa.
4449 1993-08-01  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4451         * timer.c (main): Generate a SIGIO as soon as we've initialized.
4453 1993-07-30  Francesco Potorti`  (pot@cnuce.cnr.it)
4455         * etags.c (FINCST): added the fignore status. Means we are
4456         after the parameter list and before the open curly brace.
4457         Allows correct parsing of C++ constructors.
4458         (C_entries, consider_token): make use of fignore.
4459         (consider_token): reset funcdef when next_token_is_func: when in
4460         ctags mode makes DEFVAR and others work better.
4461         (L_isquote): function that recognises the "(quote" string.
4462         (L_getit): ignore quoting via "'" or "(quote".  Useful for defalias.
4464 1993-07-29  Paul Eggert  (eggert@twinsun.com)
4466         * rcs-checkin: Don't check whether a file is readable until we have
4467         decided not to ignore it.
4469 1993-07-20  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4471         * Makefile.in (etags): Depend on ../src/config.h.
4473         * emacsserver.c: Include types.h before file.h.
4475 1993-07-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4477         * Makefile.in (install): Use .n, not .new, for temporary filenames.
4479 1993-07-18  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4481         * Version 19.17 released.
4483 1993-07-15  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
4485         * etags.c (print_help): Break up the very long strings containing
4486         the help message into shorter strings, to placate chintzy C
4487         compilers which can't handle strings that long.
4489         * wakeup.c: Use CPP tangle from autoconf manual to #include the
4490         correct combination of <time.h> and <sys/time.h>.
4492 1993-07-08  Francesco Potorti`  (pot@cnuce.cnr.it)
4494         * etags.c (alloca): removed all references to it.
4495         (main): now calls xnew instead of alloca for portability.
4496         (../src/config.h): included only if HAVE_CONFIG_H.
4497         (const): void definition removed--config.h takes care of it.
4499 1993-07-08  Francesco Potorti`  (pot@cnuce.cnr.it)
4501         * etags.c (consider_token): was `==', now is `='.
4502         (consider_token): DEFUNs now treated like funcs in ctags mode.
4504         * etags.c (LEVEL_OK_FOR_FUNCDEF): removed.
4505         (C_entries): optimized the test that used LEVEL_OK_FOR_FUNCDEF.
4506         (C_entries): removed a piece of useless code.
4507         (C_entries): making typedef tags is delayed until a semicolon
4508         is met.  This handles "typedef int X, Y, Z;" correctly.
4510 1993-07-06  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
4512         * Version 19.16 released.
4514         * b2m.c: #include <sys/types.h>.
4515         (ltoday): Declare this to be time_t.
4517 1993-06-30  Paul Eggert  (eggert@twinsun.com)
4519         * vcdiff: Add -q option.
4521 1993-06-29  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4523         * etags.c: #include "config.h" and the alloca CPP tangle before
4524         #including the system headers and getopt.h.  AIX requires the
4525         #pragma to come before any actual C code.
4527 1993-06-21  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4529         * Makefile.in (ctags): Depend on etags, so that parallel makes
4530         don't write etags.o files on top of each other.
4532 1993-06-19  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4534         * version 19.15 released.
4536 1993-06-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4538         * etags.c (add_node): Move var last_node to file scope.
4540 1993-06-17  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4542         * Version 19.14 released.
4544 1993-06-16  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4546         Bring mumbleclean targets into conformance with GNU coding standards.
4547         * Makefile.in (distclean): Call clean to do most of the work.
4548         Delete aixcc.c and TAGS.
4549         (realclean): Just call distclean.
4551         * Makefile.in: Remember, spaces are not tabs.
4553 1993-06-13  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4555         * Makefile.in (CPP_CFLAGS): New variable.
4556         Use it instead of ALL_CFLAGS when compiling a .c file.
4557         (getopt.o, getopt1.o): Add explicit compilation commands.
4559 1993-06-10  Mark D. Baushke  (mdb@cisco.com)
4561         * etags.c: Reinstate old -f option as an alias for -o for
4562         installed base uses.
4564 1993-06-09  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4566         * emacsserver.c (main): When we're passing a `struct sockaddr_un'
4567         to bind or accept, cast the pointer, to avoid warnings on systems
4568         which declare prototypes for this.
4569         * emacsclient.c (main): Same.
4571         * Makefile.in (YACC): New variable, to be set by top-level Makefile.
4573 1993-06-08  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4575         * Version 19.13 released.
4577         * wakeup.c: Include sys/types.h, too; I think that's where time_t
4578         comes from, not sys/time.h.
4580 1993-06-02  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4582         * wakeup.c: Include sys/time.h.
4584         * etags.c: #undef static.
4586         * Version 19.12 released.
4588         * Makefile.in (all): Exclude INSTALLABLE_SCRIPTS and SCRIPTS from deps.
4590 1993-06-01  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4592         * Version 19.11 released.
4594         * timer.c [LINUX]: #undef signal.
4595         * emacsserver.c: #undef signal.
4597 1993-05-30  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4599         * wakeup.c (main): Make when a time_t.
4601 1993-05-30  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4603         * Makefile.in: (${archlibdir}): Use `(cd foo && pwd)' instead of
4604         `(cd foo ; pwd)' to get the canonical name of a directory; cd
4605         might fail, and have pwd print out the current directory.
4607         * movemail.c [MAIL_USE_POP] (main): Don't use non-portable
4608         string-handling functions.
4610 1993-05-30  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4612         * Version 19.10 released.
4614 1993-05-29  Paul Eggert  (eggert@twinsun.com)
4616         * rcs2log: When given no file arguments, inspect RCS/.* as well
4617         as RCS/*.  Don't report an error if RCS is empty or nonexistent.
4619 1993-05-29  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4621         * Makefile.in (timer): Link with $(LOADLIBES).
4623 1993-05-28  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4625         * fakemail.c (put_line): Don't output \n\t unless more text follows.
4627 1993-05-28  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
4629         * etags.c: Replace the CPP tangle for alloca with the one from the
4630         autoconf documentation, since that's working elsewhere.
4632 1993-05-27  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
4634         * Makefile.in (ALL_CFLAGS): Add "-I.", so the system and machine
4635         description files can find their ancestors.
4637 1993-05-27  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4639         * Makefile.in (install): Get the scripts from ${srcdir},
4640         unlike the executables.
4641         (ALL_CFLAGS): Add -I../src
4643 1993-05-27  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
4645         * Version 19.9 released.
4647 1993-05-26  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4649         * Makefile.in (install): Do install the programs listed in
4650         INSTALLABLE_SCRIPTS.  Make the renaming loop use INSTALLABLES and
4651         INSTALLABLE_SCRIPTS, instead of writing the programs out.
4653         * Makefile.in (ALL_CFLAGS): Include -I${srcdir}.
4654         (getopt.o, getopt1.c): Use ${srcdir} as appropriate.
4656 1993-05-25  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4658         * etags.c: Include ../src/config.h.
4660         * Makefile.in (install): Don't handle INSTALLABLE_SCRIPTS
4661         in first loop.  Delete files from bindir before installing new ones.
4662         (ALL_CFLAGS): Use ${srcdir} to find .../src dir.
4664 1993-05-24  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4666         * Version 19.8 released.
4668         * make-docfile.c: Doc fix.
4670 1993-05-24  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4672         * tcp.c: Fix comment syntax at top of file.
4673         (main): Don't call htons with the port number.
4675 1993-05-24  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4677         * Makefile.in (timer.o, sorted-doc.c): Link with alloca.o, if it's
4678         appropriate.
4680         * Makefile.in (install): Refer to the variables INSTALLABLES and
4681         INSTALLABLE_SCRIPTS, instead of writing them out.
4683 1993-05-23  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4685         * make-path.c (main): Return 0.
4687 1993-05-22  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
4689         * Version 19.7 released.
4691 1993-05-22  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4693         * make-docfile.c (scan_lisp_file): Recognize defalias like fset.
4695 1993-05-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4697         * tcp.c: New file.
4699 1993-05-18  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4701         * Makefile.in (.c.o): Make the rule start with a tab, not spaces.
4703 1993-05-15  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
4705         * timer.c (notify): Don't call sighold or sigrelse; they're USG
4706         only.  We should really fix this later, but let's just make it
4707         compile for now.
4709         Install patches from David J. Mackenzie to make the srcdir option
4710         work.
4711         * Makefile.in (srcdir, VPATH): Get this value from the top-level
4712         Makefile.
4713         (INSTALLABLES): Split this into two lists - INSTALLABLES and
4714         INSTALLABLE_SCRIPTS.
4715         (INSTALLABLE_SCRIPTS): New list.
4716         (EXECUTABLES): Include INSTALLABLE_SCRIPTS.
4717         (${archlibdir}): The scripts to be installed live in the source
4718         tree, not in the object tree.
4719         (test-distrib): Note that the data file lives in the source tree,
4720         not the object tree.
4721         (GETOPTDEPS): Note that getopt.h lives in the source tree.
4722         (all other targets): Change references to source files to use
4723         ${srcdir}, except for config.h, which lives in the object dir.
4724         (timer.o): Note that this depends on ../src/config.h.
4725         * make-docfile.c (main): Add a -d option, to tell it where to find
4726         the source files.
4727         * test-distrib.c (main): Take the name of the distribution file to
4728         test from the command line.
4730         * timer.c: Fix mispellings of get_date function's name.
4732 1993-05-12  Roland McGrath  (roland@geech.gnu.ai.mit.edu)
4734         * etags.c (main):
4735         Don't require that there be input files if -i switches were given.
4737 1993-05-09  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
4739         The GNU coding standards specify that CFLAGS should be left for
4740         users to set.
4741         * Makefile.in (CFLAGS): Put this in the "things configure might
4742         edit" section, and have it default to -g.
4743         (ALL_CFLAGS): New variable, set to all the flags which should be
4744         passed to compilations.  Replace all other uses of CFLAGS with
4745         ALL_CFLAGS.
4746         (.c.o): New rule, to pass ALL_CFLAGS to compilations.
4748         * Makefile.in (DEFS): Remove this; it's always just going to be
4749         "-DHAVE_CONFIG_H -Demacs".
4751 1993-05-03  Paul Eggert  (eggert@twinsun.com)
4753         * rcs2log: mawk, SunOS 4.1.3 nawk, and Ultrix/MKS nawk all barf on
4754         /[/]/, so change it to /[\/]/.  This should work on all
4755         Posix-compliant awks.  It's slightly wrong with traditional awk,
4756         since it matches \ too, but that's a minor problem compared to awk
4757         syntax errors.
4759 1993-05-01  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
4761         * Makefile.in (ALLOCA): New variable, whose value we should
4762         inherit from the top-level makefile.
4763         (etags, ctags): Include ALLOCA in the list of object files that
4764         these executables depend on and link.
4766 1993-04-09  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
4768         * Makefile.in (DEFS): Renamed from CONFIG_CFLAGS.
4770 1993-04-07  Jim Blandy  (jimb@churchy.gnu.ai.mit.edu)
4772         * make-docfile.c (write_c_args): Print an argument named "defalt"
4773         as "default".
4775 1993-03-24  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
4777         * Makefile.in (C_SWITCH_SYSTEM): New variable.
4778         (CFLAGS): Include C_SWITCH_SYSTEM in the flags to pass to the
4779         compiler.
4781 1993-03-22  Francesco Potorti`  (pot@cnuce.cnr.it)
4783         * etags.c (YACC): flag added to c_ext.
4784         (c_ext): no more a synonim for c_ext&C_PLPL because of YACC.
4785         (find_entries): consistently use streq when reasonable.
4786         (find_entries): a .y file is a yacc file.
4787         (get_C_stab): c_ext becomes c_ext&C_PLPL.
4788         (C_entries): logical cplpl means c_ext&C_PLPL.
4789         (C_entries): logical yacc_rules means we are after the first %%.
4790         (C_entries): added logic for yacc files.
4792 1993-03-16  Francesco Potorti`  (pot@cnuce.cnr.it)
4794         * etags.c (C_entries): ':' case moved to the second switch.
4795         (C_entries): do not examine token if structdef==scolonseen.
4796         (consider_token): structtag set to null string for enum.
4798 1993-03-12  Francesco Potorti`  (pot@cnuce.cnr.it)
4800         * etags.c (GET_COOKIE): and related macros removed.
4801         (logical): is now int, no more a char.
4802         (reg): define deleted.
4803         (isgood, _gd, notgd): deleted.
4804         (gotone): deleted.
4805         (TOKEN): member linestart removed.
4806         (linepos, prev_linepos, lb1): deleted.
4807         (main): call initbuffer on lbs array instead of lb1.
4808         (init): removed the initialisation of the logical _gd array;
4809         (find_entries): a .sa suffix means assembler file.
4810         (C_create_stab): "auto", "void", "extern", "static" are st_C_typespec.
4811         All C state machines rewritten.
4812         (C_entries): complete rewrite.
4813         (condider_token): complete rewrite.
4814         (getline): deleted.
4816 1993-03-01  Francesco Potorti`  (pot@fly.CNUCE.CNR.IT)
4818         * etags.c (C_entries): Added the quotednl logical variable.
4819         Used for parsing of #define's spanning multiple lines.
4821 1993-02-23  Francesco Potorti`  (pot@fly.CNUCE.CNR.IT)
4823         * etags.c (C_entries): Save the definedef status even when a
4824         newline is met inside a string.
4826 1993-03-19  Eric S. Raymond  (eric@geech.gnu.ai.mit.edu)
4828         * Makefile.in (EXECUTABLES): added rcs-checkin.
4830         * Makefile.in (unlock, relock): New productions.
4832 1993-03-16  Paul Eggert  (eggert@twinsun.com)
4834         * rcs2log: Some awks don't understand "\r".  Code around this.
4835         Unfortunately this requires putting a carriage return in the
4836         source code.  Don't assume that rlog will tolerate times like
4837         `10:10:60'; RCS 5.7 won't allow this.
4839 1993-03-10  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
4841         * timer.c (main): Set the ownership of the stdin file descriptor
4842         to the current process.  Print error messages if either of the
4843         fcntl's fails.
4845         * timer.c (sigcatch): Declare this to return SIGTYPE (defined in
4846         ../src/config.h), not void.
4848 1993-03-06  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
4850         * b2m.c (main): Don't exit upon reading a blank line.
4852 1993-03-01  Francesco Potorti`  (pot@fly.CNUCE.CNR.IT)
4854         * etags.c (C_entries): New local variable quotednl.  Used for
4855         parsing of #define's spanning multiple lines.
4857         * etags.c (C_entries): Save the definedef status
4858         even when a newline is met inside a string.
4860 1993-02-26  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
4862         * timer.c (notify): Initialize waitfor properly.
4864 1993-02-22  Francesco Potorti`  (pot@CNUCE.CNR.IT)
4866         * etags.c (C_entries): Don't reset definedef when a newline inside a
4867         comment is met.
4869 1993-01-14  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4871         * etags.c (find_entries): If filename ends in .f or .for,
4872         don't try anything but Fortran.
4874 1993-01-08  Michael I Bushnell  (mib@geech.gnu.ai.mit.edu)
4876         * timer.c (notify): Flush stdout after writing message to avoid lossage
4877         on terminals.
4879         (notify): Also, write a newline after the token.
4881 1992-12-12  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
4883         * Makefile.in (exec_prefix): New variable.
4884         (bindir, libdir): Use it instead of `prefix'.
4886         * Makefile.in (CFLAGS): #define HAVE_CONFIG_H, too.
4888         * Makefile.in (libdir): Default to ${prefix}/lib.
4889         (archlibdir): Adjusted to match.
4891         * Makefile.in (distclean): Don't delete backup or autosave files.
4892         (extraclean): Like realclean, but does delete backup and autosave
4893         files.
4895         * Makefile.in (realclean): Ignore errors from rm.
4897         * Makefile.in (distclean): Don't bother to delete ../arch-lib;
4898         that doesn't exist anymore.
4900 1992-12-11  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
4902         * Makefile.in (prefix, bindir, libdir, srcdir): New variables, as
4903         described in the top-level Makefile.
4904         (UTILITIES): Add make-path to the list of utility programs.
4905         (../arch-lib): Replaced by the ${archlibdir} target, which places
4906         the executables in their permanent home.
4907         (install, install.sysv, install.xenix): Consolidated into one
4908         target which should work under all circumstances, modulo a few
4909         ignored error messages.
4911         * make-docfile.c (scan_c_file): Since DEFVAR_PER_BUFFER now takes
4912         a different number of arguments than other DEFVARs, recognize it
4913         specially, and expect the right number of commas.
4915 1992-12-04  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
4917         * make-path.c: New program, to help with the installation process.
4918         * Makefile.in (make-path): New target.
4920         * make-path.c (touchy_mkdir): Remove debugging output.
4922 1992-11-05  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
4924         * Makefile.in (getdate.o): Added explicit target for this, so we
4925         can indicate that it depends on ../src/config.h.
4927 1992-11-04  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
4929         * Makefile.in (CONFIG_CFLAGS): Let the configure script edit this
4930         instead of CFLAGS.
4931         (CFLAGS): Add -Demacs and -I../src to CONFIG_CFLAGS to produce this.
4933 1992-09-30  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4935         * getdate.y: Correctly recognize Mt. Xinu BSD running on an HP
4936         9000/300 as BSD; don't include both <sys/time.h> and <time.h> on
4937         that system.
4939         * Makefile.in (arch-lib): Give rm the `-f' option.
4941 1992-09-28  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4943         * make-docfile.c (write_c_args): Rewritten to correctly print
4944         &optionals before the first identifier, but after the first paren.
4945         This code used to just wait for commas or spaces; now it notices
4946         identifier boundaries.
4948 1992-09-26  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
4950         * rcs2log: When getting date, use %02d instead of %.2d in awk printf.
4952 1992-09-23  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
4954         * make-docfile.c (write_c_args): Print the argument lists properly
4955         when the first argument is optional.
4957 1992-09-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4959         * sorted-doc.c (main): Redefine special chars to use fonts tensy, teni.
4960         Redefine @item.  Set catcode of +.
4962 1992-08-22  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4964         * emacsclient.c (main): Set IPC_CREAT in msgget call.
4966 1992-08-20  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
4968         * etags.c (TEX_funcs): Keep just 1 of two redundant nested loops.
4969         (TEX_decode_env): Make `tab' one element longer.
4971 1992-08-20  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
4973         * etags.c (PF_funcs): Recognize the "entry" keyword.
4975 1992-08-18  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
4977         * Makefile.in: Add rcs2log and vcdiff to the list of utilities.
4979 1992-08-14  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
4981         * timer.c (events): Rather than having slots marked as in use or
4982         out of use by the `token' field, keep all pending events at the
4983         beginning of the array.  When we delete an event in the middle of
4984         the array, we move the last event into its place.
4985         (num_events): New variable.
4986         (schedule): It is now cheaper to find a free event slot;
4987         events[num_events] is the first free slot.
4988         (notify): Scan events[0 .. num_events-1], instead of the whole
4989         array.  When an event fires, move the last event in the array into
4990         its spot.  Use num_events to determine whether or not there are
4991         any pending events, not wait_for.
4992         (getevent): Deleted unused variable `ep'.
4993         (sigcatch): It's now easier to find all the active events.
4994         (main): Initialize num_events.
4996         * etags.c: Rather than fret about which systems have index and
4997         which systems have strchr, and how to tell the difference between
4998         them, we just write out our own versions.  Big deal.
4999         (index, rindex): Extern declarations removed.
5000         (NEED_INDEX, NEED_RINDEX): Special hacks for hpux removed.
5001         (etags_index, etags_rindex): New declarations.
5002         (process_file, find_entries, pfnote, TEX_funcs, TEX_decode_env,
5003         TEX_getit, substr): Use the etags_*index functions, rather than
5004         the native *index functions.
5005         (rindex, index): Renamed to etags_rindex and tags_rindex, and
5006         made them unconditionally defined, rather than having them depend
5007         on NEED_*INDEX.
5009         * etags.c (savenstr): Add declaration for this at top of file.
5010         (TEX_decode_env): Don't declare it local to this function.
5012         * b2m.c: #include "../src/config.h", so we can test for the USG
5013         macro, and decide whether to include <string.h> or <strings.h>.
5014         * Makefile.in: Note that b2m.c depends on ../src/config.h.
5016 1992-08-13  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5018         * timer.c: Reformatted according to the GNU coding standards.
5019         Removed arbitrary limits on the number of events queued and the
5020         length of the tokens used to identify them.
5021         Removed casts to (void).
5022         Removed debugging printfs; they clutter the code, and the need
5023         can be better filled using a real debugger.
5025 1992-08-07  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5027         * timer.c: Installed new version from Eric Raymond; this is more
5028         portable, since it doesn't try to use SIGIO.
5030 1992-07-17  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
5032         * emacsclient.c (main): If we can't find the socket in this
5033         person's home directory, print a message which asks if they've
5034         started the server, instead of just printing the message from
5035         sys_errmsg; Cygnus finds that people are much less confused by
5036         this.
5038 1992-07-14  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
5040         * etags.c: Rather than defining "notdef" when "hpux" is #defined,
5041         so that index and rindex get defined, why don't we actually
5042         control index and rindex using symbols called "NEED_INDEX" and
5043         "NEED_RINDEX", and define them if hpux is defined?  Isn't that a
5044         little more readable than defining something whose name implies
5045         that it's not?
5047 1992-07-08  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
5049         * movemail.c: Merged changes from Jamie Zawinski's byte compiler
5050         distribution:
5051         Miscellaneous doc fixes.
5052         (skip_white, read_lisp_symbol): New functions.
5053         (scan_lisp_file): Instead of using long hairy strings of ifs, call
5054         read_lisp_symbol and then see what we got.  Call skip_white
5055         instead of writing out a loop to do its job.  Correctly extract
5056         docstrings from "defmacro" declarations.
5058 1992-06-25  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5060         * movemail.c (strcpy): Declare this to return char *.
5062 1992-06-18  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5064         * etags.c (C_entries): When we find a C++ comment, do actually
5065         skip to the end of the line; do a 'break' instead of a 'continue'.
5067 1992-06-11  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
5069         * etags.c (getit): Add missing parenthesis to expression which
5070         decides if this token is an identifier.
5072 1992-06-04  Roland McGrath  (roland@geech.gnu.ai.mit.edu)
5074         * etags.c (consider_token): Recognize `ENTRY' macro used in libc.
5076 1992-05-30  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
5078         * etags.c (put_entries): Always put space between name and line num.
5080 1992-05-28  Ken Raeburn  (Raeburn@Cygnus.COM)
5082         * etags.c (getit): Parenthesize &&/|| expression to avoid gcc
5083         warning.
5084         (LEVEL_OK_FOR_FUNCDEF): Ditto.
5086 1992-05-19  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
5088         * make-docfile.c (write_c_args): Pass both arguments to putc.
5090 1992-05-10  Roland McGrath  (roland@albert.gnu.ai.mit.edu)
5092         * etags.c (C_entries): Fixed reading of "..." strings.
5093         (consider_token): Recognize `SYSCALL' and `PSEUDO' macros, used in
5094         the C library source.
5096         * etags.c (C_entries): When we see a backslash inside a quoted
5097         string, skip to the next character.  This allows us to correctly
5098         deal with strings containing quotes.
5100 1992-05-08  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5102         * make-docfile.c (write_c_args): Print the C argument names as
5103         they would be written in Elisp; print '_' as '-'.
5105 1992-05-07  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
5107         * movemail.c [POP]: Get user name via getpwuid.
5109 1992-05-04  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5111         * Makefile.in: flags in CC invocations rearranged for no reason.
5113 1992-04-20  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5115         * etags.c (print_help): Remember not to imbed raw newlines in
5116         strings - end the lines with `\n\'.
5118 1992-04-17  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5120         * timer.c (getevent): Removed declaration of memcpy; since
5121         different systems have different return types, and we're not even
5122         using the return type anyway, it wasn't doing us any good.
5124 1992-04-16  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5126         * emacsserver.c (msgcatch): Use the SIGTYPE macro to declare the
5127         type of this function.
5129 1992-04-14  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5131         * ChangeLog: Since the old etc contents have been split into etc
5132         and lib-src, the old etc's ChangeLog has been duplicated in the
5133         new etc and lib-src.  That means that each contains complete and
5134         coherent information, although each contains extraneous
5135         information.
5137 1992-04-08  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5139         * lib-src/etags.c: "--no-warning" option renamed to "--no-warn",
5140         to be consistent with other GNU programs, like makeinfo.
5142         * lib-src/Makefile: Renamed to Makefile.in; the configure script
5143         will edit this to produce Makefile.
5145 1992-04-07  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5147         * etags.c (print_help, print_version): New functions.
5148         (main): Options added to support them.
5150         * etags.c (longopts): New array of long names for the options.
5151         (main): Recognize them.
5153 1992-04-06  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5155         * etags.c (C_entries): Removed comment saying that \" in a string
5156         isn't recognized as magic, because it is correctly handled.
5158         * getopt.c, getopt.h: New files, from GNU C library.
5159         * etags.c: Rewritten to use getopt.
5160         #include "getopt.h".
5161         (file_num): Variable deleted; its role is now played by getopt's
5162         optind.
5163         (main): Argument processing loop rewritten to call getopt to get
5164         next option.  Options which take parameters (-o and -i) rewritten
5165         to get parameter from optarg instead of argv[1].  Filename
5166         preprocessing loop and update command changed similarly.
5167         * Makefile (etags, ctags): Depend on and link with getopt.h,
5168         getopt.o, and getopt1.o.
5169         (getopt.o, getopt1.o): New targets for the GNU getopt routines.
5171         * etags.c (outfflag): Variable deleted; it is non-zero iff outfile
5172         is non-zero.
5174         (main): In the argument processing loop, the 'goto next_arg'
5175         statements are breaking out of the switch statement in exactly the
5176         same way that a simple 'break' statement would; replace the gotos
5177         with breaks, and remove the label.
5179 1992-04-06  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
5181         * etags.c (C_entries): Clear tydef and next_token_is_func at start.
5182         (consider_token): Move next_token_is_func to global.
5184 1992-04-02  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5186         * Makefile: Conform with GNU coding standards:
5187         (mostlyclean): New target, synonymous with clean.
5188         (TAGS, check): New targets.
5189         (INSTALL, INSTALLFLAGS): New variables.
5191 1992-03-31  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5193         * lib-src/Makefile, etc/MACHINES, etc/NEWS: Changed references to
5194         `config.emacs' to `configure'.
5196         * lib-src/Makefile: Adjusted for renaming of share-lib to etc.
5197         * etc/MACHINES: Same.
5199 1992-03-30  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5201         * movemail.c (main): Allow tempname to be as long as necessary,
5202         instead of limiting it to 39 characters.
5204         * movemail.c (main): Move declaration of buf from top of function
5205         to local block surrounding the copy loop.  This makes it less
5206         likely to be confused with the buf used by the code which checks the
5207         permissions on outname's directory.
5209 1992-03-20  Jim Kingdon  (kingdon@albert.gnu.ai.mit.edu)
5211         * SERVICE: Remove my entry.
5213 1992-03-09  David J. MacKenzie  (djm@nutrimat.gnu.ai.mit.edu)
5215         * Makefile (emacstool, nemacstool, xvetool): Use ${CFLAGS}, not
5216         hardcoded -g.
5218         * movemail.c (xmalloc): Return char *, not int.
5219         (main) [!MAIL_USE_FLOCK]: Add a new conditional, MAIL_UNLINK_SPOOL,
5220         that is off by default -- normally don't unlink the mail spool
5221         file, just empty it.  Pass creat mode 0600, not 0666.
5223 1992-02-07  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5225         * Makefile (../arch-lib): Depend on ${EXECUTABLES}.
5226         (all): Instead of here.
5227         (install): Don't use the -s option, since people need symbols to
5228         debug code.
5230 1992-01-19  Eric Youngdale  (youngdale@v6550c.nrl.navy.mil)
5232         * etags-vmslib.c (fn_exp): Add type cast.
5234 1992-01-18  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
5236         * movemail.c: Changes in comments.
5238 1992-01-13  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5240         * Makefile: Make the distclean target erase the DOC files from
5241         ../share-lib and the executables from ../arch-lib.
5243 1992-01-09  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
5245         * emacsclient.c: #include <sys/stat.h>
5246         (main): Do declare statbfr.
5248 1991-12-21  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
5250         * emacsserver.c, emacsclient.c [BSD]: Use either /tmp or ~
5251         for the socket, depending on SERVER_HOME_DIR.
5252         If using /tmp, put host name in the socket name.
5254         * movemail.c (pfatal_and_delete): New function.
5255         (main, popmail): Use it.
5256         (popmail): Close output before deleting messages.
5257         Check for error on close and on fsync.
5258         Use `fatal' where appropriate.
5259         (main): Remove (void).
5261         * aixcc.lex: New file.  Not officially part of Emacs.
5262         * Makefile: Rules for that.
5264 1991-12-04  Jim Blandy  (jimb@pogo.gnu.ai.mit.edu)
5266         * yow.c (main): Rename all references to PATH_EXEC to PATH_DATA.
5268         * etags.c (main): Properly cast call to alloca that initializes
5269         included_files.
5271 1991-08-17  Roland McGrath  (roland@geech.gnu.ai.mit.edu)
5273         * etags.c (files_are_tag_tables): Remove global var.
5274         (process_file): Don't test it.  Also remove hack checking for a
5275         file named "TAGS".
5276         (main): -i now takes an arg which is the name of a file to include.
5277         Collect these names and emit include tags for them after processing
5278         all the argument files.
5280 1991-07-30  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
5282         * wakeup.c: Terminate if parent goes away.
5284 1991-07-18  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
5286         * etags.c (C_entries): Process token before handling end of line.
5287         When inner loops reach end of line, just back up.
5288         Let the real end of line processing happen in just one place.
5289         (consider_token): Likewise.
5291 1991-04-11  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
5293         * etags.c (TEX_mode): Skip comments while scanning the text to see
5294         which escape character this file uses.
5296 1991-03-29  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
5298         * emacsserver.c [USG]: Terminate if msgrcv fails.
5300 1991-03-03  Richard Stallman  (rms@mole.ai.mit.edu)
5302         * emacsserver.c [BSD]: Check for errors on stdin after scanf.
5304 1991-01-25  Jim Blandy  (jimb@churchy.ai.mit.edu)
5306         * make-docfile: Find the arguments to a C function correctly,
5307         by not ignoring the character that read_c_string returns.  Don't
5308         even try to find argument names for functions that take MANY
5309         or UNEVALLED arguments, since they're a figment of the docstring's
5310         imagination.
5312 1991-01-14  Jim Blandy  (jimb@churchy.ai.mit.edu)
5314         * make-docfile: Read the .elc files generated by the new byte
5315         compiler.
5317 1990-12-31  Richard Stallman  (rms@mole.ai.mit.edu)
5319         * refcard.tex: Use cm fonts, not am, in multi-column mode.
5321 1990-11-29  Richard Stallman  (rms@mole.ai.mit.edu)
5323         * movemail.c (mbx_delimit_begin): Put space before `unseen'.
5325 1990-11-27  Richard Stallman  (rms@mole.ai.mit.edu)
5327         * Makefile (install*): No need to install wakeup.
5329 1990-11-26  Richard Stallman  (rms@mole.ai.mit.edu)
5331         * Makefile (install*): Install emacsclient like etags.
5333 1990-11-13  Richard Stallman  (rms@mole.ai.mit.edu)
5335         * movemail.c (error): Handle 3 args.
5336         (main): Don't check input access if using pop.
5338 1990-10-16  Richard Stallman  (rms@mole.ai.mit.edu)
5340         * etags.c (find_entries): Check for numbers after Scheme suffix.
5342 1990-10-14  Richard Stallman  (rms@mole.ai.mit.edu)
5344         * termcap.dat (vt200-80): Fix ke and ks to frob flag 1.
5346 1990-10-09  Richard Stallman  (rms@mole.ai.mit.edu)
5348         * Makefile (nemacstool, xvetool): New targets.
5350 1990-09-26  Richard Stallman  (rms@mole.ai.mit.edu)
5352         * emacsclient.c: Include errno.h and define related variables.
5354 1990-09-23  Richard Stallman  (rms@mole.ai.mit.edu)
5356         * emacsclient.c: Change usage message.
5358 1990-08-30  David Lawrence  (tale@pogo.ai.mit.edu)
5360         * emacs.1:  Add break before -nw option.
5362 1990-08-19  David J. MacKenzie  (djm@apple-gunkies)
5364         * qsort.c: Replace with GNU version.
5366 1990-08-14  David J. MacKenzie  (djm@apple-gunkies)
5368         * wakeup.c: New program replacing loadst.c.
5370 1990-08-14  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5372         * emacsclient.c [USG]: Pass msgsnd only 4 args.
5374 1990-08-09  David J. MacKenzie  (djm@pogo.ai.mit.edu)
5376         * etags.c: Rename `flag' variables for what they do instead of
5377         which option character sets them.
5379 1990-05-28  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5381         * loadst.c (main): Conditional to get load average on Apollo.
5383 1990-05-22  Joseph Arceneaux  (jla@churchy.ai.mit.edu)
5385         * emacsserver.c: Set the permission on the socket to 0600.
5387 1990-03-27  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5389         * emacsclient.c [BSD]: Print clean message for failing getwd.
5391 1990-03-20  David Lawrence  (tale@pogo.ai.mit.edu)
5393         * getdate.y: Use the getdate.y from GNU tar for timer.
5395 1990-03-18  Jim Kingdon  (kingdon@pogo.ai.mit.edu)
5397         * emacsclient.c (main): Don't put brackets around "filename" in
5398         usage message.  It isn't optional.
5400 1990-03-14  Joseph Arceneaux  (jla@churchy.ai.mit.edu)
5402         * etags.c (getit): Recognize '$' as beginning identifiers.
5404 1990-02-22  David Lawrence  (tale@pogo.ai.mit.edu)
5406         * emacsserver.c: Renamed from server.c.
5407         * Makefile: Reference emacsserver rather than server.
5408         * MACHINES: Doc fix for new emacsserver name.
5410 1990-01-25  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5412         * emacsclient.c: Print program name in error messages.
5414 1990-01-19  David Lawrence  (tale@cocoa-puffs)
5416         * timer.c, getdate.y (new files) and Makefile:
5417           Sub-process support for run-at-time in timer.el.
5418           Doesn't yet work correctly for USG.
5420 1990-01-10  Jim Kingdon  (kingdon@pogo)
5422         * MACHINES: Add HP 300 running BSD.
5424 1990-01-02  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5426         * yow.c: Dynamically allocate buffer; skip header before random
5427         choice to avoid bias toward first item.
5429 1989-12-24  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5431         * etags.c (readline): Separate out init of `pend'.
5433 1989-12-17  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5435         * etags.c: Undo changes relating to isgoodhdr.
5437 1989-12-16  Mosur Mohan  (rms@sugar-bombs.ai.mit.edu)
5439         * etags.c (isgoodhdr): New macro.
5440         (_gdh, notgdh): New variable used by that.
5441         (init): Initialize _gdh.
5442         (find_entries): Set header_file.
5443         (consider_token): Use isgoodhdr if in header file.
5445         * etags.c (total_size_of_entries):
5446         Was miscalculating by 1 in rewritten case.
5448         * etags.c (PAS_funcs): One arg to pfnote was missing.
5450 1989-12-05  Joseph Arceneaux  (jla@spiff)
5452         * MACHINES: Change for the ULTRIX entry.
5454 1989-11-21  Joseph Arceneaux  (jla@spiff)
5456         * etags.c (process_file): If file is not regular, return.
5458 1989-11-06  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5460         * loadst.c (main): Handle FIXUP_KERNEL_SYMBOL_ADDR.
5462 1989-10-30  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5464         * loadst.c (load_average): If HAVE_GETLOADAVG, use getloadavg.
5465         (main): If HAVE_GETLOADAVG, don't call `nlist'.
5467 1989-10-25  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5469         * etags.c (consider_token): Allow any number of typespec keywords
5470         after `typedef', before new type name.
5471         (enum sym_type): Add st_C_typespec.
5472         (C_create_stab): Put typespec kwds in table.
5474 1989-08-27  Richard Stallman  (rms@apple-gunkies.ai.mit.edu)
5476         * etags.c (main): Don't depend on name invoked by.
5477         If CTAGS is not defined, assume it is ETAGS.
5479 1989-07-31  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5481         * etags.c (L_funcs): Allow package name in define construct,
5482         as in (foo::defmumble name-defined ...).
5484 1989-07-30  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5486         * etags.c (find_entries): Stupid bug testing for C filename suffixes.
5488         * Makefile (yow): Depends on ../src/paths.h.
5490 1989-07-04  Richard Stallman  (rms@apple-gunkies.ai.mit.edu)
5492         * etags.c: Fix compilation by moving Pascal after Fortran.
5494 1989-06-15  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5496         * movemail.c [USG]: Define F_OK, etc., if not found in header.
5498 1989-05-27  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5500         * hexl.c: New file, supports hexl-mode.
5502 1989-05-14  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5504         * movemail.c: New compilation flag MAIL_USE_MMDF.
5506 1989-05-08  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5508         * emacsclient.c: Use BSD code whenever HAVE_SOCKETS.
5509         * server.c: Likewise.
5511         * make-docfile.c (scan_c_file): Output argument names at end of string.
5512         (write_c_args): New subroutine.
5514 1989-04-27  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5516         * movemail.c: Report failure of flock.
5518 1989-04-19  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5520         * etags.c (find_entries): Allow multi-letter extensions for fortran.
5522 1989-04-18  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5524         * loadst.c: on bsd4.3, use gettimeofday instead of CPUSTATES.
5526 1989-03-15  Jeff Peck  (rms@sugar-bombs.ai.mit.edu)
5528         * emacstool.c: setenv IN_EMACSTOOL=t, TERM=sun, TERMCAP=.
5530         * emacsstool.1: update to document environment variables.
5532 1989-02-21  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5534         * etags.c (PAS_funcs): New function by Mosur Mohan.
5536         * movemail.c: On sysv, include unistd.h.
5538 1989-02-18  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5540         * b2m.c: New file.
5542 1989-02-15  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5544         * etags.c: Prolog support from Sunichirou Sugou
5546 1989-02-03  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5548         * Makefile (clean): New target.
5550 1989-01-25  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5552         * fakemail.c (put_line): Break header lines at 79 cols.
5554 1989-01-19  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5556         * etags.c: Greatly rewritten by Sam Kendall for C++ support and for
5557         multiple tags per line.
5559 1989-01-03  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5561         * movemail.c: Check access before doing real work.
5562         Check that outfile is in a writable directory.
5563         On fatal error, delete the lock file.
5565 1988-12-31  Richard Mlynarik  (mly@rice-chex.ai.mit.edu)
5567         * env.c:  Add decl for my-index
5568         * etags.c (file-entries): .oak => scheme
5570 1988-12-30  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5572         * movemail.c: Use `access' to check input and output files.
5574 1988-12-28  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5576         * emacsclient.c (main): Ignore all of CWD before first slash.
5578 1988-12-27  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5580         * etags.c (readline): Double linebuffer->size outside the xrealloc.
5582 1988-12-22  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5584         * server.c, emacsclient.c: Don't try to use gid_t; it isn't defined.
5585         * server.c: chmod the socket to 0700.
5587 1988-12-09  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5589         * fakemail.c (main): Let env var FAKEMAILER override pgm to run.
5590         (add_field): Delete comments and turn `<', `>' to spaces
5591         in header lines.
5592         (USE_FAKEMAIL): New customization macro says to make fakemail
5593         not be a no-op even on a BSD system.
5595 1988-12-01  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5597         * etags.c (consider_token): Skip comments just like whitespace.
5598         Notice `struct', etc. and set strtag for those tokens.
5599         Return 1 for the token following `struct' if an open-brace follows it.
5600         (C_entries): Special handling of token following `struct'
5601         needed because we have probably advanced to the following line
5602         to find the `{'.
5603         (main): New option `T' sets tflag and strflag.
5604         Set both of them by default if eflags.
5606 1988-11-30  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5608         * movemail.c: Do fsync before closing output.
5610 1988-11-29  Richard Mlynarik  (mly@pickled-brain.ai.mit.edu)
5612         * movemail.c:  Better error message when can't create tempname.
5613         This file needs a great deal of extra error-checking and lucid reporting...
5615 1988-11-16  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5617         * etags.c: Support assembler code for .s and .a files.
5618         (getit): Allow underscore in a tag.
5620 1988-11-15  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5622         * movemail.c: Close output and check errors before deleting input.
5624 1988-10-01  Richard Stallman  (rms@apple-gunkies.ai.mit.edu)
5626         * emacsclient.c [SYSVIPC]: Compute cwd only once; decide properly
5627         whether to prefix it.  Handle line number args.
5629 1988-09-24  Richard Stallman  (rms@gluteus.ai.mit.edu)
5631         * etags.c (main): default setting of eflag was backwards.
5633 1988-09-23  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5635         * etags.c: New option -i.  -f renamed -o.
5636         `-' as input file means read input file names from stdin.
5637         -i spec'd or input file named TAGS means the input file is another
5638         tag table; output an "include" line for it.
5640 1988-09-19  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5642         * Makefile: New vars DESTDIR, BINDIR, LIBDIR, MANDIR, MANEXT.
5643         New targets install, install.sysv, install.xenix.
5644         This makefile is now responsible for installing executables
5645         and documentation from this directory into system directories.
5647 1988-09-16  Richard Stallman  (rms@corn-chex.ai.mit.edu)
5649         * server.c, emacsclient.c (main): Compute socket name from euid.
5651 1988-08-04  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5653         * emacsclient.c: Args like +DIGITS are passed through unchanged.
5655 1988-07-12  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5657         * server.c: If both BSD and HAVE_SYSVIPC, use the latter.
5658         * emacsclient.c: Likewise.
5659         In the HAVE_SYSVIPC alternative, if BSD, use getwd instead of getcwd.
5661 1988-06-23  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5663         * etags.c: Handle `typedef struct foo {' (price@mcc.com).
5664         (istoken) New string-comparison macro.
5665         (consider_token): New arg `level'.  New state `tag_ok' in `tydef'.
5667 1988-06-14  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5669         * etags.c: Changes for VMS.
5670         Always define ETAGS on VMS.
5671         Define macros GOOD and BAD for success and failure exit codes.
5672         (begtk, intk): Allow `$' in identifiers
5673         (main): Don't support -B, -F or -u on VMS.
5674         Alternate loop for scanning filename arguments.
5675         (system): Delete definition of this function.
5677         * etags-vmslib.c (system): Undefine this; VMS now provides it.
5679 1988-06-08  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
5681         * loadst.c: Prevent multiple-def errors on BSD and BSD4_3
5682         around include of param.h.  (Like fns.c.)
5684 1988-05-16  Richard Stallman  (rms@frosted-flakes.ai.mit.edu)
5686         * loadst.c (load_average): Move load-average code to this new fn.
5687         Add conditionals to compute load ave on UMAX.
5689 1988-05-14  Richard Stallman  (rms@lucky-charms.ai.mit.edu)
5691         * loadst.c: Change DK_HEADER_FILE to DKSTAT_HEADER_FILE
5692         with opposite sense.
5694 1988-05-13  Chris Hanson  (cph@kleph)
5696         * emacsclient.c: Delete references to unused variable `out'.  This
5697         caused a bus error when used under hp-ux.
5699 1988-05-06  Richard Stallman  (rms@frosted-flakes.ai.mit.edu)
5701         * loadst.c: Control dk.h conditional with DK_HEADER_FILE.
5703 1988-05-04  Richard Stallman  (rms@rice-krispies.ai.mit.edu)
5705         * etags.c (find_entries): `.t' or `.sch' means scheme code.
5707 1988-04-29  Richard Stallman  (rms@frosted-flakes.ai.mit.edu)
5709         * loadst.c: Add BSD4_3 conditional for file dk.h instead of dkstat.h.
5711 1988-04-28  Richard Stallman  (rms@frosted-flakes.ai.mit.edu)
5713         * movemail.c: #undef close, since config can #define it on V.3.
5714         * emacsclient.c, fakemail.c, loadst.c, server.c: likewise.
5716 1988-04-26  Richard Stallman  (rms@lucky-charms.ai.mit.edu)
5718         * etags.c (TEX_mode, etc.): Remove superfluous backslashes from
5719         invalid escape sequences such as `\{'.
5721         * loadst.c: Add `sequent' conditional for file dk.h.
5723 1988-03-20  Richard M. Stallman  (rms@wilson)
5725         * server.c [not BSD and not HAVE_SYSVIPC]: fix error message.
5727         * loadst.c (main) [XENIX]: use /usr/spool/mail, not /usr/mail.
5729 ;; Local Variables:
5730 ;; coding: iso-2022-7bit
5731 ;; End:
5733     Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995,
5734         1996, 1997, 1998, 1999, 2001, 2002, 2003, 2004
5735         Free Software Foundation, Inc.
5736   Copying and distribution of this file, with or without modification,
5737   are permitted provided the copyright notice and this notice are preserved.
5739 ;;; arch-tag: 2d979296-954c-448e-95c1-b46d134513dc