Mercurial > hg > xemacs-beta
comparison etc/ChangeLog.etags @ 3876:a827a51c3241
[xemacs-hg @ 2007-03-24 11:46:37 by stephent]
Update to pot revision 17.26. <87ejnex3gv.fsf@uwakimon.sk.tsukuba.ac.jp>
author | stephent |
---|---|
date | Sat, 24 Mar 2007 11:46:43 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
3875:13bc23e816aa | 3876:a827a51c3241 |
---|---|
1 2007-01-02 Francesco Potortì <pot@gnu.org> | |
2 | |
3 * etags.c: (longopts): New undocumented option --no-duplicates. | |
4 (no_duplicates): Static variables for the above option. | |
5 (print_help): Do not print help for --no-warn, now undocumented. | |
6 (add_node): Allow duplicate tags in ctags mode unless --no-duplicates. | |
7 (main): Pass the -u option to sort in ctags mode. | |
8 | |
9 2006-12-28 Francesco Potortì <pot@gnu.org> | |
10 | |
11 * etags.c (readline): When creating a relative file name from a | |
12 #line directive, leave the file name alone. The previous | |
13 behaviour was to make it relative to the tags file directory, | |
14 under the hypothesis that the #line directive file name was | |
15 relative to the directory of the tagged file. That hypothesis is | |
16 wrong with Cpp and Lex. | |
17 | |
18 2006-12-20 Francesco Potortì <pot@gnu.org> | |
19 | |
20 * etags.c (C_entries): DEFUN names were longer by one: corrected. | |
21 (Makefile_targets): Do not include spaces in tag names. | |
22 | |
23 2006-08-12 Kevin Ryde <user42@zip.com.au> | |
24 | |
25 * etags.c (readline): Check for double quote after #line. | |
26 | |
27 2006-08-12 Jan Djärv <jan.h.d@swipnet.se> | |
28 | |
29 * etags.c (readline): sscanf could in principle return 2. | |
30 | |
31 2006-08-12 Francesco Potortì <pot@gnu.org> | |
32 | |
33 * etags.c (readline): lno is unsigned. | |
34 (TeX_commands): Use p++ (rather than *p++) to increment p. | |
35 (Lua_functions): Explicitely discard LOOKING_AT's return value. | |
36 | |
37 2006-08-07 Masatake YAMATO <jet@gyve.org> | |
38 | |
39 * etags.c (TEX_mode): Check getc retruns EOF. | |
40 File ended without newline causes infinite loop. | |
41 | |
42 2002-07-14 Adrian Aichner <adrian@xemacs.org> (tiny change) | |
43 | |
44 * etags.c: It's XEmacs, not Xemacs: change all the occurences. | |
45 | |
46 2006-07-10 Francesco Potortì <pot@gnu.org> | |
47 | |
48 * etags.c [ETAGS_REGEXPS]: #ifdef's deleted, define unconditionally. | |
49 [LONG_OPTIONS]: Changed to NO_LONG_OPTIONS, now normally undefined. | |
50 (Objc_suffixes): Suggest using --lang=c for full help. | |
51 (C_entries): Initialise savetoken to 0 to shut up the compiler. | |
52 | |
53 2006-07-10 Francesco Potortì <pot@gnu.org> | |
54 | |
55 * etags.c (absolute_filename): Free unused space (cosmetic change). | |
56 (in_word_set): In C, also tag #undef symbols. | |
57 | |
58 2006-05-02 Francesco Potortì <pot@gnu.org> | |
59 | |
60 * etags.c (Perl_functions): Free space allocated for var package. | |
61 (Erlang_functions): Possibly free space allocated for var last. | |
62 (Prolog_functions): Possibly free space allocated for var last. | |
63 | |
64 2005-11-18 Hideki IWAMOTO <h-iwamoto@kit.hi-ho.ne.jp> (tiny change) | |
65 | |
66 * etags.c (main): Cxref mode writes to stdout: do not close tagf, | |
67 which was never opened. | |
68 | |
69 2005-09-27 Francesco Potortì <pot@gnu.org> | |
70 | |
71 * etags.c: Preliminary Forth support. | |
72 (prolog_pr): Cast strlen to int before comparison. | |
73 (LOOKING_AT, LOOKING_AT_NOCASE): Let the preprocessor check that | |
74 the second argument is indeed a literal string. | |
75 (main): In append mode, sort the tags file after writing it. | |
76 | |
77 2005-09-27 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change) | |
78 | |
79 * etags.c (longopts, print_help, main): The -a (--append) option | |
80 can be used in ctags also; for one, the Linux make file uses it. | |
81 | |
82 2004-09-13 Francesco Potortì <pot@gnu.org> | |
83 | |
84 * etags.c (main): When relative file names are given as argument, | |
85 make them relative to the current working dir, rather than | |
86 relative to the output tags file, if the latter is in /dev. | |
87 | |
88 2004-09-13 David A. Capello <dacap@users.sourceforge.net> (tiny change) | |
89 | |
90 * etags.c: (Lua_suffixes, Lua_help, lang_names, Lua_functions): | |
91 Support the Lua scripting language <http://www.lua.org>. | |
92 | |
93 2004-09-13 Francesco Potortì <pot@gnu.org> | |
94 | |
95 * etags.c [EXIT_SUCCESS, EXIT_FAILURE]: Define them when no | |
96 <stdlib.h> is available. | |
97 (enum sym_type): New st_C_attribute value for parsing | |
98 gcc's __attribute__. Deleted st_C_typespec value. | |
99 (gperf, in_word_set): Use gperf 3, options changed. Added the | |
100 __attribute__ keyword, removed all the st_C_typespec keywords, | |
101 changed attribute for Java to (C_JAVA & !C_PLPL). | |
102 (inattribute): New global bool, part of the C state machine. | |
103 (cblev): Identifier renamed to bracelev throughout. | |
104 (consider_token, C_entries): Numerous changes for making the | |
105 parser more robust and adding support for __attribute__. | |
106 | |
107 2004-09-08 Francesco Potortì <pot@gnu.org> | |
108 | |
109 * etags.c: Add arch taglines | |
110 [LONG_OPTIONS]: make it TRUE (ifdef) or FALSE for ease of use. | |
111 [GOOD, BAD]: renamed to EXIT_SUCCESS, EXIT_FAILURE. | |
112 (suggest_asking_for_help): Fix having macros in a printf statement. | |
113 (consider_token): check C++ `operator' only when the token len is | |
114 long enough. | |
115 | |
116 2003-01-09 Francesco Potortì <pot@gnu.org> | |
117 | |
118 * etags.c: changes for language-sepcific help by Philippe | |
119 Waroquiers <wao@cfmu.eurocontrol.be> applied and largely revised. | |
120 (language): Added a `help' member. | |
121 (arg_type): Added an at_end constant. | |
122 (plain_C_suffixes): Some items removed from here. | |
123 (Objc_suffixes): And put here (new constant). | |
124 (Ada_help, Asm_help, default_C_help, Cplusplus_help, Cjava_help, | |
125 Cobol_help, Erlang_help, Fortran_help, HTML_help, Lisp_help, | |
126 Makefile_help, Objc_help, Pascal_help, Perl_help, PHP_help, | |
127 PS_help, Prolog_help, Python_help, Scheme_help, TeX_help, | |
128 Texinfo_help, Yacc_help, auto_help, none-help, no_lang_help): New | |
129 constants. | |
130 (PS_functions, PS_suffixes): Renamed from Postscript_functions and | |
131 Postscript_suffixes. | |
132 (lang_names): Adapted to the new language structure, new language | |
133 "objc" added (was previously merged with "proc"). | |
134 (print_language_names): Some help strings corrected. | |
135 (print_help): Now takes an argument and possibly prints lang help. | |
136 (print_help): Some help strings corrected. Documents | |
137 language-specific help. | |
138 (main): Only print help after having parsed all the arguments. | |
139 | |
140 2002-09-03 Francesco Potorti` <pot@gnu.org> | |
141 | |
142 * etags.c (regex_tag_multiline, readline): Never pass pfnote a | |
143 string that cannot be freed. | |
144 | |
145 2002-08-30 Francesco Potorti` <pot@gnu.org> | |
146 | |
147 * etags.c (consider_token, C_entries): Switch to C++ parsing when | |
148 auto-detection is enabled and the `::' qualifier is met. | |
149 (consider_token, C_entries): Several bugs corrected that tagged | |
150 some declarations even though --declarations was not used. | |
151 (plainc): New macro. | |
152 (C_entries): Use it. | |
153 (C_entries): Several cosmetic changes. | |
154 (C_entries): Invalidate the token is some cases. | |
155 | |
156 2002-08-29 Francesco Potorti` <pot@gnu.org> | |
157 | |
158 * etags.c (C_entries): Corrected a problem with const C++ funcs. | |
159 (ignoreindent): Renamed from noindentypedefs. | |
160 (cjava, cplpl): They are now macros instead of local vars. | |
161 | |
162 2002-08-28 Francesco Potorti` <pot@gnu.org> | |
163 | |
164 * etags.c (HTML_labels): Tag ID= also. | |
165 | |
166 2002-08-27 Francesco Potorti` <pot@gnu.org> | |
167 | |
168 * etags.c (Ada_funcs): Do not tag "use type Xxxx;". | |
169 | |
170 2002-06-25 Francesco Potorti` <pot@gnu.org> | |
171 | |
172 * etags.c: New language HTML. | |
173 (make_tag): Never generate null length tag names. | |
174 (linebuffer_init): Renamed from initbuffer. All callers changed. | |
175 (pattern): Structure renamed to `regexp', member regex renamed to | |
176 pattern. | |
177 (node_st): Member pat renamed to regex. | |
178 (pattern); New member force_explicit_name, for future use. Now | |
179 always set to true, cannot be reset. | |
180 (add_regex, regex_tag_multiline, readline): Use it. | |
181 (main): Free some global structures. | |
182 | |
183 2002-06-21 Francesco Potorti` <pot@gnu.org> | |
184 | |
185 * etags.c (fdesc): New member `written'. | |
186 (readline, process_file): Initialise it. | |
187 (put_entries): Set it. | |
188 (main): Use it to create entries for files without tags. | |
189 (total_size_of_entries): Do not count invalid tags. | |
190 (etags_strcasecmp): Like BSD's, for compatibility. | |
191 (strcaseeq): Make it into a macro. | |
192 | |
193 2002-06-21 Francesco Potorti` <pot@gnu.org> | |
194 | |
195 * etags.c: (F_getit, Fortran_functions, Ada_getit, Asm_labels) | |
196 (Python_functions, PHP_functions, PHP_functions, PHP_functions) | |
197 (PHP_functions, PHP_functions, Cobol_paragraphs) | |
198 (Makefile_targets, Postscript_functions, Texinfo_nodes) | |
199 (prolog_pr, erlang_func, erlang_attribute) | |
200 (Perl_functions, Perl_functions, Pascal_functions) | |
201 (TeX_commands, get_tag): Use make_tag instead of pfnote. | |
202 (get_tag): Prototype changed, all callers changed. | |
203 | |
204 2002-06-20 Francesco Potorti` <pot@gnu.org> | |
205 | |
206 * etags.c: Use, together with etags.el, an optimised form of tags, | |
207 which are almost always unnamed. etags.el looks for an explicit | |
208 tag name, then for an implicit one. See make_tag for details. | |
209 The change is both forwards and backwards compatible. | |
210 (make_tag): New function (was the disabled function new_pfnote). | |
211 (make_C_tag): Use it. | |
212 | |
213 2002-06-19 Francesco Potorti` <pot@gnu.org> | |
214 | |
215 * etags.c (add_regex): Invalid regexp modifiers are ignored. | |
216 (Makefile_targets): Tag variables unless --no-globals. | |
217 (LOOP_ON_INPUT_LINES): Serious bug corrected. | |
218 | |
219 2002-06-13 Francesco Potorti` <pot@gnu.org> | |
220 | |
221 * etags.c (erlang_atom, erlang_attribute): Bugs corrected. | |
222 (invalidate_nodes): Bug corrected. | |
223 (print_help): Better help for regexps. | |
224 | |
225 2002-06-12 Francesco Potorti` <pot@gnu.org> | |
226 | |
227 * etags.c (arg_type): at_icregexp label removed (obsolete). | |
228 (pattern): New member multi_line for multi-line regexps. | |
229 (filebuf): A global buffer containing the whole file as a string | |
230 for multi-line regexp matching. | |
231 (need_filebuf): Global flag raised if multi-line regexps used. | |
232 (print_help): Document new regexp modifiers, remove references to | |
233 obsolete option --ignore-case-regexp. | |
234 (main): Do not set regexp syntax and translation table here. | |
235 (main): Treat -c option as a backward compatibility hack. | |
236 (main, find_entries): Init and free filebuf. | |
237 (find_entries): Call regex_tag_multiline after the regular parser. | |
238 (scan_separators): Check for untermintaed regexp and return NULL. | |
239 (analyse_regex, add_regex): Remove the ignore_case argument, which | |
240 is now a modifier to the regexp. All callers changed. | |
241 (add_regex): Manage the regexp modifiers. | |
242 (regex_tag_multiline): New function. Reads from filebuf. | |
243 (readline_internal): If necessary, copy the whole file into filebuf. | |
244 (readline): Skip multi-line regexps, leave them to regex_tag_multiline. | |
245 | |
246 2002-06-11 Francesco Potorti` <pot@gnu.org> | |
247 | |
248 * etags.c (add_regex): Better check for null regexps. | |
249 (readline): Check for regex matching null string. | |
250 | |
251 2002-06-07 Francesco Potorti` <pot@gnu.org> | |
252 | |
253 * etags.c (find_entries): Reorganisation. | |
254 | |
255 2002-06-07 Francesco Potorti` <pot@gnu.org> | |
256 | |
257 * etags.c (scan_separators): Support all character escape | |
258 sequences supported by gcc. | |
259 (find_entries): rewind unconditionally. | |
260 (find_entries): Do not call language functions directly, now calls | |
261 itself. | |
262 (find_entries): Do general initialisations here. | |
263 (CNL_SAVE_DEFINEDEF, C_entries, LOOP_ON_INPUT_LINES, F_getit) | |
264 (Ada_getit, Pascal_functions, Pascal_functions) | |
265 (prolog_skip_comment): Do not do them here. | |
266 (readline_internal): Increment lineno here. | |
267 (readline): Conditionally undo readline_internal increment. | |
268 (readline): Do not return a value. | |
269 | |
270 2002-06-06 Francesco Potorti` <pot@gnu.org> | |
271 | |
272 * etags.c (enum arg_type): New label at_stdin. | |
273 (STDIN): New constant. | |
274 (parsing_stdin): New flag. | |
275 (longopts): New option --parse-stdin=NAME. | |
276 (print_help): Document it. | |
277 (main): Handle it. | |
278 (process_file): Split into process_file and process_file_name. | |
279 (process_file_name): New function. | |
280 | |
281 2002-06-06 Francesco Potorti` <pot@gnu.org> | |
282 | |
283 * etags.c (main): Avoid a buffer overrun with sprintf. | |
284 (TEX_cmt): Make it a static char and move it before TeX_commands. | |
285 (TeX_commands): Skip comments. | |
286 (TEX_defenv): Now contains more contructs. | |
287 (TeX_commands): Shorten the tag to the brace after the name. | |
288 (TeX_commands): Allow for names with embedded spaces. | |
289 (TeX_commands): Names now include the initial backslash. | |
290 (TeX_commands): Names do not include numeric args #n. | |
291 (TeX_commands): Correct line char number in tags. | |
292 (TEX_tabent, TEX_token): Deleted. | |
293 (TeX_commands, TEX_decode_env): Streamlined. | |
294 | |
295 2002-05-31 Paul Eggert <eggert@twinsun.com> | |
296 | |
297 * etags.c (main): Use `sort -o TAGFILE TAGFILE' instead of | |
298 `sort TAGFILE -o TAGFILE', as POSIX 1003.1-2001 disallows | |
299 the latter usage. | |
300 | |
301 2002-04-22 Francesco Potorti` <pot@gnu.org> | |
302 | |
303 * etags.c: (last_node): Make it a global variable. | |
304 (process_file): Print the tags from the nodes as soon as | |
305 possible, and delete the nodes. This brings down the memory | |
306 occupancy as etags to almost the same level as when the #line | |
307 directives were not parsed. | |
308 (free_fdesc): New function. | |
309 (find_entries): Use it. | |
310 (invalidate_nodes): In etags mode, do not just mark the nodes as | |
311 invalid, do delete them. | |
312 | |
313 2002-04-16 Francesco Potorti` <pot@gnu.org> | |
314 | |
315 * etags.c (find_entries): Bug fix in list management. | |
316 | |
317 2002-04-15 Francesco Potorti` <pot@gnu.org> | |
318 | |
319 * etags.c (get_language_from_filename): Add one argument. | |
320 (strcaseeq): New function. | |
321 (get_language_from_filename): Use it to do a case insenstitive | |
322 comparison if called with appropriate args. | |
323 (find_entries): Try with case insensitive match. | |
324 (process_file): Bug fixed. | |
325 | |
326 2002-04-13 Francesco Potorti` <pot@gnu.org> | |
327 | |
328 * etags.c (find_entries): Delete tags previously obtained from | |
329 file xxx.c's #line directives when parsing file xxx.y. This is | |
330 generally done for automatically generated files containing | |
331 #line directives. This handles the case when xxx.y is tagged | |
332 before xxx.c, and the entries of xxx.c pointing to xxx.y should | |
333 be discarded. | |
334 (language): Added the metasource member. Initializers changed. | |
335 (invalidate_nodes): New function. | |
336 | |
337 2002-03-21 Francesco Potorti` <pot@gnu.org> | |
338 | |
339 * etags.c (readline): Discard lines after having found a #line | |
340 directive pointing to an already tagged file. This handles the | |
341 case when xxx.y is tagged before xxx.c, and the entries of | |
342 xxx.c pointing to xxx.y should be discarded. | |
343 | |
344 2002-03-15 Francesco Potorti` <pot@gnu.org> | |
345 | |
346 * etags.c (fdesc): New structure for keeping track of input files. | |
347 (fdesc): Remove `file' member (a string) and use instead a pointer | |
348 to a file description structure. | |
349 (curfile, curfiledir, curtagfname, curlang, nocharno, | |
350 forced_lang): Global variables removed in favor of fdhead and | |
351 curfdp, pointers to file description strucures. | |
352 (longopts, main, print_help): Use the CTAGS conditional to include | |
353 or exclude options that work on etags or ctags only. | |
354 (process_file, find_entries, pfnote, add_node, put_entries, | |
355 readline): Use fdhead and curfdp. | |
356 (process_file, find_entries): Do not take an arg string, all | |
357 callers changed. | |
358 | |
359 2002-03-13 Francesco Potorti` <pot@gnu.org> | |
360 | |
361 * etags.c (longopts, print_help, main): Test CTAGS to disallow | |
362 options that are not right for either etags or ctags. | |
363 | |
364 2002-03-12 Francesco Potorti` <pot@gnu.org> | |
365 | |
366 * etags.c (number_len, total_size_of_entries): Define them also | |
367 in CTAGS mode, because gcc does not compile all refs away. | |
368 (Python_functions, PHP_functions): Name tags, for ctags' sake. | |
369 (TeX_commands): Name tags. Correction of old disabled code. | |
370 | |
371 2002-03-06 Francesco Potorti` <pot@gnu.org> | |
372 | |
373 * etags.c (Python_functions): Consider indented "def" and "class". | |
374 | |
375 2002-03-05 Francesco Potorti` <pot@gnu.org> | |
376 | |
377 * etags.c (curfiledir, curtagfname): New global variables. | |
378 (process_file): Initialise them. | |
379 (readline): Canonicalize the name found in #line directive. | |
380 | |
381 2002-03-05 Francesco Potorti` <pot@gnu.org> | |
382 | |
383 * etags.c: Honour #line directives. | |
384 (no_line_directive): New global var; set it for old behaviour. | |
385 (main): Remove some #ifdef in the getopt switch. | |
386 (add_node, put_entries): Code added to merge different chunks of | |
387 nodes referring to the same file. Currently the tags are just | |
388 appended, without any check for duplicates. | |
389 (Perl_functions): Do not special case ctags. | |
390 (readline): Identify #line directives and do the right thing. | |
391 (nocharno, invalidcharno): New global vars. | |
392 (process_file): Reset nocharno. | |
393 (readline): Set nocharno. | |
394 (pfnote): Read nocharno and maybe put invalidcharno in node. | |
395 (total_size_of_entries, put_entries): Use invalidcharno. | |
396 | |
397 2002-03-04 Francesco Potorti` <pot@gnu.org> | |
398 | |
399 * etags.c: Keep the whole tag table in memory, even in etags mode. | |
400 (main): Call put_entries here even in CTAGS mode. | |
401 (main, process_file): Check the return values of fclose and pclose. | |
402 (process_file): Do not call put_entries after parsing each file. | |
403 (process_file): Canonicalise file names even for ctags. | |
404 (process_file): Set curfile here... | |
405 (find_entries): ... not here any more. | |
406 (add_node): In etags mode, build a linked list of entries (on | |
407 right pointer) for each file, and link the first entry of each | |
408 file on left nodes. | |
409 (put_entries): Print here the name of the file. | |
410 (put_entries): Print the entries starting from the first file. | |
411 (number_len, total_size_of_entries): Define these only iin etags | |
412 mode, make the second work only on the right nodes. | |
413 | |
414 2002-01-03 Francesco Potorti` <pot@gnu.org> | |
415 | |
416 * etags.c: Make all global variables static. | |
417 | |
418 2001-12-21 Francesco Potorti` <pot@gnu.org> | |
419 | |
420 * etags.c (Perl_functions): Tag packages and use them in sub tags. | |
421 (get_tag): Return a pointer to the tag that is found. | |
422 | |
423 2001-12-21 Francesco Potorti` <pot@gnu.org> | |
424 | |
425 * etags.c (LOOKING_AT): Use !intoken instead of iswhite. | |
426 (F_takeprec): Renamed from takeprec. All callers changed. | |
427 (F_getit): Renamed from getit. All callers changed. | |
428 (nocase_tail): Renamed from tail. All callers changed. | |
429 (Ada_getit): Renamed from adagetit. All callers changed. | |
430 (L_getit): Simplified by using get_tag. | |
431 (Perl_functions, Postscript_functions, erlang_attribute): Use the | |
432 modified LOOKING_AT. | |
433 (notinname): Removed '[' and added ')' to the recognised chars. | |
434 (LOOKING_AT, get_tag, PHP_functions): Use notinname. | |
435 (Ada_getit, Ada_funcs, Python_functions, Scheme_functions): | |
436 Clarified, using strneq or notinname. | |
437 (L_isdef, L_isquote): Removed. | |
438 (Lisp_functions, L_getit): Clarified. | |
439 | |
440 2001-12-17 Francesco Potorti` <pot@gnu.org> | |
441 | |
442 * etags.c: [P_]: Renamed to __P for consistency with config.h. | |
443 [HAVE_CONFIG_H]: Let config.h deal with __P. | |
444 [__STDC__] [!HAVE_CONFIG_H]: Define PTR as in config.h. | |
445 [!__STDC__] [!HAVE_CONFIG_H]: Do not undefine static, because | |
446 gperf code needs it. | |
447 [HAVE_CONFIG_H] [!PTR]: Define PTR (for use with Xemacs). | |
448 [HAVE_CONFIG_H] [!__P]: Define __P (for use with Xemacs). | |
449 (xmalloc, xrealloc): Use PTR instead of long *. | |
450 (bool): Make it a define, not a typedef, for C++ compilers. | |
451 (pattern): Members renamed to avoid name clash in some C++ compilers. | |
452 (get_language_from_langname): Use const argument. | |
453 | |
454 2001-12-12 Francesco Potorti` <pot@gnu.org> | |
455 | |
456 * etags.c (PHP_functions): New function by Diez B. Roggisch, | |
457 heavily adapted by me, for parsing PHP. | |
458 (LOOKING_AT): New macro. | |
459 (Perl_functions, Python_functions, PHP_functions) | |
460 (Scheme_functions, Texinfo_nodes): Use it. | |
461 (Perl_functions): Use strneq. | |
462 (prolog_pred): Renamed to prolog_pr. | |
463 (prolog_pr): Recognise Prolog rules (thanks to Geert Kloosterman) | |
464 in addition to predicates. | |
465 [ETAGS_REGEXPS] [!HAVE_CONFIG_H] [__CYGWIN__]: Prevent | |
466 unmodified compile, as Cygwin's regex.h is incompatible with us | |
467 (thanks to Markus Hoenicka). | |
468 [!HAVE_CONFIG_H] [!__STDC__]: #define const as the empty string. | |
469 | |
470 2001-05-11 Francesco Potorti` <pot@gnu.org> | |
471 | |
472 * etags.c (add_regex): Reset the whole newly allocated pattern | |
473 buffer instead of the individual members. It's safer and works | |
474 with Xemacs. | |
475 | |
476 2001-02-23 Francesco Potorti` <pot@gnu.org> | |
477 | |
478 * etags.c (enum sym_type): New label st_C_template. | |
479 (gperf input): Use it for switching to C++ from C. | |
480 (consider_token): Do it. | |
481 | |
482 2001-02-16 Francesco Potorti` <pot@gnu.org> | |
483 | |
484 * etags.c (C_entries): Initialise typdefcblev to quiet compilers. | |
485 | |
486 2001-02-06 Francesco Potorti` <pot@gnu.org> | |
487 | |
488 * etags.c [!HAVE_CONFIG_H] [!__STDC__]: #define static as nothing. | |
489 | |
490 2001-01-31 Francesco Potorti` <pot@gnu.org> | |
491 | |
492 * etags.c: [NDEBUG] #undef assert and #define it as ((void)0), for | |
493 the sake of some buggy assert.h (e.g. in MinGW and sunos4 pcc). | |
494 (C_entries): Tag token renamed to still_in_token because sunos4 | |
495 pcc wants to expand it as the token() macro even though it has no | |
496 arguments. | |
497 | |
498 2001-01-30 Francesco Potorti` <pot@gnu.org> | |
499 | |
500 * etags.c: [WIN32-NATIVE]: #undef MSDOS, #undef WINDOWSNT and | |
501 #define it for the sake of Xemacs. | |
502 [WINDOWSNT]: #undef HAVE_NTGUI even if built without | |
503 HAVE_CONFIG_H. This change only affects a standalone etags. | |
504 [WINDOWSNT]: #undef DOS_NT and #define it even if built with | |
505 HAVE_CONFIG_H. This change does nothing in Emacs, as DOS_NT is | |
506 always defined when HAVE_CONFIG_H and WINDOWS are both defined. | |
507 [!HAVE_UNISTD_H]: use defined(WINDOWSNT) instead of the bare | |
508 WINDOWSNT, as this is the correct way to use it. | |
509 | |
510 2001-01-28 Francesco Potorti` <pot@gnu.org> | |
511 | |
512 * etags.c: Be capable to parse nested struct-like structures. | |
513 (structdef, structtag): Struct state machine revisited. | |
514 (struct tok): Revisited. | |
515 (cstack, nestlev, instruct): New struct and macros. | |
516 (pushclass_above, popclass_above, write_classname): New functions | |
517 for dealing with nested class names, inspired by Mykola Dzyuba. | |
518 (consider_token, make_C_tag, C_entries): Many changes for dealing | |
519 with arbitrarily nested structures. | |
520 (etags_getcwd): #if MSDOS, not #ifdef MSDOS! | |
521 (C_entries): Consider templates in C++. | |
522 (sym_type): New constant st_C_class for detecting "class" also in | |
523 C mode. | |
524 (C_AUTO): New macro for automatic detection of C++. | |
525 (consider_token): Automatic set C++ mode. | |
526 (C_entries): New security check for yacc. | |
527 (print_language_names, print_help): Mention the autodetect | |
528 feature, do not show help for the -C option, now mostly useless. | |
529 (C_entries): Tag C++ forward declarations if --declarations. | |
530 (C_entries): Don't be fooled by things like XDEFUN. | |
531 (consider_token): Discard asm pseudo function. | |
532 | |
533 2001-01-25 Francesco Potorti` <pot@potorti.it> | |
534 | |
535 * etags.c (struct tok): Renamed from struct token. | |
536 (token): Renamed from tok. | |
537 (structtype): Make it a local variable. | |
538 [DEBUG]: Use assert. | |
539 (xrnew): Change the synopsis. | |
540 (typedefs_or_cplusplus): Renamed from typedefs_and_cplusplus. | |
541 (grow_linebuffer): Don't call xrnew when not needed. | |
542 (token): buffer renamed to line. | |
543 (C_entries): Three calls to inibuffer moved here from main. | |
544 (C_entries): Removed all references to var methodlen, delete it. | |
545 (linebuffer_setlen): Was grow_buffer, now also sets len. | |
546 (consider_token, C_entries, Pascal_functions): Use it. | |
547 (C_entries): Preventing problems relative to extern "C". | |
548 (C_entries): Can tag more than one variable or func separated by | |
549 comma when --declarations is used. | |
550 (C_entries): More accurate tagging of members and declarations. | |
551 (yacc_rules): Was global, made local to C_entries. | |
552 (next_token_is_func): Removed. | |
553 (fvdef): New constants fdefunkey, fdefunname. | |
554 (consider_token, C_entries): Use them. | |
555 (C_entries): Build proper lisp names for Emacs DEFUNs. | |
556 | |
557 2001-01-15 Francesco Potorti` <pot@pot.cnuce.cnr.it> | |
558 | |
559 * etags.c (print_language_names): Print filenames in addition to | |
560 suffixes. | |
561 | |
562 2001-01-12 Francesco Potorti` <pot@gnu.org> | |
563 | |
564 * etags.c (get_language_from_langname): Renamed from | |
565 get_language_from_name. | |
566 (get_language_from_filename): Renamed from | |
567 get_language_from_suffix. Now first looks for the complete file | |
568 name. | |
569 (language): New member char **filenames. | |
570 (Makefile_filenames): List of possible filenames for makefiles. | |
571 (lang_names): Added a NULL member for every entry, added an entry | |
572 for makefiles. | |
573 (Makefile_targets): New function, inspired by Assar Westerlund | |
574 <assar@sics.se>. | |
575 | |
576 2000-11-07 Francesco Potortì <pot@pot.cnuce.cnr.it> | |
577 | |
578 * etags.c (Texinfo_nodes): Renamed from Texinfo_fuctions and made | |
579 it conformant to the style of the rest of the code. | |
580 | |
581 2000-02-10 Francesco Potorti` <pot@gnu.org> | |
582 | |
583 * etags.c (iswhite): Redefined not to consider '\0' as white | |
584 space, and use it throughout in place of isspace, thus preventing a | |
585 potential signed char to int conversion problem. | |
586 (MSDOS): #undefine befere redefining | |
587 | |
588 2000-02-04 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
589 | |
590 * etags.c (many functions): Add prototypes. | |
591 | |
592 2000-01-31 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
593 | |
594 * etags.c [MSDOS]: Set MSDOS to 1 if #defined, 0 otherwise. | |
595 (get_compressor_from_suffix, process_file): Use MSDOS in if clause. | |
596 (etags_strchr, etags_strrchr): Use const char * and int as arguments. | |
597 (getenv, getcwd): Only declare them if necessary. | |
598 (EMACS_NAME): New constant macro. | |
599 (print_version): Use it. | |
600 (P_) [__STDC__]: Macro for defining function prototypes. | |
601 | |
602 2000-01-18 Fabrice Popineau <Fabrice.Popineau@supelec.fr> | |
603 | |
604 * etags.c [WINDOWSNT]: #include <direct.h> | |
605 | |
606 2000-01-18 Martin Buchholz <martin@xemacs.org> | |
607 | |
608 * etags.c (all functions): Made them static. | |
609 (all functions): Write prototypes. | |
610 | |
611 1999-11-19 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
612 | |
613 * etags.c (_GNU_SOURCE): Define only if undefined. | |
614 (get_scheme): Declaration deleted. | |
615 (main): error was called with an integer as second arg, instead of | |
616 a char pointer. | |
617 (canonicalize_filename): Bug removed. | |
618 | |
619 1999-11-18 Dave Love <d.love@dl.ac.uk> | |
620 | |
621 * etags.c (C_entries): Rename label `intoken', avoiding K&R | |
622 lossage from name clash with macro. | |
623 | |
624 1999-09-14 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
625 | |
626 * etags.c: Add suffix psw for PSWrap. | |
627 (L_getit): Generalize a "cp!=' '" into "!isspace(*cp)". | |
628 (Postscript_functions): Add code for PSWrap. | |
629 (Scheme_functions): Use local pointer and new get_tag function. | |
630 (get_tag): New name for old get_scheme. | |
631 (process_file): Do not free NULL when file does not exist. | |
632 (typdef): ttypedefseen renamed to tkeyseen, new label ttypeseen. | |
633 (C_entries): Modifications that make --members tag even inside | |
634 typedefs and C nested structs (one level only). | |
635 (consider_token): Corrected a bug which prevented tagging of enum | |
636 constants. | |
637 (C_stab_entry): Added if, for, while, switch, return as | |
638 st_C_ignore. This makes it simpler to work when cblev!=0. | |
639 | |
640 1999-04-21 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
641 | |
642 * etags.c (C_entries): tag member function declarations when | |
643 --declarations is used. | |
644 | |
645 1999-04-20 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
646 | |
647 * etags.c (C_entries, consider_token): C++ `operator' now is | |
648 tagged in most cases. | |
649 As before, :: is not recognised if surrounded by spaces. | |
650 | |
651 1999-01-14 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
652 | |
653 * etags.c (relative_filename): Account for DOS file names such | |
654 that is impossible to make one relative to another. | |
655 | |
656 1998-10-09 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
657 | |
658 * etags.c (sym_type): New st_C_extern tag. | |
659 (gperf input): Use it for spotting external declarations. | |
660 (print_help): Document the new behaviour of --declarations. | |
661 (fvextern): New global variable. | |
662 (consider_token, C_entries): Use it. | |
663 | |
664 1998-06-19 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
665 | |
666 * etags.c (HAVE_GETCWD) [WINDOWSNT]: Define if undefined. | |
667 (etags_getcwd): Remove test for WINDOWSNT. | |
668 | |
669 1998-06-16 Eli Zaretskii <eliz@is.elta.co.il> | |
670 | |
671 * etags.c (process_file) [MSDOS]: If foo.c.gz is not found, try | |
672 foo.cgz, foo.cz, etc. | |
673 | |
674 1998-06-15 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
675 | |
676 * etags.c (declarations): New global switch. | |
677 (longopts): Describe it. | |
678 (print_help): Document it. | |
679 (C_entries): Use it. | |
680 (process_file): Don't process a file twice. | |
681 | |
682 1998-06-02 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
683 | |
684 * etags.c (Fortran_functions): No tags for "procedure". | |
685 | |
686 1998-05-29 Eli Zaretskii <eliz@is.elta.co.il> | |
687 | |
688 * etags.c (get_compressor_from_suffix): Second argument EXTPTR, if | |
689 non-zero, returns a pointer to where the extension begins; callers | |
690 changed. | |
691 [MSDOS]: Support DOS file names by handling e.g. foo.cgz as if it | |
692 were foo.c.gz. | |
693 | |
694 1998-05-18 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
695 | |
696 * etags.c (sym_type, C_stab_entry): New constant st_C_operator. | |
697 (fvdev): New constant foperator. | |
698 (consider_token): Use it to get "operator" in C++. | |
699 (C_entries): Extend length of operator@ function name. | |
700 (C_entries): Use foperator when necessary. | |
701 | |
702 1998-05-13 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
703 | |
704 * etags.c (main) [!ETAGS_REGEXPS]: Do not call free_patterns. | |
705 | |
706 1998-05-12 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
707 | |
708 * etags.c (compressor): New struct for compressed files. | |
709 (get_compressor_from_suffix): New function. | |
710 (get_language_from_suffix): Use it. Also, semantics changed. | |
711 (process_file): Consider compressed files, close file. | |
712 (find_entries): Use different call arg for get_language_from_suffix, | |
713 don't close file. | |
714 | |
715 1998-05-11 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
716 | |
717 * etags.c (main): Call free_tree. | |
718 (find_entries): Do not free curfile. | |
719 (pfnote): Cosmetic change: NULL and '\0' where appropriate. | |
720 (prolog_pred, erlang_func, substitute): Cast strlen to int when | |
721 comparing. | |
722 (canonicalize_filename): Shut up compiler warning. | |
723 (Perl_functions): Make tag significant. | |
724 | |
725 1997-11-27 Dave Love <d.love@dl.ac.uk> | |
726 | |
727 * etags.c (longopts, optstring): New option --ignore-case-regex (-c). | |
728 (argument_type): New member at_icregexp. | |
729 (lc_trans): New global. | |
730 (main): Fill lc_trans. Process -c args. | |
731 (add_regex): New arg determining whether to use translation table. | |
732 (analyse_regex): New arg. Use it for add_regex. | |
733 | |
734 1997-09-30 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
735 | |
736 * etags.c (init): Cosmetic change: NULL --> '\0'. | |
737 (erlang_attribute): Bug corrected (uninitialized variable). | |
738 (filename_is_absolute): New function replaces absolutefn macro and | |
739 corrects a bug. All callers changed. | |
740 (canonicalize_filename): New function. | |
741 (process_file, etags_getcwd, absolute_dirname): Use it. | |
742 (relative_filename, absolute_filename): Removed var shadowing. | |
743 (C_entries, Pascal_functions): Add fake initializations to keep | |
744 compilers quiet. | |
745 (TeX_functions, Prolog_functions, Erlang_functions): Cleanup. | |
746 | |
747 1997-09-20 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
748 | |
749 * etags.c (xrnew): New macro. All callers of xrealloc changed. | |
750 (language): New typedef (was struct lang_entry). | |
751 (curlang): New global variable. | |
752 (node): typedef renamed from NODE. | |
753 (linebuffer): New typedef (was struct linebuffer). | |
754 (pattern): New typedef (was struct pattern). Some members added. | |
755 Now used as element of a linked list. | |
756 (patterns, num_patterns): Global variables deleted. | |
757 (p_head): New global variable. | |
758 (forced_lang): New global variable (replaces lang_func). | |
759 (get_language_from_name, get_language_from_interpreter, | |
760 get_language_from_suffix): Semantics changed. All callers changed. | |
761 (last_node): New global variable. | |
762 (free_tree, add_node, put_entries, total_size_of_entries): Change | |
763 name of local vars to avoid clashes with typedef node. | |
764 (number_len): Rewritten for elegance. | |
765 (token): New typedef replaces TOKEN. | |
766 (analyse_regex, add_regex): Rewritten for new functionality. | |
767 (free_patterns): New function called from main and add_regex. | |
768 (initbuffer, readline_internal, readline, grow_linebuffer): | |
769 Change name of local vars to avoid clashes with typedef | |
770 linebuffer. | |
771 (readline): Rewritten for new functionality. | |
772 | |
773 1997-09-04 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
774 | |
775 * etags.c: (Scheme_suffixes): New suffix ".ss". | |
776 (print_help): --globals is now used for more than C-type languages. | |
777 (Perl_functions): Tag global variables ("my" and "local"). | |
778 | |
779 1997-08-22 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
780 | |
781 * etags.c (print_help): Some messages clarified. | |
782 (LOOP_ON_INPUT_LINES): New macro. | |
783 (just_read_file, Fortran_functions, Asm_labels, Perl_functions, | |
784 Python_functions, Cobol_paragraphs, Pascal_functions, | |
785 Lisp_functions, Postscript_functions, Scheme_functions, | |
786 TeX_functions, Prolog_functions, Erlang_functions): Use it. | |
787 (Cobol_paragraphs, Postscript_functions, TeX_functions, | |
788 Prolog_functions, Erlang_functions): Use a local variable instead | |
789 of the global variable dbp. | |
790 (Pascal_functions, L_isquote, Scheme_functions): Use GNU coding | |
791 standard indentation. | |
792 | |
793 1997-08-21 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
794 | |
795 * etags.c (Python_suffixes, lang_names, Python_functions): Python | |
796 support. | |
797 (skip_spaces, skip_non_spaces): Utility functions. | |
798 (find_entries, takeprec, getit, Fortran_functions, Perl_functions, | |
799 Python_functions, L_getit, Lisp_functions, Scheme_functions, | |
800 prolog_pred, erlanf_func, erlang_attribute): Use them. | |
801 (eat_white): Deleted. | |
802 | |
803 1997-08-20 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
804 | |
805 * etags.c (CHAR, init): Keep into account non US-ASCII | |
806 characters and compilers with default signed chars. | |
807 (L_getit): Tag "(defstruct (foo", "(defun (operator" and similar | |
808 constructs. | |
809 | |
810 1997-07-04 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
811 | |
812 * (C_stab_entry): "interface" in Java behaves like "class". | |
813 | |
814 1997-06-23 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
815 | |
816 * etags.c: (HAVE_NTGUI) [WINDOWSNT]: #undef if HAVE_CONFIG_H. | |
817 (main): Put interval syntax here. | |
818 (add_regex): And remove it from here. | |
819 | |
820 1997-06-17 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
821 | |
822 * etags.c (suggest_asking_for_help): Provide a | |
823 meaningful help message with and without LONG_OPTIONS. | |
824 | |
825 1997-06-09 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
826 | |
827 * etags.c: <io.h> [MSDOS]: Include it, don't include string.h. | |
828 <stdlib.h, string.h>: Don't test MSDOS when including them. | |
829 (white, nonam, endtk): Like elsewhere, use \r instead of \013. | |
830 (put_entries): Correctly use %ld instead of %d in printf. | |
831 | |
832 1997-06-04 Francesco Potorti` <F.Potorti@cnuce.cnr.it> | |
833 | |
834 * etags.c: <unistd.h> [HAVE_UNISTD_H]: Include conditionally, else | |
835 declare getcwd if HAVE_GETCWD. | |
836 (consider_token): Dead break instruction removed. |