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