Remove non-free old and crusty clearcase pkg
[packages] / xemacs-packages / semantic / ChangeLog.upstream
1 2007-06-06  Eric M. Ludlam  <zappo@gnu.org>
2
3         * semantic-decorate.el (semantic-momentary-highlight-pulse-flag):
4         Wrap logic on condition-case.
5
6         * wisent/Makefile (VERSION): Regress to 2.0 prerelease 4
7
8         * tests/testsubclass.hh (deer::alces):
9         Updated for testsubclass.cpp changes.
10
11         * tests/testsubclass.cpp (animal::moose::doNothing):
12         Add some completable code.
13         (deer::alces::doLatinStuff): Add args and such.
14         (deer::alces::createMoose): New test fcn for completion engine.
15
16         * tests/Makefile, doc/Makefile (VERSION): Regress to 2.0 prerelease 4
17
18         * doc/lang-support-guide.texi (Tag Structure):
19         Add description of ATTRIBUTES.  Fix names property
20         accessor functions.
21
22         * bovine/Makefile (VERSION): Regress to 2.0 prerelease 4
23
24         * semantic-sort.el (semantic-tag-external-member-parent-default):
25         Remove iff
26
27         * semantic-lex-spp.el: Add ToDo item.
28
29         * semantic.el (semantic-version): Regress to 2.0 pre 4.
30         (Commentary): Update doc.
31
32         * Project.ede ("semantic"): Regress version to prerelease 4.
33
34         * Makefile (VERSION): Regress to 2.0 prerelease 4
35
36 2007-06-05  Eric M. Ludlam  <zappo@gnu.org>
37
38         * semantic-complete.el (semantic-complete-inline-exit):
39         Restore original window configuration
40         (semantic-complete-inline-tag-engine): Store window configuration
41         (semantic-complete-inline-analyzer-displayor-class): New option.
42         (semantic-complete-inline-analyzer): Create a display based on the above.
43
44 2007-06-04  Eric M. Ludlam  <zappo@gnu.org>
45
46         * semanticdb-find.el (semanticdb-find-default-throttle): Add 'unloaded.
47
48 2007-05-31  Eric M. Ludlam  <zappo@gnu.org>
49
50         * doc/installation.texi (Canned Configuration):
51         Update code-helpers w/ MRU bookmarks
52
53         * doc/minor-modes.texi (Code Helpers): Addd below
54         (MRU Bookmarks Mode): New node on new minor-mode.
55
56         * semantic-load.el (semantic-load-enable-code-helpers):
57         Add semantic-mru-bookmark-mode.
58
59         * semanticdb-ebrowse.el (semanticdb-ebrowse-get-ebrowse-structure):
60         Update doc
61         (semanticdb-project-database-ebrowse::semanticdb-create-database): Add c-mode
62         (semanticdb-ebrowse-dump): Use adebug.
63
64         * Makefile (tools_LISP): Add semantic-mru-bookmark.el
65
66         * Project.ede ("semantic"): Add semantic-mru-bookmark.el
67
68         * semantic-mru-bookmark.el (semantic-mru-bookmark-mode): Update doc.
69
70         * semantic-decorate.el (semantic-momentary-highlight-pulse-flag):
71         New option.
72         (semantic-momentary-highlight-one-tag-line)
73         (semantic-momentary-highlight-tag): Only pulse based on option.
74
75 2007-05-22  Eric M. Ludlam  <zappo@gnu.org>
76
77         * tests/testspp.c: Added sections for:
78         #if defined
79         #elif
80         #else
81         for macro parsing testing.
82
83         * bovine/c.by (DEFINE, UNDEFINE): Removed.
84         (define): Fix default value to correct token.
85
86         * bovine/semantic-c.el (semantic-c-end-of-macro): Moved.
87         (semantic-lex-cpp-define): Move end point to the end of the macro.
88         (semantic-c-skip-conditional-section): New function
89         (semantic-lex-c-if): Skip only subsets of a #if section.
90         Add warnings when we skip.
91         (semantic-lex-c-macrobits): Remove if handling.
92         (semantic-lex-c-macro-else): New lexer.
93         (semantic-c-lexer): Add semantic-lex-c-macro-else.
94
95         * semantic-lex-spp.el (define-lex-spp-macro-declaration-analyzer):
96         Support shifting lex-end-point.
97         (edebug-setup-hook): Add edebug knowledge about these new macros.
98
99         * semantic.el (semantic-clear-toplevel-cache): Clear parser warnings
100         (semantic-fetch-tags): Keep parser warnings during full parse.
101         (semantic-parser-warnings): New local variable
102         (semantic-clear-parser-warnings, semantic-push-parser-warning)
103         New functions
104         (semantic-dump-parser-warnings): New Command
105
106 2007-05-21  Eric M. Ludlam  <zappo@gnu.org>
107
108         * bovine/semantic-c.el (semantic-c-add-preprocessor-symbol):
109         Allow resetting of values in the
110         C list.
111
112         * semantic-lex-spp.el (semantic-lex-spp-symbol-set):
113         Treat value of "" as nil.
114         (semantic-lex-make-spp-table): Pass value directly to new symbol.
115
116         * bovine/c.by (__ATTRIBUTE__): New symbol
117         (opt-attribute): Optional gcc attribute thingy.
118         (type,fun-or-proto-end): Use opt-attribute
119
120 2007-05-20  Eric M. Ludlam  <zappo@gnu.org>
121
122         * semantic-texi.el (document):
123         Stop requiring this.  Causes fail in Makefile build.
124
125         * semantic-fw.el (semantic-subst-char-in-string): Remove sample impl.
126         Moved to cedet-compat.
127
128         * semanticdb-file.el (cedet-files): New requirement.
129         (semanticdb-dir-sep-char): Moved to here.
130         Marked for later deletion.
131         (semanticdb-fix-pathname): Moved to here.
132         Replaced body w/ `file-name-as-directory'.
133         Marked for later deletion.
134         (semanticdb-project-database-file::semanticdb-file-name-directory):
135         Replace inner path conversion to a call to `semanticdb-file-name-directory'.
136
137         * semanticdb.el (semanticdb-dir-sep-char, semanticdb-fix-pathname):
138         Moved.
139
140 2007-05-19  Eric M. Ludlam  <zappo@gnu.org>
141
142         * semantic-decorate.el:
143         (semantic-tag-highlight-start-face, semantic-tag-highlight-face):
144         New faces.
145         (semantic-decorate-int-to-hex, semantic-color-values-to-hex):
146         New fcns copied from Drew Adams.
147         (semantic-pulse-iterations): New configurable variable.
148         (semantic-lighten-highlight, semantic-highlight-reset-face):
149         (semantic-decorate-pulse, semantic-decorate-test-pulse):
150         New core color pulsing functions
151         (semantic-highlight-tag): Change default face
152          to 'semantic-tag-highlight-face.
153         (semantic-momentary-highlight-one-tag-line)
154         (semantic-momentary-highlight-tag): Use tag pulsing if no face is provided.
155
156         * doc/installation.texi (Installation):
157         New name.  Many new sections w/ basic configuration advice.
158
159         * doc/user-guide.texi (Semanticdb Search Configuration):
160         Add ref to ebrowse.
161         (Search Throttle): Add example.
162
163         * doc/semantic.texi (top): Copyright
164         (Installation/Basic Configuration): New name.
165
166         * semantic-adebug.el:
167         (semantic-adebug-insert-property-list, semantic-adebug-insert-stuff-list):
168         Add autoload cookie.
169
170 2007-05-17  Eric M. Ludlam  <zappo@gnu.org>
171
172         * semantic-analyze.el (semantic-analyze-select-best-tag):
173         Prefer tags w/ type info.
174
175         * bovine/semantic-c.el (semantic-lex-c-if):
176         Support #if defined() type syntax.
177
178         * tests/testspp.c:
179         Add #if defined() and #if !defined() macros for testing SPP.
180
181         * semantic-tag.el (semantic-tag-with-position-p):
182         If it has an overlay, it must be live.
183
184         * bovine/semantic-c.el (semantic-c-add-preprocessor-symbol):
185         New command.
186
187         * semantic-tag-file.el (semantic-dependency-tag-file):
188         Add todo comment.
189
190         * semantic-load.el (semantic-load-enable-minimum-features): doc fix.
191
192         * semantic-dep.el:
193         (semantic-add-system-include, semantic-remove-system-include):
194         Force passed in dirs to be directory names.
195         (semantic-reset-system-include): New command
196
197         * semanticdb-find.el (semanticdb-find-load-unloaded-default):
198         Fix varname typo!
199         (semanticdb-find-test-translate-path,semanticdb-brute-deep-find-tags-for-completion):
200         Add autoload cookies.
201
202         * semanticdb-file.el:
203         (semanticdb-project-database-file::semanticdb-save-db):
204         Make robust to various types of errors that may occur.
205
206         * semanticdb.el (semanticdb-dump-all-table-summary):
207         Convert to use adebug.
208
209         * semanticdb-ebrowse.el (semanticdb-ebrowse-C-file-p):
210         make robust to itty-bitty files
211         (semanticdb-create-ebrowse-database): Force / to tail of dir names.
212         (semanticdb-ebrowse-get-ebrowse-structure): Turn off undo.
213
214 2007-05-16  Eric M. Ludlam  <zappo@gnu.org>
215
216         * doc/user-guide.texi:
217         Add new section about configuring semanticdb search routines.
218
219 2007-05-10  Eric M. Ludlam  <zappo@gnu.org>
220
221         * semantic-mru-bookmark.el (semantic-mrub-completing-read):
222         Fix case of only one entry in ring.
223         (set-mark-command): Advise better function.
224
225         * semantic-mru-bookmark.el: New bookmark/mru tag mode.
226
227         * semantic-tag.el (semantic-tag-copy): Enhance doc string.
228
229         * semantic-adebug.el (semantic-adebug-insert-tag-parts):
230         Make tag start/end display more robust.
231         (semantic-adebug-insert-ring-contents)
232         (semantic-adebug-insert-ring-items-from-point)
233         (semantic-adebug-insert-ring-button): New ring debug support.
234         (semantic-adebug-insert-thing): Add rings.
235         (semantic-adebug-analyze): Fix buffer name.
236         (semantic-adebug-edebug-expr): New command to be bound into EDEBUG support.
237
238         * semantic-adebug-eieio.el (semantic-adebug-insert-object-fields):
239         Add autoload cookie.
240
241 2007-05-01  Eric M. Ludlam  <zappo@gnu.org>
242
243         * semantic-complete.el (semantic-complete-do-completion):
244         Support 'displayend option.
245         Use exactmatch completion list if we have it, otherwise the full list.
246         If displayend, then always use the fulll list.
247         (semantic-complete-next-action): Allow displayor and collector to both
248         have a say.
249         (semantic-collector-abstract::semantic-collector-next-action):
250         When the exact-match list is 1 long, but there are lots of regular
251         completions, then don't say done on second matching keystroke.
252         (semantic-displayor-focus-abstract::semantic-displayor-next-action):
253         When the focus cycles, return 'displayend.
254
255 2007-04-15  Eric M. Ludlam  <zappo@gnu.org>
256
257         * doc/tags.texi (Tag Hooks): Added unlink-copy-hook.
258         (Creating Tags): Updated semantic-tag-copy w/ unlink-copy-hook.
259
260         * semantic-decorate.el (semantic-tag-create-secondary-overlay):
261         Add an unlink-copy-hook.
262         (semantic--tag-unlink-copy-secondary-overlays): New function
263         (semantic--tag-unlink-secondary-overlays): Remove unlink-copy-hook.
264
265         * semantic-tag.el (semantic-tag-copy):
266         Run unlink-copy-hook on the copied tag.
267         Added comments a bout trying to do special copy things to the tag members.
268
269 2007-04-03  Eric M. Ludlam  <zappo@gnu.org>
270
271         * semantic-tag-file.el (semantic-dependency-tag-file):
272         Save point location when calculating a
273         filename for a given include tag.
274
275 2007-03-26  Eric M. Ludlam  <zappo@gnu.org>
276
277         * semanticdb-find.el (semantic-adebug): Remove requirement.
278
279         * semantic-adebug.el (semantic-adebug-new-buffer): autoload cookie.
280
281 2007-03-25  Eric M. Ludlam  <zappo@gnu.org>
282
283         * semanticdb-find.el (require): Add semantic-adebug during compile
284         (semanticdb-find-table-for-include-default): Take out special stuff
285         for omniscient databases.  Simplify case where we know where the file is.
286         (semanticdb-find-test-translate-path): Convert to use adebug.
287
288         * semanticdb-find.el:
289         (semanticdb-strip-find-results, semanticdb-find-results-p)
290         (semanticdb-find-result-with-nil-p)
291         (semanticdb-find-reslut-nth, semanticdb-find-result-nth-in-buffer):
292         Add autoload cookie.
293
294 2007-03-23  Eric M. Ludlam  <zappo@gnu.org>
295
296         * semanticdb-find.el (semanticdb-find-throttle-custom-list):
297         Add autoload cookie.
298         (semanticdb-find-result-prin1-to-string): Fix doc.
299
300 2007-03-19  Eric M. Ludlam  <zappo@gnu.org>
301
302         * doc/user-guide.texi (Analyzer): Update various command strings.
303         (Smart Idle Completion): new section
304
305         * semanticdb.el: Add comment.
306
307         * semanticdb-ebrowse.el (semanticdb-project-database-ebrowse):
308         Doc update.
309
310         * semantic-adebug.el (semantic-adebug-bovinate): Doc updates.
311
312         * doc/app-dev-guide.texi: (top)
313         (Tag Sorting)
314         (Tag Completion Convenience Functions)
315         (Custom Tag Completion Functions)
316         (Tag Collectors)
317         (Tag Displayors)
318         (Old Tag Completion)
319         (Override Methods)
320         (Format Tag)
321         (Tag Members)
322         (Tag Details)
323         (Parser Hooks)
324         (Semanticdb in Programs)
325         (DB Results)
326         (DB Basic Name Search)
327         (DB Basic Brute Search)
328         (DB Advanced Search)
329         (DB Generic Brute Search)
330         (System Databases)
331         (Blocks)
332         (Local Variables)
333         (Derived Context)
334         (Context Analysis)
335         (Analysis Overview): Update @defun's from source.
336         (App Debugger): New Section
337
338         * semantic-complete.el: (semantic-collector-abstract)
339         (semantic-collector-buffer-abstract)
340         (semantic-collector-buffer-deep)
341         (semantic-collector-project-abstract)
342         (semantic-displayor-abstract)
343         (semantic-displayor-traditional)
344         (semantic-displayor-traditional-with-focus-highlight)
345         (semantic-complete-read-tag-analyzer)
346         (semantic-complete-inline-analyzer): Doc Enhancements.
347
348 2007-03-18  Eric M. Ludlam  <zappo@gnu.org>
349
350         * wisent/Makefile (LOADPATH): Strip out duplicates
351         (wy_SEMANTIC_GRAMMER_EL, dist): Spelling fix
352
353         * bovine/Makefile (LOADPATH): Remove duplicates
354         (by_SEMANTIC_GRAMMAR_EL,dist): Spelling fix.
355
356         * semantic-ede-grammar.el:
357         (semantic-ede-proj-target-grammar::ede-proj-makefile-insert-variables):
358         Use `ede-proj-makefile-insert-loadpath-items'.
359
360         * Makefile (LOADPATH): Remove duplicates
361
362         * Makefile (metagrammar_SEMANTIC_GRAMMAR_EL, dist): Spelling fix.
363         (tools_LISP): Add adebug files.
364
365         * Project.ede ("tools"): Add adebug files.
366
367         * semantic-analyze.el (semantic-analyze-possible-completions-default):
368         :operator-flag.
369
370         * bovine/semantic-c.el (semantic-c-reconstitute-token):
371         Add an operator-flag
372
373         * semantic-analyze.el (semantic-analyze-possible-completions-default):
374         Revamp raw results
375         stripping.  Strip operators, destructor/constructor.
376
377         * semantic-adebug.el (semantic-adebug-insert-find-results-from-point):
378         Remove 'parent'.
379
380         * semantic-adebug-eieio.el: Adebug support for EIEIO objects.
381
382         * semantic-adebug.el: Basic debugger for Semantic data structures.
383
384 2007-03-17  Eric M. Ludlam  <zappo@gnu.org>
385
386         * doc/tags.texi (Tag Attributes Internals, Tag Properties Internals):
387         Fix @dots.
388         Delete duplicates.
389
390         * semanticdb-system.el:
391         (semanticdb-project-database-system::semanticdb-load-system-database):
392         use oref-default for major-modes.  Thanks Jamie Macbeth.
393
394         * document.el (document-texify-elisp-docstring): Fix @dots replacement.
395
396 2007-03-13  Eric M. Ludlam  <zappo@gnu.org>
397
398         * bovine/semantic-c.el (semantic-c-reconstitute-token):
399         Use `semantic-tag-new-type'
400         when fabricating the :type of a constructor.
401
402 2007-03-12  Eric M. Ludlam  <zappo@gnu.org>
403
404         * document.el (document-texify-elisp-docstring):
405         Fix byte-comp found warning.
406
407         * document.el (document-massage-to-texinfo):
408         Do not @var the variable 'a'.
409         (document-texify-elisp-docstring): Add @dots.
410
411         * doc/tags.texi (Tag Basics): Added a few extra blurbs.
412         (Tag Query): Rearranged, sorted, added subsections.
413         (Tag Overlay, Tag Hooks, Misc Tag Functions,Tag Attributes Internals)
414         (Tag Properties Internals,Tag Overlay Internals,Creating Tags):
415         Updated doc of @defuns from the source.
416
417         * bovine/semantic-c.el (c-mode::semantic-format-tag-type): Move fcn.
418         Do not print 'class' if the type is of type class.
419
420         * semantic-format.el (semantic-test-all-format-tag-functions):
421         Add argument.
422         Universal argument now prints the text w/out color.
423         (semantic-format-tag-type-default): Obey the color argument.
424
425         * semantic-tag.el:
426         (semantic-tag-name, semantic-tag-overlay, semantic-equivalent-tag-p)
427         (semantic-tag-of-type-p, semantic-tag-new-variable)
428         (semantic-tag-new-function, semantic-tag-new-type)
429         (semantic-tag-new-include,semantic-tag-new-package,
430         semantic-tag-new-code,semantic-tag-modifiers,semantic-tag-include-filename)
431         (semantic-tag-components,semantic-narrow-to-tag):
432         Updated doc strings with more details.
433
434         * semantic-texi.el (semantic-texi-update-doc-from-texi):
435         Use a deep search to find fcns
436         within a document.
437         (semantic-texi-update-doc-from-source)
438         (semantic-texi-goto-source): Use `semanticdb-with-match-any-mode' and
439         a brutish deep search.
440
441         * semanticdb.el (semanticdb-match-any-mode): New variable
442         (semanticdb-with-match-any-mode): New macro
443         (semanticdb-equivalent-mode-for-search): Obey semanticdb-match-any-mode.
444
445         * semantic-tag.el (semantic-tag-file-name): Update doc.
446
447 2007-03-11  Eric M. Ludlam  <zappo@gnu.org>
448
449         * semantic-analyze.el (semantic-analyze-tag-type):
450         When finding a tag for a type,  ask for
451         only tags that are class 'type.
452         (semantic-analyze-possible-completions-default): When matching name
453         matching completions loop over each one, and validate the type name is
454         the same, or that the symbol is a compound type.  Compound type
455         detection is now looked up.  (Thanks Jamie Macbeth.)
456
457 2007-03-10  Eric M. Ludlam  <zappo@gnu.org>
458
459         * semanticdb-el.el:
460         (semanticdb-project-database-emacs-lisp::semanticdb-get-database-tables):
461         Nicer name.
462         (semanticdb-project-database-emacs-list::semanticdb-find-translate-path):
463         Delete.
464         (semanticdb-table-emacs-lisp::semanticdb-equivalent-mode): Doc fix.
465
466         * semanticdb-find.el (semanticdb-find-translate-path-includes-default):
467         Always append
468         omniscient system databases to our load path.
469         (semanticdb-find-load-unloaded): New override function for loading in
470         a database that is currently not in any databases.
471         (semanticdb-find-table-for-include-default): Use above.
472
473 2007-03-08  Eric M. Ludlam  <zappo@gnu.org>
474
475         * doc/wisent.texi:
476         (Grammar format, Compiling a grammar, Conflicts, Iterative style)
477         (Bison style): Minor language changes.
478
479         * bovine/c.by (opt-template-equal): Support =SYM and not just =<SYM>
480         (func-decl): Add support for arg-listless function that has a TRY
481         at the end.
482         (fun-or-proto-end): Use fun-try-end.
483         (fun-try-end): new for try blocks.
484         (fun-try-several-catches): Multiple stacked catch blocks after a try.
485         (function-call): Add more function call options.
486
487         * bovine/semantic-el.el (semantic-elisp-form-to-doc-string):
488         Add TODO comment about Lisp.
489
490         * semantic-ede-grammar.el:
491         (semantic-ede-proj-target-grammar::ede-proj-makefile-insert-variables)
492         (semantic-ede-proj-target-grammar::ede-proj-makefile-insert-dist-dependencies):
493         Fix spelling error of SEMANTIC_GRAMMAR_EL.  Thanks Tetsurou Okazaki.
494
495         * semantic-lex.el (define-lex):
496         Override `parse-sexp-lookup-properties' so that
497         text properties can't screw up our modified syntax table.
498
499         * tests/test.py: Added test cases for implicity joining.
500
501         * wisent/wisent-python.wy: (function_parameter_list, paren_class_list):
502         Set wisent-python-EXPANDING-block to t when expanding the sub-block.
503
504         * wisent/wisent-python.el (wisent-python-EXPANDING-block):
505         New lexical state variable.
506         (wisent-python-implicit-line-joining-p): Use above, no searching.
507         (wisent-python-end-of-block): Fix doc string.
508
509         * INSTALL: Fix counting.
510
511         * semantic-load.el (noninteractive):
512         Do not load minimum features by default.
513
514 2007-02-23  Eric M. Ludlam  <zappo@gnu.org>
515
516         * semantic-analyze.el (semantic-analyze-dereference-metatype): Moved
517         (semantic-analyze-type-parts): Moved.
518         (semantic-analyze-select-best-tag): New fcn
519         (semantic-analyze-find-tag): Replace comple mess at end w/
520         `semantic-analyze-select-best-tag'.
521         (semantic-analyze-tag-type): Replace FIXME comment with
522         `semantic-analyze-select-best-tag'.
523         (semantic-analyze-find-tag-sequence): Replace `should be smarter'
524         comment with `semantic-analyze-select-best-tag'.
525         Replace `semantic-find-first-tag-by-name' with the plural version.
526         Replace "should be smarter" comment with
527         `semantic-analyze-select-best-tag'.
528
529         * bovine/c.by (typesimple):
530         Class/struct w/ no body is considered a prototype.
531
532 2007-02-22  Eric M. Ludlam  <zappo@gnu.org>
533
534         * semanticdb-ebrowse.el (semanticdb-create-ebrowse-database):
535         Load file should use the helper.
536         (semanticdb-load-ebrowse-caches): Remove comments
537         (semanticdb-ebrowse-load-helper): New function.  Check for obsolete files.
538
539         * semantic-ia.el (semantic-ia-complete-symbol-menu):
540         Use senator if semantic gets nothing.
541
542         * semantic-analyze.el (semantic-analyze-dereference-metatype):
543         Add scope argument, pass down.
544         (semantic-analyze-tag-type): Add scope argument, pass down.
545         (semantic-analyze-find-tag-sequence): Pass scope through to above.
546         (semantic-analyze-scoped-tags): For any namespace, search for all
547         other occurances and merge.
548
549         * bovine/semantic-c.el (c-mode::semantic-analyze-dereference-metatype):
550         Add scope argument.
551
552         * semantic-complete.el (semantic-complete-self-insert):
553         Handy function for doing completion
554         when typing in a key that needs to insert itself.
555
556         * semanticdb-ebrowse.el (semanticdb-ebrowse-add-tree-to-table):
557         Fixed bugs found when run
558         against C files.
559
560 2007-02-21  Eric M. Ludlam  <zappo@gnu.org>
561
562         * semanticdb-ebrowse.el (semanticdb-ebrowse-file-match): New variable
563         (semanticdb-ebrowse-C-file-p): New predicate
564         (semanticdb-create-ebrowse-database): Use new predicate instead of old code.
565
566 2007-02-19  Eric M. Ludlam  <zappo@gnu.org>
567
568         * semanticdb-ebrowse.el (comments): Deleted
569         (semanticdb-table-ebrowse::semanticdb-find-tags-by-name-method)
570         (semanticdb-table-ebrowse::semanticdb-find-tags-by-name-regexp-method)
571         (semanticdb-table-ebrowse::semanticdb-find-tags-for-completion-method)
572         (semanticdb-table-ebrowse::semanticdb-find-tags-external-children-of-type-method):
573         Updated various to describe new methods.
574
575         (jvebrowse-find, fvebrowse-find2, jvebrowse-find-name): Deleted
576
577         * semanticdb-ebrowse.el (ebrowse):
578         Add eval-and-compile to fix byte-comp warnings.
579         (semanticdb-project-database-ebrowse): Remove the 'globals' slot.
580         (semanticdb-project-database-ebrowse::semanticdb-create-database):
581         Track default-directory.  Don't track the 'globals'.
582         (semanticdb-project-database-ebrowse::semanticdb-ebrowse-strip-trees):
583         New function
584
585         (semanticdb-ebrowse-strip-tables)
586         (semanticdb-project-database-ebrowse::semanticdb-ebrowse-add-etree-to-table)
587         (semanticdb-table-ebrowse::semanticdb-file-table-add)
588         (semanticdb-project-database-ebrowse::semanticdb-ebrowse-extract-globals)
589         (semanticdb-project-database-ebrowse::semanticdb-ebrowse-extract-globals-from-sublist):
590         Deleted
591
592         (semanticdb-normalize-tag): Renamed.
593         (semanticdb-table-ebrowse::semanticdb-get-tags): Deleted.
594         (semanticdb-ebrowse-add-globals-to-table): New fcn
595         (semanticdb-ebrowse-add-tree-to-table): New fcn
596
597
598         (semanticdb-table-ebrowse::semanticdb-ebrowse-find-tags-by-name-method)
599         (semanticdb-table-ebrowse::semanticdb-find-tags-by-name-regexp-method)
600         (semanticdb-table-ebrowse::semanticdb-find-tags-for-completion-method)
601         (semanticdb-find-tags-by-class-method)
602         (semanticdb-table-ebrowse::semanticdb-find-tags-external-children-of-type-method):
603         Revamped to use `call-next-method'.
604
605         * semanticdb-find.el (eieio): Add require
606         (semanticdb-find-translate-path-brutish-default):
607         Use `semanticdb-equivalent-mode-for-search'.
608         Only get the baseDB's dir if there is a base DB.
609         (semanticdb-find-translate-path-includes-default):
610         Use `semanticdb-equivalent-mode-for-search'.
611         (semanticdb-find-table-for-include-default):
612         Revamp how explicitly identified file's tables are loaded to also
613         go through system style databases, if available.
614         Obey the 'unloaded' throttle as well.
615         (semanticdb-strip-find-results): Use 'semanticdb-normalize-tags'.
616
617         * semanticdb-el.el (semanticdb-table-emacs-lisp::semanticdb-normalize-tags):
618         Add method.
619
620         * semanticdb.el (semanticdb-abstract-table::semanticdb-normalize-tags):
621         Change name.
622         Takes and returns a list.
623         (semanticdb-equivalent-mode-for-search): New function.
624         Allows some modes to search in any other modes buffers.
625
626         * semantic-ctxt.el (semantic-command-separation-character):
627         Add autoload cookie.
628
629         * semantic-complete.el (semantic-complete-inline-force-display):
630         Add autoload cookie.
631
632         * wisent/wisent.el (wisent-char-p): Fix byte-comp warnings.
633
634         * wisent/wisent-debug.el (wisent-debug-pp-to-string):
635         Fix byte-comp warning.
636
637         * wisent/wisent-comp.el (wisent-check-$N): Use string-to-number.
638
639         * bovine/semantic-java.el (semantic-doc): add require
640         (semantic-java-expand-tag): Add a variable to a let statement.
641
642         * bovine/semantic-el.el:
643         (emacs-lisp-mode::semantic-documentation-for-tag):
644         Use documentation-property as documented.
645
646         * bovine/semantic-c.el (semantic-lex-c-if):
647         Remove erroneous debug message.
648         (semantic-c-end-of-macro): Remove byte-comp warning.
649
650         * bovine/semantic-bovine.el: Doc fix.
651         (bovine-debug): Add require
652         (semantic-bovinate-nonterminal-check-obarray): Add autoload cookie.
653
654         * bovine/erlang-edoc.el (document-vars): Add require
655         (erlang-edoc-type-spec, erlang-edoc-desc-spec): Add customize group.
656
657         * bovine/bovine-grammar.el (bovine-grammar-expand-form):
658         Use string-to-number
659         (bovine-grammar-parsetable-builder): Fix format string.
660
661         * senator.el (semanticdb-find): add require.
662
663         * semantic-util-modes.el (semantic-stickyfunc-indent-string):
664         Add to customize group.
665
666         * semantic-util.el (semantic-assert-valid-token):
667         Fix a message w/ not enough arguments.
668
669         * semantic-tag-file.el:
670         Remove ede require.  It had some wierd byte-comp issues.
671
672         * semantic-sb.el (semantic-sb-detail-parent): Use string-to-number.
673
674         * semantic-lex.el (semantic-flex):
675         Add noisy message to encourage conversion.
676
677         * semantic-imenu.el: Add some autoload cookies.
678
679         * semantic-html.el (semantic-default-html-setup):
680         Fix typo for imenu support.
681
682         * semantic-fw.el (string-to-number): Add alias if we have an old emacs.
683
684 2007-02-18  Eric M. Ludlam  <zappo@gnu.org>
685
686         * semantic-tag-file.el (ede): Require in EDE during byte-comp.
687
688         * semantic-tag.el (semantic--tag-expand):
689         Explain why there is a byte-comp warning.
690
691         * semantic-grammar.el (semantic-idle): Add require.
692         (semantic-grammar-mode::senator-add-log-tags): Use newer name.
693
694         * semantic-fw.el (semantic-alias-obsolete):
695         Do not throw warning if within the CEDET
696         tool suite.  I have to use those fns for compatibility issues.
697
698         * semantic.el (semantic): Add semantic group to 'lisp' group.
699
700         * semantic-edit.el (semantic-edits-verbose-flag): Add autoload cookie.
701
702         * semantic-dep.el (semantic--dependency-find-file-on-path):
703         Add autoload cookie.
704
705         * semantic-decorate.el (semantic-momentary-highlight-one-tag-line):
706         Use semantic-make-overlay.
707
708         * semantic-complete.el (semanticdb-find):
709         Require it.  Fix byte-comp warnings
710         (minibuffer-contents): Fix byte-comp warnings
711
712         * document.el (ede): Try to get it loaded for byte-comp.
713         (document-get-date-time-string): Use string-to-number
714
715 2007-02-15  Eric M. Ludlam  <zappo@gnu.org>
716
717         * semanticdb-ebrowse.el (semanticdb-create-ebrowse-database):
718         Expand the dirname
719         (semanticdb-ebrowse-file-for-directory): Expand the dirname
720         (semanticdb-project-database-ebrowse::semanticdb-ebrowse-add-etree-to-table):
721         Formatting change.
722
723         * semanticdb.el (semanticdb-current-database-list):
724         Remove erroneous test before
725         including a DB.
726         (semanticdb-kill-hook): Doc fix.
727         (semanticdb-file-table-object): Add dontload argument.
728
729 2007-02-08  Eric M. Ludlam  <zappo@gnu.org>
730
731         * semantic-grammar.el (semantic-grammar-batch-build-packages):
732         Add msg when batch compiling
733         to debug the source of the compiler function.
734
735         * semantic-load.el (compat vars):
736         Do not use compatibility variables in batch mode.
737
738         * wisent/wisent-java-tags.wy (unicode):
739         Quote in the \ for the syntax regexp.
740
741 2007-02-08  David Ponce  <david@dponce.com>
742
743         * wisent/wisent-java-tags.wy (<unicode>):
744         add missing `syntax' property.
745         (epilogue): Replace `wisent-java-tags-unicode-analyzer'
746         declaration by auto-generated declaration of
747         `wisent-java-tags-wy--<unicode>-regexp-analyzer'.
748
749 2007-02-08  Eric M. Ludlam  <zappo@gnu.org>
750
751         * wisent/wisent-java-tags.wy (wisent-java-tags-unicode-analyzer):
752         New lexical analyzer.
753         (wisent-java-tags-lexer): Added unicode support.
754
755 2007-02-06  Eric M. Ludlam  <zappo@gnu.org>
756
757         * semantic-ia.el (semantic-ia-complete-symbol):
758         Fix case when the context's prefix
759         is a tag, not a string.
760
761 2007-02-05  Eric M. Ludlam  <zappo@gnu.org>
762
763         * semanticdb.el: (semanticdb-abstract-table::semanticdb-normalize-tag):
764         Changed the baseclass this derives from.
765
766 2007-02-03  Eric M. Ludlam  <zappo@gnu.org>
767
768         * Project.ede (tools): Added semantic-utest.el
769
770         * Makefile (tools_LISP): Added semantic-utest.el
771
772         * tests/test.cpp:
773         (class3::method1_for_class3, namespace1, funny_prototype):
774         Added various features for testing code the analyzer.
775
776         * doc/tags.texi (Tag Query):
777         Add semantic-tag-type-compound-p and semantic-tag-faux-p.
778
779         * semantic-utest.el (semantic-utest-Python-buffer-contents):
780         Change from setq to defvar.
781
782         * semantic-format.el:
783         (semantic-format-tag-uml-protection-to-string-default):
784         Copy our protection strings so fonts that are applied don't change
785         the original stored string.
786
787 2007-01-28  Eric M. Ludlam  <zappo@gnu.org>
788
789         * semantic-analyze.el (semantic-analyze-merge-namespaces):
790         New function.
791         (semantic-analyze-find-tag): Merge namespaces if a tag found is a namespace.
792
793         * tests/testsubclass.cpp, tests/testsubclass.hh (deer::alces):
794         Adding new namespace and class for testing this case in
795         the analyzer.
796
797 2007-01-25  Eric M. Ludlam  <zappo@gnu.org>
798
799         * semantic-analyze.el (semantic-analyze-inherited-tags):
800         Child classes can see protected
801         memebers of parents.
802
803         * bovine/semantic-c.el (c-mode::semantic-analyze-split-name):
804         Use older interface to split-string.
805
806         * semantic-format.el (semantic-format-tag-prototype-default):
807         Remove display of a compound
808         type's contents.  Big and messy.
809
810         * tests/testsubclass.hh, tests/testsubclass.cpp:
811         Test case for subclasses in C++ for the semantic analyzer.
812
813         * bovine/semantic-c.el (c-mode::semantic-analyze-split-name):
814         New implementation for C.
815
816         * semantic-analyze.el (semantic-analyze-split-name):
817         New overload function.
818         (semantic-analyze-find-tag): Test if NAME is splittable.
819         Use alternate lookup method if it is.
820         (semantic-analyze-find-tag-sequence): Handle the case if the first
821         entry in the sequence is a type we can use directly.
822
823 2007-01-24  Eric M. Ludlam  <zappo@gnu.org>
824
825         * semantic-utest.el: Unit tests.
826
827 2007-01-23  David Ponce  <david@dponce.com>
828
829         * wisent/semantic-wisent.el (wisent-parse-stream):
830         Signal when wisent-parse-max-stack-size
831         might need to be increased.
832
833 2007-01-23  Eric M. Ludlam  <zappo@gnu.org>
834
835         * tests/testspp.c: Test various states of SPP lexing.
836
837         * bovine/c.by (BOOL): New token for C++.  Sadly, also added for C.
838         (macro, macro-or-include, define): Use new SPP token symbols.
839         (builtintype-types): Added BOOL.
840
841         * bovine/semantic-c.el (semantic-lex-spp): new requirement
842         (semantic-lex-c-preprocessor-symbol-map): Change the customize format.
843         (semantic-lex-c-preprocessor-dynamic-symbol-map)
844         (semantic-lex-c-preprocessor-p, semantic-lex-c-define)
845         (semantic-lex-c-preprocess-replace-or-symbol-or-keyword)
846         (semantic-lex-c-if-0, semantic-lex-c-if): Deleted.
847         (semantic-lex-cpp-define, semantic-lex-cpp-undef)
848         (semantic-lex-c-if, semantic-lex-c-macrobits): New functions
849         (semantic-c-lexer): Use SPP instead of previously hacked preprocessor stuff.
850         (c-mode::semantic-dependency-system-include-path):
851         (semantic-default-c-path): New value is nil.
852         (semantic-dependency-system-include-path): New variable
853         (semantic-default-c-setup): Add the SPP reset hook.
854
855         * semantic-lex.el (semantic-lex-reset-hooks): new variable.
856         (define-lex): Call the lexical reset hooks.
857
858         * semantic-lex-spp.el (semantic-lex-spp-reset-hook):
859         New function to use as a hook.
860         (semantic-lex-spp-describe): Improve the layout a little.
861
862         * semantic-lex-spp.el (semantic-lex-spp-reset-dynamic-table): New fcn.
863
864         * semanticdb-ebrowse.el:
865         (semanticdb-table-ebrowse::semanticdb-find-tags-by-name-method):
866         Remove message.
867         (jvebrowse-find2): Add comment about last fix.
868
869         * semantic-format.el: (semantic-format-tag-name-from-anything):
870         If anything is a tag, and that tag has no name, then use the type
871         of the tag instead.
872
873         * semanticdb-find.el (semanticdb-find-translate-path-includes-default):
874         When using
875         semanticdb to find tags in a table, use the method, not the generic
876         search term.  This avoids recursion.
877
878 2007-01-22  Eric M. Ludlam  <zappo@gnu.org>
879
880         * semanticdb-ebrowse.el (semanticdb-create-ebrowse-database):
881         Fix post loading of a created
882         EBROWSE file.
883
884 2007-01-21  Eric M. Ludlam  <zappo@gnu.org>
885
886         * semanticdb-ebrowse.el (ebrowse): Catch errors while loading.
887         (semanticdb-table-ebrowse): Add 'global-extract' slot.
888         (semanticdb-project-database-ebrowse): Remove 'mytables' slot.
889         Add a 'globals' slot.
890         (semanticdb-get-database-tables): Deleted
891         (semanticdb-ebrowse-get-ebrowse-structure): Block ebrowse from
892         displaying a progress bar.
893         (semanticdb-project-database-ebrowse::semanticdb-create-database):
894         Search for globals.  Apply globals to constructed tables.
895         (semanticdb-project-database-ebrowse::semanticdb-ebrowse-strip-tables):
896         Find globals.
897         (semanticdb-project-database-ebrowse::semanticdb-ebrowse-add-etree-to-table):
898         Use `semanticdb-create-table' to construct new tables.
899         (semanticdb-project-database-ebrowse::semanticdb-ebrowse-extract-globals)
900         (semanticdb-project-database-ebrowse::semanticdb-ebrowse-extract-globals-from-sublist)
901         (semanticdb-project-database-ebrowse::semanticdb-normalize-tag)
902         New methods.
903         (semanticdb-table-ebrowse::semanticdb-equivalent-mode)
904         (semanticdb-table-ebrowse::semanticdb-find-translate-path):
905         Deleted methods.
906         (semanticdb-table-ebrowse::semanticdb-find-tags-by-name-method):
907         Better doc.
908         Constructed tags are marked as 'faux', since they are not tightly
909         bound to the buffer.
910
911         * semantic-load.el: (semantic-load-enable-minimum-features):
912         Add support for loading in ebrowse caches.
913         No ebrowse cache loading on XEmacs.
914
915         * semantic-dep.el (semantic--dependency-find-file-on-path):
916         Add autoload cookie.
917         Mmm... cookies.
918
919         * semanticdb-find.el: (semanticdb-strip-find-results):
920         Allow each table in which a match was found to convert the found
921         tags into something better.
922
923         * semanticdb.el: (semanticdb-table::semanticdb-normalize-tag):
924         New method.
925
926         * semantic-analyze.el: (semantic-analyze-current-context-default):
927         Don't do scope analysis if there are no bounds to a symbol to analyze
928         later.
929
930 2007-01-13  Eric M. Ludlam  <zappo@gnu.org>
931
932         * semantic-fw.el (semantic-fw-font-lock-keywords):
933         Add two spp lexical macros.
934
935         * bovine/semantic-bovine.el (semantic-bovinate-stream):
936         Use `semantic-lex-token-end' and
937         `semantic-lex-token-start' instead of directly referencing into the
938         lexical tokens w/ car and cdr.
939
940 2007-01-12  Eric M. Ludlam  <zappo@gnu.org>
941
942         * semantic-lex-spp.el (semantic-lex-spp-describe):
943         Fix compiler warning.
944
945         * semantic-lex.el (semantic-lex-keyword-symbol): Update doc.
946         (semantic-lex-test): Add timing information
947         (semantic-lex-token): Allow an optional string to be added to a token.
948         (semantic-lex-token-bounds): If a token has a string (it's a macro),
949         then bounds are in a different place.
950         (semantic-lex-token-start): When a token contains a string return that
951         instead of extracting the string from the current buffer.
952
953         * semantic-lex-spp.el (semantic-lex-make-spp-table):
954         Fix some argument calls.
955
956         * Makefile (semantic_LISP, tolls_lisp): Added new files.
957
958         * Project.ede: Add semantic-dep.el and semanticdb-ebrowse.el
959
960         * semanticdb-find.el (semanticdb-find-translate-path-brutish-default):
961         Fix reference to
962         list of tables.
963         (semanticdb-find-translate-path-includes-default):
964         When recursing into dependency files for more dependencies, do a
965         semanticdb specific search if the found table is based on semanticdb.
966         (semanticdb-find-test-translate-path): Be robust to tables that do no
967         provide a raw list of tags.
968
969         * semantic-decorate.el (semantic-momentary-unhighlight-one-tag-line):
970         Fix doc.
971
972         * semantic-tag-file.el (semantic-dependency-tag-file):
973         Move some parts to semantic-dep.el.
974         Use routines in semantic-dep.el.
975
976         * semantic-dep.el: Functions for dependency lookup (include tags).
977         Contains the search path that was in semantic-tag-file.
978
979         * semanticdb-ebrowse.el (semanticdb-create-ebrowse-database):
980         Added autoload tag.
981         Force load of created loader file.
982         (semanticdb-ebrowse-database-list): deleted.
983         (semanticdb-project-database-ebrowse): Remove tracking symbol.
984         Add system-include-p flag.
985         (c++-mode::semanticdb-find-default-throttle): Change to `project system recursive'.
986         (semanticdb-project-database-ebrowse::semanticdb-create-database):
987         Recycled ebrowse database objects that are pointing at the same place.
988         (semanticdb-project-database-ebrowse::semanticdb-file-table):
989         Search the table list with only the filename.
990
991 2007-01-09  Eric M. Ludlam  <zappo@gnu.org>
992
993         * semanticdb-el.el:
994         (semanticdb-table-emacs-lisp::semanticdb-find-tags-by-name-method):
995         Fix a typeo.
996
997         * semantic-edit.el (semantic-edits-change-over-tokens):
998         When searching end-of-buffer tags
999         for hits, do not compare against next tag unless there is a next tag.
1000
1001 2007-01-08  Eric M. Ludlam  <zappo@gnu.org>
1002
1003         * semanticdb-ebrowse.el: Merge in changes from Joakim Verona.
1004         Updated commentary.
1005         (semanticdb-create-ebrowse-database, semanticdb-load-ebrowse-caches):
1006         New user functions for setting up databases.
1007         (semanticdb-needs-refresh-p): New JV * EL.
1008         (semanticdb-ebrowse-file-for-directory): new utility.
1009         (semanticdb-ebrowse-database-list): Local tracker variable.
1010         (*): Updates from JV.
1011
1012 2006-09-12  Eric M. Ludlam  <zappo@gnu.org>
1013
1014         * semantic-idle.el (semantic-idle-scheduler-function):
1015         Remove the kill/restart of the
1016         idle timer.
1017
1018 2006-08-07  Eric M. Ludlam  <zappo@gnu.org>
1019
1020         * semantic-decorate.el: (semantic-momentary-highlight-one-tag-line)
1021         (semantic-momentary-unhighlight-on-tag-line): New fcns
1022         (semantic-momentary-highlight-tag): If a tag has no overlay,
1023         use above.
1024
1025 2006-07-29  Eric M. Ludlam  <zappo@gnu.org>
1026
1027         * senator.el (senator-find-tag-for-completion):
1028         Add semantic-analysis mode as an
1029         option for finding completions.  Add semanticdb results stripping here.
1030         (senator-complete-symbol): Removed semanticdb result stripping.
1031         (senator-completion-menu-item): Removed semanticdb result stripping.
1032
1033         * semantic-tag-ls.el (semantic-tag-protection):
1034         Add extra check that the tag has an overlay.
1035
1036         * semantic-sb.el (semantic-sb-token-jump):
1037         Add an extra means of extracting a file name
1038         from a token.
1039
1040         * semantic-ia-sb.el (semantic-ia-speedbar):
1041         Set the active mode for tag-display
1042         (semantic-ia-sb-string-list): Better non-tag tag word.
1043
1044         * semantic-edit.el (semantic-edits-verbose-flag): Make customizable.
1045
1046         * semanticdb-skel.el:
1047         Removed refs to emacs-lisp, replace with generic terms
1048
1049         * semanticdb-find.el: (semanticdb-find-translate-path-brutish-default):
1050         Only return tables in a DB of the same major mod as the current major-mode.
1051
1052         * semanticdb.el: (semanticdb-get-buffer)
1053         (semanticdb-file-table-object): Pass extra option to
1054         find-file-noselect to avoid displaying warnings.
1055
1056 2006-07-04  David Ponce  <david@dponce.com>
1057
1058         * semantic-ede-grammar.el:
1059         Fix recursive (require 'semantic-ede-grammar) error on Emacs 22.
1060
1061 2006-05-31  David Ponce  <david@dponce.com>
1062
1063         * wisent/wisent-java.wy (wildcard, wildcard_1, wildcard_2, wildcard_3):
1064         Add space around
1065         keywords in the returned value.
1066         (method_declarator, constructor_declarator, annotation): Pass $I
1067         placeholder to SKIP-BLOCK.
1068         (method_header, constructor_declaration): Set :template-specifier
1069         as a string for now.
1070         (type_parameters, type_parameter_list, type_parameter_list_1)
1071         (type_parameter, type_parameter_1, type_bound_opt, type_bound)
1072         (type_bound_1, additional_bound_list_opt)
1073         (additional_bound_list, additional_bound_list_1)
1074         (additional_bound, additional_bound_1): Produce a string for now.
1075
1076         * wisent/wisent-java-tags.el, wisent/wisent-java.el (wisent-java-expand-tag):
1077         Remove.
1078         (wisent-java-default-setup): Use `semantic-java-expand-tag'.
1079
1080         * wisent/wisent-grammar-macros.el (wisent-grammar-SKIP-BLOCK):
1081         Receive an optional $I placeholder
1082         symbol.
1083
1084         * bovine/semantic-java.el:
1085         (semantic-java-dim, semantic-java-expand-tag)
1086         (semantic-java-type): New functions.
1087         (semantic-java-prototype-variable): Use `semantic-java-type'.
1088         (semantic-java-prototype-function): Likewise.  Include
1089         :template-specifier.
1090         (semantic-java-prototype-type): Include :template-specifier.
1091
1092 2006-05-19  David Ponce  <david@dponce.com>
1093
1094         * semantic-format.el (semantic--format-tag-arguments): Fix last change.
1095
1096 2006-04-06  Eric M. Ludlam  <zappo@gnu.org>
1097
1098         * semantic-ctxt.el: (semantic-get-local-variables-default)
1099         (semantic-get-local-arguments): Add a :filename property to
1100         every found tag so the source buffer can be found later.
1101
1102 2006-03-27  David Ponce  <david@dponce.com>
1103
1104         * wisent/wisent.el (wisent-parse-verbose-flag, wisent-recovering):
1105         Doc fix.
1106
1107         * wisent/wisent-comp.el:
1108         (wisent-debug-flag, wisent-new-log-flag, wisent-verbose-flag)
1109         (wisent-single-start-flag, wisent-compile-grammar): Doc fix.
1110         (wisent-automaton-lisp-form): New function renamed from
1111         `wisent-byte-compile-automaton'.  Don't byte-compile here.
1112         (wisent-byte-compile-grammar): Use it.  byte-compile here.
1113
1114 2006-02-24  David Ponce  <david@dponce.com>
1115
1116         * wisent/wisent-java.wy (modifiers, modifier): Revert last change.
1117         (class_body_declaration)
1118         (interface_member_declaration): Use the SKIP-TOKEN macro.
1119         (enum_body, enum_arguments_opt)
1120         (constructor_body, array_initializer, block, switch_block)
1121         (dim_expr, annotation_type_body)
1122         (member_value_array_initializer): Use the SKIP-BLOCK macro.
1123         (method_declarator)
1124         (constructor_declarator): Likewise.  Improve recovery rule.
1125         (annotation): Return the annotation name.
1126
1127         * wisent/wisent-grammar-macros.el: (wisent-grammar-SKIP-BLOCK)
1128         (wisent-grammar-SKIP-TOKEN): New functions.
1129         (wisent-grammar-mode::semantic-grammar-macros): Add SKIP-BLOCK and
1130         SKIP-TOKEN macros.
1131
1132         * wisent/wisent.el (wisent-skip-block):
1133         Accept the starting location of the block as
1134         an optional parameter.
1135
1136 2006-02-24  Eric M. Ludlam  <zappo@gnu.org>
1137
1138         * semantic-lex-spp.el:
1139         Semantic Pre-processor, for emulating pre-processors and their symbols.
1140
1141 2006-02-23  David Ponce  <david@dponce.com>
1142
1143         * wisent/wisent-java.wy (package_declaration):
1144         Simplify. Store package modifiers for
1145         future use.
1146         (modifiers): Ignore nil values.
1147         (modifier): Don't store annotation for now.
1148         (formal_parameter, local_variable_declaration, foreach_statement)
1149         (foreach_statement_no_short_if): Handle annotations.
1150
1151 2006-02-17  Eric M. Ludlam  <zappo@gnu.org>
1152
1153         * bovine/semantic-c.el (semantic-lex-c-preprocessor-symbol-map):
1154         New option
1155         (semantic-lex-c-preprocessor-dynamic-symbol-map): New var (unused)
1156         (semantic-lex-c-preprocessor-p): New fn
1157         (semantic-lex-c-define): New lexer (unused)
1158         (semantic-lex-c-preprocessor-replace-or-symbol-or-keyword): New lexer
1159         (semantic-c-lexer): Use new lexer
1160
1161 2006-02-16  Eric M. Ludlam  <zappo@gnu.org>
1162
1163         * semantic-edit.el (semantic-edits-assert-valid-region): New macro
1164         (semantic-edits-incremental-parser-1): Protect against a bug where
1165         psrse-start is after parse-end.
1166         Added debugging assistance.
1167         Added some comments in some confusing code.
1168
1169         * tests/test.py (HTTPServer.server_bind): Uncomment.
1170
1171         * wisent/wisent-python.el (wisent-python-default-setup):
1172         Remove errant paren.
1173
1174         * semantic-load.el (semantic-load-enable-semantic-debugging-helpers):
1175         Enable incremental
1176         parser verbosity.
1177
1178         * doc/user-guide.texi (Speed Debug): New node.
1179
1180 2006-02-09  Eric M. Ludlam  <zappo@gnu.org>
1181
1182         * wisent/wisent-python.el (wisent-python-default-setup):
1183         Apply the semantic imenu override
1184         so we don't use the one in python.el.
1185         Add symbol-> name association lists.
1186
1187 2006-02-08  Eric M. Ludlam  <zappo@gnu.org>
1188
1189         * doc/Project.ede (images): Added grammar-fw-ov.txt
1190
1191         * wisent/Makefile, tests/Makefile, doc/Makefile, bovine/Makefile (VERSION):
1192         updated
1193
1194         * semantic-load.el (semantic-load-enable-guady-code-helpers): Alias.
1195
1196         * semantic.el (semantic-version): Updated
1197
1198         * Project.ede (:version): updated
1199
1200         * Makefile (VERSION): updated
1201
1202         * semantic-ia.el (semantic-ia-show-summary): New fcn/example
1203
1204         * senator.el (semantic-narrow-to-tag):
1205         Undo previous... already defined as narrow-to-defun
1206
1207         * semantic-tag.el (semantic-narrow-to-tag): Make this interactive.
1208
1209         * senator.el (senator-menu-bar): Add item for senator-narrow-to-tag.
1210
1211         * semantic-load.el, INSTALL: Fix gaudy typo
1212
1213 2006-01-12  David Ponce  <david@dponce.com>
1214
1215         * wisent/wisent-java-tags.wy (variable_declarators):
1216         Include the COMMA delimiter into compound
1217         declaration bounds.
1218
1219 2006-01-09  David Ponce  <david@dponce.com>
1220
1221         * wisent/wisent-java.wy (variable_declarators):
1222         Include the COMMA delimiter into compound
1223         declaration bounds.
1224
1225         * senator.el (senator-search-tag-name):
1226         Search the tag name between word
1227         delimiters, whitespaces, or punctuations.
1228
1229 2006-01-03  David Ponce  <david@dponce.com>
1230
1231         * semantic-ctxt.el (semantic-ctxt-current-symbol-default):
1232         Skip array-like
1233         expressions around symbols.
1234
1235         * bovine/semantic-c.el (c-mode::semantic-type-relation-separator-character):
1236         Revert last
1237         change.
1238
1239 2005-12-07  Eric M. Ludlam  <zappo@gnu.org>
1240
1241         * bovine/semantic-c.el:
1242         (c-mode::semantic-type-relation-separator-character):
1243         Add simple Arrays as occuring between symbols.
1244
1245 2005-11-22  David Ponce  <david@dponce.com>
1246
1247         * wisent/wisent-java.wy (static_initializer):
1248         Use :typemodifiers attribute.
1249         (block_statements): Use :members attribute.
1250         (method_declaration, constructor_declaration): Don't store the
1251         :body attribute to save place in the tag database.
1252
1253         * senator.el (senator-previous-tag-or-parent): Don't use
1254         `semantic-find-tag-by-overlay-prev' which skips the current tag
1255         when point is at the end of a tag overlay.
1256
1257 2005-11-17  David Ponce  <david@dponce.com>
1258
1259         * wisent/wisent-java.wy (local_variable_declaration):
1260         Fix tag production.
1261
1262 2005-11-03  David Ponce  <david@dponce.com>
1263
1264         * semantic-ia.el (semantic-ia-complete-symbol-menu):
1265         XEmacs `imenu--mouse-menu'
1266         compatibility fix.
1267
1268 2005-10-23  Eric M. Ludlam  <zappo@gnu.org>
1269
1270         * semantic-ia.el (semantic-ia-complete-symbol):
1271         Use `senator-complete-symbol' as backup
1272         technique if smart stuff fails.
1273
1274         * semantic-ia.el (semantic-ia-complete-symbol-menu):
1275         Fix case with only one menu item.
1276
1277         * bovine/semantic-c.el (semantic-expand-c-tag):
1278         Replace obsolete 'token-parent' call with
1279         'tag-type-superclasses' call instead.
1280
1281         * bovine/c.by (typesimple): For typedef, pass 'parent' in as a list
1282
1283 2005-09-30  Eric M. Ludlam  <zappo@gnu.org>
1284
1285         * tests/test.cpp (stdio.h): New include.
1286         (simple1): New function.
1287         (class1): Add var12
1288         (class3): Add operator^=
1289         (class3::method1_for_class3): Various smart completion testing changes.
1290         (class4): Add constructor initializers
1291         (Action): Add operator+=.
1292
1293         * tests/test.c (fun1): New.
1294
1295         * tests/gr-test.wy, doc/fdl.texi, wisent/wisent-python.wy, wisent/wisent-python.el, wisent/wisent-java.wy, wisent/wisent-java-tags.wy, wisent/wisent-java-tags.el, wisent/wisent-java.el, wisent/wisent-grammar-macros.el, wisent/wisent-grammar.el, wisent/wisent-expr.el, wisent/wisent.el, wisent/wisent-debug.el, wisent/wisent-c.wy, wisent/wisent-comp.el, wisent/wisent-cim.wy, wisent/wisent-c.el, wisent/wisent-calc.wy, wisent/wisent-calc.el, wisent/wisent-awk.wy, wisent/semantic-wisent.el, wisent/bison-wisent.el, bovine/skeleton.by, bovine/semantic-skeleton-by.el, bovine/semantic-skel.el, bovine/semantic-scm.el, bovine/semantic-make.el, bovine/semantic-java.el, bovine/semantic-erlang.el, bovine/semantic-el.el, bovine/semantic-c.el, bovine/semantic-bovine.el, bovine/scheme.by, bovine/make.by, bovine/erlang-edoc.el, bovine/erlang.by, bovine/c.by, bovine/bovine-grammar-macros.el, bovine/bovine-grammar.el, bovine/bovine-debug.el, senator.el, semantic-util-modes.el, semantic-util.el, semantic-texi.el, semantic-tag-ls.el, semantic-tag-file.el, semantic-tag.el, semantic-sort.el, semantic-sb.el, semantic-regtest.el, semantic-load.el, semantic-lex.el, semantic-inc.el, semantic-imenu.el, semantic-idle.el, semantic-ia-sb.el, semantic-ia.el, semantic-html.el, semantic-grammar-wy.el, semantic-grammar.wy, semantic-grammar.el, semantic-fw.el, semantic-format.el, semantic-fold.el, semantic-find.el, semantic-example.el, semantic.el, semantic-edit.el, semantic-ede-grammar.el, semantic-doc.el, semantic-decorate-mode.el, semantic-decorate.el, semantic-debug.el, semanticdb-system.el, semanticdb-skel.el, semanticdb.sh, semanticdb-search.el, semanticdb-mk.el, semanticdb-java.el, semanticdb-find.el, semanticdb-file.el, semanticdb-el.el, semanticdb.el, semanticdb-ebrowse.el, semantic-ctxt.el, semantic-complete.el, semantic-chart.el, semantic-cb.el, semantic-ast.el, semantic-analyze.el, document-vars.el, document.el:
1296         Update all GPL headers with script from savannah.gnu.org.
1297
1298 2005-09-29  Eric M. Ludlam  <zappo@gnu.org>
1299
1300         * bovine/c.by (HAT): Fix regexp.
1301
1302         * bovine/semantic-c.el (c-mode::semantic-format-tag-canonical-name):
1303         New override.
1304
1305         * document.el (document-find-file): Fix warning.
1306
1307         * document.el (document): Fix doc.
1308         (document-inline): Use overlays to find the current tag.
1309
1310         * semantic-doc.el (semantic-documentation-for-tag):
1311         Use below for getting a comment.
1312         (semantic-documentation-comment-preceeding-tag): New function.
1313         Like code taken from above, but using overlays to find boundaries
1314         between tags.  Robust to functions with no preceeding comments.
1315
1316         * semantic-debug.el (semantic-debug-interface::semantic-debug-highlight-rule):
1317         Make very
1318         long rules visible when focus changes to the end of those rules.
1319
1320         * semantic-find.el (semantic-find-tag-by-overlay-prev):
1321         Find stops at END of tags when
1322         going backward.
1323         (semantic-brute-find-first-tag-by-function): Fix doc string.
1324         (semantic-brute-find-tag-by-position): Fix doc string.
1325
1326 2005-09-21  David Ponce  <david@dponce.com>
1327
1328         * senator.el: (semantic-insert-foreign-tag-default)
1329         (semantic-insert-foreign-tag): Move to semantic-tag.el.
1330         (senator-copy-tag, senator-yank-tag)
1331         (senator-copy-tag-to-register)
1332         (insert-register, jump-to-register): Use foreign tags.
1333
1334         * semantic-texi.el (semantic-insert-foreign-tag):
1335         Receive a foreign tag.  Use
1336         `semantic-tag-buffer'.
1337
1338         * semantic-tag.el (semantic-tag-buffer):
1339         Handle tag with an originating file.
1340         (semantic-tag-mode)
1341         (semantic-foreign-tag-invalid, semantic-foreign-tag-p)
1342         (semantic-foreign-tag-check, semantic-foreign-tag)
1343         (semantic-obtain-foreign-tag): New functions.
1344         (semantic-insert-foreign-tag-default)
1345         (semantic-insert-foreign-tag): Move from senator.el.  Change
1346         arguments.
1347
1348         * semantic-grammar.el: (semantic-ctxt-current-function)
1349         (semantic-ctxt-current-argument)
1350         (semantic-ctxt-current-assignment)
1351         (semantic-ctxt-current-class-list): Take into account the optional
1352         argument POINT.
1353         (semantic-ctxt-current-mode): New function.
1354
1355         * semantic-ctxt.el: (semantic-ctxt-current-mode)
1356         (semantic-ctxt-current-mode-default): New functions.
1357
1358         * document.el (document-massage-to-texinfo): Use `semantic-tag-mode'.
1359
1360 2005-09-16  Eric M. Ludlam  <zappo@gnu.org>
1361
1362         * bovine/c.by (operatorsym):
1363          Move HAT EQUAL operatorysym to the end of the list.
1364         It breaks following rules.
1365
1366 2005-09-07  David Ponce  <david@dponce.com>
1367
1368         * bovine/semantic-el.el (eval-and-compile, eval-when-compile):
1369         Make the nested form parser
1370         more robust.
1371
1372 2005-09-01  Eric M. Ludlam  <zappo@gnu.org>
1373
1374         * senator.el (add-log-current-defun): Output canonical names too.
1375         Work harder at finding a parent to add to canonical name.
1376
1377         * semantic-format.el (semantic-format-tag-functions):
1378         Add semantic-format-tag-canonical-name.
1379         (semantic-format-parent-separator): New option.
1380         (semantic--format-tag-arguments): Use below fcn
1381         (semantic-format-tag-name-from-anything): New function (from above)
1382         (semantic--format-tag-parent-tree): New unfinished function.
1383         (semantic-format-tag-canonical-name): New overload function.
1384         (semantic-format-tag-abbreviate-default): Use above.
1385
1386 2005-08-27  David Ponce  <david@dponce.com>
1387
1388         * doc/tags.texi (Tag Overlay): Fix @strong{Note...} warning.
1389
1390 2005-08-26  Eric M. Ludlam  <zappo@gnu.org>
1391
1392         * doc/tags.texi (Tag Query): New doc.
1393
1394         * semantic-tag.el (semantic-tag-named-parent): New function
1395         (semantic-tag-function-parent): Use above.
1396
1397 2005-08-15  Eric M. Ludlam  <zappo@gnu.org>
1398
1399         * semantic-fold.el (semantic-folding-click): doc update
1400         (provide): Add one.
1401
1402 2005-07-14  David Ponce  <david@dponce.com>
1403
1404         * Makefile, wisent/Makefile, bovine/Makefile: Re-generate.
1405
1406         * semantic-ede-grammar.el: (semantic-ede-grammar-compiler-wisent)
1407         (semantic-ede-grammar-compiler-bovine): Add quotes around EMACS.
1408
1409 2005-06-30  Eric M. Ludlam  <zappo@gnu.org>
1410
1411         * semantic.el (semantic-version): Updated.
1412
1413         * Project.ede (:version): Updated.
1414
1415         * wisent/Makefile, tests/Makefile, doc/Makefile, bovine/Makefile, Makefile (VERSION):
1416         Updated.
1417
1418         * senator.el: toplevel: ran checkdoc, cleaned up errant whitespace.
1419         (senantor-fold-tag,senator-unfold-tag,senator-fold-tag-toggle): Doc fix.
1420         (senator-go-to-up-reference): Error fix.
1421         (semantic-up-reference-default): Error fix.
1422
1423         * semantic-util-modes.el:
1424         toplevel: ran checkdoc, cleaned up errant whitespace.
1425
1426         * semantic-util.el (semantic-recursive-find-nonterminal-by-name):
1427         Doc change pending deletion.
1428
1429         * semantic-tag-file.el:
1430         toplevel: ran checkdoc, cleaned up errant whitespace.
1431
1432         * semantic-tag.el (semantic-tag-faux-p): Doc fix.
1433
1434         * semantic-sort.el:
1435         toplevel: ran checkdoc, cleaned up errant whitespace.
1436
1437         * semantic-sb.el: (semantic-sb-tag-set-buffer)
1438         (semantic-sb-insert-tag-table): Doc fix.
1439
1440         * semantic-load.el (semantic-load-enable-minimum-features):
1441         Fix broken if statement.
1442
1443         * semantic-lex.el (semantic-lex-expand-block-specs): Doc fix.
1444
1445         * semantic-idle.el, semantic-grammar.el:
1446         toplevel: ran checkdoc, cleaned up errant whitespace.
1447
1448         * semantic-fw.el: Copyright updated.
1449
1450         * semantic-example.el: Checkdoc fixes.
1451
1452         * semantic.el: toplevel: ran checkdoc, cleaned up errant whitespace.
1453         (semantic-parse-region): Doc fix.
1454         (semantic-parse-region-default): Error msg fixes.
1455
1456         * semantic-decorate-mode.el: (global-semantic-decoration-mode):
1457         (semantic-decoration-mode): Checkdoc fixes.
1458
1459         * semantic-decorate.el (semantic-set-tag-folded-isearch): Doc fix.
1460
1461         * semantic-debug.el: (semantic-debug-find-parser-source)
1462         (semantic-debug-set-breakpoint)
1463         (semantic-debug-parser-fames): Various checkdoc fixes.
1464
1465         * semanticdb-system.el: (semanticdb-load-system-database)
1466         (semanticdb-collect-matching-filenames): Doc fix.
1467
1468         * semanticdb-find.el: Commentary: updated.
1469         (semanticdb-find-table-for-include-default): Add comment about cache loading.
1470         (semanticdb-find-test-translate-path): doc fix.
1471         (semanticdb-find-result-test): Fix error message.
1472
1473         * semanticdb-file.el:
1474         toplevel: ran checkdoc, cleaned up errant whitespace.
1475         (semanticdb-file-name-directory): Doc fix.
1476         Renamed argument PATH to DIRECTORY for GNU conventions.
1477
1478         * semanticdb-el.el:
1479         toplevel: ran checkdoc, cleaned up errant whitespace.
1480
1481         * semanticdb.el (semanticdb-file-table): Doc fix.
1482
1483         * semantic-ctxt.el:
1484         toplevel: ran checkdoc, cleaned up errant whitespace.
1485         (semantic-ctt-current-argument-default): Doc fix.
1486
1487         * semantic-complete.el, semantic-chart.el, semantic-analyze.el:
1488         toplevel: ran checkdoc, cleaned up errant whitespace.
1489
1490 2005-06-13  David Ponce  <david@dponce.com>
1491
1492         * semantic-util-modes.el (semantic-stickyfunc-mode-setup):
1493         Fix last change.  Thanks to
1494         Nicholas Sandow <njsand@internode.on.net>.
1495
1496 2005-06-11  David Ponce  <david@dponce.com>
1497
1498         * semantic-util-modes.el (semantic-stickyfunc-old-hlf):
1499         No more automatically buffer local.
1500         (semantic-stickyfunc-mode-setup): Fix save/restore of previous
1501         header line.
1502
1503 2005-06-02  David Ponce  <david@dponce.com>
1504
1505         * semantic-grammar.el (semantic-grammar-mode):
1506         Use `semantic-run-mode-hooks'.
1507
1508         * semantic-fw.el (semantic-run-mode-hooks): New compatibility function.
1509         (semantic-safe): Add the current buffer to the error message.
1510
1511         * semantic-decorate-mode.el (semantic-build-decoration-mode-menu):
1512         Add autoload cookie.
1513
1514 2005-05-19  David Ponce  <david@dponce.com>
1515
1516         * senator.el: (senator-search-ignore-tag-classes)
1517         (senator--search-filter): New variables.
1518         (senator-search-default-tag-filter): New function.
1519         (senator-search-tag-filter): Remove.
1520         (senator-search-tag-filter-functions): New hook.
1521         (senator-search): Use it.
1522         (senator-search-set-tag-class-filter): Likewise. Doc fix.
1523
1524 2005-05-13  David Ponce  <david@dponce.com>
1525
1526         * senator.el (senator-search-tag-name):
1527         Don't fail if TAG name doesn't come
1528         from source. Doc fix.
1529         (senator-search): Likewise.
1530
1531 2005-05-08  Suraj Acharya <sacharya@gmail.com>
1532
1533         * semantic-fw.el:
1534         added a binding for overlay-size/extent-length to semantic-overlay-size
1535
1536 2005-05-06  Eric M. Ludlam  <zappo@gnu.org>
1537
1538         * wisent/Makefile (VERSION): Update version number
1539         (tools, wisent, languages): Add quotes around EMACS.
1540
1541         * tests/Makefile (VERSION): Update version number
1542
1543         * semantic-fold.el (semantic-tag-folding-decoration):
1544         Disable folding style by default.
1545
1546         * semantic-debug.el (semantic-debug-find-parser-source):
1547         Provide a useful error if the
1548         parser source was not found.
1549
1550         * semantic-load.el (semantic-load-system-cache-loaded): New variable.
1551         (semantic-load-enable-minimum-features): Do not load system caches
1552         more than once.
1553
1554         * semantic-idle.el:
1555         (semantic-idle-summary-current-symbol-info-context):
1556         Be robust to failures in analysis calculation.
1557
1558         * semantic.el (semantic-version): Update version number
1559
1560         * semanticdb-system.el (semanticdb-load-system-caches):
1561         Disable loading non cache files.
1562         This allows other types of files in the cache directory.
1563
1564         * INSTALL: Added semantic-load-enable-guady-code-helpers.
1565         Add custom setup section.
1566
1567         * Makefile (VERSION): Update version number
1568         (autoloads, maintenance, init, semantic, Languages, tools, senator):
1569         Add quotes around EMACS.
1570
1571         * Project.ede ("semantic"): Update version number
1572
1573         * bovine/Makefile (VERSION): Update version number
1574         (bovinator, languages): Add quotes around EMACS.
1575
1576         * doc/Makefile (VERSION): Update version number
1577         (semantic-user_info_TEXINFOS): Added minor-modes.texi.
1578
1579         * doc/Project.ede ("semantic-user.info"):
1580         Broke out minor modes section to new file.
1581
1582         * doc/user-guide.texi (senator): Add some new keybindings
1583         (Analyzer): Replace 'token' with 'tag'.
1584         (Class Browser): Tidy up some text.
1585         (Idle Scheduler): Menu update.
1586         (Idle Summary Mode): Add new variable.  Remove completions mode.
1587         (Idle Completions Mode): New section.
1588         (Minor Modes): Moved into a sub-file.
1589
1590         * doc/minor-modes.texi: Doc for various minor modes.
1591
1592 2005-05-01  Eric M. Ludlam  <zappo@gnu.org>
1593
1594         * semanticdb-ebrowse.el: Ebrowse semanticdb backend.
1595
1596 2005-04-30  Eric M. Ludlam  <zappo@gnu.org>
1597
1598         * senator.el (senator-register-custom-menu):
1599         Add space to menu item name.
1600         (senator-menu-bar): Move some items.
1601         Add decoration sub-menu.
1602
1603         * semantic-load.el (semantic-load-enable-code-helpers):
1604         Remove some items
1605         (semantic-load-enable-guady-code-helpers): New
1606         (semantic-load-enable-excessive-code-helpers): Remove ref to old variable.
1607
1608         * semantic-decorate-mode.el (semantic-decoration-style-enabled-p):
1609         New fcn.
1610         (semantic-decoration-menu-cache, semantic-decoration-build-style-menu)
1611         (semantic-build-decoration-mode-menu): New.
1612         (define-semantic-decoration-style): Enable a set of optional flags.
1613         (semantic-tag-boundary-p-default): Remove minimum size constraint.
1614         (semantic-decoration-on-private-members)
1615         (semantic-decoration-on-protected-members): Disable by default.
1616
1617 2005-04-23  Eric M. Ludlam  <zappo@gnu.org>
1618
1619         * semantic-util-modes.el (semantic-stickyfunc-mode-map):
1620         Add keypress for menu in header line.
1621         (semantic-stickyfunc-popup-menu): New variable and menu.
1622         (semantic-stickyfunc-menu): Command.
1623
1624 2005-04-22  Eric M. Ludlam  <zappo@gnu.org>
1625
1626         * semantic-tag.el: Update Commentary.
1627
1628 2005-04-20  Eric M. Ludlam  <zappo@gnu.org>
1629
1630         * semantic-load.el (semantic-load-enable-code-helpers):
1631         For code helpers, do not turn on
1632         completions mode if there are no tooltips.
1633
1634 2005-04-19  Eric M. Ludlam  <zappo@gnu.org>
1635
1636         * semantic.el (semantic-version): Update version number.
1637
1638         * wisent/Makefile, tests/Makefile, doc/Makefile, bovine/Makefile, Makefile (VERSION):
1639         Updated.
1640
1641         * Project.ede ("semantic"): Update version number.
1642
1643         * bovine/semantic-el.el (semantic-dependency-tag-file):
1644         Renamed from old not compatible name.
1645
1646         * semantic-sort.el (semantic-tag-external-member-parent): Fix Typo.
1647
1648         * NEWS: Add section on lexical debugging.
1649
1650 2005-04-17  Eric M. Ludlam  <zappo@gnu.org>
1651
1652         * semantic-fold.el (semantic-tag-folding-decoration-p-default):
1653         Fix comment.
1654         Only show +/- if in folding mode.
1655         (semantic-tag-folding-decoration-highlight-default):
1656         Fix doc.
1657
1658 2005-04-16  David Ponce  <david@dponce.com>
1659
1660         * semantic-tag.el (semantic-tag-faux-p, semantic-tag-set-faux):
1661         Rename the 'faux
1662         property to :faux-flag.
1663
1664         * semantic-sort.el (semantic-adopt-external-members):
1665         Use `semantic-tag-set-faux'.
1666
1667         * bovine/c.by (operatorsym): Fix previous change.
1668
1669 2005-04-16  Eric M. Ludlam  <zappo@gnu.org>
1670
1671         * senator.el (senator-go-to-up-reference): New command.
1672         (semantic-up-reference[-default]): New override method.
1673         (senator-prefix-map): Add up-reference command.
1674         (senator-menu-bar): same.
1675
1676 2005-04-15  Eric M. Ludlam  <zappo@gnu.org>
1677
1678         * bovine/semantic-c.el (semantic-tag-protection):
1679         Use tag equivalency, not eq.
1680
1681         * bovine/c.by (MOD, HAT, OR): New tokens.
1682         (operatorsym): Add many more possible overloadable operators.
1683
1684         * semantic-sort.el (semantic-adopt-external-members):
1685         Revamp to use 'faux' tag interface
1686         added to semantic-tag.el
1687
1688         * semantic-tag.el (semantic-tag-faux-p, semantic-tag-set-faux):
1689         New functions
1690
1691 2005-04-01  Eric M. Ludlam  <zappo@gnu.org>
1692
1693         * bovine/c.by (fun-or-proto-end): Allow arguments after catch.
1694
1695         * bovine/c.by (fun-or-proto-end): Allow initializers after TRY.
1696
1697         * bovine/c.by (TRY, CATCH): New tokens
1698         (fun-or-proto-end): Add TRY/CATCH option to function body.
1699
1700         * semantic-idle.el (semantic-idle-core-handler):
1701         Allow services to run if lexical unsafe.
1702         (semantic-idle-summary-current-symbol-info-context):
1703         Use new analyzer API call to get an interesting tag.
1704
1705         * semantic-analyze.el: (semantic-analyze-interesting-tag):
1706         New methods for `semantic-analyze-context', `-functionarg', and
1707         `-assignment'.
1708
1709         * semantic-ctxt.el (semantic-end-of-context-default):
1710         Make robust to incomplete syntax.
1711
1712         * semantic.el (semantic-refresh-tags-safe): New function.
1713
1714         * semantic-lex.el (semantic-lex-debug-analyzers): New option.
1715         (semantic-lex-unterminated-syntax-protection): Debug syntax problems
1716         iff both lex debug and debug-on-error is active.
1717
1718 2005-03-24  Eric M. Ludlam  <zappo@gnu.org>
1719
1720         * semantic-imenu.el: (semantic-imenu-index-directory)
1721         (semantic-imenu-auto-rebuild-directory-indexes): New default value is nil.
1722
1723 2005-03-01  Eric M. Ludlam  <zappo@gnu.org>
1724
1725         * semantic-sb.el (semantic-sb-token-jump):
1726         Be sure to switch to the buffer being
1727         jumped to by `semantic-go-to-tag'.
1728
1729 2005-02-20  Eric M. Ludlam  <zappo@gnu.org>
1730
1731         * semantic-tag-file.el (semantic-go-to-tag): Use `cond'.
1732         Use `semantic-tag-file-name' when applicable.
1733         If no position is found, use current buffer and re-search-forward.
1734         (semantic-dependency-tag-file): Switch to tag originating buffer
1735         before calling any override methods.
1736         Add caching mechanism around the override part.
1737
1738 2005-02-17  Eric M. Ludlam  <zappo@gnu.org>
1739
1740         * bovine/semantic-el.el (semantic--elisp-parse-table):
1741         Fix reverse issue on tag lists.
1742         (semantic-elisp-setup-form-parser): New parser entity
1743         (defvar): Add defezimage.
1744         (defmethod): Don't specify parent of not specified in arg list.
1745         (define-mode-overload-implementation): Add obsolete comment.
1746
1747         * tests/test.el: New test functions for Emacs Lisp.
1748
1749         * semantic-util-modes.el (semantic-stickyfunc-mode-setup):
1750         Pass a second argument to
1751         local-variable-p.
1752
1753 2005-02-15  Klaus Berndl <klaus.berndl@sdm.de>
1754
1755         * semantic-regtest.el: - Removed the semantic 1.4 support
1756         - Whitespace-normalizing of tag-name and tag-text
1757         - Added help-echos for semantic-regtest-mode
1758         - distinction between user-commands and internal-equivalents for being used
1759           from within elisp
1760         - new option semantic-regtest-print-tag-boundaries
1761
1762 2005-02-13  Eric M. Ludlam  <zappo@gnu.org>
1763
1764         * semantic-util-modes.el (semantic-stickyfunc-indent-string):
1765         New default value calculated from
1766         the environment.
1767         (semantic-stickyfunc-fetch-stickyline): Replace tabs with spaces
1768         before presenting the string.
1769
1770         * semantic-tag-file.el (semantic-dependency-tag-file):
1771         Cache found dependency in tag
1772         property.  If it isn't found, cache that too.
1773
1774         * semantic-idle.el (semantic-idle-scheduler-verbose-flag): New option
1775         (semantic-idle-core-handler)
1776         (semantic-idle-scheduler-refresh-tags): Be verbose if flag is
1777         non-nil.
1778
1779 2005-02-04  Eric M. Ludlam  <zappo@gnu.org>
1780
1781         * semanticdb-system.el (semanticdb-system-database-warn-level):
1782         New option
1783         (semanticdb-system-db-directory-search-recursed): New state
1784         (semanticdb-load-system-database): Ask if files list is very long
1785         (semanticdb-collect-matching-filenames): Add not-recursive option.
1786
1787         * senator.el:
1788         (semantor-fold-tag, senator-unfold-tag, senator-fold-tag-tooggle):
1789         New commands.
1790         (senator-prefix-map): Add folding commands.
1791         (senator-menu-bar): Add folding commands.
1792
1793 2005-02-03  Eric M. Ludlam  <zappo@gnu.org>
1794
1795         * semantic-fold.el: Folding decoration/mode.
1796
1797         * wisent/Makefile, tests/Makefile (VERSION): Updated version number.
1798
1799         * tests/test.cpp (method1_for_class3):
1800         Added space where completion tests cn occur
1801         (method5_for_class3): Added 'doc' string in comment at top.
1802
1803         * doc/user-guide.texi (semanticdb): Refer to updated install mechanism.
1804         (Semanticdb Search Configuration): Added throttle discussion.
1805         (Semanticdb System Backends): Mention the omniscience throttle key.
1806
1807         * doc/app-dev-guide.texi (top): Add Tag Decoration node
1808         (Tag Decoration): New chapter with several subsections
1809         (Semanticdb Tag Queries): Fixed up first paragraph
1810         Remove path translation.
1811         (DB Results): Change "token" to "tag".
1812         (DB Search Paths): New section
1813
1814         * doc/Makefile, bovine/Makefile (VERSION): Updated version number.
1815
1816         * NEWS: Added folded tags to news.
1817         Fixed name of a function with -nonterminal-
1818         Added info about texi parser.
1819
1820         * Makefile (VERSION): Updated version number.
1821
1822         * Makefile (VERSION): Updated version number.
1823         (example_MISC): Added semanticdb-skel.el
1824
1825         * Project.ede ("semantic"): Update version number.
1826         ("example"): Added semanticdb-skel.el
1827
1828         * semantic-fold.el: A hack for a folding mode with +/- in the fringe.
1829
1830         * semantic-decorate.el (semantic-set-tag-folded, semantic-tag-folded-p):
1831         New functions.
1832         (semantic-set-tag-folded-isearch): New callback
1833
1834 2005-02-02  Eric M. Ludlam  <zappo@gnu.org>
1835
1836         * semanticdb-find.el (semanticdb-find-test-translate-path):
1837         Refer to the throttle
1838         variable in doc string.
1839
1840 2005-02-01  Eric M. Ludlam  <zappo@gnu.org>
1841
1842         * semanticdb-skel.el:
1843         First pass at a skeleton for making new semanticdb system databases.
1844
1845 2005-01-30  Eric M. Ludlam  <zappo@gnu.org>
1846
1847         * semanticdb-el.el (semanticdb-find-default-throttle):
1848         Rename 'omnipotent' to 'omniscience'
1849
1850         * semanticdb-find.el: (semanticdb-find-throttle-custom-list)
1851         (semanticdb-find-default-throttle)
1852         (semanticdb-find-table-for-include-default): Rename 'omnipotent' to
1853         'omniscience', which is a better word.
1854
1855 2005-01-29  Eric M. Ludlam  <zappo@gnu.org>
1856
1857         * bovine/semantic-c.el (semantic-default-c-path):
1858         Add to semantic custom group.
1859
1860         * semantic-load.el (semantic-load-enable-minimum-features): Fix doc
1861
1862         * semanticdb-system.el (semanticdb-load-system-caches):
1863         Don't load backup files.
1864         (semanticdb-load-system-database): Force tag parsing at load
1865         time since this is no longer guaranteed.
1866
1867         * semanticdb-find.el (semanticdb-find-throttle-custom-list):
1868         New variable
1869         (semanticdb-find-default-throttle): New user option.
1870         (semanticdb-find-throttle-active-p): New predicate
1871         (semanticdb-find-translate-path-includes-default):
1872         Only recurse if recursion is enabled.
1873         (semanticdb-find-table-for-include-default):
1874         Add throttling code.
1875         Re-enable old system database loading.
1876         Use new commnds to get system databases if available, then
1877         resort to a normal load.
1878         (semanticdb-find-test-translate-path): Update from Jan's input.
1879
1880         * semanticdb-el.el (semanticdb-find-default-throttle):
1881         Specifiy an Emacs Lisp value.
1882
1883         * semanticdb.el (semanticdb-dump-all-table-summary):
1884         New debugging command.
1885         (semanticdb-file-table-object): When loading a table, make sure
1886         we grab system databases too.
1887
1888 2005-01-28  David Ponce  <david@dponce.com>
1889
1890         * semantic-tag.el (semantic-tag-buffer):
1891         Ensure the tag's overlay is living.
1892
1893         * semantic-fw.el: (semantic-overlay-live-p) [XEmacs]: Align with Emacs'
1894         `overlay-buffer' behavior.
1895
1896 2005-01-20  Eric M. Ludlam  <zappo@gnu.org>
1897
1898         * doc/user-guide.texi (Minor Modes): Update doc to many minor modes.
1899         highlight-by-attribute mode was replaced with decoration mode.
1900         (semanticdb): Update doc with doc-strings, usually by
1901         adding an achor.
1902
1903         * semantic.el (semantic-version): Update to 2.0!  Whoo Hoo!
1904         (semantic-repeat-parse-whole-stream): Add infinite loop detection.
1905
1906         * semantic-cb.el: (semantic-cb-tag)
1907         (semantic-cb-type)
1908         (semantic-cb-add-incomplete-type)
1909         (semantic-cb-new-class-browser)
1910         (semantic-cb-complete-type)
1911         (semantic-cb-convert-type)
1912         (semantic-cb-convert-children)
1913         (initialize-instance)
1914         (semantic-dot*)
1915         (eieio-speedbar-*): Replace all references to TOKEN with TAG.
1916         (semantic-cb-speedbar-key-map): Create an eieio-speedbar-key-map.
1917
1918         * semanticdb.el (semanticdb-current-database-list):
1919         If no roots are found, use the
1920         current directory as the root.
1921
1922 2005-01-20  David Ponce  <david@dponce.com>
1923
1924         * doc/internals.texi (Semanticdb): New section.
1925
1926         * doc/semantic.texi: Copyright update.
1927
1928 2005-01-17  Eric M. Ludlam  <zappo@gnu.org>
1929
1930         * semantic-complete.el (semantic-complete-inline-analyzer):
1931         Allow completion when the
1932         current symbol is empty, but there is an active parent symbol.
1933
1934 2005-01-16  Eric M. Ludlam  <zappo@gnu.org>
1935
1936         * semantic-texi.el (semantic-sb-tag-children-to-expand): Delete.
1937         The semantic support file already does this.
1938
1939         * bovine/semantic-el.el: Fix copyright.
1940
1941 2005-01-13  Eric M. Ludlam  <zappo@gnu.org>
1942
1943         * semantic-edit.el, semantic-grammar.el, semantic-ia.el, semantic-sb.el, semanticdb-find.el:
1944         Fix copyright year listing
1945
1946 2005-01-12  Eric M. Ludlam  <zappo@gnu.org>
1947
1948         * bovine/semantic-el.el (semantic-documentation-for-tag):
1949         For tags with no known
1950         documentation, cheat and snag some from the Emacs environment.
1951
1952         * semanticdb.el (semanticdb-project-root-functions): Update doc.
1953         (semanticdb-current-database-list): Allow prev to return multiple
1954         roots.
1955
1956         * semanticdb-el.el (semanticdb-find-translate-path):
1957         Prevent the systemdb from being
1958         added when we recurse into this fcn.
1959
1960         * semanticdb-find.el (semanticdb-find-test-translate-path): Fix doc
1961         (semanticdb-strip-find-results): Implement previously missing
1962         feature for `find-file-match'.
1963         (semanticdb-find-tags-collector): Reverse return results so they
1964         are in the same order as the input path.
1965
1966         * doc/user-guide.texi (Smart Completion): Added semantic-ia-show-doc
1967
1968         * semantic-ia.el (semantic-ia-sow-doc): New command.
1969
1970         * semantic-sb.el: Update comment/TODO
1971
1972         * semantic-sb.el (semantic-sb-tag-set-buffer, semantic-sb-with-tag-buffer):
1973         New fcn/macro
1974         (semantic-sb-tag-children-to-expand-default)
1975         (semantc-sb-one-button, semantic-sb-insert-details)
1976         (semantic-sb-fetch-tag-table): Wrap calls to override methods
1977         with new macro.
1978
1979 2005-01-12  David Ponce  <david@dponce.com>
1980
1981         * wisent/wisent-grammar-macros.el (wisent-grammar-ALIAS-TAG):
1982         New function.
1983         (semantic-grammar-macros): Add ALIAS-tAG.
1984
1985 2005-01-11  Eric M. Ludlam  <zappo@gnu.org>
1986
1987         * semantic-sb.el (semantic-sb-one-button):
1988         Replace old logic with new override function.
1989
1990         * semantic-grammar.el (semantic-grammar-syntax-help):
1991         Add ALIAS-TAG help.
1992
1993         * doc/lang-support-guide.texi (Incremental Parser Debugging):
1994         Add verbosity flag.
1995
1996         * semantic-edit.el (semantic-edits-verbose-flag): New flag.
1997         (semantic-parse-changes-failed, semantic-edits-incremental-fail)
1998         (semantic-edits-incremental-parser-1): Use above new flag.
1999
2000         * doc/lang-support-guide.texi (Incremental Parser Debugging):
2001         Updated to changes in lisp code.
2002
2003         * semantic-util-modes.el (semantic-show-parser-state-marker):
2004         change state symbol so it is
2005         more visible.
2006
2007         * bovine/bovine-grammar-macros.el (bovine-grammar-ALIAS-TAG): New fcn
2008         (semantic-grammar-macros): Add above.
2009
2010 2005-01-10  David Ponce  <david@dponce.com>
2011
2012         * semantic.el (semantic-parse-region-default):
2013         Try to reuse tokens from inside
2014         collapsed blocks.
2015         (semantic-fetch-tags): Initialize `semantic-lex-block-streams'.
2016
2017         * semantic-lex.el: (semantic-lex-block-streams)
2018         (semantic-lex-block-stack): New variables.
2019         (define-lex): Use them.  Improved error messages.  Handle
2020         unterminated collapsed blocks.
2021         (semantic-lex-start-block, semantic-lex-end-block): New functions.
2022         (semantic-lex-expand-block-specs): New function.
2023         (semantic-lex-push-token): Use it.  Doc fix.
2024
2025 2005-01-07  Eric M. Ludlam  <zappo@gnu.org>
2026
2027         * semantic-html.el: (semantic-html-extract-section-name):
2028         Fix up requires.
2029         Improve robustness of anchor text extraction.
2030
2031 2005-01-06  David Ponce  <david@dponce.com>
2032
2033         * semantic-tag.el: (semantic-tag-new-alias, semantic-tag-alias-class)
2034         (semantic-tag-alias-definition): New functions.
2035
2036 2005-01-06  Eric M. Ludlam  <zappo@gnu.org>
2037
2038         * semantic-util.el:
2039         (semantic-describe-tag, semantic-add-label, semantic-show-label):
2040         Convert "token" names to "tag".
2041
2042 2005-01-05  David Ponce  <david@dponce.com>
2043
2044         * wisent/wisent.el (wisent-production-bounds):
2045         Ensure i doesn't go beyond j.
2046
2047         * bovine/semantic-el.el (defstruct):
2048         Don't put doc string in structure members.  Handle
2049         defstruct name when it is a simple symbol.
2050
2051 2005-01-04  Eric M. Ludlam  <zappo@gnu.org>
2052
2053         * semantic-cb.el (semantic-cb-speedbar-mode):
2054         Force a new class browser to be created
2055         before initializing speedbar.
2056
2057 2004-12-18  Eric M. Ludlam  <zappo@gnu.org>
2058
2059         * semantic-complete.el (semantic-complete-default-to-tag):
2060         Get car of search results.
2061         (semantic-displayor-focus-request): Have match index be 1 based.
2062
2063 2004-12-15  Eric M. Ludlam  <zappo@gnu.org>
2064
2065         * semanticdb-find.el (semanticdb-find-translate-path-brutish-default):
2066         Fix comments
2067         (semanticdb-find-test-translate-path): New command.
2068
2069 2004-12-01  David Ponce  <david@dponce.com>
2070
2071         * senator.el (senator-add-log-tags): Doc fix.
2072         (add-log-current-defun): Process tags in reverse order to examine
2073         the ones closest to point first (thanks to Alan Shutko
2074         <ashutko@express-scripts.com>).  Minor code improvements.
2075
2076 2004-10-26  Eric M. Ludlam  <zappo@gnu.org>
2077
2078         * semantic-fw.el (subst-char-in-string):
2079         Removed previous re-implementation.
2080
2081         * semanticdb-file.el: (semanticdb-file-name-directory):
2082          Use compatible version of subst-char-in-string.
2083
2084         * semantic-fw.el (subst-char-in-string):
2085         New alias/compat function.  Thanks Andrey Slusar.
2086         (semantic-safe): Notes to self.
2087
2088 2004-10-21  David Ponce  <david@dponce.com>
2089
2090         * semantic-imenu.el (working): Require it.
2091         (semantic-imenu-rebuild-directory-indexes): Use
2092         `working-temp-message' to not obscure other important messages.
2093
2094 2004-10-19  David Ponce  <david@dponce.com>
2095
2096         * semantic-fw.el (subst-char-in-string):
2097         Define if not fboundp for compatibility
2098         with XEmacs.
2099
2100 2004-10-14  Eric M. Ludlam  <zappo@gnu.org>
2101
2102         * semantic-ia-sb.el (semantic-ia-sb-key-map): Fix name of info function
2103         (semantic-ia-sb-tag-info): Don't show info for non-tags.
2104         Remove use of old semantic-ia-sb-last-analysis.
2105         (semantic-ia-sb-line-path, semantic-ia-sb-complete):
2106         Remove use of old semantic-ia-sb-last-analysis.
2107
2108 2004-10-05  David Ponce  <david@dponce.com>
2109
2110         * semantic-tag.el (semantic-tag-p): Fix last change.
2111
2112 2004-10-04  David Ponce  <david@dponce.com>
2113
2114         * semantic-tag.el (semantic-tag-p): Return nil if an error occurs.
2115
2116 2004-09-22  David Ponce  <david@dponce.com>
2117
2118         * bovine/skeleton.by (PERIOD):
2119         Replace \\b \\b by \\` \\' in token regexp.
2120
2121         * bovine/make.by: (COLON, PLUS, EQUAL)
2122         (DOLLAR, BACKSLASH): Replace \\b \\b by \\` \\' in token regexp.
2123
2124         * bovine/erlang.by: (HASH, PERIOD, COLON, SEMICOLON, STAR, AMPERSAND)
2125         (DIVIDE, PLUS, MINUS, BANG, WHY, EQUAL, LESS, GREATER)
2126         (COMA, VDE): Replace \\b \\b by \\` \\' in token regexp.
2127
2128         * bovine/c.by: (HASH, PERIOD, COLON, SEMICOLON, STAR, AMPERSAND)
2129         (DIVIDE, PLUS, MINUS, BANG, EQUAL, LESS, GREATER)
2130         (COMA, TILDE): Replace \\b \\b by \\` \\' in token regexp.
2131
2132 2004-09-21  David Ponce  <david@dponce.com>
2133
2134         * NEWS: Add note about Elisp parser improvement.
2135
2136         * bovine/semantic-el.el (semantic-emacs-lisp-lexer): Move.
2137         (semantic-elisp-reuse-form-parser): New function.
2138         (semantic-elisp-setup-form-parser): New function.
2139         (semantic-elisp-use-read): Use it.
2140         (eval-and-compile, eval-when-compile, defun, defun*, defsubst)
2141         (defmacro, define-overload, defvar, defconst, defcustom)
2142         (defface, defimage, autoload, defmethod, defgeneric, defadvice)
2143         (defclass, defstruct, define-lex)
2144         (define-mode-overload-implementation, define-mode-local-override)
2145         (defvar-mode-local, require, provide): Setup form parsers.
2146
2147 2004-09-15  David Ponce  <david@dponce.com>
2148
2149         * wisent/wisent-python.el (wisent-python-forward-line):
2150         Don't use forward-sexp to skip
2151         comment at end of line.
2152         (wisent-python-end-of-block): Include final newline in block.
2153
2154         * wisent/wisent-python.wy:
2155         Reorder and cleanup token declarations to avoid warnings.
2156         Auto-generate symbol, keyword, number, block and punctuation
2157         analyzers.
2158         Use %keyword to declare keywords.
2159         (class_declaration): Fix TYPE-TAG production.
2160         (paren_class_list): Return a list of class names.
2161         (paren_class): Handle dotted name.
2162
2163         * wisent/wisent-python.el: Remove obsolete code and update comments.
2164         Use variable and function names consistent with the library name.
2165         Cleanup and improve lexical analysis code.
2166
2167         (wisent-python-explicit-line-continuation): Remove.
2168         (wisent-python-string-re): Update from python 2.3 specs.
2169         (wisent-python-indent-stack): Rename from
2170         wisent-python-lexer-indent-stack.  Move.  All uses changed.
2171         (semantic-lex-python-pop-indent-stack): Remove.
2172         (wisent-python-implicit-line-joining-p)
2173         (wisent-python-forward-string)
2174         (wisent-python-forward-line-skip-indented)
2175         (wisent-python-end-of-block): New functions.
2176         (wisent-python-scan-lists, scan-lists): Remove.
2177         (wisent-python-forward-line): Rename from python-next-line.
2178         Simplify and make more robust.
2179         (wisent-python-lex-beginning-of-line): Rename from
2180         semantic-lex-python-beginning-of-line.  All uses changed.
2181         Simplify with use of above new functions.  Don't hard code too
2182         much things.
2183         (semantic-lex-python-reset-continued-line): Remove.
2184         (wisent-python-lex-end-of-line): Rename from
2185         semantic-lex-python-newline.  All uses changed.  Does nothing if
2186         implicit line joining.  No more handle what remains in the
2187         indentation stack.
2188         (wisent-python-lex-string): Rename from
2189         semantic-lex-python-string.  All uses changed.  Simplify with use
2190         of wisent-python-forward-string.
2191         (wisent-python-lex-ignore-backslash): Rename from
2192         semantic-lex-python-charquote, simplify.  All uses changed.
2193         (semantic-lex-python-symbol, semantic-lex-python-number)
2194         (semantic-lex-python-blocks): Remove.  Auto-generate.
2195         (wisent-python-lexer): Rename from semantic-python-lexer.  All
2196         uses changed.  Use updated and auto-generated analyzers.
2197         (semantic-parse-region): Remove.
2198         (semantic-lex): Override in python-mode to handle the indentation
2199         stack.
2200         (semantic-get-local-variables): Move.
2201         (wisent-python-default-setup): Set parse-sexp-ignore-comments to
2202         non-nil.  Remove unnecessary code.
2203         (wisent-python-lex-buffer): Code cleanup.
2204
2205         * semantic-lex.el (semantic-lex-init): Code cleanup.
2206         (semantic-lex-unterminated-syntax-protection): Don't catch errors
2207         when debug-on-error is set.
2208         (semantic-lex-catch-errors): Code cleanup.  Print the symbol on
2209         which lexical analysis failed.
2210
2211         * semantic-idle.el (semantic-idle-core-handler):
2212         Ignore non file buffers.  Check here
2213         if the idle scheduler is enabled in current buffer.  Use dolist
2214         and with-current-buffer to simplify the code.
2215         (semantic-idle-scheduler-function): Let a chance to process other
2216         buffers even if the idle scheduler is not enabled in current
2217         buffer.  Ensure to always resume the idle scheduler timer.  Don't
2218         do unnecessary save match data.
2219
2220         * semantic.el (semantic-new-buffer-fcn):
2221         Set semantic-new-buffer-fcn-was-run to
2222         non-nil before calling semantic functions.  Remove unnecessary
2223         call to semantic-parse-tree-set-needs-rebuild.
2224         (semantic-parse-region-default): Fix messages.  Remove obsolete
2225         code and comments.
2226
2227 2004-09-08  David Ponce  <david@dponce.com>
2228
2229         * bovine/semantic-c.el (semantic-tag-abstract-p):
2230         Also check for virtual modifier in
2231         function tag.
2232
2233 2004-08-25  David Ponce  <david@dponce.com>
2234
2235         * wisent/wisent-java.wy (prologue): Define `wisent-java-wy--anons'.
2236         (field_declaration): Include definition of anonymous classes.
2237         (variable_declarator): Handle definition of anonymous classes.
2238         (class_instance_creation_expression): Ditto.
2239
2240         * wisent/wisent-java.el (wisent-java-default-setup): Setup
2241         `semantic-imenu-expandable-tag-classes' to expand types and
2242         variables.
2243
2244         * doc/user-guide.texi (imenu):
2245         Document `semantic-imenu-expandable-tag-classes' in place
2246         of `semantic-imenu-expandable-tag-class'.
2247
2248         * semantic-texi.el (semantic-default-texi-setup): Update to use
2249         `semantic-imenu-expandable-tag-classes'.
2250
2251         * semantic-imenu.el (semantic-imenu-expandable-tag-classes):
2252         Rename from
2253         `semantic-imenu-expandable-tag-class'.  Accept a list of tag
2254         classes.  All uses changed.
2255
2256         * semanticdb.el (semanticdb-file-table-object):
2257         After loading a file, ensure that
2258         the returned DB table contains tags.
2259
2260 2004-08-09  Eric M. Ludlam  <zappo@gnu.org>
2261
2262         * semanticdb-mk.el (toplevel): Remove "compare" message.
2263         Add better per-file message reporting number of toplevel tags.
2264         Fix bug when jumping between subdirectories.
2265
2266 2004-08-04  Eric M. Ludlam  <zappo@gnu.org>
2267
2268         * wisent/wisent-python.el (python-next-line):
2269         Fix hang on unterminated lists.
2270
2271 2004-08-03  Eric M. Ludlam  <zappo@gnu.org>
2272
2273         * semantic-complete.el (initialize-instance):
2274         Make tooltip loading safe.
2275
2276         * semanticdb-mk.el (semanticdb-mk-find-eieio): Deleted.
2277         ("Old setup code"): Replaced with
2278         ("New setup code"): load cedet.el from the usual place for a full seutp.
2279         ("Argument parser"): Stop if there are no files found.
2280
2281         * semanticdb.sh: Add smarter auto-path setup.
2282
2283 2004-07-30  Eric M. Ludlam  <zappo@gnu.org>
2284
2285         * semantic-html.el:
2286         (semantic-html-set-endpoint, semantic-html-recursive-combobulate-list):
2287         Fix locatins still refering to "texinfo" files.
2288
2289         * semanticdb-find.el (semanticdb-find-translate-path-brutish-default):
2290         Update code comments.
2291
2292 2004-07-29  Eric M. Ludlam  <zappo@gnu.org>
2293
2294         * semantic-fw.el (semantic-fw-font-lock-keywords):
2295         Made Emacs 21.2 safe.
2296
2297 2004-07-26  David Ponce  <david@dponce.com>
2298
2299         * doc/grammar-fw.texi (Editing grammars):
2300         Document `semantic-grammar-insert-keyword'.
2301
2302 2004-07-23  Eric M. Ludlam  <zappo@gnu.org>
2303
2304         * bovine/semantic-c.el (semantic-tag-abstract-p):
2305         Fix bug referencing cs.
2306
2307 2004-07-21  Eric M. Ludlam  <zappo@gnu.org>
2308
2309         * NEWS: Added `semantic-decoration-mode'.
2310
2311 2004-07-20  Eric M. Ludlam  <zappo@gnu.org>
2312
2313         * wisent/Makefile (VERSION): Updated to beta3
2314
2315         * tests/test.cpp (method1_for_class3, method4_for_class3):
2316         Various completion tests.
2317
2318         * tests/test.c (funcptr): Test function pointer parsing.
2319
2320         * tests/scopetest.cpp (amethod2):
2321         Added some entries to test completion.
2322
2323         * tests/Makefile, doc/Makefile, bovine/Makefile, Makefile (VERSION):
2324         Updated to beta3
2325
2326         * semantic-fw.el (semantic-compile-warn):
2327         Make sure this alias is evaluated at compile time.
2328
2329         * semantic-grammar.el (semantic-grammar-map, semantic-grammar-menu):
2330         Add
2331         semantic-grammar-insert-keyword function.
2332         (semantic-grammar-insert-keyword): New function.
2333
2334         * semantic.el (semantic-version): Version change.
2335
2336         * Project.ede ("semantic"): Version chane.
2337
2338         * semanticdb-find.el (semanticdb-find-result-test): new function
2339
2340 2004-07-16  Eric M. Ludlam  <zappo@gnu.org>
2341
2342         * semantic-complete.el (semantic-complete-default-to-tag):
2343         Extract tag from find-result-nth
2344         correctly.
2345         (semantic-collector-abstract): Change datatype of
2346         last-all-completions to allow nil.
2347         (semantic-collector-calculate-completions-raw): Break it up so
2348         it is easier to debug.
2349         (semantic-collector-calculate-completions): Only calculate
2350         last-completion slot if there is a value for `completion'.
2351
2352 2004-07-15  Eric M. Ludlam  <zappo@gnu.org>
2353
2354         * semanticdb-file.el (semanticdb-persistent-path): doc fix.
2355
2356         * semantic-ctxt.el (semantic-get-local-variables-default):
2357         Do nothing if there is no
2358         parser table.
2359
2360         * semantic-html.el (html-helper-mode):
2361         Make this a child mode of html-mode.
2362
2363         * semantic.el (semantic-parse-region-default):
2364         Do nothing if the parse table has a
2365         bad value.
2366
2367         * bovine/semantic-c.el: (semantic-tag-expand-function)
2368         (semantic-dependency-include-path)
2369         (semantic-orphaned-member-metaparent-type)
2370         (semantic-symbol->name-assoc-list)
2371         (semantic-symbol->name-assoc-list-for-type-parts)
2372         (imenu-create-index-function)
2373         (semantic-type-relation-separator-character)
2374         (semantic-command-separation-character)
2375         (document-comment-start)
2376         (document-comment-line-prefix)
2377         (document-comment-end)
2378         (senator-step-at-tag-classes): New mode local variables
2379         (semantic-default-c-setup): Removed above from hook.
2380
2381         * bovine/semantic-c.el:
2382         (semantic-format-tag-name, semantic-tag-protection)
2383         (semantic-tag-components, semantic-format-tag-type)
2384         (semantic-format-tag-concise-prototype)
2385         (semantic-format-tag-uml-prototype, semantic-tag-abstract-p)
2386         (semantic-analyze-dereference-metatype)
2387         (semantic-analyze-type-constants): Converted from semantic-c-* to
2388         methods created with `define-mode-local-override'.
2389         (semantic-default-c-setup): Remove old setup code
2390         (c++-mode): Declair as a mode-local child of c-mode.
2391
2392 2004-07-13  Eric M. Ludlam  <zappo@gnu.org>
2393
2394         * INSTALL: Fix numbering issue.
2395
2396 2004-06-29  David Ponce  <david@dponce.com>
2397
2398         * semantic-edit.el (working): Require.
2399         (semantic-parse-changes-failed): Use `working-temp-message'.
2400         (semantic-edits-incremental-fail)
2401         (semantic-edits-incremental-parser)
2402         (semantic-edits-incremental-parser-1): Likewise.
2403
2404         * bovine/semantic-c.el (semantic-c-end-of-macro): New function.
2405         (semantic-lex-c-if): Use it.
2406
2407         * semantic-decorate-mode.el (semantic-decoration-mode):
2408         Add autoload cookie.
2409
2410 2004-06-28  David Ponce  <david@dponce.com>
2411
2412         * semantic-decorate-mode.el (semantic-decoration-styles):
2413         Remove duplicate definition.
2414
2415 2004-06-28  Eric M. Ludlam  <zappo@gnu.org>
2416
2417         * semantic-idle.el: (global-semantic-idle-scheduler-mode)
2418         (define-semantic-idle-service): Added to semantic-modes group.
2419
2420         * semantic-decorate-mode.el (semantic-decoration-styles): Moved
2421         (global-semantic-decoration-mode): Add to semantic-modes group.
2422         (define-semantic-decoration-style): Do not eval-and-compile in the macro.
2423
2424         * semantic-util-modes.el (semantic-modes): New customization group
2425         (global-semantic-highlight-edits-mode)
2426         (global-semantic-show-unmatched-syntax-mode)
2427         (global-semantic-stickyfunc-mode): Add to new customization group.
2428
2429 2004-06-28  David Ponce  <david@dponce.com>
2430
2431         * wisent/wisent-python.el (semantic-get-local-variables): New override.
2432
2433         * semantic-decorate-mode.el (semantic-decoration-styles):
2434         Move before first use and make
2435         available at compilation time.
2436
2437 2004-06-24  David Ponce  <david@dponce.com>
2438
2439         * bovine/Makefile, doc/Makefile, Makefile, tests/Makefile, wisent/Makefile:
2440         Re-generated.
2441
2442         * semantic.el (semantic-new-buffer-fcn):
2443         Don't setup semantic again if buffer is
2444         already semantic-enabled.
2445
2446 2004-06-24  Eric M. Ludlam  <zappo@gnu.org>
2447
2448         * semantic-load.el: (semantic-load-enable-minimum-features)
2449         (semantic-load-enable-code-helpers)
2450         (semantic-load-enable-excessive-code-helpers)
2451         (semantic-load-enable-semantic-debugging-helpers): New functions
2452         toplevel: Remove old enabling code, replace with call
2453         to new functions.
2454
2455         * Makefile (tools_LISP): Includese semantic-decorate-mode.el
2456
2457         * Project.ede: ("tools") Added semantic-decoration-mode.el
2458
2459         * semantic-format.el (semantic-format-tag-custom-list):
2460         Add autoload cookie.
2461
2462         * bovine/semantic-el.el (semantic-format-tag-abbreviate):
2463         Remove trailing space from name.
2464         (semantic-format-tag-prototype): If there are no arguments, remove
2465         trailing space from name.
2466
2467         * semantic-complete.el (semantic-complete-inline-analyzer):
2468         Enable inline completion if there
2469         is only one match, and that match is not the same as the input symbol.
2470
2471 2004-06-22  David Ponce  <david@dponce.com>
2472
2473         * semantic-fw.el (defvar-mode-local, defconst-mode-local):
2474         Remove setup of
2475         lisp-indent-function property now in common/mode-local.el.
2476
2477         * semantic-fw.el (semantic-fw-font-lock-keywords): Add
2478         `define-semantic-decoration-style'.
2479
2480 2004-06-21  David Ponce  <david@dponce.com>
2481
2482         * semantic-fw.el (semantic-compile-warn): New function.
2483         (semantic-alias-obsolete): Use it to issue less intrusive
2484         messages.
2485         (semantic-varalias-obsolete): Ditto.
2486
2487 2004-06-19  Eric M. Ludlam  <zappo@gnu.org>
2488
2489         * semantic-util-modes.el:
2490         Note: The functionality moved to semantic-decoration-mode:
2491
2492         (global-semantic-show-tag-boundaries-mode)
2493         (semantic-show-tag-boundaries-setup)
2494         (semantic-show-tag-boundaries-mode)
2495         (semantic-tag-boundary-p-default)
2496         (semantic-tag-boundary-overlay-p)
2497         (semantic-stb-flush-rogue-boundaries)
2498         (semantic-stb-clear-boundaries)
2499         (semantic-stb-after-full-reparse-hook)
2500         (semantic-stb-reparse-hook)
2501         (semantic-stb-highlight-tag-line1)
2502         (global-semantic-highlight-by-attribute-mode)
2503         (semantic-highlight-by-attribute-setup)
2504         (semantic-highlight-by-attribute-mode)
2505         (semantic-hba-clear-highlighting)
2506         (semantic-hba-reparse-hook)
2507         (semantic-hba-highlight-tag): Deleted functions
2508         (semantic-show-tag-boundaries-mode)
2509         (semantic-highlight-by-attribute-mode): Deleted variables
2510         (global-semantic-show-tag-boundaries-mode)
2511         (semantic-show-tag-boundaries-hook)
2512         (global-semantic-highlight-by-attribute-mode)
2513         (semantic-highlight-by-attribute-hook)
2514         (semantic-highlight-attribute-alist): Deleted custom vars.
2515
2516         * senator.el (senator-register-custom-menu): New function.
2517         (senator-register-mode-menu-entry): Add `custom' argument.
2518         Add customization menu entries to the dynamic list.
2519         (senator-build-mode-sub-menu): Support Customization menu entries.
2520         ("Senator"): Add customize group entry.
2521         ("Highlight changes", "Highlight Unmatched Syntax"):  Add customize face entry
2522         ("Idle Scheduler"): Add entry to customize two variables.
2523         ("Tag Decoration"): New entry.
2524         ("Show Tag Boundaries", "Highlight Tags by attribute"): Deleted.
2525
2526         * doc/lang-support-guide.texi (Parsing a language file):
2527         Add space between paragraphs
2528
2529         * semantic-decorate-mode.el (semantic-decorate-add-decorations):
2530         Support invalid entries in the
2531         styles list.
2532         (semantic-decoration-styles): Enable customization.
2533
2534 2004-06-19  David Ponce  <david@dponce.com>
2535
2536         * doc/lang-support-guide.texi (Parsing a language file): Doc for
2537         `semantic-fetch-available-tags'.
2538
2539 2004-06-18  David Ponce  <david@dponce.com>
2540
2541         * semantic-decorate-mode.el (semantic-decoration-mode-setup): Use
2542         `semantic-fetch-available-tags' to postpone parse till after the
2543         buffer is displayed.
2544
2545         * semantic.el (semantic-fetch-available-tags): New function.
2546
2547 2004-06-17  David Ponce  <david@dponce.com>
2548
2549         * semantic-decorate-mode.el (semantic-decorate, cl): Require.
2550         (semantic-decorate-style-predicate)
2551         (semantic-decorate-style-highlighter)
2552         (semantic-decoration-p)
2553         (semantic-decoration-set-property)
2554         (semantic-decoration-get-property)
2555         (semantic-decoration-set-face)
2556         (semantic-decoration-face)
2557         (semantic-decoration-set-priority)
2558         (semantic-decoration-priority)
2559         (semantic-decoration-move)
2560         (semantic-decorate-tag)
2561         (semantic-decorate-clear-tag)
2562         (semantic-decorate-tag-decoration)
2563         (semantic-decorate-flush-decorations)
2564         (semantic-decorate-clear-decorations)
2565         (semantic-decorate-add-decorations)
2566         (semantic-decorate-tags-after-full-reparse)
2567         (semantic-decorate-tags-after-partial-reparse): New functions.
2568         (semantic-decoration-styles): New variable.
2569         (global-semantic-decoration-mode): Doc fix.
2570         (semantic-decoration-mode-hook): Rename from
2571         `semantic-decoration-hook'.  Callers updated.
2572         (semantic-decoration-mode-setup): Rename from
2573         `semantic-decoration-setup'.  Callers updated.  Use new functions.
2574         (semantic-decoration-mode): Doc fix.
2575         (semantic-decorate-tag-secondary-overlay-p)
2576         (semantic-dso-flush-rogue-overlays)
2577         (semantic-dso-clear)
2578         (semantic-dso-after-full-reparse-hook)
2579         (semantic-decorate-reparse-hook)
2580         (semantic-decoration-primary-alist)
2581         (semantic-decoration-secondary-alist)
2582         (define-semantic-decoration-on-primary-overlay)
2583         (define-semantic-decoration-on-secondary-overlay): Remove.
2584         (semantic-toggle-decoration-style): New command.
2585         (define-semantic-decoration-style): New macro.
2586         (semantic-tag-boundary-face): Doc fix.
2587         (semantic-tag-boundary-p-default): Doc fix and minor code change.
2588         (semantic-tag-boundary-highlight-default): Update doc and code.
2589         (semantic-decoration-on-private-members)
2590         (semantic-decoration-on-private-members-face)
2591         (semantic-decoration-on-private-members-p-default)
2592         (semantic-decoration-on-private-members-highlight-default) Rename
2593         from `semantic-decoration-private-*'.  Update doc and code.
2594         (semantic-decoration-on-protected-members)
2595         (semantic-decoration-on-protected-members-face)
2596         (semantic-decoration-on-protected-members-p-default)
2597         (semantic-decoration-on-protected-members-highlight-default):
2598         Rename from `semantic-decoration-protected-*'.  Update doc and
2599         code.
2600
2601 2004-06-15  David Ponce  <david@dponce.com>
2602
2603         * wisent/wisent-java.wy (formal_parameter): Fix :typemodifiers value.
2604         (local_variable_declaration): Likewise.
2605
2606 2004-06-14  David Ponce  <david@dponce.com>
2607
2608         * semantic-decorate-mode.el (global-semantic-decoration-mode):
2609         Fix :require.
2610
2611 2004-06-13  Eric M. Ludlam  <zappo@gnu.org>
2612
2613         * semantic-decorate-mode.el:
2614         Define a major mode for managing tag decorations.
2615         Define a way for creating decoration styles on the primary overlay.
2616         Define a way for creating decoration styles using a secondary overlay.
2617         Define replacements for defaults in semantic-higlight-by-attribute-mode
2618         and a replacement for semantic-show-tag-boundaries-mode.
2619
2620 2004-06-12  David Ponce  <david@dponce.com>
2621
2622         * semantic-edit.el (semantic-edits-incremental-parser):
2623         Schedule a full re-parse
2624         on error, when `debug-on-error' is not set.
2625
2626 2004-06-11  David Ponce  <david@dponce.com>
2627
2628         * senator.el (senator-minor-mode-setup):
2629         Remove unnecessary `condition-case'.
2630
2631 2004-06-10  Eric M. Ludlam  <zappo@gnu.org>
2632
2633         * senator.el (senator-minor-mode-setup):
2634         Do not parse buffer when enabling senator.
2635
2636         * semantic-util-modes.el (semantic-show-unmatched-syntax-mode-setup):
2637         When enabling the mode,
2638         if the syntax is out of date, do not immediatly display.
2639         (semantic-show-tag-boundaries-mode): Doc fix
2640         (semantic-highlight-by-attribute-mode): Doc fix
2641
2642         * semantic-util-modes.el: Remove History: comment block.
2643
2644         * semantic-idle.el (semantic-idle-scheduler-function):
2645         Wrap body in `save-match-data'
2646
2647 2004-06-09  David Ponce  <david@dponce.com>
2648
2649         * semantic-edit.el (semantic-edits-change-between-tokens):
2650         Fix error on change after
2651         the last tag.
2652         (semantic-parse-changes-failed): Use `throw' instead of `signal'.
2653         (semantic-parse-changes-failed): Remove error condition.
2654         (semantic-edits-incremental-parser-1): Rename from
2655         `semantic-edits-incremental-parser'.  Remove `condition-case'.
2656         (semantic-edits-incremental-parser): Call it safely.
2657
2658         * semantic-edit.el (semantic-parse-changes-failed):
2659         New error condition.
2660         (semantic-parse-changes-failed): New function.
2661         (semantic-edits-incremental-parser): Use it.
2662
2663 2004-06-08  David Ponce  <david@dponce.com>
2664
2665         * semantic-grammar.el (semantic-grammar-create-package):
2666         Use Unix EOLs, so that the
2667         generated file is portable to all platforms.
2668
2669 2004-06-06  David Ponce  <david@dponce.com>
2670
2671         * semantic-idle.el (semantic-idle-summary):
2672         Move (require 'eldoc), which always
2673         returns non-nil, outside of the `or' condition.
2674
2675 2004-05-26  David Ponce  <david@dponce.com>
2676
2677         * wisent/wisent-python.wy (suite): Fix last change.
2678
2679 2004-05-25  David Ponce  <david@dponce.com>
2680
2681         * bovine/Makefile, tests/Makefile, wisent/Makefile, Makefile:
2682         Re-generated to start Emacs with --no-site-file.
2683
2684         * semantic-ede-grammar.el (semantic-ede-grammar-compiler-wisent):
2685         Start Emacs with
2686         --no-site-file option instead of -q.
2687         (semantic-ede-grammar-compiler-bovine): Likewise.
2688
2689 2004-05-22  Eric M. Ludlam  <zappo@gnu.org>
2690
2691         * wisent/wisent-python.wy (suite):
2692         Do not reverse the list of items from the indented block.
2693
2694         * semantic-idle.el (define-semantic-idle-service): Comment fixes.
2695         (semantic-idle-summary): Add require for eldoc in this function.
2696
2697         * semantic-util-modes.el: (semantic-highlight-attribute-face-private)
2698         (semantic-highlight-attibute-face-protected): Convert light background
2699         from an overline to a background color.
2700
2701 2004-05-12  David Ponce  <david@dponce.com>
2702
2703         * semantic.el: (semantic-symbol->name-assoc-list-for-type-parts)
2704         (semantic-expand-nonterminal, semantic--buffer-cache)
2705         (semantic-edits-are-safe, semantic--before-fetch-tags-hook)
2706         (semantic-after-toplevel-bovinate-hook)
2707         (semantic-after-toplevel-cache-change-hook)
2708         (semantic-init-db-hooks, semantic-parse-stream)
2709         (semantic-parse-region, semantic-parse-region-default)
2710         (semantic-clear-toplevel-cache, semantic-working-type)
2711         (semantic-bovinate-from-nonterminal): Doc fix.
2712         (bovinate): Fix message.
2713
2714 2004-05-08  David Ponce  <david@dponce.com>
2715
2716         * semantic.el (semantic-inhibit-functions): New variable.
2717         (semantic-new-buffer-fcn): Use it.
2718
2719 2004-04-29  David Ponce  <david@dponce.com>
2720
2721         * semantic-tag-ls.el (semantic-tag-abstract-p):
2722         Declare with `define-overload'.
2723         (semantic-tag-leaf-p): Likewise.
2724         (semantic-nonterminal-abstract): Make obsolete overload.  Fix alias.
2725         (semantic-nonterminal-leaf): Likewise.
2726         (semantic-tag-abstract-p-default)
2727         (semantic-tag-leaf-p-default)
2728         (semantic-tag-static-p-default): Doc fix.
2729         (semantic-nonterminal-abstract-default)
2730         (semantic-nonterminal-leaf)
2731         (semantic-nonterminal-leaf-default)
2732         (semantic-nonterminal-static-default): Fix alias.
2733
2734         * semantic-tag-file.el (semantic-prototype-file):
2735         Declare with `define-overload'.
2736
2737         * semantic-fw.el:
2738         (semantic-fetch-overload, define-mode-overload-implementation)
2739         (semantic-with-mode-bindings, define-semantic-child-mode): Mark
2740         obsolete.
2741         (semantic-fw-font-lock-keywords): Don't highlight them.
2742
2743         * semantic-analyze.el (semantic-analyze-dereference-metatype):
2744         Declare with
2745         `define-overload'.
2746         (semantic-analyze-type-constants): Likewise.
2747
2748         * semantic-grammar.el: Rename `define-mode-overload-implementation' to
2749         `define-mode-local-override', and `semantic-with-mode-bindings' to
2750         `with-mode-local'.
2751
2752         * bovine/semantic-el.el:
2753         Rename `define-mode-overload-implementation' to
2754         `define-mode-local-override', and `define-semantic-child-mode' to
2755         `define-child-mode'.
2756
2757         * bovine/semantic-java.el, bovine/semantic-make.el, bovine/semantic-scm.el, wisent/wisent-java-tags.el, wisent/wisent-java.el, wisent/wisent-python.el, semantic-html.el, semantic-texi.el, semanticdb-el.el:
2758         Rename `define-mode-overload-implementation' to
2759         `define-mode-local-override'.
2760
2761 2004-04-28  David Ponce  <david@dponce.com>
2762
2763         * bovine/semantic-el.el (semantic-emacs-lisp-overridable-doc): Use
2764         `overload-docstring-extension'.
2765         (semantic-documentation-for-tag): Simplify.
2766         (semantic-insert-foreign-token): Rename to...
2767         (semantic-insert-foreign-tag): The right name.
2768
2769         * senator.el (senator-insert-foreign-tag-default): Rename to...
2770         (semantic-insert-foreign-tag-default): Doc fix.
2771         (senator-insert-foreign-tag): Rename to...
2772         (semantic-insert-foreign-tag): Declare with
2773         `define-overload'.  Doc fix.  Update references.
2774         (semantic-insert-foreign-token): Declare obsolete overload.
2775
2776         * semantic-texi.el (semantic-texi-expand-tag):
2777         Use `semantic-tag-components'.
2778         (semantic-sb-tag-children-to-expand): Likewise.
2779         (semantic-texi-components): Replace by...
2780         (semantic-tag-components): New mode local overload.
2781         (semantic-texi-insert-foreign-tag): Declare as mode local
2782         overload.
2783         (semantic-default-texi-setup): Don't install overrides here.
2784
2785         * semantic-tag-ls.el (semantic-tag-protection):
2786         Declare with `define-overload'.
2787         (semantic-tag-full-name): Likewise.
2788         (semantic-nonterminal-protection): Declare obsolete overload.
2789         (semantic-nonterminal-full-name): Likewise.
2790
2791         * semantic-tag-file.el (semantic-go-to-tag):
2792         Declare with `define-overload'.
2793         (semantic-dependency-tag-file): Likewise.
2794         (semantic-find-nonterminal): Declare obsolete overload.
2795         (semantic-find-dependency): Likewise.
2796
2797         * semantic-idle.el (semantic-eldoc-current-symbol-info): Use
2798         `make-obsolete-overload'.
2799
2800         * semantic-ia-sb.el (semantic-ia-sb-complete): Fix comment.
2801
2802         * semantic-fw.el (mode-local): Require.
2803         (semantic-overload-symbol-from-function): Move.
2804         (semantic-alias-obsolete): Detect and make obsolete overload too.
2805         (semantic-make-obsolete-overload)
2806         (semantic-obsolete-overload): Remove.
2807         (semantic-map-buffers): Use `mode-local-map-file-buffers'.
2808         (semantic-map-mode-buffers): Alias of `mode-local-map-mode-buffers'.
2809         (semantic-set-parent-mode, semantic-get-parent-mode)
2810         (semantic-symbol-table, semantic-bindings-active-mode)
2811         (semantic-new-bindings, semantic-bind, semantic-symbol)
2812         (semantic-symbol-value, semantic-set-local-variable)
2813         (semantic-activate-mode-bindings)
2814         (semantic-deactivate-mode-bindings): Remove.
2815         (semantic-fetch-overload): Alias of `fetch-overload'.
2816         (define-mode-overload-implementation): Alias of
2817         `define-mode-local-override'.
2818         (semantic-with-mode-bindings): Alias of `with-mode-local'.
2819         (define-semantic-child-mode): Alias of `define-child-mode'.
2820         (defvar-mode-local, defconst-mode-local)
2821         (define-overload): Now in mode-local.
2822         (semantic-install-function-overrides): Use `mode-local-bind'.
2823         (semantic--override, semantic--expand-overrides)
2824         (semantic--overload-body, semantic-function-overload-p)
2825         (semantic-overload-docstring-extension)
2826         (semantic-augment-function-help, describe-function)
2827         (semantic-print-binding, semantic-print-bindings)
2828         (semantic-describe-bindings-2, semantic-describe-bindings-1)
2829         (semantic-describe-buffer-bindings)
2830         (semantic-describe-mode-bindings): Remove.
2831         (semantic-fw-font-lock-keywords, edebug-setup-hook): Update.
2832
2833         * semantic.el (semantic-new-buffer-fcn): Remove call to
2834         `semantic-activate-mode-bindings'.
2835         (mode-local-init-hook): Add above to it.
2836         (semantic-changed-mode-buffers)
2837         (semantic-post-change-major-mode-function)
2838         (semantic-change-major-mode-hook-function): Remove.
2839
2840         * semantic-doc.el (semantic-documentation-for-tag):
2841         Declare with `define-overload'.
2842         (semantic-find-documentation): Declare obsolete overload.
2843
2844         * semanticdb-el.el (semanticdb-equivalent-mode):
2845         Use `mode-local-active-mode'.
2846
2847         * semantic-ctxt.el (semantic-up-context):
2848         Declare with `define-overload'.
2849         (semantic-get-local-variables): Likewise.
2850         (semantic-get-local-variables-default): Remove unnecessary
2851         optional argument.  Doc fix.
2852         (semantic-get-local-arguments): Declare with `define-overload'.
2853         Save excursion.  Improve error message.
2854         (semantic-get-local-arguments-default): Remove unnecessary
2855         optional argument.  Doc fix.
2856
2857         * semantic-analyze.el (semantic-analyze-current-context): Declare with
2858         `define-overload'.
2859         (semantic-analyze-possible-completions): Likewise.
2860
2861 2004-04-23  David Ponce  <david@dponce.com>
2862
2863         * semantic-fw.el (semantic-current-bindings): Remove.
2864         (semantic-new-bindings): Just return an empty symbol table.
2865         (semantic-bind): Updated.
2866         (semantic-symbol): Lookup for symbol into buffer local and/or
2867         hierarchy of modes bindings.
2868         (semantic-set-local-variable): Move definition.
2869         (define-mode-overload-implementation): Use
2870         `semantic-overload-symbol-from-function'.  Doc fix.
2871         (semantic-with-mode-bindings): Doc fix.
2872         (semantic-print-bindings, semantic-print-binding)
2873         (semantic-describe-bindings-1, semantic-describe-bindings-2)
2874         (semantic-describe-buffer-bindings): New functions.
2875         (semantic-describe-mode-bindings): New commands.
2876
2877 2004-04-20  David Ponce  <david@dponce.com>
2878
2879         * semantic-idle.el (semantic-idle-summary-current-symbol-info):
2880         New overload.
2881         (eldoc-current-symbol-info): Obsoleted by above overload.
2882         (semantic-idle-summary): Use above new overload.
2883
2884         * semantic-fw.el: (semantic-make-obsolete-overload)
2885         (semantic-obsolete-overload): New function.
2886         (semantic-fetch-overload): Handle obsoleted overloads.
2887         (semantic--override, semantic--expand-overrides)
2888         (semantic--overload-body): New functions.
2889         (define-overload): Use them.
2890         (semantic-fw-font-lock-keywords): Add
2891         `semantic-make-obsolete-overload'.
2892
2893 2004-04-13  David Ponce  <david@dponce.com>
2894
2895         * doc/lang-support-guide.texi, doc/semantic.texi, doc/user-guide.texi, doc/wisent.texi, doc/bovine.texi, doc/grammar-fw.texi, doc/app-dev-guide.texi:
2896         Add a table of contents.
2897
2898 2004-04-11  Eric M. Ludlam  <zappo@gnu.org>
2899
2900         * Makefile (dist): Add autoloads
2901
2902         * semanticdb-system.el (semanticdb-load-system-database):
2903         Fix variable name typo.
2904
2905         * wisent/wisent.el (wisent-production-bounds): New function.
2906
2907 2004-04-06  Eric M. Ludlam  <zappo@gnu.org>
2908
2909         * wisent/wisent-comp.el (wisent-check-$N):
2910         Return non-nil for valid $regionN symbols.
2911         Improve warning message.
2912         (wisent-semantic-action): Only bind referenced $regionN symbols.
2913         Compute $region directly from stack.  Avoid to generate
2914         unnecessary code.
2915
2916         * semantic-lex.el (semantic-lex-push-token):
2917         Do not evaluate 'token twice.
2918
2919 2004-04-06  David Ponce  <david@dponce.com>
2920
2921         * wisent/wisent.el (wisent-production-bounds): New function.
2922
2923         * wisent/wisent-comp.el (wisent-check-$N):
2924         Return non-nil for valid $regionN symbols.
2925         Improve warning message.
2926         (wisent-semantic-action): Only bind referenced $regionN symbols.
2927         Compute $region directly from stack.  Avoid to generate
2928         unnecessary code.
2929
2930         * semantic-lex.el (semantic-lex-push-token): Don't eval TOKEN twice.
2931
2932 2004-04-06  Eric M. Ludlam  <zappo@gnu.org>
2933
2934         * doc/Makefile (clean): Clean all info files.
2935
2936         * Makefile (dist): Distribute the autoload file
2937
2938 2004-04-05  Eric M. Ludlam  <zappo@gnu.org>
2939
2940         * bovine/semantic-c.el (semantic-default-c-setup):
2941         Add modified syntax entries for < > which
2942         are list constituents in newer versions of C++ mode.
2943
2944         * bovine/semantic-c.el (semantic-default-c-setup):
2945         New versions of c++-mode declare < and >
2946         to make a list.  Disable it.
2947
2948 2004-04-01  Eric M. Ludlam  <zappo@gnu.org>
2949
2950         * semantic.el (semantic-bovinate-toplevel):
2951         New function for backward compat.
2952
2953         * bovine/semantic-make.el (semantic-make-expand-tag):
2954         Expand functions and includes the same way.
2955
2956 2004-03-31  David Ponce  <david@dponce.com>
2957
2958         * bovine/semantic-make.el (semantic-make-expand-tag):
2959         Fix according to latest grammar
2960         change.
2961
2962 2004-03-30  Eric M. Ludlam  <zappo@gnu.org>
2963
2964         * doc/Makefile (Documentation_TEXINFOS): Remove duplicate semantic.texi
2965         (all): New names for some info names.
2966         (semantic-user.info, semantic-appdev.info, semantic-langdev.info):
2967         New names.
2968         (clean): Update info garbage pattern.
2969         (dist): New names for some info names.
2970
2971         * doc/Project.ede (Documentation): Remove second copy of semantic.texi
2972
2973         * doc/Makefile (Documentation_TEXINFOS):
2974         Remove second copy of semantic.texi
2975
2976         * doc/Project.ede (Documentation): Remove second copy of semantic.texi
2977
2978         * wisent/wisent.el, wisent/wisent-comp.el (wisent-verbose-flag):
2979         add autoload cookie
2980
2981         * doc/Makefile (images_MISC): New var
2982         (all): Add images
2983         (dist): Include images.
2984
2985         * doc/Project.ede ("images"): new target.
2986
2987 2004-03-30  David Ponce  <david@dponce.com>
2988
2989         * wisent/wisent.el (wisent-parse-verbose-flag): Add autoload cookie.
2990
2991         * wisent/wisent-comp.el (wisent-verbose-flag): Add autoload cookie.
2992
2993         * doc/Makefile: Rebuild.
2994
2995         * doc/Project.ede ("images"): New target.
2996
2997 2004-03-28  David Ponce  <david@dponce.com>
2998
2999         * semantic-grammar.el (semantic-grammar-mode):
3000         Merge `set' and `make-local-variable'.
3001         Make `semantic-format-face-alist' local to buffer.
3002
3003         * wisent/Makefile: Rebuild.
3004
3005         * wisent/Project.ede (taggers): Rename target to "wy".
3006
3007         * wisent/wisent.el ($region, $nterm, $action): Initialize to nil to fix
3008         byte-compiler warnings in dependent libraries.
3009
3010         * semantic-util.el (semantic-file-tag-table):
3011         Remove CHECKCACHE argument.
3012         (semantic-something-to-tag-table): Fix call to above.
3013
3014         * semantic-html.el (semantic-html-recursive-combobulate-list): Use
3015         `assoc-ignore-case'.  `assoc-string' is a new function in GNU
3016         Emacs CVS.
3017
3018 2004-03-28  Eric M. Ludlam  <zappo@gnu.org>
3019
3020         * Makefile (misc_AUX): Add renamelist.txt
3021
3022         * Project.ede ("semantic"): Add renamelist.txt.
3023
3024         * doc/tags.texi (Semantic Tags):
3025         Replace "bovine" type named fns with new names.
3026
3027         * doc/lang-support-guide.texi:
3028         (Language Support Overview, Semantic Parser Structure)
3029         (Writing Lexers, Writing Parsers, Parsing a language file):
3030         (Semantic 1.4 Doc): Replace "bovine" type named fns with new names.
3031
3032         * bovine/semantic-make.el (require):
3033         Add semantic-format and semantic-analyze
3034
3035         * bovine/semantic-c.el (require): Add semantic-tag-ls.
3036
3037         * semantic.el (semantic-fetch-tags): Doc fix.
3038
3039         * semantic-ede-grammar.el (semantic-ede-grammar-compiler-class):
3040         Doc fix.
3041
3042         * semantic-ctxt.el (semantic-get-local-variables): Doc fix
3043
3044         * semantic-complete.el (semantic-displayor-show-request): Note to self.
3045
3046         * renamelist.txt: List of all functions that have been renamed.
3047
3048         * doc/app-dev-guide.texi (Override Methods):
3049         Removed Local Context from override methods list.
3050         (Lexical Safety): Fix ref to semantic-fetch-tags.
3051         (Blocks): Updated all deffn with automatic command.
3052         (Local Variables): same
3053         (Derived Context): same
3054         (Analysis Overview): Teaked the diagram.
3055
3056 2004-03-26  David Ponce  <david@dponce.com>
3057
3058         * wisent/wisent-java.wy:
3059         Major revision of the grammar to support Java 1.5 specifications.
3060
3061         * wisent/wisent-java.el: Code reordered.
3062         (wisent-java-expand-tag)
3063         (semantic-get-local-variables-java-mode): Update for new grammar.
3064         (wisent-java-init-parser-context): New function.
3065         (wisent-java-default-setup): Use it.  Doc fix.
3066         (wisent-java-parse-error): Remove.
3067
3068 2004-03-25  David Ponce  <david@dponce.com>
3069
3070         * wisent/wisent-java.wy (constructor_declaration): Fix typo.
3071
3072         * wisent/wisent-java-tags.wy, wisent/wisent-java.wy (constructor_declaration):
3073         Add :contructor-flag.
3074
3075         * semantic-tag.el (semantic-tag-function-constructor-p): New function.
3076
3077         * doc/wisent.texi (Grammar format): Fix doc and style.  Update example.
3078         (Compiling a grammar): Fix doc and style.
3079         (Grammar Debugging): Ditto.  Add doc for
3080         `wisent-toggle-verbose-flag'.
3081         (Understanding the automaton): Fix style.
3082         (Wisent Parsing): Fix style and doc.  Add variable indexes.
3083         (Writing a lexer): Add variable index.
3084         (Actions goodies): Fix doc.
3085         (Report errors): Add doc for `wisent-message',
3086         `wisent-token-to-string', `wisent-parse-verbose-flag' and
3087         `wisent-parse-toggle-verbose-flag'.
3088         (Error recovery): Fix doc and style.
3089         (Debugging actions): Ditto.
3090         (Wisent Lex): Ditto.
3091
3092 2004-03-24  David Ponce  <david@dponce.com>
3093
3094         * wisent/semantic-wisent.el (wisent-error-function): Default to nil.
3095
3096         * wisent/wisent.el (wisent-char-p): Move here from wisent-comp.el.
3097         (wisent-escape-sequence-strings): New constant.
3098         (wisent-region)
3099         (wisent-pre-parse-hook, wisent-post-parse-hook)
3100         (wisent-loop): Move declaration.
3101         (wisent-parse-verbose-flag): New variable.
3102         (wisent-item-to-string, wisent-token-to-string)
3103         (wisent-parse-toggle-verbose-flag)
3104         (wisent-message): New function.
3105         (wisent-parse-max-stack-size)
3106         (wisent-parse-max-recover)
3107         (wisent-parse-lexer-function)
3108         (wisent-parse-error-function)
3109         (wisent-input, wisent-recovering)
3110         (wisent-errok, wisent-clearin, wisent-abort)
3111         (wisent-parse-action): Doc fix.
3112         ($region, $nterm): Remove default value and doc string.
3113         ($action): New.
3114         (wisent-skip-token): No more inlined. Doc fix. Inform about
3115         skipped token.
3116         (wisent-skip-block): Doc fix.  Return nil.  Inform about skipped
3117         tokens.
3118         (wisent-parse): Use `wisent-message' as default error reporting
3119         function.  Report expected tokens on syntax error.  Inform about
3120         skipped tokens.  Simplify (and fix?) error recovery code.
3121
3122         * wisent/wisent-comp.el (wisent-char-p): Move to from wisent.el.
3123         (wisent-context-name, wisent-reduce-grammar)
3124         (wisent-add-lookback-edge,  wisent-push-token)
3125         (wisent-push-var, wisent-parse-nonterminals)
3126         (wisent-parse-grammar): Fix error messages.
3127         (wisent-struct, wisent-debug-flag, wisent-new-log-flag)
3128         (wisent-verbose-flag, wisent-single-start-flag)
3129         (wisent-append-to-log-file, wisent-TC)
3130         (wisent-initialize-closure): Doc fix.
3131         (wisent-escape-sequence-tags): Remove.
3132         (wisent-tag): Use `wisent-item-to-string' from wisent.el.
3133         (wisent-map-goto): Fix doc and error message.
3134         (wisent-defcontext 'semantic-actions): Add NAME.
3135         (wisent-token-actions): Rename to...
3136         (wisent-state-actions): Fix working message.  Callers updated.
3137         (wisent-goto-actions): Fix working message.
3138         (wisent-check-$N): Include action name in message.
3139         (wisent-semantic-action-expand-body): Doc fix.  Rename $N-LIST
3140         argument to FOUND.
3141         (wisent-semantic-action): Share action name with called functions.
3142
3143         * wisent/wisent-calc.wy (line): Add error recovery rule.
3144
3145         * wisent/wisent-calc.el (wisent-calc):
3146         Use default syntax error reporting function.
3147
3148 2004-03-21  David Ponce  <david@dponce.com>
3149
3150         * wisent/wisent-bovine.el: Renamed to semantic-wisent.el.
3151
3152         * wisent/Makefile: Re-generated.
3153
3154         * wisent/Project.ede (wisent):
3155         Include semantic-wisent instead of wisent-bovine.
3156         Add speedbar to aux packages to ensure that the cedet version of
3157         speedbar will be in the load-path.
3158
3159         * wisent/wisent-java-tags.el, wisent/wisent-python.el, semantic-grammar.el, wisent/wisent-c.el, wisent/wisent-calc.el, wisent/wisent-java.el (semantic-wisent):
3160         Require instead of wisent-bovine.
3161
3162         * wisent/semantic-wisent.el: Renamed from wisent-bovine.el.
3163
3164         * semantic-util-modes.el, semantic-util.el: Commentary fix.
3165
3166         * semantic-sb.el (semantic-sb-fetch-tag-table): Doc fix.
3167
3168         * semantic-imenu.el: (semantic-create-imenu-index)
3169         (semantic-create-imenu-index-1): Doc fix.
3170
3171         * semantic.el (semantic-fetch-tags): Doc fix.
3172         (semantic-bovinate-toplevel): Define as alias of the above.
3173         (semantic-repeat-parse-whole-stream): Doc fix.  Use tag instead
3174         of token.
3175
3176 2004-03-20  Eric M. Ludlam  <zappo@gnu.org>
3177
3178         * bovine/semantic-scm.el (semantic-format): Add compile time require
3179
3180         * bovine/erlang-edoc.el (erlang-edoc--tag-name): Moved and renamed.
3181         (erlang-edoc-inline)
3182         (erlang-edoc-insert-comment-new)
3183         (erlang-edoc-insert-comment)
3184         (erlang-edoc--function-template)
3185         (erlang-edoc--record-template)
3186         (erlang-edoc--strip-arity)
3187         (erlang-edoc--type-specs)
3188         (erlang-edoc--nonterm-comment)
3189         (erlang-edoc): Use new names, such as `semantic-tag-name'.
3190
3191 2004-03-20  David Ponce  <david@dponce.com>
3192
3193         * semantic-grammar-wy.el: Re-generated.
3194
3195         * semantic.el (semantic-bovination-working-type): Fix typo in alias.
3196
3197 2004-03-20  Eric M. Ludlam  <zappo@gnu.org>
3198
3199         * wisent/wisent-grammar.el: (wisent-grammar-setupcode-builder):
3200         Use new names.  See semantic.el V 1.177.
3201
3202         * wisent/wisent-calc.el (wisent-calc):
3203         Use new names.  See semantic.el V 1.177.
3204
3205         * wisent/wisent-bovine.el: (wisent-parse-stream, wisent-parse-region):
3206         Use new names.  See semantic.el V 1.177.
3207
3208         * wisent/Makefile, doc/Makefile (Makefile):
3209         Updated from new EDE sources.
3210
3211         * bovine/semantic-el.el (semantic-toplevel-elisp-bovine-table):
3212         Renamed to
3213         (semantic--elisp-parse-table): new name.
3214         (semantic-toplevel-bovine-table): Renamed mode value to
3215         (semantic--parse-table): New name.
3216
3217         * bovine/semantic-bovine.el (semantic-bovinate-nonterminal-check-obarray):
3218         Moved this here.
3219         (semantic-bovinate-stream): Use new names.  See semantic.el V 1.177.
3220
3221         * bovine/Makefile (Makefile): Updated from new EDE sources.
3222
3223         * bovine/erlang-edoc.el: (erlang-edoc-inline):
3224
3225         * bovine/bovine-grammar.el: (bovine-grammar-setupcode-builder):
3226         Use new names.  See semantic.el V 1.177.
3227
3228         * senator.el: (senator-parse, senator-try-expand-semantic):
3229         Use new names.  See semantic.el V 1.177.
3230
3231         * semantic-util-modes.el: (semantic-show-unmatched-syntax-mode-setup)
3232         (semantic-show-tag-boundaries-setup)
3233         (semantic-highlight-by-attribute-setup):
3234         Use new names.  See semantic.el V 1.177.
3235
3236         * semantic-util.el (semantic-describe-token): Renamed to
3237         (semantic-describe-tag): New name.  Also use new names.
3238         (semantic-file-tag-table)
3239         (semantic-something-to-tag-table)
3240         (semantic-recursive-find-nonterminal-by-name)
3241         (semantic-read-symbol, semantic-add-label, semantic-show-label)
3242         (semantic-hack-search, semantic-sanity-check):
3243         Use new names.  See semantic.el V 1.177.
3244
3245         * semantic-texi.el (semantic-texi-bovinate-headings): Rename to
3246         (semantic-texi-parse-headings): New name.
3247         (semantic-texi-parse-region, semantic-default-texi-setup)
3248         (semantic-texi-find-documentation)
3249         (semantic-texi-update-doc-from-texi)
3250         (semantic-texi-update-doc-from-source)
3251         (semantic-texi-goto-source): Use new names.  See semantic.el V 1.177.
3252
3253         * semantic-tag-file.el (semantic-go-to-tag): Update comments.
3254
3255         * semantic-tag.el: (semantic--tag-unlink-cache-from-buffer)
3256         (semantic--tag-link-cache-to-buffer):
3257         Use new names.  See semantic.el V 1.177.
3258
3259         * semantic-sb.el (semantic-sb-maybe-token-to-button): Doc fix.
3260         (semantic-insert-bovine-list): Rename to
3261         (semantic-sb-insert-tag-table): New name.
3262         (semantic-fetch-dynamic-bovine): Rename to
3263         (semantic-sb-fetch-tag-table): new name.
3264         (semantic-sb-insert-details): Use new names above.
3265         (speedbar-dynamic-tags-function-list): Use new names.  See semantic.el V 1.177.
3266
3267         * semantic-imenu.el: (semantic-create-imenu-index)
3268         (which-function): Use new names.  See semantic.el V 1.177.
3269
3270 2004-03-19  Eric M. Ludlam  <zappo@gnu.org>
3271
3272         * semantic-idle.el: (semantic-idle-scheduler-refresh-tags):
3273         Use new names.  See semantic.el V 1.177.
3274
3275         * semantic-html.el: (semantic-default-html-setup):
3276         Use new names.  See semantic.el V 1.177.
3277
3278         * semantic-grammar-wy.el: (semantic-grammar-wy--install-parser):
3279         Use new names.  See semantic.el V 1.177.
3280
3281         * semantic-grammar.el (semantic-grammar-create-package):
3282         Use new names.  See semantic.el V 1.177.
3283
3284         * semantic-format.el: (semantic-test-all-format-tag-functions):
3285         Use new names.  See semantic.el V 1.177.
3286
3287         * semantic-find.el: (semantic-brute-find-tag-by-position):
3288         Use new names.  See semantic.el V 1.177.
3289
3290         * semantic-example.el (se-jump):
3291         Use new names.  See semantic.el V 1.177.
3292
3293         * semantic-debug.el (semantic-debug):
3294         Use new names.  See semantic.el V 1.177.
3295
3296         * semanticdb-search.el (semanticdb-refresh-table): Update doc string.
3297
3298         * semanticdb-file.el (object-write):
3299         Use new names.  See semantic.el V 1.177.
3300
3301         * semanticdb.el:
3302         (semanticdb-refresh-table, semanticdb-semantic-init-hook-fcn)
3303         (semanticdb-kill-hook): Use new names.  See semantic.el V 1.177.
3304         (semanticdb-post-bovination): Renamed to
3305         (semantic-synchronize-table): New name.
3306         (semanticdb-hooks): Use new name above
3307
3308         * semantic-ctxt.el: (semantic-get-local-variables)
3309         (semantic-get-local-variables-default): Use new names.
3310         See semantic.el V 1.177.
3311
3312         * Makefile: misc_AUX: Add ONEWS.
3313
3314         * Project.ede ("misc"): Add ONEWS.
3315
3316         * document.el (document, document-inline, document-update-comment):
3317         Use new names.
3318         See semantic.el V 1.177.
3319
3320         * semantic-edit.el (semantic-edits-change-function-handle-changes):
3321         Move call to set that
3322         the parse tree needs update up one level.
3323         (semantic-edits-change-between-tokens)
3324         (semantic-edits-change-over-tokens, semantic-edits-incremental-parser)
3325         (semantic-edits-splice-remove, semantic-edits-splice-insert):
3326         Use new names.  See semantic.el V 1.177.
3327
3328         * semantic.el (semantic-after-toplevel-bovinate-hook):
3329         Fix obsoletion call.
3330
3331         * semantic.el (Commentary): Rewrite last paragraph.
3332         (semantic-toplevel-bovine-table): Renamed to
3333         (semantic--parse-table): New name
3334         (semantic-toplevel-bovine-cache): Renamed to
3335         (semantic--buffer-cache): New name
3336         (semantic-edits-are-safe): Doc update
3337         (semantic-bovinate-nonterminal-check-obarray):
3338         Removed to bovine/semantic-bovine.el
3339         (semantic-before-toplevel-bovination-hook): Rename to
3340         (semantic--before-fetch-tags-hook): New name
3341         (semantic-after-toplevel-bovinate-hook): Made obsolete
3342         (semantic-bovine-unmatched-syntax-refresh-needed-p): Renamed to
3343         (semantic--umatched-syntax-needs-refresh-p): New name
3344         (semantic-new-buffer-fcn): Use new names.
3345         (semantic-rebovinate-quickly-hook): Renamed to
3346         (semantic-fetch-tags-fast): New name.
3347         (eval-defun-hooks): Use new function name above.
3348         (semantic-edebug): Doc change.
3349         (bovinate): New doc.  Use new names where apropriate.
3350         (bovinate-debug): Deleted.
3351         (semantic-parse-stream): New names in doc.
3352         (semantic-bovinate-unmatched-syntax): Renamed to
3353         (semantic-unmatched-syntax-tokens): New name.  Use new names.
3354         (semantic-clear-toplevel-cache): Use new names.
3355         (semantic-set-toplevel-bovine-cache): Renamed to
3356         (semantic--set-buffer-cache): New name.  Use new names.
3357         (semantic-bovination-working-type): Renamed to
3358         (semantic-working-type): New name.
3359         (semantic-bovinate-toplevel): Renamed to
3360         (semantic-fetch-tags): New name.
3361         (semantic-repeat-parse-whole-stream): Use new names.
3362
3363         * semanticdb-find.el:
3364         (semanticdb-find-translate-path-includes-default):
3365         Add `semantic-throw-on-input' while looping over include tags.
3366
3367 2004-03-15  David Ponce  <david@dponce.com>
3368
3369         * wisent/wisent-java.wy:
3370         Re-introduce rules to fully parse language constructs.
3371         Add Java 1.4 assert statement.
3372         First attempt to produce tags for declarations inside blocks.
3373
3374         * semantic-lex.el (semantic-lex-preset-default-types):
3375         Fix punctuation regexp.
3376
3377 2004-03-11  David Ponce  <david@dponce.com>
3378
3379         * doc/tags.texi:
3380         Info style fixes.  Use lowercase in @var markups.  Fix doc
3381         strings with renamed tag attributes.
3382
3383         * doc/wisent.texi (Debugging actions): Fix doc string style.
3384         (Iterative style, Bison style): Fix examples with renamed tag
3385         attributes.
3386
3387         * doc/bovine.texi (Optional Lambda Expression):
3388         Fix renamed tag attributes.
3389
3390         * document.el (document-massage-to-texinfo):
3391         Use lowercase in @var markup.
3392
3393 2004-03-11  Eric M. Ludlam  <zappo@gnu.org>
3394
3395         * semantic-grammar.el:
3396         (semantic-ctxt-current-function, semantic-ctxt-current-argument):
3397         New overload implementations.
3398         (semantic-analyze-possible-completions): Use
3399         `semantic-with-mode-bindings' and recurse when in lisp code.
3400
3401         * semantic-format.el: (semantic-test-all-format-tag-functions):
3402         Remove doc about semantic-token->text-functions.
3403
3404         * semantic-example.el (se-show):
3405         Removed ref to semantic-token->text-functions.
3406
3407         * semanticdb-el.el (semanticdb-equivalent-mode): Also pay attention to
3408         `semantic-bindings-active-mode'.
3409         (semanticdb-find-translate-path): New overload for
3410         `emacs-lisp-mode'.  Always includes the system database
3411         since all Emacs programs also include the system database.
3412
3413         * semantic-analyze.el (semantic-analyze-current-context):
3414         make input arg optional.
3415         (semantic-analyze-current-context-default):
3416         Calculate the assignment tag in `condition-case'.
3417         (semantic-analyze-possible-completions-default):
3418         Uniquafy by name instead of by position and name.
3419
3420         * semantic-sb.el: (semantic-sb-tag-children-to-expand)
3421         (semantic-sb-tag-children-to-expand-default):
3422         New override fcn and the default.
3423         (semantic-sb-one-button): Use above to choose to expand a tag.
3424         (semantic-sb-insert-details): If there is no built in way
3425         to show a child details, instead ask it for it's components
3426         and do something smiple to show them.
3427
3428         * semantic-texi.el: (semantic-sb-tag-children-to-expand)
3429         (semantic-ctxt-current-class-list)
3430         (semantic-format-tag-abbreviate, semantic-format-tag-prototype)
3431         (semantic-analyze-current-contet)
3432         (semantic-analyze-possible-completions): New overloads
3433         (semantic-texi-command-completion-list): New variable.
3434
3435         * Makefile (Languages_LISP): Added semantic-html.el
3436         (Makefile): New friendlier message if makefile out of date.
3437
3438         * Project.ede (Languages): Added semantic-html.el.
3439
3440         * NEWS (Smart Completion): New section.
3441         (HTML parser): New section added.
3442         (Makefile parser): Description of smart completion.
3443
3444 2004-03-10  David Ponce  <david@dponce.com>
3445
3446         * wisent/wisent-java.wy:
3447         (goal, class_declaration, interface_declaration)
3448         (constructor_declaration, method_declaration)
3449         (formal_parameter, field_declarations_opt, field_declaration)
3450         (abstract_method_declaration): Rename attributes.
3451
3452         * wisent/wisent-java-tags.wy:
3453         (class_declaration, interface_declaration)
3454         (constructor_declaration, method_declaration)
3455         (formal_parameter, field_declaration): Rename attributes.
3456
3457         * wisent/wisent-java.el (wisent-java-expand-tag): Rename attribute.
3458
3459         * wisent/wisent-c.wy: (declaration, parameter-declaration)
3460         (function-definition): Rename attribute.
3461
3462         * wisent/wisent-c.el (wisent-c-expand-tag): Rename attributes.
3463
3464         * bovine/semantic-el.el: (semantic-elisp-clos-args-to-semantic)
3465         (semantic-elisp-use-read)
3466         (semantic-tag-static-p): Rename attributes.
3467         (semantic-tag-protection): Ditto.  Doc fix.
3468
3469         * bovine/semantic-c.el:
3470         (semantic-expand-c-tag, semantic-c-reconstitute-token)
3471         (semantic-c-reconstitute-template, semantic-c-format-tag-name)
3472         (semantic-c-format-tag-type, semantic-c-tag-template)
3473         (semantic-c-tag-template-specifier)
3474         (semantic-c-analyze-dereference-metatype)
3475         (semantic-c-tag-abstract-p): Rename attributes.
3476
3477         * bovine/erlang.by (macro-def-list): Rename attribute.
3478
3479         * bovine/c.by: (macro-or-include, define, enumsubparts)
3480         (typesimple, template-type, variablearg)
3481         (fun-or-proto-end): Rename attributes.
3482
3483         * semantic-util-modes.el (semantic-tag-boundary-p-default):
3484         Rename attribute.
3485
3486         * semantic-texi.el (semantic-texi-update-doc-from-texi):
3487         Rename attribute.
3488
3489         * semantic-tag.el: (semantic-tag-modifiers)
3490         (semantic-tag-function-throws)
3491         (semantic-tag-function-parent)
3492         (semantic-tag-function-destructor-p)
3493         (semantic-tag-variable-constant-p): Rename attribute.
3494
3495         * semantic-sort.el (semantic-tag-external-member-parent-default):
3496         Rename attribute.
3497         (semantic-tag-external-member-p): Doc fix.
3498
3499         * semantic-format.el (semantic-format-tag-prototype-default):
3500         Rename attributes.
3501         (semantic-format-tag-concise-prototype-default): Ditto.
3502
3503         * semanticdb-el.el (semanticdb-elisp-sym->tag): Rename attribute.
3504
3505         * semantic-analyze.el (semantic-analyze-tag-prototype-p-default):
3506         Rename attribute.
3507
3508         * document.el (document-insert-texinfo): Rename attribute.
3509
3510 2004-03-09  David Ponce  <david@dponce.com>
3511
3512         * doc/bovine.texi (Optional Lambda Expressions): Fix info style.
3513         (Bovine Examples): Fix info style and update examples according to
3514         BY grammar specifications.
3515
3516         * doc/grammar-fw.texi (start Decl): Fix inforef.
3517
3518         * senator.el (senator-isearch-search-fun): New function.
3519         (senator-isearch-mode-hook): Use it when possible.
3520         (boundp 'isearch-search-fun-function): Don't advice built-in
3521         search functions.
3522         (isearch-mode-end-hook): Add `senator-isearch-mode-hook'.
3523
3524 2004-03-08  David Ponce  <david@dponce.com>
3525
3526         * semantic-fw.el (semantic-activate-mode-bindings):
3527         Fix parent modes & mode order.
3528
3529         * semantic-fw.el (semantic-activate-mode-bindings):
3530         Activate mode local bindings
3531         from parent modes.
3532         (semantic-activate-mode-bindings): Deactivate mode local bindings
3533         from parent modes.
3534
3535         * semantic-fw.el (semantic-with-mode-bindings): Call
3536         semantic-[de]activate-mode-bindings with an explicit mode.
3537         (semantic-activate-mode-bindings): Revert previous change.
3538         (semantic-deactivate-mode-bindings): Use current major mode as
3539         default mode.
3540
3541         * semantic-fw.el (semantic-current-bindings): Fix last change.
3542         (semantic-symbol): Don't change the local symbol table when
3543         `semantic-bindings-active-mode' is non-nil.
3544
3545 2004-03-07  Eric M. Ludlam  <zappo@gnu.org>
3546
3547         * semantic-html.el: HTML support.
3548
3549 2004-03-06  Eric M. Ludlam  <zappo@gnu.org>
3550
3551         * semantic-sb.el (semantic-sb-one-button):
3552         Format the string in the context of the
3553         originating buffer.
3554
3555         * semantic-analyze.el: (semantic-analyze-current-context)
3556         (semantic-analyze-possible-completions):
3557         Only execute with the current modified syntax table.
3558
3559         * bovine/semantic-make.el (semantic-ctxt-current-class-list):
3560         Variables can have functions, not
3561         variable parts.
3562         (semantic-format-tag-abbreviate)
3563         (semantic-format-tag-prototype): file -> filename confusion
3564         (semantic-analyze-possible-completions): Only calc file list if
3565         filename is a possible class.
3566
3567         * bovine/semantic-make.el (semantic-default-make-setup):
3568         Add "Files" to assoc list.
3569         (semantic-function-argument-separator): New mode variable
3570         (semantic-ctxt-current-class-list)
3571         (semantic-format-tag-abbreviate)
3572         (semantic-format-tag-prototype)
3573         (semantic-format-tag-concise-prototype)
3574         (semantic-format-tag-uml-prototype)
3575         (semantic-analyze-possible-completions): New override methods.
3576
3577         * bovine/make.by (elements): Splice them together.
3578
3579         * semantic-grammar.el (semantic-grammar-complete):
3580         use `semantic-grammar-in-lisp-p'
3581         (eldoc-current-symbol-info): Renamed
3582         (semantic-idle-summary-current-symbol-info): to this.
3583         (semantic-ctxt-current-class-list): New method.
3584         (semantic-analyze-current-context)
3585         (semantic-analyze-possible-completions): New methods.
3586
3587         * doc/tags.texi (Creating Tags):
3588         Reran defun generation script on some entries.
3589
3590         * doc/app-dev-guide.texi (Override Methods):
3591         Add semantic-with-mode-bindings.
3592
3593         * semantic-ctxt.el (semantic-ctxt-current-class-list-default):
3594         Make robust when there
3595         is not tag under point.
3596
3597         * semantic-fw.el (semantic-bindings-active-mode): New variable
3598         (semantic-current-bindings): Also pay attention to above var.
3599         (semantic-activate-mode-bindings): Do not use major-mode.
3600         (semantic-with-mode-bindings): New macro.
3601
3602         * semantic-analyze.el (semantic-analyze-tags-of-class-list):
3603         New function
3604         (semantic-analyze-possible-completions): Turn input arg to a
3605         context here.
3606         (semantic-analyze-possible-completions-default):
3607         Remove login in above.
3608         Use new fcn above.
3609
3610 2004-03-05  Eric M. Ludlam  <zappo@gnu.org>
3611
3612         * doc/app-dev-guide.texi (Tag Details): Updated defuns via script.
3613         (Local Context): Updated defuns, and added
3614         `semantic-ctxt-current-class-list'.
3615
3616         * semantic-texi.el (semantic-texi-update-doc-from-texi):
3617         Do not accept override-function
3618         tags to insert as doc.  Always look for the original.
3619
3620         * semantic-tag.el (semantic-equivalent-tag-p):
3621         Allow two tags to not have a buffer.
3622
3623         * semantic-ctxt.el (semantic-ctxt-current-class-list):
3624         new override method.
3625         (semantic-ctxt-current-class-list-default): new override implementation.
3626
3627         * bovine/semantic-el.el (semantic-ctxt-current-function):
3628         Don't use built-in anymore.
3629         Find it ourselves.
3630         (semantic-ctxt-current-class-list): New override.
3631
3632         * semantic-analyze.el (semantic-analyze-context):
3633         Added PREFIXCLASS slot.
3634         (semantic-analyze-current-context-default): Find and store the prefixclass
3635         (semantic-analyze-type-constraint): Only calculate on TAG input.
3636         (semantic-analyze-possible-completions): Made into an override method.
3637         (semantic-analyze-possible-completions-default): Old body of above.
3638         Added desired-class filter on output.
3639         (semantic-analyze-princ-sequence): More logical flow.
3640
3641 2004-03-04  Eric M. Ludlam  <zappo@gnu.org>
3642
3643         * semantic-analyze.el: (semantic-analyze-find-tags-by-prefix)
3644         (semantic-analyze-find-tag): Do not require that tags are
3645         only allowed if there is a file.  If a file is there, load it.
3646         (semantic-analyze-find-tag-sequence): Allow non-variables to be found.
3647         (semantic-analyze-calculate-bounds): New function
3648         (semantic-analyze-current-context): Made an override function
3649         (semantic-analyze-current-context-default): Implementation from
3650         above.
3651         (semantic-analyze-princ-sequence): If a non-tag is being displayed,
3652         mark it so it is obvious.
3653
3654         * semantic-idle.el (semantic-idle-summary-out-of-context-faces):
3655         Add string-face.
3656
3657         * bovine/semantic-el.el (semantic-ctxt-current-assignment):
3658         Moved and Implemented.
3659         (semantic-ctxt-current-function): Improved.
3660         (semantic-format-tag-abbreviate, semantic-format-tag-prototype)
3661         (semantic-format-tag-concise-prototype)
3662         (semantic-format-tag-uml-prototype): New implementations.
3663
3664 2004-03-03  David Ponce  <david@dponce.com>
3665
3666         * doc/overview.texi (Overview): Rewrite.
3667         (Semantic Components): Fix typos and style.
3668
3669 2004-03-03  Eric M. Ludlam  <zappo@gnu.org>
3670
3671         * document.el (document-texify-elisp-docstring):
3672         Support `.' as a char after
3673         quoted symbols.
3674
3675 2004-03-03  David Ponce  <david@dponce.com>
3676
3677         * doc/grammar-fw.texi (Overview): Add ref. to sections...
3678         (BY grammars): Add note and ref. to the bovine manual.
3679         (WY grammars): Add note and ref. to the wisent manual.
3680
3681 2004-03-03  Eric M. Ludlam  <zappo@gnu.org>
3682
3683         * semantic-complete.el: (semantic-displayor-window-edges):
3684         eval-AND-compile this block.
3685
3686         * semantic-tag-ls.el:
3687         (semantic-tag-protection, semantic-tag-full-name):
3688         Add 'semantic-overload' property.
3689         (semantic-tag-abstract-p, semantic-tag-leaf-p):
3690         Fix call to default which was renamed.
3691
3692         * doc/lang-support-guide.texi (Tag Structure):
3693         Renamed `semantic-expand-nonterminal' reference to
3694         `semantic-tag-expand-function'.
3695         (Writing Parsers): Added `Parser Backend Support' section.
3696         (Parsing a language file): Removed `semantic-bovinate-stream' as it is
3697         not a 2.0 compatible function.
3698         (Parser Backend Support): New node and subnodes.
3699         (Parser Output tools): Fixed formatting of a keymap table.
3700
3701         * doc/glossary.texi (Glossary): Changed the format.
3702         Added token table.
3703
3704         * bovine/semantic-skel.el (semantic-skeleton-expand-tag): Renamed
3705         (semantic-default-skel-setup): Updated.
3706
3707 2004-03-02  David Ponce  <david@dponce.com>
3708
3709         * doc/user-guide.texi (Contact information for Senator): Remove.
3710
3711         Add common ending nodes.
3712
3713         * doc/semantic.texi (top):
3714         Remove info ref from menu that produce bad URLs in HTML
3715         output.  Move them into...
3716         (Semantic Manuals): New chapter with ref to other manuals.
3717
3718         * doc/semanticheader.texi: Add common settings in this file.
3719         (obsolete): Improve readability.
3720
3721         * doc/lang-support-guide.texi (direntry): Fix typo.
3722         (Compiling): Rename to...
3723         (Parsing a language file): Update definitions.
3724         (Writing Parsers): Add ref. to parser manuals.  Remove from menu.
3725         (Grammar Programming Environment): Add ref. to grammar framework
3726         manual.  Remove duplicated things.
3727         (Parser Output tools): Fix typo.
3728
3729         Add common ending nodes.
3730
3731         * doc/grammar-fw.texi (Editing grammars): Add note about
3732         semantic-grammar-create-package.
3733
3734         * doc/bovine.texi (top): Update.
3735         (%start, %languagemode, %token): Remove.
3736         (Starting Rules): New.
3737         (Bovine Grammar Rules): Update.
3738         (How Lexical Tokens Match)
3739         (Grammar-to-Lisp Details)
3740         (Order of components in rules): New sections.
3741
3742         Add common ending nodes.
3743
3744         * doc/app-dev-guide.texi (top): Fix inforef.
3745
3746         Add common ending nodes.
3747
3748 2004-03-01  David Ponce  <david@dponce.com>
3749
3750         * doc/grammar-fw.texi (languagemode Decl): Use mode1 for consistency.
3751         (Querying grammars): New intro.  Add...
3752         (Grammar Tags, Querying Declarations): New subsections.
3753
3754         * doc/grammar-fw.texi (Editing grammars): Better @inforef.
3755         (Grammar Macros): Typo.
3756         (Adding a new grammar mode): Add...
3757         (Specialized Implementation, Querying grammars): New sections.
3758
3759 2004-03-01  Eric M. Ludlam  <zappo@gnu.org>
3760
3761         * doc/app-dev-guide.texi (Context Analysis):
3762         Added new menu and three sub chapters.
3763
3764         * semantic-format.el (semantic-format-tag-type): Autoload cookie.
3765
3766         * doc/app-dev-guide.texi (Format Tag): Add `semantic-format-tag-type'.
3767
3768         * doc/tags.texi (Tag Basics):
3769         Fix name of `semantic-tag-expand-function'.
3770
3771         * bovine/semantic-el.el (semantic-tag-static): Renamed to
3772         (semantic-tag-static-p): New name.
3773
3774         * bovine/semantic-c.el (semantic-c-tag-abstract): Renamed to
3775         (semantic-c-tag-abstract-p): New name.  Use new name when
3776         deferring to the default.
3777         (semantic-default-c-setup): Use new name above.
3778
3779         * semantic-format.el: (semantic--format-uml-post-colorize)
3780         (semantic-uml-attribute-string): Use new names for
3781         `semantic-tag-abstract-p', `semantic-tag-leaf-p',
3782         `semantic-tag-static-p'.
3783
3784         * semantic-tag-ls.el (semantic-tag-abstract): Renamed to
3785         (semantic-tag-abstract-p): New name
3786         (semantic-tag-abstract-p-default): New name
3787         (semantic-tag-leaf): Renamed to
3788         (semantic-tag-leaf-p): New name.
3789         (semantic-tag-leaf-p-default): New name.
3790         (semantic-tag-static): Renamed to
3791         (semantic-tag-static-p): New name
3792         (semantic-tag-static-p-default): New name
3793
3794         * doc/app-dev-guide.texi (Tag Details):
3795         Updated names of some functions.
3796
3797 2004-02-29  Eric M. Ludlam  <zappo@gnu.org>
3798
3799         * doc/lang-support-guide.texi (Writing Parsers):
3800         Added menu item pointing to Grammar Framework.
3801
3802         * INSTALL: Revamped. We are a part of a CEDET install now.
3803
3804 2004-02-27  David Ponce  <david@dponce.com>
3805
3806         * doc/grammar-fw.texi (use-macros Decl): More things.
3807         (Editing grammars): Add note about
3808         semantic-grammar-find-macro-expander and semanticdb.
3809         (Grammar Macros): More things.
3810         (Common grammar macros): Add ref.
3811
3812 2004-02-26  David Ponce  <david@dponce.com>
3813
3814         * semantic-idle.el (semantic-idle-scheduler-max-buffer-size):
3815         Declare before first
3816         use.  Fix doc string.
3817         (define-semantic-idle-service): Use `eval-and-compile' to have
3818         generated declarations available at compile time.
3819
3820         * semantic-ia-sb.el (semantic-ia-sb-string-list):
3821         Use `semantic-ia-sb-tag-info'
3822         instead of `semantic-ia-sb-token-info'.
3823         (semantic-ia-sb-completion-list): Ditto.
3824         (semantic-ia-sb-tag-info): Use `semantic-analyze-tag-type' instead
3825         of `semantic-analyze-token-type'.
3826
3827         * semantic-complete.el (semantic-displayor-window-edges):
3828         New compatibility function.
3829         (semantic-displayor-point-position): Use it.
3830
3831         * wisent/wisent-grammar.el (wisent-grammar-menu): New variable.
3832         (wisent-grammar-mode): Setup the grammar menu.
3833
3834         * wisent/wisent-comp.el (wisent-toggle-verbose-flag): New command.
3835
3836         * bovine/bovine-grammar.el (bovine-grammar-menu): New variable.
3837         (bovine-grammar-mode): Setup the grammar menu.
3838
3839         * semantic-grammar.el (semantic-grammar-recreate-package): New command.
3840         (semantic-grammar-menu): New variable.
3841         (semantic-grammar-setup-menu-emacs)
3842         (semantic-grammar-setup-menu-xemacs)
3843         (semantic-grammar-setup-menu): New functions.
3844
3845 2004-02-24  Eric M. Ludlam  <zappo@gnu.org>
3846
3847         * semantic-cb.el (semantic-cb-speedbar-buttons):
3848         Do not create a class browser
3849         if one already exists.  Allow a power click to force a refresh.
3850
3851 2004-02-23  David Ponce  <david@dponce.com>
3852
3853         * doc/grammar-fw.texi (Grammar Rules): Fix @inforef.
3854
3855         * semantic-idle.el (semantic-idle-core-handler):
3856         Only re-parse buffers having the
3857         same major mode as the current buffer, before eval of scheduled
3858         services.  Then re-parse other buffers.
3859
3860         * doc/grammar-fw.texi (Grammar Rules):
3861         Add %prec, mid-rule actions and $N values.
3862
3863         * doc/grammar-fw-ov.txt: New diagram.
3864
3865 2004-02-22  Eric M. Ludlam  <zappo@gnu.org>
3866
3867         * semantic-complete.el: Update credits for tooltip displayor.
3868
3869         * semantic-format.el (semantic-format-tag-uml-protection): Update doc.
3870
3871         * bovine/semantic-el.el (semantic-nonterminal-protection): Renamed to
3872         (semantic-tag-protection): new name
3873         (semantic-elisp-nonterminal-static): Renamed to
3874         (semantic-tag-static): new name.
3875
3876         * semantic-ia-sb.el (semantic-ia-sb-last-analysis): Deleted
3877         (semantic-speedbar-analysis): Doc Fix
3878         (semantic-ia-speedbar): Don't use above deleted cache index.
3879
3880         * semantic-tag-ls.el (semantic-tag-calculate-parent-default):
3881         After switching buffers,
3882         add a second `save-excursion' to protect that movement.
3883
3884         * semantic-analyze.el (semantic-analyze-current-context):
3885         Do not cache the data if the
3886         bounds are empty.
3887
3888 2004-02-21  Eric M. Ludlam  <zappo@gnu.org>
3889
3890         * semantic-idle.el (semantic-idle-scheduler-function):
3891         Exit if recursively editing.
3892
3893 2004-02-20  David Ponce  <david@dponce.com>
3894
3895         * semantic-grammar-wy.el: Re-generated.
3896
3897         * semantic-grammar.wy (prologue):
3898         Remove `semantic-grammar-wy--tag-value'.
3899         Define ` semantic-grammar-wy--nterm' and `
3900         semantic-grammar-wy--rindx'.
3901         (put_decl): Simplify semantic actions.
3902         (use_macros_decl): Ditto.
3903         (put_name_list, use_name_list): Return names instead of tags.
3904         (put_value_list): Return values instead of tags.
3905         (put_names): Change tag format.
3906         (put_values, use_names): Ditto.
3907         (nonterminal): Initialize nonterminal name and rule index.
3908         (rule): Rule name based on nonterminal name and rule index.
3909         Increment rule index.  Signal an error on duplicate %prec.
3910
3911 2004-02-19  David Ponce  <david@dponce.com>
3912
3913         * semantic-fw.el (semantic-cache-data-to-buffer):
3914         Use cache-name instead of tag.
3915         Check for errors before to create the overlay.
3916         (semantic-cache-data-post-command-hook): Use `oldcache' in the
3917         loop.
3918         (semantic-get-cache-data): Use cache-name instead of tag.
3919
3920 2004-02-19  Eric M. Ludlam  <zappo@gnu.org>
3921
3922         * bovine/semantic-el.el (semantic-get-local-variables): Implemented it.
3923
3924         * semantic-sort.el (semantic-unique-tag-table):
3925         Support lists mixed tags with and without
3926         buffer positions.
3927
3928         * bovine/semantic-c.el (semantic-c-tag-protection):
3929         If no protection was specified, and
3930         the tag has a class, return public only iff that parent is also
3931         of the 'type class.  This prevents function arguments from
3932         being given a protection string.
3933
3934         * bovine/semantic-el.el (semantic-nonterminal-protection):
3935         Only return 'public for unspecified
3936         protection if there is a parent class.
3937
3938         * semantic-analyze.el (semantic-analyze-current-context):
3939         Use new buffer data cache
3940         to save the calculated context so a second call in the same small
3941         area will be faster.
3942
3943         * semantic-fw.el (semantic-cache-data-overlays): New state variable
3944         (semantic-cache-data-to-buffer, semantic-cache-data-post-command-hook)
3945         (semantic-get-cache-data): New functions
3946         (semantic-test-data-cache): New testing function.
3947
3948 2004-02-18  David Ponce  <david@dponce.com>
3949
3950         * wisent/wisent-bovine.el (wisent-parse-stream):
3951         Use `semantic-safe' to help debugging.
3952         (wisent-parse-region): Likewise.
3953
3954         * semantic-idle.el (semantic-idle-scheduler-enabled-p):
3955         Take into account
3956         `semantic-idle-scheduler-max-buffer-size'.
3957         (semantic-idle-core-handler): New function.
3958         (semantic-idle-scheduler-function): Call it through
3959         `semantic-safe' to help debugging.  Doc fix.
3960         (semantic-idle-scheduler-refresh-tags): Doc fix.
3961
3962         * semantic-fw.el (semantic-safe): New macro.
3963         (semantic-fw-font-lock-keywords): Add
3964         `define-semantic-idle-service'.
3965
3966 2004-02-17  David Ponce  <david@dponce.com>
3967
3968         * document.el (document-update-history): Fix doc string.
3969         (document-update-paramlist): Likewise.
3970
3971         * doc/wisent.texi: Major update to sync. with semantic version 2.
3972
3973 2004-02-16  Eric M. Ludlam  <zappo@gnu.org>
3974
3975         * semantic-complete.el (avoid): No longer required.
3976         (semantic-complete-post-command-hook): Protect against errors.
3977         (initialize-instance::semantic-displayor-tooltip): Do not require avoid.
3978         (semantic-displayor-point-position): New fcn
3979         (semantic-displayor-tooltip-show): Use above.
3980         Reposition mouse pointer by pixel location.
3981
3982 2004-02-16  David Ponce  <david@dponce.com>
3983
3984         * doc/grammar-fw.texi: Don't skip line after @deffn.
3985         (put Decl): Rewrite to look better in HTML output.
3986         (token Decl): Ditto.  Use match-value instead of token-value.
3987
3988         * doc/grammar-fw.texi: Fix cross-references.
3989
3990         * doc/grammar-fw.texi (Grammar outline):
3991         Remove section.  All sub sections promoted.
3992         (Common facilities): Ditto.
3993         (Terminal and Nonterminal Symbols): New section.
3994         (Declarations): Reference it.
3995         (Grammar Rules): Complete.
3996         (Macros): Rename to "Grammar Macros".
3997
3998 2004-02-13  David Ponce  <david@dponce.com>
3999
4000         * bovine/bovine-grammar.el (bovine-grammar-parsetable-builder):
4001         start/scopestart generate
4002         true internal rules.  Use the first grammar rule as default start
4003         rule.  Check some trivial things about grammar correctness.
4004
4005 2004-02-12  Eric M. Ludlam  <zappo@gnu.org>
4006
4007         * doc/bovine.texi (Order of MATCH rules): New section
4008
4009         * tests/Makefile (Tests_AUX): Added scope tests.
4010
4011         * tests/Project.ede: Project file for the test directory.
4012
4013         * tests/scopetest.java, tests/scopetest.cpp: Tests for scope analysis.
4014
4015         * wisent/Makefile (VERSION): Updated.
4016
4017         * doc/Makefile (semantic-grammar_TEXINFOS): New
4018         (dist): Add above.
4019
4020         * doc/Project.ede ("semantic-grammar"): New info file.
4021
4022         * doc/user-guide.texi (semantic-show-parser-state-mode):
4023         Updated from code.
4024
4025         * bovine/Makefile (VERSION): updated.
4026
4027         * NEWS (Obsoletion Strategy): Add about semantic-varalias-obsolete.
4028         (semanticdb-find-*-by-name-for-completion): Renamed as apropriate.
4029         (semantic-idle-*): Updated.
4030
4031         * semantic.el (semantic-version): updated to beta 2.
4032
4033         * Makefile (VERSION): Updated.
4034
4035         * Project.ede (version): Updated.
4036
4037         * semantic-util-modes.el: (semantic-highlight-edits-mode)
4038         (semantic-show-unmatched-syntax-mode): Doc string updates.
4039
4040         * semantic-tag-ls.el (semantic-tag-protected-p): Add autoload cookie.
4041
4042         * semantic-lex.el (semantic-lex-debug): Doc update.
4043
4044         * semantic-idle.el: (semantic-idle-summary-current-symbol-info-brutish)
4045         (semantic-idle-summary-current-symbol-keyword):
4046         Fixed byte compiler warnings.
4047
4048         * semantic-fw.el (semantic-test-throw-on-input): Add another test case.
4049
4050         * semantic-tag.el (cedet-edebug):
4051         New eval-after-load for edebug support.
4052         (semantic--tag-expand): Add message in case of debug call.
4053
4054         * semanticdb-find.el (cedet-edebug):
4055         New eval-after-load for edebug support.
4056
4057         * doc/lang-support-guide.texi (Application API Structure):
4058         Add a menu and menu for:
4059         (Semantic Analyzer Support): Add comment about what should go in this node.
4060         (Debugging): Add large menu, move old content to a section.
4061         (Lexical Debugging, Parser Output tools, Bovine Parser Debugging)
4062         (Wisent Parser Debugging, Overlay Debugging, Incremental Parser Debugging)
4063         (Debugging Analysis): New sections.
4064         (Semantic 1.4 Doc): Location of old Debugging section text.
4065
4066 2004-02-11  David Ponce  <david@dponce.com>
4067
4068         * doc/grammar-fw.texi: Fix direntry.
4069         (Overview): Use a graphic image if possible.
4070         (Adding a new grammar mode): Add function and variable
4071         definitions.
4072
4073         * doc/grammar-fw-ov.dia, doc/grammar-fw-ov.png, doc/grammar-fw-ov.txt:
4074         New file.
4075
4076 2004-02-11  Eric M. Ludlam  <zappo@gnu.org>
4077
4078         * semantic-sort.el (semantic-string-lessp-ci):
4079         Accept a value of t from `compare-strings'.
4080         Thanks Dimitry Gashinsky.
4081
4082 2004-02-10  David Ponce  <david@dponce.com>
4083
4084         * semantic-idle.el (semantic-idle-summary-out-of-context-faces):
4085         New variable.
4086         (semantic-idle-summary-useful-context-p): Use it.
4087
4088 2004-02-10  Eric M. Ludlam  <zappo@gnu.org>
4089
4090         * semantic-sort.el (semantic-unique-tag-table): Fix doc.
4091
4092         * doc/app-dev-guide.texi (Tag Sorting): Add semantic-unique-tag-table.
4093
4094         * semantic-analyze.el (semantic-analyze-tag-prototype-p): New fcn
4095         (semantic-analyze-find-tag): Skip over prototypes, but return
4096         one if there is no real version.
4097
4098         * senator.el (senator-try-expand-semantic): Don't quote 1st arg to
4099         semantic-lex-catch-errors.
4100
4101         * semantic-util-modes.el (semantic-show-parser-state-mode): Doc Update
4102         (semantic-show-parser-state-marker): Show unparseable state.
4103
4104         * semantic-idle.el (semantic-idle-summary-useful-context-p): New fcn
4105         (semantic-idle-summary): Don't show summaries if it's boring.
4106         (semantic-idle-completion-list-default): Don't do completion
4107         if it's boring context.
4108
4109 2004-02-08  Eric M. Ludlam  <zappo@gnu.org>
4110
4111         * semantic-analyze.el: Add vocabulary section.
4112
4113         * semantic-analyze.el (semantic-analyze-tag-type): Comment
4114         (semantic-analyze-inherited-tags): Recurse across all parents.
4115         (semantic-analyze-scoped-tags): Allow each element to find
4116         itself in previously found scopes
4117
4118         * semantic-idle.el (semantic-idle-scheduler-refresh-tags): Fix use of
4119         `semantic-lex-catch-errors'.
4120
4121 2004-02-06  David Ponce  <david@dponce.com>
4122
4123         * semantic-analyze.el (semantic-analyze-find-tags-by-prefix): Use
4124         `semanticdb-strip-find-results' and
4125         `semantic-find-tags-for-completion'.
4126         (semantic-analyze-find-tag): Fix when the TAGCLASS argument is not
4127         provided.
4128
4129 2004-02-06  Eric M. Ludlam  <zappo@gnu.org>
4130
4131         * semantic-complete.el (semantic-complete-try-completion):
4132         Replace old call to `buffer-string'
4133         with `semantic-completion-text'.
4134
4135         * semantic-sort.el: (semantic-unique-tag-table-by-name)
4136         (semantic-unique-tag-table): When sorting, does not modify original
4137         list by side-effect.
4138
4139         * semantic-analyze.el (semantic-analyze-find-tag):
4140         Accept SCOPE tags for additional
4141         searching.  Make TAGCLASS argument work as documented.
4142         (semantic-analyze-inherited-tags)
4143         (semantic-analyze-type-parts): Accept SCOPE tags for additional
4144         searching.
4145         (semantic-analyze-scope-nested-tags): Accept SCOPETYPE argument
4146         for parent data types to search.
4147         (semantic-analyze-scoped-types): Move code so that a parent can be
4148         found in the local scope which is also calculated here.
4149         (semantic-analyze-possible-completions): Pass in the scope from
4150         the context into top level search.
4151
4152 2004-02-05  Eric M. Ludlam  <zappo@gnu.org>
4153
4154         * bovine/semantic-c.el (semantic-c-ctxt-scoped-types): New fcn
4155         (semantic-default-c-setup): Use above.
4156
4157         * semantic-ctxt.el (semantic-ctxt-scoped-types): Update Doc.
4158
4159         * semantic-imenu.el (semantic-imenu-sort-bucket-function):
4160         Add better customization.
4161
4162         * semantic-sort.el (semantic-sort-tag-type): Change token->tag.
4163         (semantic-sort-tokens-by-name-increasing): Renamed to
4164         (semantic-sort-tags-by-name-increasing): new name
4165         (semantic-sort-tokens-by-name-decreasing): Renamed to
4166         (semantic-sort-tags-by-name-decreasing): new name
4167         (semantic-sort-tokens-by-type-increasing): Renamed to
4168         (semantic-sort-tags-by-type-increasing): new name
4169         (semantic-sort-tokens-by-type-decreasing): Renamed to
4170         (semantic-sort-tags-by-type-decreasing): new name
4171         (semantic-sort-tokens-by-name-increasing-ci): Renamed to
4172         (semantic-sort-tags-by-name-increasing-ci): new name
4173         (semantic-sort-tokens-by-name-decreasing-ci): Renamed to
4174         (semantic-sort-tags-by-name-decreasing-ci): new name
4175         (semantic-sort-tokens-by-type-increasing-ci): Renamed to
4176         (semantic-sort-tags-by-type-increasing-ci): new name
4177         (semantic-sort-tokens-by-type-decreasing-ci): Renamed to
4178         (semantic-sort-tags-by-type-decreasing-ci): new name
4179         (semantic-unique-tag-table-by-name): Use new name
4180         (semantic-unique-tag-table): Sort by position first, then unique.
4181
4182         * semantic-analyze.el (semantic-analyze-inherited-tags): Fixed typo.
4183
4184         * semantic-idle.el: (semantic-idle-completion-popup-max-size)
4185         (semantic-idle-completion-popup-list)
4186         (semantic-idle-completion-region-map)
4187         (semantic-idle-completion-TAB)
4188         (semantic-idle-completion-self-insert)
4189         (semantic-idle-create-overlay-with-completion-map)
4190         (semantic-idle-momentary-unoverlay)
4191         (semantic-idle-momentary-overlay-with-completion-map): Deleted.
4192         (semantic-idle-completion-list-default):
4193         Remove old implementation.  Use `semantic-complete-analyze-inline'
4194         instead, and force the popup display if needed.
4195
4196         * semantic-complete.el (semantic-completion-inline-active-p):
4197         New function
4198         (semantic-complete-post-command-hook): Remove auto-display code
4199         (semantic-complete-inline-force-display): New fcn from above.
4200         (semantic-displayor-tooltip::semantic-displayor-show-request):
4201         Force display to only be unique names.
4202         (semantic-complete-inline-analyzer): Don't start up iff there is
4203         nothing useful to display.
4204         (semantic-complete-analyze-inline): Show message if interactive, and
4205         the engine didn't start up.
4206
4207         * semantic-complete.el (semantic-complete-post-command-hook):
4208         Robust to buffer switch.
4209         (semantic-displayor-show-request): Changes to messages output
4210         in the tooltip.
4211
4212         * semantic-sort.el (semantic-unique-tag-table): New fcn.
4213
4214         * semantic-analyze.el: (semantic-analyze-possible-completions):
4215         Make sure all tags in return list are sorted (alphanumerically) and
4216         unique.
4217
4218         * doc/app-dev-guide.texi (top): Renamed below
4219         (Searching Tag Tables): Renamed from "Tag Tables"
4220         (Breadth Search): New section, old content.
4221         (Deep Search, Specialty Search, Custom Search): New sections
4222         (Tag Details)
4223         (Example Programs): Reference "Searching Tag TAbles" by new name.
4224
4225         * semantic-complete.el:
4226         (semantic-displayor-tooltip::semantic-displayor-show-request):
4227         Also test if tooltip mode is active.
4228
4229 2004-02-04  Eric M. Ludlam  <zappo@gnu.org>
4230
4231         * semantic-analyze.el (semantic-analyze-inherited-tags): New fcn
4232         (semantic-analyze-type-parts): Add also inherited tags
4233         (semantic-analyze-scoped-tags): Moved
4234
4235         * semantic-find.el (semantic-find-tags-by-scope-protection): New fcn
4236
4237         * semantic-tag-ls.el (semantic-tag-protected-p): New fcn.
4238
4239 2004-02-03  Eric M. Ludlam  <zappo@gnu.org>
4240
4241         * semantic-analyze.el (semantic-analyze-scope-nested-tags): New fcn
4242         (semantic-analyze-scoped-types): Use above, some logic of which came
4243         from this one.
4244
4245         * semantic-analyze.el (semantic-analyze-find-tag-sequence): Doc fix
4246         (semantic-analyze-scoped-types): Fix nesting error in code.
4247
4248 2004-02-02  David Ponce  <david@dponce.com>
4249
4250         * doc/grammar-fw.texi: Add more things.
4251
4252         * bovine/semantic-java.el (semantic-ctxt-scoped-types):
4253         Don't return tags but names.
4254
4255         * bovine/semantic-java.el (semantic-ctxt-scoped-types):
4256         New override for `java-mode'.
4257
4258 2004-02-02  Eric M. Ludlam  <zappo@gnu.org>
4259
4260         * semantic-complete.el (semantic-complete-inline-overlay): Moved here
4261         (semantic-completion-message): Moved.  Support inline completion.
4262         (semantic-complete-default-to-tag)
4263         (semantic-complete-current-match)
4264         (semantic-complete-do-completion):  Protect completion calculation
4265         from cursor movement.
4266         (semantic-complete-inline-map): Changed several keybindings.
4267         (semantic-complete-inline-quit): New fcn
4268         (semantic-complete-inline-exit): Make interactive
4269         (semantic-complete-post-command-hook): Always popup completions.
4270         (semantic-complete-inline-TAB): non-partial completion.
4271         (semantic-complete-inline-up): Fix typo
4272         (semantic-displayor-tooltip): New parent type.  Enable graceful
4273         degredation of service.  Methods below of this type
4274         (semantic-displayor-show-request): Call to parent class if tooltips
4275         are not available.
4276         (semantic-displayor-scroll-request): New method
4277         (semantic-complete-inline-analyzer): Use tooltips.  Autoload cookie.
4278         (semantic-complete-read-tag-buffer-deep)
4279         (semantic-complete-read-tag-project)
4280         (semantic-complete-read-tag-analyzer)
4281         (semantic-complete-anlyze-and-replace): Add autoload cookies.
4282
4283         * semantic-analyze.el (semantic-analyze-current-context):
4284         Support "" in bounds.
4285         (semantic-analyze-possible-completions): Allow variables or methods
4286         that have a compound data type to be included in completion lists.
4287
4288         * semantic-find.el (semantic-deep-find-tags-by-name): New function.
4289
4290         * semantic-tag.el (semantic-tag-type-compound-p): New fcn
4291
4292 2004-02-01  David Ponce  <david@dponce.com>
4293
4294         * doc/grammar-fw.texi: New grammar framework manual.
4295
4296 2004-01-29  Eric M. Ludlam  <zappo@gnu.org>
4297
4298         * semantic-complete.el (Commentary:):
4299         Updated.  Discuss INLINE completion
4300         (semantic-completion-text, semantic-completion-delete-text):
4301         New function wrappers.
4302         (semantic-complete-read-tag-engine): Doc update.
4303         (semantic-complete-inline-map): New keymap
4304         (semantic-complete-inline-face): New face
4305         (semantic-complete-inline-overlay): New variable
4306         (semantic-complete-inline-text)
4307         (semantic-complete-inline-delete-text)
4308         (semantic-complete-inline-exit)
4309         (semantic-complete-pre-command-hook)
4310         (semantic-complete-post-command-hook)
4311         (semantic-complete-inline-tag-engine): New functions
4312         (semantic-complete-inline-TAB)
4313         (semantic-complete-inline-up)
4314         (semantic-complete-inline-down): New commands
4315         (semantic-complete-current-match)
4316         (semantic-complete-try-completion)
4317         (semantic-complete-do-completion)
4318         (semantic-collector-next-action)
4319         (semantic-displayor-current-focus)
4320         (semantic-displayor-focus-request)
4321         (semantic-complete-inline-analyzer)
4322         (semantic-complete-analyze-and-replace)
4323         (semantic-complete-analyze-inline): Use new wrappers for dealing with
4324         minibuffer text.
4325
4326         * semantic-analyze.el (semantic-analyze-find-nonterminals-by-prefix):
4327         Renamed to
4328         (semantic-analyze-find-tags-by-prefix): New name.
4329         (semantic-analyze-find-nontermials): Renamed to
4330         (semantic-analyze-find-tags): new name.
4331         (semantic-analyze-token-type-to-name): renamed to
4332         (semantic-analyze-tag-type-to-name): new name
4333         (semantic-analyze-token-type): renamed to
4334         (semantic-analyze-tag-type): new name
4335         (semantic-analyze-find-nonterminal-sequence): renamed to
4336         (semantic-analyze-find-tag-sequence): new name
4337         (semantic-analyze-scoped-nonterminals): renamed to
4338         (semantic-analyze-scoped-tags): new name
4339         (semantic-analyze-dereference-metatype)
4340         (semantic-analyze-type-parts)
4341         (semantic-analyze-scoped-types)
4342         (semantic-analyze-context)
4343         (semantic-analyze-context-assignment)
4344         (semantic-analyze-context-functionarg)
4345         (semantic-analyze-context-return)
4346         (semantic-analyze-current-context)
4347         (semantic-analyze-type-constraint)
4348         (semantic-analyze-type-constants)
4349         (semantic-analyze-possible-completions)
4350         (semantic-analyze-summary-function)
4351         (semantic-analyze-pric-sequence): Renamed occurances of "token"
4352         to "tag", and "nonterminal" to "tag".
4353         Also true for renamed fns above.
4354
4355 2004-01-27  Eric M. Ludlam  <zappo@gnu.org>
4356
4357         * senator.el ("Idle Summaries", "Idle Completion"): Fix typos.
4358         (senator-menu-bar): Add narrow-to-tag binding
4359
4360         * semantic-util-modes.el (semantic-show-unmatched-lex-tokens-fetch):
4361         New fcn
4362
4363         * semantic-grammar.el (semantic-grammar-complete): Extend doc.
4364
4365         * semanticdb-file.el (object-write):
4366         Keep the unmatched syntax up to date.
4367         Success is bound to use of `semantic-show-unmatched-syntax-mode'.
4368
4369         * semanticdb.el (semanticdb-post-bovination-unmatched-syntax): Deleted
4370         (semanticdb-hooks): Remove above from list.
4371
4372         * bovine/Makefile (bovinator, languages): --no-site-file
4373
4374         * bovine/c.by (UNDEFINE): New keyword
4375         (define): Add UNDEF support.
4376
4377         * doc/lang-support-guide.texi (Tag Structure): Describe CLASS more.
4378         (Language Support Overview): Moved old comment.  Added new content.
4379         (Semantic Overload Mechanism): New intro.
4380         Describe the default a little more.
4381         Added more about advice.
4382         (Semantic Parser Structure): new
4383         (Application API Structure): New
4384         (Lexer Overview): Typos
4385         (Lexer Construction): Discus deprication of semantic-flex.
4386         Update define-lex.
4387         (Grammar Files): Removed.  This is in the bovine section.
4388         (Grammar Programming Environment): New content.
4389
4390         * doc/bovine.texi (Optional Lambda Expression):
4391         Added details on new TAG macros.
4392
4393         * wisent/Makefile (languages_LISP): Removed wisent-java-lex.el
4394         (tools, wisent, languages): Exclude site-init file.
4395
4396         * wisent/Project.ede ("languages"): Remove wisent-java-lex.el
4397
4398 2004-01-23  David Ponce  <david@dponce.com>
4399
4400         * wisent/wisent-java-lex.el: Remove.  No more used.
4401
4402         * wisent/wisent-grammar.el (wisent-grammar-tokentable-builder):
4403         Remove.  Not more necessary.
4404         (wisent-grammar-mode): Updated.
4405
4406         * wisent/wisent-bovine.el:
4407         (wisent-lex-token-rules, wisent-lex-token-get)
4408         (wisent-lex-match, wisent-flex): Remove.  Obsolete.
4409         (wisent-lex-make-token-table): Alias of
4410         `semantic-lex-make-type-table'.
4411
4412         * semantic-lex.el:
4413         (semantic--lex-delim-spec, semantic--lex-block-specs)
4414         (semantic-lex-block-type): Remove.  No more necessary.
4415         (define-lex-block-type-analyzer): Improve doc string.
4416
4417         * semantic-grammar-wy.el: Re-generated.
4418
4419         * NEWS: Add "Auto-generation of lexical rules" topic.
4420         Use "lexical rule" instead of "single lexical analyzer"
4421         terminology.
4422
4423 2004-01-19  Eric M. Ludlam  <zappo@gnu.org>
4424
4425         * semantic-ede-grammar.el:
4426         (ede-buffer-mine::semantic-ede-proj-target-grammar):
4427         New method.
4428
4429 2004-01-19  David Ponce  <david@dponce.com>
4430
4431         * semantic-grammar-wy.el: Re-generated.
4432
4433         * semantic-grammar.wy:
4434         (<keyword>, <symbol>, <string>, <qlist>, <sexp>, <block>)
4435         (<punctuation>): Declare as types.
4436         (PERCENT_PERCENT): Fix regexp.
4437         (PREFIXED_LIST): Move regexp to <qlist> type syntax.
4438         (PAREN_BLOCK, BRACE_BLOCK): Fix block definition.
4439         (LPAREN, RPAREN): New tokens.
4440         (epilogue): Define `semantic-grammar-lexer' here.
4441
4442         * semantic-grammar.el (semantic-grammar-wy):
4443         Require after specific analyzers.
4444         (semantic-grammar-lex-c-char-re): Move before analyzers.
4445         (semantic-grammar-lex-symbol, semantic-grammar-lex-string)
4446         (semantic-grammar-lex-char, semantic-grammar-lex-blocks)
4447         (semantic-grammar-lex-sexp, semantic-grammar-lex-prefixed-list)
4448         (semantic-grammar-lexer): Remove.  Defined in grammar.
4449
4450 2004-01-18  David Ponce  <david@dponce.com>
4451
4452         * wisent/wisent-java-tags.wy, wisent/wisent-java.wy:
4453         (<block>, <punctuation>, <symbol>, <string>)
4454         (<number>, <keyword>): Use default values in %type declarations.
4455
4456         * semantic-lex.el (semantic-lex-preset-default-types): New function.
4457         (semantic-lex-make-type-table): Use it.
4458
4459         * semantic-grammar-wy.el: Re-generated.
4460
4461         * semantic-grammar.wy (plist_opt): New rule.
4462         (type_decl): Use it.
4463
4464         * semantic-grammar.el (semantic-grammar-token-%type-properties):
4465         Remember types
4466         explicitly declared with a %type statement.
4467         (semantic-grammar-insert-defanalyzer): Generate analyzer for
4468         explicitly declared types.
4469         (semantic-grammar-create-package): Add optional argument force to
4470         unconditionally re-generate Lisp code.
4471
4472 2004-01-16  David Ponce  <david@dponce.com>
4473
4474         * semantic-grammar.el (semantic-grammar--lex-block-specs):
4475         Fix doc and condition-case.
4476
4477         * wisent/wisent-java.wy: Use %keyword to declare keywords.
4478         Automatically generate analyzers used to build the lexer.
4479
4480         (<block>, <punctuation>, <symbol>, <string>)
4481         (<number>, <keyword>): Add %type declaration.
4482         (epilogue): Add lexer declaration.
4483
4484         * wisent/wisent-java.el (require 'wisent-java-lex): Remove.
4485
4486         * semantic-grammar.el (semantic-grammar-insert-defanalyzer):
4487         Fix use of quote in
4488         declaration of regexp analyzer.
4489
4490         * wisent/wisent-java-tags.wy: Use %keyword to declare keywords.
4491         Automatically generate analyzers used to build the lexer.
4492
4493         (<block>, <punctuation>, <symbol>, <string>)
4494         (<number>, <keyword>): Add %type declaration.
4495         (epilogue): Add lexer declaration.
4496
4497         * wisent/wisent-java-tags.el (require 'wisent-java-lex): Remove.
4498
4499         * semantic-lex.el (semantic-lex-make-type-table):
4500         Implicitly create types with
4501         properties but without tokens associated.
4502         (define-lex-keyword-type-analyzer)
4503         (define-lex-sexp-type-analyzer): New macros.
4504
4505         * semantic-grammar.el (semantic-grammar-token-%type-properties):
4506         %type statements
4507         unconditionally declare new types.
4508         (semantic-grammar-token-properties): Updated.
4509         (semantic-grammar-quoted-form): New function.
4510         (semantic-grammar-insert-defanalyzer): Use it to fix use of quote
4511         in analyzer declarations. Enclose type between < > in generated
4512         analyzer name.  Fix conditions that select the type of analyzer to
4513         declare.  Add declaration of sexp and keyword analyzers.
4514         (semantic-grammar-mode-keywords-1): Add highlighting of semantic
4515         keywords.
4516
4517         * semantic-fw.el (semantic-fw-font-lock-keywords): Add new macro names.
4518
4519 2004-01-15  David Ponce  <david@dponce.com>
4520
4521         * tests/gr-test.wy (block):
4522         Remove unnecessary \( and \) delimiters from the syntax
4523         regexp.
4524
4525         * semantic-lex.el (define-lex-string-type-analyzer): Add missing comma.
4526
4527 2004-01-15  Eric M. Ludlam  <zappo@gnu.org>
4528
4529         * semantic-complete.el (semantic-collector-analyze-completions):
4530         New collector class
4531         (semantic-collector-calculate-completions-raw): New method on above.
4532         (semantic-complete-read-tag-buffer-deep)
4533         (semantic-complete-read-tag-project): Fix doc string
4534         (semantic-complete-read-tag-analyzer): New function
4535         (semantic-complete-analyze-inline): New command
4536
4537         * semantic-analyze.el (semantic-analyze-context): Fixed doc strings.
4538         Add :buffer slot.
4539         (semantic-analyze-current-context): Set the :buffer slot in above.
4540
4541         * semantic-idle.el (semantic-idle-scheduler-function):
4542         Move catch inside the condition case.
4543
4544 2004-01-14  David Ponce  <david@dponce.com>
4545
4546         * semantic-grammar.el: Fix last check-in.
4547
4548         * semantic-lex.el: (define-lex-regex-type-analyzer)
4549         (define-lex-string-type-analyzer)
4550         (define-lex-block-type-analyzer): New macros.
4551
4552         * semantic-grammar-wy.el: Re-generated.
4553
4554         * semantic-grammar.wy: Introduce new %type statement.
4555
4556         (TYPE): New keyword.
4557         (decl): Handle type_decl.
4558         (type_decl, plist): New rules.
4559
4560         Fix errors due to use of ill-formed tags in EXPANDFULL mechanism.
4561
4562         (prologue): Define function `semantic-grammar-wy--tag-value'.
4563         (put_decl, use_macros_decl): In semantic actions, use
4564         `semantic-grammar-wy--tag-value' instead of `semantic-tag-name' to
4565         retrieve the value of EXPANDFULL tags.
4566         (put_names, put_values, use_names): Produce valid tags.
4567
4568         * semantic-grammar.el (require 'pp):
4569         Moved to top level.  All callers updated.
4570         (semantic-grammar-token-%type-properties)
4571         (semantic-grammar-token-%put-properties): New functions.
4572         (semantic-grammar-token-properties): Use them.
4573         (semantic-grammar--lex-block-specs): New variable.
4574         (semantic-grammar-insert-define)
4575         (semantic-grammar--lex-delim-spec)
4576         (semantic-grammar--lex-block-specs)
4577         (semantic-grammar-insert-defanalyzer)
4578         (semantic-grammar-insert-defanalyzers): New functions.
4579         (semantic-grammar-create-package): Use the latter.
4580
4581         * tests/gr-test.wy: New file.
4582
4583 2004-01-13  David Ponce  <david@dponce.com>
4584
4585         * doc/wisent.texi (Wisent Parsing): Add `wisent-pre-parse-hook' and
4586         `wisent-post-parse-hook'.
4587         (Error recovery): Add `wisent-abort'.
4588
4589 2004-01-13  Eric M. Ludlam  <zappo@gnu.org>
4590
4591         * doc/user-guide.texi (Idle Summary Mode):
4592         Added `semantic-idle-completions-mode'.
4593
4594         * doc/app-dev-guide.texi (Tag Sorting):
4595         Added `semantic-unique-tag-table-by-name'.
4596
4597         * semantic-idle.el (semantic-idle-completion-region-map):
4598         New binding for TAB
4599         (semantic-idle-completion-TAB): New command
4600         (semantic-idle-complete-self-insert): New command
4601         (semantic-idle-momentary-unoverlay):
4602         Reset `this-command' via keymap.
4603         If self-insert-command is to be run, reset to our own version.
4604
4605         * semantic-ia.el:
4606         (semantic-ia-complete-symbol-menu, semantic-ia-complete-tip):
4607         autoload cookies.
4608
4609         * semantic-idle.el (semantic-idle-scheduler-function):
4610         Wrap idle functions in save-excursion.
4611         Let idle functions run even if there was a lexical failure.
4612         (semantic-idle-summary): Support trailing dots for long lists.
4613         (semantic-idle-completion-region-map): New keymap.
4614         (semantic-idle-create-overlay-with-completion-map)
4615         (semantic-idle-momentary-unoverlay)
4616         (semantic-idle-momentary-overlay-with-completion-map): New fcns
4617         (semantic-idle-completion-list-default): Call above new fcn
4618         to show what the tooltips is for.  Bind TAB to do the completion.
4619
4620 2004-01-12  Eric M. Ludlam  <zappo@gnu.org>
4621
4622         * bovine/semantic-make.el (semantic-get-local-variables):
4623         Override to return nil.
4624
4625         * semantic-ctxt.el:
4626         (semantic-end-of-command-default, semantic-beginning-of-command-default)
4627         (semantic-ctxt-current-symbol-default)
4628         (semantic-ctxt-current-assignment-default)
4629         (semantic-ctxt-current-function-default)
4630         (semantic-ctxt-current-argument-default):
4631         Wrap body in `with-syntax-table' and the lexical syntax table.
4632         That way variables and things are matched the same way the lexer
4633         matches them.
4634
4635 2004-01-12  David Ponce  <david@dponce.com>
4636
4637         * semantic-idle.el (global-semantic-idle-scheduler-mode):
4638         defcustom requires
4639         semantic-idle instead of semantic-util-modes.
4640         (define-semantic-idle-service): Likewise.
4641         (semantic-idle-scheduler-mode): Add autoload cookie.
4642
4643 2004-01-10  Eric M. Ludlam  <zappo@gnu.org>
4644
4645         * semantic-load.el (semantic-idle-completions-mode): Enable as useful.
4646
4647         * semantic-idle.el: (semantic-idle-scheduler-function):
4648         Be sure to loop over the queue of idle functions.
4649         (semantic-idle-summary-current-symbol-info-brutish)
4650         (semantic-idle-summary-current-symbol-keyword):
4651         Do nothing if there was no found thing at point.
4652         (semantic-idle-completion-popup-max-size): New option.
4653         (semantic-idle-completion-popup-list)
4654         (semantic-idle-completion-list-default): New functions
4655         (semantic-idle-completions): New idle service.
4656
4657         * semantic-sort.el (semantic-unique-tag-table-by-name): New function.
4658
4659         * semantic-ctxt.el: (semantic-get-local-variables-default):
4660         Wrap body in `save-excursion'.
4661
4662 2004-01-09  Eric M. Ludlam  <zappo@gnu.org>
4663
4664         * semantic-idle.el (global-semantic-idle-scheduler-mode):
4665         More documentation.
4666         (semantic-idle-scheduler-working-in-modeline-flag): Delete dup.
4667         (semantic-idle-summary-find-current-symbol-tag): More doc.
4668         (semantic-idle-summary-current-symbol-info-brutish): Does some of what
4669         the old print routine did.
4670         (semantic-idle-summary-current-symbol-keyword): Gets info if the
4671         current symbol is a keyword.
4672         (semantic-idle-summary-current-symbol-info-context): New routine
4673         to get a tag based on the current context (see semantic-analyze.el)
4674         (semantic-idle-summary-current-symbol-info-default): Rebuilt to use
4675         a sequence of attempted matches.
4676
4677         * senator.el (senator-menu-bar): Jump menu items.
4678
4679         * semantic-tag-file.el: (semantic-dependency-tag-file):
4680         Setting the buffer to a tag before trying to find the include file
4681         is now optional.  Note to fix in the future.
4682
4683         * semantic-tag.el (semantic-tag-copy):
4684         Do not modify filename/overlay if this tag
4685         does not include a position.
4686
4687         * semantic-grammar.el (eldoc-current-symbol-info):
4688         Use new semantic-idle-summary function
4689         instead of old senator version.
4690
4691         * semanticdb.el (semanticdb-file-table-object): Delete buffers to files
4692         loaded in to refresh a tags table.
4693
4694         * semanticdb-find.el (semanticdb-find-table-for-include-default):
4695         fix typo
4696
4697         * semanticdb-find.el: (semanticdb-find-table-for-include-default):
4698         Use `expand-file-name' instead of `concat'.
4699         Use fname (which we calculated) when loading the table for the
4700         include file.
4701         (semanticdb-find-log-flag, semanticdb-find-log-buffer-name): New var
4702         (semanticdb-find-toggle-logging, semanticdb-reset-log): New commands
4703         (semanticdb-find-log-move-to-end, semanticdb-find-log-new-search)
4704         (semanticdb-find-log-activity): New logging functions.
4705         (semanticdb-find-tags-collector): Use new logging functions.
4706
4707 2004-01-09  David Ponce  <david@dponce.com>
4708
4709         * semantic-load.el:
4710         Add doc directories into `Info-default-directory-list' instead of
4711         `Info-directory-list'.  Use `expand-file-name' to manipulate
4712         directory names.
4713
4714 2004-01-09  Eric M. Ludlam  <zappo@gnu.org>
4715
4716         * NEWS: Add lexical safety note.
4717         Add idle-scheduler related data.
4718
4719         * doc/user-guide.texi (top): Add Idle Scheduler
4720         (Idle Scheduler): New node, new content
4721         (Minor Modes): Remove auto-parser mode and summary mode.
4722
4723         * doc/app-dev-guide.texi (top):
4724         Renamed Parser Hooks to Parser Features.  Added Idle Scheduling
4725         (Parser Features): New name.  Add a menu.
4726         (Parser State): New Node, old content
4727         (Parser Hooks): New Node, old content
4728         (Lexical Safety): New Node with new text
4729         (Idle Scheduling): New node and new content
4730
4731         * semantic-complete.el (semantic-collector-try-completion-whitespace):
4732         Be robust to more
4733         types of non-matching whitespace completion.
4734
4735 2004-01-08  Eric M. Ludlam  <zappo@gnu.org>
4736
4737         * semantic-load.el (Info-directory-list):
4738         Add our directory to the master list.
4739
4740         * doc/Makefile: Regenerated
4741
4742         * doc/Project.ede:
4743         (semantic-user.info, semantic-appdev.info, semantic-langdev.info)
4744         (bovine.info, wisent.info): New manuals split from Documentation.
4745
4746         * doc/wisent.texi, doc/user-guide.texi, doc/tags.texi:
4747         Convert to stand alone manual.
4748
4749         * doc/semantic.texi:
4750         Convert the users guide, developers guide, an lang support guide into
4751         standalong manuals.
4752
4753         * doc/semanticheader.texi: Common macros for semantic manuals.
4754
4755         * doc/lang-support-guide.texi: Convert to stand alone manual.
4756         Add notes in sections written for semantic 1.4 not yet updated.
4757
4758         * doc/installation.texi:
4759         Add details about semantic being a part of CEDET.
4760
4761         * doc/bovine.texi: Convert to stand alone manual.
4762
4763         * doc/app-dev-guide.texi: Convert to stand alone manual.
4764         Add semanticdb search results node.
4765         Fixed a couple typos.
4766
4767 2004-01-08  David Ponce  <david@dponce.com>
4768
4769         * semantic-lex.el (semantic-lex-catch-errors):
4770         Preserve the values of point, mark
4771         and the current buffer.
4772
4773         * senator.el (senator-save-registered-mode-settings): Don't hang when
4774         `customize-save-variable' fails.
4775
4776 2004-01-03  Eric M. Ludlam  <zappo@gnu.org>
4777
4778         * semantic-lex.el (semantic-lex-debug-break): Use `semantic-read-char'.
4779
4780 2003-12-29  Eric M. Ludlam  <zappo@gnu.org>
4781
4782         * senator.el:
4783         (semantor-eldoc-use-color, semantic-eldoc-summary-function)
4784         (senator-find-current-symbol-tag)
4785         (senator-eldoc-print-current-symbol-info-default)
4786         (senator-eldoc-print-current-symbol-info): Deleted
4787         (eldoc-print-current-symbol-info): Deleted advice.
4788         (senator-try-expand-semantic): Catch errors on initial parse.
4789
4790 2003-12-28  Eric M. Ludlam  <zappo@gnu.org>
4791
4792         * semantic.el:
4793         (semantic-parse-tree-unparseable, semantic-parse-tree-unparseable-p):
4794         New functions.
4795         (semantic-new-buffer-fcn-was-run): New variable
4796         (semantic-active-p): Change to use above variable.
4797         (semantic-new-buffer-fcn): Use content of old `semantic-active-p' to
4798         detect activation state.  Set new variable above to t.
4799         (bovinate): Don't show the parse dump buffer if CLEAR set.
4800         (semantic-bovinate-toplevel): Do not parse the buffer it it is
4801         currently set as "unparseable".
4802
4803         * semantic-idle.el (semantic-idle-scheduler-idle-time): Fix doc.
4804         (semantic-before-idle-scheduler-reparse-hooks)
4805         (semantic-after-idle-scheduler-reparse-hooks): Update doc.
4806         (semantic-idle-scheduler-refresh-tags): Remove lexical catch
4807         functions.  Use 'semantic-lex-catch-errors' instead.
4808         (semantic-idle-summary-current-symbol-info-default):
4809         Fix senator references.
4810
4811         * semantic-lex.el (semantic-lex-catch-errors): New macro
4812         (edebug-setup-hook): Support above.
4813
4814 2003-12-23  Eric M. Ludlam  <zappo@gnu.org>
4815
4816         * semanticdb-find.el (semanticdb-find-tags-collector):
4817         Call `semantic-throw-on-input'
4818         between each DB search.
4819
4820         * semantic-idle.el: (smeantic-idle-scheduler-input-function)
4821         (semantic-idle-scheduler-user-input-waiting-p): Deleted
4822         (semantic-idle-scheduler-function): Message on caught errors.
4823         Use `semantic-exit-on-input' macro.
4824
4825         * semantic-fw.el (semantic-varalias-obsolete):
4826         Only emit compatibility warnings on
4827         when byte compiling.
4828         (semantic-current-input-throw-symbol): New var.
4829         (semantic-exit-on-input, semantic-throw-on-input): New macros
4830         (semantic-test-throw-on-input): New test fcn
4831         (edebug-setup-hook): Add `semantic-exit-on-input' edubug support.
4832
4833 2003-12-22  Eric M. Ludlam  <zappo@gnu.org>
4834
4835         * semantic-util-modes.el (global-semantic-auto-parse-mode, semantic-auto-parse-*):
4836         Deleted
4837         (global-semantic-summary-mode, semantic-summary-mode-*): Deleted
4838         (semantic-show-tag-boundaries-mode): Fix start message
4839         (semantic-stb-reparse-hook): Do not delete secondary overlays fcn start.
4840         Add a sanity check to prove that it wasn't needed.
4841
4842         * Makefile: Regenerated from Project.ede;
4843         --no-site-init added to many compile commands.
4844
4845         * Project.ede ("semantic"): Add semantic-idle.el
4846
4847         * semantic-grammar.el (semantic-format-tag-abbreviate):
4848         Renamed from old.
4849         (semantic-tag-boundary-p): New overload method
4850         (semantic-format-tag-summarize): Renamed from old.
4851
4852         * senator.el ("Auto Parse", "Summaries): Delete old menu items
4853         ("Idle Scheduler", "Udle Summaries"): New menu items
4854
4855         * semantic-load.el:
4856         (global-semantic-summary-mode, global-semantic-auto-parse-mode):
4857         Do not initialize.
4858         (global-semantic-idle-scheduler, global-semantic-idle-summary-mode):
4859         Enable these new modes.
4860
4861 2003-12-21  Eric M. Ludlam  <zappo@gnu.org>
4862
4863         * semantic-idle.el (semantic-auto-parse-mode, global-semantic-auto-parse-mode):
4864         New alias
4865         (define-semantic-idle-service): Fix cut & paste errors
4866         (semantic-idle-summary): Add overload symbols.
4867         (semantic-summary-mode, global-semantic-summary-mode): New alias
4868
4869         * semantic-decorate.el (semantic-tag-secondary-overlays): Moved.
4870         (semantic-tag-get-secondary-overlay): New fcn
4871         (semantic-tag-delete-secondary-overlay): Use above
4872
4873 2003-12-19  Eric M. Ludlam  <zappo@gnu.org>
4874
4875         * semantic-util-modes.el (semantic-show-parser-state-mode-setup):
4876         Use idle-scheduler hooks
4877         instead of auto-pase hooks.
4878         (semantic-show-tag-boundaries-setup): Use new hook for
4879         `semantic-after-toplevel-cache-change-hook'
4880         On disble, completely flush all found boundary overlays.
4881         (semantic-tag-boundary-p): doc fix
4882         (semantic-stb-flush-rogue-boundaries): New function
4883         (semantic-stb-after-full-reparse-hook): New function used as hook
4884         (semantic-stb-reparse-hook): Delete boundaries on tags before adding
4885         a new one.
4886
4887         * semantic-idle.el (semantic-idle-scheduler-idle-time):
4888         Change to 2 seconds
4889         (semantic-idle-scheduler-add, semantic-idle-scheduler-remove):
4890         Add autoload cookies
4891         (semantic-idle-scheduler-function): Reparse all buffers.
4892         Manage timers in this routines.
4893         Protect insides from long-jump.
4894         (semantic-idle-scheduler-refresh-tags): Remove timer management.
4895         (define-semantic-idle-service): New macro
4896         (semanticidle-summary-function)
4897         (semantic-idle-summary-find-current-symbol-tag)
4898         (semantic-idle-summary-current-symbol-info-default): New fcns
4899         (semantic-idle-summary): New idle minor mode.
4900
4901 2003-12-18  Eric M. Ludlam  <zappo@gnu.org>
4902
4903         * semantic-idle.el: New file.
4904
4905 2003-12-17  Eric M. Ludlam  <zappo@gnu.org>
4906
4907         * senator.el (senator-prefix-map):
4908         Have senator use the new semantic-complete
4909         jump prompt demos instead of senator-jump. (experiment).
4910
4911         * doc/app-dev-guide.texi (Local Context):
4912         Added semantic-ctxt-current-thing.
4913
4914         * semanticdb-find.el:
4915         (semanticdb-find-results-p, semanticdb-find-result-with-nil-p):
4916         Made tests more accurate.
4917
4918 2003-12-16  David Ponce  <david@dponce.com>
4919
4920         * semantic-grammar-wy.el: Re-generated.
4921
4922         * semantic-grammar.wy:
4923         Introduce new %keyword statement to declare keywords.
4924         Allow use of <token-type> forms in %put statements.
4925
4926         (use_names): Add to start symbols.
4927         (KEYWORD): New keyword.
4928         (DEFAULT-PREC, NO-DEFAULT-PREC, KEYWORD, LANGUAGEMODE)
4929         (LEFT, NONASSOC, PACKAGE, PREC, PUT, QUOTEMODE, RIGHT)
4930         (SCOPESTART, START, TOKEN, USE-MACROS): Declare with %keyword
4931         instead of %token.
4932         (KEYWORDTABLE, OUTPUTFILE, PARSETABLE, SETUPFUNCTION)
4933         (TOKENTABLE): Remove.  Obsolete.
4934         (decl): Add keyword_decl rule.  Remove obsolete rules.
4935         (put_decl): Use put_name rule instead of SYMBOL.
4936         (put_names): Likewise.
4937         (put_name, keyword_decl, use_names): New rules.
4938         (use_name_list): New rule.
4939         (use_macros_decl): Use it.
4940         (keywordtable_decl, outputfile_decl, parsetable_decl)
4941         (setupfunction_decl, tokentable_decl): Remove.  Obsolete.
4942
4943         * semantic-grammar.el (semantic-grammar-lex-symbol):
4944         Accept colon as symbol prefix.
4945         (semantic-grammar-anchored-indentation): Take care of colon used
4946         as symbol prefix.
4947
4948 2003-12-13  Eric M. Ludlam  <zappo@gnu.org>
4949
4950         * semantic-complete.el (semantic-complete-do-completion):
4951         Add 'empty support
4952         (semantic-complete-next-action): fix doc
4953         (semantic-collector-abstract): Change type of last-all-completions
4954         (semantic-collector-next-action): If there are completions, return
4955         empty state.
4956         (semantic-collector-calculate-completions-raw): Put in a db table
4957         instead of nil.
4958         (semantic-collector-try-completion-whitespace): Handle case of exact
4959         matches amongst non exact matches
4960         (semantic-collector-calculate-cache): Put in a db table.
4961
4962 2003-12-11  David Ponce  <david@dponce.com>
4963
4964         * senator.el (senator-eldoc-print-current-symbol-info): Check that
4965         `eldoc-echo-area-use-multiline-p' is defined.
4966
4967 2003-12-11  Eric M. Ludlam  <zappo@gnu.org>
4968
4969         * bovine/semantic-el.el (semantic-ctxt-current-function):
4970         Make sure strings are returned.
4971
4972         * semantic-util-modes.el: (semantic-highlight-attribute-face-private)
4973         (semantic-highlight-attribute-face-protected)
4974         (semantic-highlight-attribute-face-private): New colors.
4975
4976         * NEWS: Fix names search-result -> find-result
4977
4978         * semanticdb-file.el (semanticdb-create-database):
4979         Provde a more intelligent name for new DBs.
4980
4981         * semanticdb.el (object-print): New method
4982
4983         * semantic-cb.el (semantic-cb-new-class-browser): Turn of system DB.
4984         Use `semanticdb-brute-find-tags-by-class' to scan all files in a project.
4985
4986         * semanticdb-find.el (semanticdb-find-result-prin1-to-string):
4987         New debug fcn
4988         (semanticdb-find-tags-by-class): doc fix.
4989         (semanticdb-brute-find-tags-by-class): New fcn
4990
4991         * semantic-complete.el (semantic-collector-calculate-completions):
4992         Add new argument for PREFIX.
4993         (semantic-complete-default-to-tag): Use new arg
4994         (semantic-complete-current-match): Use new arg
4995         (semantic-complete-hack-word-boundaries): New function.
4996         (semantic-complete-do-completion): Use new arg and new fcn
4997         (semantic-complete-try-completion): Support partial completion
4998         of word boundary characters.
4999         (semantic-collector-abstract): Add cache for whitespace completion.
5000         (semantic-collector-next-action): Support whitespace completion
5001         and 'done state.
5002         (semantic-complete-next-action): Doc fix. (see previous)
5003         (semantic-collector-try-completion-whitespace)
5004         (semantic-collect-r-current-whitespace-completion): New fcns
5005
5006 2003-12-10  Eric M. Ludlam  <zappo@gnu.org>
5007
5008         * semantic-lex.el (define-lex): Doc fix.
5009
5010 2003-12-05  David Ponce  <david@dponce.com>
5011
5012         * wisent/wisent-java.wy (PAREN_BLOCK, BRACE_BLOCK, BRACK_BLOCK):
5013         New tokens.
5014
5015         * wisent/wisent-java-tags.wy (PAREN_BLOCK): Change type to <block>.
5016         (BRACE_BLOCK, BRACK_BLOCK): Likewise.
5017
5018         * wisent/wisent-java-lex.el (wisent-java-lex-blocks): Remove.
5019         (wisent-java-tags-lexer): Use `semantic-lex-block-type'.
5020         (wisent-java-lexer): Ditto.
5021
5022         * semantic-lex.el (semantic--lex-block-specs): New variable.
5023         (semantic--lex-delim-spec): New function.
5024         (semantic--lex-block-specs): New function.
5025         (semantic-lex-block-type): New lexical analyzer.
5026
5027 2003-12-04  Eric M. Ludlam  <zappo@gnu.org>
5028
5029         * semantic-complete.el (semantic-complete-current-match):
5030         Account for new return arg of
5031         `semanticdb-find-result-nth'.  Use `semanticdb-find-result-nth-in-buffer'
5032          when getting the final tag to return to the prompt.
5033         (semantic-complete-jump-local): Renamed from below.
5034         (semantic-complete-jump): Uses project level prompt for jumping.
5035
5036         * semantic-complete.el (semantic-complete-choose-default):
5037         Moved to semantic-ctxt.el
5038         (semantic-complete-default-to-tag): Use `semantic-ctxt-current-thing'.
5039         (semantic-displayor-focus-request): Improve focus summary output.
5040         Make tag highlighting more robust to file loading.
5041         Show minibuffer message for position of current cycle, AND
5042         mimic completion on the current minibuffer contents.
5043
5044         * semantic-ctxt.el (semantic-ctxt-current-thing): new function.
5045
5046         * semantic-complete.el (semantic-displayor-focus-next-tag):
5047         Fixed to use new datatype of TABLE.
5048         (semantic-displayor-focus-request): Fixed to also show summaries if a
5049         tag cannot be focused on due to lack of position or lack of buffer.
5050
5051         * semanticdb.el (semanticdb-get-buffer:semanticdb-abstract-table):
5052         New method.
5053         (semanticdb-get-buffer:semanticdb-table): New method.
5054         (semanticdb-set-buffer): Use above.
5055
5056 2003-12-01  David Ponce  <david@dponce.com>
5057
5058         * semantic-lex.el (semantic-lex-make-type-table):
5059         Reset ALIST before processing next
5060         token type spec.
5061
5062 2003-11-29  Eric M. Ludlam  <zappo@gnu.org>
5063
5064         * semanticdb-system.el (semanticdb-create-system-database):
5065         Add autoload cookie.
5066
5067         * semantic-complete.el: (semantic-complete-read-tag-engine):
5068         Replaced setup with something simpler.
5069         Replaced end with single function call.
5070         (semantic-completion-message): Moved
5071         (semantic-complete-active-default): New variable
5072         (semantic-complete-choose-default): Moved
5073         (semantic-complete-default-to-tag): New
5074         (semantic-complete-current-matched-tag): New variable
5075         (semantic-complete-current-match): New fcn
5076         (semantic-complete-done): Moved and simplified.
5077         (semantic-complete-try-completion): Pass extra arg to `semantic-collector-try-completion'
5078         (semantic-complete-do-completion):
5079         Rebind some globals to local variables.
5080         Add implementation for 'scroll action type.
5081         (semantic-complete-next-action): New fcn.
5082         (semantic-collector-abstract): Make 'last-prefix protected.
5083         Rename `match-list' to `current-exact-match'.
5084         (semantic-collector-next-action): Move and simplify.
5085         (semantic-collector-calculate-completions): Differentiate between
5086         single and multiple exact matches vs multiple different matches.
5087         (semantic-collector-current-exact-match): New name.
5088         (semantic-collector-all-completions, semantic-collector-try-completion):
5089         Accept and use new prefix argument.
5090         (semantic-collector-flush): Account for renamed match-list.
5091         (semantic-displayor-abstract): Make table and last-prefix protected.
5092         (semantic-displayor-next-action): Return 'scroll instead of 'focus.
5093         (semantic-displayor-focus-request): Ding
5094         (semantic-displayor-scroll-request): New method
5095         (semantic-displayor-focus-abstract): Make 'focus protected.
5096         (semantic-displayor-next-action): New method.
5097         (semantic-displayor-current-focus): More protection around search.
5098
5099 2003-11-27  Eric M. Ludlam  <zappo@gnu.org>
5100
5101         * semanticdb-el.el: (semanticdb-find-tags-by-name-method)
5102         (semanticdb-find-tags-by-name-regexp-method)
5103         (semanticdb-find-tags-for-completion-method)
5104         (semanticdb-find-tags-by-class-method)
5105         (semanticdb-deep-find-tags-by-name-method)
5106         (semanticdb-deep-find-tags-by-name-regexp-method)
5107         (semanticdb-deep-find-tags-external-children-of-type-method):
5108         Accept new TAGS argument.  Dispatch to superclass if passed in.
5109
5110         * semanticdb-find.el (semanticdb-find-translate-path): Update doc
5111         (semanticdb-find-translate-path-default):
5112         Support find results as a path.
5113         (semanticdb-find-result-nth, semantic-find-result-nth-in-buffer):
5114         Return a cons cell which includes the table the tag was found in.
5115         (semanticdb-find-tags-collector): Handle find results in the path.
5116         (semanticdb-find-tags-by-name, semanticdb-find-tags-by-name-regexp)
5117         (semanticdb-find-tags-for-completion, semanticdb-find-tags-by-class)
5118         (semanticdb-deep-find-tags-by-name, semanticdb-deep-find-tags-by-name-regexp)
5119         (semanticdb-deep-find-tags-for-completion)
5120         (semanticdb-brute-deep-find-tags-by-name)
5121         (semanticdb-find-tags-external-children-of-type):
5122         Lambda expression sent to collector taks a TAGS argument.
5123         (semanticdb-find-tags-by-name-method):
5124         (semanticdb-find-tags-by-for-completion-method)
5125         (semanticdb-find-tags-by-class-method)
5126         (semanticdb-find-deep-tags-by-name-method)
5127         (semanticdb-find-deep-tags-by-name-regexp-method)
5128         (semanticdb-find-deep-tags-by-for-completion-method):
5129         Accept a TAGS argument into the method.  Search that tag list if
5130         passed in.
5131
5132 2003-11-20  Eric M. Ludlam  <zappo@gnu.org>
5133
5134         * semantic-complete.el: Update commentary.
5135         (semantic-complete-read-tag-engine): handle empty match-lists.
5136         handle tags that do not have positions.
5137         Use new semanticdb find results API for tags read from a database.
5138         (semantic-complete-done): Force full recalculation on CR.
5139         (semantic-complete-try-completion): Use new semanticdb find result
5140         api.  make sure minibuffer contents are flushed.
5141         (semantic-collector-abstract): Force the cache to be of :type
5142         semanticdb-find-result-with-nil.
5143         (semantic-collector-get-cache,
5144         semantic-collector-calculate-completions-raw):
5145         New methods.
5146         (semantic-collector-calculate-completions):
5147         Use new accessors.
5148         (semantic-collector-get-match-list, semantic-collector-get-match):
5149         New methods.
5150         (semantic-collector-calculate-cache): Create cache in semanticdb
5151         format.
5152         (semantic-collector-project-abstract): New class.
5153         (semantic-collector-project): New class.
5154         (semantic-collector-calculate-completions-raw): New method on above.
5155         9semantic-collector-project-brutish): New class.
5156         (semantic-collector-calculate-completions-raw): New method on above.
5157         (semantic-displayor-abstract): Use db find result as table type.
5158         (semantic-displayor-current-focus): For above, return nil.
5159         (semantic-displayor-show-request): Use semanticdb-strip-find-results.
5160         (semantic-displayor-focus-abstract): New slot 'find-file-focus'.
5161         (semantic-displayor-current-focus): For above, use semanticdb-find-results-nth.
5162         (semantic-displayor-tradition-with-focus-highlight): Specify
5163         'find-file-focus' slot value as t.
5164         (semantic-complete-read-tag-project): New function
5165         (semantic-complete-test): Change which function is tested here.
5166
5167         * semantic-format.el (semantic-format-tag-protection-symbol-to-string-assoc-list):
5168         New
5169         variable.
5170         (semantic-format-tag-uml-protection-to-string): Now an override
5171         method.
5172         (semantic-format-tag-uml-protection-to-string-default): New function.
5173         Now uses semantic-format-tag-protection-symbol-to-string-assoc-list.
5174
5175         * semantic-texi.el (semantic-texi-associated-files):
5176         Use `semanticdb-get-database-tables' method.
5177
5178         * semantic-imenu.el (semantic-create-imenu-directory-index):
5179         Use `semanticdb-get-database-tables' method.
5180
5181         * semanticdb-search.el:
5182         (semanticdb-find-nonterminal-by-function-method):
5183         Use `semanticdb-get-database-tables' method.
5184
5185         * semanticdb-find.el (semanticdb-find-translate-path-brutish-default):
5186         Use `semanticdb-get-database-tables' method.
5187         (semanticdb-strip-find-results, semanticdb-find-results-p)
5188         (semanticdb-find-results-with-nil-p, semanticdb-find-result-length)
5189         (semanticdb-find-result-nth): New methods
5190         (semanticdb-find-tags-collector): Protect action by `save-excursion'.
5191         (semanticdb-brute-deep-find-tags-for-completion): new function.
5192
5193         * semanticdb-file.el (semanticdb-load-database):
5194         Use `semanticdb-get-database-tables' method.
5195
5196         * semantic-chart.el (semantic-chart-database-size):
5197         Use `semanticdb-get-database-tables' method.
5198
5199         * semanticdb-el.el (semanticdb-file-table): Call new below method.
5200         (emanticdb-get-database-tables): Body was 'semanticdb-file-table'
5201         Table slot either has a value, or is unbound.  It isn't nil.
5202         (semanticdb-elisp-sym-function-arglist): Use eieio function that
5203         returns an arglist.
5204         (semanticdb-elisp-sym->tag): More robust test for 'user-visible'
5205         value of functions.
5206
5207         * semanticdb.el (semanticdb-project-database):
5208         Make the 'tables' slot protected.
5209         Add :accessor `semanticdb-get-database-tables'.
5210         (semanticdb-flush-database-tables): New method
5211         (semanticdb-current-database-list): Make sure `reference-directory'
5212         is bound before using it.
5213         (semanticdb-database-sanity-check): Use
5214         `semanticdb-get-database-tables' method.
5215
5216         * Makefile, wisent/Makefile, wisent/Project.ede, Project.ede, bovine/Makefile, bovine/Project.ede, bovine/semantic-erlang.el, bovine/semantic-make.el, semantic-format.el, semantic-fw.el, semantic-grammar.el, semantic-imenu.el, semantic-regtest.el, semantic-sort.el, semantic-tag.el, semanticdb-file.el, semanticdb-find.el, semanticdb-search.el, semanticdb.el, senator.el:
5217         Merged with cedet-1p0beta1 branch.
5218
5219 2003-11-12  Eric M. Ludlam  <zappo@gnu.org>
5220
5221         * Project.ede ("semantic"): Moved metagrammar after autoloads.
5222
5223 2003-11-10  David Ponce  <david@dponce.com>
5224
5225         * semantic-regtest.el: Fix wrong line endings.
5226
5227         * semantic-grammar.el: XEmacs needs font-lock at runtime.
5228         (semantic-grammar-item-value): Handle characters as integers in
5229         XEmacs to fix `pp-to-string' "Unbalanced parentheses" errors.
5230         (semantic-grammar-package): Don't use `replace-match' which have a
5231         different behavior in XEmacs and GNU Emacs.
5232         (semantic-grammar-batch-build-one-package): Use
5233         `byte-compile-file' instead of `batch-byte-compile-file' which is
5234         undefined in XEmacs.
5235
5236         * semantic-fw.el (semantic-varalias-obsolete):
5237         Take care of `defvaralias' failures.
5238         For example, XEmacs don't permit to alias a buffer local variable.
5239
5240         * Makefile (metagrammar): Add missing dependency on autoloads.
5241
5242 2003-11-07  David Ponce  <david@dponce.com>
5243
5244         * bovine/semantic-make.el (semantic-make-expand-tag):
5245         Fix expansion of include tags.
5246
5247 2003-11-05  David Ponce  <david@dponce.com>
5248
5249         * semantic-sort.el (semantic-adopt-external-members):
5250         Use the tag API to add external
5251         members.  Thanks to Klaus Berndl <klaus.berndl@sdm.de>.
5252
5253 2003-11-01  David Ponce  <david@dponce.com>
5254
5255         * senator.el: (semantic-step-at-token-ids)
5256         (senator-step-at-start-end-token-ids)
5257         (senator-add-log-tokens): Use `semantic-varalias-obsolete'.
5258
5259         * semantic-tag.el (semantic-expand-nonterminal):
5260         Use `semantic-varalias-obsolete'.
5261
5262         * semantic-imenu.el: (semantic-imenu-bucketize-type-parts)
5263         (semantic-imenu-expandable-token)
5264         (semantic-imenu-expand-type-parts): Use
5265         `semantic-varalias-obsolete'.
5266
5267         * semantic-fw.el (semantic-varalias-obsolete): New function.
5268         (semantic-fw-font-lock-keywords): Highlight it.
5269
5270         * semantic-format.el: (semantic-token->text-functions)
5271         (semantic-token->text-custom-list)
5272         (semantic-face-alist):  Use `semantic-varalias-obsolete'.
5273
5274 2003-10-30  David Ponce  <david@dponce.com>
5275
5276         * bovine/semantic-erlang.el (semantic-erlang-default-setup):
5277         Fix call to
5278         `semantic-erlang-by--install-parser'.
5279
5280 2003-10-29  Eric M. Ludlam  <zappo@gnu.org>
5281
5282         * bovine/Makefile (languages_LISP):
5283         Added erlang-edoc.el, and semantic-erlang.el.
5284
5285         * bovine/Project.ede ("languages"):
5286         Added erlang-edoc.el, and semantic-erlang.el.
5287
5288         * senator.el (senator-completion-menu-popup):
5289         Disable imenu jumping while using
5290         the popup.  The tags are not valid.
5291
5292         * semanticdb-find.el: (semanticdb-find-table-for-include-default):
5293         Attempted to get dependency search routine working.  Left commented
5294         out since it has some bugs still.
5295
5296         * semanticdb-file.el (semanticdb-create-database):
5297         Set reference directory to a value.
5298
5299         * semanticdb.el (semanticdb-create-database):
5300         Set reference directory to a value.
5301         (semanticdb-semantic-init-hook-fcn): Do not set reference directory
5302         to a value anymore.
5303
5304 2003-10-27  Eric M. Ludlam  <zappo@gnu.org>
5305
5306         * senator.el (senator-completion-menu-item):
5307         Use semanticdb-printable-name instead
5308         of directly referencing the file slot.
5309         Doc fix.
5310
5311         * semanticdb.el, semanticdb-search.el (semanticdb-printable-name):
5312         New method.
5313
5314 2003-10-22  Eric M. Ludlam  <zappo@gnu.org>
5315
5316         * semantic-grammar.el (semantic-grammar-batch-build-one-package):
5317         Require bytecomp
5318
5319         * wisent/Makefile (wisent_LISP): add wisent-grammar-macros.el
5320
5321         * wisent/Project.ede (wisent): add wisent-grammar-macros.el
5322
5323         * bovine/Makefile (bovinator_LISP): Add bovine-grammar-macros.el
5324
5325         * bovine/Project.ede (bovinator): Add bovine-grammar-macros.el
5326
5327         * Project.ede: Remove wy.  Add metagrammar.
5328
5329         * Makefile (LOADPATH): Updated
5330         (all): Remove wy, add metagrammar
5331         (dist): remove wy, add metagrammar
5332
5333 2003-10-15  Eric M. Ludlam  <zappo@gnu.org>
5334
5335         * doc/user-guide.texi (Summary Mode): Added summary function option.
5336
5337         * senator.el (senator-eldoc-summary-function): New option.
5338         (senator-eldoc-print-current-symbol-info):
5339         Obey `eldoc-echo-area-use-multiline-p'
5340
5341 2003-10-02  David Ponce  <david@dponce.com>
5342
5343         * doc/wisent.texi:
5344         Clarify definition of rule precedence in "Grammar format" node.
5345
5346         * semantic-grammar-wy.el: Re-generate.
5347
5348         * semantic-grammar.wy:
5349         Handle %default-prec/%no-default-prec declarations introduced in
5350         Bison 1.875c, to enable/disable default rule precedences.
5351         (NO-DEFAULT-PREC): New keyword.
5352         (default_prec_decl): Remove argument.
5353         (no_default_prec_decl): New rule.
5354         (decl): Use it.
5355
5356 2003-10-02  Eric M. Ludlam  <zappo@gnu.org>
5357
5358         * Project.ede: Now a meta-subproject.
5359
5360         * wisent/Makefile, tests/Makefile, doc/Makefile, bovine/Makefile (dist):
5361         Now phony.
5362
5363         * Makefile (dist): Remove local creation of tar file.
5364         (dist,tags): Call subprojects differently.
5365
5366 2003-10-01  David Ponce  <david@dponce.com>
5367
5368         * doc/wisent.texi:
5369         Add paragraphs on default-prec feature in "Grammar format" node.
5370
5371         * semantic-grammar-wy.el: Re-generate.
5372
5373         * semantic-grammar.el (semantic-grammar-create-package):
5374         Generate Lisp code if the
5375         grammar in the current buffer is modified.
5376
5377         * semantic-grammar.wy:
5378         Handle new %default-prec declaration introduced in Bison 1.875c,
5379         to enable (the default) or disable default rule precedences.
5380         (DEFAULT-PREC): New token.
5381         (default_prec_decl): New rule.
5382         (decl): Use it.
5383
5384         * wisent/wisent-comp.el:
5385         Handle new default-prec feature introduced in Bison 1.875c,
5386         to enable (the default) or disable default rule precedences.
5387         Add `default-prec' to compile-grammar context.
5388         (wisent-parse-grammar): Handle `default-prec' in associativity
5389         rules.
5390
5391 2003-09-24  Eric M. Ludlam  <zappo@gnu.org>
5392
5393         * semantic-debug.el, semanticdb.el, semantic-analyze.el:
5394         Dependent on eieio 0.18beta1.
5395
5396 2003-09-24  David Ponce  <david@dponce.com>
5397
5398         * sformat.el, working.el: Move to common.
5399
5400         * Makefile: Re-generate.
5401
5402         * Project.ede (tools):
5403         Remove sformat.el and working.el from target sources.
5404
5405 2003-09-18  David Ponce  <david@dponce.com>
5406
5407         * Makefile: Re-generated.
5408
5409         * Project.ede (init): Remove semantic-autogen.el from target.
5410
5411 2003-09-17  David Ponce  <david@dponce.com>
5412
5413         * senator.el (senator-menu-bar): Fix typo.
5414
5415         * Makefile: Re-generated.
5416
5417         * Project.ede (autoloads):
5418         Change semantic-al.el by semantic-loaddefs.el.
5419
5420         * semantic-fw.el: Load semantic-loaddefs instead of semantic-al.
5421
5422 2003-09-16  David Ponce  <david@dponce.com>
5423
5424         * Makefile: Re-generated.
5425
5426         * semantic-edit.el (semantic-changes-in-region):
5427         Don't go outside buffer's bounds.
5428
5429         * bovine/erlang.bnf, semantic-autogen.el: Remove.  Obsolete.
5430
5431         * wisent/Wisent.mk: Remove.  No more used.
5432
5433         * wisent/Makefile: Re-generated.
5434
5435         * wisent/Project.ede (make): Remove target.  No more useful.
5436
5437         * Makefile: Re-generated.
5438
5439 2003-09-12  David Ponce  <david@dponce.com>
5440
5441         * semantic-tag.el (semantic--tag-hook-value): New variable.
5442         (semantic-tag-add-hook): Use `add-hook'.
5443         (semantic-tag-remove-hook): Use `remove-hook'.
5444         (semantic--tag-run-hooks): Use new variable above.
5445
5446 2003-09-11  Eric M. Ludlam  <zappo@gnu.org>
5447
5448         * NEWS: (Versioning, Naming conventions, Grammar build process)
5449         (semanticdb-find.el, semantic-show-tag-boundaries)
5450         (semantic-highlight-by-attribute-mode): New
5451         (bovine-grammar-mode): don't support bnf.
5452         (semanticdb-search.el): Updated.
5453         (seup): updated
5454         (Erlang parser added): Updated
5455
5456 2003-09-10  David Ponce  <david@dponce.com>
5457
5458         * Makefile: Re-generated.
5459
5460         * Project.ede (autoloads target):
5461         Add "bovine" and "wisent" sub-directories to
5462         autoload-dirs.
5463
5464 2003-09-09  David Ponce  <david@dponce.com>
5465
5466         * senator.el:
5467         Use a sub-menu for each Semantic minor mode to shorten the
5468         Senator/Modes menu.
5469
5470         (senator-base-local-label)
5471         (senator-base-global-label)
5472         (senator-uniquify-count): Remove.
5473         (senator-build-command-menu-item): Simplify.
5474         (senator-mode-menu-item-format)
5475         (senator-mode-menu-item-format-tty): Remove.
5476         (senator-mode-menu-local-toggle-label)
5477         (senator-mode-menu-global-toggle-label): New options.
5478         (senator-build-mode-menu-items): Renamed to...
5479         (senator-build-mode-sub-menu): Build a minor mode sub-menu instead
5480         of separate menu items.
5481         (senator-build-modes-menu): Use it.
5482
5483 2003-09-08  David Ponce  <david@dponce.com>
5484
5485         * wisent/Makefile: Re-generated.
5486
5487         * wisent/Project.ede (taggers):
5488         Move after "wisent" target to use byte-compiled
5489         grammar compiler and speed up build.
5490         (languages): Remove "wisent-awk-wy.el" from target.
5491
5492         * semantic-grammar-wy.el: Resurrect.  Needed to parse grammars!
5493
5494         * wisent/wisent-c-wy.el, wisent/wisent-calc-wy.el, wisent/wisent-java-tags-wy.el, wisent/wisent-java-wy.el, wisent/wisent-python-wy.el:
5495         Remove.  Generated.
5496
5497         * wisent/fdl.texi: Remove.  Moved to doc.
5498
5499         * semantic-grammar-wy.el: Remove.  Generated.
5500
5501         * wisent/wisent-grammar.el (semantic-find): Require at compile time.
5502
5503         * doc/Makefile: Re-generated.
5504
5505         * doc/Project.ede (Documentation): Remove semanticdb.texi from target.
5506
5507         * bovine/Makefile: Re-generated.
5508
5509         * bovine/Project.ede (languages): Add semantic-java.el to target.
5510
5511         * semantic-sort.el: (semantic-tag-external-member-parent)
5512         (semantic-tag-external-member-p)
5513         (semantic-tag-external-member-children): Add autoload cookie.
5514
5515 2003-09-07  David Ponce  <david@dponce.com>
5516
5517         * bovine/semantic-java.el (semantic-java-prototype-nonterminal):
5518         Add as obsolete alias of
5519         `semantic-format-prototype-tag-java-mode'.
5520
5521         * wisent/wisent-bovine.el (wisent-parse-region):
5522         Fix local variable name and invalid
5523         function names.
5524
5525         * semantic-sort.el (semantic-find): Add compile-time require.
5526
5527         * semantic-sb.el (inversion-require): Fix speedbar version.
5528
5529         * semantic-grammar.el (semantic-find): Add compile-time require.
5530
5531         * semantic-find.el (semantic-sort): Remove compile-time require.
5532
5533 2003-09-07  Eric M. Ludlam  <zappo@gnu.org>
5534
5535         * semantic-cb.el (semantic-dot): autload cookie.
5536
5537         * semanticdb-el.el (semanticdb-find-tags-by-class-method): New method
5538
5539         * wisent/Makefile (doc): Removed vars and rule.
5540
5541         * wisent/Project.ede (doc): Removed
5542
5543         * Makefile (LOADDEFS): New
5544         (maintenance_LISP): removed autoload file
5545         (all): Add autoload
5546         (semantic-al.el): new rule
5547         (init): remove semantic-al.el
5548         (dist): add loaddefs.
5549
5550         * Project.ede ("init"): Removed autoload generator
5551         ("autoloads"): New
5552
5553 2003-09-06  Eric M. Ludlam  <zappo@gnu.org>
5554
5555         * bovine/semantic-scm-by.el: autogenerated now
5556
5557         * bovine/semantic-make-by.el: autogenerated now.
5558
5559         * bovine/semantic-erlang-by.el: autogenerated now
5560
5561         * bovine/semantic-c-by.el: Auto generated in makefile
5562
5563 2003-09-05  David Ponce  <david@dponce.com>
5564
5565         * wisent/wisent-java-tags.el, wisent/wisent-java.el (wisent-java-get-local-variables):
5566         Replace by a
5567         define-mode-overload-implementation of
5568         `semantic-get-local-variables'.
5569         (semantic-install-function-overrides): Remove call.
5570
5571         * bovine/semantic-java.el: (semantic-java-prototype-function)
5572         (semantic-java-prototype-variable)
5573         (semantic-java-prototype-type): Doc fix.
5574         (semantic-java-prototype-tag): Replace by a
5575         define-mode-overload-implementation of
5576         `semantic-format-prototype-tag'.
5577         (semantic-java-find-documentation): Replace by a
5578         define-mode-overload-implementation of
5579         `semantic-documentation-for-tag'.  Fix implementation.
5580
5581         * semantic-doc.el (semantic-doc-snarf-comment-for-tag):
5582         As indicated in doc string
5583         allow to pass `lex' in NOSNARF argument.
5584         (semantic-find-documentation): Declare obsolete.
5585
5586 2003-09-05  Eric M. Ludlam  <zappo@gnu.org>
5587
5588         * bovine/semantic-scm.el:
5589         (semantic-format-tag-prototype, semantic-documentation-for-tag)
5590         (semantic-insert-foreign-tag): New name compatible
5591
5592         * bovine/semantic-el.el (semantic-bovine): New requirement
5593
5594         * bovine/semantic-bovine.el (semantic-lambda): Add autoload
5595
5596 2003-09-02  Eric M. Ludlam  <zappo@gnu.org>
5597
5598         * senator.el (senator-transpose-tags-down): doc fix
5599
5600         * semantic-tag-file.el (semantic-go-to-tag): Doc fix.
5601
5602         * semantic-sort.el (semantic-adopt-external-members):
5603         Doc fix.  Use new names.
5604         (semantic-nonterminal-external-member-parent): Renamed to
5605         (semantic-tag-external-member-parent): New name.
5606         (semantic-nonterminal-external-member-parent-default): Renamed to
5607         (semantic-tag-external-member-parent-default): new name
5608         (semantic-nonterminal-external-member-p): renamed to
5609         (semantic-tag-external-member-p): new name
5610         (semantic-nonterminal-external-member-p-default): renamed to
5611         (semantic-tag-external-member-p-default): new name
5612         (semantic-nonterminal-external-member-children): renamed to
5613         (semantic-tag-external-member-children): new name
5614         (semantic-nonterminal-external-member-children-default): renamed to
5615         (semantic-tag-external-member-children-default): new name
5616
5617         * semantic-fw.el:
5618         Make documentation aspects of overload functions available to external modules:
5619         (semantic-overload-symbol-from-function): new function
5620         (define-overload): Use above
5621         (semantic-overload-docstring-extension): New function
5622         (semantic-augment-function-help): Use above
5623
5624         * semantic-find.el: (semantic-find-tags-external-children-of-type):
5625         Use `semantic-tag-extenal-member-parent'.
5626
5627         * semantic-complete.el (semantic-complete-read-tag-buffer-deep):
5628         doc fix
5629
5630         * semantic-cb.el (semantic-cb-convert-type):
5631         Use `semantic-tag-extenal-member-children'.
5632
5633         * semantic-analyze.el (semantic-analyze-type-parts):
5634         Use `semantic-tag-extenal-member-children'.
5635
5636 2003-09-02  David Ponce  <david@dponce.com>
5637
5638         * bovine/semantic-bovine.el (semantic-lambda):
5639         Move here from semantic/semantic.el.
5640         (semantic-bovinate-nonterminal-db-nt): Doc fix.
5641
5642         * bovine/bovine-grammar.el (bovine-grammar-parsetable-builder):
5643         Doc fix.
5644
5645         * semantic.el (semantic-toplevel-bovine-table): Doc fix.
5646         (semantic-toplevel-bovine-table-source): Remove.  No more used.
5647         (semantic-lambda): Move to bovine/semantic-bovine.el.
5648         (semantic-bovinate-region-until-error)
5649         (semantic-bovinate-from-nonterminal-full): Make obsolete.
5650
5651         * semantic-util.el (semantic-equivalent-major-modes): Doc fix.
5652
5653 2003-09-01  Eric M. Ludlam  <zappo@gnu.org>
5654
5655         * doc/wisent.texi:
5656         (Wisent Overview, Wisent Grammar, Grammar format, Example)
5657         (Compiling a grammar, Conflicts, Grammar Debugging)
5658         (Understanding the automaton, Wisent Parsing)
5659         (Writing a lexer, Actions goodies, Report errors)
5660         (Error recovery, Debugging actions, Wisent Semantic)
5661         (WY grammar format, Percent-keywords, WY Major Mode)
5662         (Grammar styles, Iterative style, Bison style)
5663         (Mixed style, Start nonterminals, Useful functions)
5664         (Wisent Lex, Wisent Index): Updated @section and @node names
5665         to be compatible with makeinfo.
5666
5667         * doc/user-guide.texi (senator): Fixed ref.
5668
5669         * doc/lang-support-guide.texi (Language Support Developer's Guide):
5670         Removed empty node.
5671         (Keywords): @ref updates.
5672         (Keyword Properties): Added property tables
5673         (Writing Parsers): Update refs
5674         (External Parsers, Bovine Parsers, Wisent Parsers, Grammar)
5675         (Programming Environment): Updated sections to be makeinfo compatible.
5676
5677         * doc/bovine.texi:
5678         (%start, %languagemode, %token, Bovine Grammar Rules)
5679         (Optional Lambda Expression): Updated sectioning names to make
5680         compatible with makeinfo.
5681
5682 2003-08-31  David Ponce  <david@dponce.com>
5683
5684         * wisent/wisent-grammar-macros.el: (wisent-grammar-EXPAND)
5685         (wisent-grammar-EXPANDFULL): Doc fix.
5686         (wisent-grammar-TAG)
5687         (wisent-grammar-VARIABLE-TAG)
5688         (wisent-grammar-FUNCTION-TAG)
5689         (wisent-grammar-TYPE-TAG)
5690         (wisent-grammar-INCLUDE-TAG)
5691         (wisent-grammar-PACKAGE-TAG)
5692         (wisent-grammar-CODE-TAG)
5693         (wisent-grammar-EXPANDTAG)
5694         (wisent-grammar-AST-ADD)
5695         (wisent-grammar-AST-PUT)
5696         (wisent-grammar-AST-GET)
5697         (wisent-grammar-AST-GET1)
5698         (wisent-grammar-AST-GET-STRING)
5699         (wisent-grammar-AST-MERGE): Use explicit arguments.
5700
5701         * bovine/semantic-scm-by.el, bovine/semantic-erlang-by.el:
5702         Re-generated.
5703
5704         * bovine/scheme.by (scheme): Fix call to the EXPAND macro.
5705
5706         * bovine/erlang.by: (module-attr, import-attr, import-name-list)
5707         (fun-clause, macro-def, include-dir)
5708         (include-lib-dir): Fix call to the EXPAND macro.
5709         (record-decl, record-def): Fix call to the EXPANDFULL macro.
5710
5711         * bovine/bovine-grammar-macros.el: (bovine-grammar-EXPAND)
5712         (bovine-grammar-EXPANDFULL)
5713         (bovine-grammar-TAG)
5714         (bovine-grammar-VARIABLE-TAG)
5715         (bovine-grammar-FUNCTION-TAG)
5716         (bovine-grammar-TYPE-TAG)
5717         (bovine-grammar-INCLUDE-TAG)
5718         (bovine-grammar-PACKAGE-TAG)
5719         (bovine-grammar-CODE-TAG): Use explicit arguments.
5720
5721         * semantic-grammar.el (semantic-grammar-create-package):
5722         Move insert of declaration
5723         header into declaration part.
5724
5725 2003-08-31  Eric M. Ludlam  <zappo@gnu.org>
5726
5727         * senator.el: (senator-transpose-tags-up)
5728         (senator-transpose-tags-down): New commands.
5729
5730         * semantic-texi.el (semantic-default-texi-setup):
5731         Bind f9 to update texi from texi.
5732
5733         * doc/wisent.texi:
5734         Converted from stand along documentation to part of semantic manual.
5735         (Wisent Parsers): Renamed.
5736         (Wisent Grammar): Renamed
5737         (Wisent Parsing): Renamed
5738         (Wisent Index): Unchaptered.
5739
5740         * doc/semantic.texi: Added Richard to AUTHORS.
5741
5742         * doc/Project.ede, doc/Makefile: Added bovine and wisent texi files.
5743
5744         * doc/lang-support-guide.texi (Language Support Developer's Guide):
5745         Rename BNF section.
5746         (Language Support Overview): Use semantic macro.
5747         (Writing Parsers): Divided into three parser type sections.
5748         (Writing Grammars): Emptied out.
5749
5750         * doc/bovine.texi: New.
5751
5752         * doc/app-dev-guide.texi (Override Methods):
5753         Add pointer to the app dev guide.
5754         (Tag Details): Anchors and obsolete tags..
5755         (System Databases): Added Anchor.
5756
5757         * bovine/semantic-el.el (semantic-elisp-use-read):
5758         Add an :overloadable attribute.
5759         (semantic-emacs-lisp-overridable-doc)
5760         (semantic-emacs-lisp-obsoleted-doc): New functions
5761         (semantic-documentation-for-tag): Add above new info to doc strings.
5762
5763         * semantic.texi: Now exists in the doc directory.
5764
5765         * doc/wisent.texi, wisent/wisent.texi:
5766         Renamed wisent/wisent.texi to doc/wisent.texi
5767
5768         * document.el (document-insert-texinfo):
5769         Add an anchor to all definitions.
5770
5771 2003-08-30  Eric M. Ludlam  <zappo@gnu.org>
5772
5773         * doc/user-guide.texi: (Script Generated Cache Files)
5774         (Create System Databases): New sections.
5775
5776         * doc/app-dev-guide.texi (Semantic Database):
5777         Added new sections for seraching and system databases.
5778         (Semanticdb in Programs): Updated
5779         (Semanticdb Tag Queries): Updated
5780
5781         * doc/app-dev-guide.texi: (Tag Collectors)
5782         (Tag Displayors):  Removed class hierarcy.  (subsubsubsections bad.)
5783         (Override Methods): New node `tag-members'.
5784         (Format Tag): Updated all functions
5785         (Tag members): New section
5786         (Tag Details): Updated all functions
5787         (Local Context): Updated all functions
5788         (Parser Hooks): updated all hooks.
5789
5790 2003-08-29  Eric M. Ludlam  <zappo@gnu.org>
5791
5792         * doc/app-dev-guide.texi (Application Developer's Guide):
5793         Fix menu.  Add semanticdb.
5794         (Tags at Point): Add next/prev by overlay.
5795         (Tag Completion): Delegate previous doc as "old".
5796         All new doc for the new `semantic-complete.el' code.
5797         (Format Tag): Fcn name fixes.
5798         (Semantic Database): new
5799
5800         * bovine/Makefile (bovinator_LISP): Removed semantic-bnf.el
5801
5802         * Makefile: Added EDE onto the load path.
5803
5804         * Project.ede: Added ede as a path extension.
5805
5806         * semantic-util-modes.el (semantic-decorate): New require.
5807
5808         * semantic-util.el (semanticdb): New require.
5809
5810         * semantic-texi.el (semantic-doc): New require
5811         (semantic-texi-find-documentation): Fix compiler warning.
5812         (semantic-texi-update-doc-from-texi): Fix prototype doc transfer.
5813         (semantic-texi-update-doc-from-source): Fix compiler warning.
5814
5815         * semantic-sort.el (semantic-bucketize-tag-class): Fix doc.
5816
5817         * semantic-grammar.el (semantic-format): new require.
5818
5819         * semantic-format.el (semantic-format-tag-summarize-default):
5820         Don't use bucketize
5821         function.  Just get the class.
5822
5823         * semantic-find.el (semantic-sort): New require.
5824
5825         * semantic-doc.el (semantic-documentation-for-tag):
5826         Use `semantic-go-to-tag'.
5827
5828         * semantic-decorate.el (semantic-tag-delete-secondary-overlay):
5829         Added autoload cookie.
5830
5831         * semanticdb-el.el (eieio-opt):
5832         New require for byte-compiler modifications.
5833
5834         * semantic-cb.el (semanticdb-find, semantic-sort): New require
5835         (eieio-speedbar-handle-click): Rename token to tag.
5836
5837         * semantic-analyze.el (semantic-sort): new require.
5838
5839         * bovine/semantic-bnf.el: *** empty log message ***
5840
5841         * bovine/Project.ede (bovinator): Remove semantic-bnf.el
5842
5843         * semantic-util.el (semantic-something-to-tag-table):
5844         Fixed compiler warnings
5845         (semantic-recursive-find-nonterminal-by-name):
5846         Replace obsoleted function call with new call.
5847
5848 2003-08-29  David Ponce  <david@dponce.com>
5849
5850         * bovine/semantic-erlang-by.el: Re-generated.
5851
5852         * bovine/erlang.by (record-def): Fix call to TYPE-TAG.
5853         (include-dir, include-lib-dir): Fix call to INCLUDE-TAG.
5854
5855         * semantic-grammar.el (semantic-grammar-buffer-file): New function.
5856         (semantic-grammar-package, semantic-grammar-keywordtable)
5857         (semantic-grammar-tokentable, semantic-grammar-parsetable)
5858         (semantic-grammar-setupfunction, semantic-grammar-header)
5859         (semantic-grammar-footer): Use it.
5860
5861         (semantic-grammar-batch-build-one-package): Increase some Emacs
5862         limits to byte-compile complex grammar tables.
5863
5864 2003-08-29  Eric M. Ludlam  <zappo@gnu.org>
5865
5866         * doc/tags.texi (Semantic Tags): New menu item.
5867         (Tag Hooks): New section
5868         (Misc Tag Internals): Add refs to tag hooks.
5869
5870         * doc/user-guide.texi (senator): Fix Command typo
5871         (semanticdb): Removed Semanticdb configuration node.
5872
5873         * doc/overview.texi (Semantic Components):
5874         Remove BNF and bovine references.
5875
5876         * doc/user-guide.texi (semanticdb): Doc fix
5877         (Semanticdb Configuration): Updated.
5878         (Semanticdb Tag Storage, Semanticdb Search Configuration)
5879         (Semanticdb System Backends, Changing Backends): New subsubsections.
5880
5881 2003-08-28  Eric M. Ludlam  <zappo@gnu.org>
5882
5883         * semantic-ede-grammar.el (ede-proj-makefile-insert-dist-dependencies):
5884         New method
5885
5886 2003-08-28  David Ponce  <david@dponce.com>
5887
5888         * bovine/semantic-erlang-by.el: Re-generated.
5889
5890         * bovine/erlang.by (binary-segment-rest):
5891         Use basic-type instead of integer-literal.
5892         (binary-unit): Likewise.
5893
5894 2003-08-28  Eric M. Ludlam  <zappo@gnu.org>
5895
5896         * doc/lang-support-guide.texi: (Writing Lexers)
5897         (Lexer Overview): Change to `semantic-lex'.
5898         (Lexer Options): Deleted
5899         (Lexer Construction): New
5900         (Lexer Built In Analyzers): New
5901         (Keywords): Updated
5902         (Writing Parsers): Added note to self.
5903         (Rules): Updated just enough so it compiles.
5904
5905         * bovine/Makefile (by_SEMANTIC_GRAMMAR): Added erlang.by
5906
5907         * bovine/Project.ede ("by"): Added erlang.by
5908
5909         * bovine/erlang.bnf: (binary-segment-rest)
5910         (binary-unit): David Wallin's changes.
5911
5912 2003-08-28  David Ponce  <david@dponce.com>
5913
5914         * bovine/semantic-erlang.el: Convert old BNF grammar to new BY format.
5915
5916         (semantic-erlang-by): Require.
5917         (semantic-erlang-lex-char)
5918         (semantic-erlang-lexer): New function.
5919         (semantic-default-erlang-setup): Rename to...
5920         (semantic-erlang-default-setup): New.  Update all references.
5921         (semantic-toplevel-erlang-bovine-table)
5922         (semantic-erlang-keyword-table): Remove.
5923
5924         * bovine/semantic-erlang-by.el, bovine/erlang.by: New file.
5925
5926         * semantic-util-modes.el: (semantic-stickyfunc-old-hlf)
5927         (semantic-stickyfunc-header-line-format): New variables.
5928         (semantic-stickyfunc-mode-setup): When turning sticky func mode
5929         on/off, take care of a header line previously there.
5930
5931 2003-08-28  Eric M. Ludlam  <zappo@gnu.org>
5932
5933         * document.el (document-texify-elisp-docstring):
5934         Add <> as valid symbols characters.
5935
5936         * semantic-texi.el (semantic-texi-set-endpoint): New fcn
5937         (semantic-texi-recursive-combobulate-list): Set section end point to
5938         the logical end of those sections instead of the end of the regexp.
5939         (semantic-default-texi-setup): Add stickyfunc support.
5940         (semantic-texi-update-doc-from-texi): Look for prototype, and
5941         variable doc strings.  Go for the function first, then variable, then
5942         prototype.
5943
5944         * semantic-util-modes.el:
5945         (semantic-highlight-edits-face, semantic-highlight-edits-mode)
5946         (semantic-show-unmatched-syntax-mode, semantic-auto-parse-mode)
5947         (semantic-show-parser-state-mode, semantic-summary-mode)
5948         (semantic-stickyfunc-mode, semantic-show-tag-boundaries-mode)
5949         (semantic-highlight-attribute-alist)
5950         (semantic-highlight-by-attribute-mode): Doc Fix
5951         (semantic-stickyfunc-sticky-classes): Made buffer local.
5952         (semantic-stickyfunc-fetch-stickyline): Start at bottom, and find
5953         first matching tag class.
5954
5955         * doc/user-guide.texi (Semantic User's Guide): updated the menu.
5956         (Speedbar): Fixed ref to class browser.
5957         (Minor Modes): Added Summary Mode, Sticky Functions, Tag Boundaries,
5958         and attribute highlighting modes.
5959
5960 2003-08-27  Eric M. Ludlam  <zappo@gnu.org>
5961
5962         * doc/user-guide.texi: (speedbar)
5963         (imenu): Added @file around .emacs
5964         (senator): Updated commands with new tag based names.
5965         Updated all doc strings.
5966         (Analyzer): Updated doc strings.
5967         Augmented some documentation.
5968         (Smart Completion): Updated doc strings.
5969         (Speedbar Analysis): Updated @ref to capitalized names.
5970         (Class Browser): Removed explicit reference to EIEIO.
5971         Formated some text.
5972         (Document): updated doc strings.
5973         Fixed target file for document output.
5974         Augmented text around commands.
5975         (Charts): Updated doc strings and function names.
5976         (Minor Modes): added subsection nheaders.
5977         Replaced obsolete commands with new commands.
5978         Updated all existing doc.
5979         Added some new text around each mode.
5980
5981 2003-08-27  David Ponce  <david@dponce.com>
5982
5983         * senator.el: (senator-search-forward, senator-re-search-forward)
5984         (senator-word-search-forward): Doc fix.
5985         (senator-search-backward, senator-re-search-backward)
5986         (senator-word-search-backward): Doc fix.
5987         (senator-menu-bar): Fix use of obsolete variable.
5988
5989 2003-08-26  David Ponce  <david@dponce.com>
5990
5991         * doc/user-guide.texi: Fix node @ref.
5992
5993 2003-08-26  Eric M. Ludlam  <zappo@gnu.org>
5994
5995         * doc/user-guide.texi (Semantic User's Guide): Added ECB
5996         (speedbar): token->tag fix
5997         (ECB): New node
5998         (imenu): Update all variables.
5999         (senator): Update all command in first few subsubsections.
6000
6001         * bovine/semantic-el.el (semantic-elisp-use-read):
6002         Fixed user-visible typo.
6003         (semantic-documentation-for-tag): Use substitute command keys on
6004         found string.
6005
6006         * senator.el (senator-kill-tag): Doc fix.
6007         (senator-isearch-toggle-semantic-mode): Doc fix.
6008
6009         * semantic-texi.el (semantic-default-texi-setup):
6010         Use new imenu variable names
6011         (semantic-texi-update-doc-from-texi): If the first doc match is a
6012         prototype, keep searching for the original.  If there is no original,
6013         use the prototype.
6014
6015         * semantic-imenu.el (semantic-imenu-summary-function): Doc fix.
6016         (semantic-imenu-expand-type-members): Renamed from ...
6017         (semantic-imenu-expand-type-parts): Obsolete
6018         (semantic-imenu-bucketize-type-members): Renamed from ...
6019         (semantic-imenu-bucketize-type-parts): Obsolete
6020         (semantic-imenu-sort-bucket-function): Doc fix.
6021         (semantic-imenu-expandable-tag-class): Renamed from ...
6022         (semantic-imenu-expandable-token): Obsolete
6023         (semantic-create-imenu-index-1, semantic-create-imenu-subindex)
6024         (semantic-imenu-toggle-bucketize-type-parts)
6025         (semantic-default-which-function): Use renamed variables.
6026
6027         * document.el (document-texify-elisp-docstring):
6028         Support kbd items followed by punctuation.
6029
6030 2003-08-26  David Ponce  <david@dponce.com>
6031
6032         * doc/lang-support-guide.texi: Fix node @ref.
6033
6034 2003-08-26  Eric M. Ludlam  <zappo@gnu.org>
6035
6036         * semantic-edit.el: (define-lex-analyzer)
6037         (define-lex-regex-analyzer)
6038         (semantic-lex-number): Use `semantic-format-tag-name' instead of
6039         obsolete fcn.
6040
6041         * semantic-lex.el: (define-lex-analyzer)
6042         (define-lex-regex-analyzer)
6043         (semantic-lex-number): Doc fix
6044
6045 2003-08-25  Eric M. Ludlam  <zappo@gnu.org>
6046
6047         * doc/lang-support-guide.texi (Parser Error Handling):
6048         replace `token' fcns with `tag' fcns.
6049         (Tag Structure): Removed contents of standard tags.  Refer to creating tags
6050         chapter instead.
6051         (Language Support Overview)
6052         (Semantic Overload Mechanism): Various token->tag updates
6053         (Writing Lexers)
6054         (Lexer Overview)
6055         (Lexer Output): Refer to sematnic-lex.  This needs more work.
6056
6057         * Makefile (semantic_LISP): Added semantic-ast
6058         (maintenance_LISP): new
6059         (maintenance): New
6060         (dist): Add above new sources.
6061
6062         * Project.ede ("maintenance"): New target.
6063
6064         * doc/glossary.texi (Glossary):
6065         Added more definitions to some keywords.
6066
6067         * doc/Makefile (Documentation_TEXINFOS): Add tags.texi.
6068
6069         * doc/Project.ede (Documentation): Add tags.texi.
6070
6071         * bovine/semantic-el.el (semantic-elisp-store-documentation-in-tag):
6072         New flag.
6073         (semantic-elisp-do-doc): New flag
6074         (semantic-elisp-use-read): Add doc strings to tags iff above flag is enabled.
6075         (semantic-documentation-for-tag): Get doc string from tag.
6076         If there isn't one, re-run semantic-elisp-use-read with doc turned on.
6077
6078         * semantic-texi.el (semantic-texi-update-doc-from-texi):
6079         Use new search routine.
6080         Combine all tags into one long list.
6081         (semantic-texi-update-doc-from-source): Use new doc fetching name.
6082
6083         * semantic-util.el (semantic-something-to-tag-table):
6084         Use semanticdb-get-tags instead of oref.
6085
6086         * semanticdb-find.el (semanticdb-find-translate-path):
6087         Accept a `brutish' flag.
6088         (semanticdb-find-translate-path-default): Accept a brutish flag.
6089         (semanticdb-find-translate-path-brutish-default)
6090         (semanticdb-find-translate-path-includes-default): New fcns.
6091         (semanticdb-find-tags-collector): Pass through a brutish flag to the collector.
6092         (semanticdb-brute-deep-find-tags-by-name): New fcn.
6093
6094         * semanticdb.el (semanticdb-current-database-list):
6095         Add optional DIR argument for
6096         starting directory.
6097
6098 2003-08-25  David Ponce  <david@dponce.com>
6099
6100         * semantic-grammar.el (semantic-grammar-create-package):
6101         In message, use the package
6102         name instead of the Lisp file name.
6103         (semantic-grammar-batch-build-one-package): Use
6104         `byte-compile-dest-file' to obtain the compiled file name.
6105
6106 2003-08-23  Eric M. Ludlam  <zappo@gnu.org>
6107
6108         * doc/app-dev-guide.texi:
6109         (Application Developer's Guide, Tag Tables, Tags at Point)
6110         (Tag Sorting, Tag Completion, Override Methods, Format Tag)
6111         (Tag Details, Parser Hooks, Example Programs):
6112         Removed references to `token' and `nonterminal' where apropriate.
6113         Fixed all cross links within this file.
6114
6115         * semantic-texi.el (semantic-texi-update-doc-from-texi):
6116         Use brute search when finding
6117         the tag for the doc.
6118
6119         * semantic-sort.el (semantic-mark-external-member-function): Doc fix.
6120
6121         * semantic-edit.el (semantic-after-partial-cache-change-hook): Doc fix.
6122
6123         * semantic-ede-grammar.el (semantic-ede-proj-target-grammar):
6124         Added new source and compiler types.
6125         (semantic-ede-source-grammar): Renamed to
6126         (semantic-ede-source-grammar-wisent):
6127         (semantic-ede-grammar-compiler): Renamed to
6128         (semantic-ede-grammar-compiler-wisent):
6129         (semandic-ede-source-grammar-bovine, semantic-ede-grammar-compiler-bovine):
6130         New.
6131
6132         * bovine/Makefile, bovine/Project.ede:
6133         Replaced old by target with new by target of semantic grammar type.
6134
6135 2003-08-22  Eric M. Ludlam  <zappo@gnu.org>
6136
6137         * wisent/Makefile (LOADPATH): New stuf added
6138         (wy): Removed
6139         (all): added taggers
6140         (dist): removed wy, added taggers
6141         (taggers): new rule for compiling .wy files.
6142
6143         * wisent/Project.ede (taggers): New
6144         (wy): deleted
6145
6146         * semantic-ede-grammar.el (semantic-grammar): move require.
6147         (semantic-ede-proj-target-grammar): autoload cookie
6148         (semantic-ede-grammar-compiler): Remove extra rules.  Use one single
6149         batch of actions.
6150         (ede-compile-intermediate-objects-p, ede-compiler-intermediate-object-variable):
6151         Removed.
6152         (ede-proj-makefile-insert-variables): changed extra variable to be
6153         the .el files.
6154         (ede-proj-makefile-insert-rules): Removed intermediate rules used before.
6155         (end of file): Fixed provide statement, and method for adding this
6156         project class.
6157
6158         * semantic-grammar.el (semantic-grammar-create-package):
6159         Do not create the package if the
6160         package is not out of date.
6161         (semantic-grammar-batch-build-one-package): Do not byte compile if the
6162         compiled file is not out of date.
6163
6164 2003-08-21  David Ponce  <david@dponce.com>
6165
6166         * semantic-grammar.el (semantic-grammar-create-package):
6167         Return name of created file.
6168         (semantic-grammar-create-package-from-file): Replace by...
6169         (semantic-grammar-batch-build-one-package): New fcn.  Creates the
6170         package AND byte compiles it.
6171         (semantic-grammar-batch-create-package): Rename to...
6172         (semantic-grammar-batch-build-packages): Use new fcn above.  Error
6173         checks with user comprehensible messages.  Remove vc from
6174         find-file-hooks.  It causes bad stuff to happen in Emacs 20.
6175
6176 2003-08-20  David Ponce  <david@dponce.com>
6177
6178         * semantic-grammar.el (eldoc-current-symbol-info): Fix typo.
6179
6180         * semantic-grammar.el: (semantic-grammar-insert-defconst)
6181         (semantic-grammar-insert-defun): No more call `eval-defun'.
6182         (semantic-grammar-file-regexp): New option.
6183         (semantic-grammar-noninteractive): New function.
6184         (semantic-grammar-create-package): Doc fix.  Use `eval-region' to
6185         evaluate declarations and epilogue.  Handle when run in batch
6186         mode.
6187         (semantic-grammar-create-package-from-file)
6188         (semantic-grammar-batch-create-package): New functions.
6189         (semantic-grammar-mode, semantic-abbreviate-nonterminal)
6190         (semantic-summarize-nonterminal): Don't use obsolete API.
6191         (semantic-grammar-function-argstring-from-docstring)
6192         (semantic-grammar-eldoc-get-macro-docstring): New functions.
6193         (eldoc-current-symbol-info): Handle grammar macros.
6194
6195         * semantic-format.el (semantic-colorize-text): Declare obsolete.
6196
6197 2003-08-17  David Ponce  <david@dponce.com>
6198
6199         * wisent/wisent-c.el (c-mode-hook): Remove autoload cookie.
6200
6201         * senator.el: (senator-find-nonterminal-by-name)
6202         (senator-find-nonterminal-by-name-regexp): Remove "." at end of
6203         error message.
6204         (senator-search-tag-filter): New option.
6205         (senator-search-forward-raw)
6206         (senator-search-backward-raw): Remove.  Replace by...
6207         (senator-search): New function.
6208         (senator-re-search-forward, senator-re-search-backward)
6209         (senator-word-search-forward, senator-word-search-backward)
6210         (senator-search-forward, senator-search-backward): Use it.
6211         (senator-last-search-type): New variable.
6212         (senator-nonincremental-repeat-search-forward)
6213         (senator-nonincremental-repeat-search-backward): Use it.
6214         (senator-nonincremental-search-forward)
6215         (senator-nonincremental-search-backward)
6216         (senator-nonincremental-re-search-forward)
6217         (senator-nonincremental-re-search-backward): Set it.
6218         (senator-nonincremental-repeat-re-search-forward)
6219         (senator-nonincremental-repeat-re-search-backward): Remove.
6220         (senator-search-set-tag-class-filter): New command.
6221         (senator-prefix-map): Add keyboard shortcut for it.
6222         (senator-menu-bar): Update search sub menu.
6223
6224 2003-08-17  Eric M. Ludlam  <zappo@gnu.org>
6225
6226         * semantic-ede-grammar.el: EDE interface for grammar files.
6227
6228         * senator.el (senator-menu-bar):
6229         Changed names of all charting functions.
6230
6231         * semantic-util.el (semantic-something-to-tag-table): Update doc.
6232
6233         * semantic-chart.el:
6234         (semantic-chart-database-size, semantic-chart-tags-by-class)
6235         (semantic-chart-tag-complexity):  New fcn name.  Remove all references
6236         to nonterminal or token.
6237
6238 2003-08-15  David Ponce  <david@dponce.com>
6239
6240         * semantic-grammar.wy (USE-MACROS): New token.
6241         (decl): Add following...
6242         (use_macros_decl): New rule.
6243
6244         * semantic-grammar.el (semantic-grammar-epilogue-start):
6245         Ensure the start location will
6246         never be reached when there is no epilogue.
6247         (semantic-grammar-tokens): Use `semantic-tag-type'.
6248         (semantic-summarize-nonterminal): Likewise.
6249         (semantic-grammar-use-macros): New function.
6250         (semantic-grammar-macros): Use it.
6251         (semantic--grammar-macdecl-re)
6252         (semantic--grammar-macros-regexp-2): New variables.
6253         (semantic--grammar-clear-macros-regexp-2): New function.
6254         (semantic--grammar-macros-regexp-2): Implement.
6255         (semantic-grammar-map): Add shortcut key for
6256         `semantic-grammar-find-macro-expander'.
6257         (semantic-grammar-mode): Install
6258         `semantic--grammar-clear-macros-regexp-2' in local
6259         `before-change-functions' hooks.
6260         (semantic--grammar-macro-function-tag)
6261         (semantic--grammar-macro-lib-part)
6262         (semantic--grammar-macro-compl-elt)
6263         (semantic--grammar-macro-compl-dict): New functions.
6264         (semantic-grammar-find-macro-expander): New command.
6265
6266         * semantic-grammar-wy.el: Re-generated.
6267
6268 2003-08-15  Richard Y. Kim <ryk@ap.com>
6269
6270         * doc/app-dev-guide.texi, doc/lang-support-guide.texi, doc/semantic.texi, doc/tags.texi:
6271         Created a new file, tags.texi, which documents the API for accessing semantic tags.  This file is a section @include'd by app-dev-guide.texi.
6272
6273 2003-08-14  David Ponce  <david@dponce.com>
6274
6275         * semanticdb-find.el (semanticdb-find-translate-path-default):
6276         Make code more efficient
6277         and compatible with old versions of Emacs.
6278         (semanticdb-find-tags-collector): Skip tables not associated to a
6279         file when FIND-FILE-MATCH is non-nil.
6280
6281 2003-08-11  David Ponce  <david@dponce.com>
6282
6283         * wisent/wisent-grammar.el (wisent-grammar-macros): Require it.
6284         (wisent-grammar-region-placeholder)
6285         (wisent-grammar-EXPAND)
6286         (wisent-grammar-EXPANDFULL)
6287         (wisent-grammar-TAG)
6288         (wisent-grammar-VARIABLE-TAG)
6289         (wisent-grammar-FUNCTION-TAG)
6290         (wisent-grammar-TYPE-TAG)
6291         (wisent-grammar-INCLUDE-TAG)
6292         (wisent-grammar-PACKAGE-TAG)
6293         (wisent-grammar-EXPANDTAG)
6294         (wisent-grammar-CODE-TAG)
6295         (wisent-grammar-AST-ADD)
6296         (wisent-grammar-AST-PUT)
6297         (wisent-grammar-AST-GET)
6298         (wisent-grammar-AST-GET1)
6299         (wisent-grammar-AST-GET-STRING)
6300         (wisent-grammar-AST-MERGE)
6301         (wisent-grammar-builtins)
6302         (wisent-grammar-builtin-names): Remove.  New definition in
6303         wisent-grammar-macros library.
6304         (wisent-grammar-expand-builtins): Move and rename...
6305         (wisent-grammar-expand-macros): New function.
6306         (wisent-grammar--macros): New variable.
6307         (wisent-grammar-nonterminals): Use `wisent-grammar-expand-macros'.
6308         Initialize macro definitions.
6309         (wisent-grammar-mode): Don't setup
6310         `semantic-grammar-builtin-names'.
6311
6312         * wisent/wisent-grammar-macros.el: New file.
6313
6314         * bovine/bovine-grammar.el (bovine-grammar-macros): Require it.
6315         (bovine--grammar-macros): New variable.
6316         (bovine-grammar-expand-EXPAND)
6317         (bovine-grammar-expand-EXPANDFULL)
6318         (bovine-grammar-expand-ASSOC)
6319         (bovine-grammar-expand-TAG)
6320         (bovine-grammar-expand-VARIABLE-TAG)
6321         (bovine-grammar-expand-FUNCTION-TAG)
6322         (bovine-grammar-expand-TYPE-TAG)
6323         (bovine-grammar-expand-INCLUDE-TAG)
6324         (bovine-grammar-expand-PACKAGE-TAG)
6325         (bovine-grammar-expand-CODE-TAG): Remove.  New definition in
6326         bovine-grammar-macros library.
6327         (bovine-grammar-expand-form): Don't use hard-coded expanders.
6328         (bovine-grammar-expand-action): Likewise.
6329         (bovine-grammar-parsetable-builder): Initialize macro definitions.
6330
6331         * bovine/bovine-grammar-macros.el: New file.
6332
6333         * semantic-grammar.wy (decl): Remove extra empty rule.
6334
6335         * semantic-grammar.el (semantic-grammar-macros):
6336         New variable and function.
6337         (semantic-grammar-header-template): Use %C and %V for respectively
6338         the copyright line and the version keyword.
6339         (semantic-grammar-copyright-line): New function.
6340         (semantic-grammar-header): Use it.  Setup %C and %V.  No more
6341         inlined.
6342         (semantic-grammar-footer): Doc fix.  No more inlined.
6343         (semantic-grammar-token-data)
6344         (semantic-grammar-keyword-data)
6345         (semantic-grammar-parser-data)
6346         (semantic-grammar-setup-data): No more inlined.
6347         (semantic-grammar-create-package): Improve generation-evaluation
6348         of lisp code.
6349         (semantic--grammar-macros-regexp-1): New variable and function.
6350         (semantic--grammar-macros-regexp-2): New variable.
6351         (semantic--grammar-macros-matcher): New function.
6352         (semantic-grammar-builtin-names)
6353         (semantic-grammar-builtin-names-regexp)
6354         (semantic-grammar-builtin-names-matcher): Remove.
6355         (semantic-grammar-mode-keywords-1): Use
6356         `semantic--grammar-macros-matcher'.
6357         (semantic-grammar-map): Add ':' to electric punctuations.
6358         (semantic-grammar-skip-comments-backward)
6359         (semantic-grammar-goto-grammar-indent-anchor)
6360         (semantic-grammar-between-name-and-colon-p)
6361         (semantic-grammar-grammar-compute-indentation): Remove.
6362         (semantic-grammar-backward-item)
6363         (semantic-grammar-anchored-indentation): New function.
6364         (semantic-grammar-do-grammar-indent): Simplify.  Use above new
6365         functions.
6366
6367         * semantic-grammar-wy.el: Re-generated.
6368
6369 2003-08-11  Richard Y. Kim <ryk@ap.com>
6370
6371         * doc/semantic.texi: Added @semantic{} macro.
6372
6373         * doc/lang-support-guide.texi:
6374         Added sections titled "Tag Structure" and "Semantic Overload Mechanism".
6375
6376 2003-08-06  David Ponce  <david@dponce.com>
6377
6378         * semantic-find.el (semantic-find-first-tag-by-name): Use `assoc' and
6379         `assoc-ignore-case' instead of `assoc-string'.
6380
6381 2003-08-05  Eric M. Ludlam  <zappo@gnu.org>
6382
6383         * wisent/Makefile (languages_LISP): Removed unneeded lisp code
6384         (Wisent.mk): Include this file
6385         (dist): Aux makefile added to dist.
6386
6387         * wisent/Wisent.mk: Makefile extension for autogenerated Wisent code.
6388
6389 2003-08-02  David Ponce  <david@dponce.com>
6390
6391         * wisent/wisent-awk.el, wisent/wisent-cim.el: Obsolete file removed.
6392
6393         * wisent/wisent-python.el (wisent-python-wy): Require.
6394         (wisent-python-parser-tables, wisent-python-keywords)
6395         (wisent-python-tokens): Remove.
6396         (wisent-python-default-setup): Moved.  Call generated function to
6397         setup parser internals.  Do user's setup here.
6398
6399         * wisent/wisent-java-tags.el (wisent-java-tags-wy): Require.
6400         (wisent-java-parser-tables, wisent-java-keywords)
6401         (wisent-java-tokens): Remove.
6402         (wisent-java-default-setup): Call generated function to setup
6403         parser internals.  Do user's setup here.  Use new variable
6404         `senator-step-at-tag-classes'.
6405
6406         * wisent/wisent-java.el (wisent-java-wy): Require.
6407         (wisent-java-parser-tables, wisent-java-keywords)
6408         (wisent-java-tokens): Remove.
6409         (wisent-java-default-setup): Call generated function to setup
6410         parser internals.  Do user's setup here.  Use new variable
6411         `senator-step-at-tag-classes'.
6412         (semantic-default-java-setup): Remove obsolete `remove-hook'.
6413
6414         * wisent/wisent-java-tags.wy, wisent/wisent-java.wy, wisent/wisent-python.wy:
6415         (%outputfile, %parsetable, %tokentable)
6416         (%keywordtable, %setupfunction, setupcode): Remove.
6417
6418         * wisent/wisent-grammar.el (require 'cl): Remove.
6419         (wisent-grammar-EXPAND)
6420         (wisent-grammar-EXPANDFULL): Fix error message.
6421         (wisent-grammar-CODE-TAG): Add missing comma.
6422         (wisent-grammar-expand-builtins): No more expand macros.
6423         (wisent-grammar-expand-sexpr): Remove.  All callers changed.
6424         (wisent-grammar-setupcode-builder): Return only code to setup
6425         parser internals.
6426
6427         * wisent/wisent-calc.el (wisent-calc-wy): Require.
6428         (wisent-calc-automaton, wisent-c-keyword-table)
6429         (wisent-calc-tokens): Remove.
6430         (wisent-calc-setup-parser): Moved in grammar epilogue.
6431         (wisent-calc): No more depend on `wisent-calc-automaton'.
6432
6433         * wisent/wisent-calc.wy: (%outputfile, %parsetable, %tokentable)
6434         (%setupfunction, setupcode): Remove.
6435         (epilogue) <wisent-calc-setup-parser>: New.
6436
6437         * wisent/wisent-c.el (wisent-c-wy): Require.
6438         (semantic-ast): Remove.  It is required in above library.
6439         (wisent-c-parser-automaton, wisent-c-keyword-table)
6440         (wisent-c-token-table): Remove.
6441         (wisent-c-default-setup): Call generated function to setup
6442         parser internals.  Do user's setup here.  Use new variable
6443         `senator-step-at-tag-classes'.
6444
6445         * wisent/wisent-c.wy: (%outputfile, %parsetable, %tokentable)
6446         (%keywordtable, %setupfunction): Remove.
6447         (prologue): New.
6448
6449         * wisent/wisent-awk.wy, wisent/wisent-cim.wy:
6450         (%outputfile, %parsetable, %tokentable)
6451         (%keywordtable, %setupfunction): Remove.
6452
6453         * wisent/wisent-c-wy.el, wisent/wisent-calc-wy.el, wisent/wisent-java-tags-wy.el, wisent/wisent-java-wy.el, wisent/wisent-python-wy.el:
6454         New generated file.
6455
6456         * bovine/semantic-skel.el (semantic-skeleton-by): Require.
6457         (semantic-toplevel-skeleton-bovine-table)
6458         (semantic-scheme-skeleton-table): Remove.
6459         (semantic-default-skel-setup): Call generated function to setup
6460         parser internals.  Do user's setup here.
6461
6462         * bovine/semantic-scm.el (semantic-scm-by): Require.
6463         (semantic-toplevel-scheme-bovine-table)
6464         (semantic-scheme-keyword-table): Remove.
6465         (semantic-default-scheme-setup): Call generated function to setup
6466         parser internals.  Do user's setup here.
6467
6468         * bovine/semantic-make.el (semantic-make-by): Require.
6469         (semantic-toplevel-make-bovine-table)
6470         (semantic-make-keyword-table): Remove.
6471         (semantic-default-make-setup): Call generated function to setup
6472         parser internals.  Do user's setup here.
6473
6474         * bovine/semantic-c.el (semantic-c-by): Require.
6475         (semantic-toplevel-c-bovine-table)
6476         (semantic-c-keyword-table): Remove.
6477         (semantic-default-c-setup): Call generated function to setup
6478         parser internals.  Do user's setup here.  Use new variable
6479         `senator-step-at-tag-classes'.
6480
6481         * bovine/c.by, bovine/make.by, bovine/scheme.by, bovine/skeleton.by:
6482         (setupcode, %outputfile, %parsetable)
6483         (%keywordtable, %setupfunction): Remove.
6484         (%package): New.
6485
6486         * bovine/bovine-grammar.el (bovine-grammar-setupcode-builder):
6487         Only setup parser internals.
6488
6489         * bovine/semantic-c-by.el, bovine/semantic-make-by.el, bovine/semantic-scm-by.el, bovine/semantic-skeleton-by.el:
6490         New generated file.
6491
6492         * semantic-grammar.wy: Parse new grammar outline.
6493
6494         (setupcode, %outputfile, %parsetable)
6495         (%tokentable, %setupfunction): Remove.
6496         (%start) Add prologue epilogue.
6497         (LANGUAGEMODE, LEFT, NONASSOC, PREC, PUT, QUOTEMODE)
6498         (RIGHT, SCOPESTART, START, TOKEN)
6499         (KEYWORDTABLE, OUTPUTFILE, PARSETABLE)
6500         (SETUPFUNCTION, TOKENTABLE): Keywords begin with `%'.
6501         (PACKAGE): New keyword.
6502         (PERCENT_PERCENT, PROLOGUE, EPILOGUE): New tokens.
6503         (PERCENT): Remove.
6504         (grammar): Add prologue and epilogue rules.
6505         (prologue, epilogue): New rules.
6506         (decl): Add package_decl, precedence_decl rules.  Remove
6507         left_decl, right_decl and nonassoc decl.
6508         (package_decl, precedence_decl, associativity): New rules.
6509         (any_symbol, level): Remove.  All callers changed.
6510
6511         * semantic-grammar.el:
6512         New outline of semantic input grammars, conform to bison's one.
6513         Lisp code generated from a grammar is now in its own library.
6514
6515         (semantic-grammar-wy, sformat): Require.
6516         (semantic-grammar-lex-prologue)
6517         (semantic-grammar-lex-epilogue): New lex analyzers.
6518         (semantic-grammar-lexer): Use them.
6519         (semantic-grammar-lex-epilogue-start): New function.
6520         (semantic-grammar-automaton)
6521         (semantic-grammar-keywords)
6522         (semantic-grammar-tokens): Remove.
6523         (semantic-grammar-prologue)
6524         (semantic-grammar-epilogue)
6525         (semantic-grammar-package): New functions.
6526         (semantic-grammar-setupcode-text)
6527         (semantic-grammar-setupcode-forms)
6528         (semantic-grammar-outputfile): Remove.
6529         (semantic-grammar-setupfunction)
6530         (semantic-grammar-tokentable)
6531         (semantic-grammar-parsetable)
6532         (semantic-grammar-keywordtable): New implementation.
6533         (semantic-grammar-autogen-cookie)
6534         (semantic-grammar-autogen-cookie-re)
6535         (semantic-grammar-buffer)
6536         (semantic-grammar-beginning-of-code)
6537         (semantic-grammar-beginning-of-body)
6538         (semantic-grammar-with-outputfile)
6539         (semantic-grammar-with-grammar-buffer)
6540         (semantic-grammar-update-def)
6541         (semantic-grammar-update-parsetable)
6542         (semantic-grammar-update-keywordtable)
6543         (semantic-grammar-update-tokentable)
6544         (semantic-grammar-update-setupfunction)
6545         (semantic-grammar-update-outputfile)
6546         (semantic-grammar-setupcode-value)
6547         (semantic-grammar-keywordtable-value)
6548         (semantic-grammar-tokentable-value)
6549         (semantic-grammar-parsetable-value): Remove.
6550         (semantic--grammar-input-buffer)
6551         (semantic--grammar-output-buffer)
6552         (semantic-grammar-insert-defconst)
6553         (semantic-grammar-insert-defun)
6554         (semantic-grammar-header-template)
6555         (semantic-grammar-footer-template)
6556         (semantic-grammar-header)
6557         (semantic-grammar-footer)
6558         (semantic-grammar-token-data)
6559         (semantic-grammar-keyword-data)
6560         (semantic-grammar-parser-data)
6561         (semantic-grammar-setup-data)
6562         (semantic-grammar-create-package): New.
6563         (semantic-grammar-syntax-table): Give word syntax class to '%'.
6564         (semantic-grammar-mode-keywords-1): Update for new syntax.
6565         (semantic-grammar-map): Map C-c C-c to
6566         `semantic-grammar-create-package'.
6567         (semantic-grammar-in-lisp-p): Take into account the epilogue code.
6568         (emantic-grammar-do-lisp-indent): Likewise.
6569         (semantic-grammar-mode): Doc fix.  Update semantic setup.
6570
6571         * semantic-grammar-wy.el: New generated file.
6572
6573 2003-08-01  Eric M. Ludlam  <zappo@gnu.org>
6574
6575         * bovine/c.by (setq): Use new names.
6576         (knr-arguments): Use new name of expand fcn.
6577
6578         * bovine/semantic-c.el (semantic-toplevel-c-bovine-table): new c.by
6579         (semantic-expand-c-tag): new name
6580         (semantic-c-tag-protection): new name
6581         (semantic-c-tag-template): new name
6582         (semantic-c-format-tag-uml-prototype): use new names
6583         (semantic-c-tag-abstract): new name
6584         (semantic-default-c-setup): use new override methods.
6585
6586         * semantic-cb.el (semantic-cb-new-class-browser):
6587         Use `semanticdb-find-tags-by-class',
6588         instead of old method.
6589
6590         * senator.el:
6591         (senator-step-at-tag-classes, senator-step-at-start-end-tag-classes):
6592         Added autoload cookies.
6593
6594         * semantic-tag-file.el (semantic-dependency-include-path):
6595         autoload cookie.
6596
6597         * semantic-sort.el (semantic-orphaned-member-metaparent-type):
6598         Autoload cookie.
6599
6600         * semanticdb-find.el (semanticdb-find-table-for-include):
6601         autoload cookie.
6602         (semanticdb-find-tags-by-class): New function
6603         (semanticdb-find-tags-by-class-method): New method.
6604
6605         * bovine/semantic-c.el: (semantic-default-c-setup):
6606         Use new name `semantor-step-at-tag-classes'
6607
6608         * semantic-texi.el: (semantic-default-texi-setup):
6609         Use new name `semantor-step-at-start-end-tag-classes'
6610         Use `insert-forgeign-tag' as new override methods.
6611
6612         * senator.el (senator-step-at-tag-classes): Renamed, obsolete old.
6613         (senator-step-at-start-end-tag-classes): Renamed, obsolete old.
6614         (senator-current-tag): renamed
6615         (senator-step-at-start-end-p): Use new names
6616         (senator-middle-of-tag-p): Renamed
6617         (senator-previous-tag-or-parent): Renamed
6618         (senator-full-tag-name): Renamed
6619         (senator-current-type-context): Use new names
6620         (senator-search-tag-name): Renamed
6621         (senator-search-forward-raw): use new names
6622         (senator-search-backward-raw): use new names
6623         (senator-next-tag): renamed
6624         (senator-previous-tag): renamed
6625         (senator-previous-token): renamed
6626         (senator-toggle-read-only): Use new names
6627         (senator-toggle-intangible): use new names
6628         (senator-set-face): use new names
6629         (senator-clear-tag): renamed
6630         (senator-prefix-map): use new names
6631         (senator-menu-bar): use new names
6632         (senator-beginning-of-defun): use new names
6633         (senator-end-of-defun): use new names
6634         (senator-add-log-tags): renamed
6635         (add-log-current-defun): use new names
6636         (senator-insert-foreign-tag): renamed.  Aliased, made compatible.
6637         (insert-register): use new names
6638
6639 2003-07-31  Eric M. Ludlam  <zappo@gnu.org>
6640
6641         * semanticdb-file.el: (semanticdb-default-file-name)
6642         (semanticdb-persistent-path): Doc fix
6643         (semanticdb-project-database-file): Rename token-version to tag-version.
6644         (semanticdb-create-database): Initialize renamed field
6645         (semanticdb-load-database): Test renamed field.
6646         (semanticdb-save-db): Print messages with tag instead of token.
6647
6648 2003-07-29  Eric M. Ludlam  <zappo@gnu.org>
6649
6650         * semantic-load.el (semantic-load-imenu-string): New variable
6651         (imenu init): Use above new variable for string.
6652
6653 2003-07-25  Eric M. Ludlam  <zappo@gnu.org>
6654
6655         * semanticdb-search.el (semanticdb-refresh-table):
6656         Doc fix (replace token with tag)
6657
6658         * semanticdb-el.el (semanticdb-elisp-sym->tag):
6659         Doc fix (replace token with tag)
6660
6661         * semanticdb.el: (semanticdb-refresh-table)
6662         (semanticdb-needs-refresh-p): doc fix (replace 'token' with tag)
6663         (semanticdb-save-current-db, semanticdb-save-all-db):doc fix.
6664         Message fix.
6665         (semanticdb-project-predicate-functions): doc fix
6666         (semanticdb-kill-hook)
6667         (semanticdb-table-oob-sanity-check): message fix
6668
6669 2003-07-23  Eric M. Ludlam  <zappo@gnu.org>
6670
6671         * doc/Makefile: EDE Generated Makefile.
6672
6673         * doc/Project.ede: Project file for semantic doc.
6674
6675 2003-07-22  David Ponce  <david@dponce.com>
6676
6677         * bovine/semantic-el.el (lisp-mode):
6678         Define as child of `emacs-lisp-mode'.
6679         (lisp-mode-hook): Add hook `semantic-default-elisp-setup' and
6680         autoload cookie.
6681
6682         * semantic-fw.el: (semantic-set-parent-mode)
6683         (semantic-get-parent-mode): New functions.
6684         (define-semantic-child-mode): New macro.
6685         (semantic-current-bindings): Use `semantic-get-parent-mode'.
6686         (semantic-fw-font-lock-keywords): Add highlighting of
6687         `define-semantic-child-mode'.
6688
6689 2003-07-18  Eric M. Ludlam  <zappo@gnu.org>
6690
6691         * semantic-load.el:
6692         (semantic-show-tag-boundaries-mode, semantic-highlight-by-attribute-mode):
6693         Turn on by default (for a little while anyway.)
6694
6695         * senator.el (menu):
6696         Added stickyfunc, tag-boundary, and attribute highlighting
6697         mode menus.
6698
6699         * semantic-util-modes.el (global-semantic-highlight-edits-mode):
6700         Fix doc.
6701         (global-semantic-show-tag-boundaries-mode)
6702         (global-semantic-highlight-by-attribute-mode)
6703         (global-semantic-show-tag-boundaries-mode)
6704         (semantic-highlight-attribute-alist_
6705         (semantic-highlight-by-attribute-hook)
6706         (semantic-show-tag-boundaries-hook)
6707         (defvar semantic-highlight-by-attribute-mode)
6708         (defvar semantic-show-tag-boundaries-mode): New variables
6709         (semantic-highlight-attribute-face-private)
6710         (semantic-highlight-attribute-face-protected)
6711         (semantic-tag-boundary-face): New faces
6712         (semantic-tag-boundary-p)
6713         (global-semantic-highlight-by-attribute-mode)
6714         (semantic-hba-clear-highlighting)
6715         (semantic-hba-highlight-tag)
6716         (semantic-hba-reparse-hook)
6717         (semantic-highlight-by-attribute-mode)
6718         (semantic-highlight-by-attribute-setup)
6719         (semantic-show-tag-boundaries-mode)
6720         (semantic-show-tag-boundaries-setup)
6721         (semantic-stb-clear-boundaries)
6722         (semantic-stb-highlight-tag-line1)
6723         (semantic-stb-reparse-hook)
6724         (semantic-tag-boundary-overlay-p)
6725         (semantic-tag-boundary-p-default): New functions
6726
6727         * semantic-format.el (ezimage): New dependency
6728         (semantic-format-use-images-flag): New variable
6729         (semantic-format-tag-protection-image-alist): New variable
6730         (semantic-format-tag-uml-protection-to-string)
6731         (semantic-format-tag-uml-protection): Add color parameter.
6732         Add image if applicable.
6733         (semantic-format-tag-uml-abbreviate-default)
6734         (semantic-format-tag-uml-prototype-default)
6735         (semantic-format-tag-uml-concise-prototype-default):
6736         Call format-tag-uml-protection with new color parameter.
6737
6738 2003-07-16  Eric M. Ludlam  <zappo@gnu.org>
6739
6740         * document.el:
6741         (document-insert-texinfo, document-generate-documentation)
6742         (document-generate-new-documentation, document-function-name-comment)
6743         (document-parameter-comment, document-update-paramlist)
6744         (document-massage-to-texinfo): Use -tag- based names instead of
6745         -nonterminal- names.  Rename variables 'nonterm' to 'tag'.
6746
6747         * semantic-tag-ls.el (semantic-tag-calculate-parent): New function
6748         (semantic-tag-protection): Use above.
6749
6750         * semantic-decorate.el:
6751         (semantic-tag-create-secondary-overlay, semantic-tag-delete-secondary-overlay)
6752         (semantic--tag-unlink-secondary-overlays, semantic--tag-link-secondary-overlays)
6753         (semantic-tag-secondary-overlays): New functions.
6754
6755         * semantic-tag.el: (semantic-tag-add-hook, semantic-tag-remove-hook)
6756         (semantic--tag-run-hooks): New functions
6757         (semantic--tag-unlink-from-buffer, semantic--tag-link-to-buffer):
6758         Run hooks specific to each action.
6759
6760         * semantic-format.el:
6761         (semantic--format-uml-post-colorize, semantic-uml-attribute-string)
6762         (semantic-format-tag-uml-protection): Use new names
6763         semantic-tag-abstract, semantic-tag-static, semantic-tag-leaf and
6764         semantic-tag-protection.
6765
6766 2003-07-09  Eric M. Ludlam  <zappo@gnu.org>
6767
6768         * Makefile ("semantic_LISP"):
6769         Added semantic-tag-file, semantic-doc, and semantic-tag-ls.
6770
6771         * Project.ede ("semantic"):
6772         Added semantic-tag-file, semantic-doc, and semantic-tag-ls.
6773
6774         * semantic-util.el:
6775         (semantic-dependency-include-path, semantic-find-dependency)
6776         (semantic-find-nonterminal, semantic-find-documentation)
6777         (semantic-find-doc-snarf-comment, semantic-prototype-file)
6778         (semantic-nonterminal-protection)
6779         (semantic-nonterminal-protection-default)
6780         (semantic-nonterminal-abstract, semantic-nonterminal-abstract-default)
6781         (semantic-nonterminal-leaf, semantic-nonterminal-leaf-default)
6782         (semantic-nonterminal-static-default, semantic-nonterminal-full-name)
6783         (semantic-nonterminal-full-name-default, semantic-narrow-to-token)
6784         (semantic-with-buffer-narrowed-to-current-token)
6785         (semantic-with-buffer-narrowed-to-token):
6786         Deleted.  Moved to other files and renamed.
6787
6788         * semantic-sb.el (semantic-sb-token-jump):
6789         use semantic-go-to-tag instead of old name.
6790
6791         * semantic-tag-file.el (semantic-go-to-tag):
6792         Use semantic-dependency-tag-file instead of old name.
6793
6794         * semantic-tag-ls.el:
6795         (semantic-tag-protection, semantic-tag-protection-default, semantic-tag-abstract)
6796         (semantic-tag-abstract-default, semantic-tag-leaf, semantic-tag-leaf-default)
6797         (semantic-tag-static-default, semantic-tag-full-name, semantic-tag-full-name-default):
6798         Copied from semantic-util.el
6799         Renamed to new naming conventions
6800         Obsoleted old names.
6801
6802         * semantic-doc.el:
6803         (semantic-documentation-for-tag, semantic-doc-snarf-comment-for-tag)
6804         Copied from semantic-util.el.
6805         Renamed functions to better suit new naming conventions.
6806         Obsoleted old names.
6807
6808         * semantic-tag-file.el:
6809         (semantic-go-to-tag, semantic-dependency-include-path)
6810         (semantic-dependency-tag-file, semantic-prototype-file)
6811         Copied from semantic-util.el.
6812         Renamed functions to better suit new naming conventions.
6813         Obsoleted old names.
6814
6815         * semantic-tag.el:
6816         (semantic-narrow-to-tag, semantic-with-buffer-narrowed-to-current-tag)
6817         (semantic-with-buffer-narrowed-to-tag): Copied from semantic-util.el.
6818         Renamed.  Obsoleted old names.
6819
6820         * semantic-format.el (semantic-format-tag-functions):
6821         Add autoload cookie to.
6822         (semantic-token->text-functions): Alias to the replacement.
6823
6824         * semantic-complete.el (require): Make loading of tooltip optional.
6825         (semantic-displayor-focus-request, semantic-complete-jump): Use
6826         `semantic-momentary-highlight-tag' instead of the `-token' version.
6827
6828 2003-07-07  David Ponce  <david@dponce.com>
6829
6830         * wisent/wisent-c.el, wisent/wisent-c.wy, doc/C99-gram.texi: New file.
6831
6832         * wisent/wisent-grammar.el:
6833         (wisent-grammar-AST-ADD, wisent-grammar-AST-PUT)
6834         (wisent-grammar-AST-GET, wisent-grammar-AST-GET1)
6835         (wisent-grammar-AST-GET-STRING)
6836         (wisent-grammar-AST-MERGE): New functions.
6837         (wisent-grammar-builtins): Add above new AST built-ins.
6838         (wisent-grammar-builtin-names): New function.
6839         (wisent-grammar-expand-builtins): Expand car of expression too.
6840         (semantic-grammar-mode): Set built-in names.
6841
6842         * semantic-grammar.el: (semantic-grammar-builtin-names)
6843         (semantic-grammar-builtin-names-regexp): New variables.
6844         (semantic-grammar-builtin-names-matcher): New function.
6845         (semantic-grammar-mode-keywords-1): Use it.
6846
6847         * semantic-ast.el: New library.
6848
6849 2003-07-04  David Ponce  <david@dponce.com>
6850
6851         * senator.el (senator-momentary-highlight-token): Renamed to...
6852         (senator-momentary-highlight-tag): All callers updated.  Use new
6853         semantic-decorate API.
6854         (senator-toggle-read-only, senator-toggle-intangible)
6855         (senator-set-face, senator-clear-token)
6856         (senator-menu-bar): Use new semantic-decorate API.
6857
6858         * semantic-decorate.el:
6859         (semantic-highlight-token, semantic-unhighlight-token)
6860         (semantic-momentary-highlight-token)
6861         (semantic-momentary-unhighlight-token)
6862         (semantic-set-token-face, semantic-set-token-invisible)
6863         (semantic-token-invisible-p, semantic-set-token-intangible)
6864         (semantic-token-intangible-p, semantic-set-token-read-only)
6865         (semantic-token-read-only-p): Add autoload cookies.
6866
6867 2003-07-03  Eric M. Ludlam  <zappo@gnu.org>
6868
6869         * Project.ede ("semantic"): Added semantic-decorate.el
6870
6871         * Makefile (semantic_LISP): Added semantic-decorate.el
6872
6873         * semantic-util.el:
6874         (semantic-highlight-token, semantic-unhighlight-token)
6875         (semantic-momentary-unhighlight-token, semantic-momentary-highlight-token)
6876         (semantic-set-token-face, semantic-set-token-invisible)
6877         (semantic-token-invisible-p, semantic-set-token-intangible)
6878         (semantic-token-intangible-p, semantic-overlay-signal-read-only)
6879         (semantic-set-token-read-only, semantic-token-read-only-p):
6880         Removed into semantic-decorate.el.
6881
6882         * semantic-decorate.el: Coped from semantic-util.
6883         Renamed all fns to new `tag' notation.
6884
6885 2003-06-29  David Ponce  <david@dponce.com>
6886
6887         * wisent/wisent.el (wisent-loop): New internal variable.
6888         (wisent-clearin): Doc fix.
6889         (wisent-abort): New macro.
6890         (wisent-pre-parse-hook, wisent-post-parse-hook): New hooks.
6891         (wisent-parse): Use above new stuff.
6892
6893         * semantic-grammar.el (semantic-grammar-mode-keywords-1):
6894         In rules, highlight reserved
6895         terminal `error' in bold face.
6896         (semantic-grammar-in-lisp-p): New function.
6897
6898 2003-06-20  David Ponce  <david@dponce.com>
6899
6900         * semanticdb-find.el: (semanticdb-find-tags-by-name)
6901         (semanticdb-find-tags-by-name-regexp)
6902         (semanticdb-find-tags-for-completion)
6903         (semanticdb-deep-find-tags-by-name)
6904         (semanticdb-deep-find-tags-by-name-regexp)
6905         (semanticdb-deep-find-tags-for-completion)
6906         (semanticdb-find-tags-external-children-of-type): Add autoload
6907         cookies.
6908
6909         * semantic-grammar.el (semantic-grammar-goto-grammar-indent-anchor):
6910         In certain cases
6911         `forward-sexp' ignore important punctuations.  Use
6912         `skip-syntax-backward' instead to skip punctuations.
6913
6914 2003-06-19  David Ponce  <david@dponce.com>
6915
6916         * semantic-grammar.el (semantic-grammar-mode):
6917         Set buffer local value of
6918         `parse-sexp-ignore-comments' to non-nil to fix indentation
6919         problems when there are unbalanced parenthesis in comments.
6920         (semantic-grammar-goto-grammar-indent-anchor): Consider %prec like
6921         another symbol in rule.
6922         (semantic-grammar-grammar-compute-indentation): Don't consider
6923         %prec like other percent keywords that are aligned at beginning of
6924         line.
6925
6926 2003-06-08  Eric M. Ludlam  <zappo@gnu.org>
6927
6928         * semantic-complete.el (require): Add dependency on avoid and tooltips.
6929         (semantic-complete-read-tag-buffer-deep): Moved
6930         (semantic-displayor-focus-abstract,semantic-displayor-tooltip)
6931         (semantic-displayor-show-request): Cleaned up white space and doc.
6932
6933         * semanticdb.el (semanticdb-current-database-list):
6934         Use reference directory, not file
6935         storage.
6936
6937 2003-06-06  David Ponce  <david@dponce.com>
6938
6939         * tests/test.cpp: Sync. with HEAD.
6940         New test cases for nested classes or structs defined outside of
6941         the containing class/struct, and for "short int".
6942
6943         * semantic-c.el: Sync. with HEAD.
6944         (semantic-toplevel-c-bovine-table): Re-generated.
6945
6946         * c.bnf: Sync. with HEAD.
6947         From Jens Rock <jens.rock@asamnet.de>:
6948         (typesimple): Handle an opt-class before the type name, and return
6949         it in the `parent' extra-spec of the tag.
6950         (builtintype-types): Handle "short int".
6951
6952 2003-06-05  David Ponce  <david@dponce.com>
6953
6954         * tests/test.cpp:
6955         New test cases for nested classes or structs defined outside of
6956         the containing class/struct, and for "short int".
6957
6958         * bovine/semantic-c.el (semantic-toplevel-c-bovine-table):
6959         Re-generated.
6960
6961         * bovine/c.by: Updated comments.
6962
6963         From Jens Rock <jens.rock@asamnet.de>:
6964         (typesimple): Handle an opt-class before the type name, and return
6965         it in the `parent' attribute of the tag.
6966         (builtintype-types): Handle "short int".
6967
6968 2003-06-04  David Ponce  <david@dponce.com>
6969
6970         * semantic-grammar.el (semantic-grammar-goto-grammar-indent-anchor):
6971         Fixed infinite
6972         loop when indenting after a %prec clause.
6973
6974 2003-06-03  Eric M. Ludlam  <zappo@gnu.org>
6975
6976         * bovine/erlang.bnf:
6977         Incorporated changes from David Wallin and Vladimir G. Sekissov.
6978
6979 2003-05-29  Eric M. Ludlam  <zappo@gnu.org>
6980
6981         * semantic-find.el (semantic-flatten-tags-table):
6982         Removed.  Moved to semantic-sort.el
6983
6984         * semantic-sort.el (semantic-flatten-tags-table):
6985         New, from semantic-find.el
6986
6987         * semantic-util-modes.el: (global-semantic-highlight-edits-mode)
6988         (global-semantic-show-unmatched-syntax-mode)
6989         (global-semantic-show-parser-state-mode)
6990         (global-semantic-summary-mode)
6991         (global-semantic-stickyfunc-mode): Improve doc strings.
6992         (semantic-stickyfunc-indent-string): New variable
6993         (semantic-stickyfunc-mode-setup): Use above.
6994
6995         * semantic-sb.el (semantic-sb-info-format-tag-function):
6996         Add this back in.  It is used
6997         in speedbar.el.
6998
6999         * semantic-load.el (header-line-format):
7000         Quote in this symbol when testing.
7001
7002         * semantic-find.el (semantic-flatten-tags-table):
7003         Flatten only tags with positions.
7004
7005         * semanticdb-find.el: Added todo list.
7006
7007         * Makefile (semantic_LISP): Added semantic-complete and semantic-sort
7008         (.PHONY): Documentation target
7009         (Documentation): build target for the doc directory
7010         (tags): tags in the doc dir
7011         (dist): distribute the doc dir.
7012
7013         * Project.ede (semantic): Added semantic-sort and semantic-complete
7014         (tools): Added semantic-regtest
7015
7016         * semantic-util.el: - (defvar semantic-bucketize-token-token
7017         - (defun semantic-bucketize (tags &optional parent filter)
7018         - (defvar semantic-orphaned-member-metaparent-type "class"
7019         - (defvar semantic-mark-external-member-function nil
7020         - (defun semantic-adopt-external-members (tags)
7021         (semantic-string-lessp-ci)
7022         (semantic-sort-token-type)
7023         (semantic-sort-tokens-by-name-increasing)
7024         (semantic-sort-tokens-by-name-decreasing)
7025         (semantic-sort-tokens-by-type-increasing)
7026         (semantic-sort-tokens-by-type-decreasing)
7027         (semantic-sort-tokens-by-name-increasing-ci)
7028         (semantic-sort-tokens-by-name-decreasing-ci)
7029         (semantic-sort-tokens-by-type-increasing-ci)
7030         (semantic-sort-tokens-by-type-decreasing-ci)
7031         (semantic-nonterminal-external-member-parent)
7032         (semantic-nonterminal-external-member-parent-default)
7033         (semantic-nonterminal-external-member-p)
7034         (semantic-nonterminal-external-member-p-default)
7035         (semantic-nonterminal-external-member-children)
7036         (semantic-nonterminal-external-member-children-default):
7037         Deleted.  Moved to semantic-sort.el
7038
7039         * semantic-format.el (semantic-format-tag-prin1): Doc fix
7040         (semantic-format-tag-summarize-default): Use
7041         `semantic-bucketize-tag-class' instead of old name.
7042
7043         * semantic-sort.el: Sorting routines pulled from semantic-util.el
7044
7045 2003-05-27  Eric M. Ludlam  <zappo@gnu.org>
7046
7047         * bovine/semantic-c.el (semantic-c-reconstitute-token):
7048         Support function pointers
7049         (semantic-c-format-tag-name): New override method
7050         (semantic-default-c-setup): Added `semantic-c-format-tag-name'
7051         override method.
7052
7053         * bovine/c.by: Support function pointers.
7054
7055 2003-05-21  Eric M. Ludlam  <zappo@gnu.org>
7056
7057         * bovine/semantic-c.el:
7058         (semantic-toplevel-c-bovine-table),(semantic-c-keyword-table),
7059         (semantic-default-c-setup): new c.by v 1.13
7060
7061         * bovine/c.by (arg-sub-list): Support ... as a variable.
7062
7063 2003-05-19  David Ponce  <david@dponce.com>
7064
7065         * senator.el (senator-completion-menu-popup):
7066         Reverted 2002-12-29 change:
7067
7068         "Use a local `imenu-default-goto-function' to avoid conflicts with
7069         another buffer local definition of that function.  Ensure that the
7070         local goto function will return the selected imenu item."
7071
7072         That conflicted with `imenu--mouse-menu' specification, and worked
7073         only with buggy version in GNU Emacs 21.3.50.1 HEAD.
7074
7075 2003-05-13  David Ponce  <david@dponce.com>
7076
7077         * semantic-complete.el (semantic-complete-read-tag-engine):
7078          Fixed condition that was
7079         always true.
7080         (semantic-complete-done):  Use `semantic-complete-try-completion'
7081         instead of `semantic-complete-do-completion' to not alter last
7082         focused tag.  Accept input that match displayor focus entry.
7083         (semantic-complete-try-completion): New function.
7084         (semantic-complete-do-completion): Moved the actual completion
7085         code into the above new function.  Use it.
7086         (semantic-complete-jump): New command.
7087
7088 2003-05-12  David Ponce  <david@dponce.com>
7089
7090         * semantic-complete.el (semantic-complete-done):
7091         Accept input that matches one element of
7092         calculated completions.
7093
7094 2003-05-10  Eric M. Ludlam  <zappo@gnu.org>
7095
7096         * semantic-complete.el:
7097         (semantic-minibuffer-conents, semantic-delete-minibuffer-conents):
7098         New aliases.
7099         (semantic-complete-done, semantic-complete-do-completion)
7100         (semantic-collector-next-action, semantic-displayor-next-action):
7101         Use new aliases instead of the original.
7102
7103         * semantic-complete.el (semantic-complete-read-tag-buffer-deep):
7104         Comment about tooltip displayor.
7105         (semantic-displayor-tooltip): New class
7106         (semantic-displayor-show-request:semantic-displayor-tooltip): New method
7107         (semantic-displayor-tooltip-show): New function.
7108
7109 2003-05-02  Eric M. Ludlam  <zappo@gnu.org>
7110
7111         * semantic-complete.el (semantic-complete-read-tag-engine):
7112         Be aware of a displayor's ability
7113         to focus in on a specific tag.
7114         (semantic-complete-do-completion): Use updated displayor APIs.
7115         Account for new 'focus state.
7116         (semantic-complete-read-tag-buffer-deep): Try out new focusing displayor.
7117         (semantic-collector-next-action): Use displayor to determine
7118         display's state.
7119         (semantic-displayor-abstract): Remove initarg for table.
7120         Add `last-prefix' slot.
7121         (semantic-displayor-next-action): New methods
7122         (semantic-displayor-set-completions): Add argument.
7123         (semantic-displayor-focus-request): New method
7124         (semantic-displayor-current-focus): New method
7125         (semantic-displayor-focus-abstract): New class
7126         (semantic-displayor-set-completions, semantic-displayor-focus-next-tag)
7127         (semantic-displayor-current-focus): New methods on above new class.
7128         (semantic-displayor-traditional-with-focus-highlight): New class.
7129         (semantic-displayor-focus-request): New method on above.
7130         (semantic-complete-test): New name.
7131
7132 2003-04-26  Eric M. Ludlam  <zappo@gnu.org>
7133
7134         * semantic-complete.el (semantic-ctxt): New dependency
7135         (semantic-complete-read-tag-engine): Update doc.
7136         Add full support for default-tag parameter.  Dynamically add it to the
7137         prompt.  Fetch the default if the user just hits RET.
7138         (semantic-complete-done): Accept if prompt is empty.
7139         (semantic-complete-choose-default): New fcn
7140         (semantic-complete-read-tag-buffer-deep): Doc fix
7141         (constructor): Unbind `match-list'.
7142         (semantic-completion-test): Use %S format string.
7143
7144         * semantic-complete.el (semantic-complete-key-map):
7145         Add history navigation
7146         (semantic-complete-read-tag-engine): Provide default history symbol.
7147         (semantic-complete-help): Deleted
7148         (semantic-complete-done): Don't exit unless there is a match.
7149         (semantic-complete-do-completion): Use `delete-minibuffer-contents'.
7150
7151         * semantic-complete.el (semantic-collector-per-buffer-list):
7152         make buffer local
7153         (semantic-collector-calculate-completions): Use complare strings better.
7154         Do not optimize when last-prefix is used.
7155         (semantic-collector-all-completions): Safe reference of
7156         last-all-completions slot.
7157
7158         * semantic-complete.el: Completion tools.
7159
7160 2003-04-22  David Ponce  <david@dponce.com>
7161
7162         * semantic.el (semantic-version): Updated to 1.4.4.
7163
7164         * Project.ede (ede-proj-project "semantic"): Updated :version to 1.4.4.
7165
7166 2003-04-19  Richard Y. Kim <ryk@ap.com>
7167
7168         * semantic-tag.el: Rephrased the doc-string for semantic-tag-file-name.
7169         Also added semantic-alias-obsolete form for semantic-equivalent-tokens-p.
7170
7171         * semantic-util.el: Corrected spelling in comments and strings.
7172
7173 2003-04-14  Klaus Berndl <klaus.berndl@sdm.de>
7174
7175         * semantic-regtest.el:
7176         Added first try of compatibility code so this library works with semantic
7177         2.0 as well as with semantic 1.4.
7178
7179 2003-04-12  Eric M. Ludlam  <zappo@gnu.org>
7180
7181         * semantic-regtest.el: (semantic-regtest-convert-tag-table)
7182         (semantic-regtest-convert-tag): New functions.
7183
7184 2003-04-12  Klaus Berndl <klaus.berndl@sdm.de>
7185
7186         * semantic-regtest.el: Initial version of the regression-test library
7187
7188 2003-04-11  Klaus Berndl <klaus.berndl@sdm.de>
7189
7190         * semantic-util-modes.el (semantic-stickyfunc-fetch-stickyline):
7191         Search forward to the tag-name to get
7192         more useful information in the header line.
7193
7194         * semantic-util-modes.el (semantic-stickyfunc-fetch-stickyline):
7195         Searching the token-name to get more
7196         useful information in the header line
7197
7198 2003-04-10  Klaus Berndl <klaus.berndl@sdm.de>
7199
7200         * NEWS: Added news for bugfixes of the c++-grammar
7201
7202 2003-04-09  David Ponce  <david@dponce.com>
7203
7204         * wisent/wisent-python.el (wisent-python-parser-tables): Re-generated.
7205
7206         * wisent/wisent-java-tags.wy, wisent/wisent-java.wy (setupcode):
7207         Use `semantic-format-tag-prototype' for the
7208         `semantic-imenu-summary-function'.
7209
7210         * wisent/wisent-java-tags.el, wisent/wisent-java.el (wisent-java-default-setup):
7211         Re-generated.
7212         Override `format-tag-prototype' instead of `prototype-nonterminal'.
7213
7214         * bovine/semantic-java.el: (semantic-java-prototype-function)
7215         (semantic-java-prototype-variable)
7216         (semantic-java-prototype-type): Use semantic-format-tag API.
7217         (semantic-java-prototype-nonterminal): Renamed...
7218         (semantic-java-prototype-tag): New function.  Use
7219         semantic-format-tag API.
7220         (semantic-java-find-documentation): Use `semantic-current-tag'.
7221
7222         * senator.el: (senator-completion-menu-summary-function)
7223         (senator-completion-menu-item)
7224         (senator-insert-foreign-token-default)
7225         (senator-insert-foreign-token, senator-copy-token)
7226         (senator-eldoc-print-current-symbol-info): Use semantic-format-tag
7227         API.
7228         (senator-add-log-tokens): Doc fix.
7229         (senator-find-current-symbol-tag): New function.
7230         (senator-eldoc-print-current-symbol-info-default): Use it.
7231
7232         * semantic-format.el (semantic-format-tag-prototype-default):
7233         Only set args if
7234         appropriate.
7235
7236 2003-04-09  Richard Y. Kim <ryk@ap.com>
7237
7238         * doc/app-dev-guide.texi, doc/glossary.texi, doc/lang-support-guide.texi, doc/semantic.texi, doc/user-guide.texi:
7239         Cut and pasted the content of old semantic.texi into separate files.
7240
7241         Also started documenting new API functions.
7242
7243 2003-04-09  Eric M. Ludlam  <zappo@gnu.org>
7244
7245         * bovine/semantic-c.el (semantic-c-nonterminal-protection):
7246         Defaultprotection is now nil.
7247         (semantic-c-format-tag-type): New override.
7248         (semantic-c-template-string-body)
7249         (semantic-c-concise-prototype-nonterminal)
7250         (semantic-c-uml-prototype-nonterminal): Use `semantic-format-tag*'
7251         for tag formating.
7252         (semantic-default-c-setup): Setup above new overrides.
7253
7254         * Makefile (semantic_LISP): Add semantic-format.el
7255
7256         * Project.ede (semantic): Add semantic-format.el
7257
7258         * semantic-ia-sb.el (semantic-ia-sb-key-map):
7259         Use `semantic-ia-sb-show-tag-info'.
7260         (semantic-ia-sb-show-tag-info): New name
7261
7262         * semantic-ia-sb.el: (semantic-ia-speedbar)
7263         (semantic-ia-sb-string-list)
7264         (semantic-ia-sb-completion-list)
7265         (semantic-ia-sb-tag-info)
7266         (semantic-ia-sb-line-path)
7267         (semantic-ia-sb-complete): Use new semantic-tag, and
7268         semantic-format-tag methods.
7269
7270         * semantic-ia.el: (semantic-ia-completion-format-tag-function)
7271         (semantic-ia-completion-menu-format-tag-function):  New name.
7272         Use `semantic-format-tag-custom-list
7273         (semantic-ia-cache): doc fix.
7274         (semantic-ia-complete-symbol)
7275         (semantic-ia-complete-symbol-menu)
7276         (semantic-ia-complete-tip): Use `tag' instead of `token' for names.
7277
7278         * semantic-example.el:
7279         (se-jump, se-summary-function, se-show, se-db-apropos-show):
7280         Use new -tag- API calls.
7281
7282         * semanticdb-system.el (Commentary): Doc fix.
7283
7284         * semanticdb-search.el: (semanticdb-find-nonterminal-by-token-method)
7285         (semanticdb-find-nonterminal-by-name-method)
7286         (semanticdb-find-nonterminal-by-name-regexp-method)
7287         (semanticdb-find-nonterminal-by-type-method)
7288         (semanticdb-find-nonterminal-by-property-method)
7289         (semanticdb-find-nonterminal-by-extra-spec-method)
7290         (semanticdb-find-nonterminal-by-extra-spec-value-method)
7291         (semanticdb-find-nonterminal-external-children-of-type-method):
7292         Use `semantic-brute-find-tags*' functions..
7293
7294         * semanticdb.el (semanticdb-table-oob-sanity-check):
7295         Use semantic-format-tag-summarize
7296
7297         * semantic-cb.el (semantic-cb-token): Use semantic-tag for :type
7298         (semantic-cb-complete-type, semantic-cb-find-parent)
7299         (semantic-cb-convert-type, semantic-cb-convert-children)
7300         (initialize-instance, eieio-speedbar-description): Use new semantic-tag*,
7301         semantic-format-tag* functions
7302
7303         * semantic-analyze.el (semantic-analyze-summary-function):
7304         Use `semantic-format-tag-custom-list'
7305         (semantic-analyze-princ-sequence): Use `semantic--format-colorize-text'.
7306
7307         * semantic-sb.el (semantic-sb-button-format-tag-function): New name
7308         (semantic-sb-info-token->text-function): Commented out (not used)
7309         (semantic-sb-one-button): Use new name of above variable.
7310
7311         * semantic-texi.el: (semantic-texi-update-doc-from-texi)
7312         (semantic-texi-goto-source): Use `semanticdb-deep-find-*' for searches.
7313
7314         * semantic-imenu.el (semantic-imenu-summary-function):
7315         Use `semantic-format-tag-custom-list'.
7316         (semantic-imenu-tag-overlay): Doc fix.
7317         (semantic-create-imenu-subindex): Make sure tags have a position
7318         before adding them to imenu.
7319         (semantic-default-which-function): Use `semantic-format-tag*' for
7320         tag translation.
7321
7322         * semantic-util.el (semantic-describe-token):
7323         Use semantic-format-tag-summarize.
7324         (semantic-sanity-check): Use semantic-format-tag-concise-prototype.
7325
7326         * semantic-util.el: (semantic-recursive-find-nonterminal-by-name)
7327         (semantic-token->text-functions, semantic-token->text-custom-list)
7328         (semantic-function-argument-separator)
7329         (semantic-test-all-token->text-functions, semantic-face-alist)
7330         (semantic-colorize-text, semantic-colorize-merge-text)
7331         (semantic-prin1-nonterminal, semantic-name-nonterminal)
7332         (semantic-name-nonterminal-default, semantic-abbreviate-nonterminal)
7333         (semantic-abbreviate-nonterminal-default, semantic-summarize-nonterminal)
7334         (semantic-summarize-nonterminal-default, semantic-prototype-nonterminal)
7335         (semantic-prototype-nonterminal-default-args)
7336         (semantic-prototype-nonterminal-default)
7337         (semantic-concise-prototype-nonterminal)
7338         (semantic-concise-prototype-nonterminal-default)
7339         (semantic-uml-colon-string, semantic-uml-no-protection-string)
7340         (semantic-uml-post-colorize, semantic-uml-attribute-string)
7341         (semantic-uml-protection-to-string)
7342         (semantic-uml-token-or-string-to-string)
7343         (semantic-uml-abbreviate-nonterminal)
7344         (semantic-uml-abbreviate-nonterminal-default)
7345         (semantic-uml-arguments-to-string, semantic-uml-prototype-nonterminal)
7346         (semantic-uml-prototype-nonterminal-default)
7347         (semantic-uml-concise-prototype-nonterminal)
7348         (semantic-uml-concise-prototype-nonterminal-default):
7349         Deleted.  Moved to semantic-format.el
7350
7351 2003-04-08  David Ponce  <david@dponce.com>
7352
7353         * semantic-util.el (semantic-uml-nonterminal-protection): New macro.
7354         (semantic-uml-abbreviate-nonterminal-default)
7355         (semantic-uml-prototype-nonterminal-default)
7356         (semantic-uml-concise-prototype-nonterminal-default): Use it.
7357
7358 2003-04-08  Eric M. Ludlam  <zappo@gnu.org>
7359
7360         * NEWS: Added section for semantic 1.4.4.
7361         Discuss stickyfunc mode.
7362
7363         * wisent/wisent-python.el: (wisent-python-parser-tables)
7364         (wisent-python-tokens)
7365         (wisent-python-default-setup): Regenerated from wisent-python.wy
7366
7367         * wisent/wisent-python.wy:
7368         (print_stmt, expr_stmt, del_stmt, pass_stmt, break_stmt, yield_stmt)
7369         (global_stmt, exec_stmt, assert_stmt, if_stmt, while_stmt, for_stmt)
7370         (try_stmt): Add argument to CODE-TAG statements
7371         (import_stmt): Add argument to INCLUDE-TAG call
7372
7373         * semantic-format.el (semantic-format-tag-type):
7374         Renamed as public, and as an overload.
7375         (semantic-format-tag-prototype-default)
7376         (semantic--format-tag-uml-type): New name for format-tag-type
7377         (semantic-format-tag-uml-prototype-default): Fix compiler warning
7378
7379 2003-04-07  Eric M. Ludlam  <zappo@gnu.org>
7380
7381         * semantic-load.el (global-semantic-stickyfunc-mode):
7382         On by default if available.
7383
7384         * semantic-util-modes.el: (global-semantic-stickyfunc-mode)
7385         (global-semantic-stickyfunc-mode-hook)
7386         (semantic-stickyfunc-mode-map)
7387         (semantic-stickyfunc-mode)
7388         (semantic-stickyfunc-mode-setup)
7389         (semantic-stickyfunc-sticky-classes)
7390         (semantic-stickyfunc-fetch-stickyline): New minor mode.
7391
7392 2003-04-07  David Ponce  <david@dponce.com>
7393
7394         * bovine/semantic-make.el (semantic-expand-make-nonterminal):
7395         Removed.  Replaced by...
7396         (semantic-make-expand-tag): New function.
7397         (semantic-default-make-setup): Re-generated.
7398
7399         * bovine/make.by (setupcode): Use `semantic-make-expand-tag' as
7400         `semantic-tag-expand-function'.
7401
7402         * semanticdb-el.el: (semanticdb-deep-find-tags-by-name-method)
7403         (semanticdb-deep-find-tags-by-name-regexp-method)
7404         (semanticdb-deep-find-tags-for-completion-method): New methods.
7405
7406         * senator.el (senator-completion-flatten-stream): Use
7407         `semantic-tag-components' instead of
7408         `semantic-tag-components-with-overlays'.
7409         (senator-find-nonterminal-by-name)
7410         (senator-find-nonterminal-by-name-regexp): No more supported.
7411         (senator-find-tag-for-completion): New function.
7412         (senator-complete-symbol, senator-completion-menu-popup): Use it.
7413
7414         * semanticdb-find.el: (semanticdb-deep-find-tags-by-name)
7415         (semanticdb-deep-find-tags-by-name-regexp)
7416         (semanticdb-deep-find-tags-for-completion): New functions.
7417         (semanticdb-deep-find-tags-by-name-method)
7418         (semanticdb-deep-find-tags-by-name-regexp-method)
7419         (semanticdb-deep-find-tags-for-completion-method): New methods.
7420
7421         * semantic-find.el (semantic--find-tags-by-macro):
7422         For consistency, argument TABLE is
7423         optional.
7424         (semantic-find-tags-by-name): Removed extra call to
7425         `semantic-something-to-tag-table'.
7426         (semantic-deep-find-tags-by-name)
7427         (semantic-deep-find-tags-for-completion)
7428         (semantic-deep-find-tags-by-name-regexp): New functions.
7429
7430 2003-04-07  Eric M. Ludlam  <zappo@gnu.org>
7431
7432         * semantic-format.el: Copied all token->text functions in.
7433         Convert all token and nonterminal references to 'tag'.
7434
7435         * semanticdb-java.el: Removed old definitions
7436         Derived new definitions from semanticdb.el
7437
7438 2003-04-06  Eric M. Ludlam  <zappo@gnu.org>
7439
7440         * bovine/semantic-el.el (semantic-elisp-use-read):
7441         Support require directory part
7442         (semantic-tag-include-filename): New overload.
7443
7444         * Makefile (tools_LISP): Added semanticdb-find.el.
7445
7446         * Project.ede (tools): Added semanticdb-find.
7447
7448         * semantic-analyze.el (require):
7449         Use semanticdb-find instead of semanticdb-search
7450         (semantic-analyze-find-nonterminals-by-prefix): Use new
7451         semanticdb-find-tags-for-completion fcn.
7452         (semantic-analyze-find-nonterminal): Use new
7453         semanticdb-find-tags-by-name fcn.
7454
7455         * semantic-util.el (semantic-something-to-tag-table):
7456         Support semanticdb-tables as something.
7457         (semantic-find-dependency): Rename all token vars to tag.
7458         (semantic-nonterminal-external-member-children-default): Use new
7459         sematnicdb-find-tags-external-children-of-type fn.
7460
7461         * semanticdb-el.el (semanticdb-find-tags-for-completion-method):
7462         Fixed typo.
7463
7464         * semanticdb-el.el: (semanticdb-find-table)
7465         (semanticdb-get-tags)
7466         (semanticdb-equivalent-mode): New methods
7467         (sematnicdb-elisp-sym-tag): New name.  Allow string input.
7468         (semanticdb-find-nonterminal-*): deleted
7469         (semanticdb-find-tags-by-name-method)
7470         (semanticdb-find-tags-by-name-regexp-method): Renamed from old methods.
7471         (semanticdb-find-tags-for-completion-method): New method
7472         (sematnicdb-find-tags-external-children-of-type-method): New name.
7473
7474         * semanticdb-search.el: (semanticdb-find-nonterminal-by-token)
7475         (semanticdb-find-nonterminal-by-name)
7476         (semanticdb-find-nonterminal-by-name-regexp)
7477         (semanticdb-find-nonterminal-by-type)
7478         (semanticdb-find-nonterminal-by-property)
7479         (semanticdb-find-nonterminal-by-extra-spec)
7480         (semanticdb-find-nonterminal-by-extra-spec-value)
7481         (semanticdb-find-nonterminal-by-function): made obsolete
7482         (semanticdb-find-nonterminal-by-function-method): doc fix.
7483         Use semanticdb-get-tags.
7484
7485         * semantic-find.el (semantic-find-tags-external-children-of-type): New
7486         (semantic-find-nonterminal-by-extra-spec-value): Better obsolete call
7487
7488         * semanticdb-find.el (semanticdb-find-translate-path-default): Moved
7489         Better logic for not testing the same file twice.
7490         (semanticdb-find-table-fo-include-default): Moved.
7491         (semanticdb-find-tags-external-children-of-type-method): New fcn
7492
7493         * semanticdb-file.el (object-write):
7494         use semantic--tag-[un]link-cache-[to|from]-buffer.
7495
7496         * semanticdb-file.el (semanticdb-persistent-path): Doc fix
7497         (semanticdb-project-database-file): Doc fix
7498         (replace-regexp-in-string): doc fix
7499
7500         * semanticdb.el (semanticdb-abstract-table): Renamed tokens to tags
7501         (semanticdb-table): Doc fix
7502         (semanticdb-get-database): Use `semanticdb-create-database' only
7503         which does the logic this fn used to do.
7504         (semanticdb-directory-loaded-p): Doc fix.
7505         (semanticdb-needs-refresh-p): Use 'tags slot name
7506         (semanticdb-equivalent-mode): New method on a table
7507         (semanticdb-semantic-init-hook-fcn): Use 'tags slot name
7508         (semanticdb-post-bovination): Use 'tags slot name
7509         (semanticdb-table-oob-sanity-check): Use tags slot name
7510         (semanticdb-table-sanity-check): Use tags slot name
7511         (semanticdb-file-stream): Replace contents with call too...
7512         (semanticdb-find-table-object): New fcn
7513
7514 2003-04-05  Eric M. Ludlam  <zappo@gnu.org>
7515
7516         * semantic-debug.el: (semantic-debug-highlight-rule)
7517         (semantic-debug-set-breakpoint): Use new -tag- and -find-tag- API.
7518
7519         * bovine/bovine-debug.el (semantic-debug-frame-highlight):
7520         Use new -tag- API
7521
7522         * bovine/semantic-scm.el: (semantic-scheme-prototype-nonterminal)
7523         (semantic-scheme-find-documentation)
7524         (semantic-scheme-insert-foreign-token): Use new tag API.
7525
7526         * bovine/semantic-bnf.el: (semantic-bovine-bnf-table)
7527         (semantic-bnf-keyword-table)
7528         (semantic-bnf-token-name-symbol)
7529         (semantic-bnf-ASSOC)
7530         (semantic-bnf-to-bovine)
7531         (semantic-bnf-to-lalr-ASSOC)
7532         (semantic-bnf-terminal-token-p)
7533         (semantic-bnf-token-table)
7534         (semantic-bnf-find-terminal-assocs)
7535         (semantic-bnf-to-lalr)
7536         (semantic-bnf-find-table-destination)
7537         (semantic-bnf-find-keyword-destination)
7538         (semantic-bnf-find-languagemode)
7539         (semantic-bnf-find-setup-code)
7540         (semantic-bnf-find-parser-mode)
7541         (semantic-bnf-find-token-destination)
7542         (semantic-bnf-generate-and-load)
7543         (semantic-bnf-generate-one-rule)
7544         (semantic-bnf-find-state-position)
7545         (semantic-bnf-looking-at-%token-not-keyword)
7546         (semantic-bnf-summarize-nonterminal): Replace calls to
7547         `semantic-token-*' with `semantic-tag-*', and from
7548         `semantic-find-nonterminal*' with `semantic-find-tags-*'.
7549         (semantic-bnf-mode): As above, and new override for
7550         `nonterminal-componenets'.
7551         (semantic-bnf-tag-components): As above and
7552         changed from `semantic-bnf-nonterminal-children'.
7553
7554         * bovine/semantic-make.el (semantic-expand-make-nonterminal):
7555         Use new -tag- APIs
7556
7557         * semantic-find.el (semantic--find-tags-by-function):
7558         Replaced mapc w/ while loop
7559         (semantic--find-tags-by-macro): New macro
7560         (semantic-find-tags-by-name)
7561         (semantic-find-tags-for-completion)
7562         (semantic-find-tags-by-name-regexp)
7563         (semantic-find-tags-by-class)
7564         (semantic-find-tags-by-type): Use `semantic--find-tags-by-macro'
7565         (semantic-brute-find-first-tag-by-name): Use
7566         `semantic-something-to-tag-table'.
7567
7568         * semantic-tag.el (semantic-tag-of-type-p): Remove error message
7569         (semantic-tag-include-filename): New overload fcn
7570         (semantic-tag-include-filename-default): New overload implementation
7571         (semantic-tag-components-with-overlays): Remove IGNORE argument
7572         (semantic-tag-components-with-overlays-default): Remove INGNORE argument
7573
7574 2003-04-04  David Ponce  <david@dponce.com>
7575
7576         * semantic-fw.el: (defvar-mode-local)
7577         (defconst-mode-local): Call `semantic-symbol' with arguments in
7578         the right order.
7579
7580         * tests/test.cpp: Sync. with v1p4 branch.
7581         Two additional tests for latest c.by modifications.
7582
7583         * bovine/semantic-c.el: Sync. with v1p4 branch.
7584         (semantic-toplevel-c-bovine-table): Re-generated.
7585
7586         * bovine/c.by: Sync. with v1p4 branch.
7587         (namespace-symbol): Fixed so also template-specifiers can be
7588         parsed here.
7589         (typeformbase): ajusted for new namespace-symbol definition.
7590
7591 2003-04-04  Klaus Berndl <klaus.berndl@sdm.de>
7592
7593         * tests/test.cpp: Two additional tests for latest c.bnf modifications
7594
7595         * c.bnf, semantic-c.el (namespace-symbol):
7596         fixed so also template-specifiers can be parsed here.
7597
7598         (typeformbase): ajusted for new namespace-symbol definition
7599
7600         * c.bnf (macro-expression-list):
7601         Removed a backslash from the comment before which
7602         prevented the whole file from being lexed and/or parsed.
7603
7604 2003-04-04  David Ponce  <david@dponce.com>
7605
7606         * senator.el: Fix for bug #692919.
7607         Unconditionally add `senator-hippie-expand-hook' to
7608         `senator-minor-mode-hook'.
7609
7610         * senator.el: Applied fix for bug #692919 from v1p4 branch.
7611         Unconditionally add `senator-hippie-expand-hook' to
7612         `senator-minor-mode-hook'.
7613
7614 2003-04-04  Eric M. Ludlam  <zappo@gnu.org>
7615
7616         * semanticdb-find.el:
7617         Find routines for semanticdb.  Searches done via `include' tags.
7618
7619 2003-04-02  David Ponce  <david@dponce.com>
7620
7621         * bovine/semantic-make.el: (semantic-toplevel-make-bovine-table)
7622         (semantic-make-keyword-table)
7623         (semantic-default-make-setup): Re-generated.
7624
7625         * bovine/make.by, wisent/wisent-java-tags.wy, wisent/wisent-java.wy (setupcode):
7626         Set `semantic-tag-expand-function' instead of
7627         obsolete `semantic-expand-nonterminal'.
7628
7629         * wisent/wisent-java-tags.el, wisent/wisent-java.el:
7630         (wisent-java-parser-tables)
7631         (wisent-java-keywords, wisent-java-tokens)
7632         (wisent-java-default-setup): Re-generated.
7633         (wisent-java-expand-nonterminal): Renamed to...
7634         (wisent-java-expand-tag): New.
7635
7636         * semantic-fw.el (define-overload):
7637         Removed unnecessary autoload cookie.
7638
7639 2003-04-02  Eric M. Ludlam  <zappo@gnu.org>
7640
7641         * semantic-find.el (semantic-find-tags-by-type): Fix typo
7642
7643         * semantic-find.el (semantic-find-tags-by-type):
7644         Use `semantic-tag-of-type-p' for comparison.
7645
7646         * semantic-tag.el (semantic-tag-of-type-p): New.
7647
7648         * semantic-analyze.el (inversion-require): Eval when compile
7649         (semantic-analyze-find-nonterminals-by-prefix)
7650         (semantic-analyze-find-nonterminal)
7651         (semantic-analyze-dereference-metatype)
7652         (semantic-analyze-token-type)
7653         (semantic-analyze-type-parts)
7654         (semantic-analyze-scoped-types)
7655         (semantic-analyze-current-context)
7656         (semantic-analyze-type-constraint)
7657         (semantic-analyze-type-constants)
7658         (semantic-analyze-possible-completions)
7659         (semantic-analyze-princ-sequence): Use new `semantic-tag*' API
7660         instead of `semantic-token*'.
7661         Use new `semantic-find-tag*' API instead of `semantic-find-nonterminal*'.
7662         (semantic-analyze-find-nonterminal-sequence): As above.
7663         Reordered search so that inner scope items are found first.
7664
7665         * bovine/semantic-c.el (semantic-toplevel-c-bovine-table): New c.by
7666         (semantic-c-nonterminal-abstract): Use `semantic-brute-find-tag-by-attribute'
7667         instead of `semantic-find-nonterminal-by-extra-spec'
7668
7669         * bovine/c.by (template-type): Fix call to TYPE-TAG
7670         (typeformbase): Use TYPE-TAG instead of forming my own tags.
7671
7672         * semanticdb.el, semantic-sb.el (inversion-require):
7673         Wrap in eval-and-compile.
7674
7675         * semanticdb.el (semanticdb-semantic-init-hook-fcn): Use
7676         `semantic--tag-link-cache-to-buffer' instead of
7677         `semantic-overlay-cache'.
7678         (semanticdb-kill-hook): Use
7679         `semantic--tag-unlink-cache-to-buffer' instead of
7680         `semantic-deoverlay-cache'.
7681         (semanticdb-table-oob-sanity-check): Use new `semantic-tag*' API.
7682
7683         * semantic-ctxt.el: (semantic-up-context)
7684         (semantic-get-local-arguments-default): Use `semantic-current-tag*'
7685         insteado of `semantic-current-nonterminal*'.
7686
7687         * document.el: (document-insert-function-comment-new)
7688         (document-parameter-comment)
7689         (document-update-paramlist): Fix typos in last conversion.
7690
7691         * document.el: (document)
7692         (document-inline)
7693         (document-insert-texinfo)
7694         (document-insert-defun-comment)
7695         (document-update-comment)
7696         (document-insert-function-comment-new)
7697         (document-function-name-comment)
7698         (document-insert-parameters)
7699         (document-parameter-comment)
7700         (document-argument-name)
7701         (document-update-paramlist)
7702         (document-longest-name): Move from old `-token-' or
7703         `-find-nonterminal-' API calls to new `-tag-' and `-find-tag-' API calls.
7704
7705         * semantic-util-modes.el: (semantic-clean-token-of-unmatched-syntax)
7706         (semantic-stickyfunc-mode)
7707         (semantic-stickyfunc-fetch-stickyline): Use new `semantic-tag-*'
7708         functions instead of `semantic-token*'.
7709
7710         * semantic-util.el (semantic-prototype-nonterminal-default):
7711         Handle a list of type modifiers.
7712
7713         * semantic-token.el: Replaced by semantic-tag.el
7714
7715         * semantic-texi.el: (semantic-texi-find-documentation)
7716         (semantic-texi-update-doc-from-texi)
7717         (semantic-texi-update-doc-from-source)
7718         (semantic-texi-goto-source): Use `semantic-find-tag*' instead of
7719         `semantic-find-nonterminal*'.
7720
7721         * semantic-find.el (semantic-current-nonterminal-of-type):
7722         Fixed obsolete name.
7723
7724         * semantic-chart.el: (semantic-chart-token-complexity)
7725         (semantic-chart-nonterminal-complexity-token): Use new
7726         `semantic-find-tag*' API instead of old `semantic-find-nonterminal*'
7727
7728         * semantic-edit.el: (semantic-edits-change-in-one-token-p)
7729         (semantic-edits-change-leaf-token)
7730         (semantic-edits-change-between-tokens)
7731         (semantic-edits-change-over-tokens)
7732         (semantic-edits-incremental-parser)
7733         (semantic-edits-splice-remove)
7734         (semantic-edits-splice-insert)
7735         (semantic-edits-splice-replace): Use `semantic-tag-*' instead of
7736         `semantic-token-*' functions.
7737
7738         * bovine/semantic-c.el (semantic-toplevel-c-bovine-table): Updated c.by
7739         (semantic-expand-c-nonterminal): Better `extern' support.
7740
7741         * bovine/c.by (extern-c): Fixed the extern tag
7742         (classsubparts): Set label name as a string
7743         (namespacesubparts): Set label name as a string
7744
7745 2003-04-01  Eric M. Ludlam  <zappo@gnu.org>
7746
7747         * semantic.el: (semantic-bovinate-toplevel)
7748         (semantic-repeat-parse-whole-stream): Use new semantic-tag* API.
7749
7750 2003-04-01  David Ponce  <david@dponce.com>
7751
7752         * senator.el (senator-eldoc-print-current-symbol-info-default): Use
7753         semantic-lex API.
7754
7755         * semantic.el (semantic-unmatched-syntax-hook):
7756         Doc fix.  Reference semantic-lex
7757         functions.
7758
7759         * semantic-tag.el: (semantic-tag-new-variable)
7760         (semantic-tag-new-function)
7761         (semantic-tag-new-type)
7762         (semantic-tag-new-include)
7763         (semantic-tag-new-package)
7764         (semantic-tag-new-code): Inline functions instead of macros.
7765
7766         * semantic-ia-sb.el (semantic-ia-sb-token-info): Use semantic-lex API.
7767
7768         * document.el (document-update-history, document-update-paramlist): Use
7769         semantic-lex API.
7770
7771         * wisent/wisent-grammar.el:
7772         (wisent-grammar-assocs, wisent-grammar-terminals)
7773         (wisent-grammar-nonterminals): Use new semantic-find API.
7774
7775         * senator.el: (senator-current-token, senator-step-at-parent)
7776         (senator-previous-token-or-parent)
7777         (senator-current-type-context)
7778         (senator-find-nonterminal-by-name)
7779         (senator-find-nonterminal-by-name-regexp)
7780         (senator-search-forward-raw, senator-search-backward-raw)
7781         (senator-next-token, senator-previous-token)
7782         (senator-menu-bar, add-log-current-defun)
7783         (senator-eldoc-print-current-symbol-info-default): Use new
7784         semantic-find API.
7785
7786         * semantic-load.el:
7787         (require 'semantic-fw) instead of loading semantic-al.el.
7788
7789         * semantic-imenu.el (which-function): Use new semantic-find API.
7790
7791         * semantic-grammar.el (semantic-summarize-nonterminal): Use
7792         `semantic--find-tags-by-function' instead of
7793         `semantic-brute-find-tag-by-function'.
7794
7795         * semantic-fw.el (semantic-alias-obsolete):
7796         Moved with compatibility code.
7797         (load "semantic-al") after compatibility code.
7798
7799         * semantic-find.el: (semantic-brute-find-first-tag-by-name)
7800         (semantic-brute-find-tag-by-class)
7801         (semantic-brute-find-tag-standard)
7802         (semantic-brute-find-tag-by-type)
7803         (semantic-brute-find-tag-by-type-regexp)
7804         (semantic-brute-find-tag-by-name-regexp)
7805         (semantic-brute-find-tag-by-property)
7806         (semantic-brute-find-tag-by-attribute)
7807         (semantic-brute-find-tag-by-attribute-value)
7808         (semantic-brute-find-tag-by-function)
7809         (semantic-brute-find-first-tag-by-function)
7810         (semantic-brute-find-tag-by-position)
7811         (semantic-brute-find-innermost-tag-by-position): Added autoload
7812         cookies.
7813         (semantic-find-nonterminal-by-overlay)
7814         (semantic-find-nonterminal-by-overlay-in-region)
7815         (semantic-find-nonterminal-by-overlay-next)
7816         (semantic-find-nonterminal-by-overlay-prev)
7817         (semantic-find-nonterminal-parent-by-overlay)
7818         (semantic-current-nonterminal)
7819         (semantic-current-nonterminal-parent)
7820         (semantic-current-nonterminal-of-class)
7821         (semantic-find-nonterminal-by-name)
7822         (semantic-find-nonterminal-by-token)
7823         (semantic-find-nonterminal-standard)
7824         (semantic-find-nonterminal-by-type)
7825         (semantic-find-nonterminal-by-type-regexp)
7826         (semantic-find-nonterminal-by-name-regexp)
7827         (semantic-find-nonterminal-by-property)
7828         (semantic-find-nonterminal-by-extra-spec)
7829         (semantic-find-nonterminal-by-attribute-value)
7830         (semantic-find-nonterminal-by-function)
7831         (semantic-find-nonterminal-by-function-first-match)
7832         (semantic-find-nonterminal-by-position)
7833         (semantic-find-innermost-nonterminal-by-position): Added autoload
7834         cookies to `semantic-alias-obsolete' definitions.
7835         (semantic-find-first-nonterminal-by-name): Alias replaced by
7836         `semantic-find-nonterminal-by-name'.
7837
7838 2003-04-01  Eric M. Ludlam  <zappo@gnu.org>
7839
7840         * semantic-sb.el (semantic-sb-one-button):
7841         Use tag as an argument.  Use new tag API.
7842         If there is a type, also make tag expandable.
7843         (semantic-sb-insert-details): Use tag as an argument.  Use new tag API.
7844         Variables can also insert their type.
7845         (semantic-sb-detail-parent): Use new -tag- API.
7846
7847         * semantic-tag.el (semantic-token-variable-default):
7848         Added alias-obsolete
7849
7850         * semantic-util.el (semantic-bucketize):
7851         Rename local variables and arg to be derived of 'tag'
7852         (semantic-recursive-find-nonterminal-by-name):
7853         (semantic-read-symbol):
7854         (semantic-nonterminal-external-member-children-default):
7855         (semantic-current-token):
7856         Use new `semantic-find-tag*' API
7857
7858         * bovine/bovine-grammar.el (bovine-grammar-parsetable-builder):
7859         Use new `semantic-find-tag*' API
7860         instead of `semantic-find-nonterminal*'
7861
7862         * semantic-find.el: (semantic-find-nonterminal-by-position)
7863         (semantic-find-innermost-nonterminal-by-position): Fix alias/obsolete name.
7864
7865         * semantic-util.el: (semantic-recursive-find-nonterminal-by-name)
7866         (semantic-read-symbol)
7867         (semantic-test-all-token->text-functions)
7868         (semantic-find-dependency)
7869         (semantic-find-nonterminal)
7870         (semantic-find-documentation)
7871         (semantic-hack-search):
7872         Use `semantic-brute-find-tag-*' or `semantic-find-tag-*' APIs instead
7873         of old nonterminal verison.
7874
7875         * semantic-grammar.el (semantic-grammar-ASSOC):
7876         Use semantic-tag-make-assoc-list.
7877         (semantic-grammar-as-string): Doc fix
7878         (semantic-grammar-edits-new-change-hook-fcn)
7879         (semantic-grammar-first-tag-name)
7880         (semantic-grammar-tag-symbols)
7881         (semantic-grammar-setupcode-text)
7882         (semantic-grammar-keywords)
7883         (semantic-grammar-tokens)
7884         (semantic-grammar-token-properties)
7885         (semantic-grammar-complete)
7886         (semantic-summarize-nonterminal):
7887         Use new semantic-find-tag* functions instead of semantic-find-nonterminal*
7888
7889         * Makefile (semantic_LISP): Add semantic-find.el
7890
7891         * Project.ede (semantic): add semantic-find.el
7892
7893         * semantic-util.el (semantic-file-token-stream): Renamed to...
7894         (semantic-file-tag-table): Updated doc string.
7895         (semantic-something-to-stream): Renamed to...
7896         (semantic-something-to-tag-table): Add support for tag filenames
7897         (semantic-find-nonterminal-by-*): Deleted.  See semantic-find.el
7898         (semantic-current-nonterminal-*): Deleted.  See semantic-find.el
7899         (semantic-bucketize-token-token)
7900         (semantic-adopt-external-members)
7901         (semantic-sort-token-type)
7902         (semantic-sort-tokens-by-name-increasing)
7903         (semantic-sort-tokens-by-name-increasing-ci)
7904         (semantic-recursive-find-nonterminal-by-name)
7905         (semantic-read-variable)
7906         (semantic-read-function)
7907         (semantic-read-type)
7908         (semantic-test-all-token->text-functions)
7909         (semantic-name-nonterminal-default)
7910         (semantic-abbreviate-nonterminal-default)
7911         (semantic-prototype-nonterminal-default-args)
7912         (semantic-prototype-nonterminal-default)
7913         (semantic-concise-prototype-nonterminal-default)
7914         (semantic-uml-token-or-string-to-string)
7915         (semantic-uml-prototype-nonterminal-default)
7916         (semantic-uml-concise-prototype-nonterminal-default)
7917         (semantic-find-dependency)
7918         (semantic-find-nonterminal)
7919         (semantic-find-documentation)
7920         (semantic-nonterminal-external-member-parent-default)
7921         (semantic-nonterminal-external-member-p-default)
7922         (semantic-nonterminal-external-member-children-default)
7923         (semantic-nonterminal-protection-default)
7924         (semantic-nonterminal-abstract-default)
7925         (semantic-nonterminal-leaf-default)
7926         (semantic-nonterminal-static-default)
7927         (semantic-nonterminal-full-name)
7928         (semantic-highlight-token)
7929         (semantic-unhighlight-token)
7930         (semantic-set-token-face)
7931         (semantic-set-token-read-only)
7932         (semantic-token-read-only-p)
7933         (semantic-narrow-to-token)
7934         (semantic-describe-token)
7935         (semantic-add-label)
7936         (semantic-show-label)
7937         (semantic-assert-valid-token)
7938         (semantic-sanity-check):
7939         Use new semantic-tag- functions instead of semantic-token*
7940         Use new semantic-find-tag* functions instead of semantic-find-nonterminal*
7941         Use new semantic-current-tag* functions instead of
7942         semantic-current-nonterminal*
7943
7944         * semantic-tag.el (semantic-equivalent-tag-p): Fix fcn name typo.
7945         (semantic-tag-docstring): Use new lex API
7946         (semantic-tag-children-compatibility): New fcn
7947         (semantic-nonterminal-children): Use above for alias
7948
7949         * semantic-lex.el (semantic-lex-test-region): New command
7950
7951 2003-03-31  David Ponce  <david@dponce.com>
7952
7953         * semantic-texi.el: (semantic-texi-parse-region)
7954         (semantic-texi-bovinate-headings)
7955         (semantic-texi-find-documentation)
7956         (semantic-texi-update-doc-from-texi)
7957         (semantic-texi-update-doc-from-source)
7958         (semantic-texi-update-doc)
7959         (semantic-texi-goto-source): Use semantic-tag API and terminology.
7960
7961         (semantic-texi-raw-to-cooked-token): Renamed to...
7962         (semantic-texi-expand-tag): New.
7963         (semantic-texi-new-section-tag)
7964         (semantic-texi-new-def-tag): New functions.
7965         (semantic-texi-recursive-combobulate-list): Use them.
7966         (semantic-texi-nonterminal-children): Renamed to...
7967         (semantic-texi-components): New.
7968         (semantic-texi-insert-foreign-token): Renamed to...
7969         (semantic-texi-insert-foreign-tag): New.
7970         (semantic-default-texi-setup): Reflect above changes.
7971
7972         * semantic-imenu.el: (semantic-imenu-bucketize-file)
7973         (semantic-imenu-buckets-to-submenu)
7974         (semantic-imenu-expandable-token)
7975         (semantic-create-imenu-index)
7976         (semantic-create-imenu-directory-index)
7977         (semantic-create-imenu-index-1)
7978         (semantic-create-imenu-subindex)
7979         (semantic-which-function)
7980         (semantic-default-which-function): Use semantic-tag API and
7981         terminology.
7982         (semantic-imenu-token-overlay): Renamed to...
7983         (semantic-imenu-tag-overlay): New.
7984
7985         * wisent/wisent-grammar.el: (wisent-grammar-assocs)
7986         (wisent-grammar-terminals)
7987         (wisent-grammar-nonterminals): Use semantic-tag API.
7988
7989         * semantic-grammar.wy (put_decl): Use semantic-tag API.
7990
7991         * semantic-grammar.el: (semantic-grammar-automaton)
7992         (semantic-grammar-keywords, semantic-grammar-tokens)
7993         (semantic-grammar-setup-semantic): Re-generated.
7994         (semantic-grammar-edits-new-change-hook-fcn)
7995         (semantic-grammar-first-tag-name)
7996         (semantic-grammar-tag-symbols)
7997         (semantic-grammar-setupcode-text)
7998         (semantic-grammar-keywords)
7999         (semantic-grammar-keyword-properties)
8000         (semantic-grammar-tokens)
8001         (semantic-grammar-token-properties)
8002         (semantic-abbreviate-nonterminal)
8003         (semantic-summarize-nonterminal): Use semantic-tag API.
8004
8005 2003-03-30  Eric M. Ludlam  <zappo@gnu.org>
8006
8007         * semantic-find.el (toplevel): Added many autoload cookies
8008         (semantic-find-tags-by-type): Fixed typo.
8009         (semantic-brute-find-tag-by-function): Use semantic-something-to-tag-table.
8010         (semantic-brute-find-first-tag-by-function): As above
8011         (semantic-alias-obsolete ...*): Fixed order.
8012         Fixed some names which were wrong.
8013
8014         * semantic-find.el: (semantic-find-tag-by-overlay)
8015         (semantic-find-tag-by-overlay-in-region)
8016         (semantic-find-tag-by-overlay-next)
8017         (semantic-current-tag, semantic-current-tag-parent)
8018         (semantic-current-tag-of-class): Doc fix
8019         (semantic--find-tags-by-function)
8020         (semantic-find-first-tag-by-name)
8021         (semantic-find-tags-by-name)
8022         (semantic-find-tags-for-completion)
8023         (semantic-find-tags-by-name-regexp)
8024         (semantic-find-tags-by-class)
8025         (semantic-find-tags-by-type): New FIND API functions.
8026         (semantic-flatten-tags-table): New function
8027         (semantic-brute-find-first-tag-by-name)
8028         (semantic-brute-find-tag-by-class)
8029         (semantic-brute-find-tag-by-type)
8030         (semantic-brute-find-tag-by-type-regexp)
8031         (semantic-brute-find-tag-by-function): Doc fix
8032
8033         * bovine/bovine-grammar.el (bovine-grammar-parsetable-builder):
8034         Rename all "token" variables
8035         with "tag".  Use new -tag- accessor functions.
8036         Use new `semantic-tag-components-semantic-grammar-mode' instead of
8037         the `-nonterminal-children' version.
8038
8039         * bovine/semantic-c.el (semantic-toplevel-c-bovine-table): New c.by
8040         (semantic-expand-c-nonterminal): Use new -tag- functions for tags.
8041         Use `semantic-tag-new-*' for rebuilt tags.
8042         (semantic-c-reconstitute-token)
8043         (semantic-c-reconstitute-template)
8044         (semantic-c-nonterminal-protection)
8045         (semantic-c-nonterminal-abstract): Use new -tag- functions.
8046         (semantic-default-c-setup): Rebulit.
8047         Overload `tag-components' instead of `nonterminal-children'.
8048
8049         * bovine/c.by (setq): Use new `semantic-tag-expand-function' variable.
8050         (extern-c): Turn `extern' list into a TAG that is later eliminated
8051         (classsubparts): Quote in label
8052         (namespacesubparts): Quote in label
8053
8054 2003-03-28  David Ponce  <david@dponce.com>
8055
8056         * senator.el (senator-menu-bar): Fixed item help string.
8057
8058         * senator.el:
8059         All these functions updated to use the new semantic-tag API and
8060         terminology.
8061
8062         (senator-step-at-token-ids, senator-step-at-start-end-token-ids)
8063         (senator-highlight-found, senator-parse)
8064         (senator-completion-cache-flush-fcn)
8065         (senator-completion-uniquify-names)
8066         (senator-completion-list, senator-find-nonterminal-by-name)
8067         (senator-find-nonterminal-by-name-regexp)
8068         (senator-completion-menu-insert-function)
8069         (senator-search-forward, senator-re-search-forward)
8070         (senator-word-search-forward, senator-search-backward)
8071         (senator-re-search-backward, senator-word-search-backward)
8072         (senator-set-foreground, senator-set-background)
8073         (senator-current-token, senator-momentary-highlight-token)
8074         (senator-step-at-start-end-p, senator-skip-p)
8075         (senator-middle-of-token-p, senator-step-at-parent)
8076         (senator-previous-token-or-parent, senator-full-token-name)
8077         (senator-completion-flatten-stream)
8078         (senator-completion-function-args)
8079         (senator-completion-refine-name, senator-completion-stream)
8080         (senator-current-type-context, senator-search-token-name)
8081         (senator-search-forward-raw, senator-search-backward-raw)
8082         (senator-next-token, senator-previous-token)
8083         (senator-jump-noselect, senator-jump, senator-jump-regexp)
8084         (senator-complete-symbol, senator-completion-menu-insert-default)
8085         (senator-completion-menu-item, senator-toggle-read-only)
8086         (senator-toggle-intangible, senator-set-face, senator-clear-token)
8087         (senator-menu-bar, senator-beginning-of-defun)
8088         (senator-end-of-defun, senator-narrow-to-defun)
8089         (senator-mark-defun, beginning-of-defun, end-of-defun)
8090         (narrow-to-defun, mark-defun, c-mark-function)
8091         (senator-add-log-tokens, add-log-current-defun)
8092         (senator-token-ring, senator-insert-foreign-token-default)
8093         (senator-insert-foreign-token, senator-copy-token)
8094         (senator-kill-token, senator-yank-token)
8095         (senator-copy-token-to-register, insert-register)
8096         (jump-to-register, senator-eldoc-print-current-symbol-info)
8097
8098         (senator-jump-completion-list): Use `format' to avoid `sequencep'
8099         errors, when concatenating things.
8100
8101         * semantic-ctxt.el: (semantic-up-context)
8102         (semantic-get-local-variables)
8103         (semantic-get-local-variables-default): Doc fix.
8104         (semantic-get-local-arguments): Doc fix.  Use semantic-tag API.
8105         (semantic-get-local-arguments-default): Use semantic-tag API.
8106         (semantic-get-all-local-variables): Doc fix.
8107
8108 2003-03-28  Eric M. Ludlam  <zappo@gnu.org>
8109
8110         * semantic-find.el: (semantic-find-tag-by-overlay)
8111         (semantic-find-tag-by-overlay-in-region)
8112         (semantic-find-tag-by-overlay-next)
8113         (semantic-find-tag-by-overlay-prev)
8114         (semantic-find-tag-parent-by-overlay)
8115         (semantic-current-tag)
8116         (semantic-current-tag-parent)
8117         (semantic-current-tag-of-class)
8118         (semantic-brute-find-first-tag-by-name)
8119         (semantic-brute-find-tag-by-class)
8120         (semantic-brute-find-tag-standard)
8121         (semantic-brute-find-tag-by-type)
8122         (semantic-brute-find-tag-by-type-regexp)
8123         (semantic-brute-find-tag-by-name-regexp)
8124         (semantic-brute-find-tag-by-property)
8125         (semantic-brute-find-tag-by-attribute)
8126         (semantic-brute-find-tag-by-attribute-value)
8127         (semantic-brute-find-tag-by-function)
8128         (semantic-brute-find-first-tag-by-function)
8129         (semantic-brute-find-tag-by-position)
8130         (semantic-brute-find-innermost-tag-by-position): New fcns copied
8131         from semantic-util.el
8132
8133 2003-03-27  David Ponce  <david@dponce.com>
8134
8135         * bovine/semantic-el.el (semantic-toplevel-elisp-bovine-table 'bovine-toplevel):
8136         just pass
8137         tags already expanded.
8138         (semantic-elisp-clos-args-to-semantic): Use
8139         `semantic-tag-new-variable'.
8140         (semantic-expand-elisp-nonterminal): Removed.
8141         (semantic-find-dependency)
8142         (semantic-find-documentation)
8143         (semantic-insert-foreign-token)
8144         (semantic-nonterminal-protection)
8145         (semantic-elisp-nonterminal-static): Use the semantic-tag API.
8146         (semantic-expand-nonterminal): Removed mode local override.
8147
8148         * semantic-tag.el (semantic--tag-expand): More comments.
8149
8150         * semantic-tag.el (semantic-tag-components): Added autoload cookie.
8151         (semantic-alias-obsolete 'semantic-nonterminal-children): Removed
8152         autoload cookie.
8153
8154         * wisent/wisent-java-tags.el, wisent/wisent-java.el (wisent-java-get-local-variables):
8155         Doc fix.
8156         (wisent-java-expand-nonterminal): Use new semantic-tag API.
8157
8158         * wisent/wisent-bovine.el (wisent-token, wisent-cooked-token): Removed.
8159         (wisent-cook-tag, wisent-parse-region): Use new semantic-tag API.
8160
8161         * bovine/semantic-java.el: (semantic-java-prototype-function)
8162         (semantic-java-prototype-variable)
8163         (semantic-java-prototype-type)
8164         (semantic-java-prototype-nonterminal): Use new semantic-tag API.
8165         (semantic-java-find-documentation): Likewise.  Use semantic-lex
8166         API instead of obsolete semantic-flex one.
8167         (semantic-java-get-local-variables): Removed.
8168         (semantic-java-doc-keyword-before-p)
8169         (semantic-java-doc-keywords-map)
8170         (semantic-java-doc-setup): Use semantic-lex API instead of
8171         obsolete semantic-flex one.
8172
8173         * semantic.el: Replaced library semantic-token by semantic-tag.
8174         (semantic-deoverlay-token, semantic-overlay-token)
8175         (semantic-deoverlay-list, semantic-overlay-list)
8176         (semantic-deoverlay-cache, semantic-overlay-cache)
8177         (semantic-cooked-token-p, semantic-raw-to-cooked-token)
8178         (semantic-bovinate-make-assoc-list): Removed.
8179
8180         * semantic-util.el: (semantic-nonterminal-children)
8181         (semantic-nonterminal-children-default): Removed.
8182
8183         * semantic-tag.el:
8184         (semantic-tag-set-bounds, semantic-tag-put-attribute)
8185         (semantic-tag-put-attribute-no-side-effect)
8186         (semantic-tag-get-attribute, semantic--tag-put-property)
8187         (semantic--tag-put-property-no-side-effect)
8188         (semantic--tag-get-property, semantic-tag-new-type)
8189         (semantic-tag-docstring, semantic-tag-type-members)
8190         (semantic-tag-type-superclasses, semantic-tag-type-interfaces)
8191         (semantic-tag-function-arguments)
8192         (semantic-tag-function-throws, semantic-tag-function-parent)
8193         (semantic-tag-function-destructor-p)
8194         (semantic-tag-variable-default)
8195         (semantic-tag-variable-constant-p)
8196         (semantic-tag-include-system-p, semantic-tag-code-detail)
8197         (semantic-tag-components-with-overlays)
8198         (semantic-tag-components-with-overlays-default)
8199         (semantic--tag-expand)
8200         (semantic-token-type-parent): Fixed.
8201         (semantic-tag-make-plist): Use `zerop' to check for number zero.
8202         (semantic--tag-copy-properties): New function.
8203
8204         * semantic-grammar.el (semantic-nonterminal-children):
8205         Override removed replaced by...
8206         (semantic-tag-components): New override.
8207         (semantic-summarize-nonterminal): Use `semantic-tag-components'
8208         in place of `semantic-nonterminal-children'.
8209
8210         * semantic-fw.el (semantic-bind): Ignore rebinding with the same value.
8211
8212         * semantic-edit.el (semantic-edits-splice-replace): Use
8213         `semantic--tag-copy-properties'.
8214
8215         * Project.ede (ede-proj-target-elisp "semantic"):
8216         Updated :source to include
8217         semantic-tag.el in place of semantic-token.el.
8218
8219         * Makefile: Re-generated from Project.ede.
8220
8221 2003-03-26  Eric M. Ludlam  <zappo@gnu.org>
8222
8223         * semantic-analyze.el (semantic-analyze-current-context):
8224         Protect call to forward-sexp.
8225
8226 2003-03-24  Eric M. Ludlam  <zappo@gnu.org>
8227
8228         * wisent/wisent-grammar.el (wisent-grammar-EXPAND, wisent-grammar-EXPANDFULL):
8229         Add error message
8230         when the nonterminal used for expansion does not appear with a %start
8231         entry.
8232
8233 2003-03-22  David Ponce  <david@dponce.com>
8234
8235         * semantic-tag.el: (semantic-tag-file-name, semantic-tag-copy)
8236         (semantic--tag-unlink-from-buffer)
8237         (semantic--tag-link-to-buffer)
8238         (semantic--tag-unlink-list-from-buffer)
8239         (semantic--tag-link-list-to-buffer)
8240         (semantic--tag-unlink-cache-from-buffer)
8241         (semantic--tag-link-cache-to-buffer)
8242         (semantic--tag-expanded-p, semantic--tag-expand): New functions.
8243         (semantic-tag-expand-function): New variable.
8244
8245 2003-03-21  David Ponce  <david@dponce.com>
8246
8247         * semantic-tag.el (semantic-tag-set-overlay):
8248         Reserved for internal use, and
8249         renamed...
8250         (semantic--tag-set-overlay): New.
8251         (semantic-tag-extent): Renamed...
8252         (semantic-tag-bounds): New.
8253         (semantic-tag-set-bounds): New.
8254         (semantic-tag-of-class-p): New.
8255         (semantic-equivalent-tag-p): Use `equal' to compare names, the
8256         above function to compare classes, and `semantic-tag-bounds' to
8257         compare bounds.
8258         (semantic-tag-new-type): Use `members' instead of `children' or
8259         `part-list'.
8260         (semantic-tag-type-parts): Renamed...
8261         (semantic-tag-type-members): New.
8262         (semantic-token-type-parent): Moved to the obsolete code section.
8263         (semantic-tag-components-default): Fixed.
8264         (semantic-tag-components-with-overlays-default): Fixed typos.
8265
8266 2003-03-21  Eric M. Ludlam  <zappo@gnu.org>
8267
8268         * bovine/semantic-el.el (semantic-elisp-use-read):
8269         Use `semantic-tag-new-code'.
8270
8271         * bovine/bovine-grammar.el (bovine-grammar-expand-form):
8272         Fix caps problem.
8273
8274         * bovine/semantic-scm.el (semantic-toplevel-scheme-bovine-table):
8275         Regenerated.
8276
8277         * bovine/scheme.by (scheme-in-list): Use CODE-TAG.
8278
8279         * bovine/bovine-grammar.el (bovine-grammar-expand-CODE-TAG):
8280         New function
8281         (bovine-grammar-expand-form): Use above.
8282
8283         * semantic-grammar.el (semantic-grammar-syntax-help):
8284         Added CODE-TAG macro help.
8285
8286         * semantic-tag.el (semantic-tag-components-with-overlays-default):
8287         Replace `token' with `tag'
8288
8289         * semantic-tag.el (semantic-tag-variable-optsuffix): Deleted
8290         (semantic-tag-componenets, semantic-tag-components-with-overlays):
8291         New override functions
8292         (semantic-tag-componenets-default)
8293         (semantic-tag-components-with-overlays-default): New functions
8294         (semantic-nonterminal-children): Obsolete function
8295
8296 2003-03-20  David Ponce  <david@dponce.com>
8297
8298         * semantic-tag.el (semantic-tag-clone): New implementation.
8299
8300         * semantic-ctxt.el (semantic-get-local-arguments):
8301         Use `semantic-tag-new-variable'.
8302
8303         * semantic-tag.el (semantic-tag): Ensure that the list has 5 elements.
8304         (semantic-clone-tag): Renamed...
8305         (semantic-tag-clone): New.
8306
8307 2003-03-19  David Ponce  <david@dponce.com>
8308
8309         * semantic-tag.el: New file.
8310
8311 2003-03-18  David Ponce  <david@dponce.com>
8312
8313         * semantic-autogen.el (semantic-autogen-kill-xemacs-autoloads-feature):
8314         New function.
8315         (semantic-autogen-update-header): Use it.
8316
8317 2003-03-18  Richard Y. Kim <ryk@ap.com>
8318
8319         * semantic-token.el, wisent/wisent-grammar.el, wisent/wisent-python.el, wisent/wisent-python.wy:
8320         Created CODE-TAG builtin in wisent-grammar.el.  Then
8321         replaced all (wisent-token ...) from wisent-python.wy with
8322         CODE-TAG construct.  With this change, wisent-python.wy no
8323         longer uses wisent-token function.
8324
8325 2003-03-17  David Ponce  <david@dponce.com>
8326
8327         * wisent/wisent-bovine.el (wisent-parse-stream):
8328         Doc fix.  Use tag in place of token.
8329         (wisent-parse-region): Likewise.  Renamed `tag' local
8330         variable `token'.
8331
8332         * semantic-grammar.el (semantic-grammar-edits-new-change-hook-fcn):
8333         Doc fix.  Use tag
8334         in place of token.
8335         (senator-add-log-tokens): Likewise.
8336         (semantic-nonterminal-children): Likewise.  Renamed `tag' local
8337         variable `token'.
8338         (semantic-abbreviate-nonterminal): Likewise.
8339         (semantic-summarize-nonterminal): Likewise.  Fixed to use new tag
8340         structure.  Extended for `nonassoc' tags.
8341         (semantic-grammar-token-name): Renamed...
8342         (semantic-grammar-first-tag-name): New.
8343         (semantic-grammar-token-symbols): Renamed...
8344         (semantic-grammar-tag-symbols): New.
8345         (semantic-grammar-setupfunction, semantic-grammar-tokentable)
8346         (semantic-grammar-parsetable, semantic-grammar-keywordtable)
8347         (semantic-grammar-languagemode, semantic-grammar-start)
8348         (semantic-grammar-scopestart, semantic-grammar-quotemode)
8349         (semantic-grammar-outputfile): Use new names above.
8350         (semantic-grammar-tokens): Doc fix.  Renamed `tag' local
8351         variables `token'.
8352         (semantic-grammar-token-properties)
8353         (semantic-grammar-tokentable-builder-default)
8354         (semantic-grammar-tokentable-builder)
8355         (semantic-grammar-tokentable-value): Doc fix.
8356         (semantic-grammar-syntax-help "TAG"): Use "tag-class" in place of
8357         "type-token".
8358         (semantic-abbreviate-nonterminal): Doc fix.  Renamed `tag' local
8359         variable `token'.
8360
8361 2003-03-17  Eric M. Ludlam  <zappo@gnu.org>
8362
8363         * bovine/semantic-bovine.el (semantic-bovinate-stream):
8364         Stop using obsoleted fcns.
8365
8366         * NEWS: semantic-stickyfunc-mode
8367
8368         * semantic-util-modes.el (semantic-stickyfunc-fetch-stickyline):
8369         Quote out %'s in return string.
8370
8371         * semantic-util.el:
8372         (semantic-read-variable, semantic-read-function, semantic-read-type):
8373         Fix to auto-select the correct streams.
8374
8375         * semantic-load.el:
8376         Enable stickyfunc mode when header-line-format is available.
8377
8378         * semanticdb-search.el (semanticdb-collect-find-results):
8379         Make `ignore-system' actually work.
8380
8381         * semantic-cb.el (semantic-cb-clear-current-project): New fcn
8382         (semantic-cb-new-class-browser): Do not get data from system libraries
8383         (semantic-cb-find-node-in-list, semantic-db-find-node): New methods
8384         (semantic-dot): New command
8385         (semantic-dot-token-name, semantic-dot-insert-token): New methods
8386         (semantic-cb-speedbar-menu): Add graphing option
8387         (semantic-cb-speedbar-dot): New speedbar command.
8388
8389 2003-03-16  Eric M. Ludlam  <zappo@gnu.org>
8390
8391         * semantic-grammar.el (semantic-grammar-mode):
8392         Add support for stickyfunc.
8393         (semantic-grammar-syntax-help): Make keys : prefixed for tag generators.
8394
8395         * semantic-util-modes.el (semantic-stickyfunc-fetch-stickyline):
8396         Add nice default when not on
8397         a function.
8398
8399 2003-03-16  David Ponce  <david@dponce.com>
8400
8401         * wisent/wisent-grammar.el: Require 'cl.
8402         (wisent-grammar-TAG): Use `semantic-tag'.
8403         (wisent-grammar-expand-builtins): New function.
8404         (wisent-grammar-expand-sexpr): Use it.  Call `cl-macroexpand-all'
8405         to expand macros.
8406         (wisent-grammar-assocs, wisent-grammar-terminals)
8407         (wisent-grammar-nonterminals): Use `semantic-token-extra-spec'.
8408
8409         * wisent/wisent-calc.el: (wisent-calc-automaton)
8410         (wisent-calc-tokens)
8411         (wisent-calc-setup-parser): Re-generated.
8412
8413         * bovine/bovine-grammar.el (bovine-grammar-parsetable-builder): Use
8414         `semantic-token-extra-spec'.
8415
8416         * semantic-grammar.wy (PREFIXED_LIST): New token.
8417         (any_value, action): Use it.
8418         (code, declaration, languagemode_decl, outputfile_decl)
8419         (setupfunction_decl, keywordtable_decl, parsetable_decl)
8420         (tokentable_decl, token_decl, start_decl, scopestart_decl)
8421         (quotemode_decl, left_decl, right_decl, nonassoc_decl)
8422         (put_decl, put_names, put_values, nonterminal)
8423         (rule): Use TAG macros.
8424         (token_type, level): Use `progn'.
8425
8426         * semantic-grammar.el (semantic-grammar-lex-prefixed-list):
8427         New analyzer.
8428         (semantic-grammar-lexer): Use it.
8429         (semantic-grammar-automaton)
8430         (semantic-grammar-keywords, semantic-grammar-tokens)
8431         (semantic-grammar-setup-semantic): Re-generated.
8432         (semantic-grammar-code-value): Removed.
8433         (semantic-grammar-setupcode-text): Get code from buffer.
8434         (semantic-grammar-setupcode-forms): Use
8435         `semantic-grammar-setupcode-text'.
8436         (semantic-nonterminal-children)
8437         (semantic-grammar-token-symbols)
8438         (semantic-grammar-keywords)
8439         (semantic-grammar-keyword-properties)
8440         (semantic-grammar-tokens)
8441         (semantic-grammar-token-properties): Use
8442         `semantic-token-extra-spec'.
8443         (semantic-grammar-mode-keywords-1): Highlight :keywords here.
8444         (semantic-grammar-mode-keywords-3): Fixed redundancy.
8445
8446 2003-03-16  Eric M. Ludlam  <zappo@gnu.org>
8447
8448         * semantic-cb.el (semantic-cb-find-parent):
8449         Allow unfound parents gracefully.
8450         (semantic-cb-convert-type): Use new DB based external member finder fcn.
8451
8452         * bovine/Project.ede (languages): Removed semantic-java.el
8453
8454         * bovine/Makefile (languages_LISP): Removed semantic-java.el
8455
8456 2003-03-15  Richard Y. Kim <ryk@ap.com>
8457
8458         * semantic-fw.el:
8459         White space change only.  Simply lined up overlay related aliases.
8460
8461 2003-03-15  Eric M. Ludlam  <zappo@gnu.org>
8462
8463         * semantic-util-modes.el (semantic-show-unmatched-syntax):
8464         Use new lex API for token access.
8465         (semantic-summary-mode-setup): Fix doc string.
8466         (global-semantic-stickyfunc-mode, semantic-stickyfunc-mode-hook)
8467         (semantic-stickyfunc-mode-map, semantic-stickyfunc-mode-setup)
8468         ( semantic-stickyfunc-sticky-classes, semantic-stickyfunc-fetch-stickyline):
8469         New functions and variables.
8470         (semantic-stickyfunc-mode): New minor mode.
8471
8472         * bovine/semantic-scm.el, bovine/semantic-make.el: Regenerated.
8473
8474         * bovine/semantic-el.el (semantic-elisp-use-read):
8475         Use new -tag- instead of -token- fcns.
8476
8477         * bovine/semantic-c.el: Regenerated.
8478
8479         * bovine/bovine-grammar.el:
8480         (bovine-grammar-expand-TAG, bovine-grammar-expand-VARIABLE-TAG)
8481         (bovine-grammar-expand-FUNCTION-TAG, bovine-grammar-expand-TYPE-TAG)
8482         (bovine-grammar-expand-INCLUDE-TAG, bovine-grammar-expand-PACKAGE-TAG):
8483         Use -tag- fcns instead of -token.
8484
8485 2003-03-14  David Ponce  <david@dponce.com>
8486
8487         * wisent/wisent-python.el: (wisent-python-parser-tables)
8488         (wisent-python-keywords, wisent-python-tokens)
8489         (wisent-python-default-setup): Re-generated.
8490
8491         * wisent/wisent-java.el, wisent/wisent-java-tags.el:
8492         (wisent-java-parser-tables)
8493         (wisent-java-keywords, wisent-java-tokens)
8494         (wisent-java-default-setup): Re-generated.
8495         (wisent-java-expand-nonterminal): Use `semantic-token-extra-specs'
8496         in place of `semantic-token-variable-extra-specs'.
8497
8498         * wisent/wisent-grammar.el:
8499         (wisent-grammar-TAG, wisent-grammar-VARIABLE-TAG)
8500         (wisent-grammar-FUNCTION-TAG, wisent-grammar-TYPE-TAG)
8501         (wisent-grammar-INCLUDE-TAG, wisent-grammar-PACKAGE-TAG)
8502         (wisent-grammar-EXPANDTAG): Use `semantic-tag' API and new
8503         `wisent-...-tag' names.
8504
8505         * wisent/wisent-bovine.el (wisent-cooked-token):
8506         Use `semantic-tag' API.
8507         (wisent-raw-token): Renamed to...
8508         (wisent-raw-tag): New.
8509         (wisent-cook-token): Renamed to...
8510         (wisent-cook-tag): New.  Use `semantic-tag' API.
8511         (wisent-parse-region): Use `semantic-tag' API.
8512
8513 2003-03-14  Richard Y. Kim <ryk@ap.com>
8514
8515         * wisent/wisent-python.el, wisent/wisent-python.wy:
8516         Replaced (wisent-token ...) with VARIABLE-TAG, FUNCTION-TAG, etc.
8517
8518 2003-03-14  Eric M. Ludlam  <zappo@gnu.org>
8519
8520         * semanticdb-el.el (semanticdb-elisp-sym->nonterm):
8521         Use `semantic-tag-new-*' instead of
8522         explicit lists.
8523         (semanticdb-find-nonterminal-by-token-method): Fixed typo for
8524         searching for variables and types.
8525
8526         * semantic-util.el (semantic-adopt-external-members):
8527         Use `tag' instead of `token'.
8528         Use new `semantic-clone-tag'.
8529         (semantic-find-doc-snarf-comment): Do not use obsolete -flex- fcn.
8530
8531         * semantic-token.el:
8532         (semantic-tag-put, semantic-tag-put-no-side-effect, semantic-tag-get):
8533         New from old -token- versions.  Obsolete old names.
8534         (semantic-clone-tag): New fcn.
8535
8536         * semantic-token.el:
8537         (semantic-tag, semantic-tag-new-variable, semantic-tag-new-function)
8538         (semantic-tag-new-type, semantic-tag-new-include, semantic-tag-new-package):
8539         New routines from old -token- verison.
8540         (semantic-token, semantic-token-new-variable, semantic-token-new-function)
8541         (semantic-token-new-type, semantic-token-new-include)
8542         (semantic-token-new-package): Obsoleted
8543
8544         * semantic-lex.el:
8545         (semantic-flex-start, semantic-flex-end,, semantic-flex-text)
8546         (semantic-flex-make-keyword-table, semantic-flex-keyword-p)
8547         (semantic-flex-keyword-put, semantic-flex-keyword-get)
8548         (semantic-flex-map-keywords, semantic-flex-keywords)
8549         (semantic-flex-buffer, semantic-flex-list): Obsolete.
8550
8551         * semantic-util.el (semantic-summerize-nonterminal): Obsolete
8552
8553         * semantic-fw.el (semantic-fw-font-lock-keywords): Added below.
8554         (semantic-alias-obsolete): New fcn.
8555
8556 2003-03-13  David Ponce  <david@dponce.com>
8557
8558         * wisent/wisent-java.el (wisent-java-expand-nonterminal):
8559         Use `semantic-token-extra-spec'.
8560
8561         * semantic-token.el (semantic-token-plist-indexes): New constant.
8562         (semantic-token-plist-index): New function.
8563         (semantic-token-extra-specs, semantic-token-extra-spec)
8564         (semantic-token-add-extra-spec): Generalized.
8565         (semantic-token-type): Use `memq' instead of `member'.
8566         (semantic-token-modifiers): Generalized.
8567         (semantic-token-type-extra-specs)
8568         (semantic-token-function-extra-specs)
8569         (semantic-token-variable-extra-specs): Alias of
8570         `semantic-token-extra-specs'.
8571         (semantic-token-type-extra-spec)
8572         (semantic-token-function-extra-spec)
8573         (semantic-token-variable-extra-spec): Alias of
8574         `semantic-token-extra-spec'.
8575         (semantic-token-type-modifiers)
8576         (semantic-token-function-modifiers)
8577         (semantic-token-function-throws)
8578         (semantic-token-function-parent)
8579         (semantic-token-function-destructor)
8580         (semantic-token-variable-modifiers)
8581         (semantic-token-variable-const)
8582         (semantic-token-variable-optsuffix): Use
8583         `semantic-token-extra-spec'.
8584
8585         * semantic-grammar.el (semantic-grammar-mode-keywords-1):
8586         Highlight more TAG macros.
8587
8588         * wisent/wisent-java.wy:
8589         (compilation_unit, package_declaration, import_declaration)
8590         (class_declaration, field_declarations_opt, field_declaration)
8591         (method_declaration, formal_parameter, constructor_declaration)
8592         (interface_declaration)
8593         (abstract_method_declaration): Use TAG macros.
8594
8595         * wisent/wisent-java.el: (wisent-java-parser-tables)
8596         (wisent-java-keywords, wisent-java-tokens)
8597         (wisent-java-default-setup): Re-generated.
8598         (wisent-java-expand-nonterminal): Embedded tags are now the value
8599         of the extra specifier `tree'.
8600
8601         * wisent/wisent-java-tags.wy:
8602         (package_declaration, import_declaration, class_declaration)
8603         (interface_declaration, constructor_declaration)
8604         (method_declaration, formal_parameter)
8605         (field_declaration): Use TAG macros.
8606
8607         * wisent/wisent-java-tags.el: (wisent-java-parser-tables)
8608         (wisent-java-keywords, wisent-java-tokens)
8609         (wisent-java-default-setup): Re-generated.
8610
8611         * wisent/wisent-grammar.el:
8612         (wisent-grammar-TAG, wisent-grammar-VARIABLE-TAG)
8613         (wisent-grammar-FUNCTION-TAG, wisent-grammar-TYPE-TAG)
8614         (wisent-grammar-INCLUDE-TAG, wisent-grammar-PACKAGE-TAG)
8615         (wisent-grammar-EXPANDTAG): New functions.
8616         (wisent-grammar-builtins): Added new expanders for TAG macros.
8617
8618         * wisent/wisent-bovine.el (wisent-raw-token, wisent-cook-token):
8619         New functions.
8620
8621 2003-03-13  Eric M. Ludlam  <zappo@gnu.org>
8622
8623         * bovine/semantic-scm.el: regenerated
8624
8625         * bovine/scheme.by (scheme-in-list): Quote code symbol.
8626
8627         * bovine/semantic-make.el: regenerated.
8628
8629         * bovine/make.by (include): Fix quote rule.
8630
8631         * bovine/semantic-bovine.el (semantic-bovinate-stream):
8632         Removed old dump-detail code.
8633         Added in error condition call to the debugger.
8634
8635         * bovine/bovine-grammar.el (bovine-grammar-expand-form): Fixed typo
8636
8637         * bovine/bovine-debug.el:
8638         (semantic-bovine-debug-error-frame, and related methods):
8639         New class and methods for an error frame.
8640
8641         * semantic-debug.el (semantic-debug-mode-map): Added eval-expression.
8642         (semantic-debug-mode): Updated doc string.
8643
8644         * bovine/semantic-el.el (semantic-elisp-use-read):
8645         Use new token creation macros.
8646
8647         * bovine/semantic-scm.el: Regnerated.
8648
8649         * bovine/scheme.by (scheme-in-list): Update to new TAG macros.
8650
8651         * bovine/semantic-make.el: Regnerated.
8652
8653         * bovine/make.by (variable, rule, include):
8654         Use new TAG creation macros.
8655
8656 2003-03-11  David Ponce  <david@dponce.com>
8657
8658         * semantic-grammar.el: (semantic-grammar-languagemode)
8659         (semantic-grammar-start): Doc fix.
8660         (semantic-grammar-update-outputfile): Reverted last change.
8661         (semantic-grammar-mode-keywords-1): Highlight TAG macros.
8662
8663         * semantic-fw.el (semantic-map-mode-buffers):
8664         Accept a list of major modes.
8665
8666 2003-03-11  Eric M. Ludlam  <zappo@gnu.org>
8667
8668         * semantic-grammar.el (senator-add-log-tokens): New mode variable.
8669
8670         * senator.el (senator-add-log-tokens): New variable
8671         (add-log-current-defun): Use above.
8672
8673         * bovine/semantic-c.el:
8674         (semantic-toplevel-c-bovine-table, semantic-c-keyword-table)
8675         (semantic-default-c-setup): Regenerated
8676         (semantic-c-reconstitute-token): Reduce function types of 1 string
8677         in a list.
8678
8679         * bovine/c.by (CONTINUE): Fix spelling in summary.
8680         (macro-or-include, define, classsubparts, enumsubparts, typesimple)
8681         (type, template-type, variablearg): Use new token creation macros.
8682
8683         * bovine/bovine-grammar.el:
8684         (bovine-grammar-expand-TAG, bovine-grammar-expand-FUNCTION-TAG)
8685         (bovine-grammar-expand-TYPE-TAG, bovine-grammar-expand-PACKAGE-TAG):
8686         New langauge macros
8687         (bovine-grammar-expand-form): Use above new macros.
8688         (bovine-grammar-parsetable-builder): Use direct name of child expand fcn.
8689
8690         * semanticdb.el (semanticdb-save-current-db): New command.
8691
8692         * semantic-grammar.el (semantic-install-function-overrides):
8693         Removed old global install
8694         (semantic-nonterminal-children): Coverted to overload-implementation.
8695         (semantic-grammar-update-outputfile): Go through list of major modes
8696         when updating the config function.
8697         (semantic-grammar-map): Added semantic-grammar-complete.
8698         (semantic-grammar-syntax-help): New variable
8699         (semantic-grammar-complete, eldoc-current-symbol-info)
8700         (semantic-abbreviate-nonterminal, semantic-summarize-nonterminal):
8701         New functions/overloads.
8702
8703 2003-03-10  Eric M. Ludlam  <zappo@gnu.org>
8704
8705         * semanticdb-file.el (semanticdb-load-database):
8706         Always reset the parent db in read tables.
8707         Delete read instance when the DB struct is out of date.
8708
8709 2003-03-08  Eric M. Ludlam  <zappo@gnu.org>
8710
8711         * bovine/bovine-grammar.el: (bovine-grammar-expand-VARIABLE-TAG)
8712         (bovine-grammar-expand-INCLUDE-TAG): New fcn
8713         (bovine-grammar-expand-form): Call new fcns.
8714
8715         * semantic-sb.el (speedbar): Use inversion to load.
8716
8717         * semantic.el (semantic-version): Eval and compile
8718         (inversion): New include
8719         (semantic-require-version): Use inversion to implement.
8720
8721         * semantic-debug.el (eieio): Use inversion to load.
8722
8723         * semanticdb.el (eieio): Use inversion to load.
8724         (semanticdb-needs-refresh-p): New convenience method.
8725         (semanticdb-semantic-init-hook-fcn): Better handling of unmatched
8726         syntax errors.
8727
8728         * semantic-analyze.el (eieio): Use inversion to load.
8729
8730 2003-03-06  Eric M. Ludlam  <zappo@gnu.org>
8731
8732         * semanticdb-java.el: *** empty log message ***
8733
8734 2003-03-04  Eric M. Ludlam  <zappo@gnu.org>
8735
8736         * wisent/Makefile (LOADPATH): Added common.
8737
8738         * wisent/Project.ede (wisent): Added inversion dependency
8739
8740         * bovine/Makefile (LOADPATH): Added common.
8741
8742         * bovine/Project.ede (bovinator): Added inversion dependency.
8743
8744         * Makefile (LOADPATH): Added common.
8745
8746         * Project.ede (tools): Added inversion dependency
8747
8748 2003-03-02  Eric M. Ludlam  <zappo@gnu.org>
8749
8750         * NEWS: Added note on semanticdb-file depending on inversion.
8751
8752         * semanticdb-file.el (inversion): New requirement
8753         (semanticdb-file-version, semanticdb-file-incompatible-version): New vars
8754         (semanticdb-project-database-file): Added `semantic-token-version',
8755         and `semanticdb-version' slots.
8756         (semanticdb-create-database): Set the version values.
8757         (semanticdb-load-database): If a loaded file is an old version, flush
8758         as much as necessary so nothing crashes.
8759
8760         * semantic-token.el (semantic-token-version, semantic-token-incompatible-version):
8761         new variables.
8762
8763 2003-02-28  Eric M. Ludlam  <zappo@gnu.org>
8764
8765         * semantic-token.el (semantic-token-get, semantic-token-put*): Moved
8766         (semantic-token-*-p): Moved
8767         (semantic-token, semantic-token-new-*): New
8768
8769 2003-02-27  Richard Y. Kim <ryk@ap.com>
8770
8771         * doc/semantic.texi: Split copyright to two lines.
8772
8773         * doc/app-dev-guide.texi:
8774         Changed structure commands such as @section.  A simple cleanup after pasting this from the old manual.
8775
8776         * doc/app-dev-guide.texi, doc/fdl.texi, doc/glossary.texi, doc/installation.texi, doc/lang-support-guide.texi, doc/overview.texi, doc/semantic.texi, doc/user-guide.texi:
8777         Moved the content of the old semantic.texi into appropriate chapters in the new manual.
8778
8779 2003-02-27  Eric M. Ludlam  <zappo@gnu.org>
8780
8781         * Makefile (semantic_LISP): Added semantic-token.el
8782
8783         * Project.ede (semantic): Added semantic-token.el
8784
8785         * semanticdb-el.el (eieio):
8786         Require while compiling only.  Needed for cleaner byte-compile.
8787
8788         * semantic-util.el (semantic-equivalent-tokens-p):
8789         Moved to semantic-token.el
8790         (semantic-token-*): Liekwise.
8791
8792         * semantic-fw.el (semantic-tfe-overlay -properties -number):
8793         Moved to semantic-token.el
8794         (semantic-token-*): Likewise.
8795
8796         * semantic.el (semantic-token): Require it.
8797         (semantic-delete-overlay-maybe): moved.
8798
8799         * semantic-token.el: All token access functions moved here.
8800
8801         * NEWS: Added search classes.
8802
8803 2003-02-25  Eric M. Ludlam  <zappo@gnu.org>
8804
8805         * semantic-util.el (semantic-nonterminal-external-member-parent):
8806         Use `define-overload'.
8807         (semantic-nonterminal-external-member-p): Use `define-overload'.
8808         (semantic-nonterminal-external-member-children): Use `define-overload'.
8809         (semantic-nonterminal-external-member-children-db): Deleted
8810         (semantic-nonterminal-external-member-children-default): Use new
8811         semanticdb-search routine for finding external member chidren instead
8812         of above.
8813
8814         * semantic-util-modes.el (semantic-auto-parse-enabled-p):
8815         Do not auto-parse if doing a lexial
8816         debug.  Fix logic error.
8817
8818         * semantic-analyze.el (semantic-analyze-type-parts):
8819         Use new semanticdb search for external
8820         children instead of the fn in semantic-util.
8821         (semantic-analyze-token-type)
8822         (semantic-analyze-find-nonterminal-sequence)
8823         (semantic-analyze-current-context)
8824         (semantic-analyze-possible-completions):
8825          Use `semantic-analyze-type-parts' instead of children.
8826
8827         * semantic-sb.el (semantic-sb-token-jump):
8828         Try to support multiple versions of speedbar.
8829
8830         * semanticdb-el.el (semanticdb-find-nonterminal-external-children-of-type-method):
8831         New
8832
8833         * semanticdb-search.el (Commentary): Updated
8834         (semanticdb-find-nonterminal-external-children-of-type,
8835         semanticdb-find-nonterminal-external-children-of-type-method): New
8836
8837 2003-02-25  Richard Y. Kim <ryk@ap.com>
8838
8839         * doc/Makefile, doc/app-dev-guide.texi, doc/installation.texi, doc/internals.texi, doc/lang-support-guide.texi, doc/overview.texi, doc/semantic.texi, doc/user-guide.texi:
8840         Initial check in of the merged semantic manual.
8841
8842 2003-02-24  David Ponce  <david@dponce.com>
8843
8844         * wisent/wisent.texi: Eric's fixes.
8845
8846 2003-02-23  David Ponce  <david@dponce.com>
8847
8848         * wisent/wisent.texi:
8849         Updated to take into account latest changes in Wisent and
8850         Semantic.
8851
8852 2003-02-22  David Ponce  <david@dponce.com>
8853
8854         * wisent/wisent-python.wy (goal): Fixed comment delimiter.
8855
8856         * semantic-grammar.el:
8857         No more depend on `with-syntax-table' implementation.  For
8858         example, since GNU Emacs 21.4 `with-syntax-table' no more use a
8859         copy of the given syntax table.
8860
8861         (semantic-grammar-skip-quoted-syntax-table): New variable.
8862         (semantic-grammar-goto-grammar-indent-anchor): Use it.
8863         (semantic-grammar-brackets-as-parens-syntax-table): New variable.
8864         (semantic-grammar-do-lisp-indent): Use it.
8865
8866         * semantic-ia-sb.el (speedbar-add-mode-functions-list "Analyse"):
8867         Replaced
8868         `speedbar-line-path' with `speedbar-line-directory' used since
8869         speedbar 0.15.
8870
8871         * semantic-sb.el (semantic-sb-token-jump):
8872         Replaced `speedbar-line-path' with
8873         `speedbar-line-directory' used since speedbar 0.15.
8874
8875 2003-02-21  Eric M. Ludlam  <zappo@gnu.org>
8876
8877         * semantic-sb.el (semantic-sb-token-jump):
8878         Use new `speedbar-before-visiting-tag-hook'.
8879
8880 2003-02-20  David Ponce  <david@dponce.com>
8881
8882         * wisent/wisent-debug.el:
8883         Requires `pp' if `pprint' feature was not found.
8884
8885         * semantic-grammar.el (semantic-grammar-as-string):
8886         Requires `pp' feature.
8887
8888 2003-02-20  Richard Y. Kim <ryk@ap.com>
8889
8890         * wisent/wisent-python.el:
8891         Replaced one use of 'end' free variable with (cdr semantic-lex-analysis-bounds).
8892
8893 2003-02-19  David Ponce  <david@dponce.com>
8894
8895         * wisent/wisent-debug.el: New file.
8896
8897         * wisent/wisent.el (autoload 'wisent-compile-grammar): Removed.
8898         (wisent-automaton-p): New.
8899         (wisent-translate, wisent-untranslate): Removed.
8900         (wisent-parse): Use new automaton format.
8901
8902         * wisent/wisent-python.el: (wisent-python-parser-tables)
8903         (wisent-python-keywords, wisent-python-tokens)
8904         (wisent-python-default-setup): Re-generated.
8905
8906         * wisent/wisent-java.el, wisent/wisent-java-tags.el:
8907         (wisent-java-parser-tables)
8908         (wisent-java-keywords, wisent-java-tokens)
8909         (wisent-java-default-setup): Re-generated.
8910
8911         * wisent/wisent-grammar.el (wisent-grammar-parsetable-builder):
8912         Ensure that the grammar
8913         [byte-]compiler is available to handle byte-compilation of the
8914         grammar.
8915
8916         * wisent/wisent-comp.el (wisent-defcontext semantic-actions):
8917         Moved before first use.
8918         (wisent-token-actions): Create new semantic actions obarray.  Fill
8919         the action table with semantic action symbols instead of negative
8920         item numbers.
8921         (wisent-goto-actions): Fill the goto table with nonterminal
8922         symbols instead of item numbers.
8923         (wisent-semantic-action): Store code of action in the function
8924         cell of a symbol interned in the semantic actions obarray.  Return
8925         that symbol.  The new semantic action variable `$action' is bound
8926         to the name of that symbol.
8927         (wisent-semantic-actions, wisent-token-translations): Removed.
8928         (wisent-parser-automaton): Return a vector of 4 elements: the
8929         action table, the goto table, the alist of start symbols, and the
8930         semantic actions obarray.
8931         (wisent-parse-nonterminals): Produce symbolic location of semantic
8932         actions.
8933         (wisent-parse-grammar): Intern generated symbols.
8934         (wisent-compiled-grammar-p): Removed.
8935         (wisent-compile-grammar): Doc fix.  Use `wisent-automaton-p'.
8936         (wisent-byte-compile-grammar)
8937         (wisent-byte-compile-automaton): New functions.
8938
8939         * wisent/wisent-cim.el: (wisent-cim-automaton)
8940         (wisent-cim-keywords, wisent-cim-tokens)
8941         (wisent-cim-default-setup): Re-generated.
8942
8943         * wisent/wisent-calc.el: (wisent-calc-automaton, wisent-calc-tokens)
8944         (wisent-calc-setup-parser): Re-generated.
8945
8946         * wisent/wisent-awk.el: (wisent-awk-automaton)
8947         (wisent-awk-keywords, wisent-awk-tokens)
8948         (wisent-awk-setup-parser): Re-generated.
8949
8950         * wisent/Project.ede (ede-proj-target-elisp "wisent"):
8951         Added wisent-debug.el.
8952
8953         * wisent/Makefile: Re-generated.
8954
8955         * semantic-grammar.el: (semantic-grammar-automaton)
8956         (semantic-grammar-keywords, semantic-grammar-tokens)
8957         (emantic-grammar-setup-semantic): Re-generated.
8958
8959         * bovine/java.bnf: Obsolete file removed.
8960
8961         * bovine/semantic-java.el: Removed obsolete code related to java.bnf.
8962
8963 2003-02-19  Richard Y. Kim <ryk@ap.com>
8964
8965         * wisent/wisent-python.el:
8966         Replaced 'depth' free variable with semantic-lex-maximum-depth,
8967         replaced two code fragments protected with condition-case with
8968         semantic-lex-unterminated-syntax-protection macro, and
8969         added wisent-python-lex-buffer test command.
8970
8971 2003-02-18  Richard Y. Kim <ryk@ap.com>
8972
8973         * wisent/wisent-python.el:
8974         Fixed a regexp in python-next-line so that backquotes in python code do not break it.
8975
8976         * wisent/wisent-python.el:
8977         Replaced end-point and current-depth with semantic-lex-end-point and semantic-lex-current-depth.
8978
8979         * wisent/wisent-python.el:
8980         Modified all (semantic-lex-token ...) with (semantic-lex-push-token (semantic-lex-token ...)) to conform to the new lexer.
8981
8982 2003-02-17  Eric M. Ludlam  <zappo@gnu.org>
8983
8984         * bovine/semantic-c.el (semantic-toplevel-c-bovine-table): Regenerated
8985         (semantic-c-keyword-table): Regenerated
8986         (semantic-default-c-setup): Regenerated with semantic-debug suppoert.
8987
8988 2003-02-17  David Ponce  <david@dponce.com>
8989
8990         * wisent/wisent-grammar.el (wisent-grammar-setupcode-builder): Setup
8991         `semantic-debug-parser-source'.
8992
8993         * wisent/wisent-java-lex.el: (wisent-java-lex-symbol)
8994         (wisent-java-lex-symbol2)
8995         (wisent-java-lex-string): Follow lexical API changes.
8996
8997         * semantic-grammar.el (semantic-grammar-lex-sexp): Fixed typo.
8998
8999 2003-02-17  Eric M. Ludlam  <zappo@gnu.org>
9000
9001         * bovine/Project.ede ("bnf"): gone
9002         ("examples"): no more bnf.
9003
9004         * bovine/Makefile (examples_MISC): No more .bnf
9005         (bnf_MISC): Removed
9006         (all): removed bnf
9007         (bnf): gone
9008         (dist): no more bnf.
9009
9010         * bovine/Makefile, bovine/c.bnf, bovine/make.bnf, bovine/make.by, bovine/scheme.bnf, bovine/scheme.by, bovine/skeleton.bnf:
9011         *** empty log message ***
9012
9013         * semantic-util-modes.el (semantic-auto-parse-bovinate): Use
9014         `semantic-lex-unterminated-syntax-end-function' in addition to the
9015         old `-flex-' version.
9016
9017         * semantic-util-modes.el (semantic-auto-parse-enabled-p):
9018         Do not parse if debugging is enabled.
9019
9020         * semantic-debug.el (semantic-debug): Do not turn off auto-parse.
9021
9022         * semantic-sb.el (semantic-sb-detail-parent):
9023         Use `semantic-token-with-position-p'.
9024
9025         * semantic-debug.el (semantic-debug-highlight-lexical-token):
9026         Use lexical analyzer highlighter.
9027
9028         * bovine/semantic-skel.el (semantic-lex-skel-if-0):
9029         Update to new lexer API.
9030
9031         * bovine/semantic-make.el:
9032         (semantic-lex-make-backslash-newline, semantic-lex-make-command):
9033         (semantic-default-make-setup): Update to new lexer API.
9034
9035         * bovine/semantic-c.el:
9036         (semantic-lex-c-if-0, semantic-lex-c-include-system)
9037         (semantic-lex-c-ignore-ending-backslash): Updated to new lexer API
9038
9039         * semantic-grammar.el:
9040         (semantic-grammar-lex-symbol, semantic-grammar-lex-string)
9041         (semantic-grammar-lex-sexp): Use new lexer APIs.
9042
9043         * semantic-lex.el (semantic-lex-test): New command
9044         (semantic-lex-debug): New variable and new command.
9045         (semantic-lex-highlight-token): New function
9046         (semantic-lex-debug-break): New function
9047         (semantic-lex-end-point, semantic-lex-current-depth)
9048         (semantic-lex-maximum-depth, semantic-lex-token-stream)
9049         (semantic-lex-analysis-bounds): New state variables
9050         (define-lex): Replace all local variables with references to above
9051          new global variables.
9052          Improved lexical hang detection.
9053         (semantic-lex-push-token): New fcn
9054         (semantic-lex-token): Spit out push part.
9055         (semantic-lex-unterminated-syntax-detected): New fcn
9056         (semantic-lex-unterminated-syntax-protection): New macro
9057         (define-lex-analyzer): Updated doc string.
9058          Generated fcn binds more new state variables.
9059         (define-lex-simple-regex-analyzer, define-lex-block-analyzer)
9060         (semantic-lex-beginning-of-line, semantic-lex-newline-as-whitespace)
9061         (semantic-lex-symbol-or-keyword, semantic-lex-punctuation-type)
9062         (semantic-lex-comments, semantic-lex-comments-as-whitespace)
9063         (semantic-lex-ignore-comments): Use `semantic-lex-push-token'.
9064          Use `semantic-lex-unterminated-syntax-protection' macro if apropriate.
9065          Use new state variables as apropriate.
9066
9067         * semantic.el (bovinate-debug): Deprecated.
9068
9069 2003-02-15  David Ponce  <david@dponce.com>
9070
9071         * semantic-autogen.el: New implementation.
9072
9073         (semantic-autogen-noninteractive)
9074         (semantic-autogen-keywordp): New compatibility stuff.
9075         (make-autoload): New before advice.
9076         (semantic-autogen-header)
9077         (semantic-autogen-file, semantic-autogen-subdirs)
9078         (semantic-autogen-update-header): New.
9079         (semantic-hack-autoloads): Delegate to `batch-update-autoloads'.
9080
9081 2003-02-14  David Ponce  <david@dponce.com>
9082
9083         * bovine/semantic-scm.el: (semantic-toplevel-scheme-bovine-table)
9084         (semantic-scheme-keyword-table)
9085         (semantic-default-scheme-setup): Re-generated from scheme.by.
9086
9087         * bovine/scheme.by (OPENPAREN, CLOSEPAREN): Fixed token type.
9088         (scheme-in-list): Handle function body.
9089         (sequence): New nonterminal.
9090
9091         * semantic-debug.el (semantic-debug-find-parser-source):
9092         Fixed error when parser
9093         source don't exist in `load-path'.  Use `locate-library'.
9094
9095 2003-02-13  David Ponce  <david@dponce.com>
9096
9097         * wisent/wisent-calc.el: (wisent-calc-automaton)
9098         (wisent-calc-tokens)
9099         (wisent-calc-setup-parser): Re-generated.
9100
9101         * wisent/wisent-calc.wy (setupcode):
9102         Added missing punctuations in lexer syntax table.
9103
9104         * bovine/semantic-el.el: (semantic-ctxt-current-symbol emacs-lisp-mode)
9105         (semantic-ctxt-current-function emacs-lisp-mode): Return result
9106         in a list.
9107
9108         * semanticdb-el.el (semanticdb-find-nonterminal-by-name-regexp-method):
9109         Ensure it
9110         returns valid data.  Code simplified.
9111
9112 2003-02-13  Eric M. Ludlam  <zappo@gnu.org>
9113
9114         * bovine/bovine-grammar.el (bovine-grammar-setupcode-builder):
9115         New debug variables now set.
9116
9117         * bovine/Makefile (bovinator_LISP): Added bovine-debug.el
9118         (LOADPATH): added eieio and wisent
9119         (examples_LISP): added skeleton.by
9120         (by_MISC): added make and scheme .by files.
9121
9122         * bovine/Project.ede (bovinator): Added EIEIO dependency.
9123         Added `bovine-debug.el' support file.
9124         (examples): Added skeleton.by.
9125         (by): Added make and scheme.
9126
9127         * Makefile (tools_LISP): Added semantic-debug.el.
9128
9129         * Project.ede ("semantic"): Added `semantic-debug' API interface.
9130
9131         * bovine/semantic-bovine.el (semantic-bovinate-stream):
9132         Use new bovine debug interface.
9133         Removed other debugger sections.
9134         (semantic-dump-buffer-init, semantic-dump-detail)
9135         (semantic-bovinate-debug-table, semantic-bovinate-debug-set-table)
9136         (semantic-bovinate-debug-buffer, semantic-bovinate-show)
9137         (semantic-bovinate-create-reference)
9138         (semantic-bovinate-create-reference-token-list)
9139         (semantic-bovinate-add-reference, semantic-bovinate-compare-reference)
9140         (semantic-bovinate-reference-temp-list): Deleted.
9141
9142         * semantic-debug.el:
9143         (semantic-debug-parser-class, semantic-debug-enabled)
9144         (semantic-debug-current-interface, semantic-debug-current-parser): New
9145         (semantic-debug-interface): Added several new slots.
9146         (semantic-debug-frame, semantic-debug-set-parser-location)
9147         (semantic-debug-set-source-location): New
9148         (semantic-debug-interface-layout): Fixed.
9149         (semantic-debug-frame): Removed cruft.
9150         (semantic-debug-highlight-lexical-token)
9151         (semantic-debug-highlight-rule, semantic-debug-unhighlight)
9152         (semantic-debug-break): New
9153         (semantic-debug-mode-map): Added abort and SPC bindings
9154         (semantic-debug-mode): Fixed
9155         (semantic-debug-next): Exit recursive edit
9156         (semantic-debug-step): Exit recursive edit
9157         (semantic-debug-fail-match): implemented.
9158         (semantic-debug-quit): Exit recursive edit.
9159         (semantic-debug-abort): new
9160         (semantic-debug-set-breakpoint): name change
9161         (semantic-debug-parser): Updated all methods.
9162
9163         * bovine/bovine-debug.el:
9164         Implementation of `semantic-debug' interface for the bovine parser.
9165
9166         * semanticdb.el (semanticdb-create-table):
9167         Fixed name of object to not use scoped variable.
9168
9169 2003-02-10  Richard Y. Kim <ryk@ap.com>
9170
9171         * wisent/wisent-python.el, wisent/wisent-python.wy:
9172         Reworked the python parser to be able to parse member variables and
9173         functions of classes sufficiently well to make ECB work!
9174
9175 2003-02-08  Richard Y. Kim <ryk@ap.com>
9176
9177         * wisent/wisent-python.el:
9178         Fixed semantic-lex-python-charquote lexical analyzer so that explicit line continuations via backslashes are handled properly.
9179
9180         * wisent/wisent-python.wy:
9181         Fixed wiset-token expressions to produce tokens that conform to the specification at "(semantic)Style Guide" info node.
9182
9183 2003-02-07  David Ponce  <david@dponce.com>
9184
9185         * semantic-lex.el (semantic-lex-whitespace):
9186         Increment `end-point' when it merges
9187         successive tokens.
9188
9189 2003-02-06  David Ponce  <david@dponce.com>
9190
9191         * semantic-grammar.el (semantic-grammar-update-outputfile): Use
9192         `semantic-map-mode-buffers'.  Make sure the grammar output file
9193         was required.
9194
9195 2003-02-04  Eric M. Ludlam  <zappo@gnu.org>
9196
9197         * NEWS: Added news about sematnicdb.
9198
9199         * semantic-debug.el:
9200         (semantic-debug-frame, semantic-debug-create-frame):
9201         Adjust doc strings based on David's input.
9202
9203         * semantic-debug.el: Basic framework for the debugger.
9204
9205 2003-02-03  David Ponce  <david@dponce.com>
9206
9207         * tests/templates.cpp: Sync with v1p4 branch.
9208
9209         * bovine/semantic-c.el: (semantic-toplevel-c-bovine-table)
9210         (semantic-c-keyword-table)
9211         (semantic-default-c-setup): Re-generated from c.by.
9212
9213         * bovine/c.by: Sync with c.bnf in v1p4 branch.
9214
9215         (template-var): Handle any arguments with optional '&' and '*'
9216         operators.
9217         (template-type): Use variablearg rule.
9218
9219         * semanticdb.el (semanticdb-project-predicates): Renamed to...
9220         (semanticdb-project-predicate-functions): New.
9221         (semanticdb-current-database-list): Use
9222         `run-hook-with-args-until-success' to run
9223         `semanticdb-project-root-functions'.  Minor changes.
9224
9225         * semanticdb-file.el (semanticdb-write-directory-p): Use
9226         `run-hook-with-args-until-success' to run
9227         `semanticdb-project-predicate-functions'.
9228
9229         * NEWS: no message
9230
9231 2003-02-02  Richard Y. Kim <ryk@ap.com>
9232
9233         * wisent/wisent-python.el:
9234         Lots of comment clean ups plus removal of unused code.
9235
9236         * wisent/wisent-python.wy:
9237         Removed code to truncate string literals to first 16 characters.  It was a debugging aid.
9238
9239         * wisent/wisent-python.el, wisent/wisent-python.wy:
9240         Updated the python grammar to include the base class information in tokens representing a class.
9241
9242 2003-02-02  Eric M. Ludlam  <zappo@gnu.org>
9243
9244         * bovine/skeleton.by (OPERATORS): New
9245         (expression): Use above.
9246
9247         * bovine/semantic-skel.el (semantic-flex-skeleton-extensions): deleted
9248         (semantic-lex-skel-if-0, semantic-skeleton-lexer): New
9249
9250         * bovine/skeleton.by: Example of using the .by format.
9251
9252         * bovine/semantic-scm.el (semantic-scheme-lexer): New lexer.
9253         (semantic-*-scheme...): Generated from scheme.by
9254
9255         * bovine/scheme.by: Scheme parser, ported from scheme.bnf
9256
9257 2003-02-01  Klaus Berndl <klaus.berndl@sdm.de>
9258
9259         * NEWS: Added announcements for recent enhancements for C++ parsing
9260
9261         * tests/templates.cpp: Added new very complex examples for templates
9262
9263         * semantic-c.el: Regenerated from latest c.bnf
9264
9265         * c.bnf (template-var):
9266         In template-types arguments can be any symbols with optional
9267         adress-operator (&) and optional dereferencing operator (*)
9268
9269         (template-type): template-types can be all flavors of variable-args
9270
9271 2003-02-01  Eric M. Ludlam  <zappo@gnu.org>
9272
9273         * semantic-grammar.el (semantic-grammar-update-def):
9274         Evaluate after creation.
9275         (semantic-grammar-update-setupfunction): Evaluate after creation.
9276         (semantic-grammar-update-outputfile): Loop over all buffers.
9277         Call the setup function on all buffers matching the mode we are
9278         building a parser for.
9279
9280         * bovine/semantic-make.el (semantic-toplevel-make-bovine-table):
9281         Updated from make.by
9282         (semantic-make-keyword-table): Updated from make.by
9283         (semantic-flex-make-extensions, semantic-flex-make-command)
9284         (semantic-flex-nonewline): deleted
9285         (semantic-lex-make-backslash-newline, semantic-lex-make-command):
9286         New lexical analyzers.
9287         (semantic-make-lexer): New lexer.
9288         (semantic-default-make-setup): Updated from make.by.
9289
9290         * semantic.el (semantic-elapsed-time): New fn.
9291         (bovinate): Use above to calculate elapsed time.
9292
9293 2003-01-31  Eric M. Ludlam  <zappo@gnu.org>
9294
9295         * bovine/make.by (elements): Comment out EMPTY
9296         (opt-whitespace): Comment out EMPTY
9297
9298         * semantic-lex.el (define-lex-analyzer):
9299         The analyzer created as a function now wraps up
9300         the token stream so `semantic-lex-token' works.
9301
9302 2003-01-31  Richard Y. Kim <ryk@ap.com>
9303
9304         * NEWS: Added mention of python parser in the Languages section.
9305
9306         * wisent/wisent-python.el:
9307         Updated the forms automatically generated from wisent-python.wy.
9308         Apart from this, no other changes were made.
9309
9310         * wisent/wisent-python.wy:
9311         The base class list tokens are now generated for class tokens.
9312
9313         * wisent/wisent-python.wy:
9314         Cleaned up many semantic actions by getting rid of debug code and unncessary code.
9315
9316         * wisent/wisent-python.el, wisent/wisent-python.wy:
9317         Variable assignment statements and function formal parameters now generate 'variable tokens instead of the generic 'code tokens.
9318
9319 2003-01-31  Eric M. Ludlam  <zappo@gnu.org>
9320
9321         * bovine/make.by: First attempt.
9322
9323 2003-01-30  David Ponce  <david@dponce.com>
9324
9325         * tests/templates.cpp: Sync with v1p4 branch.
9326
9327         * bovine/semantic-c.el: (semantic-toplevel-c-bovine-table)
9328         (semantic-c-keyword-table)
9329         (semantic-default-c-setup): Re-generated from c.by.
9330
9331         * bovine/c.by: Sync with c.bnf in v1p4 branch.
9332
9333         (template-var): Handle literal or constant.
9334         (typeformbase): Fixed.
9335
9336 2003-01-30  Klaus Berndl <klaus.berndl@sdm.de>
9337
9338         * NEWS:
9339         templates-types with constants or literals as parameters are parsed.
9340
9341         * tests/templates.cpp:
9342         added new examples especially for template-types with constant parameters
9343
9344         * semantic-c.el: Newly generated from c.bnf
9345
9346         * c.bnf (template-var):
9347         Parses constants and literals in template types like in
9348         foo<ClassX, 10> foo_10_var;
9349
9350 2003-01-30  David Ponce  <david@dponce.com>
9351
9352         * Makefile: Rebuilt from Project.ede.
9353
9354 2003-01-30  Eric M. Ludlam  <zappo@gnu.org>
9355
9356         * bovine/semantic-erlang.el:
9357         Erlang support by Vladimir G. Sekissov <svg@surnet.ru>
9358
9359         * bovine/erlang-edoc.el:
9360         Erlang support of the `document' API by Vladimir G. Sekissov <svg@surnet.ru>
9361
9362         * bovine/erlang.bnf:
9363         Erlang support by Vladimir G. Sekissov <svg@surnet.ru>
9364
9365         * Project.ede (init): Fixed object name.
9366         (misc): Added AUTHORS file.
9367
9368         * AUTHORS: Major contributors to Semantic.
9369
9370 2003-01-30  David Ponce  <david@dponce.com>
9371
9372         * tests/test.cpp: Sync with v1p4 branch.
9373
9374         * bovine/semantic-c.el (semantic-lex-c-string):
9375         New analyzer for C strings.
9376         (semantic-c-lexer): Use it.
9377
9378 2003-01-30  Klaus Berndl <klaus.berndl@sdm.de>
9379
9380         * tests/test.cpp:
9381         Added examples for wide-char literals like L"str" and L'c'
9382
9383         * semantic-c.el (semantic-flex-c-extensions): Added
9384                 semantic-flex-wide-char-literal
9385         (semantic-flex-wide-char-literal): New function which lexes
9386                 wide-char string- and char-literals like L"str" and L'c'
9387
9388         * NEWS: Added announcement for parsing wide-char literals like L"str"
9389
9390 2003-01-29  David Ponce  <david@dponce.com>
9391
9392         * tests/test.cpp: Sync with v1p4 branch.
9393
9394         * bovine/semantic-c.el: (semantic-toplevel-c-bovine-table)
9395         (semantic-c-keyword-table)
9396         (semantic-default-c-setup): Re-generated from c.by.
9397
9398         * bovine/c.by: Sync with c.bnf in v1p4 branch.
9399
9400         (WCHAR): New token.
9401         (builtintype-types): Use it.
9402         (variablearg): Removed opt-stars.
9403         (variablearg-opt-name): Handle pointers for unnamed arguments.
9404         (string-seq): New nonterminal.
9405         (expression): Use it instead of string.
9406
9407 2003-01-29  Klaus Berndl <klaus.berndl@sdm.de>
9408
9409         * tests/test.cpp:
9410         Added really complex examples for functions with complex
9411         pointer/const-arguments
9412
9413         * NEWS: Added more enhancements announcements
9414
9415         * semantic-c.el: Newly generated from latest c.bnf
9416
9417         * c.bnf (variablearg):
9418         Removed a superfluous opt-stars which has prevented
9419                 pointers counted correct for arguments
9420         (variablearg-opt-name): Enabled parsing and counting pointers even
9421                 for arguments without an argumentname.
9422         WCHAR: Added new token for "wchar_t"
9423         (builtintype-types): Added WCHAR
9424         (string-seq): New rule for string sequences
9425         (expression): Changed string to string-seq, so that
9426                 string-sequences are parsed correct too
9427
9428 2003-01-29  David Ponce  <david@dponce.com>
9429
9430         * tests/Makefile: New file.
9431
9432         * wisent/Makefile: Rebuilt.
9433
9434         * wisent/Project.ede (ede-proj-target-makefile-info "doc"):
9435         Removed :partofall option.
9436         (ede-proj-target-elisp "languages"): Moved after "wisent" target.
9437
9438         * bovine/Makefile, Makefile: Rebuilt.
9439
9440         * Project.ede (ede-proj-target-elisp "tools"):
9441         Removed "semanticdb-obj.el".
9442
9443         * semantic-mode.el: Obsolete file removed .
9444
9445         * semantic-c.el (semantic-flex-c-extensions): Support #elif.
9446
9447 2003-01-29  Eric M. Ludlam  <zappo@gnu.org>
9448
9449         * bovine/semantic-el.el (semantic-elisp-use-read):
9450         Give `define-mode-overload-implementation'
9451         a parent.
9452         Identify `defvar-mode-local' as a variable. Give it a parent.
9453
9454         * bovine/semantic-c.el (semantic-lex-c-if): Support #elif
9455
9456         * wisent/Project.ede (tools): New target with `bison-wisent.el' in it.
9457
9458 2003-01-28  David Ponce  <david@dponce.com>
9459
9460         * semantic.el (semantic-version): Updated to 2.0beta1.
9461
9462         * Project.ede (ede-proj-project "semantic"):
9463         Updated :version to 2.0beta1.
9464
9465         * NEWS: Minor changes.
9466
9467         * tests/test.cpp:
9468         Sync with changes made by Klaus Berndl <klaus.berndl@sdm.de>
9469         in v1p4 branch.
9470
9471         * bovine/semantic-c.el: (semantic-toplevel-c-bovine-table)
9472         (semantic-c-keyword-table)
9473         (semantic-default-c-setup): Re-generated from c.by.
9474
9475         * bovine/c.by (macro-def): Fixed typo.
9476
9477         Sync with changes made by Klaus Berndl <klaus.berndl@sdm.de>
9478         in c.bnf in v1p4 branch.
9479
9480         (typesimple): Typedefs can also include declmods.
9481         (CVDECLMOD)
9482         (cv-declmods): New rules.
9483         (DECLMOD): Use CVDECLMOD.
9484         (codeblock-var-or-fun): Allow declmods after typeformbase too.
9485         (variablearg): Allow cv-declmods after typeformbase.
9486
9487         * semanticdb.el (semanticdb-file-stream):
9488         Ensure that the non-persistent slot
9489         `reference-directory' is initialized.
9490
9491 2003-01-28  Klaus Berndl <klaus.berndl@sdm.de>
9492
9493         * tests/test.cpp:
9494         Added some examples for the better parsing of const and volatile
9495
9496         * NEWS: Added entry for better parsing of const and volatile
9497
9498         * semantic-c.el: Newly generated from latest c.bnf
9499
9500         * c.bnf (typesimple): typedefs can also include declmods
9501         (CVDECLMOD): New rule
9502         (cv-declmods): New rule
9503         (DECLMOD): uses now CVDECLMOD
9504         (codeblock-var-or-fun): declmods also after typeformbase allowed
9505         (variablearg): cv-declmods after typeformbase allowed
9506
9507 2003-01-27  David Ponce  <david@dponce.com>
9508
9509         * semanticdb.el (semanticdb-file-stream):
9510         Use `semanticdb-create-database' instead of
9511         a hard-coded database file name based on given file name plus
9512         `semanticdb-default-file-name'.
9513
9514         * semantic.el (semantic-version): Updated to 1.4.3.
9515
9516         * Project.ede (ede-proj-project "semantic"): Updated :version to 1.4.3.
9517
9518         * bovine/c.bnf:
9519         Added comment to signal that this grammar is now obsoleted
9520         by the one in c.by!
9521
9522         (outputfile): Commented out to avoid overwrite of semantic-c.el.
9523
9524         Sync with changes made by Klaus Berndl <klaus.berndl@sdm.de>
9525         in c.bnf in v1p4 branch.
9526
9527         (TYPENAME): New keyword.  Added summary.
9528         (declaration): Moved define after var-or-fun.
9529         (macro-expression-list)
9530         (macro-def): New.
9531         (macro-or-include): Use macro-def.
9532         (define): Use macro-def.  Fixed semantic action.
9533         (class-parents): Fixed semantic actions.
9534         (type): Handle unnamed namespaces.
9535         (using): Handle "using namespace XXX".
9536         (template-type): Handle namespace-symbol and keyword typename.
9537         (DECLMOD): Removed SIGNED and UNSIGNED.  Handle TYPENAME.
9538         (builtintype-types)
9539         (signedmod): New.
9540         (builtintype): Use them.
9541         (opt-initializers)
9542         (varname): Handle namespace-symbol.
9543         (namespace-opt-class): New.
9544         (opt-class): Use it.
9545         (operatorsym): Handle PARENS and BRAKETS.
9546         (opt-expression): Removed.
9547         (function-call)
9548         (expression): Handle namespace-symbol.
9549
9550 2003-01-25  David Ponce  <david@dponce.com>
9551
9552         * semantic-lex.el (semantic-lex-make-type-table):
9553         Fixed resetting of `default' value.
9554         More understandable warning message.
9555
9556 2003-01-25  Richard Y. Kim <ryk@ap.com>
9557
9558         * wisent/wisent-python.el, wisent/wisent-python.wy:
9559         Added comments for each keyword, deleted unused code, and scrubbed comments.
9560
9561         * wisent/wisent-python.el:
9562         Matching changes to the .wy file just checked in.
9563
9564         * wisent/wisent-python.wy:
9565         All tokens except 'import', 'function', and 'type' are now of type
9566         'code' whose value is the keyword involved in the expression.
9567
9568         The following are such keywords: print, del, pass, break, continue,
9569         return, yield, raise, global, exec, assert, if, while, for, try
9570
9571         Also "expr" value is used with 'code' token type for other exressions
9572         that do not have a keyword.
9573
9574 2003-01-24  David Ponce  <david@dponce.com>
9575
9576         * tests/templates.cpp, tests/test.cpp:
9577         Sync with changes made by Klaus Berndl <klaus.berndl@sdm.de>
9578         in v1p4 branch.
9579
9580         * bovine/semantic-c.el: (semantic-toplevel-c-bovine-table)
9581         (semantic-c-keyword-table)
9582         (semantic-default-c-setup): Re-generated from c.by.
9583
9584         (semantic-lex-c-ignore-ending-backslash): New.
9585         (semantic-c-lexer): Use it.
9586
9587         * bovine/c.by:
9588         Sync with changes made by Klaus Berndl <klaus.berndl@sdm.de>
9589         in c.bnf in v1p4 branch.
9590
9591         (PARENS, BRAKETS): New tokens.
9592         (TYPENAME): New keyword.  Added summary.
9593         (declaration): Moved define after var-or-fun.
9594         (macro-expression-list)
9595         (macro-def): New.
9596         (macro-or-include): Use macro-def.
9597         (define): Use macro-def.  Fixed semantic action.
9598         (class-parents): Fixed semantic actions.
9599         (type): Handle unnamed namespaces.
9600         (using): Handle "using namespace XXX".
9601         (template-type): Handle namespace-symbol and keyword typename.
9602         (DECLMOD): Removed SIGNED and UNSIGNED.  Handle TYPENAME.
9603         (builtintype-types)
9604         (signedmod): New.
9605         (builtintype): Use them.
9606         (opt-initializers)
9607         (varname): Handle namespace-symbol.
9608         (namespace-opt-class): New.
9609         (opt-class): Use it.
9610         (operatorsym): Handle PARENS and BRAKETS.
9611         (opt-expression): Removed.
9612         (function-call)
9613         (expression): Handle namespace-symbol.
9614
9615 2003-01-24  Klaus Berndl <klaus.berndl@sdm.de>
9616
9617         * NEWS:
9618         New section for semantic 1.4.3 and an entry "Enhancements to the C/C++
9619         grammar" which describes all enhancements in c.bnf and semantic-c.el
9620
9621         * tests/test.cpp:
9622         Added a lot of new examples related to the modifications in c.bnf and
9623         semantic-c.el
9624
9625         * tests/templates.cpp:
9626         Added a some new examples related to the modifications in c.bnf
9627
9628         * semantic-c.el (semantic-flex-c-extensions):
9629         Added semantic-flex-backslash-newline
9630         (semantic-flex-backslash-newline): New function
9631
9632         * c.bnf (macro-expression-list): Parsing one-line macros correct
9633         (define): Fixing a bug
9634         (type): Added unnamed namespaces
9635         (using): Allowing "using namespace XXX"
9636         (template-type): changing symbol -> namespace-symbol, adding
9637                 keyword typename
9638         (DECLMOD): Removed SIGNED and UNSIGNED, added TYPENAME
9639         (builtintype-types): was builtintype; added long int, long long,
9640                 long double
9641         (signedmod): New
9642         (builtintype): Now uses signedmod and builtintype-types
9643         (opt-initializers): changing symbol -> namespace-symbol
9644         (varname): changing symbol -> namespace-symbol
9645         (namespace-opt-class): Allowing template-specifiers
9646         (opt-class): parsing namespaces here
9647         (operatorsym): Parsing operator()() and operator[]()
9648         (function-call): changing symbol -> namespace-symbol
9649         (expression): changing symbol -> namespace-symbol
9650
9651 2003-01-24  David Ponce  <david@dponce.com>
9652
9653         * NEWS: Completed "Grammar framework." topic.
9654
9655 2003-01-24  Richard Y. Kim <ryk@ap.com>
9656
9657         * wisent/wisent-python.el, wisent/wisent-python.wy:
9658         Deleted debug code that I forgot to take out before the last check in.
9659
9660         * wisent/wisent-python.el, wisent/wisent-python.wy:
9661         Reorganized the grammar by better grouping related non-terminals together.
9662
9663         Also rewrote all the semantic actions so that proper semantic tokens are generated.
9664
9665 2003-01-22  David Ponce  <david@dponce.com>
9666
9667         * NEWS: Starting Semantic 2.0 changes.
9668
9669         * ONEWS: Old NEWS file.
9670
9671 2003-01-21  David Ponce  <david@dponce.com>
9672
9673         * semanticdb.el (semanticdb-file-table):
9674         Use a filename relative to the project
9675         database's target directory when searching for a table object.
9676
9677 2003-01-09  David Ponce  <david@dponce.com>
9678
9679         * bovine/semantic-bovine.el (semantic-bovinate-nonterminal-db-nt):
9680         Doc fix.
9681
9682         * semantic-lex.el (define-lex-analyzer):
9683         Define the single analyzer as function too.
9684         (define-lex-regex-analyzer)
9685         (define-lex-simple-regex-analyzer)
9686         (define-lex-block-analyzer): Doc fix.  Use `define-lex-analyzer'.
9687         (semantic-lex-newline-as-whitespace)
9688         (semantic-lex-ignore-newline): Removed extra white spaces.
9689         (semantic-lex-paren-or-list): Doc fix.
9690
9691 2003-01-06  Richard Y. Kim <ryk@ap.com>
9692
9693         * wisent/wisent-python.el, wisent/wisent-python.wy:
9694         Finally converted python's lexer to use the new lexer, i.e., wisent-lex, and not use the old lexer wisent-flex.
9695
9696 2002-12-31  Eric M. Ludlam  <zappo@gnu.org>
9697
9698         * semantic-ctxt.el (semantic-beginning-of-command): Doc fix.
9699
9700 2002-12-31  David Ponce  <david@dponce.com>
9701
9702         * NEWS: Semantic 1.4.2 released.
9703
9704 2002-12-29  David Ponce  <david@dponce.com>
9705
9706         * senator-isearch.el: Obsolete file.
9707
9708         * semantic.el (semantic-version): Updated to 1.4.2.
9709
9710         * Project.ede (ede-proj-project "semantic"): Updated :version to 1.4.2.
9711
9712         * bovine/semantic-c.el: (semantic-toplevel-c-bovine-table)
9713         (semantic-c-keyword-table)
9714         (semantic-default-c-setup): Generated from c.by.
9715
9716         (semantic-c-classname)
9717         (semantic-c-analyze-dereference-metatype): Doc fix.
9718
9719         * bovine/c.by (outputfile): Output to "semantic-c.el".
9720         (class-parents): Enable namespace names for class parent declarations.
9721         (opt-class-declmods): New.
9722         (using): Fixed typo.
9723         (DECLMOD): Add virtual as a possible declaration modifier.
9724         (typeformbase): Accept namespace names.
9725         (typeformclassbase): Removed.
9726         (throw-exception-list): Enable namespace exceptions.
9727         (variablearg): Added opt-stars.
9728         (namespace-symbol): New.
9729
9730         * bovine/c.bnf (class-parents):
9731         Enable namespace names for class parent declarations.
9732         (opt-class-declmods): New.
9733         (using): Fixed typo.
9734         (DECLMOD): Add virtual as a possible declaration modifier.
9735         (typeformbase): Accept namespace names.
9736         (typeformclassbase): Removed.
9737         (throw-exception-list): Enable namespace exceptions.
9738         (variablearg): Added opt-stars.
9739         (namespace-symbol): New.
9740
9741         * senator-isearch.el: Obsolete file.
9742
9743         * senator.el (senator-completion-menu-popup): Use a local
9744         `imenu-default-goto-function' to avoid conflicts with another buffer
9745         local definition of that function.  Ensure that the local goto
9746         function will return the selected imenu item.
9747
9748         * semantic-util.el: (semantic-type-relation-separator-character)
9749         (semantic-abbreviate-nonterminal): Doc fix.
9750
9751         * semantic-util-modes.el: (semantic-update-mode-line)
9752         (global-semantic-show-unmatched-syntax-mode)
9753         (semantic-unmatched-syntax-face)
9754         (semantic-show-unmatched-syntax)
9755         (semantic-show-unmatched-syntax-mode)
9756         (semantic-show-unmatched-syntax-next)
9757         (semantic-auto-parse-no-working-message)
9758         (semantic-auto-parse-working-in-modeline-flag)
9759         (semantic-auto-parse-max-buffer-size)
9760         (global-semantic-auto-parse-mode)
9761         (semantic-auto-parse-bovinate)
9762         (global-semantic-summary-mode): Doc fix.
9763
9764         * semantic-texi.el (semantic-texi-super-regex):
9765         Added matcher for `defopt'.
9766         (semantic-texi-name-field-list): Add `defopt' as a parsable field
9767         entry.
9768         (semantic-texi-recursive-combobulate-list): Doc fix.
9769
9770         * semantic-imenu.el (semantic-imenu-goto-function): Forward to
9771         `imenu-default-goto-function' when POSITION probably don't came from a
9772         semantic imenu.
9773
9774         (semantic-imenu-flush-fcn): Reset `imenu-menubar-modified-tick' to
9775         force rebuild of the imenu.
9776
9777         * document.el (eval-when-compile 'semantic 'semantic-util):
9778         XEmacs change: needed to
9779         define macros at compile time.
9780
9781         (document-function-name-comment)
9782         (document-insert-parameters)
9783         (document-parameter-comment)
9784         (document-argument-name)
9785         (document-programmer->english): Doc fix.
9786
9787 2002-12-27  David Ponce  <david@dponce.com>
9788
9789         * semantic-c.el (semantic-toplevel-c-bovine-table):
9790         Re-generated from c.bnf.
9791
9792         * c.bnf (class-parents):
9793         Enable namespace names for class parent declarations.
9794         (DECLMOD): Add virtual as a possible declaration modifier.
9795         (typeformbase): Accept namespace names.
9796         (typeformclassbase): Removed.
9797         (throw-exception-list): Enable namespace exceptions.
9798         (namespace-symbol): New.
9799
9800 2002-12-26  David Ponce  <david@dponce.com>
9801
9802         * semantic-util.el: (semantic-type-relation-separator-character)
9803         (semantic-map-buffers): Doc fix.
9804
9805         * semantic-util-modes.el: (semantic-update-mode-line)
9806         (global-semantic-show-dirty-mode)
9807         (global-semantic-show-unmatched-syntax-mode)
9808         (semantic-unmatched-syntax-face)
9809         (semantic-show-unmatched-syntax)
9810         (semantic-show-unmatched-syntax-mode)
9811         (semantic-show-unmatched-syntax-next): Doc fix.
9812
9813         (semantic-auto-parse-no-working-message)
9814         (semantic-auto-parse-working-in-modeline-flag): Reverted back to 1.4
9815         version.  Doc fix.
9816
9817         (semantic-auto-parse-max-buffer-size)
9818         (global-semantic-auto-parse-mode): Doc fix.
9819
9820         (semantic-auto-parse-bovinate): Reverted back to 1.4 version.  Doc
9821         fix.
9822
9823         (global-semantic-summary-mode): Doc fix.
9824
9825         * semantic-texi.el (semantic-texi-recursive-combobulate-list): Doc fix.
9826
9827         * semantic-java.el (semantic-java-keyword-table): White space fix.
9828         (semantic-java-find-documentation)
9829         (semantic-java-doc-line-tags)
9830         (semantic-java-doc-keywords-map): Doc fix.
9831
9832         * semantic-c.el (semantic-toplevel-c-bovine-table):
9833         Re-generated from c.bnf.
9834
9835         (semantic-c-classname)
9836         (semantic-c-analyze-dereference-metatype): Doc fix.
9837         (semantic-c-keyword-table): White space fix.
9838
9839         * document.el (eval-when-compile 'semantic 'semantic-util):
9840         XEmacs change: needed to
9841         define macros at compile time.
9842
9843         (document-function-name-comment)
9844         (document-insert-parameters)
9845         (document-parameter-comment)
9846         (document-argument-name)
9847         (document-programmer->english): Doc fix.
9848
9849         * c.bnf (using): Fixed typo.
9850
9851 2002-12-20  Eric M. Ludlam  <zappo@gnu.org>
9852
9853         * semantic-cb.el (semantic-cb-token):
9854         table type is now semanticdb-abstract-table
9855
9856 2002-12-17  David Ponce  <david@dponce.com>
9857
9858         * semantic-texi.el: * semantic-texi.el:
9859
9860         (semantic-texi-super-regex): Added missing matcher for `defopt'.
9861         Thanks to "Klaus Berndl" <klaus.berndl@sdm.de>.
9862
9863 2002-12-06  Eric M. Ludlam  <zappo@gnu.org>
9864
9865         * semanticdb-el.el: (semanticdb-find-nonterminal-by-function-method):
9866         Disable body of `semanticdb-find-nonterminal-by-function-method'.
9867         It makes the class browser unbelievably slow as it insists on
9868         generating a class browser for all of Emacs.  Fix class browser
9869         then re-enable later.
9870
9871 2002-12-04  Eric M. Ludlam  <zappo@gnu.org>
9872
9873         * wisent/Makefile (wy_MISC): Remove wisent-wy.
9874         (tools_LISP, tools): New
9875
9876 2002-11-27  David Ponce  <david@dponce.com>
9877
9878         * semantic.el (semantic-version): Updated to 1.4.1.
9879
9880         * Project.ede (ede-proj-project "semantic"): Updated :version to 1.4.1.
9881
9882         * NEWS: Added entry for Semantic 1.4.1.
9883
9884 2002-11-22  Eric M. Ludlam  <zappo@gnu.org>
9885
9886         * semantic-edit.el:
9887         (semantic-edits-change-leaf-token, semantic-edits-change-between-tokens)
9888         (semantic-edits-change-over-tokens, semantic-edits-splice-remove):
9889         (semantic-edits-splice-insert):  Get raw parent token list.
9890         Check children for position.  Need raw list for accurate splicing.
9891
9892 2002-11-21  David Ponce  <david@dponce.com>
9893
9894         * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf.
9895
9896         * semantic-texi.el (semantic-texi-name-field-list):
9897         Add `defopt' as a parsable field
9898         entry.
9899
9900         * c.bnf (opt-class-declmods): New.
9901         (typeformbase): Support templates after :: operator.
9902         (variablearg): Support *'s in nameless arguments.
9903
9904 2002-11-18  David Ponce  <david@dponce.com>
9905
9906         * semantic-util.el (semantic-change-function-mark-dirty):
9907         Fixed bug #513650, "Stack
9908         overflow in equal" in `add-to-list' when comparing complex tokens.
9909
9910 2002-11-15  David Ponce  <david@dponce.com>
9911
9912         * semantic-util.el (semantic-find-doc-snarf-comment):
9913         Use `semantic-comment-lexer' as
9914         default lexer.
9915
9916         * semantic-lex.el (semantic-lex-map-symbols):
9917         Fixed misplaced right parenthesis.
9918         (semantic-lex-keywords)
9919         (semantic-lex-types): Fixed missing `setq'.
9920         (semantic-comment-lexer): New predefined lexer.
9921
9922 2002-10-30  David Ponce  <david@dponce.com>
9923
9924         * bovine/semantic-el.el (require 'find-func): Added.
9925         (semantic-end-of-command)
9926         (semantic-beginning-of-command): Handle error when the point is
9927         outside of a parenthesized block.
9928
9929         * bovine/bovine-grammar.el (bovine-grammar-expand-ASSOC):
9930         Apply `semantic-grammar-ASSOC' to
9931         ASSOC parameters.
9932         (bovine-grammar-setupcode-builder): Added setup of
9933         `semantic-toplevel-bovine-table-source' and
9934         `semantic-equivalent-major-modes'.
9935
9936         * semantic-grammar.el (semantic-grammar-update-setupfunction):
9937         Insert appropriate newline
9938         after setup code.
9939
9940 2002-10-26  Eric M. Ludlam  <zappo@gnu.org>
9941
9942         * wisent/bison-wisent.el (bison->wisent): Autoload cookie.
9943         (bison->wisent-action-replace-once): Do not put in Action text.
9944
9945         * semantic.el:
9946         Do not try doing any parsing if the buffer does not have semantic active.
9947
9948 2002-10-02  David Ponce  <david@dponce.com>
9949
9950         * wisent/wisent-python.el: (wisent-python-parser-tables)
9951         (wisent-python-keywords, wisent-python-tokens)
9952         (wisent-python-default-setup): Re-generated.
9953
9954         * wisent/wisent-java-tags.el, wisent/wisent-java.el:
9955         (wisent-java-parser-tables)
9956         (wisent-java-keywords, wisent-java-tokens)
9957         (wisent-java-default-setup): Re-generated.
9958
9959         * wisent/wisent-java-lex.el: (wisent-java-tags-lexer)
9960         (wisent-java-lexer): Use `semantic-lex-punctuation-type'.
9961
9962         * wisent/wisent-grammar.el (wisent-grammar-setupcode-builder):
9963         Generate setup of
9964         `semantic-lex-types-obarray'.
9965
9966         * wisent/wisent-cim.el: (wisent-cim-automaton)
9967         (wisent-cim-keywords, wisent-cim-tokens)
9968         (wisent-cim-default-setup): Re-generated.
9969
9970         * wisent/wisent-calc.el: (wisent-calc-automaton)
9971         (wisent-calc-tokens)
9972         (wisent-calc-setup-parser): Re-generated.
9973
9974         * wisent/wisent-bovine.el: (wisent-lex-token-rules)
9975         (wisent-lex-token-get)
9976         (wisent-lex-make-token-table): Use new `wisent-lex-type-...' API.
9977         (wisent-lex-punctuation): Removed.
9978
9979         * wisent/wisent-awk.el: (wisent-awk-automaton)
9980         (wisent-awk-keywords, wisent-awk-tokens)
9981         (wisent-awk-setup-parser): Re-generated.
9982
9983         * semantic-lex.el (semantic-lex-tokens-obarray): Renamed to...
9984         (semantic-lex-types-obarray): New.
9985         (semantic-lex-token-invalid): Renamed to...
9986         (semantic-lex-type-invalid): New.
9987         (semantic-lex-token-symbol): Renamed to...
9988         (semantic-lex-type-symbol): New.
9989         (semantic-lex-token-class-p): Renamed to...
9990         (semantic-lex-type-p): New.
9991         (semantic-lex-token-set): Renamed to...
9992         (semantic-lex-type-set): New.
9993         (semantic-lex-token-value): Renamed to...
9994         (semantic-lex-type-value): New.
9995         (semantic-lex-token-put): Renamed to...
9996         (semantic-lex-type-put): New.
9997         (semantic-lex-token-get): Renamed to...
9998         (semantic-lex-type-get): New.
9999         (semantic-lex-make-token-table): Renamed to...
10000         (semantic-lex-make-type-table): New.
10001         (semantic-lex-map-tokens): Renamed to...
10002         (semantic-lex-map-types): New.
10003         (semantic-lex-tokens): Renamed to...
10004         (semantic-lex-types): New.
10005
10006         (semantic-lex-punctuation-type): New.
10007
10008         * semantic-grammar.el (semantic-grammar-lexer):
10009         Use `semantic-lex-punctuation-type'.
10010         (semantic-grammar-automaton)
10011         (semantic-grammar-keywords, semantic-grammar-tokens)
10012         (semantic-grammar-setup-semantic): Re-generated.
10013         (semantic-grammar-tokentable-builder-default): Call
10014         `semantic-lex-make-type-table'.
10015         (semantic-grammar-syntax-table): Removed '?' as a quote character.
10016
10017 2002-09-24  Eric M. Ludlam  <zappo@gnu.org>
10018
10019         * semantic-fw.el (define-mode-overload-implementation):
10020         Do not force such method to be
10021         protected.  This prevents a .el file from being loaded twice.
10022         (semantic-function-overload-p): New method.
10023         (semantic-augment-function-help): If a symbol being described is
10024         overloaded, add some help to the user query.
10025         (describe-function): New advice.
10026
10027         * semantic-lex.el (define-lex):
10028         Make sure that a token is eaten for each pass to
10029         prevent hangs.
10030
10031 2002-09-16  Eric M. Ludlam  <zappo@gnu.org>
10032
10033         * bovine/semantic-el.el:
10034         (semantic-up-context, semantic-get-local-variables, semantic-end-of-command)
10035         (semantic-beginning-of-command, semantic-ctxt-current-symbol)
10036         (semantic-ctxt-current-assignment, semantic-ctxt-current-argument): New
10037
10038         * senator.el: Remove highlight dirty tokens menu item.
10039
10040         * semantic-ctxt.el (semantic-up-context):
10041         Add `semantic-overload' property.
10042         (semantic-beginning/end-of-context): Use `define-overload'.
10043         (semantic-beginning/end-of-context-default): Accept parameter.
10044         (semantic-with-buffer-narrowed-to-context): Change indent function.
10045         (semantic-get-local-variables): pass argument to default.
10046         Add `semantic-overload' property.
10047         (semantic-get-local-variables-default): Accept paramter
10048         (semantic-get-local-arguments): Add `semantic-overload' property.
10049         (semantic-get-local-arguments-default): Accept parameter.
10050         (semantic-end/beginning-of-command): Convert to `define-overload'.
10051         (semantic-end/beginning-of-command): Accept new paramter.
10052         (semantic-with-buffer-narrowed-to-command): Change indent functgion
10053         (semantic-ctxt-current-symbol): Convert to `define-overload.
10054         (semantic-ctxt-current-symbol-default): Added paramter.
10055         (semantic-ctxt-current-assignment): Convert to `define-overload'
10056         (semantic-ctxt-current-assignment-default): Add paramter.
10057         (semantic-ctxt-scoped-types): Convert to `define-overload'
10058         (semantic-ctxt-scoped-types-default): Add paramter.
10059
10060 2002-09-13  Eric M. Ludlam  <zappo@gnu.org>
10061
10062         * semantic.el (bovinate): Added timer to determine length of parsing.
10063
10064 2002-09-12  David Ponce  <david@dponce.com>
10065
10066         * semantic-grammar.el (semantic-grammar-lex-symbol):
10067         Undo previous change.
10068         (semantic-grammar-automaton)
10069         (semantic-grammar-keywords)
10070         (semantic-grammar-tokens)
10071         (semantic-grammar-setup-semantic): Re-generated.
10072         (semantic-grammar-syntax-table): Added '.' as symbol constituent, and
10073         '?' and '\' as quote characters.
10074         (semantic-grammar-mode-keywords-1): Fixed symbol regexps.
10075
10076         * semantic-grammar.wy (setupcode): Setup `semantic-lex-comment-regex'.
10077
10078 2002-09-11  David Ponce  <david@dponce.com>
10079
10080         * wisent/wisent-bovine.el (wisent-lex-punctuation):
10081         Continue lexical analysis if a punctuation
10082         don't match.
10083
10084         * semantic-grammar.wy (setupcode):
10085         Removed setup of `semantic-lex-number-expression'.
10086         (token [NUMBER]): Removed.
10087         (token [PREFIX-EXP]): Renamed to SEXP.
10088         (any_value): Updated to reflect above changes.
10089
10090         * semantic-grammar.el (semantic-grammar-lex-symbol):
10091         Include '.' in symbol.
10092         (semantic-grammar-lex-number)
10093         (semantic-grammar-lex-prefixed-expression): Removed.
10094         (semantic-grammar-lex-sexp): New.
10095         (semantic-grammar-lexer): Updated to reflect above changes.
10096         (semantic-grammar-automaton)
10097         (semantic-grammar-keywords)
10098         (semantic-grammar-tokens)
10099         (semantic-grammar-setup-semantic): Re-generated.
10100
10101 2002-09-11  Eric M. Ludlam  <zappo@gnu.org>
10102
10103         * wisent/bison-wisent.el: Translate bison files into wisent.
10104
10105 2002-09-10  David Ponce  <david@dponce.com>
10106
10107         * semantic-grammar.el (require 'semantic-edit): at compilation time.
10108         (semantic-grammar-edits-new-change-hook-fcn): New function.
10109         (semantic-grammar-mode): Use it.
10110
10111         * semantic-edit.el (semantic-edits-change-leaf-token):
10112         Take into account change at
10113         beginning of leaf token.
10114         (semantic-edits-incremental-parser): When there is a change between
10115         tokens and the change is stuck on the first surrounding token,
10116         re-parse that token.  Get reparse-symbol from cache-list when tokens
10117         is nil.
10118
10119 2002-09-07  Eric M. Ludlam  <zappo@gnu.org>
10120
10121         * wisent/Project.ede, bovine/Project.ede, Project.ede:
10122         Updated with new files dependencies.
10123
10124         * bovine/semantic-bovine.el (semantic-bovinate-debug-buffer):
10125         autoload cookie.
10126
10127         * semantic-load.el (semantic-al): eval-and-compile this.
10128         (imenu...): wrap in condition-case to protect .wy files.
10129         (global-semantic-*-mode): Moved around a little
10130         (semanticdb-load-system-cache): Load in the system cache if available.
10131
10132         * semanticdb-system.el:
10133         Database for system directories.  (Such as C include files)
10134
10135         * semanticdb-file.el:
10136         (semanticdb-default-file-name, semanticdb-default-save-directory)
10137         (semanticdb-persistent-path, semanticdb-project-database-file):
10138         autoload cookies.
10139         (semanticdb-file-loaded-p, semanticdb-live-p): Moved
10140         (semanticdb-create-database): Pass down class being created when
10141         calculating database path.
10142         (semanticdb-full-filename): Moved
10143         (semanticdb-file-name-non-directory): New
10144         (semanticdb-file-name-directory): Use new dir-sep-char.
10145         Better final path concatenation.
10146
10147         * semanticdb.el (semanticdb-create-table): Comments
10148         (semanticdb-dir-sep-char): New
10149         (semanticdb-fix-pathname): New
10150         (semanticdb-minor-mode-p): autoload cookie.
10151         (semanticdb-file): Requirement removed.
10152
10153         * semantic-util-modes.el (global-semantic-show-dirty-mode*): REMOVED
10154         (semantic-show-dirty*): REMOVED
10155         (sematic-dirty*): REMOVED
10156
10157         * semantic-util.el (semantic-prototype-nonterminal-default-args):
10158         Pass `color' to sub-calls.
10159         (semantic-nonterminal-children): autoload cookie.
10160
10161         * semantic-ia.el (senator): Added requirement.
10162
10163         * semantic-fw.el (semantic-al): Added require.
10164
10165         * semantic-edit.el (semantic-change-function): Moved.
10166         (semantic-dirty-tokens, semantic-dirty-token-hooks)
10167         (semantic-pre-clean-token-hooks, semantic-clean-token-hooks)
10168         (semantic-remove-dirty-children-internal)
10169         (semantic-remove-dirty-children): REMOVED
10170         (semantic-rebovinate-token, semantic-cleanup-dirty-tokens)
10171         (semantic-change-function-mark-dirty)
10172         (semantic-find-nearby-dirty-tokens)
10173         (semantic-set-tokens-dirty-in-region): REMOVED
10174
10175         * semantic.el (semantic-clear-toplevel-cache):
10176         Removed knowledge of dirty tokens.
10177
10178         * semantic-autogen.el (make-autoload):
10179         Support defmethod as an autoload.
10180
10181 2002-09-05  David Ponce  <david@dponce.com>
10182
10183         * wisent/wisent-wy.el, wisent/wisent-wy.wy: No more used.
10184
10185         * wisent/wisent-python.el:
10186         (wisent-python-parser-tables, wisent-python-keywords)
10187         (wisent-python-tokens, wisent-python--default-setup): Re-generated.
10188
10189         * wisent/wisent-java-tags.el, wisent/wisent-java.el:
10190         (wisent-java-parser-tables, wisent-java-keywords, wisent-java-tokens)
10191         (wisent-java-default-setup): Re-generated.
10192
10193         * wisent/wisent-cim.el:
10194         (wisent-cim-automaton, wisent-cim-keywords, wisent-cim-tokens)
10195         (wisent-cim-default-setup): Re-generated.
10196
10197         * wisent/wisent-calc.wy (setupcode):
10198         Setup lexer to `wisent-calc-lexer'.
10199
10200         * wisent/wisent-calc.el: (wisent-calc-automaton, wisent-calc-tokens)
10201         (wisent-calc-setup-parser): Re-generated.
10202         (wisent-calc-lex-number, wisent-calc-lex-punctuation)
10203         (wisent-calc-lexer): New.
10204         (wisent-calc): Use them.
10205
10206         * wisent/wisent-bovine.el: (wisent-lex-tokens-obarray)
10207         (wisent-lex-add-token, wisent-lex-put-default): Removed.
10208         (wisent-lex-token-rules, wisent-lex-token-get)
10209         (wisent-lex-make-token-table): Use `semantic-lex-token' stuff.
10210
10211         * wisent/wisent-awk.el:
10212         (wisent-awk-automaton, wisent-awk-keywords, wisent-awk-tokens)
10213         (wisent-awk-setup-parser): Re-generated.
10214
10215         * wisent/wisent-grammar.el, bovine/bovine-grammar.el, bovine/c.by:
10216         Initial revision.
10217
10218         * semantic-lex.el:
10219         (semantic-lex-map-symbols, semantic-lex-keyword-invalid)
10220         (semantic-lex-keyword-symbol, semantic-lex-keyword-set)
10221         (semantic-lex-keyword-value): New.
10222         (semantic-lex-keyword-p, semantic-lex-keyword-get)
10223         (semantic-lex-keyword-put, semantic-lex-map-keywords): Use them.
10224
10225         (semantic-lex-tokens-obarray, semantic-lex-token-invalid)
10226         (semantic-lex-token-symbol, semantic-lex-token-class-p)
10227         (semantic-lex-token-set, semantic-lex-token-value)
10228         (semantic-lex-token-put, semantic-lex-token-get)
10229         (semantic-lex-make-token-table, semantic-lex-map-tokens)
10230         (semantic-lex-tokens): New.
10231
10232         * semantic-grammar.el, semantic-grammar.wy: Initial revision.
10233
10234 2002-08-31  Eric M. Ludlam  <zappo@gnu.org>
10235
10236         * semanticdb.el (semanticdb-file-table):
10237         Use `eieio-persistent-path-relative'.
10238
10239 2002-08-21  Eric M. Ludlam  <zappo@gnu.org>
10240
10241         * wisent/Makefile:
10242         Added bovine directory to load path so semantic-java will be available.
10243
10244         * Makefile: Added semanticdb-el.
10245
10246         * semantic-fw.el (semantic-overlay-properties, semantic-overlay-move):
10247         XEmacs aliases.
10248         (define-mode-overload-implementation): Moved actual assignment
10249         outside eval-and-compile to prevent errors when compiling a file
10250         already loaded once.
10251
10252 2002-08-20  Eric M. Ludlam  <zappo@gnu.org>
10253
10254         * bovine/semantic-el.el: Enable Emacs Lisp semanticdb extensions.
10255
10256         * semanticdb-el.el: System database for Emacs.
10257
10258         * semanticdb-search.el (semanticdb-search-results-table): New class
10259         (semanticdb-refresh-table::semanticdb-search-results-table): New method.
10260         (semanticdb-collect-find-results): Added `ignore-system', and
10261         `find-file-on-match' arguments.  Ignore system forces the system
10262         databases to be skipped.  Find-file-on-match ignores all DBs with
10263         tables that are not associated with files.
10264         (semanticdb-find-nonterminal-by-*): Added `ignore-system' argument.
10265
10266         * semanticdb.el (semanticdb-abstract-table): New class
10267         (semanticdb-table): Inherit from above.
10268         (semanticdb-project-system-databases): New variable.
10269         (semanticdb-search-system-databases): New variable
10270         (semanticdb-current-database-list): Doc update.
10271         Add system databases to list when requested.
10272
10273 2002-08-17  Eric M. Ludlam  <zappo@gnu.org>
10274
10275         * semanticdb.el (semanticdb-get-database): Added back in.
10276
10277 2002-08-16  Eric M. Ludlam  <zappo@gnu.org>
10278
10279         * semanticdb-search.el (semanticdb-collect-find-results):
10280         Rename input arguments to prevent
10281         collision.
10282         Fix empty result filter to correctly add real results.
10283
10284 2002-08-15  David Ponce  <david@dponce.com>
10285
10286         * wisent/wisent-wy.wy (PREFIX-EXP): new token.
10287         (any_value): Added PREFIX-EXP rule.
10288         (nonterminal): Removed error rule.
10289
10290         * wisent/wisent-wy.el (wisent-wy-lex-prefixed-expression): New.
10291         (wisent-wy-lexer): Use it.
10292         (wisent-wy-lex-buffer): Fixed bad lexer name.
10293         (wisent-wy-automaton, wisent-wy-keywords, wisent-wy-tokens)
10294         (wisent-wy-setup-semantic): Re-generated.
10295         (wisent-wy-syntax-table): Added expression prefix characters.
10296
10297         * wisent/wisent-bovine.el: (wisent-parse-stream)
10298         (wisent-parse-region): Manage a stack of lookahead tokens to ensure
10299         all unrecognized tokens will be collected in
10300         `semantic-unmatched-syntax-cache'.
10301         (edebug-setup-hook): Added `edebug' specifications of local macros.
10302
10303         * bovine/semantic-bovine.el (require 'semantic):
10304         Added to eliminate compiler warnings.
10305
10306         * semantic-lex.el (edebug-setup-hook):
10307         Added `edebug' specifications of local macros.
10308
10309         * semantic-fw.el (setq-mode-local):
10310         Take care of side effects! Evaluate each VAL only
10311         once, and in the given order.
10312         (edebug-setup-hook): Added `edebug' specifications of local macros.
10313
10314 2002-08-13  David Ponce  <david@dponce.com>
10315
10316         * wisent/wisent-comp.el (wisent-char-p): New compatibility function.
10317         (wisent-tag, wisent-ISVALID-TOKEN)
10318         (wisent-parse-nonterminals): Use it.
10319
10320         * semantic.el (semantic-new-buffer-fcn):
10321         Use `semantic-activate-mode-bindings'.
10322
10323         * semantic-fw.el: (semantic-override-table, semantic-current-overrides)
10324         (semantic-new-overrides, semantic-symbol-value-for-mode)
10325         (semantic-symbol-value-mode-assign, semantic-setq-major-mode)
10326         (setq-major-mode): Removed.  Replaced by the following new API...
10327
10328         (semantic-symbol-table, semantic-current-bindings)
10329         (semantic-new-bindings, semantic-bind)
10330         (semantic-symbol, semantic-symbol-value)
10331         (semantic-set-local-variable, semantic-activate-mode-bindings)
10332         (mode-local-value, setq-mode-local, defvar-mode-local)
10333         (defconst-mode-local): New.
10334
10335         (semantic-fetch-overload)
10336         (semantic-install-function-overrides): Use new API.
10337
10338         (semantic-fw-font-lock-keywords): New constant.
10339         Font lock keywords to highlight Semantic forms.  Installed with
10340         `font-lock-add-keywords' if possible.
10341
10342         * bovine/semantic-java.el: (semantic-default-java-setup)
10343         (add-hook 'java-mode-hook): Commented out.
10344
10345         * bovine/semantic-el.el (setq-major-mode):
10346         Replaced by `defvar-mode-local'.
10347
10348 2002-08-11  David Ponce  <david@dponce.com>
10349
10350         * wisent/wisent-wy.el: (add-to-list 'auto-mode-alist)
10351         (eval-after-load "speedbar"): New autoloads.
10352
10353         * wisent/wisent-python.el: (add-hook 'python-mode-hook)
10354         (wisent-python-default-setup): Added autoload cookie.
10355
10356         * wisent/wisent-java-tags.el: (wisent-java-default-setup)
10357         (add-hook 'java-mode-hook): Added autoload cookie.
10358         (remove-hook 'java-mode-hook): Removed.
10359
10360         * bovine/semantic-java.el: (semantic-default-java-setup)
10361         (add-hook 'java-mode-hook): Removed autoload cookie.
10362
10363         * bovine/semantic-bnf.el (eval-after-load "speedbar"):
10364         Removed duplicate.
10365         Added missing quote.
10366
10367         * semantic-load.el (autoload 'wisent-wy-mode): Removed.
10368         (auto-mode-alist): Removed 'wisent-wy-mode.
10369         Removed senator configuration.
10370
10371 2002-08-11  Eric M. Ludlam  <zappo@gnu.org>
10372
10373         * Makefile: Added wisent sub project.
10374
10375         * semantic-load.el, semantic-autogen.el:
10376         Added bovine subdirectory to loadpath.
10377
10378         * Project.ede: Moved piles of sources into the bovine directory.
10379
10380         * Makefile: Added sub projects "bovine/" and "/wisent".
10381
10382         * bovine/Makefile: Makefile for the bovinator.
10383
10384         * bovine/Project.ede: Project file for the bovinator
10385
10386         * wisent/Makefile: Makefile for wisent.
10387
10388         * wisent/Project.ede: Project file for wisent.
10389
10390         * bovine/semantic-make.el, semantic-make.el:
10391         Renamed semantic-make.el to bovine/semantic-make.el
10392
10393         * bovine/semantic-skel.el, semantic-skel.el:
10394         Renamed semantic-skel.el to bovine/semantic-skel.el
10395
10396         * bovine/semantic-scm.el, semantic-scm.el:
10397         Renamed semantic-scm.el to bovine/semantic-scm.el
10398
10399         * bovine/semantic-java.el, semantic-java.el:
10400         Renamed semantic-java.el to bovine/semantic-java.el
10401
10402         * bovine/semantic-c.el, semantic-c.el:
10403         Renamed semantic-c.el to bovine/semantic-c.el
10404
10405         * bovine/semantic-el.el, semantic-el.el:
10406         Renamed semantic-el.el to bovine/semantic-el.el
10407
10408         * bovine/semantic-bnf.el, semantic-bnf.el:
10409         Renamed semantic-bnf.el to bovine/semantic-bnf.el
10410
10411         * bovine/skeleton.bnf, skeleton.bnf:
10412         Renamed skeleton.bnf to bovine/skeleton.bnf
10413
10414         * bovine/scheme.bnf, scheme.bnf:
10415         Renamed scheme.bnf to bovine/scheme.bnf
10416
10417         * bovine/make.bnf, make.bnf: Renamed make.bnf to bovine/make.bnf
10418
10419         * bovine/java.bnf, java.bnf: Renamed java.bnf to bovine/java.bnf
10420
10421         * bovine/c.bnf, c.bnf: Renamed c.bnf to bovine/c.bnf
10422
10423         * c.bnf: Removed flex extensions.
10424
10425         * bovine/semantic-bovine.el, semantic-bovine.el:
10426         Renamed semantic-bovine.el to bovine/semantic-bovine.el
10427
10428         * semantic-load.el: Removed .bnf mode setup.
10429         Removed speedbar .bnf and .wy setup.
10430         Add wisent directoy to load path.
10431         Removed incremental parser code.
10432
10433         * semantic-edit.el:
10434         Added autoload cookies for setting up the new incremental parser.
10435
10436         * semantic-cb.el: Require semanticdb, and semanticdb-search
10437
10438         * semantic-bnf.el: Autoload cookie for mode setup.
10439         Autoload cookie for new speedbar setup.
10440
10441         * semantic-analyze.el: Also require semanticdb-search.
10442
10443         * semantic-autogen.el (semantic-hack-autoloads): Added wisent.
10444
10445 2002-08-11  David Ponce  <david@dponce.com>
10446
10447         * wisent/wisent-wy.wy (setupcode):
10448         Use default value of `wisent-lexer-function'.
10449
10450         * wisent/wisent-wy.el (wisent-wy-lexer): Use new wisent-lex API.
10451         (wisent-wy-automaton, wisent-wy-keywords, wisent-wy-tokens)
10452         (wisent-wy-setup-semantic): Re-generated.
10453         (wisent-wy-setupcode)
10454         (wisent-wy-tokentable-value): Generate new wisent-lex API.
10455
10456         * wisent/wisent-python.wy (setupcode):
10457         Use `wisent-flex' as `wisent-lexer-function'.
10458
10459         * wisent/wisent-python.el: (string-indentation, wisent-python-lex-bol)
10460         (wisent-python-lex-open-paren, wisent-python-lex-close-paren)
10461         (wisent-python-lex-newline, wisent-python-lex-backslash)
10462         (wisent-python-raw-string-handler): Use new wisent-lex API.
10463
10464         (wisent-python-parser-tables, wisent-python-keywords)
10465         (wisent-python-tokens, wisent-python-default-setup): Re-generated.
10466
10467         * wisent/wisent-java.wy (setupcode):
10468         Use default value of `wisent-lexer-function'.
10469
10470         * wisent/wisent-java.el:
10471         (wisent-java-parser-tables, wisent-java-keywords)
10472         (wisent-java-tokens, wisent-java-default-setup): Re-generated.
10473         (wisent-java-get-local-variables): Use `semantic-parse-region'.
10474
10475         * wisent/wisent-java-tags.wy (setupcode):
10476         Use default value of `wisent-lexer-function'.
10477
10478         * wisent/wisent-java-tags.el:
10479         (wisent-java-parser-tables, wisent-java-keywords)
10480         (wisent-java-tokens, wisent-java-default-setup): Re-generated.
10481         (wisent-java-get-local-variables): Tell `semantic-parse-region' to
10482         return on error.
10483
10484         * wisent/wisent-java-lex.el (wisent-java-tags-lexer, wisent-java-lexer):
10485         Use new wisent-lex API.
10486
10487         * wisent/wisent-cim.el:
10488         (wisent-cim-automaton, wisent-cim-keywords, wisent-cim-tokens)
10489         (wisent-cim-default-setup): Re-generated.
10490
10491         * wisent/wisent-calc.wy (setupcode): Use the new semantic-lex API.
10492
10493         * wisent/wisent-calc.el: (wisent-calc-automaton, wisent-calc-tokens)
10494         (wisent-calc-setup-parser): Re-generated.
10495         (wisent-calc): Use new wisent-lex API.
10496
10497         * wisent/wisent-bovine.el:
10498         New wisent-lex API that replaces the old wisent-flex one.
10499
10500         (wisent-flex-istream): Renamed `wisent-lex-istream'.
10501         (wisent-flex-tokens-obarray): Renamed `wisent-lex-tokens-obarray'.
10502         (wisent-lexer-lookahead): Renamed `wisent-lex-lookahead'.
10503         (wisent-flex-token-rules): Renamed `wisent-lex-token-rules'.
10504         (wisent-flex-token-get): Renamed `wisent-lex-token-get'.
10505         (wisent-flex-add-token): Renamed `wisent-lex-add-token'.
10506         (wisent-flex-put-default): Renamed `wisent-lex-put-default'.
10507         (wisent-flex-make-token-table): Renamed
10508         `wisent-lex-make-token-table'.
10509         (wisent-flex-match): Renamed `wisent-lex-match'.
10510         (wisent-flex-punctuation): Renamed `wisent-lex-punctuation'.
10511         (wisent-flex-eoi): Renamed `wisent-lex-eoi'.
10512
10513         (define-wisent-lexer, wisent-flex, wisent-lex)
10514         (wisent-parse-stream): Use new wisent-lex API.
10515
10516         (wisent-error-function): Moved.
10517         (wisent-lexer-function): Ditto.  Default to `wisent-lex'.
10518         (wisent-collect-unmatched-syntax): Naming.  Doc string.
10519         (wisent-parse-region): New function.
10520
10521         * wisent/wisent-awk.el:
10522         (wisent-awk-automaton, wisent-awk-keywords, wisent-awk-tokens)
10523         (wisent-awk-setup-parser): Re-generated.
10524
10525         * semantic-edit.el (semantic-edits-incremental-parser):
10526         Don't mark parse tree up to date
10527         if incremental parse failed.
10528
10529 2002-08-11  Eric M. Ludlam  <zappo@gnu.org>
10530
10531         * semanticdb-search.el (semanticdb-collect-find-results):
10532         Fixed compile warnings.
10533
10534         * Makefile: Updated project with new semanticdb files.
10535
10536         * semanticdb.sh: Script for building semantic cache files.
10537
10538         * semanticdb-mk.el: Script for buinding semantic cache files.
10539
10540         * semanticdb-search.el (semanticdb-file-stream):
10541         Moved back to semanticdb.el.
10542
10543         * semanticdb.el:
10544         (semanticdb-default-file-name, semanticdb-default-save-directory)
10545         (semanticdb-persistent-path, semanticdb-save-database-hooks):
10546         Moved to semanticdb-file.el
10547         (semanticdb-project-database): No longer persistent.
10548         (semanticdb-new-database-class): New variable.
10549         (semanticdb-create-database): Now a static method.
10550         (semanticdb-file-loaded-p, semanticdb-get-database)
10551         (semanticdb-load-database, semanticdb-live-p)
10552         (semanticdb-save-db, semanticdb-save-all-db)
10553         (semanticdb-full-filename, semanticdb-live-p)
10554         (object-write): Moved to semanticdb-file.el
10555         (semanticdb-create-table): New method.
10556         (semanticdb-write-directory-p, semanticdb-cache-filename)
10557         Moved to semanticdb-file.el
10558         (semanticdb-semantic-init-hook-fcn):
10559         Use new static method to create database from variable.
10560         Use new method for creating new tables.
10561         (semanticdb-find-*): Moved to semanticdb-search.el
10562
10563         * semanticdb-search.el: Moved from semanticdb.
10564         (semanticdb-collect-find-results): New fcn
10565         (semanticdb-find-nonterminal-*): Changed to call above.
10566         (semanticdb-find-nonterminal-*-method): New methods
10567         (semanticdb-find-nonterminal-by-function-method): Used to be
10568         `semanticdb-find-nonterminal-by-function', but for only one database.
10569
10570         * semanticdb-file.el:
10571         Created from semanticdb.el.  Most functions unchanged.
10572         (semanticdb-project-database-file): New class
10573         (semanticdb-create-database): New static method.
10574         Fixed bug when no file on disk yet.
10575
10576 2002-08-10  David Ponce  <david@dponce.com>
10577
10578         * semantic-java.el, semantic-texi.el:
10579         Moved autoload cookie to the right place.
10580
10581         * semantic.el (semantic-repeat-parse-whole-stream):
10582         Removed unused argument DEPTH.
10583         (semantic-parse-region-default): Updated call.
10584
10585 2002-08-10  Eric M. Ludlam  <zappo@gnu.org>
10586
10587         * semantic-autogen.el:
10588         For non-interactive mode, set loadpath nil, find-file-hooks to nil,
10589         and supress file warnings.
10590         (semantic-hack-autoloads): Remove extra save-buffer.
10591         (make-autoload): Support defclass
10592
10593         * Makefile: Makefile for semantic.
10594
10595         * Project.ede (semantic-al.el): Added better dependencies.
10596
10597 2002-08-09  Eric M. Ludlam  <zappo@gnu.org>
10598
10599         * semantic-load.el: Load semantic-al.
10600         Removed all auto-loads and mode hook assignments now in semantic-al.
10601
10602         * semantic-edit.el (semantic-edits-incremental-parser):
10603         Added autoload tag.
10604         Removed debug code I said I'd remove.
10605
10606         * semantic-fw.el (define-overload): Added autoload tag.
10607
10608         * semantic-ia-sb.el (semantic-speedbar-analysis): Added autoload tag.
10609
10610         * semantic-texi.el, semantic-make.el, semantic-scm.el, semantic-java.el, semantic-el.el, semantic-c.el:
10611         Add autoload tags to mode hooks
10612
10613         * semantic-bovine.el (semantic-bovinate-stream): Added autoload tag.
10614
10615         * semantic-analyze.el (semantic-analyze-possible-completions):
10616         Autoload tag.
10617
10618 2002-08-09  David Ponce  <david@dponce.com>
10619
10620         * semantic.el (semantic-bovinate-toplevel):
10621         Preserve the unmatched syntax cache
10622         after a full parse.
10623
10624 2002-08-09  Eric M. Ludlam  <zappo@gnu.org>
10625
10626         * semantic-autogen.el (autoload): New require
10627         (define-overload): Set `doc-string-elt' as property.
10628         (make-autoload): Taken from Emacs21 autoload.el.  Added
10629         `define-overload' to create a function autoload.
10630
10631 2002-08-08  Eric M. Ludlam  <zappo@gnu.org>
10632
10633         * Project.ede: Added semantic-autogen to 'init' target.
10634         Added special rules to build semantic-al.el
10635         Version update.
10636
10637         * semantic-autogen.el: Fixed to be usable from a Makefile.
10638         (semantic-hack-autoloads): Newline changes.  Safe buffer.
10639
10640         * semantic-autogen.el: Generate auto-load files.
10641
10642 2002-08-08  David Ponce  <david@dponce.com>
10643
10644         * wisent/wisent-wy.el (wisent-wy-region-placeholder):
10645         Used `$i' instead of `$n'!
10646
10647         * wisent/wisent-java-tags.el (wisent-java-get-local-variables):
10648         Use `semantic-parse-region'.
10649
10650         * semantic.el (semantic-version): Moved to "2.0alpha4".
10651
10652         (semantic-toplevel-bovine-cache-check)
10653         (semantic-toplevel-bovine-force-reparse)
10654         (semantic-bovine-toplevel-full-reparse-needed-p)
10655         (semantic-bovinate-toplevel-override): Removed.
10656
10657         (semantic-parse-tree-state)
10658         (semantic-parse-tree-set-needs-update)
10659         (semantic-parse-tree-needs-update-p)
10660         (semantic-parse-tree-set-needs-rebuild)
10661         (semantic-parse-tree-needs-rebuild-p)
10662         (semantic-parse-tree-set-up-to-date)
10663         (semantic-parse-tree-up-to-date-p): New parse tree state API.
10664
10665         (semantic-bovine-umatched-syntax-refresh-needed-p)
10666         (semantic-new-buffer-fcn, semantic-rebovinate-quickly-hook)
10667         (semantic-clear-toplevel-cache)
10668         (semantic-set-toplevel-bovine-cache): Use it.
10669         (semantic-bovinate-toplevel): Ditto.  Removed
10670         `semantic-bovinate-toplevel-override' stuff.
10671
10672         (semantic-active-p): Inlined.
10673         (semantic-bovinate-unmatched-syntax): Removed CHECKCACHE argument.
10674         (semantic-bovine-umatched-syntax-refresh-needed-p): Ditto.  Use new
10675         parse tree state API.
10676
10677         (semantic-parse-stream, semantic-parse-changes)
10678         (semantic-parse-region, semantic-parse-region-default): Moved to
10679         eliminate byte-compiler warnings.
10680
10681         (require 'semantic-edit): Removed.
10682
10683         * semantic-util-modes.el: (semantic-show-parser-state-auto-marker)
10684         (semantic-show-parser-state-marker): Use new parse tree state API.
10685
10686         * semantic-texi.el (semantic-texi-bovinate-toplevel): Renamed to...
10687         (semantic-texi-parse-region): New.  Use parser plug-in API.
10688         (semantic-texi-parse-changes): New.
10689         (semantic-default-texi-setup): Install them as a parser plug-in.
10690
10691         * semantic-load.el: (semantic-edits-flush-changes)
10692         (semantic-edits-change-function-handle-changes): auto loaded.
10693
10694         * semantic-edit.el: (semantic-edits-need-reparse)
10695         (semantic-bovine-toplevel-partial-reparse-needed-p): Removed.
10696         (semantic-edits-change-function-handle-changes)
10697         (semantic-edits-flush-changes): Added autoload cookie.
10698
10699         (semantic-edits-change-function-handle-changes)
10700         (semantic-edits-incremental-fail)
10701         (semantic-edits-incremental-parser)
10702         (semantic-rebovinate-token)
10703         (semantic-cleanup-dirty-tokens)
10704         (semantic-change-function-mark-dirty): Use new parse tree state API.
10705
10706 2002-08-07  David Ponce  <david@dponce.com>
10707
10708         * wisent/wisent-wy.el:
10709         (wisent-wy-automaton, wisent-wy-keywords, wisent-wy-tokens)
10710         (wisent-wy-setup-semantic): Re-generated.
10711
10712         (wisent-wy-EXPANDTHING): Removed.
10713         (wisent-wy-region-placeholder): New function.
10714         (wisent-wy-EXPAND, wisent-wy-EXPANDFULL): Use it.
10715
10716         (wisent-wy-setupcode): Updated to use new Semantic parse API.
10717
10718         * wisent/wisent-python.el:
10719         (wisent-python-parser-tables, wisent-python-keywords)
10720         (wisent-python-tokens, wisent-python-default-setup): Re-generated.
10721
10722         * wisent/wisent-java-tags.el, wisent/wisent-java.el:
10723         (wisent-java-parser-tables, wisent-java-keywords, wisent-java-tokens)
10724         (wisent-java-default-setup): Re-generated.
10725
10726         * wisent/wisent-comp.el (wisent-parse-grammar): Doc string fix.
10727
10728         * wisent/wisent-cim.el:
10729         (wisent-cim-automaton, wisent-cim-keywords, wisent-cim-tokens)
10730         (wisent-cim-default-setup): Re-generated.
10731
10732         * wisent/wisent-calc.el: (wisent-calc-automaton, wisent-calc-tokens)
10733         (wisent-calc-setup-parser): Re-generated.
10734
10735         * wisent/wisent-bovine.el (wisent-bovinate-nonterminal): Renamed to...
10736         (wisent-parse-stream): New.
10737
10738         * wisent/wisent-awk.el:
10739         (wisent-awk-automaton, wisent-awk-keywords, wisent-awk-tokens)
10740         (wisent-awk-setup-parser): Re-generated.
10741
10742         * semantic.el (semantic-bovinate-parser-name): Renamed to...
10743         (semantic-parser-name): New.
10744         (semantic-bovination-working-message): Use it.
10745         (semantic-parse-region): Replace `semantic-bovinate-region'.
10746         (semantic-parse-stream): Replace `semantic-bovinate-nonterminal'.
10747         (semantic-parse-changes): Replace
10748         `semantic-bovinate-incremental-parser'.
10749         (semantic-parse-region-default): Replace
10750         `semantic-bovinate-region-default'.
10751         (semantic-repeat-parse-whole-stream): Replace
10752          `semantic-bovinate-nonterminals'.
10753         (semantic-bovinate-toplevel, semantic-bovinate-region-until-error)
10754         (semantic-bovinate-from-nonterminal)
10755         (semantic-bovinate-from-nonterminal-full): Use new parse API.
10756
10757         * semantic-load.el:
10758         (semantic-parse-stream-default, semantic-parse-changes-default)
10759         (semantic-parse-region-default): Added autoloads.
10760
10761         * semantic-el.el (semantic-elisp-use-read):
10762         Use `semantic-parse-region'.
10763
10764         * semantic-edit.el (semantic-bovinate-incremental-parser): Removed.
10765         (semantic-bovinate-incremental-parser-default): Renamed to...
10766         (semantic-edits-incremental-parser): New.  Use `semantic-parse-region'.
10767         (semantic-parse-changes-default): Alias of it.
10768         (semantic-rebovinate-token): Use `semantic-parse-stream'.
10769
10770         * semantic-bovine.el (semantic-bovinate-region-default): Removed.
10771         (semantic-bovinate-nonterminal-default): Renamed to...
10772         (semantic-bovinate-stream): New.
10773         (semantic-parse-stream-default): Alias of it.
10774
10775 2002-08-05  David Ponce  <david@dponce.com>
10776
10777         * semantic-edit.el (semantic-bovinate-incremental-parser-default):
10778         ensure that content of
10779         the `changes' variable will be processed entirely by resetting the
10780         `parse-start' value after processing a change group.
10781
10782 2002-08-04  David Ponce  <david@dponce.com>
10783
10784         * wisent/wisent-wy.el (wisent-wy-EXPAND): Reverted last change.
10785
10786         * wisent/wisent-wy.el:
10787         (wisent-wy-automaton, wisent-wy-keywords, wisent-wy-tokens)
10788         (wisent-wy-setup-semantic): Re-generated.
10789         (wisent-wy-EXPANDTHING): New argument DEPTH.
10790         (wisent-wy-EXPAND)
10791         (wisent-wy-EXPANDFULL): Generate call to `semantic-bovinate-region'.
10792
10793         * wisent/wisent-python.el:
10794         (wisent-python-parser-tables, wisent-python-keywords)
10795         (wisent-python-tokens, wisent-python-default-setup): Re-generated.
10796
10797         * wisent/wisent-java-tags.el:
10798         (wisent-java-parser-tables, wisent-java-keywords, wisent-java-tokens)
10799         (wisent-java-default-setup): Re-generated.
10800         (wisent-java-get-local-variables): Use `semantic-bovinate-region'.
10801
10802         * semantic.el (semantic-bovinate-from-nonterminal-full):
10803         Use depth 1 by default.
10804
10805         * wisent/wisent-awk.bnf, wisent/wisent-calc.bnf, wisent/wisent-cim.bnf, wisent/wisent-java-tags.bnf, wisent/wisent-java.bnf:
10806         Deleted. Obsolete.
10807
10808         * wisent/wisent-flex.el: Deleted. Code moved to wisent-bovine.el.
10809
10810         * wisent/wisent-wy.el:
10811         (wisent-wy-automaton, wisent-wy-keywords, wisent-wy-tokens)
10812         (wisent-wy-setup-semantic): Re-generated.
10813         (wisent-wy-setupcode): Install `wisent-bovinate-nonterminal' as
10814         'bovinate-nonterminal override.  No more use the buffer local variable
10815         `semantic-bovinate-parser'.
10816
10817         * wisent/wisent-java-tags.el, wisent/wisent-java.el:
10818         (wisent-java-parser-tables, wisent-java-keywords, wisent-java-tokens)
10819         (wisent-java-default-setup): Re-generated.
10820
10821         * wisent/wisent-java-lex.el (require 'wisent-bovine):
10822         Instead of 'wisent-flex.
10823
10824         * wisent/wisent-cim.el:
10825         (wisent-cim-automaton, wisent-cim-keywords, wisent-cim-tokens)
10826         (wisent-cim-default-setup): Re-generated.
10827
10828         * wisent/wisent-calc.el: (wisent-calc-automaton, wisent-calc-tokens)
10829         (wisent-calc-setup-parser): Re-generated.
10830
10831         * wisent/wisent-bovine.el: Merged code from wisent-flex.el.
10832         (wisent-bovinate-nonterminal): Obeys new parser plug-in API.
10833
10834         * wisent/wisent-awk.el:
10835         (wisent-awk-automaton, wisent-awk-keywords, wisent-awk-tokens)
10836         (wisent-awk-setup-parser): Re-generated.
10837
10838 2002-08-04  Eric M. Ludlam  <zappo@gnu.org>
10839
10840         * semantic-edit.el (semantic-bovinate-incremental-parser-default):
10841         Fixed typo.
10842
10843         * Project.ede:
10844         Added `semantic-lex.el', `semantic-bovine.el', `semantic-edit.el', and
10845         'semantic-fw.el' to the `semantic' target.
10846
10847         * semantic-el.el (semantic-elisp-use-read): Use `bovinate-region'.
10848         (semantic-emacs-lisp-lexer): Support `define-overload', `define-lex',
10849         and `define-mode-overload-implementation'.
10850         (semantic-emacs-lisp-lexer): New lexer.
10851         (semantic-elisp-find-dependency, semantic-elisp-find-documentation)
10852         (semantic-insert-foreign-token, semantic-nonterminal-protection):
10853         (semantic-elisp-nonterminal-static): Create using
10854         `define-mode-overload-implementation'.
10855         (semantic-default-elisp-setup): Emptied out all steqs into toplevel
10856         using `setq-major-mode'.
10857
10858         * semantic-util-modes.el (semantic-highlight-edits-face):
10859         Change color to darker gray for dark background
10860
10861         * semantic-util.el (semantic-map-buffers): Moved to semantic-fw.el
10862
10863         * semantic-load.el: Imported some autoloads from semantic.el
10864
10865         * semantic-lex.el (semantic-fw): New require.
10866         (semantic-lex-keyword-p): Check for keyword obarray before reference.
10867         (define-lex): Added debug information.
10868         (semantic-lex): Create as an overload.
10869
10870         * semantic-edit.el (semantic-bovinate-incremental-parser):
10871         New override fcn.
10872         (semantic-bovinate-incremental-parser-default): Renamed.
10873         Added debugging if statements.
10874         (semantic-rebovinate-token): Renamed for `lex', not `flex'.
10875
10876         * semantic-c.el:
10877         (semantic-flex-c-extensions, semantic-flex-c-include-system)
10878         (semantic-flex-c-if-0, semantic-flex-c-if): Deleted.
10879         (semantic-default-c-setup): Do not assign `semantic-flex-extensions'.
10880
10881         * semantic-bovine.el (semantic-bovinate-region-default):
10882         Added needed new arguments.
10883         (semantic-bovinate-nonterminal-default): Removed TABLE argument.
10884
10885         * semantic.el (semantic-bovinate-parser): Deleted
10886         (semantic-bovinate-incremental-parser): Deleted.
10887         (semantic-new-buffer-fcn): Assign mode-local variables.
10888         (semantic-set-toplevel-bovine-cache): Moved.
10889         (semantic-bovinate-toplevel): Use new override fcn instead of old symbol.
10890         (semantic-bovinate-region): Added arguments depth and returnonerror.
10891         (semantic-bovinate-nonterminal): Moved & converted to an overload fcn.
10892         (semantic-bovination-active-table): Deleted.
10893         (semantic-bovinate-nonterminals): Use new api to `semantic-bovinate-nonterminal'
10894         (semantic-bovinate-from-nonterminal, semantic-bovinate-from-nonterminal-full):
10895         Now wraps `semantic-bovinate-region'.
10896         (autoloads...): Moved to semantic-load.
10897
10898         * semantic-fw.el (semantic-map-buffers): Moved from semantic.el
10899         (semantic-map-mode-buffers): New fcn
10900         (define-mode-overload-implementation): New macro
10901         (semantic-symbol-value-for-mode, semantic-symbol-value-mode-assign)
10902         (semantic-setq-major-mode, setq-major-mode): New mode local variables API.
10903
10904 2002-08-02  Eric M. Ludlam  <zappo@gnu.org>
10905
10906         * semantic-load.el:
10907         Changed bovinate-toplevel autoload to bovinate-region.
10908
10909         * semantic-edit.el (semantic-edits-bovinate-region): Deleted.
10910         (semantic-edits-incremental-parser): Use `semantic-bovinate-region'
10911         instead of above.
10912
10913         * semantic.el (semantic-bovinate-region): New overload fcn.
10914         (semantic-bovinate-toplevel): Use `semantic-bovinate-region' for
10915         toplevel parsing.  Do not use lex.
10916         Left comments behind describing problems with unmatched syntax that
10917         needs fixing.
10918
10919         * semantic-bovine.el (semantic-bovinate-region-default): New function.
10920
10921         * working.el (working-status, working-dynamic-status):
10922         Made robust when called
10923         outside of working forms.
10924
10925 2002-07-31  David Ponce  <david@dponce.com>
10926
10927         * semantic.el (semantic-bovinate-toplevel):
10928         Removed working stuff around
10929         incremental re-parse.
10930
10931         * semantic-util-modes.el (semantic-auto-parse-bovinate):
10932         Disable the auto parse timer while
10933         re-parsing.
10934         (semantic-auto-parse-kill-timer): New function.
10935
10936         * semantic-fw.el (semantic-current-overrides):
10937         Now if optional argument MODE is
10938         specified return the override table of that mode or its parents.
10939         (semantic-install-function-overrides): New mode override table
10940         inherits from mode parents.
10941         (semantic-fetch-overload): Removed optional argument MODE.
10942
10943         * semantic-edit.el (semantic-edits-bovinate-region):
10944         Working stuff moved from
10945         `semantic-bovinate-toplevel'.
10946         (semantic-edits-incremental-parser): Trigger full re-parse on error.
10947
10948 2002-07-30  David Ponce  <david@dponce.com>
10949
10950         * wisent/wisent-wy.wy (setupcode):  No more install overrides here.
10951
10952         * wisent/wisent-wy.el:
10953         (wisent-wy-automaton, wisent-wy-keywords, wisent-wy-tokens)
10954         (wisent-wy-setup-semantic): Re-generated.
10955         (semantic-install-function-overrides): Install in `wisent-wy-mode'.
10956         (add-to-list 'auto-mode-alist)
10957         (speedbar-add-supported-extension): Removed.  In semantic-load.el.
10958
10959         * wisent/wisent-java-tags.el, wisent/wisent-java.el:
10960         (wisent-java-parser-tables, wisent-java-keywords)
10961         (wisent-java-tokens, wisent-java-default-setup): Re-generated.
10962         (semantic-install-function-overrides): Install in `java-mode'.
10963
10964         * wisent/wisent-java-tags.wy, wisent/wisent-java.wy (setupcode):
10965          No more install overrides here.
10966
10967         * semantic-java.el (semantic-default-java-setup):
10968         No more install overrides here.
10969         (semantic-install-function-overrides): Install in `java-mode'.
10970
10971         * semantic-fw.el (semantic-install-function-overrides):
10972         set table with existing mode
10973         override table.
10974
10975         * senator.el (senator-minor-mode-setup): Use
10976         `semantic-after-toplevel-cache-change-hook' and
10977         `semantic-after-partial-cache-change-hook' instead of
10978         `semantic--before-toplevel-cache-flush-hook' and
10979         `semantic-clean-token-hooks'.
10980
10981 2002-07-29  David Ponce  <david@dponce.com>
10982
10983         * senator.el:
10984         (senator-register-mode-menu-entry ["Highlight Dirty Tokens"]):
10985         Commented out.
10986         (senator-register-mode-menu-entry ["Highlight changes"])
10987         (senator-register-mode-menu-entry ["Show parser state"]): Added.
10988
10989         * semantic.el (semantic-bovinate-toplevel):
10990         Added missing `working-status-form'
10991         around incremental parse.
10992         (semantic-bovinate-from-nonterminal)
10993         (semantic-bovinate-from-nonterminal-full)
10994         (semantic-bovinate-region-until-error): Inlined to avoid an
10995         unnecessary extra call.
10996
10997         * semantic-util.el:
10998         (semantic-name-nonterminal, semantic-abbreviate-nonterminal)
10999         (semantic-summarize-nonterminal, semantic-prototype-nonterminal)
11000         (semantic-concise-prototype-nonterminal)
11001         (semantic-uml-abbreviate-nonterminal)
11002         (semantic-uml-prototype-nonterminal)
11003         (semantic-uml-concise-prototype-nonterminal)
11004         (semantic-nonterminal-static): Use `define-overload' instead of
11005         `semantic-defoverload'.
11006
11007         (semantic-find-dependency, semantic-find-nonterminal)
11008         (semantic-find-documentation): Put the right property
11009         'semantic-overload.
11010
11011         * semantic-imenu.el (semantic-imenu-flush-fcn, semantic-create-imenu-index):
11012          Use
11013         `semantic-after-toplevel-cache-change-hook' and
11014         `semantic-after-partial-cache-change-hook' instead of
11015         `semantic--before-toplevel-cache-flush-hook' and
11016         `semantic-clean-token-hooks'.
11017
11018         * semantic-fw.el (semantic-current-overrides, semantic-new-overrides):
11019         New functions.
11020         (semantic-install-function-overrides): Use them.  New optional
11021         argument MODE to install into.
11022         (semantic-fetch-overload): Use `semantic-current-overrides'.
11023         (semantic-defoverload): Renamed to...
11024         (define-overload): New macro.
11025
11026         * semantic-edit.el (semantic-edits-bovinate-region):
11027         Added missing parameter
11028         reparse-symbol.
11029         (semantic-edits-incremental-parser): Set reparse-symbol.
11030         (semantic-edits-splice-remove): Fixed typo.
11031
11032 2002-07-29  Eric M. Ludlam  <zappo@gnu.org>
11033
11034         * semantic-util-modes.el: Require semantic.
11035         (global-semantic-highlight-edits-mode & friends): New mode.
11036         (semantic-auto-parse-no-working-message): default nil
11037         (semantic-auto-parse-working-in-modeline-flag): default nil.
11038         (semantic-auto-parse-mode-hook): doc fix
11039         (semantic-before-auto-parse-hooks, semantic-after-auto-parse-hooks):
11040         New hooks.
11041         (semantic-auto-parse-bovinate): Use new hooks.
11042         (global-semantic-show-parser-state-mode & friends): New mode.
11043
11044         * semantic-load.el: Use new incremental parser by default.
11045         Turn on `global-semantic-highlight-edits-mode' for everything-on
11046         Turn on `global-semantic-show-parser-state-mode' for useful things.
11047
11048         * semantic.el (semantic-bovinate-incremental-parser): New variable.
11049         (bovinate): Negative clear arg does not display tokens.
11050         (semantic-bovinate-toplevel): Use `semantic-bovinate-incremental-parser'.
11051         Move all dirty token references to semantic-edit.el
11052         (semantic-bovinate-nonterminal, semantic-bovinate-nonterminals): Doc fix
11053
11054         * semantic-edit.el (semantic-edits-need-reparse): New state variable
11055         (semantic-change-hooks): Moved
11056         (semantic-reparse-needed-change-hook, semantic-no-reparse-needed-change-hook)
11057         (semantic-edits-new-change-hooks, semantic-edits-delete-change-hooks)
11058         (semantic-edits-move-change-hooks, semantic-edits-reparse-change-hooks)
11059         (semantic-edits-incrementarl-reparse-failed-hooks): New hooks
11060         (semantic-bovine-toplevel-partial-reparse-needed-p): Updated to
11061         handle old and new reparse mechanisms.
11062         (semantic-changes-in-region, semantic-edits-change-function-handle-changes)
11063         (semantic-edits-flush-change, semantic-edits-flush-changes) New
11064         functions for handling small changes.
11065         (semantic-edits-bovinate-region): New parser entry.
11066         (semantic-edits-change-in-one-token-p): New fcn.  May be deleted later.
11067         (semantic-edits-os, semantic-edits-oe): Temporary functions.
11068         (semantic-edits-change-leaf-token, semantic-edits-change-between-tokens)
11069         (semantic-edits-change-over-tokens): New change analyzers
11070         (semantic-edits-incremental-fail): New function
11071         (semantic-edits-incremental-parser): New incremental parser function.
11072         (semantic-edits-splice-remove, semantic-edits-splice-insert)
11073         (semantic-edits-splice-replace): New cache splicing routines.
11074         (semantic-rebovinate-token): Use `semantic-edits-incremental-fail'.
11075         (semantic-cleanup-dirty-tokens): New fcn
11076
11077         * semantic-util.el (semantic-find-nonterminal-by-overlay-prev): Doc fix
11078         (semantic-find-nonterminal-parent-by-overlay): New fcn
11079
11080         * semantic-fw.el (semantic-overlay-properties,semantic-overlay-move):
11081         New aliases
11082         (semantic-mode-line-update): New alias.
11083
11084 2002-07-26  David Ponce  <david@dponce.com>
11085
11086         * wisent/wisent.el: (wisent-parse-error-function, wisent-lexer)
11087         ($region, $nterm): Moved definitions.
11088         (wisent-push): Removed.
11089
11090         * wisent/wisent-comp.el (semantic-actions): New local context.
11091         (wisent-semantic-action): Set unused entries to nil.  In semantic
11092         action lambda expression, removed call to `wisent-push', use
11093         un-interned symbols for local variables.
11094         (wisent-semantic-actions): Use local context `semantic-actions'.
11095
11096 2002-07-21  Eric M. Ludlam  <zappo@gnu.org>
11097
11098         * semanticdb.el (semanticdb-find-nonterminal-by-function):
11099         Added more references in
11100         doc string.
11101
11102         * semantic-el.el (semantic-elisp-nonterminal-static): Fix doc.
11103
11104         * semantic.el:
11105         (semantic-bovine-toplevel, semantic-bovinate-nonterminals)
11106         (semantic-bovinate-nonterminal): Use `semantic-lex-depth'.
11107         (semantic-bovination-active-table): New variable.
11108         (semantic-bovinate-nonterminal): Set new variable.
11109         (semantic-bovinate-from-nonterminal): Use above variable.
11110
11111         * semantic-util.el (semantic-override-table, semantic-install-function-overrides, semantic-fetch-overload):
11112         Moved to semantic-fw.el
11113         (semantic-colorize-text): Check for font-lock.
11114         (semantic-name-nonterminal, semantic-abbreviate-nonterminal)
11115         (semantic-summerize-nonterminal, semantic-prototype-nonterminal)
11116         (semantic-concise-prototype-nonterminal)
11117         (semantic-uml-abbreviate-nonterminal)
11118         (semantic-uml-prototype-nonterminal)
11119         (semantic-uml-concise-prototype-nonterminal): Use new
11120         `semantic-defoverload' macro to create.
11121         (semantic-find-dependency, semantic-find-nonterminal)
11122         (semantic-find-documentation): Put 'semantic-defoverload' on them.
11123         (semantic-nonterminal-static): Create with `semantic-defoverload'.
11124
11125         * semantic.el (semantic-overlay-*): Moved aliases to semantic-fw.el.
11126         (semantic-edebug, semantic-dump-parse): Moved closer to parsing routines.
11127         (semantic-bovinate-parser, semantic-bovinate-parser-name): Moved
11128         closer to parser.
11129         (semantic-tfe-*, semantic-token-*): Moved to semantic-fw.el
11130
11131         * semantic-fw.el:
11132         Moved compatibility and simple functionality here from semantic.el
11133
11134 2002-07-20  David Ponce  <david@dponce.com>
11135
11136         * wisent/wisent-java.wy (array_creation_expression):
11137         Added missing rules.
11138
11139         * wisent/wisent-java.el:
11140         (wisent-java-parser-tables, wisent-java-keywords)
11141         (wisent-java-tokens, wisent-java-default-setup): Re-generated.
11142
11143         * wisent/wisent-flex.el (require 'wisent-bovine): Instead of 'semantic.
11144         (wisent-flex-punctuation): Moved.
11145         (define-wisent-lexer): New macro.
11146         (wisent-flex): Defined with `define-wisent-lexer'.  Use semantic-lex
11147         API instead of semantic-flex one.
11148         (wisent-lex): Ditto.
11149
11150         * wisent/wisent-bovine.el (provide 'wisent-bovine): Moved at beginning.
11151         (wisent-cooked-token): Made a macro.
11152         (wisent-lexer-wrapper): Removed.
11153         (wisent-bovinate-nonterminal): Use `wisent-lexer-function' instead of
11154         `wisent-lexer-wrapper'.
11155
11156         * semantic.el (semantic-bovinate-parser): Set default value to
11157         `semantic-bovinate-nonterminal-default'.
11158         (semantic-bovinate-nonterminal): Moved, simplified & inlined.
11159         (semantic-bovinate-nonterminals): Simplified working percent
11160         computation.
11161
11162         * semantic-lex.el (semantic-lex-syntax-table): New variable.
11163         (semantic-lex-init): Moved.
11164         (semantic-lex): Ditto.  Simplified & inlined.
11165         (semantic-lex-one-token): Simplified.
11166         (define-lex): Use `semantic-lex-syntax-table'.
11167         (semantic-lex-token-bounds): New function.
11168         (semantic-lex-token-start, semantic-lex-token-end): Use it.
11169         (semantic-lex-buffer, semantic-lex-list): New functions.
11170         (semantic-lex-newline-as-whitespace, semantic-lex-whitespace)
11171         (semantic-lex-comments, semantic-lex-comments-as-whitespace): Use
11172         token API instead of `car', `cdr'.
11173         (semantic-flex-buffer):  Alias of `semantic-lex-buffer'.
11174         (semantic-flex-list): Alias of `semantic-lex-list'.
11175
11176 2002-07-17  David Ponce  <david@dponce.com>
11177
11178         * semantic-java.el: Reorganized code.
11179         (semantic-java-lexer): New function.
11180         (semantic-default-java-setup): Re-generated.
11181
11182         * java.bnf (setupcode): Use new Semantic 2.x lexical analysis API.
11183
11184         * wisent/wisent-wy.el (require 'semantic-lex): Removed.  Not necessary.
11185         (wisent-wy-lex-symbol): Use `semantic-lex-keyword-p' instead of
11186         `semantic-flex-keyword-p'.
11187         (wisent-wy-lex-punctuation): Removed.
11188         (wisent-wy-lexer): Use `wisent-flex-punctuation' instead of
11189         `wisent-wy-lex-punctuation'.
11190         (wisent-wy-keywordtable-value): Use `semantic-lex-make-keyword-table'
11191         instead of `semantic-flex-make-keyword-table'.
11192
11193         * wisent/wisent-java-lex.el (require 'semantic-lex):
11194         Removed.  Not necessary.
11195         (wisent-java-lex-symbol, wisent-java-lex-symbol2): Use
11196         `semantic-lex-keyword-p' instead of `semantic-flex-keyword-p'.
11197         (wisent-java-lex-punctuation): Removed.
11198         (wisent-java-tags-lexer, wisent-java-lexer): Use
11199         `wisent-flex-punctuation' instead of `wisent-java-lex-punctuation'.
11200
11201         * wisent/wisent-flex.el (wisent-flex-punctuation): New macro.
11202         (wisent-lex): Use `semantic-lex-token-text' instead of
11203         `semantic-flex-text'.
11204
11205 2002-07-16  David Ponce  <david@dponce.com>
11206
11207         * wisent/wisent-wy.el (require 'semantic-lex): Added.
11208         (wisent-wy-c-char-re): Renamed to...
11209         (wisent-wy-lex-c-char-re): New constant.
11210         (wisent-wy-item-value, wisent-wy-tokens)
11211         (wisent-wy-mode-keywords-1): Use it.
11212         (wisent-wy-flex-extensions, wisent-wy-flex-char): Removed.
11213         (wisent-wy-lex-symbol, wisent-wy-lex-number, wisent-wy-lex-string)
11214         (wisent-wy-lex-char, wisent-wy-lex-punctuation)
11215         (wisent-wy-lex-blocks): New macros.
11216         (wisent-wy-lexer, wisent-wy-lex-buffer): New functions.
11217         (wisent-wy-automaton, wisent-wy-keywords, wisent-wy-tokens)
11218         (wisent-wy-setup-semantic): Re-generated.
11219
11220         * wisent/wisent-wy.wy (setupcode):
11221         Setup new Semantic lexical analysis tools.
11222
11223         * wisent/wisent-java.el (require 'wisent-java-lex): Added.
11224         (wisent-java-parser-tables, wisent-java-keywords)
11225         (wisent-java-tokens, wisent-java-default-setup): Re-generated.
11226
11227         * wisent/wisent-java-tags.wy, wisent/wisent-java.wy (setupcode):
11228         Setup new Semantic lexical analysis tools.
11229
11230         * wisent/wisent-java-tags.el (require 'wisent-java-lex): Added.
11231         (wisent-java-expand-nonterminal): Moved.  No more needed at
11232         compilation time.
11233         (wisent-java-parser-tables, wisent-java-keywords)
11234         (wisent-java-tokens, wisent-java-default-setup): Re-generated.
11235
11236         * wisent/wisent-java-lex.el: Wisent Java Lexical Analyzers.
11237
11238         * semantic-lex.el (define-lex-block-analyzer): New macro.
11239
11240         * semantic-load.el (autoload): `define-lex-block-analyzer'.
11241
11242 2002-07-15  David Ponce  <david@dponce.com>
11243
11244         * wisent/wisent-flex.el (wisent-lex): New function.
11245
11246         * semantic-lex.el (with-syntax-table): Moved.
11247         (semantic-lex-make-keyword-table, semantic-lex-keyword-p)
11248         (semantic-lex-keyword-put, semantic-lex-keyword-get)
11249         (semantic-lex-map-keywords, semantic-lex-keywords): New functions.
11250         (semantic-lex-analyzer): Default to `semantic-flex'.  buffer-local
11251         when set in any fashion.
11252         (semantic-lex-depth): Fixed `make-variable-buffer-local'.
11253         (define-lex): Use value of `semantic-lex-depth' as the default depth
11254         if it is not specified.
11255         (semantic-lex-token-class, semantic-lex-token-start)
11256         (semantic-lex-token-end, semantic-lex-token-text): New functions.
11257         (semantic-lex-symbol-or-keyword): Use `semantic-lex-keyword-p'
11258         instead of `semantic-flex-keyword-p'.
11259
11260         Compatibility with Semantic 1.x API.
11261
11262         (semantic-flex-start, semantic-flex-end, semantic-flex-text)
11263         (semantic-flex-make-keyword-table, semantic-flex-keyword-p)
11264         (semantic-flex-keyword-put, semantic-flex-keyword-get)
11265         (semantic-flex-map-keywords, semantic-flex-keywords): Aliased to
11266         their counterparts in 2.x API.
11267         (semantic-flex-keywords-obarray, semantic-flex-tokens)
11268         (semantic-flex-unterminated-syntax-end-function)
11269         (semantic-flex-extensions, semantic-flex-syntax-modifications)
11270         (semantic-ignore-comments, semantic-flex-enable-newlines)
11271         (semantic-flex-enable-whitespace, semantic-flex-enable-bol)
11272         (semantic-number-expression, semantic-flex-depth, semantic-flex)
11273         (semantic-flex-buffer, semantic-flex-list): Moved from semantic.el.
11274         (semantic-flex-tokens): Default to value of `semantic-lex-tokens'.
11275         (semantic-number-expression): Default to value of
11276         `semantic-lex-number-expression'.
11277
11278         * semantic-util.el (semantic-find-doc-snarf-comment):
11279         Call `semantic-lex' instead of
11280         `semantic-flex'.
11281
11282         * semantic-edit.el (semantic-rebovinate-token):
11283         Call `semantic-lex' instead of
11284         `semantic-flex'.
11285
11286         * semantic-bovine.el:
11287         (semantic-lambda, semantic-bovinate-from-nonterminal)
11288         (semantic-bovinate-from-nonterminal-full)
11289         (semantic-bovinate-region-until-error):  Moved these runtime
11290         functions into semantic.el.
11291
11292         * semantic.el (semantic-version): Updated to 2.0alpha2
11293         (require 'semantic-lex): Added.
11294         (semantic-flex-start, semantic-flex-end, semantic-flex-text)
11295         (semantic-flex-keywords-obarray, semantic-flex-make-keyword-table)
11296         (semantic-flex-keyword-p, semantic-flex-keyword-put)
11297         (semantic-flex-keyword-get, semantic-flex-map-keywords)
11298         (semantic-flex-keywords, semantic-flex-tokens)
11299         (semantic-flex-unterminated-syntax-end-function)
11300         (semantic-flex-extensions, semantic-flex-syntax-modifications)
11301         (semantic-ignore-comments, semantic-flex-enable-newlines)
11302         (semantic-flex-enable-whitespace, semantic-flex-enable-bol)
11303         (semantic-number-expression, semantic-flex-depth, semantic-flex)
11304         (semantic-flex-buffer, semantic-flex-list): Moved to semantic-lex.el.
11305         (semantic-token-docstring, semantic-bovinate-toplevel): Call
11306         `semantic-lex' instead of `semantic-flex'.
11307         (semantic-lambda, semantic-bovinate-from-nonterminal)
11308         (semantic-bovinate-from-nonterminal-full)
11309         (semantic-bovinate-region-until-error): Moved back here from
11310         semantic-bovine.el.  Use `semantic-lex' instead of `semantic-flex'.
11311
11312 2002-07-12  Richard Y. Kim <ryk@ap.com>
11313
11314         * semantic-lex.el:
11315         Added missing quote character for the newline symbol in semantic-lex-newline.
11316
11317 2002-07-11  Richard Y. Kim <ryk@ap.com>
11318
11319         * wisent/wisent-python.el, wisent/wisent-python.wy:
11320         Implemented new lexer for python using the C version in semantic-c.el as a model.
11321
11322 2002-07-10  Eric M. Ludlam  <zappo@gnu.org>
11323
11324         * semantic.el (semantic-new-buffer-fcn):
11325         Re-arranged so lex inits first.
11326
11327         * semantic-util.el:
11328         (semantic-change-function-mark-dirty, semantic-find-nearby-dirty-tokens):
11329         (semantic-set-tokens-dirty-in-region): Moved to `semantic-edit.el'.
11330
11331         * semantic-lex.el: Added some autoload cookies.
11332         (semantic-lex): Fix docstring.  Fix call to variable.
11333         (with-syntax-table): Compatibility macro moved from semantic.el.
11334
11335         * semantic-c.el: (semantic-lex-c-if-0, semantic-lex-c-if):
11336         semantic-lex-c-include-system): New analyzers
11337         (semantic-c-lexer): New lexical analyzer for C.
11338         (semantic-default-c-setup): Added define of new lexer.
11339
11340         * semantic.el (semantic-version): Update to 2.0 status.
11341
11342         * semantic-load.el: Added default bovinator autoload.
11343         Added lex autoloads.
11344
11345         * semantic-edit.el: The user-editing portion of semantic.el
11346
11347 2002-07-04  Eric M. Ludlam  <zappo@gnu.org>
11348
11349         * semantic-load.el (semantic-bovinate-nonterminal, semantic-lex-init):
11350         New autoloads.
11351
11352         * semantic-bovine.el: LL parser from semantic.el.
11353
11354         * semantic.el (semantic-flex-depth): Moved near flex.
11355         (semantic-ignore-comments): Moved flex.
11356         (semantic-new-buffer-fcn): Added init for semantic-lex.
11357         (semantic-bovinate-nonterminal): Moved to semantic-bovine
11358         (semantic-bovinate-nonterminal-default & friends): Moved to semantic-bovine.el
11359
11360         * semantic-lex.el (semantic-lex-depth): Imported from semantic.el
11361         (define-lex-analyzer, define-lex-regex-analyzer)
11362         (define-lex-simple-regex-analyzer): Added `eval-and-compile'.
11363
11364 2002-07-03  Eric M. Ludlam  <zappo@gnu.org>
11365
11366         * semantic-lex.el: Flexible lexical analysis.
11367
11368 2002-07-03  David Ponce  <david@dponce.com>
11369
11370         * semantic-load.el (autoload): `wisent-wy-mode'.
11371         (auto-mode-alist): Added '("\\.wy$" . wisent-wy-mode).
11372         (speedbar-add-supported-extension): Added ".wy".
11373
11374         * wisent/wisent.texi: Some fixes from Eric ;-) + additions.
11375
11376 2002-07-02  David Ponce  <david@dponce.com>
11377
11378         * wisent/wisent-flex.el (wisent-flex-eoi-token): Replaced by...
11379         (wisent-flex-eoi): New macro.
11380         (wisent-flex): Use it.
11381
11382 2002-07-02  Richard Y. Kim <ryk@ap.com>
11383
11384         * wisent/wisent-python.el:
11385         Updated with the latest CVS code to get in sync with the recent semantic/wisent changes.
11386
11387 2002-07-01  David Ponce  <david@dponce.com>
11388
11389         * wisent/wisent-wy.wy (put_names):
11390         Use `wisent-token' to return a valid Semantic raw token.
11391         (put_values): Ditto.
11392
11393         * wisent/wisent-wy.el (wisent-wy-automaton): Re-generated.
11394         (wisent-wy-keywords): Ditto.
11395         (wisent-wy-tokens): Ditto.
11396         (wisent-wy-setup-semantic): Ditto.
11397
11398 2002-06-30  David Ponce  <david@dponce.com>
11399
11400         * wisent/wisent-java.wy (setupcode):
11401         Removed setup of `wisent-skip-token-hook'.
11402
11403         * wisent/wisent-java.el, wisent/wisent-java-tags.el (wisent-java-parser-tables):
11404         Re-generated.
11405         (wisent-java-keywords): Ditto.
11406         (wisent-java-tokens): Ditto.
11407         (wisent-java-default-setup): Ditto.
11408
11409         * wisent/wisent-cim.el (wisent-cim-automaton): Re-generated.
11410         (wisent-cim-keywords): Ditto.
11411         (wisent-cim-tokens): Ditto.
11412         (wisent-cim-default-setup): Ditto.
11413
11414         * wisent/wisent-calc.el (wisent-calc-automaton): Re-generated.
11415         (wisent-calc-tokens): Ditto.
11416         (wisent-calc-setup-parser): Ditto.
11417
11418         * wisent/wisent-awk.el (wisent-awk-automaton): Re-generated.
11419         (wisent-awk-keywords): Ditto.
11420         (wisent-awk-tokens): Ditto.
11421         (wisent-awk-setup-parser): Ditto.
11422
11423         * wisent/wisent-wy.el (wisent-wy-automaton): Re-generated.
11424         (wisent-wy-keywords): Ditto.
11425         (wisent-wy-tokens): Ditto.
11426         (wisent-wy-setup-semantic): Ditto.
11427         (wisent-wy-setupcode): Set `wisent-discarding-token-functions' as
11428         local hook, to `wisent-collect-unmatched-syntax'.
11429
11430         * wisent/wisent-bovine.el (wisent-bovinate-nonterminal): Use
11431         `wisent-discarding-token-functions' hook instead of calling
11432         `wisent-collect-unmatched-syntax'.
11433
11434         * wisent/wisent.el (wisent-skip-token-hook):
11435         To follow conventions from the Emacs Lisp
11436         Reference Manual for naming abnormal hooks, renamed to...
11437         (wisent-discarding-token-functions): New variable.
11438         (wisent-skip-token): Use it.
11439         (wisent-skip-block): Ditto.
11440         (wisent-parse): Ditto.
11441
11442         * wisent/wisent.texi: no message
11443
11444 2002-06-29  David Ponce  <david@dponce.com>
11445
11446         * wisent/wisent-wy.wy (code): Setup `semantic-expand-nonterminal'.
11447         (put_names): Return a single token instead of a list of one token.
11448         (put_values): Ditto.
11449         (rhs): New nonterminal.
11450         (rules): Use it.
11451         (action_opt): Removed.
11452         (elements): Removed.
11453         (element): Removed.
11454
11455         * wisent/wisent-wy.el (wisent-wy-automaton): Re-generated.
11456         (wisent-wy-keywords): Ditto.
11457         (wisent-wy-tokens): Ditto.
11458         (wisent-wy-setup-semantic): Ditto.
11459         (wisent-wy-EXPAND): Generate call to
11460         `semantic-bovinate-from-nonterminal' instead of
11461         `wisent-bovinate-from-nonterminal'.
11462         (wisent-wy-EXPANDFULL): Generate call to
11463         `semantic-bovinate-from-nonterminal-full' instead of
11464         `wisent-bovinate-from-nonterminal-full'.
11465         (wisent-wy-setupcode): Generate setup of `semantic-bovinate-parser'
11466         and `semantic-bovinate-parser-name' instead of
11467         `semantic-bovinate-toplevel-override'.
11468
11469         * wisent/wisent-java.wy (code): Setup `semantic-expand-nonterminal' and
11470         `wisent-skip-token-hook'.
11471         (goal): Produce a 'goal raw token.
11472         (field_declarations_opt): Ditto.
11473         (package_declaration): Use `wisent-cooked-token' to produce a cooked
11474         token.
11475         (import_declaration): Ditto.
11476         (class_declaration): Ditto.
11477         (field_declaration): Ditto.
11478         (method_declaration): Ditto.
11479         (formal_parameter): Ditto.
11480         (constructor_declaration): Ditto.
11481         (interface_declaration): Ditto.
11482         (abstract_method_declaration): Ditto.
11483
11484         * wisent/wisent-java.el (wisent-java-expand-nonterminal):
11485         Moved.  No more needed at compile
11486         time.  Expand 'goal tokens too.
11487         (wisent-java-parser-tables): Re-generated.
11488         (wisent-java-keywords): Ditto.
11489         (wisent-java-tokens): Ditto.
11490         (wisent-java-default-setup): Ditto.
11491
11492         * wisent/wisent-java-tags.wy (code):
11493         Setup `semantic-expand-nonterminal'.
11494         (formal_parameters): Skip RPAREN.
11495         (field_declaration): No more call `wisent-java-expand-nonterminal'.
11496         It is now handled via the standard `semantic-expand-nonterminal'
11497         mechanism.
11498
11499         * wisent/wisent-java-tags.el (wisent-java-parser-tables): Re-generated.
11500         (wisent-java-keywords): Ditto.
11501         (wisent-java-default-setup): Ditto.
11502         (wisent-java-get-local-variables): Use
11503         `semantic-bovinate-from-nonterminal-full' instead of
11504         `wisent-bovinate-from-nonterminal-full'.  The working stuff is now
11505         handled by the `semantic-get-local-variables' wrapper.
11506
11507         * wisent/wisent-cim.wy (outputfile): Fixed bad file name.
11508
11509         * wisent/wisent-cim.el (wisent-cim-automaton): Re-generated.
11510         (wisent-cim-keywords): Ditto.
11511         (wisent-cim-tokens): Ditto.
11512         (wisent-cim-default-setup): Ditto.
11513
11514         * wisent/wisent-calc.el (wisent-calc-automaton): Re-generated.
11515         (wisent-calc-tokens): Ditto.
11516         (wisent-calc-setup-parser): Ditto.
11517
11518         * wisent/wisent-bovine.el (wisent-token):
11519         No more setup the 'reparse-symbol property.  Return a
11520         single raw token instead of a list of one token.
11521         (wisent-cooked-token): New function.
11522         (wisent-lexer-wrapper): No more provide working goodies.
11523         (wisent-bovinate-nonterminal): Push back the `wisent-lookahead' token
11524         into the input stream.  Thus, it no more depends on external
11525         initialization of `wisent-lexer-lookahead'.  Return one nonterminal
11526         token at a time.  Ensure that unmatched tokens are collected here, not
11527         in `semantic-bovinate-nonterminals'.
11528         (wisent-bovinate-nonterminals): Removed.
11529         (wisent-bovinate-toplevel): Ditto.
11530         (wisent-bovinate-toplevel): Ditto.
11531         (wisent-bovinate-from-nonterminal-full): Ditto.
11532         (wisent-bovinate-region-until-error): Ditto.
11533         (semantic-bovinate-toplevel): Advice removed.
11534
11535         * wisent/wisent-awk.el (wisent-awk-automaton): Re-generated.
11536         (wisent-awk-keywords): Ditto.
11537         (wisent-awk-tokens): Ditto.
11538         (wisent-awk-setup-parser): Ditto.
11539
11540         * semantic.el (semantic-bovinate-parser): New variable.
11541         (semantic-bovinate-parser-name): New variable.
11542         (semantic-bovinate-nonterminal): Use it.
11543         (semantic-bovinate-nonterminal-default): New function.
11544         (semantic-bovination-working-message): New function.
11545         (semantic-rebovinate-token): Removed unnecessary reference to
11546         'bovine-toplevel nonterminal.
11547         (semantic-bovinate-toplevel): Ditto. Use
11548         `semantic-bovination-working-message'.
11549         (semantic-cooked-token-p): New function.
11550         (semantic-raw-to-cooked-token): Use it.
11551         (semantic-bovinate-nonterminals): Update the 'reparse-symbol property
11552         of cooked tokens.
11553
11554         * semantic-java.el (semantic-java-get-local-variables):
11555         The working stuff is now handled
11556         by the `semantic-get-local-variables' wrapper.
11557
11558         * semantic-ctxt.el (semantic-get-local-variables):
11559         Handle working stuff here.  Removed
11560         unnecessary call to `semantic-deoverlay-list'.
11561         (semantic-get-local-variables-default): The working stuff is now
11562         handled by the `semantic-get-local-variables' wrapper.
11563
11564 2002-06-27  David Ponce  <david@dponce.com>
11565
11566         * wisent/wisent.texi: Addition to section "Grammar debugging".
11567         New section "Understanding the automaton".
11568         Reorganized some chapters.
11569
11570         * wisent/fdl.texi:
11571         Put @node/@appendix inside an @ignore block, so the file can be
11572         included safely!  Thanks to Richard Y. Kim <ryk@dspwiz.com> for this
11573         tip.
11574
11575         * wisent/wisent.texi:
11576         Grammar style examples are no more separate nodes.
11577         Some fixes.
11578         New chapter on start nonterminals.
11579         Re-included @node/@appendix for GNU Free Documentation License,
11580         before including fdl.texi.
11581
11582 2002-06-26  David Ponce  <david@dponce.com>
11583
11584         * wisent/fdl.texi: Moved @node & @appendix lines from wisent.texi.
11585
11586         * wisent/wisent.texi:
11587         Removed NEXT, PREV, and UP links following @node name as well the
11588         following line with @comment.  Thanks to Richard Y. Kim
11589         <ryk@dspwiz.com> for the tip!
11590
11591         * wisent/wisent.texi: More fixes, clarifications and additions.
11592
11593 2002-06-25  David Ponce  <david@dponce.com>
11594
11595         * wisent/wisent.texi: Still more additions!
11596
11597 2002-06-25  Richard Y. Kim <ryk@ap.com>
11598
11599         * wisent/wisent-python.el, wisent/wisent-python.wy:
11600         Fixed up the flex handlers to handle "raw strings" delimited by
11601         double quotes, single quotes, and triple double quotes.
11602
11603         With this fix, the first 20 or so files in /usr/lib/python2.2
11604         directory can be parsed!
11605
11606 2002-06-24  David Ponce  <david@dponce.com>
11607
11608         * wisent/wisent.texi: More additions & fixes.
11609
11610 2002-06-24  Richard Y. Kim <ryk@ap.com>
11611
11612         * wisent/wisent-python.el, wisent/wisent-python.wy:
11613         Added David's support for "raw strings" via the introduction of the raw-string token.  This needs to be revisited later to see if we can optimize it.
11614
11615 2002-06-23  David Ponce  <david@dponce.com>
11616
11617         * wisent/wisent.texi: More fixes.
11618         Added index entries.
11619         Use the GNU Free Documentation License.
11620
11621         * wisent/fdl.texi:
11622         New file.  Text of the GNU Free Documentation License.
11623
11624 2002-06-23  Richard Y. Kim <ryk@ap.com>
11625
11626         * wisent/wisent-python.el, wisent/wisent-python.wy:
11627         Added support for \ token which is the explicit line continuation token.
11628         This was done by adding BACKSLASH token along with a handler which gets rid
11629         of 'newline and 'bol tokens that follow the \ token.
11630
11631 2002-06-22  David Ponce  <david@dponce.com>
11632
11633         * wisent/wisent.texi: Fixes & more text added.
11634
11635 2002-06-22  Richard Y. Kim <ryk@ap.com>
11636
11637         * wisent/wisent-python.el, wisent/wisent-python.wy:
11638         Fixed 'lambdef' NT by adding the missing 'varargslist_opt'.
11639
11640         * tests/test.py:
11641         Added the content of /usr/lib/python2.2/BaseHTTPServer.py.
11642
11643         * wisent/wisent-python.el, wisent/wisent-python.wy:
11644         Rather than blindly implementing 'varargslist' NT, I refactored the rules to be cleaner.  With this change, /usr/lib/python2.2/BaseHTTPServer.py now parses successfully.
11645
11646         * wisent/wisent-python.el, wisent/wisent-python.wy:
11647         Deleted `(read $1)' semantic rule for `one_or_more_string' NT,
11648         because it generates an error for single quoted strings!
11649
11650         * wisent/wisent-python.el:
11651         wisent-python-default-setup is added back to python-mode-hook.
11652         I tried adding this to semantic-init-hooks, but that does
11653         not work.
11654
11655 2002-06-21  David Ponce  <david@dponce.com>
11656
11657         * wisent/wisent.texi: Major update!
11658
11659 2002-06-21  Richard Y. Kim <ryk@ap.com>
11660
11661         * wisent/wisent-python.el, wisent/wisent-python.wy:
11662         The lexer must not generate NEWLINE, DEDENT, nor INDENT tokens when a
11663         physical line is continued onto the next line.  Such line continuation
11664         occurs when (, [, or { appear in a line without matching ), ],
11665         and/or } tokens. This is called implicit line continuation in python.
11666
11667         The implementation relys on wisent's token "handler" feature for
11668         'newline', 'open-paren', and 'close-paren' tokens.
11669
11670         * wisent/wisent-python.el:
11671         Pick up changes recently made in wisent-python.wy.
11672
11673         * wisent/wisent-python.wy:
11674         wisent-python-lexer-indent-stack defaults to '(0) rather than nil.
11675
11676         Reverted 'stmt' NT back to official rule rather than a hack that I had.
11677
11678         Renamed trailer_opt to trailer_zom then fixed the rule accordingly,
11679         i.e., "zero or more" rather than "zero or one". Ditto for exponent_opt
11680         NT.
11681
11682         'argument' NT was modified slightly from the official rule in order to
11683         parse function calls with arguments, e.g., f(x).  Need to revisit this
11684         later to see why the official rule does not parse 'f(x)'.
11685
11686         * wisent/wisent-python.wy:
11687         Added over 20 new semantic rules to aid in debugging.
11688
11689         * wisent/wisent-python.wy:
11690         Cosmetic indentation change only.  Lined up keywords so that they all start in the same column.
11691
11692 2002-06-19  Richard Y. Kim <ryk@ap.com>
11693
11694         * tests/test.py: Python code to excersize the parser.
11695
11696         * wisent/wisent-python.el, wisent/wisent-python.wy:
11697         First unfinished version of the Python parser.
11698
11699 2002-06-18  David Ponce  <david@dponce.com>
11700
11701         * senator.el:
11702         Use `senator-minor-mode-hook' to add semantic completion to
11703         `hippie-expand'.  Thanks to Phillip Lord <p.lord@russet.org.uk>.
11704
11705         (hippie-expand): Removed `defadvice'.
11706         (senator-try-function-already-enabled): New variable.
11707         (senator-hippie-expand-hook): New function.
11708         (senator-try-expand-semantic): Removed (require 'senator).  Added an
11709         autoload cookie.
11710
11711         * semantic-bnf.el (semantic-bnf-complete): Removed (require 'senator).
11712
11713         * semantic-load.el (senator-try-expand-semantic): auto-loaded.
11714         (senator-complete-symbol): auto-loaded.
11715
11716 2002-06-17  Eric M. Ludlam  <zappo@gnu.org>
11717
11718         * semantic-el.el (semantic-elisp-use-read): Support `defun*'.
11719
11720 2002-06-14  Eric M. Ludlam  <zappo@gnu.org>
11721
11722         * tests/test.cpp: New tets in include, namespace, and templates.
11723
11724         * tests/test.c: Various new tests.
11725
11726         * semantic-util.el (semantic-nonterminal-full-name): New name.
11727         (semantic-nonterminal-full-name-default): New name.
11728         (semantic-assert-valid-token): New function.
11729
11730         * semantic.el: Removed crufty History comment.
11731         (semantic-flex-tokens): Removed trailing whitespace.
11732
11733         * semanticdb.el:
11734         (semanticdb-table-oob-santity-check, semantic-table-sanity-check):
11735         (semanticdb-database-santity-check): New functions.
11736
11737 2002-06-13  David Ponce  <david@dponce.com>
11738
11739         * INSTALL, semantic.texi: Fixed typo.
11740
11741 2002-06-13  Eric M. Ludlam  <zappo@gnu.org>
11742
11743         * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf.
11744         (semantic-flex-c-extensions): Added `semantic-flex-c-include-system'.
11745         (semantic-flex-c-include-system): New fn.
11746
11747         * c.bnf (macro-or-include): Use new lexical symbol system-include
11748         (filename-prefix, filename-extension,filename): Deleted.
11749         (namespacesubparts): Added template and using clauses
11750         (using): Added :: notation support.
11751         (METADECLMOD): Added MUTABLE
11752         (func-decl): Added template type specifier
11753         (throw-exception-list): Support empty throw lists.
11754         (function-call): New rule.
11755         (expression): Support function calls in expressions.
11756
11757 2002-06-11  Eric M. Ludlam  <zappo@gnu.org>
11758
11759         * INSTALL: Added mailing list information.
11760
11761         * semantic.texi (Top): Removed request for parser help.
11762         Added mailing list information.
11763
11764 2002-06-11  David Ponce  <david@dponce.com>
11765
11766         * wisent/wisent-flex.el (wisent-flex):
11767         Fixed incorrect "eating" of `wisent-flex-istream'.
11768
11769 2002-06-07  David Ponce  <david@dponce.com>
11770
11771         * wisent/wisent-flex.el (wisent-flex-token-get): Doc fix.
11772         (wisent-flex): Doc fix.  New 'handler mapping rule.
11773
11774         * semantic.texi: no message
11775
11776 2002-05-31  David Ponce  <david@dponce.com>
11777
11778         * semantic.el (semantic-flex-tokens): Updated token list.
11779         (semantic-flex-enable-bol): New variable.
11780         (semantic-flex): Use it to catch beginning of lines when needed.
11781         Handle `semantic-flex-extensions' first, just after BOL.
11782         Handle newlines and whitespaces independently.
11783         Return comments as whitespaces when `semantic-ignore-comments' and
11784         `semantic-flex-enable-whitespace' are both non-nil.
11785         Correctly handle newlines following comments.
11786
11787 2002-05-16  David Ponce  <david@dponce.com>
11788
11789         * semantic-util.el (semantic-summarize-nonterminal-default): Use
11790         `semantic-symbol->name-assoc-list-for-type-parts' and
11791         `semantic-bucketize-token-token'.
11792
11793 2002-05-15  David Ponce  <david@dponce.com>
11794
11795         * wisent/wisent-java-tags.el, wisent/wisent-java.el (wisent-java-parser-tables):
11796         Re-generated from updated grammar.
11797         (wisent-java-keywords): Ditto.
11798         (wisent-java-tokens): Ditto.
11799         (wisent-java-default-setup): Ditto.
11800
11801         * wisent/wisent-java-tags.wy, wisent/wisent-java.wy (setup):
11802         take into account new
11803         `semantic-symbol->name-assoc-list-for-type-parts' option.
11804
11805         * semantic-java.el (semantic-default-java-setup):
11806         Re-generated from updated grammar.
11807
11808         * java.bnf (setup): take into account new
11809         `semantic-symbol->name-assoc-list-for-type-parts' option.
11810
11811 2002-05-13  Richard Y. Kim <ryk@ap.com>
11812
11813         * semantic-bnf.el, semantic.el:
11814         Corrected spelling in comments and doc-strings.
11815
11816         * semantic.texi:
11817         Corrected spelling and added "LocalWords" at the end of the file as
11818         texinfo comments for the benefit of future ispell runs.
11819
11820 2002-05-09  Richard Y. Kim <ryk@ap.com>
11821
11822         * semantic-bnf.el:
11823         Added (eval-after-load "info-look" ...) form to hook up semantic-bnf-mode with semantic.info file.
11824
11825         * semantic.texi:
11826         Replaced use of "@table...@end table" with "@deffn ... @end deffn" for
11827         the BNF settings so that a proper index entry is create for each
11828         setting.
11829
11830 2002-05-08  David Ponce  <david@dponce.com>
11831
11832         * semantic-util.el (semantic-util):
11833         provided before requiring semantic-util-modes to
11834         avoid recursive load.
11835
11836 2002-05-07  Eric M. Ludlam  <zappo@gnu.org>
11837
11838         * semantic-util-modes.el: Removed require for semantic-util.el
11839
11840         * semantic-util.el: Added a provide statement to end.
11841
11842         * semantic-util.el (semantic-something-to-stream): Fixed typos
11843         (semantic-find-nonterminal-by-function-first-match): Fixed typos
11844
11845         * Project.ede, document.el, make.bnf, semantic-analyze.el, semantic-c.el, semantic-ctxt.el, semantic-el.el, semantic-imenu.el, semantic-load.el, semantic-make.el, semantic-sb.el, semantic-texi.el, semantic-util-modes.el, semantic.el, semanticdb.el, senator.el, sformat.el, working.el, c.bnf:
11846         Merged from v1_4 branch.
11847
11848         * semantic-util.el: Merged from v1_4 branch.
11849         (semantic-something-to-stream): New function.
11850         (semantic-find-nonterminal-by-function):
11851         (semantic-find-nonterminal-by-function-first-match): Use above.
11852         (semantic-nonterminal-full-package-name): New function
11853         (semantic-nonterminal-full-package-name-default): New function
11854
11855 2002-04-06  Eric M. Ludlam  <zappo@gnu.org>
11856
11857         * semantic-bnf.el (semantic-bnf-to-bovine):
11858         Remove errant space from last CR insert.
11859
11860 2002-03-23  Eric M. Ludlam  <zappo@gnu.org>
11861
11862         * semantic-util.el (semantic-nonterminal-external-member-parent):
11863         Fixed name of override symbol.
11864
11865         * semantic-ia-sb.el (semantic-speedbar-analysis): Doc fix
11866
11867         * semantic-ia.el (semantic-ia-complete-symbol): Doc fix
11868         (semantic-ia-complete-symbol-menu): Doc fix
11869
11870         * semantic-cb.el (semantic-cb-new-class-browser): Doc fix
11871         (semantic-cb-speedbar-mode): Doc fix
11872
11873         * semantic-analyze.el (semantic-analyze-possible-completions): Doc fix.
11874
11875         * semantic.texi:
11876         (analyzer, Smart Completion, Speedbar Analysis, class browser):
11877         New sections.
11878         (Speedbar): Added references to new speedbar displays in new nodes.
11879
11880         * semantic-ctxt.el (semantic-ctxt-current-symbol-default):
11881         Fixed bug for commands
11882         prefixed with a comment while narrowed.
11883
11884         * semantic-c.el: Require cc-mode so that some commands are available.
11885
11886         * semantic-imenu.el (semantic-create-imenu-index):
11887         Make sure the directory menu generator
11888         also gets a stream.
11889
11890 2002-03-22  Eric M. Ludlam  <zappo@gnu.org>
11891
11892         * semantic-analyze.el (semantic-analyze-find-nonterminal-sequence):
11893         Fix to handle long sequences.
11894
11895         * semantic-c.el (semantic-c-analyze-type-constants): New method
11896         (semantic-default-c-setup): Add type-constants method.
11897
11898         * semantic-analyze.el (semantic-analyze-type-constraint):
11899         Allow types that are psuedo-tokens
11900         to return themselves.
11901         (semantic-analyze-type-constants): New override function
11902         (semantic-analyze-possible-completions): Find constants as possible
11903         completions.
11904
11905 2002-03-20  Eric M. Ludlam  <zappo@gnu.org>
11906
11907         * semantic-ia-sb.el (semantic-ia-sb-key-map): Removed expand/contract
11908         (semantic-ia-sb-token-info): fix bug w/ use of `semantic-analyze-token-type'.
11909         (semantic-ia-sb-tag-info): New command.
11910
11911         * semantic-ctxt.el (semantic-beginning-of-command-default):
11912         Skip over end-of-command
11913         syntax of previous command.
11914         (semantic-ctxt-current-symbol-default): Stop scanning backwards once
11915         the point stops moving.  Do not use bobp which can loose 1st symbol.
11916
11917         * semantic.el (semantic-version): Update version.
11918         (semantic-bovinate-debug-set-table): Allow user reset of table.
11919
11920         * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf
11921         (semantic-expand-c-nonterminal): Added multi-typedef support.
11922         (semantic-c-analyze-dereference-metatype): New override
11923         (semantic-default-c-setup): Added new override.
11924
11925         * c.bnf (typesimple): Support typedefs w/ more than one name.
11926         Re-arranged how typedefs are structured.
11927
11928         * semantic-ia-sb.el (semantic-ia-sb-more-buttons):
11929         Fixed copy/paste bug.
11930
11931         * semantic-analyze.el (semantic-analyze-dereference-metatype):
11932         New override function
11933         (semantic-analyze-token-type): Use above fn to deref meta types
11934         (semantic-analyze-current-context): Fixed fallthrough if statement.
11935
11936         * semantic-ia-sb.el (semantic-ia-speedbar): Added in current function.
11937         Call method to display specialized speedbar buttons for a given
11938         context.
11939         (semantic-ia-sb-more-buttons): New method.
11940         (semantic-ia-sb-token-info): Replace big icky bits with special call
11941         to semantic-analyze function I had forgotten about.
11942
11943 2002-03-18  Eric M. Ludlam  <zappo@gnu.org>
11944
11945         * semantic-analyze.el (semantic-analyze-current-context):
11946         Use no-side effects reverse for
11947         getting the end symbol.
11948         Do not move point when calculating the bounds.
11949
11950 2002-03-17  Eric M. Ludlam  <zappo@gnu.org>
11951
11952         * semantic-cb.el: Added requirement for eieio-base.
11953
11954 2002-03-16  Eric M. Ludlam  <zappo@gnu.org>
11955
11956         * senator.el: Added menu items for some analysis functions.
11957
11958         * semantic.texi (Token Queries): Added semantic-equivalent-tokens-p.
11959
11960         * semantic-load.el:
11961         Add autoloads for clsss browser, and analysis functions.
11962         Force new speedbar modes to load when speedbar is loaded.
11963
11964         * semantic-ia-sb.el (semantic-ia-sb-easymenu-definition):
11965         Added some basic entries
11966         (semantic-ia-speedbar): Use new speedbar labels.
11967         Use completion functions.
11968         Use info speedbar icons.
11969         (semantic-ia-sb-token-info): New function
11970         (semantic-ia-sb-completion-list): New function
11971         (semantic-ia-sb-complete): Delete text and insert new more sanely.
11972
11973         * semanticdb.el: Klaus Berndl
11974         (semanticdb-default-save-directory): Update documentation & custom type.
11975         (semanticdb-cache-filename): Calculate the file names so that it
11976         works on Windows.
11977
11978         * semantic-cb.el (initialize-instance:semantic-cb-token):
11979         New initializer.
11980         (semantic-cb-speedbar-mode): Renamed, autoloaded token.
11981
11982         * semantic-analyze.el (semantic-analyze-current-context):
11983         Calculate bounds more accuratly.
11984         (semantic-analyze-pop-to-context): Show bounds.
11985
11986         * NEWS: Updated with some new news.
11987
11988 2002-03-14  David Ponce  <david@dponce.com>
11989
11990         * wisent/wisent-cim.el (wisent-cim-automaton):
11991         Generated from new grammar in wisent-cim.wy.
11992         (wisent-cim-keywords):  Ditto.
11993         (wisent-cim-tokens): Ditto.
11994         (wisent-cim-default-setup): Ditto.
11995
11996         * wisent/wisent-cim.wy: Port of Bison's GNU Simula 87 Compiler grammar.
11997
11998 2002-03-14  Eric M. Ludlam  <zappo@gnu.org>
11999
12000         * semantic-analyze.el (semantic-analyze-current-context):
12001         Allow function calls to not be found.
12002
12003         * semantic-ia-sb.el: Add some function overrides for our Analyze mode.
12004         (semantic-ia-speedbar): Fix typo.
12005         Add functions to our buttons to jump to those tags.
12006         (semantic-ia-sb-line-path): New function.
12007         (semantic-ia-sb-complete): New function.
12008
12009         * semantic-ia-sb.el:
12010         Speedbar mode for displaying context sensitive information.
12011
12012 2002-03-13  Eric M. Ludlam  <zappo@gnu.org>
12013
12014         * semantic-util.el (semantic-find-nonterminal-by-token): Doc fix.
12015
12016         * semanticdb.el (semanticdb-find-nonterminal-by-token):
12017         Protect `token' argument.
12018
12019         * semantic-cb.el: Create a class browser structure.
12020         Primitive speedbar hack on the structure.
12021
12022 2002-03-12  Eric M. Ludlam  <zappo@gnu.org>
12023
12024         * semantic-util.el (semantic-equivalent-tokens-p):
12025         Use positional information, not just
12026         overlay so that we can compare tokens swapped out buffers.
12027
12028 2002-03-07  Eric M. Ludlam  <zappo@gnu.org>
12029
12030         * semantic-util.el (semantic-equivalent-tokens-p): New test
12031         (semantic-adopt-external-members): add 'faux property to made up types
12032
12033         * semantic.el (semantic-before-toplevel-bovination-hook): Doc fix
12034
12035         * semantic-util.el (semantic-mark-external-member-function):
12036         Updated doc
12037         (semantic-adopt-external-members): Call `semantic-mark-external-member-function'
12038         after we find the parent it belongs to.  Pass it the parent.
12039         (semantic-nonterminal-external-member-children-default): Fixed typo.
12040         (semantic-nonterminal-children): When filtering for position, reverse
12041         the list back to the forward direction.
12042
12043         * semantic-imenu.el (semantic-imenu-positioned-children): Deleted
12044         (semantic-create-imenu-subindex): Use working
12045         `semantic-nonterminal-children' instead of above.
12046
12047         * semantic-util.el (semantic-nonterminal-children): Fixed consing bug.
12048
12049         * semantic-util.el (semantic-nonterminal-children):
12050         If POSITIONONLY, filter whole list,
12051         not just first element.
12052         (semantic-nonterminal-external-member-children-db): New function
12053         (semantic-nonterminal-external-member-children-default): Remove DB
12054         children fn into new function.
12055
12056 2002-03-03  David Ponce  <david@dponce.com>
12057
12058         * wisent/wisent-wy.wy (rule):
12059         New rules allowing mid-rule actions anywhere.
12060         (element): Ditto.
12061
12062         * wisent/wisent-wy.el (wisent-wy-automaton): Re-generated.
12063         (wisent-wy-keywords): Ditto.
12064         (wisent-wy-tokens): Ditto.
12065         (wisent-wy-setup-semantic): Ditto.
12066         (wisent-wy-nonterminals): Take into account new format of 'rule token.
12067
12068 2002-02-28  David Ponce  <david@dponce.com>
12069
12070         * wisent/wisent-wy.wy: More comments ;-)
12071         (setupfunction_decl): Use any_symbol instead of SYMBOL.
12072         (keywordtable_decl): Ditto.
12073         (parsetable_decl): Ditto.
12074         (tokentable_decl): Ditto.
12075         (token_decl): Ditto.
12076         (token_type): Ditto.
12077         (start_decl): Ditto.
12078         (put_decl): Ditto.
12079         (put_names): Ditto.
12080         (put_value): Ditto.
12081         (any_value): Ditto.
12082         (lifo_symbols): Ditto.
12083         (nonterminal): Ditto.
12084         (item): Ditto.
12085         (any_symbol): New rule to allow use of reserved words anywhere.
12086         (left_decl): Added token_type_opt to allow <type> in declaration.
12087         (right_decl): Ditto.
12088         (nonassoc_decl): Ditto.
12089
12090         * wisent/wisent-wy.el (wisent-wy-automaton): Re-generated.
12091         (wisent-wy-keywords): Ditto.
12092         (wisent-wy-tokens): Ditto.
12093         (wisent-wy-setup-semantic): Ditto.
12094         (wisent-wy-tokens): Process <type> in %left, %right and %nonassoc
12095         declarations.
12096         (wisent-wy-mode-keywords-1): Fixed highlighting of '$' between quotes.
12097         (wisent-wy-goto-grammar-indent-anchor): Fixed skipping of C-like char
12098         expressions.
12099         (wisent-wy-grammar-compute-indentation): No more switch syntax table.
12100
12101         * wisent/wisent-comp.el (wisent-context-name): New messages format.
12102         (wisent-append-to-log-file): Ditto.
12103         (wisent-reduce-grammar): Ditto.
12104         (wisent-map-goto): Ditto.
12105         (wisent-add-lookback-edge): Ditto.
12106         (wisent-push-token): Ditto.
12107         (wisent-push-var): Ditto.
12108         (wisent-parse-nonterminals): Ditto.  Doc string.  Produce a list of
12109         rules consistent with Bison's internal format.
12110         (wisent-parse-grammar): New messages format.  Use new form of the rule
12111         list produced by `wisent-parse-nonterminals'.
12112
12113         * wisent/wisent-awk.el (wisent-awk-parser-tables):
12114         Renamed to `wisent-awk-automaton'.
12115         Generated from wisent-awk.wy.
12116         (wisent-awk-keywords): Re-generated from wisent-awk.wy.
12117         (wisent-awk-tokens): Ditto.
12118         (wisent-awk-default-setup): Renamed to `wisent-awk-setup-parser'.
12119         Generated from wisent-awk.wy.
12120
12121         * wisent/wisent-awk.wy: GNU AWK grammar to torture Wisent.
12122
12123 2002-02-28  Eric M. Ludlam  <zappo@gnu.org>
12124
12125         * Project.ede: Added semantic-example.el
12126
12127         * semantic.texi (Example Programs): New section.
12128
12129         * semantic-example.el: Examples for basic semantic API calls.
12130
12131         * semantic-util.el (semantic-find-nonterminal-standard): Fixed.
12132
12133         * semantic-sb.el (semantic-fetch-dynamic-bovine): Support adoption.
12134
12135         * semantic-el.el (semantic-default-elisp-setup):
12136         Specify Types first in the name-assoc list.
12137
12138 2002-02-27  Eric M. Ludlam  <zappo@gnu.org>
12139
12140         * semantic-texi.el (semantic-texi-bovinate-toplevel):
12141         Overlay the created list.
12142
12143 2002-02-27  David Ponce  <david@dponce.com>
12144
12145         * wisent/wisent-wy.wy (setupcode):
12146         Use `semantic-flex-extensions( to handle C-like
12147         character literals.  Use `font-lock-type-face' instead of
12148         `font-lock-constant-face' in `semantic-face-alist'.
12149         (CHARACTER): New token.
12150         (left_decl): Use 'items' instead of 'symbols'.  New Semantic token
12151         format.
12152         (right_decl): Ditto.
12153         (nonassoc_decl): Ditto.
12154         (level): Use 'item' instead of 'SYMBOL'.
12155         (element): Ditto.
12156         (items): New nonterminal.
12157         (lifo_items): New nonterminal.
12158         (item): New nonterminal.  Handle C-like character literal.
12159
12160         * wisent/wisent-wy.el (wisent-wy-c-char-re): New constant.
12161         (wisent-wy-flex-extensions): New constant.
12162         (wisent-wy-flex-char): New function.
12163         (wisent-wy-automaton): Re-generated.
12164         (wisent-wy-keywords): Ditto.
12165         (wisent-wy-tokens): Ditto.
12166         (wisent-wy-setup-semantic): Ditto.
12167         (wisent-wy-item-value): New function.
12168         (wisent-wy-nonterminals): Use it.
12169         (wisent-wy-left): Removed.
12170         (wisent-wy-right): Removed.
12171         (wisent-wy-nonassoc): Removed.
12172         (wisent-wy-assocs): New function.
12173         (wisent-wy-grammar): Use it.
12174         (wisent-wy-elisp-syntax-table): Removed.
12175         (wisent-wy-mode-keywords-1): Highlight %keywords with
12176         `font-lock-keyword-face'.  Highlight C-like char literals.
12177         (wisent-wy-grammar-compute-indentation): Take into account C-like char
12178         literals.
12179         (wisent-wy-do-lisp-indent): Use copy of
12180         `emacs-lisp-mode-syntax-table' instead of
12181         `wisent-wy-elisp-syntax-table'.
12182
12183         * wisent/wisent-flex.el (wisent-flex-put-default): New function.
12184         (wisent-flex-make-token-table): Initialize obarray with 0 instead of
12185         nil.  Set up default value of new 'char-literal property.
12186         (wisent-flex): Return character value as category of default token if
12187         'char-literal property is non-nil.
12188
12189         * wisent/wisent-comp.el (compile-grammar): Added `ptable' to context.
12190         (wisent-escape-sequence-tags): New constant.
12191         (wisent-tag): New function.
12192         (wisent-put): New function.
12193         (wisent-get): New function.
12194         (wisent-item-number): Moved. Use `wisent-get'.
12195         (wisent-assoc): Ditto.
12196         (wisent-prec): Ditto.
12197         (wisent-set-item-number): Moved. Use `wisent-put'.
12198         (wisent-set-assoc): Ditto.
12199         (wisent-set-prec): Ditto.
12200         (wisent-reduce-grammar): Use `wisent-tag'.
12201         (wisent-print-useless): Ditto.
12202         (wisent-print-nullable): Ditto.
12203         (wisent-print-fderives): Ditto.
12204         (wisent-print-firsts): Ditto.
12205         (wisent-log-resolution): Ditto.
12206         (wisent-print-grammar): Ditto.
12207         (wisent-print-reductions): Ditto.
12208         (wisent-print-actions): Ditto.
12209         (wisent-print-core): Ditto.
12210         (wisent-resolve-sr-conflict): Pass item number to
12211         `wisent-log-resolution', instead of symbol.
12212         (wisent-ISVALID): Removed.
12213         (wisent-ISVALID-VAR): New function.
12214         (wisent-push-var): Use it.
12215         (wisent-ISVALID-TOKEN): New function.
12216         (wisent-push-token): Use it.
12217         (wisent-parse-nonterminals): Put symbol between `' in message.  Create
12218         new literal character tokens when referenced the first time.
12219         (wisent-parse-grammar): Put symbol between `' in messages.
12220
12221         * wisent/wisent-calc.wy: Use C-like character literals :-)
12222
12223         * wisent/wisent-calc.el (wisent-calc-automaton): Re-generated.
12224         (wisent-calc-tokens): Ditto.
12225         (wisent-calc-setup-parser): Ditto.
12226
12227 2002-02-27  Eric M. Ludlam  <zappo@gnu.org>
12228
12229         * tests/Project.ede: Added templates.cpp
12230
12231         * tests/templates.cpp: Template examples.
12232
12233         * tests/test.cpp: Added body to fn for testing smart completion.
12234
12235         * tests/test.make: Added some harsher test cases.
12236
12237         * Project.ede: Updated version number.
12238         Added semantic-ia.el.
12239
12240         * semantic-imenu.el (semantic-imenu-positioned-children): New function
12241         (semantic-create-imenu-subindex): Use above to strip out positionless children.
12242
12243         * semantic-analyze.el (semantic-analyze-current-context):
12244         Set the bounds in the analysis of
12245         the prefix.
12246         (semantic-analyze-possible-completions): Accept a point (position) OR
12247         a precalculated analysis.
12248
12249         * semantic-c.el: New c.bnf
12250
12251         * c.bnf (knr-arguments): Need to expand inline.
12252
12253         * semantic-ia.el: Interactive access to analysis functions.
12254
12255         * document.el (document-update-comment): Fix error
12256         (document-argument-name): New function
12257         (document-update-paramlist): Use above to safely get arg names.
12258
12259         * semantic-analyze.el (semantic-analyze-type-parts):
12260         Use `semantic-nonterminal-member-children'.
12261
12262 2002-02-26  David Ponce  <david@dponce.com>
12263
12264         * wisent/wisent-wy.el (wisent-wy-tokens):
12265         Use a default symbol name for tokens without type.
12266         (wisent-wy-mode): Set `font-lock-multiline' to 'undecided, to handle
12267         multiline patterns when encountered.
12268         (wisent-wy-goto-grammar-indent-anchor): Don't stop at % anchor when
12269         it is the first character of %prec keyword (inside rule).
12270         (wisent-wy-between-name-and-colon-p): New function.
12271         (wisent-wy-grammar-compute-indentation): Use it.
12272
12273         * wisent/wisent-wy.wy: Removed defaults from setup code.
12274         (%tokentable): New definition.
12275         (%tokens): Modified <type> for use by `wisent-flex' lexer.
12276         (token_decl): New format.
12277         (rule): Use 'level' instead of 'prec' which is a reserved keyword.
12278         (prec): Renamed to 'level'.
12279
12280         * wisent/wisent-wy.el (wisent-wy-automaton): WY grammar re-generated.
12281         (wisent-wy-keywords): Ditto.
12282         (wisent-wy-setup-semantic): Ditto.
12283         (wisent-wy-tokens): New constant.
12284         (wisent-wy-lex): Removed.
12285         (wisent-wy-setupcode): Added missing default setup.
12286         (wisent-wy-keywords): Change in semantic token's format.
12287         (wisent-wy-tokens): Ditto.
12288         (wisent-wy-token-properties): New function.
12289         (wisent-wy-terminals): Keep order of declarations.
12290         (wisent-wy-keyword-properties): Allow duplicates lexical symbols.
12291         (wisent-wy-tokentable-value): Generate call to
12292         `wisent-flex-make-token-table'.
12293         (wisent-wy-update-setupfunction): Fixed format arguments.
12294         (wisent-wy-mode-keywords-1): Minor improvements.
12295
12296         * wisent/wisent-java.el (wisent-java-parser-tables):
12297         Generated from wisent-java.wy.
12298         (wisent-java-keywords): Ditto.
12299         (wisent-java-tokens): Ditto.
12300         (wisent-java-default-setup): Ditto. Moved.
12301         (wisent-java-lex): Removed.
12302
12303         * wisent/wisent-java-tags.el (wisent-java-parser-tables):
12304         Generated from wisent-java-tags.wy.
12305         (wisent-java-keywords): Ditto.
12306         (wisent-java-tokens): Ditto.
12307         (wisent-java-default-setup): Ditto.
12308         (wisent-java-lex): Removed.
12309
12310         * wisent/wisent-comp.el (wisent-push-token):
12311         Only warns on duplicate terminal symbols.  Put
12312         symbol between `' in messages.
12313         (wisent-push-var): Put symbol between `' in messages.
12314
12315         * wisent/wisent-calc.el (wisent-calc-parser-tables):
12316         Renamed to `wisent-calc-automaton'.
12317         Generated from wisent-calc.wy.
12318         (wisent-calc-keywords): Removed.
12319         (wisent-calc-tokens): Generated from wisent-calc.wy.
12320         (wisent-calc-default-setup): Renamed to
12321         `wisent-calc-setup-parser'. Generated from wisent-calc.wy.
12322         (wisent-calc-number-regexp): Removed.
12323         (wisent-calc-lexer-input-stream): Removed.
12324         (wisent-calc-lexer): Removed.
12325         (wisent-calc): Use `wisent-flex' via a temporary buffer.
12326
12327 2002-02-26  Eric M. Ludlam  <zappo@gnu.org>
12328
12329         * semantic-texi.el (semantic-texi-update-doc-from-source):
12330         Fixed error message.
12331
12332 2002-02-26  David Ponce  <david@dponce.com>
12333
12334         * wisent/wisent-bovine.el: (require 'wisent-flex)
12335         (semantic-flex-token-value): Removed.
12336         (semantic-flex-token-key): Removed.
12337         (wisent-collect-unmatched-syntax): Moved.
12338         (wisent-lexer-function): Moved.
12339         (wisent-flex-istream): Moved into wisent-flex.el.
12340         (wisent-flex-depth): Removed.
12341         (wisent-rebovinate-token): Mo more use it.
12342         (wisent-bovinate-toplevel): Ditto.
12343
12344         * wisent/wisent-java.wy: Java LALR grammar.
12345
12346         * wisent/wisent-java-tags.wy:
12347         Java LALR grammar optimized for Semantic environment.
12348
12349         * wisent/wisent-flex.el:
12350         Lexical analyser for use by Wisent's parser in Semantic environment.
12351
12352         * wisent/wisent-calc.wy:
12353         LALR grammar of the infix notation calculator sample.
12354
12355 2002-02-26  Eric M. Ludlam  <zappo@gnu.org>
12356
12357         * plan.txt: Plan.
12358
12359         * sformat.el: From Vladimir Sekissov <svg@surnet.ru>
12360         (sformat-just-before-token-regexp, sformat-just-after-token-regexp):
12361         Handle %% as non-tokens.
12362
12363         * semantic-c.el: New c.bnf
12364
12365         * c.bnf: Added symbol->name-assoc-list values.
12366
12367         * semantic.el (semantic-symbol->name-assoc-list):
12368         Rearranged default list.
12369         (semantic-symbol->name-assoc-list-for-type-parts): New variable
12370         (semantic-token-put-no-side-effect): New function.
12371
12372         * semantic-util.el (semantic-bucketize-token-token): New variable
12373         (semantic-bucketize): Accept a new parent argument.
12374         When there is a parent, use a different name list.
12375         Use `semantic-bucketize-token-token'.
12376         (semantic-orphaned-member-metaparent-type): New variable.
12377         (semantic-mark-external-member-function): New variable.
12378         (semantic-adopt-external-members): Updated to use above two variables.
12379         Creates meta classes for orphaned tokens that have parents.
12380         Make copies of tokens that are parented, apply an 'adopted property,
12381         and call new mark function above.
12382         (semantic-colorize-merge-text): Pass in the string to `add-text-properties'.
12383
12384         * semantic-imenu.el (semantic-imenu-goto-function):
12385         Do not require a file.  Makes this
12386         useable by external apps that encounter sub menus.
12387         (semantic-create-imenu-index): Pass nil into new `parent' argument for
12388         `semantic-create-imenu-index-1'.
12389         (semantic-create-imenu-directory-index): As above
12390         (semantic-create-imenu-index-1): Accept a parent token.  Use this when
12391         calling the bucket function which also uses this new argument to
12392         distinguish between different types of buckets.
12393         (semantic-create-imenu-subindex): Create submenus based on valid
12394         positions in the returned streams.  The adopting function creates
12395         metatypes w/out positions, and the bucket function now takes a parent
12396         object which can change the sub-bucket names.
12397
12398 2002-02-25  Eric M. Ludlam  <zappo@gnu.org>
12399
12400         * semantic.el (semantic-version): Update version to 1.4 beta14
12401
12402         * sformat.el (Sformat): Support byte compiled lambdas.
12403
12404 2002-02-24  Eric M. Ludlam  <zappo@gnu.org>
12405
12406         * semantic-imenu.el (semantic-imenu-adopt-external-members): New option
12407         (semantic-create-imenu-index): Bovinate buffer if no stream available.
12408         (semantic-create-imenu-index-1): Do not bovinate buffer if no stream
12409         available.  Do rebuild the token stream to adopt external children
12410         into their types.
12411
12412         * semantic.texi (Nonterminal sorting): New section.
12413
12414         * semantic-util.el (semantic-adopt-external-members): New function
12415         (semantic-colorize-merge-text): Added XEmacs support
12416         (semantic-nonterminal-external-member-parent)
12417         (semantic-nonterminal-external-member-parent-default)
12418         (semantic-nonterminal-external-member-p)
12419         (semantic-nonterminal-external-member-p-default): New functions
12420         (semantic-nonterminal-external-member-children): Updated doc string
12421         (semantic-nonterminal-external-member-children-default): Fixed
12422
12423 2002-02-23  David Ponce  <david@dponce.com>
12424
12425         * wisent/wisent-wy.wy: LALR grammar of Wisent's input grammar.
12426
12427         * wisent/wisent-wy.el:
12428         Major mode for editing Wisent's input grammar (.wy) files.
12429
12430         * working.el (noninteractive):
12431         Define it to avoid byte-compiler warnings.
12432         (working-current-message): New function.
12433         (working-status-forms): Restore current message when it exits.
12434         (working-status-timeout): Ditto.
12435
12436 2002-02-22  Eric M. Ludlam  <zappo@gnu.org>
12437
12438         * semantic-util.el (semantic-find-nonterminal-by-*):
12439         Converted to defun to avoid macro errors.
12440         (semantic-colorize-merge-text): Fixed to use paramter correctly.
12441         (semantic-uml-attribute-string): New function
12442         (semantic-nonterminal-external-member-children): New function
12443
12444 2002-02-21  Eric M. Ludlam  <zappo@gnu.org>
12445
12446         * semantic-c.el (semantic-c-nonterminal-abstract):
12447         Make types abstract if destructor
12448         is virtual, and constructor protected, OR if any function is
12449         pure-virtual.  Make methods abstract if they are pure-virtual.
12450
12451         * semantic-el.el (semantic-elisp-use-read):
12452         Enable defclass to have :documentation
12453         preceeding it's documentation.
12454
12455         * working.el (working-status-call-process):
12456         Use `accept-process-output' w/
12457         site-for commented out.
12458
12459         * semantic-el.el (semantic-elisp-clos-args-to-semantic):
12460         Identify `static' entries
12461         (semantic-elisp-nonterminal-static): New function
12462         (semantic-default-elisp-setup): Add above as override.
12463
12464         * semantic-c.el (semantic-c-nonterminal-abstract): New function
12465         (semantic-default-c-setup): Added above to override table.
12466
12467         * semantic-util.el (semantic-test-all-token->text-functions):
12468         Support color output.
12469         (semantic-face-alist): Added `abstract, and 'static colors for UML
12470         (semantic-colorize-merge-text): New function
12471         (semantic-concise-prototype-nonterminal-default): Support color for
12472         variables, and unhandled token types.
12473         (semantic-uml-post-colorize): New function
12474         (semantic-uml-abbreviate-nonterminal-default): Use semantic-uml-post-colorize
12475         (semantic-uml-prototype-nonterminal-default): Use semantic-uml-post-colorize
12476         (semantic-uml-concise-prototype-nonterminal-default): Use semantic-uml-post-colorize
12477         (semantic-nonterminal-protection): Doc fix
12478         (semantic-nonterminal-abstract, semantic-nonterminal-abstract-default)
12479         (semantic-nonterminal-leaf, semantic-nonterminal-abstract-leaf)
12480         (semantic-nonterminal-static, semantic-nonterminal-abstract-static):
12481         New functions.
12482
12483 2002-02-20  Eric M. Ludlam  <zappo@gnu.org>
12484
12485         * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf
12486         (semantic-c-keyword-table): New c.bnf
12487         (semantic-c-template-string): Also show template, not just template-specifier
12488         (semantic-c-uml-prototype-nonterminal): New function
12489         (semantic-default-c-setup): Added above overload.
12490
12491         * c.bnf (variablearg): Made variable name optional.
12492
12493         * c.bnf (USING, FRIEND): New tokens
12494         (declaration): Added using match
12495         (filename-extension): Fixed to handle includes w/out extensions (C++)
12496         (classsubparts): Added templates
12497         (using): New rule
12498         (template): Added opt-friend
12499         (opt-template-equal): Fixed typo
12500         (opt-friend): New rule
12501         (DECLMOD): Added FRIEND
12502         (variablearg): Added an extra opt-ref
12503         (operatorsym): Added -> and ! as possible operators
12504
12505 2002-02-20  David Ponce  <david@dponce.com>
12506
12507         * wisent/wisent-bovine.el (wisent-token):
12508         Always provide token location.
12509         (wisent-bovinate-nonterminal): Made more robust.
12510
12511         * wisent/wisent-comp.el (wisent-parse-nonterminals):
12512         Accept nil as a mid-rule action.
12513         Fixed bad synchronization of RULES, RCODE & RPREC lists.
12514
12515 2002-02-20  Eric M. Ludlam  <zappo@gnu.org>
12516
12517         * c.bnf (template-var): Combine stars with the type name
12518         (template-type): Added in additional 'type fields as nil.
12519
12520 2002-02-19  Eric M. Ludlam  <zappo@gnu.org>
12521
12522         * semantic-make.el: New make.bnf.
12523         (semantic-expand-make-nonterminal): New function
12524
12525         * make.bnf (setup): Enable whitespace
12526         (BACKSLASH): New token
12527         (variable rule conditional targets include): Use whitespace where needed.
12528         (targets): Enable subtarget groupings w/ mixed variables.
12529         (target sub-target): New rules
12530         (element-list, element, sub-element): New rules
12531         (elements): Enable mixed groupings.
12532         (opt-whitespace): New rule.
12533
12534         * semantic.el (semantic-flex-enable-whitespace): New variable
12535         (semantic-flex): If above var is non-nil, create whitespace tokens.
12536
12537 2002-02-16  David Ponce  <david@dponce.com>
12538
12539         * wisent/wisent-comp.el (wisent-check-$N): New function.
12540         (wisent-semantic-action-expand-body): Use it.
12541
12542         (wisent-semantic-action): Handle mid-rule actions.
12543         (wisent-semantic-actions): Doc string.
12544
12545         (wisent-default-semantic-action-body): Removed.
12546         (wisent-reserved-capitals): New constant.
12547         (wisent-ISVALID): Use it. Moved.
12548
12549         (wisent-parse-nonterminal): Removed.
12550         (wisent-parse-nonterminals): New function.  Handle mid-rule actions.
12551         (wisent-parse-grammar): Use it.
12552
12553 2002-02-14  David Ponce  <david@dponce.com>
12554
12555         * wisent/wisent-comp.el (wisent-set-conflicts):
12556          Implementation consistent with Bison 1.33.
12557
12558         * semantic-bnf.el (semantic-bnf-matching-to-lalr):
12559         Don't discard %prec clause in EMPTY rules.
12560
12561 2002-02-13  David Ponce  <david@dponce.com>
12562
12563         * wisent/wisent-comp.el (wisent-print-useless):
12564          Didn't print correct nonterminals.  Minor
12565         improvement.
12566
12567         * wisent/wisent-bovine.el (wisent-bovinate-nonterminal):
12568         Removed LEXER and ERROR arguments.
12569         (wisent-bovinate-nonterminals): Updated call to above.
12570         (wisent-rebovinate-token): Ditto.
12571
12572 2002-02-11  David Ponce  <david@dponce.com>
12573
12574         * wisent/wisent-comp.el (compile-grammar):
12575         Added `ruseful' and `rcode' variables to context.
12576         Removed `rule-table'.
12577
12578         (wisent-reduce-grammar-tables): New function.
12579         (wisent-nonterminals-reduce): New function.
12580         (wisent-reduce-grammar): Call them.
12581
12582         (wisent-set-derives): Ignore useless rules.
12583         (wisent-set-nullable): Ditto.
12584
12585         (wisent-allocate-itemsets): Allocate room for all the symbols.
12586
12587         (wisent-print-grammar): Don't print useless rules.  No more use
12588         `rule-table'.  'error' token was not in cross reference.
12589
12590         (wisent-semantic-action): No more use `rule-table'.  Take into account
12591         useless rules.  Directly byte-compile function.
12592
12593         (wisent-byte-compile-semantic-actions): Removed.
12594         (wisent-semantic-actions): No more use `rule-table'.
12595
12596         (wisent-parse-nonterminal): Directly count items and rules.  Collect
12597         semantic action bodies in a separate vector.
12598
12599         (wisent-grammar-production-lhs): Removed.
12600         (wisent-grammar-rule-rhs): Removed.
12601         (wisent-grammar-production: Removed.
12602
12603         (wisent-parse-grammar): Follow changes in `wisent-parse-nonterminal'.
12604
12605 2002-02-11  Eric M. Ludlam  <zappo@gnu.org>
12606
12607         * semantic-bnf.el (semantic-bnf-to-bovine):
12608         Do not add space to line after final paren.
12609
12610 2002-02-10  Eric M. Ludlam  <zappo@gnu.org>
12611
12612         * Project.ede: Version update.
12613         Add speedbar to path.
12614
12615         * semantic-make.el: New make.bnf
12616
12617         * make.bnf (semantic-flex-syntax-modifications): Remove tab.
12618         (conditional): Return explicit nils.
12619
12620 2002-02-09  Eric M. Ludlam  <zappo@gnu.org>
12621
12622         * semantic.el (semantic-version): New function.
12623
12624 2002-02-08  David Ponce  <david@dponce.com>
12625
12626         * wisent/wisent-java-tags.el (wisent-java-parser-tables):
12627         Re-generated from BNF.
12628
12629         * wisent/wisent-java-tags.bnf (operator): Added missing XOR operator.
12630
12631         * wisent/wisent-cim.bnf, wisent/wisent-cim.el: Comments.
12632
12633         * wisent/wisent.texi: no message
12634
12635         * wisent/wisent.el (wisent-parse): Doc string.
12636
12637         * wisent/wisent-comp.el (wisent-append-to-log-file):
12638         Check that the log buffer is not empty.
12639         (compile-grammar): Updated context.
12640
12641         (wisent-bits-equal): New function.
12642         (wisent-nbits): New function.
12643         (wisent-bits-size): New function.
12644         (wisent-useful-production): New function.
12645         (wisent-useless-nonterminals): New function.
12646         (wisent-inaccessable-symbols): New function.
12647         (wisent-total-useless): New function.
12648         (wisent-reduce-grammar): New function.
12649         (wisent-print-useless): New function.
12650
12651         (wisent-log-resolution): Log things if verbose or debug flag set.
12652         (wisent-resolve-sr-conflict): Handle item numbers in `rprec'.
12653         (wisent-set-conflicts): No more use `any_conflicts'.
12654         (wisent-resolve-conflicts): Ditto.
12655         (wisent-print-conflicts): Print details if verbose or debug flag set.
12656         (wisent-print-results): Ditto.  Also report useless things.
12657         (wisent-print-states): New function.
12658         (wisent-print-grammar): Print where tokens & nonterminals are used.
12659
12660         (wisent-parser-automaton): Check for useless stuff.  Doc string.
12661         (wisent-parse-grammar): Set `rprec' with item numbers.
12662         (wisent-parse-nonterminal): Ditto.  Check level of %prec token.
12663         (wisent-compile-grammar): Doc string and comments.
12664
12665 2002-02-07  David Ponce  <david@dponce.com>
12666
12667         * wisent/wisent-java-tags.el, wisent/wisent-java.el (wisent-java-parser-tables):
12668         BNF updated.
12669
12670         * wisent/wisent-java-tags.bnf, wisent/wisent-java.bnf:
12671         Added required definition of the default start symbol.
12672
12673         * wisent/wisent.el (wisent-parse-start):
12674         Handle single start symbol like Bison.
12675
12676         * wisent/wisent-comp.el (wisent-item-number): Moved.
12677         (wisent-set-item-number): New function.
12678         (wisent-assoc): New function.
12679         (wisent-set-assoc): New function.
12680         (wisent-prec): New function.
12681         (wisent-set-prec): New function.
12682
12683         (wisent-resolve-sr-conflict): Use above functions.
12684         (wisent-parse-nonterminal): Ditto.
12685
12686         (wisent-count-rr-conflicts): Fixed misplaced close parenthesis.
12687         (wisent-print-conflicts): Removed bad extra argument.
12688         (wisent-print-reductions): Fixed some nasty bugs.
12689
12690         (item-numbers [defcontext]): Removed.
12691         (wisent-set-token-item-number): Removed.
12692         (wisent-set-var-item-number): Removed.
12693         (wisent-clear-properties): Removed.
12694
12695         (wisent-no-xstarts-flag): Renamed to
12696         (wisent-single-start-flag): New variable.
12697
12698         (wisent-push-token): New function.  Push a new symbol in the list of
12699         tokens.
12700         (wisent-push-var): New function.  Push a new symbol in the list of
12701         nonterminals.
12702
12703         (wisent-parse-grammar): Code improvement & Bison compatibility
12704         changes.  No more require to declare tokens used in associativity &
12705         precedence rules.  Handle single start symbol like Bison.
12706
12707         (wisent-compile-grammar): Doc string updated.
12708
12709         * wisent/wisent-cim.el: Elisp code associated to wisent-cim.bnf.
12710
12711         * wisent/wisent-cim.bnf:
12712         New torture test!  From the GNU Simula 87 Compiler grammar found in
12713         Bison 1.32 tests/torture.at.
12714
12715 2002-02-06  David Ponce  <david@dponce.com>
12716
12717         * wisent/wisent-comp.el (wisent-clear-item-number): Removed.
12718         (wisent-set-item-numbers): Removed.  Code moved into
12719         `wisent-parse-grammar'.
12720
12721         (wisent-clear-properties): New function.  Clear all Wisent's symbol
12722         properties.
12723
12724         (wisent-parse-grammar): Redesigned so setting precedence level and
12725         associativity of built-in token `error' now works.
12726
12727 2002-02-06  Eric M. Ludlam  <zappo@gnu.org>
12728
12729         * tests/test.c: Added bit fields.
12730
12731         * semantic-util.el (semantic-token-add-extra-spec):
12732         Removed unused local variable esl
12733         (semantic-token->text-functions): Renamed
12734         `semantic-emacs-lisp-nonterminal' to
12735         (semantic-prin1-nonterminal): Renamed.
12736
12737         * semantic-util.el (semantic-token-extra-specs): New fcn
12738         (semantic-token-add-extra-spec): New fcn
12739         (semantic-token->text-functions): Added `semantic-emacs-lisp-nonterminal'.
12740         (semantic-emacs-lisp-nonterminal): New fcn
12741
12742         * semantic.el (semantic-bovinate-show):
12743         Added ?a for abort.  Quit now exits properly.
12744
12745         * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf 1.57
12746         (semantic-c-reconstitute-template): New fcn
12747         (semantic-c-keyword-table): Removed extra TEMPLATE token.
12748         (semantic-c-nonterminal-template, semantic-c-nonterminal-template-specifier)
12749         (semantic-c-template-string-body, semantic-c-template-string)
12750         (semantic-c-concise-prototype-nonterminal): New functions
12751         (semantic-default-c-setup): Add `concise-prototype-nonterminal' override.
12752
12753         * c.bnf (typesimple): Add template specifiers to the extra spec
12754         (opt-template-equal): Use template-specifier-type, not the list.
12755         (template-type): Concat in the type.  Indentation.
12756         (opt-bits): Use new number terminal.
12757
12758 2002-02-05  David Ponce  <david@dponce.com>
12759
12760         * wisent/wisent.texi: Following Eric's patch ;-)
12761
12762         * wisent/wisent.texi: Applied Eric's patch.
12763
12764 2002-02-04  David Ponce  <david@dponce.com>
12765
12766         * wisent/wisent-comp.el (wisent-print-grammar):
12767         The last rule was not printed.
12768
12769         (wisent-no-xstarts-flag): New flag.  Non-nil means disable extra start
12770         symbols.  That is don't add extra start rules to the grammar.  This is
12771         useful to compare the Wisent's generated automaton with the Bison's
12772         one.
12773
12774         (wisent-parse-grammar): Don't add extra start rules to the grammar if
12775         `wisent-no-xstarts-flag' is non-nil.
12776
12777         * wisent/wisent-awk.el: Typo in the one-line summary.
12778
12779         * wisent/wisent.el (wisent-parse):
12780         Made ERROR reporting function optional.  Defaults to
12781         standard function `error'.
12782
12783         * wisent/wisent.texi: Synchronized with latest code changes.
12784
12785         (Writing a Lexer, Report errors): New nodes.
12786
12787 2002-02-02  David Ponce  <david@dponce.com>
12788
12789         * wisent/wisent-comp.el (wisent-total-conflicts):
12790         No warning when there is no conflict!
12791
12792 2002-02-01  David Ponce  <david@dponce.com>
12793
12794         * wisent/wisent.el:
12795         New major version rewrote from scratch based on Bison's 1.28 & 1.31 C
12796         sources.  The parser generator in now auto-loaded from file
12797         wisent-comp.el.
12798
12799         * wisent/wisent-awk.el: GNU AWK grammar Elisp code.
12800
12801         * wisent/wisent-awk.bnf: GNU AWK grammar to torture Wisent.
12802
12803         * wisent/wisent-comp.el:
12804         New implementation of the parser generator based on Bison's 1.28 &
12805         1.31 C sources.
12806
12807 2002-01-19  Eric M. Ludlam  <zappo@gnu.org>
12808
12809         * c.bnf (TEMPLATE): Removed duplicate definition.
12810         (opt-symbol): New rule
12811         (classsubparts): Use opt-symbol to help QT slot definition thingies.
12812         (opt-class-parents): Added optional template specifier
12813         (opt-class-protection): New rule
12814         (class-protection): Removed `EMPTY'
12815         (namespacesubparts): Use opt-class-protection
12816         (typesimple): Added template specifier.  Added bodyless class/struct.
12817         (template): Reconstitute the template definition.
12818         (template-specifier, tempalate-specifier-type-list):
12819         (template-var, opt-template-specifier, template-type): Update to
12820         return something useful.
12821
12822         * semantic-bnf.el (semantic-bnf-generate-and-load):
12823         Bind `inhibit-modification-hooks'.
12824
12825 2002-01-16  David Ponce  <david@dponce.com>
12826
12827         * wisent/wisent.el (wisent-pack-grammar):
12828         Correctly compute the default precedence level
12829         of rule.  That is the precedence level of the last terminal in it.
12830
12831         (wisent-add-action): Fixed default resolution of shift/reduce
12832         conflicts.
12833
12834 2002-01-15  David Ponce  <david@dponce.com>
12835
12836         * semantic-bnf.el (semantic-bnf-to-lalr-EXPANDTHING):
12837         No more bind `$regionI'
12838         variables.  Use existing ones instead.
12839
12840 2002-01-14  David Ponce  <david@dponce.com>
12841
12842         * wisent/wisent-java-tags.el (wisent-java-parser-tables): Regenerated.
12843
12844         * wisent/wisent.texi (@defun wisent-compile-grammar):
12845         Removed optional argument STREAM.
12846         Doc fixes.
12847         (@defun wisent-parse): Doc fixes.
12848
12849         * wisent/wisent.el:
12850         Moved doc from header comments into file wisent.texi.
12851
12852         (wisent-reduce-action): Explicitly bind `$regionI' variables.
12853
12854         (wisent-build-tables): Removed optional argument STREAM.
12855         (wisent-process-grammar): Ditto.
12856         (wisent-compile-grammar): Ditto.
12857
12858         (wisent-process-grammar, wisent-compile-grammar, wisent-nerrs,
12859         wisent-lookahead, wisent-errok, wisent-clearin, wisent-parse): Updated
12860         doc string.
12861
12862 2002-01-08  David Ponce  <david@dponce.com>
12863
12864         * wisent/wisent.texi: Initial revision.
12865
12866 2001-12-19  David Ponce  <david@dponce.com>
12867
12868         * wisent/wisent-bovine.el: Synchronized with semantic.el.
12869
12870         (wisent-collect-unmatched-syntax): Moved.
12871
12872         (wisent-bovinate-nonterminals): Call `wisent-collect-unmatched-syntax'
12873         via `wisent-skip-token-hook'.
12874
12875         (wisent-bovinate-from-nonterminal-full):  Moved. Doc string fixes.
12876         (wisent-bovinate-region-until-error): Ditto.
12877
12878         (wisent-bovinate-toplevel): Synchronized with latest
12879         `semantic-bovinate-toplevel' code.
12880
12881 2001-12-18  Richard Y. Kim <ryk@ap.com>
12882
12883         * semantic.el:
12884         Created semantic-flex-tokens variable to document the token types returend by semantic-flex.
12885
12886 2001-12-18  David Ponce  <david@dponce.com>
12887
12888         * wisent/wisent-java.el, wisent/wisent-java-tags.el (wisent-java-parser-tables):
12889         BNF recompiled.
12890
12891         * wisent/wisent-java.bnf (goal):
12892         `wisent-bovinate-toplevel' requires to return result reversed.
12893         (formal_parameter_modifier_opt): new nonterminal.
12894         (formal_parameter): Use it.
12895
12896         * wisent/wisent-java-tags.bnf: More comments.
12897         Reordered rules plus small fixes.
12898
12899         * wisent/wisent.el (Commentary): Fixed STARTS definition.
12900
12901 2001-12-18  Eric M. Ludlam  <zappo@gnu.org>
12902
12903         * tests/test.cpp: Added templates.
12904         Added const * const example.
12905
12906         * semantic.el (semantic-bovinate-toplevel):
12907         When doing a full reparse, lex the
12908         buffer before clearing the cache.  If an error occurs, the cache will
12909         be safe.
12910
12911         * semantic-c.el: New c.bnf supporting templates.
12912         (semantic-c-nonterminal-protection): If type type of a type is
12913         unknown in a parent, specify an unknown protection.
12914
12915         * c.bnf (TEMPLATE): New token
12916         (declaration): Added template
12917         (template, template-specifier, template-specifier-type-list,
12918          template-var, opt-template-equal, template-type,
12919          template-definition): New rules
12920         (typeformbase): Added tempalte specified type and class :: types.
12921
12922         * semantic-make.el: New make.bnf
12923
12924         * make.bnf: Removed parens and $ from symbol syntax types.
12925         Added IFEQ and IFNEQ tokens
12926         Added BACKSLASH and DOLLAR tokens
12927         Added IFEQ and IFNEQ rule matches
12928         Added $(VAR) types to expression.
12929         Support backslash terminated lines for variables.
12930
12931 2001-12-15  David Ponce  <david@dponce.com>
12932
12933         * wisent/wisent-java-tags.bnf, wisent/wisent-java-tags.el: New file.
12934
12935         * wisent/wisent.el (wisent-lookahead):
12936         New variable.  Hold the lookahead lexical token
12937         after parse error.
12938         (wisent-parse): Use the above.
12939
12940         * wisent/wisent-bovine.el (wisent-lexer-lookahead): New variable.
12941         (wisent-lexer-wrapper): Use the above to push the lookahead
12942         token back in the lexical input stream.
12943
12944         (wisent-unmatched-syntax): New variable.
12945         (wisent-collect-unmatched-syntax): Use the above.
12946         (wisent-bovinate-nonterminals):  Push unmatched lookahead tokens in
12947         the unmatched syntax stream.  Minor performance enhancement.
12948
12949         (wisent-bovinate-from-nonterminal-full):  Use 1 as default depth for
12950         `semantic-flex'.  Reverse the result list.
12951
12952         (wisent-bovinate-region-until-error): Reverse the result list.
12953
12954         (wisent-bovinate-toplevel): [full parse] Don't clear the unmatched
12955         cache after parsing!  Reverse the result list.
12956
12957         * semantic-bnf.el (semantic-bnf-to-lalr-EXPANDTHING):
12958         Fixed missing quote.
12959
12960 2001-12-15  Eric M. Ludlam  <zappo@gnu.org>
12961
12962         * tests/test.make: New test for makefile things.
12963
12964 2001-12-12  Eric M. Ludlam  <zappo@gnu.org>
12965
12966         * semantic.el:
12967         Small language changes to doc strings suggested by Alex Schroeder <alex@gnu.org>
12968
12969         * semantic.texi:
12970         Small language changes suggested by Alex Schroeder <alex@gnu.org>
12971
12972 2001-12-08  Eric M. Ludlam  <zappo@gnu.org>
12973
12974         * semantic-util-modes.el (semantic-auto-parse-bovinate): Use
12975         `semantic-flex-unterminated-syntax-end-function' instead of
12976         `semantic-flex-unterminated-syntax-throw-symbol' to throw lexical issues.
12977
12978         * semantic.el (semantic-flex-unterminated-syntax-end-function):
12979         New variable
12980         (semantic-flex): Use above var instead of old throw variable.
12981
12982 2001-12-07  David Ponce  <david@dponce.com>
12983
12984         * wisent/wisent-bovine.el (wisent-bovinate-toplevel): Check if
12985         `semantic-before-toplevel-bovination-hook' allow to parse.
12986         When doing a full re-parse clear the cache just before setting the new
12987         one.  This way, if an error occurs, we can capture it, and leave the
12988         old state behind.
12989
12990         * senator.el (senator-mode-menu-item-format):
12991         New option.  Format of menu item
12992         labels in the "Modes" menu when displaying through a window system.
12993
12994         (senator-mode-menu-item-format-tty): New option.  Format of menu item
12995         labels in the "Modes" menu when using a text-only terminal.
12996
12997         (senator-build-mode-menu-items): Use the above options.  On window
12998         system minor mode labels as now simple text items.  Emacs displays
12999         them as menu titles in bold face.
13000
13001 2001-12-07  Eric M. Ludlam  <zappo@gnu.org>
13002
13003         * semantic-c.el (semantic-toplevel-c-bovine-table, semantic-c-keyword-table):
13004         New c.bnf
13005         (semantic-c-reconstitute-token): For functions, add methodconst, and pure-virtual
13006
13007         * c.bnf (UNDERP, UNDERUNDERP): Fix typo in summary
13008         (opt-stars): Add opt-starmod
13009         (opt-starmod, STARMOD): New rule
13010         (func-decl): Un-splic $7 in  match2
13011         (variablearg): Let varname handle stars and refs.
13012         (arg-list): Explicit (void) match added
13013         (fun-or-proto-end): Add pure-virtual case return.
13014
13015         * Project.ede: Update version
13016
13017         * semantic-make.el: New make.bnf
13018
13019         * make.bnf: Added ifdef, and ifndef tokens.  (Oy)
13020
13021         * make.bnf: Added ifdef, and ifndef commands.
13022
13023         * semantic.el (semantic-before-toplevel-bovination-hook):
13024         New hook suggested by Klaus Berndl.
13025         (semantic-bovinate-toplevel): Do not parse anything if above hook returns nil.
13026         When a full reparse is needed, do not clear the cache till after the
13027         parse has happened, and everything was successful.
13028
13029 2001-12-04  Eric M. Ludlam  <zappo@gnu.org>
13030
13031         * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf
13032         (semantic-c-nonterminal-children): New override fcn
13033         (semantic-default-c-setup): Add above override.
13034
13035         * c.bnf (extern-c): Add quotes to the "C" string regex.
13036
13037         * semanticdb.el (semanticdb-default-save-directory): New variable.
13038         (semanticdb-project-database): Added `reference-directory' slot.
13039         (semanticdb-create-database): Simplified if to existence of the found DB
13040         (semantic-get-database): Use `semantic-file-loaded-p'
13041         (semantic-file-loaded-p): Moved.  Use eieio call.
13042         (semanticdb-file-table): Tables use file name w/out path.
13043         (semanticdb-full-filename): Tables use file name w/out path.
13044         (semanticdb-write-directory-p): Use new reference directory for tables.
13045         (semanticdb-cache-filename): New function to calc filename of a DB.
13046         (semanticdb-semantic-init-hook-fcn): use above Fcn for directory name.
13047         Always set the reference directory slot in the DB.
13048         Specify the file of new tables as the file name sans directory.
13049
13050         * semantic-util-modes.el (semantic-auto-parse-bovinate):
13051         Enable syntax error `throw'ing.  Catch
13052         those errors, and do not pester the user who is probably in the
13053         middle of thinking important thoughts, and is uninterested in having
13054         Emacs complain about such things.
13055
13056         * semantic.el (semantic-flex-unterminated-syntax-throw-symbol):
13057         New variable
13058         (semantic-flex): `throw' an error for incomplete syntax when above is non-nil.
13059
13060         * working.el (working-message):
13061         Only display a canned message for the first entry.
13062         (working-status-forms): Clear mode line when using modeline mode.
13063         (working-status-timeout): Clear mode line when using modeline mode.
13064
13065 2001-12-03  David Ponce  <david@dponce.com>
13066
13067         * semantic-util-modes.el (semantic-auto-parse-timer):
13068         Moved before first use.
13069         (semantic-auto-parse-idle-time): Added `:set' clause to re-setup the
13070         `semantic-auto-parse-timer' when the idle time value is changed.
13071
13072 2001-12-03  Eric M. Ludlam  <zappo@gnu.org>
13073
13074         * semantic.el: Updated version to 1.4 beta 13
13075
13076 2001-11-30  David Ponce  <david@dponce.com>
13077
13078         * working.el (append global-mode-string):
13079         Quoted `working-mode-line-message'.
13080
13081 2001-11-30  Eric M. Ludlam  <zappo@gnu.org>
13082
13083         * semantic-util-modes.el (global-semantic-show-dirty-mode): Doc fix.
13084         (semantic-show-dirty-mode-setup): Doc fix.
13085         Use `semantic-make-local-hook' alias.
13086         (global-semantic-show-unmatched-syntax-mode): Doc fix
13087         (semantic-show-unmatched-syntax-mode-setup):
13088         Use `semantic-make-local-hook' alias.
13089         (semantic-auto-parse-working-in-modeline-flag): New variable
13090         (global-semantic-auto-parse-mode): Doc Fix
13091         (semantic-auto-parse-bovinate): Doc fix.
13092         Use the mode-line to display working messages when auto-parsing.
13093         (semantic-auto-parse-mode-setup): Doc Fix
13094         (semantic-auto-parse-mode): Doc Fix
13095         (global-semantic-summary-mode): Doc Fix
13096         (semantic-summary-mode-setup): Doc Fix
13097         (semantic-summary-mode): Doc Fix
13098
13099         * working.el (working-message):
13100         Added sit-for to help force modeline updates.
13101
13102         * semantic-c.el: New c.bnf fix for include filename.
13103
13104         * c.bnf (filename): Fixed OLE to get the string from filename prefix.
13105
13106         * working.el:
13107         If `global-mode-string' is available, use it as the location to
13108         display mode-line based working messages.
13109
13110         * senator.el (senator-minor-mode-setup):
13111         Use `semantic-make-local-hook' alias.
13112
13113         * semantic-imenu.el (semantic-create-imenu-index):
13114         Use `semantic-make-local-hook' alias.
13115
13116         * semantic.el (semantic-make-local-hook): New alias
13117         (semantic-set-toplevel-bovine-cache): Use this alias.
13118
13119         * semantic-util-modes.el (semantic-auto-parse-bovinate):
13120         Enable quiting during a parse.
13121
13122         * semantic-load.el: Add .bnf as a speedbar extension.
13123         New variable `semantic-load-turn-useful-things-on'.
13124         Consider which-func to be non-useful.
13125         Consider show-dirty-mode non-useful.
13126         Do not load semantic-sb for speedbar.  This already happens.
13127
13128         * semantic-util.el (semantic-bucketize):
13129         Remove ref to speedbar in doc string.
13130
13131         * semanticdb.el (semanticdb-semantic-init-hook-fcn):
13132         When a table isn't valid, do not
13133         force a parse.  This will happen in time.
13134
13135         * semantic-bnf.el:
13136         Changed how speedbar support for BNF files were added.
13137
13138         * semantic-c.el: New c.bnf supporting float.h.
13139
13140         * c.bnf:
13141         Added support for float.h, where `float' was snagged as a keyword.
13142
13143 2001-11-26  David Ponce  <david@dponce.com>
13144
13145         * semantic.el (semantic-flex):  Handle broken strings.
13146
13147         * senator.el (senator-minor-mode-name):
13148         Defined as constant.  Moved just before it
13149         is first used.
13150         (senator-minor-mode-isearch-suffix): Ditto.
13151
13152         (senator-minor-mode-on-hook): Removed.
13153         (senator-minor-mode-off-hook): Removed.
13154         (senator-minor-mode): Don't run on/off mode hooks.
13155
13156         (senator-register-mode-menu-entry["Summaries"]): Added.
13157         (senator-register-mode-menu-entry"[Which Function"]): Added when
13158         'which-func feature is available.
13159
13160         * semantic-util-modes.el (semantic-propertize):
13161         New function.  Return a copy of STRING with
13162         text properties added.
13163
13164         (semantic-mode-line-prefix): New option.  Prefix added to minor mode
13165         indicators in the mode line.  The default value use
13166         `semantic-propertize' to have this string displayed in 'bold face on
13167         Emacs 21 :-)
13168
13169         (semantic-mode-line-update): Skip empty strings.  Use
13170         `semantic-mode-line-prefix'.
13171
13172         (semantic-show-dirty-mode-on-hook): Removed.
13173         (semantic-show-dirty-mode-off-hook): Removed.
13174         (semantic-show-dirty-mode): Don't run on/off mode hooks.
13175
13176         (semantic-show-unmatched-syntax-mode-on-hook): Removed.
13177         (semantic-show-unmatched-syntax-mode-off-hook): Removed.
13178         (semantic-show-unmatched-syntax-mode): Don't run on/off mode hooks.
13179
13180         (semantic-auto-parse-mode-on-hook): Removed.
13181         (semantic-auto-parse-mode-off-hook): Removed.
13182         (semantic-auto-parse-mode): Don't run on/off mode hooks.
13183
13184         (global-semantic-summary-mode): New function.  Toggle global use of
13185         `semantic-summary-mode'.
13186         (global-semantic-summary-mode): New variable.  If non-nil enable
13187         global use of summary mode.
13188         (semantic-summary-mode-hook): New hook.  Run at the end of function
13189         `semantic-summary-mode'.
13190         (semantic-summary-mode-map: New variable.  Keymap for summary minor
13191         mode.
13192         (semantic-summary-mode: New variable.  Non-nil if summary minor mode
13193         is enabled.
13194         (semantic-summary-mode-setup: New function.  Setup
13195         `semantic-summary-mode'.
13196         (semantic-summary-mode): New function.  Minor mode to show useful
13197         things about tokens in echo area.
13198         (semantic-add-minor-mode[semantic-summary-mode]): Added.
13199
13200         * semantic-load.el: Added autoloads for `semantic-summary-mode'.
13201         (when semantic-load-turn-everything-on): Use
13202         `global-semantic-summary-mode'.
13203
13204 2001-11-26  Richard Y. Kim <ryk@ap.com>
13205
13206         * semantic.texi: Added "Lexer Overview" and "Lexer Output" nodes.
13207
13208 2001-11-23  Richard Y. Kim <ryk@ap.com>
13209
13210         * semantic.texi: Fixed a typo in last checkin.  Sorry.
13211
13212         * semantic.texi: Created "Overview" and "Semantic Components" chapters.
13213
13214 2001-11-22  Eric M. Ludlam  <zappo@gnu.org>
13215
13216         * semantic-sb.el (semantic-fetch-dynamic-bovine):
13217         Set out to t when there is no parser available.
13218
13219 2001-11-21  David Ponce  <david@dponce.com>
13220
13221         * senator.el (senator-minor-mode-name): Use "n" as default value.
13222         (senator-minor-mode-isearch-suffix): Use "i" as default value.
13223
13224         (senator-jump-regexp): Added autoload cookie.
13225
13226         (senator-register-mode-menu-entry["Senator"]): No more use
13227         `senator-mode'.
13228
13229         (senator-status): Renamed from `senator-mode'.
13230
13231         (senator-mode-line-update): Renamed from `senator-show-status'.  Use
13232         `senator-status'.  Use `semantic-mode-line-update' instead of
13233         `force-mode-line-update'.  Removed "Emacs 21 goodies".
13234
13235         (senator-minor-mode-setup): Removed call to `senator-show-status'.
13236
13237         (senator-minor-mode): Use `senator-mode-line-update' instead
13238         of `force-mode-line-update'.
13239         (senator-isearch-toggle-semantic-mode): Ditto.
13240         (senator-isearch-mode-hook): Ditto.
13241
13242         (semantic-add-minor-mode[senator-minor-mode]): Use 'senator-status.
13243
13244         (semantic-add-minor-mode[senator-isearch-semantic-mode]): Added.
13245
13246         * semantic-util-modes.el (semantic-update-mode-line):
13247         New option.  If non-nil show enabled
13248         minor modes in the mode line.
13249
13250         (semantic-minor-modes-status): New variable.  String displayed in the
13251         mode line to show the Semantic minor modes which are locally enabled.
13252
13253         (semantic-minor-mode-alist): New variable.  Alist saying how to show
13254         Semantic minor modes in the mode line.a
13255
13256         (semantic-mode-line-update): New function.  Update display of Semantic
13257         minor modes in the mode line.
13258
13259         (semantic-add-minor-mode): Update `semantic-minor-mode-alist'.  Lazily
13260         install `semantic-minor-modes-status' as a dummy minor mode used to
13261         show Semantic minor modes status in the mode line.
13262
13263         (semantic-show-dirty-mode):  Use `semantic-mode-line-update'.
13264         (semantic-show-unmatched-syntax-mode): Ditto.
13265         (semantic-auto-parse-mode): Ditto.
13266
13267         (semantic-add-minor-mode[semantic-show-dirty-mode]): Use "d" to
13268         indicate that the minor mode is enabled.
13269         (semantic-add-minor-mode[semantic-show-unmatched-syntax-mode]): Use
13270         "u" to indicate that the minor mode is enabled.
13271         (semantic-add-minor-mode[semantic-auto-parse-mode]): Use "a" to
13272         indicate that the minor mode is enabled.
13273
13274         * semanticdb.el (global-semanticdb-minor-mode):  Fixed bad setting of
13275         `semanticdb-global-mode'.
13276
13277 2001-11-19  Richard Y. Kim <ryk@ap.com>
13278
13279         * semantic.texi:
13280         Added comments on semantic-flex and in "document" node.
13281         This is only the first of many additions to be made in the future.
13282
13283 2001-11-17  Eric M. Ludlam  <zappo@gnu.org>
13284
13285         * tests/test.cpp: Added extern "C" samples.
13286
13287 2001-11-17  David Ponce  <david@dponce.com>
13288
13289         * senator.el (senator-last-local-item-name): Removed.
13290         (senator-last-global-item-name): Removed.
13291         (senator-new-menu-item-name): Removed.
13292
13293         (senator-modes-menu-cache): New variable.  Cache the last computed
13294         value of the "Modes" sub-menu.
13295
13296         (senator-register-command-menu): Renamed from
13297         `senator-register-mode-menu-item'.  Register and return a command menu
13298         specification instead of a pre-build menu item.
13299         (senator-register-mode-menu-entry): Clear the cached menu.  Register
13300         specifications instead of actual menu items.  Thus the menu building
13301         is clearly a separated task.
13302
13303         (senator-base-local-label): New constant.  Default name of the menu
13304         item used to change minor mode buffer local setting.
13305         (senator-base-global-label): New constant.  Default name of the menu
13306         item used to change minor mode global setting.
13307         (senator-uniquify-count): New variable.  Used to generate unique menu
13308         item names.
13309
13310         (senator-build-command-menu-item): New function.  Return a command
13311         menu item with an unique name.
13312
13313         (senator-build-mode-menu-items): With window system display minor mode
13314         labels as a disabled menu items to get a consistent look of the
13315         "Modes" menu both in Emacs and XEmacs.  On text-only terminal no more
13316         use the hard coded strings " (In this buffer)" and " (Globally)" but
13317         the corresponding default name constant.
13318
13319         (senator-build-modes-menu): Compute the value of the menu only if
13320         necessary.  Return a cached value when available.
13321         Use "--" instead of single "-" for menu separator.  The "Emacs Lisp
13322         Reference Manual" says that "separator-type is a string starting with
13323         two or more dashes".
13324
13325         (senator-menu-bar): Use "--" instead of single "-" for menu separator.
13326
13327         (semantic database menu item): When selected show if the database is
13328         persistent (saved on disk) or only available for the current session.
13329
13330 2001-11-17  Eric M. Ludlam  <zappo@gnu.org>
13331
13332         * semantic-texi.el (semantic-default-texi-setup): Added autoload
13333
13334         * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf
13335         (semantic-expand-c-nonterminal): Expand batched extern "c" entries.
13336         (semantic-default-c-setup): Added autoload
13337
13338         * c.bnf (declaration): Added extern-c entry
13339         (extern-c-contents, extern-c): new rules
13340
13341         * semantic-bnf.el (bnf-mode, semantic-bnf-mode): Added autoload
13342
13343         * semantic-chart.el (semantic-chart-nonterminals-by-token):
13344         Added autoload
13345         (semantic-chart-database-size): Added autoload
13346         (semantic-chart-nonterminal-complexity-token): Added autoload
13347
13348         * semanticdb.el (global-semanticdb-minor-mode): Added autoload
13349
13350         * semantic-el.el (semantic-default-elisp-setup): Added autoload
13351
13352         * semantic-java.el (semantic-default-java-setup): Added autoload
13353
13354         * semantic-make.el (semantic-default-make-setup): Added autoload
13355
13356         * semantic-scm.el (semantic-default-scheme-setup): Added autoload
13357
13358         * semantic-skel.el (semantic-default-skel-setup): Fixed typo in name.
13359
13360 2001-11-14  David Ponce  <david@dponce.com>
13361
13362         * semantic-sb.el (semantic-fetch-dynamic-bovine):
13363         Fixed.  Didn't get the tokens
13364         returned by `semantic-bovinate-toplevel'.
13365
13366         * senator.el (senator-menu-item):  Moved before it is first used.
13367
13368         (senator-last-local-item-name): New variable.
13369         (senator-last-global-item-name): Ditto.
13370         (senator-registered-mode-entries): Ditto.
13371         (senator-registered-mode-settings): Ditto.
13372
13373         (senator-new-menu-item-name):  New function.  Return a new unique
13374         generated menu item name.
13375
13376         (senator-register-mode-menu-item):  New function.  Register a minor
13377         mode menu item.
13378         (senator-register-mode-menu-entry): New function.  Register a minor
13379         mode menu entry.
13380         (senator-build-mode-menu-items): New function.  Return menu items for
13381         a registered minor mode.
13382         (senator-build-modes-menu): New function.  Build and return the
13383         "Modes" menu.
13384
13385         (senator-global-mode-options): Removed.
13386         (senator-global-mode-options-save): Renamed to
13387         `senator-save-registered-mode-settings'.
13388
13389         (open code): Added registration of Semantic minor modes.
13390
13391         (senator-menu-bar):  Use `senator-build-modes-menu' to dynamically
13392         build the "Modes" sub-menu based on registered minor modes.
13393
13394 2001-11-14  Eric M. Ludlam  <zappo@gnu.org>
13395
13396         * semantic.texi (miscellaneous): Renamed
13397         (minor modes): Added variable options for all the modes listed.
13398
13399         * semantic-util-modes.el: (semantic-show-dirty-mode-*hook),
13400         (semantic-show-unmatched-syntax-mode-*hook),
13401         (semantic-unmatched-syntax-face),
13402         (semantic-auto-parse-mode-*hook): Add * as a user option.
13403
13404 2001-11-13  Eric M. Ludlam  <zappo@gnu.org>
13405
13406         * semantic-util-modes.el (semantic-show-unmatched-syntax):
13407         Remove message about no bad syntax.
13408
13409 2001-11-12  David Ponce  <david@dponce.com>
13410
13411         * senator.el (senator-global-mode-options):
13412         New constant.  List of Semantic minor
13413         modes which can be enabled globally.
13414
13415         (senator-global-mode-options-save): New command.  Save current values
13416         of `senator-global-mode-options' using Custom."
13417
13418         (senator-menu-bar):  New menu items in the "Modes" sub-menu to toggle
13419         minor modes globally and save these settings via custom.
13420
13421         * semanticdb.el (global-semanticdb-minor-mode):
13422          Set `semanticdb-global-mode' to the
13423         minor mode status.
13424
13425 2001-11-10  Eric M. Ludlam  <zappo@gnu.org>
13426
13427         * semantic.texi (miscellaneous):
13428         Added `[global-]semantic-auto-parse-mode'.
13429
13430 2001-11-10  David Ponce  <david@dponce.com>
13431
13432         * semantic.el (semantic-rebovinate-token):
13433         Removed specific error handler.
13434
13435         (semantic-bovinate-nonterminal): Added general error handler.
13436
13437 2001-11-08  Eric M. Ludlam  <zappo@gnu.org>
13438
13439         * semantic-make.el: New make.bnf 1.9
13440
13441         * make.bnf (Makefile): Handle blank lines
13442
13443         * Project.ede: Updated the web directory
13444
13445         * senator.el, semantic-load.el, semantic-imenu.el, semantic.el:
13446         Removed all ^M line endings.
13447
13448         * NEWS: Added new news.
13449
13450 2001-11-07  David Ponce  <david@dponce.com>
13451
13452         * wisent/wisent-bovine.el (wisent-collect-unmatched-syntax):
13453         New function.
13454         `wisent-skip-token-hook' hook function to add a lexical token to the
13455         cache of unmatched tokens.
13456
13457         (wisent-bovinate-nonterminals): Use it to collect unmatched syntax
13458         tokens.
13459
13460         (wisent-bovinate-toplevel):  Clear the cache of unmatched syntax
13461         tokens after a partial re-parse.
13462
13463         * wisent/wisent.el (wisent-skip-token-hook):
13464         New variable.  Hook run when the parser
13465         skips a lexical token.
13466
13467         (wisent-skip-token): Run `wisent-skip-token-hook'.
13468         (wisent-skip-block): Ditto.
13469         (wisent-parse): Ditto.
13470
13471         (wisent--maxrhs, wisent-set-max-rhs): Removed.  Unused.
13472
13473         Checkdoc fixes.
13474
13475         * semanticdb.el (semanticdb-toggle-global-mode):
13476         No more call `semanticdb-kill-hook'.
13477         When `semanticdb-write-directory-p' returns nil, that is indicating to
13478         not write the DB on disk, overlays were removed from the token cache
13479         by `semanticdb-kill-hook' and not recreated.
13480
13481         * semantic-util-modes.el (semantic-auto-parse-interval): Removed.
13482
13483         (semantic-auto-parse-idle-time): New variable.  Time in seconds of
13484         idle time before auto-reparse.
13485
13486         (semantic-auto-parse-timer): No more buffer local.  Now an idle timer.
13487
13488         (semantic-auto-parse-bovinate): Moved.  Does nothing if
13489         `semantic-auto-parse-mode' is not enabled.
13490
13491         (semantic-auto-parse-enabled-p): Moved.  Also check
13492         `semantic-auto-parse-mode'.
13493
13494         (semantic-auto-parse-triggering-delay): Removed.
13495         (semantic-auto-parse-change-hook): Removed.
13496         (semantic-auto-parse-stop-after-parse): Removed.
13497
13498         (semantic-auto-parse-setup-timer): New function.  Lazy initialization
13499         of the auto parse idle timer.
13500         (semantic-auto-parse-mode-setup): Use it.
13501
13502 2001-11-02  David Ponce  <david@dponce.com>
13503
13504         * semantic.el (semantic-set-toplevel-bovine-cache):
13505         Made `after-change-functions'
13506         hook local using `make-local-hook' before using `add-hook' with the
13507         LOCAL flag set.
13508
13509         * semantic-imenu.el (semantic-create-imenu-index): Made
13510         `semantic-before-toplevel-cache-flush-hook' and
13511         `semantic-clean-token-hooks' locals using `make-local-hook' before
13512         using `add-hook' with the LOCAL flag set.
13513
13514         * senator.el (senator-menu-bar): Added auto parse to "Modes" sub-menu.
13515
13516         (senator-minor-mode-setup): Made
13517         `semantic-before-toplevel-cache-flush-hook' and
13518         `semantic-clean-token-hooks' locals using `make-local-hook' before
13519         using `add-hook' with the LOCAL flag set.
13520
13521         * semantic-load.el:
13522         Added autoloads for `semantic-auto-parse-mode' minor mode.
13523         Turn on `global-semantic-auto-parse-mode' when
13524         `semantic-load-turn-everything-on' is non-nil.
13525
13526         * semantic-util-modes.el:
13527         New `semantic-auto-parse-mode' minor mode to auto reparse buffer.
13528
13529         (semantic-auto-parse-no-working-message): New variable.  Non-nil
13530         disable display of working message during auto-parse.
13531         (semantic-auto-parse-interval): New variable.  Time in seconds between
13532         buffer change and reparse.
13533         (semantic-auto-parse-max-buffer-size): New variable.  Maximum size in
13534         bytes of buffers automatically reparsed.
13535         (semantic-auto-parse-timer): New variable.  Timer used to schedule
13536         automatic reparse.
13537         (semantic-auto-parse-bovinate): New function.  Reparse the current
13538         buffer.
13539         (semantic-auto-parse-enabled-p): New function.  Return non-nil if
13540         auto-parse is enabled for this buffer.
13541         (semantic-auto-parse-triggering-delay): New function.  Return the time
13542         in seconds before auto-parse triggering.
13543         (semantic-auto-parse-change-hook): New function.  Hook run to schedule
13544         the auto-parse task when Semantic detects a change in the current
13545         buffer.
13546         (semantic-auto-parse-stop-after-parse): New function.  Hook run to
13547         stop scheduled auto-parse task after Semantic changed the token cache.
13548         (global-semantic-auto-parse-mode): New variable.  If non-nil enable
13549         global use of auto-parse mode.
13550         (global-semantic-auto-parse-mode): New function.  Toggle global use of
13551         `semantic-auto-parse-mode'.
13552         (semantic-auto-parse-mode-hook): New variable.  Hook run at the end of
13553         function `semantic-show-dirty-mode'.
13554         (semantic-auto-parse-mode-on-hook): New variable.  Hook run when
13555         auto-parse minor mode is turned on.
13556         (semantic-auto-parse-mode-off-hook): New variable.  Hook run when
13557         auto-parse minor mode is turned off.
13558         (semantic-auto-parse-mode): New variable.  Non-nil if auto-parse minor
13559         mode is enabled.
13560         (semantic-auto-parse-mode-setup): New function.  Setup
13561         `semantic-auto-parse-mode'.
13562         (semantic-auto-parse-mode): New function.  Minor mode to auto parse
13563         buffer following changes.
13564
13565 2001-10-31  Eric M. Ludlam  <zappo@gnu.org>
13566
13567         * semantic-util.el (semantic-prototype-nonterminal-default):
13568         Support reference &
13569         (semantic-uml-token-or-string-to-string): Support pointers *, and references &
13570
13571         * working.el (working-mode-line-update): New compat alias
13572         (working-mode-line-message, working-use-echo-area-p): New vars
13573         (working-message): Renamed to working-message-echo.
13574         New function that obeys working-use-echo-area-p.
13575         (working-status-forms): Always reset working-mode-line-message
13576         (working-status-timeout): Resest working-mode-line-message
13577         (working-verify-mode-line): New test function.
13578
13579         * semantic-sb.el (semantic-fetch-dynamic-bovine):
13580         If a file isn't in semanticdb, load
13581         it and bovinate it.
13582
13583 2001-10-30  Eric M. Ludlam  <zappo@gnu.org>
13584
13585         * semanticdb.el (semanticdb-semantic-init-hook-fcn):
13586         For backward compatibility with
13587         old cache files, handle the case when the unmatched-syntax slot
13588         is not bound.
13589
13590 2001-10-28  Eric M. Ludlam  <zappo@gnu.org>
13591
13592         * semanticdb.el (semanticdb-table): Add unmatched-syntax slot.
13593         (semanticdb-semantic-init-hook-fcn): Set the unmatched syntax cache.
13594         (semanticdb-post-bovination-unmatched-syntax): New hook fcn.
13595         (semanticdb-hooks): Set our init hook into `semantic-init-db-hooks'.
13596
13597         * semantic.el (semantic-init-db-hooks):
13598         New hook variable for semanticdb.
13599         (semantic-new-buffer-fcn): Call semantic-init-db-hooks before other hooks.
13600         (semantic-set-unmatched-syntax-cache): New function for semanticdb.
13601         (semantic-bovinate-nonterminals): Indent change.
13602
13603         * semantic-load.el: Enable show-unmatched-syntax-mode by default.
13604
13605         * tests/test.cpp (class3): Add local var.
13606         (method3_for_class3): Added class with parent decl-mods.
13607
13608         * tests/test.c (dont_show_function): Text if 0 code.
13609         (vara4): Test casting in an expression.
13610         (funk3): Added interesting conditions to call to fun3
13611
13612         * semantic.texi (Local Context):
13613         Removed old context analysis functions.
13614         Added xref to to new context analysis section.
13615
13616         * semantic-analyze.el (semantic-analyze-token-type):
13617         New function extraced from
13618         'semantic-analyze-find-nonterminal-sequence'
13619         (semantic-analyze-find-nonterminal-sequence): Extracted token type analysis.
13620         (semantic-analyze-scoped-nonterminals): Added a comment about getting
13621         all parents.
13622         (semantic-analyze-scoped-types): Add in scope from functions with
13623         parnts.  Add in context scopes (eg. code-wise use clauses)
13624         (semantic-analyze-possible-completions): Fixed search to use the
13625         completetexttype.
13626         Add in search for the local scope.
13627
13628         * semantic-sb.el (semantic-sb-insert-details):
13629         When inserting a type's parts, bucketize
13630         them if they appear as tokens.
13631
13632         * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf 1.49
13633         (semantic-expand-c-nonterminal): Extract default value for vars
13634
13635         * c.bnf (codeblock): Use codeblock-var-or-fun instead of var-or-fun
13636         (class-parents): Add opt-class-declmod to one-parent case.
13637         (opt-name): empty name gets "" string instead of nil.
13638         (opt-ref): Pass back a 1 for a ref match
13639         (codeblock-var-or-fun): New rule. Don't match anon types.
13640         (opt-initializers): Add coma prefixed initializer.
13641         (variablearg): Pass down a reference
13642         (expression): Send back start/end of the expression.
13643
13644 2001-10-26  David Ponce  <david@dponce.com>
13645
13646         * semantic.el (semantic-unmatched-syntax-cache):
13647         New variable.  Cached copy of
13648         unmatched syntax tokens.
13649
13650         (semantic-unmatched-syntax-cache-check): New variable.  Non nil if the
13651         unmatched syntax cache is out of date.
13652
13653         (semantic-overlay-error-recovery-stack): Removed.
13654         (semantic-overlay-stack-add): Removed.
13655         (semantic-overlay-stack-clear): Removed.
13656
13657         (semantic-bovine-umatched-syntax-refresh-needed-p): New function.
13658         Return non-nil if the unmatched syntax cache needs a refresh.
13659
13660         (semantic-clear-unmatched-syntax-cache): New function.  Clear
13661         `semantic-unmatched-syntax-cache'.
13662
13663         (semantic-bovinate-unmatched-syntax): New function.  Return the list
13664         of unmatched syntax tokens.
13665
13666         (semantic-clear-toplevel-cache): Call
13667         `semantic-clear-unmatched-syntax-cache'.
13668
13669         (semantic-bovinate-toplevel): Call
13670         `semantic-clear-unmatched-syntax-cache' after partial re-parse.  Use
13671         `semantic-overlay-list' to setup token overlays after full re-parse.
13672
13673         (semantic-set-toplevel-bovine-cache): Set
13674         `semantic-unmatched-syntax-cache-check' to nil.  Run hook
13675         `semantic-unmatched-syntax-hook' to refresh highlighting of unmatched
13676         syntax tokens.
13677
13678         (semantic-change-function): Set
13679         `semantic-unmatched-syntax-cache-check' to t.
13680
13681         (semantic-raw-to-cooked-token): Replaced token overlay by vector of
13682         START END positions.
13683
13684         (semantic-bovinate-nonterminals): Setup
13685         `semantic-unmatched-syntax-cache'.  No more use overlay recovery
13686         stack.  No more run `semantic-unmatched-syntax-hook'.
13687
13688         (semantic-rebovinate-token, semantic-bovinate-nonterminal): No more
13689         setup token overlays.
13690
13691         * semantic-util-modes.el:
13692           (semantic-unmatched-syntax-overlay-p): New function.
13693
13694           (semantic-showing-unmatched-syntax-p): Use `semantic-overlays-in'
13695           instead of `semantic-overlay-lists'.  Use
13696           `semantic-unmatched-syntax-overlay-p'.
13697
13698           (semantic-clean-unmatched-syntax-in-region):Moved for clarity.
13699           (semantic-clean-token-of-unmatched-syntax): Ditto.
13700
13701           (semantic-clean-unmatched-syntax-in-buffer): New function.
13702
13703           (semantic-hide-unmatched-syntax): Removed.  Replaced by
13704           `semantic-clean-unmatched-syntax-in-buffer'.
13705
13706           (semantic-show-unmatched-syntax): Clear any previous highlighting.
13707           No more use `semantic-overlay-stack-add'.  Comment fixes.
13708
13709           (semantic-next-unmatched-syntax):  Use
13710           `semantic-unmatched-syntax-overlay-p'.
13711
13712           (semantic-show-unmatched-syntax-mode-setup): Use the function
13713           `semantic-bovinate-unmatched-syntax' to get the list of unmatched
13714           syntax tokens.  Then call `semantic-show-unmatched-syntax' to
13715           highlight them.
13716
13717 2001-10-26  Eric M. Ludlam  <zappo@gnu.org>
13718
13719         * document.el (document-massage-to-texinfo):
13720         When searching for things to wrap
13721         in @var, move search start point after each match to avoid
13722         double-match for THREE-WORD-SYMBOLS.
13723
13724         * semantic-ctxt.el (semantic-ctxt-scoped-types, semantic-ctxt-scoped-types-default):
13725         New fcn
13726
13727         * semantic-util.el (semantic-nonterminal-children-default):
13728         Handle anonymous types with children.
13729
13730 2001-10-24  Eric M. Ludlam  <zappo@gnu.org>
13731
13732         * semantic.texi (Tools): Added a charts section
13733         (speedbar): Made note of semantic-load.el
13734         (imenu): Made note of semantic-load.el
13735         (charts): New section
13736
13737         * semantic-util-modes.el (global-semantic-show-dirty-mode): Fixed doc.
13738
13739         * semantic.texi (Bovinating, BNF conversion, Optional Lambda Expression):
13740         xref syntax fix
13741         (Current Context): Renamed "suggestions" node to "syntax analysis"
13742         (Local Variables): Doc update from source
13743         (Derived Context): Doc update from source
13744         (Context Analysis): New section w/ doc copied from source
13745         (senator): xref syntax fix
13746         (miscellaneous): Updated from source.  Added show-unmatched-syntax functions.
13747
13748         * semantic-c.el: Updated for c.bnf
13749         (semantic-flex-c-if-0): Optimize #if 0 out of lexical stream.
13750         (semantic-flex-c-extensions): Added above.
13751
13752         * c.bnf: Removed log comments.
13753         (unionparts): Fixed names
13754         (class-parents): Added opt-class-declmods.
13755         (typesimple): Fixed name of union parts
13756         (var-or-fun): Split to two sub-rules
13757         (opt-initializers): Fixed COMA case.
13758         (expression): Added cast info of an expression.
13759
13760         * semantic-util-modes.el (semantic-show-dirty-mode-on-hook,  semantic-show-dirty-mode-off-hook):
13761         Fixed doc strings.
13762
13763         * INSTALL: Fixed quoting problem with LOADPATH.
13764
13765         * semanticdb.el (semanticdb-semantic-init-hook-fcn): Added comments.
13766
13767         * semantic-load.el:
13768         Do not enable global-semantic-show-unmatched-syntax-mode when turning
13769         everything on until bugs in it are fixed.
13770
13771 2001-10-17  Eric M. Ludlam  <zappo@gnu.org>
13772
13773         * semantic-bnf.el: By Juanma Barranquero <lektu@terra.es>:
13774         (which-func-modes): In Emacs 21, it can be t, so don't add
13775         semantic-bnf mode.
13776
13777 2001-10-10  David Ponce  <david@dponce.com>
13778
13779         * wisent/wisent-java.el (wisent-java-get-local-variables):
13780         New implementation consistent with
13781         `semantic-java-get-local-variables'.
13782
13783         * wisent/wisent-bovine.el (wisent-bovinate-region-until-error):
13784         New function. Counterpart of
13785         `semantic-bovinate-region-until-error'.
13786
13787 2001-10-09  David Ponce  <david@dponce.com>
13788
13789         * semantic-ctxt.el (semantic-get-local-variables, semantic-get-local-arguments):
13790         Fixed
13791         last check in.
13792
13793         * semantic-ctxt.el (semantic-get-local-variables): For consistency with
13794         `semantic-get-local-variables' return tokens without overlay.
13795
13796         (semantic-get-all-local-variables-default): Always return a cons
13797         (LOCAL-ARGUMENTS . LOCAL-VARIABLES).  Removed reversing of the result
13798         list because values returned by `semantic-get-local-arguments' and
13799         `semantic-get-local-variables' are already in correct order.
13800
13801 2001-10-08  Eric M. Ludlam  <zappo@gnu.org>
13802
13803         * Project.ede:
13804         Added an "example" target with skeletons bnf, and Lisp file.
13805
13806         * semantic-load.el: Moved charting autoloads together.
13807
13808         * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf
13809         (semantic-c-classname): New state variable
13810         (semantic-c-reconstitute-token): handle constructor via
13811         `semantic-c-classname' and new auto-typeing information for implicitly
13812         typed functions.
13813         (semantic-default-c-built-in-types): Deleted
13814         (semantic-default-c-setup): Don't assign
13815          `semantic-default-c-built-in-types'
13816
13817         * c.bnf (unionpartsparts): new rule; used to be classparts
13818         (typesimple): When building a class, store off the classname found.
13819         Used to reconstitute functions later.
13820         (var-or-fun): Re-enable untyped functions and variables.
13821
13822         * semantic-analyze.el (semantic-analyze-possible-completions):
13823         Fixed typo.
13824
13825         * semantic-analyze.el (semantic-analyze-current-local-variables):
13826         Removed
13827         (semantic-analyze-find-nonterminal-sequence): Accept localvariable
13828         list, and scoped variable list.
13829         (semantic-analyze-type-parts, semantic-analyze-scoped-nonterminals,
13830         semantic-analyze-scoped-types): New functions
13831         (semantic-analyze-context, semantic-analyze-context-assignment,
13832          semantic-analyze-context-functionarg,
13833          semantic-analyze-context-return): New classes
13834         (semantic-analyze-current-context): Use new classes instead of hacking
13835         together a list.  Collect new local variable and scoping information
13836         into the analysis.
13837         (semantic-analyze-type-constraint): New method set for new classes.
13838         (semantic-analyze-possible-completions): use new object returned by
13839         `semantic-analyze-current-context' to do the same thing.
13840         (semantic-analyze-show): New method set for new classes.
13841         (semantic-analyze-pop-to-context): Use new method.
13842
13843         * semantic-util.el (semantic-default-built-in-types): Removed.
13844
13845         * semantic.texi: Spelling and grammar fixes.  (Thanks Colin Marquardt)
13846         Added detail about constructor specifier in tokens.
13847
13848         * semantic-skel.el:
13849         Example on how to start an Emacs Lisp source target for a bnf file.
13850
13851         * skeleton.bnf: Example on how to start a .bnf project.
13852
13853 2001-10-08  David Ponce  <david@dponce.com>
13854
13855         * semantic-java.el (semantic-java-get-local-variables):
13856         New implementation consistent
13857         with `semantic-get-local-variables-default'.
13858
13859 2001-10-05  David Ponce  <david@dponce.com>
13860
13861         * semantic-bnf.el: Merged wisent branch.
13862
13863         * semantic.texi: Fixed typo.
13864
13865 2001-10-05  Eric M. Ludlam  <zappo@gnu.org>
13866
13867         * semantic-analyze.el (semantic-analyze-current-local-variables):
13868         New var
13869         (semantic-analyze-find-nonterminals-by-prefix): New function
13870         (semantic-analyze-find-nonterminal-sequence): New arg TYPERETURN.
13871         (semantic-analyze-current-context): Get back the types from prefix
13872         sequence.  Add them to the return value.
13873         (semantic-analyze-possible-completions): New command.
13874         (semantic-analyze-pop-to-context): Handle the types of the prefix.
13875
13876         * semantic-c.el: New c.bnf
13877
13878         * c.bnf (var-or-fun):
13879         Disable support (for now) of int declarations for vars
13880         and funs with unspecified types.  Who does that anymore anyway?
13881
13882         * semantic-ctxt.el (semantic-up-context):
13883         Specify a bounds type (ie, only go up withing
13884         the bounds of a specific token type.)  Narrow region to that token.
13885         (semantic-up-context-default): Remove old narrowing code.
13886         (semantic-get-local-variables-default): Disable working messages.
13887         Go up w/in the scope of 'function only. Be sure to append old vars.
13888         (semantic-get-all-local-variables-default): Do not loop up contexts.
13889         Let the get-local-vars function do that.
13890
13891         * semantic-util.el (semantic-find-nonterminal-by-type):
13892         Do not return built in types.
13893         This function is supposed to return non-type tokens which have TYPE
13894         as an type.
13895
13896         * tests/test.c: Fixed typedef_of_anonymous_enum contents.
13897
13898         * semantic-util-modes.el (semantic-next-unmatched-syntax): New function
13899         (semantic-clean-unmatched-syntax-in-region): Implemented.
13900         (semantic-clean-token-of-unmatched-syntax): New function for hook.
13901         (semantic-show-unmatched-syntax-mode-map): Add binding
13902         `semantic-show-unmatched-syntax-next'.
13903         (semantic-show-unmatched-syntax-mode-setup): Add pre clean token hook.
13904         (semantic-show-unmatched-syntax-next): New command.
13905
13906         * semantic-ctxt.el (semantic-get-local-variables-default):
13907         Disable all hooks associated
13908         with unmatched syntax.
13909
13910         * semantic-c.el: New c.bnf
13911
13912         * c.bnf (UNDERP, UNDERUNDERP): New keywords
13913         (macro-or-include): Handle optional argument list
13914         (opt-define-arglist): New rules
13915         (var-or-func-decl): Account for optional _P before arglist.
13916         (opt-under-p): New rule
13917         (arg-list): Remove check for _P here.  Regex wasn't working.
13918         (arg-sub-list): Unused.
13919         (expression): Add symbol as valid part.
13920
13921 2001-10-04  David Ponce  <david@dponce.com>
13922
13923         * semantic-bnf.el (semantic-bnf-mode-keywords, semantic-bnf-syntax-help):
13924         Added number
13925         to list of built ins.
13926
13927 2001-10-04  Eric M. Ludlam  <zappo@gnu.org>
13928
13929         * tests/test.cpp: Forgot a semicolon.
13930
13931         * tests/test.cpp, tests/test.c: A few more bits.
13932
13933         * Project.ede: Added semantic-analyze.el
13934
13935         * semantic-bnf.el (semantic-bnf-syntax-help):
13936         Added number to list of built ins.
13937
13938         * semantic-util.el (semantic-current-nonterminal-of-type): New function
13939         (semantic-with-buffer-narrowed-to-current-token): New macro
13940         (semantic-with-buffer-narrowed-to-token): New macro
13941
13942         * semantic.el (semantic-number-expression):
13943         Use number expression from semantic-java
13944         since it looks like the common way of parsing numbers for most
13945         langauges.
13946
13947         * semantic-c.el: New c.bnf
13948
13949         * c.bnf (expression): Use newer number token which handles floats.
13950
13951         * semantic-ctxt.el (semantic-up-context-default):
13952         Narrow to current function token first.
13953         (semantic-get-local-variables-default): Collect variables from
13954         multiple levels.
13955         (semantic-ctxt-current-symbol-default): Break at beginning of buffer.
13956         (semantic-ctxt-current-argument): doc fix.
13957         (semantic-ctxt-current-argument-default): doc fix
13958         (semantic-suggest-lookup-item,
13959          semantic-suggest-variable-token-hierarchy,
13960          semantic-suggest-current-type): Deleted functionality moved to
13961         semantic-analyze.
13962
13963         * semantic-analyze.el: Analysis of the current context.
13964         Uses semantic-ctxt to determine textual context around point.
13965         Uses searches to find the tokens associated with that context.
13966
13967 2001-10-03  David Ponce  <david@dponce.com>
13968
13969         * wisent/wisent-java.el (wisent-java-number-regexp): Removed.  Use
13970         `semantic-java-number-regexp' instead.
13971
13972         (wisent-java-lex): Use `semantic-flex' 'number lexemes.
13973
13974         (wisent-java-default-setup): BNF update.
13975
13976         * wisent/wisent-java.bnf:
13977         In setup: Added setting of `semantic-number-expression'.
13978
13979         * wisent/wisent-bovine.el (wisent-rebovinate-token):
13980         Call `semantic-pre-clean-token-hooks'.
13981
13982         * semantic-java.el (semantic-java-number-regexp):
13983         New constant.  Regular expression used
13984         by the lexer to match Java numbers.
13985
13986         (semantic-toplevel-java-bovine-table, semantic-default-java-setup):
13987         BNF update.
13988
13989         * java.bnf: In setup: Added setting of `semantic-number-expression'.
13990
13991         In grammar: Removed 'number nonterminal now directly provided as
13992         terminal by the lexer.
13993
13994         * semantic-c.el:
13995         Added (require 'senator) at compilation time to fix byte-compiler
13996         warning.
13997
13998         * senator.el (senator-menu-bar): New "Chart" and "Modes" sub-menus.
13999
14000         * semantic.el: Added (require 'assoc) to fix byte-compiler warning.
14001
14002         (semantic-flex): Fixed to handle numbers which are not symbols (that
14003         is for example floating point numbers starting with a dot like ".10").
14004
14005 2001-10-03  Eric M. Ludlam  <zappo@gnu.org>
14006
14007         * semantic.texi (Settings): Added number expression doc.
14008         (Rules): Added large section about valid syntax tokens.
14009
14010         * semantic-util-modes.el (global-semantic-show-dirty-mode): Doc Fix
14011         (semantic-show-dirty-mode-setup): Doc Fix
14012         (semantic-show-dirty-mode): Doc Fix
14013         (global-semantic-show-unmatched-syntax-mode): Doc Fix
14014         (semantic-clean-unmatched-syntax-in-region): New fn placeholder
14015         (semantic-show-unmatched-syntax-mode-map): Doc Fix
14016         (semantic-show-unmatched-syntax-mode-setup): Doc Fix
14017         (semantic-show-unmatched-syntax-mode): Doc Fix
14018
14019         * Project.ede: Add semantic-util-modes.
14020         Update version number.
14021
14022         * semantic-c.el: New c.bnf (1.43)
14023
14024         * c.bnf (INLINE): Fix typo
14025         (opt-class-protection): EMPTY is valid match
14026         (opt-name): UNION can have class parts.  Fix typedef name.
14027         (DECLMOD): Add METADECLMOD
14028         (metadeclmod, METADECLMOD): New rules
14029         (var-or-fun-decl): Accept metadeclmods in the middle.
14030         (fun-or-proto-end): Accept "= 0;" as a valid function end.
14031         (opt-expression): Deal with numbers.
14032
14033         * semantic-chart.el (semantic-chart-database-size): New command.
14034         (semantic-chart-nonterminal-complexity-token): Get the Y label from
14035         token type name assoc list.
14036
14037         * semantic-load.el: Added in chart autoloads.
14038
14039         * semantic-bnf.el (semantic-bnf-mode-keywords):
14040         Support the new number keyword.
14041
14042         * semantic-scm.el: New version of scheme.bnf.
14043
14044         * scheme.bnf: Disable number matching.
14045
14046         * semantic-make.el: New version of make.bnf.
14047
14048         * make.bnf: Disable number matching.
14049
14050         * semantic.el (semantic-version): Update to 1.4beta 12
14051         (semantic-pre-clean-token-hooks): New hook.
14052         (semantic-rebovinate-token): Call `semantic-pre-clean-token-hooks'
14053         (semantic-number-expression): New flex option
14054         (semantic-flex): Create number tokens from symbols if they match
14055         above symbol.
14056
14057 2001-10-02  David Ponce  <david@dponce.com>
14058
14059         * senator.el (global-senator-minor-mode):
14060         New variable and function to turn on/off
14061         `senator-minor-mode' in every Semantic enabled buffer.
14062
14063         (senator-minor-mode): Added autoload cookie.  Use
14064         `semantic-add-minor-mode' to register the minor mode.
14065
14066         * semantic-util.el:
14067         (semantic-show-dirty-mode, semantic-show-unmatched-syntax-mode):
14068         All related code moved into semantic-util-modes.el.
14069
14070         Added (require 'semantic-util-mode).
14071
14072         * semantic-load.el: Updated minor mode autoloads.
14073         Use `global-senator-minor-mode', `global-semantic-show-dirty-mode' and
14074         `global-semantic-show-unmatched-syntax-mode' to globally turn on minor
14075         modes when `semantic-load-turn-everything-on' is non-nil.
14076
14077         * semantic-util-modes.el:
14078         Initial revision.   Implementation of Semantic minor modes.
14079
14080 2001-09-30  David Ponce  <david@dponce.com>
14081
14082         * sformat.el (newstr):
14083         Local variable declared at compilation time to fix
14084         byte-compiler warnings.
14085
14086         * senator.el (senator-completion-menu-window-offsets):
14087         Removed binding of unused
14088         local variables.
14089
14090         (senator-minor-menu): Declared to fix byte-compiler warnings.
14091
14092         (senator-minor-mode): Moved to fix byte-compiler warnings.
14093
14094 2001-09-29  David Ponce  <david@dponce.com>
14095
14096         * semantic.el (semantic-dirty-token-hooks): Fixed doc string typo.
14097
14098         (semantic-flex-start, semantic-flex-end, semantic-flex-text,
14099         semantic-bovine-toplevel-full-reparse-needed-p,
14100         semantic-bovine-toplevel-partial-reparse-needed-p): Moved to fix byte
14101         compiler warnings.
14102
14103         (semantic-token-with-position-p): To avoid implementation
14104         inconsistencies with `semantic-token-p' call it.
14105
14106         (semantic-flex): Removed binding of unused local variable.
14107
14108         * semantic-util.el:
14109         Require 'newcomment at compilation time to fix Emacs 21 byte-compiler
14110         warnings.
14111
14112         (semantic-find-nonterminal-by-function): Ignore invalid children
14113         tokens when SEARCH-PARTS is not 'positiononly.  Some improvements.
14114
14115         (semantic-name-nonterminal, semantic-prototype-nonterminal-default,
14116         semantic-concise-prototype-nonterminal-default,
14117         semantic-uml-token-or-string-to-string,
14118         semantic-uml-abbreviate-nonterminal-default,
14119         semantic-uml-concise-prototype-nonterminal-default): Removed binding
14120         of unused local variables.
14121
14122         * semantic-texi.el (semantic-texi-recursive-combobulate-list):
14123         Removed binding of unused
14124         local variables.
14125
14126         * semantic-sb.el (semantic-sb-one-button):
14127         Removed binding of unused local variable.
14128
14129         * semantic-imenu.el:
14130         Require 'imenu at compilation time to fix byte-compiler warnings.
14131
14132         (semantic-create-imenu-index-1): Removed binding of unused local
14133         variable.
14134
14135         * semantic-el.el:
14136         Require 'semantic-imenu at compilation time to fix byte-compiler
14137         warnings.
14138
14139         * semantic-ctxt.el (semantic-ctxt-current-symbol-default, semantic-suggest-variable-token-hierarchy):
14140         Removed binding of unused
14141         local variable.
14142
14143         * semantic-c.el:
14144         Require 'semantic-imenu at compilation time to fix byte-compiler
14145         warnings.
14146
14147         * semantic-bnf.el (semantic-bnf-find-setup-code, semantic-bnf-generate-and-load, semantic-bnf-find-state-position, semantic-bnf-ecsi):
14148         Removed binding
14149         of unused local variables.
14150
14151         * document.el (document-comment-start, document-comment-end, document-comment-line-prefix):
14152         Moved to document-vars.el to fix
14153         byte-compiler warnings.
14154
14155         Removed extra (require 'document-vars).
14156
14157         * document-vars.el:
14158         Require 'newcomment at compilation time to fix Emacs 21 byte-compiler
14159         warnings.
14160
14161         (document-comment-start, document-comment-end,
14162         document-comment-line-prefix): Moved from document.el to fix
14163         byte-compiler warnings.
14164
14165 2001-09-27  David Ponce  <david@dponce.com>
14166
14167         * wisent/wisent-java.el (wisent-java-default-setup): BNF update.
14168
14169         * wisent/wisent-java.bnf:
14170         In setup: Removed unnecessary setting of `block-comment-end' which
14171         breaks `indent-new-comment-line'.
14172
14173         * semantic-java.el (semantic-default-java-setup): BNF update.
14174
14175         * java.bnf:
14176         In setup: Removed unnecessary setting of `block-comment-end' which
14177         breaks `indent-new-comment-line'.
14178
14179 2001-09-27  Eric M. Ludlam  <zappo@gnu.org>
14180
14181         * semantic-load.el: Added `semantic-show-unmatched-syntax-mode'.
14182
14183         * semantic.el (semantic-unmatched-syntax-hook): New hook.
14184         (semantic-bovinate-nonterminals): Track all unmatched syntax elements.
14185         Call new hook with the unmatched syntax.
14186
14187         * semantic-util.el (semantic-find-nonterminal-by-overlay,  semantic-find-nonterminal-by-overlay-in-region,  semantic-find-nonterminal-by-overlay-next,  semantic-find-nonterminal-by-overlay-prev):
14188         Make sure the 'semantic
14189         part of the overlay is a token to be valid while searching.
14190         (semantic-show-unmatched-syntax-mode): New user option.
14191         (semantic-unmatched-syntax-face): New face.
14192         (semantic-show-unmatched-syntax): New function
14193         (semantic-show-unmatched-syntax-mode): New mode.
14194
14195 2001-09-26  Eric M. Ludlam  <zappo@gnu.org>
14196
14197         * semantic-c.el (semantic-toplevel-c-bovine-table): Updated from c.bnf
14198
14199         * c.bnf (enumsubparts): Account for commas
14200         (arg-sub-list): Account for commas
14201         (opt-expression): Account for floating point numbers,
14202         or struct dereferences.
14203
14204 2001-09-26  David Ponce  <david@dponce.com>
14205
14206         * semantic-chart.el (semantic-chart-nonterminals-by-token):
14207         Changed the call to
14208         `semantic-find-nonterminal-by-token' to search in sub-parts of tokens.
14209
14210         (semantic-chart-nonterminal-complexity-token): Changed call to
14211         `semantic-find-nonterminal-by-token' to use 'positiononly instead of
14212         t.
14213
14214         * semantic-util.el (semantic-find-nonterminal-by-function):
14215          Take into account
14216         'positiononly value of the SEARCH-PARTS argument.
14217
14218 2001-09-26  Eric M. Ludlam  <zappo@gnu.org>
14219
14220         * semantic-chart.el: Added a name to the complexity chart.
14221
14222         * semantic.el: Update version numbers.
14223
14224         * Project.ede: Updated version.
14225
14226 2001-09-21  David Ponce  <david@dponce.com>
14227
14228         * wisent/wisent-java.el: Fixed byte compilation warnings.
14229
14230         * wisent/wisent-bovine.el (wisent-bovinate-toplevel):
14231         Call `garbage-collect' before parsing to
14232         optimize memory use.
14233
14234         * wisent/wisent.el (wisent-noninteractive):
14235         New function.  Return non-nil if running
14236         without interactive terminal.
14237
14238         (wisent-log-file): New constant.  The logging file.
14239
14240         (wisent-append-to-log-file): New function.  Append contents of
14241         `wisent-log-buffer' to `wisent-log-file'.
14242
14243         (wisent-log-conflicts): Display the number of conflicts found in the
14244         message log buffer or on console output when running in batch mode.
14245
14246         (wisent-build-tables): In batch mode append the contents of the log
14247         buffer to `wisent-log-file'.
14248
14249         * semantic.el (semantic-token-name, semantic-token-get, semantic-token-start, semantic-token-end, semantic-token-buffer, semantic-token-p, semantic-bovine-toplevel-full-reparse-needed-p, semantic-bovine-toplevel-partial-reparse-needed-p):
14250         Defined as inline
14251         functions.
14252
14253         (semantic-bovinate-toplevel): Garbage collector is run before parsing
14254         and suspended during parsing to speed up the parser and optimize
14255         memory use.
14256
14257         * working.el (working-message-emacs, working-message-xemacs):
14258         Do nothing if running
14259         in batch mode.
14260
14261         (working-run-with-timer, working-cancel-timer): Default implementation
14262         uses `working-message' instead of `message'.  Moved the definitions
14263         after definition of `working-message' to avoid byte compiler warnings.
14264
14265 2001-09-20  David Ponce  <david@dponce.com>
14266
14267         * wisent/wisent-java.el (wisent-java-default-setup): BNF update.
14268
14269         * wisent/wisent-java.bnf:
14270         In setup: Renamed `wisent-flex-function' to `wisent-lexer-function'.
14271         Added setup of `wisent-flex-depth'.
14272
14273         * wisent/wisent-bovine.el (wisent-flex-istream):
14274         No more buffer local.  Its value is local in
14275         function `wisent-bovinate-nonterminal'.
14276
14277         (wisent-flex-depth): New variable to specify how `semantic-flex' will
14278         setup the lexer input stream.
14279
14280         (wisent-flex-function): Renamed to more appropriate
14281         `wisent-lexer-function'.
14282
14283         (wisent-lexer-wrapper): Minor improvements.
14284
14285         (wisent-bovinate-nonterminal): Local binding of `gc-cons-threshold'
14286         moved into `wisent-bovinate-toplevel'.
14287
14288         (wisent-rebovinate-token, wisent-bovinate-from-nonterminal-full): Use
14289         `wisent-flex-depth'.
14290
14291         (wisent-bovinate-toplevel): Performance improvement.
14292
14293 2001-09-18  Eric M. Ludlam  <zappo@gnu.org>
14294
14295         * semantic-ctxt.el (semantic-function-argument-separation-character):
14296         Fix doc.
14297
14298 2001-09-18  David Ponce  <david@dponce.com>
14299
14300         * semantic-imenu.el (semantic-create-imenu-subindex):
14301          Use `imenu--split-submenus' to sort
14302         and split sub index.
14303
14304 2001-09-18  Eric M. Ludlam  <zappo@gnu.org>
14305
14306         * semantic-c.el (semantic-c-nonterminal-protection):
14307         Only check for class/struct if
14308         the token is a type.  Otherwise, always default to public.
14309
14310         * semantic-el.el (semantic-elisp-prototype-nonterminal): Deleted
14311         (semantic-default-elisp-setup): Remove reference to above.
14312         Set `semantic-function-argument-separator' and
14313         `semantic-function-argument-separatiion' to good values.
14314
14315         * semantic-util.el (semantic-test-all-token->text-functions):
14316         New function
14317         (semantic-function-argument-separator): New variable
14318         (semantic-prototype-nonterminal-default): Use new variable above.
14319         (semantic-concise-prototype-nonterminal-default): Use new variable above.
14320         (semantic-uml-token-or-string-to-string): Always display argument list.
14321         (semantic-uml-arguments-to-string): Use above new variable.
14322
14323 2001-09-18  David Ponce  <david@dponce.com>
14324
14325         * wisent/wisent.el (wisent-quote-p, wisent-backquote-p, wisent-action-expand):
14326         New
14327         functions to expand a semantic action expression and return the list
14328         of `$i' placeholders it actually uses.
14329
14330         (wisent-reduce-action): Use `wisent-action-expand' to expand semantic
14331         action expression and only bind `$i' placeholders actually used.
14332
14333         * semantic-bnf.el (semantic-bnf-to-lalr-action):
14334         Because macro expansions are
14335         implementation dependent, only expand `backquote' forms instead of all
14336         macros.
14337
14338         (semantic-bnf-quote-p, semantic-bnf-backquote-p): New functions.
14339
14340 2001-09-17  David Ponce  <david@dponce.com>
14341
14342         * wisent/wisent-java.bnf (class_declaration, field_declaration, method_declaration, formal_parameter, constructor_declaration, interface_declaration, abstract_method_declaration):
14343           Use ASSOC built-in instead of direct
14344         call to `semantic-bovinate-make-assoc-list' in semantic actions.
14345
14346         * semantic-bnf.el (semantic-bnf-to-lalr-ASSOC, semantic-bnf-to-lalr-EXPANDTHING, semantic-bnf-to-lalr-EXPAND, semantic-bnf-to-lalr-EXPANDFULL, semantic-bnf-to-lalr-action):
14347         New functions to expand semantic actions
14348         in LALR grammar.
14349
14350         (semantic-bnf-to-lalr-builtins): New variable.  Hold expanders of
14351         Semantic built-in functions in LALR grammar.
14352
14353         (semantic-bnf-matching-to-lalr): Use `semantic-bnf-to-lalr-action' to
14354         expand semantic actions.
14355
14356 2001-09-14  Eric M. Ludlam  <zappo@gnu.org>
14357
14358         * tests/test.cpp (class3::method5_for_class3): New testing post-const.
14359         (tinitializers1): test initializers.
14360
14361         * tests/test.c (funk2): Added pointer test.
14362         (funk3): Added local variables.
14363
14364         * Project.ede: Version update.
14365         Added semantic-chart.el to tools.
14366
14367         * semantic-load.el: Added a semantic-chart autoload.
14368
14369         * semantic-chart.el:
14370         Chart some aspects of a file based on what Semantic knows.
14371         (Requires eieio 0.17 beta 3 or better)
14372
14373         * semantic-c.el: Removed broken commentary
14374
14375 2001-09-14  David Ponce  <david@dponce.com>
14376
14377         * wisent/wisent.el: Header comments: doc fixes.
14378
14379         (wisent-working-...): Removed.
14380
14381         (wisent-pack-grammar, wisent-set-derives, wisent-set-nullable,
14382         wisent-generate-states, wisent-lalr, wisent-build-states,
14383         wisent-compact-action-table, wisent-build-action-table,
14384         wisent-build-goto-table, wisent-build-reduction-table,
14385         wisent-build-terminal-table, wisent-build-tables,
14386         wisent-compile-grammar):  Use the working API instead of
14387         wisent-working-... wrappers.
14388
14389         (wisent-compile-grammar): Doc string fixes.
14390
14391         * working.el (working-status-dynamic-type):
14392         Added `working-text-display' to the
14393         list of available functions.
14394
14395         (working-number-display): Doc string fix.
14396
14397         (working-text-display): New function to display step strings.
14398
14399         * semantic-el.el (semantic-expand-elisp-nonterminal):
14400         After expanding NONTERM delete
14401         the overlay from its buffer.
14402
14403 2001-09-13  David Ponce  <david@dponce.com>
14404
14405         * wisent/wisent.el: Header comments: Doc improvement.
14406
14407         (wisent-log-buffer): Separate each compile log in the log buffer.
14408
14409         (wisent-show, wisent-show-all): Removed.
14410
14411         (wisent-free-all): Added missing global values.
14412
14413         (wisent-build-tables): Skip lines after logging.
14414
14415 2001-09-12  David Ponce  <david@dponce.com>
14416
14417         * wisent/wisent-expr.el: Header comments: Doc fixes.
14418
14419         (wisent-expr-grammar): Removed.  No more used.
14420
14421         (wisent-expr-parser-tables): Updated to new format of Wisent's input
14422         grammar.  Minor grammar improvements.  Doc string.  Grammar compiled
14423         in byte code.
14424
14425         (wisent-expr-operators): Terminal symbol name changes.  Doc string.
14426
14427         (wisent-expr-digits): Removed.  No more used.
14428
14429         (wisent-expr-number-regexp): New constant.  Lexer regexp used to parse
14430         the numbers.
14431
14432         (wisent-expr-lexer-input-stream): Doc string.
14433
14434         (wisent-expr-lexer): Doc string.  Use `wisent-expr-number-regexp' to
14435         parse numbers.  Minor improvements.
14436
14437         (wisent-expr-error): Removed.  No more used.
14438
14439         (wisent-expr-test): Renamed to `wisent-expr'.  Minor improvements.
14440
14441         * semantic.el (find-file-hooks):
14442         Replaced `semantic-change-major-mode-hook-function'
14443         by `semantic-post-change-major-mode-function'.
14444
14445         * wisent/wisent.el (wisent-parse):
14446         Missing space in parse error message.
14447
14448 2001-09-12  Eric M. Ludlam  <zappo@gnu.org>
14449
14450         * semantic.texi (Extra Specifiers): Fix end of table location.
14451
14452         * semantic.el: Revert old find-file-hook behavior.
14453
14454 2001-09-12  David Ponce  <david@dponce.com>
14455
14456         * wisent/wisent.el: Header comments: Minor doc fix.
14457
14458         (wisent-process-nonterminal): Missing declaration of local variable
14459         `rule'.
14460
14461         (wisent-parse): Minor improvement of parse error message.
14462
14463         * wisent/wisent-calc.bnf, wisent/wisent-calc.el:
14464         Initial revision of the infix notation calculator sample program.
14465
14466 2001-09-12  Eric M. Ludlam  <zappo@gnu.org>
14467
14468         * semantic.el (semantic-version): beta10.  Oy.
14469         (semantic-token-with-position-p): Make sure trailing array is not a string.
14470         (sematic-find-file-function): New hook function.
14471         (find-file-hooks): Add above.
14472
14473         * semantic.texi (Extra Specifiers):
14474         Specify dereference spec for C example is a NUMBER.
14475         Specify new pionter spec.
14476         Specify new prototype flag.
14477
14478         * semantic-util.el: Doc fixes.
14479         (semantic-prototype-nonterminal-default): Use new version of pointer value.
14480
14481         * semantic-imenu.el (semantic-create-imenu-subindex):
14482         Only create submenues if the token
14483         being expanded has a position available for jumping and sorting.
14484
14485         * semantic-el.el (semantic-elisp-use-read):
14486         Extract contents of `eval-and-load'.
14487         Support autoload as a prototyping mechanism for functions.
14488         (semantic-expand-elisp-nonterminal): Expand nested definition lists.
14489         (semantic-default-elisp-setup): Use above.
14490
14491         * semantic-c.el: New c.bnf.
14492
14493         * c.bnf (var-or-func-decl):
14494         Change to host multiple postfix fcn modifiers, and
14495         initializers.
14496         (opt-reentrant): deleted
14497         (opt-initializers, opt-post-fcn-modifiers, post-fcn-modifiers): New rules
14498
14499 2001-09-11  David Ponce  <david@dponce.com>
14500
14501         * wisent/wisent.el:
14502         Header comments: New input grammar format. New conflicts handling.
14503
14504         (wisent--rprec): New variable for rules precedence.
14505
14506         (wisent-pack-grammar): Setup rules precedence.
14507
14508         (wisent-add-action): Handle S/R conflicts using terminals
14509         associativity and precedence, and rules precedence.
14510
14511         (wisent-build-tables): Minor improvements.
14512
14513         (wisent-process-nonterminal, wisent-process-grammar): New input
14514         grammar format with terminals associativity and precedence, and rules
14515         precedence.
14516
14517         * wisent/wisent-java.el (wisent-java-parser-tables):
14518         New grammar format.
14519
14520         * semantic-bnf.el (semantic-bovine-bnf-table):
14521         Added rules for %nonassoc, %left, %right
14522         statements.  And %prec specification in BNF rules.
14523
14524         (semantic-bnf-keyword-table): Added NONASSOC, LEFT, RIGHT and PREC
14525         keywords.
14526
14527         (semantic-bnf-token-assoc-terms): New macro to return the list of
14528         terminal names from an 'assoc token.
14529
14530         (semantic-bnf-to-lalr, semantic-bnf-matching-to-lalr): Updated to
14531         produce new Wisent grammar format.
14532
14533         (semantic-bnf-find-terminal-assocs): New function to return
14534         associativity rules of terminals.
14535
14536 2001-09-06  David Ponce  <david@dponce.com>
14537
14538         * wisent/wisent.el (wisent--action-table, wisent--nitems, wisent--nrules, wisent--nvars, wisent--nterms, wisent--nstates):
14539         Doc strings.
14540
14541         (wisent--rules, wisent--conflicts-by-state, wisent--conflicts): New
14542         variables.
14543
14544         (wisent-terminal-symbol, wisent-item-symbol): New functions to get
14545         symbol value from respectively a terminal ID and an item number.
14546
14547         (wisent-log-starts, wisent-log-nullables, wisent-log-rules,
14548         wisent-log-conflicts, wisent-log-rr-conflict, wisent-log-sr-conflict):
14549         New logging functions.
14550
14551         (wisent-show-nullable, wisent-show-starts): Removed.  Replaced by
14552         respectively `wisent-log-nullables' and `wisent-log-starts'.
14553
14554         (wisent-add-action): Doc string.  Use `wisent-log-rr-conflict' and
14555         `wisent-log-sr-conflict' to log conflicts.
14556
14557         (wisent-build-states): Doc string.  Initialize `wisent--conflicts' and
14558         `wisent--conflicts-by-state'.
14559
14560         (wisent-build-tables): Setup `wisent--rules'.  Removed call to
14561         `wisent-show-nullable' and `wisent-show-starts'.  Log conflicts and
14562         grammar stuff after the parser tables have been built.
14563
14564 2001-09-03  David Ponce  <david@dponce.com>
14565
14566         * senator.el (senator-show-status):
14567         Emacs 21.0.105 compatibility change.  Set
14568         `senator-mode' local-map property to `mode-line-minor-mode-keymap'.
14569         The function `make-mode-line-mouse2-map' no more exists in 21.0.105.
14570
14571         (senator-mode-line-toggle): Removed because of new mode line design
14572         for minor mode in GNU Emacs 21.0.105.
14573
14574         * wisent/wisent-java.el (wisent-java-parser-tables, wisent-java-default-setup):
14575         BNF update.
14576
14577         (wisent-java-lex): No more raise an error when it finds a
14578         `semantic-flex' token not yet used by the parser.  Return a valid
14579         lexical token instead and let the parser handle it.
14580
14581         (wisent-java-get-local-variables): New function.  Java specific
14582         'get-local-variables' override that uses the LALR parser.
14583
14584         * wisent/wisent-java.bnf: In setup:
14585
14586         Added 'field_declarations_opt' %start nonterminal.
14587         'get-local-variables' override: replaced
14588         `semantic-java-get-local-variables' by
14589         `wisent-java-get-local-variables'.
14590
14591         In grammar:
14592
14593         Added 'field_declarations_opt', `field_declarations' and
14594         `field_declaration_maybe' nonterminals used to parse method and
14595         constructor local variables.
14596
14597         * wisent/wisent-bovine.el (wisent-bovinate-from-nonterminal-full):
14598         New function, counterpart of
14599         `semantic-bovinate-from-nonterminal-full' for the LALR parser.
14600
14601 2001-08-31  David Ponce  <david@dponce.com>
14602
14603         * wisent/wisent-java.el (wisent-java-parser-tables): BNF update.
14604
14605         * wisent/wisent-java.bnf: In grammar:
14606
14607         Removed all "(identity $1)" semantic actions and "()" ones in EMPTY
14608         matches as they are now the defaults.  Moved call to
14609         `wisent-java-expand-nonterminal' from 'field_declaration' production
14610         in 'class_member_declaration' non terminal to 'field_declaration' non
14611         terminal.  So re-parsing at `field_declaration' produces valid
14612         Semantic tokens.
14613
14614         * wisent/wisent-bovine.el (wisent-token):
14615         Added 'reparse-symbol property to token.
14616
14617         (wisent-bovinate-nonterminal): Only keep valid Semantic tokens from
14618         data returned by the LALR parser.  When parser fails it returns the
14619         top element of its value stack as it is.  This let a chance to get any
14620         valid tokens pushed into the stack before the failure.  But at some
14621         point the top of stack element can contain a garbage value.  So this
14622         fix!
14623
14624         (wisent-rebovinate-token): New function to re-parse a token.
14625
14626         (wisent-bovinate-toplevel): Now handle partial re-parse!
14627
14628         (semantic-bovinate-toplevel): New advice to delegate bovination to
14629         `wisent-bovinate-toplevel' if defined in
14630         `semantic-bovinate-toplevel-override'.  Currently necessary to let
14631         `wisent-bovinate-toplevel' handle partial re-parse because
14632         `semantic-bovinate-toplevel' always clears existing tokens before
14633         calling `semantic-bovinate-toplevel-override'!
14634
14635 2001-08-30  David Ponce  <david@dponce.com>
14636
14637         * wisent/wisent-bovine.el (wisent-bovinate-nonterminal, wisent-bovinate-toplevel):
14638         Moved overlay
14639         setup to `wisent-bovinate-toplevel '.
14640
14641         * wisent/wisent-java.bnf:
14642         In setup, added lexer used by the LALR parser and call to
14643         `semantic-java-doc-setup'.
14644
14645         * wisent/wisent-java.el: Use wisent-bovine.el gateway.
14646
14647         (semantic-flex-token-value, semantic-flex-token-key): Removed.  Now in
14648         wisent-bovine.el.
14649
14650         (wisent-java-lex-istream): Removed.
14651
14652         (wisent-java-lex): Use `wisent-flex-istream' instead of
14653         `wisent-java-lex-istream'.  Removed `working' stuff now provided in
14654         wisent-bovine.el gateway.
14655
14656         (wisent-java-bovinate-toplevel): Removed.  Replaced by
14657         `wisent-bovinate-toplevel' in wisent-bovine.el gateway.
14658
14659         (wisent-java-default-setup): BNF update.
14660
14661         (wisent-java-parse, wisent-java-lex-buffer): Removed.
14662
14663         * wisent/wisent.el (wisent-token): Removed.  Now in wisent-bovine.el.
14664
14665         * wisent/wisent-bovine.el:
14666         Initial revision of the Wisent - Semantic gateway.
14667
14668         * wisent/wisent-expr.el: Removed version number from header.
14669
14670 2001-08-30  Eric M. Ludlam  <zappo@gnu.org>
14671
14672         * semantic-ctxt.el:
14673         (semantic-up-context, semantic-beginning-of-context,
14674         semantic-end-of-context, semantic-get-local-variables,
14675         semantic-get-local-arguments, semantic-get-all-local-variables,
14676         semantic-ctxt-current-symbol, semantic-ctxt-current-assignment,
14677         semantic-ctxt-current-function, semantic-ctxt-current-argument):
14678         Fixed bug going to (point) instead of `point'.
14679         (semantic-get-local-variables): deoverlay the local variables.
14680         (semantic-get-local-variables-default): Move to the beginning of the
14681         current context before parsing.
14682
14683 2001-08-30  David Ponce  <david@dponce.com>
14684
14685         * wisent/wisent-java.el (wisent-java-default-setup): BNF Update.
14686
14687         * wisent/wisent-java.bnf: In setup, override `get-local-variables' with
14688         `semantic-java-get-local-variables'.
14689
14690         * semantic-java.el (semantic-java-get-local-variables):
14691         New function.  Java specific
14692         `get-local-variables' override.
14693
14694         (semantic-default-java-setup): Override `get-local-variables' with
14695         `semantic-java-get-local-variables'.
14696
14697 2001-08-28  David Ponce  <david@dponce.com>
14698
14699         * semantic.texi: Synchronized with semantic.el doc fixes.
14700
14701         Added missing documentation for
14702         `semantic-after-toplevel-cache-change-hook' and documented new hook:
14703         `semantic-after-partial-cache-change-hook'.
14704
14705         * semantic.el (semantic-after-partial-cache-change-hook):
14706         Fixed doc string.
14707
14708         (semantic-remove-dirty-children-internal): Moved.
14709
14710         (semantic-remove-dirty-children): Moved.  Now remove all children of
14711         dirty tokens from `semantic-dirty-tokens'.
14712
14713         (semantic-bovinate-toplevel): Call `semantic-remove-dirty-children'
14714         before partial reparse.  Pass the list of updated tokens to hooks in
14715         `semantic-after-partial-cache-change-hook'.
14716
14717         (semantic-rebovinate-token): No more need to call
14718         `semantic-remove-dirty-children'.
14719
14720 2001-08-27  David Ponce  <david@dponce.com>
14721
14722         * semantic.el (semantic-clean-token-hooks, semantic-change-hooks, semantic-after-toplevel-bovinate-hook, semantic-before-toplevel-cache-flush-hook):
14723         Fixed doc strings.
14724
14725         (semantic-after-partial-cache-change-hook): New variable holding hooks
14726         run after the buffer token list has been updated after partial reparse
14727         completed.
14728
14729         (semantic-bovinate-toplevel): Run hooks in
14730         `semantic-after-partial-cache-change-hook' after partial reparse
14731         completed.
14732
14733         * senator.el (senator-minor-mode-name):
14734         Can be set to nil to disable display of the
14735         minor mode name in the mode line.
14736
14737         (senator-minor-mode-isearch-suffix): New option to set up the string
14738         appended to the mode name when senator isearch mode is on.
14739
14740         (senator-minor-mode-hook, senator-minor-mode-on-hook,
14741         senator-minor-mode-off-hook): Moved to group minor mode options
14742         together.
14743
14744         (senator-menu-bar): For consistency always use "Senator" for the menu
14745         title.
14746
14747         (senator-show-status): Use `senator-minor-mode-name' and
14748         `senator-minor-mode-isearch-suffix' settings.
14749
14750         (senator-minor-mode-setup): Signal an error when attempting to turn on
14751         Senator minor mode in a buffer not set up for parsing.
14752
14753         (senator-show-status, senator-mode-line-toggle): New GNU Emacs 21
14754         goodies to turn off Senator minor mode from the mode line or to turn
14755         it on or off from the the minor mode menu in the mode line.
14756
14757 2001-08-22  Eric M. Ludlam  <zappo@gnu.org>
14758
14759         * semantic-el.el (semantic-elisp-clos-slot-property-string, semantic-elisp-clos-args-to-semantic):
14760         New functions
14761         (semantic-elisp-form-to-doc-string): extract class slot details with
14762         above.
14763         (semantic-elisp-nonterminal-protection): New function.
14764         (semantic-default-elisp-setup): Remove old UML overrides, added
14765         `nonterminal-protection' override.
14766
14767 2001-08-21  David Ponce  <david@dponce.com>
14768
14769         * wisent/wisent.el: Updated header comments.
14770
14771         (wisent-default-action, wisent-process-nonterminal): Bison like
14772         default action.
14773
14774         (wisent-compile-grammar, wisent-parse): Updated doc strings.
14775
14776 2001-08-18  Eric M. Ludlam  <zappo@gnu.org>
14777
14778         * semantic-c.el: New c.bnf 1.40
14779         (semantic-expand-c-nonterminal): Handle 'pointer stuff for variables.
14780         (semantic-c-reconstitute-token): Handle 'pointer stuff for functions.
14781
14782         * c.bnf: Fixed the inclusion of * in variables and functions.
14783
14784 2001-08-17  Eric M. Ludlam  <zappo@gnu.org>
14785
14786         * tests/test.cpp: Added test for protected section in a class.
14787
14788         * tests/test.c: "register" test.
14789         Last fn has situations for testing local context.
14790
14791         * Project.ede: Version change.
14792
14793         * semantic.el (semantic-version): Update
14794         (semantic-toplevel-bovine-table): Removed main help on this variable,
14795         the details are in the texinfo manual now.
14796
14797         * semantic.texi: Added a section on Extra Specifiers
14798
14799         * semantic-util.el (semantic-override-table): Doc udpate.
14800
14801         * semantic-c.el: New c.bnf (1.39)
14802         (semantic-c-nonterminal-protection): Fix default protection based on
14803         class or struct.
14804         (semantic-default-c-setup): Added `semantic-c-nonterminal-protection'
14805         to the list of function overrides.
14806
14807         * c.bnf: Added register.
14808         Added template w/ comment, but don't use it.
14809
14810 2001-08-17  David Ponce  <david@dponce.com>
14811
14812         * wisent/wisent-java.el (semantic-java-lex):
14813         Reverted back to previous implementation used
14814         to find operator lexical tokens.  The regexp based approach is
14815         slower.
14816
14817         (wisent-java-operator-regexp): Removed.
14818
14819 2001-08-16  David Ponce  <david@dponce.com>
14820
14821         * wisent/wisent-java.el:
14822         Reorganized the code to fix byte-compilation problems.
14823
14824         * wisent/wisent-java.el (wisent-java-number-regexps):
14825         Removed.  Replaced by
14826         `wisent-java-number-regexp'.
14827
14828         (wisent-java-number-regexp): New constant.  Regular expression to
14829         match Java numbers.
14830
14831         (wisent-java-operator-regexp): New constant.  Regular expression to
14832         match Java operators.
14833
14834         (wisent-java-lex): Improved lexical analysis of Java numbers and
14835         operators.  Use `wisent-java-number-regexp' and
14836         `wisent-java-operator-regexp' to do one shot check for a number or
14837         operator lexeme.
14838
14839 2001-08-15  Eric M. Ludlam  <zappo@gnu.org>
14840
14841         * semantic.texi:
14842         Added a style guide chapter, with lots of details about different
14843         tokens, and whats in them.
14844
14845 2001-08-14  David Ponce  <david@dponce.com>
14846
14847         * wisent/wisent-java.bnf:
14848         Updated %outputfile to wisent-java.el and %parsetable to
14849         `wisent-java-parser-tables'.  Added %start tokens for alternate entry
14850         point nonterminals.
14851
14852         * wisent/wisent.el (wisent-compiled-grammar-p):
14853         New function to check if grammar is
14854         already compiled.
14855
14856         (wisent-compile-grammar): Use `wisent-compiled-grammar-p' to check if
14857         the grammar is already compiled.  If so just return it.
14858
14859         * wisent/wisent-java.el: Clean byte-compilation.
14860
14861         (wisent-java-grammar, wisent-java-parens, wisent-java-operators):
14862         Removed.  Replaced by respectively `wisent-java-parser-tables' and
14863         `wisent-java-tokens'.
14864
14865         (wisent-java-parser-tables): Generated from wisent-java.bnf.
14866
14867         (wisent-java-keywords, wisent-java-tokens): New constants for Java
14868         keywords and lexical tokens.  Generated from wisent-java.bnf.
14869
14870         (semantic-flex-token-value, semantic-flex-token-key): New functions to
14871         search in the token table.  These two functions should be moved to
14872         semantic.el.
14873
14874         (wisent-java-lex): Use lexical stuff generated from wisent-java.bnf.
14875
14876         (wisent-java-bovinate-toplevel): Use local value of
14877         `semantic-toplevel-bovine-table' instead of
14878         `wisent-java-parser-tables'.
14879
14880         (wisent-java-mode-hook): Removed.  Replaced by
14881         `wisent-java-default-setup'.
14882
14883         (wisent-java-default-setup): New `java-mode' hook to setup the
14884         Semantic environment of the LALR parser.  Partly generated from
14885         wisent-java.bnf.  It replaces the default
14886         `semantic-default-java-setup' hook when wisent-java.el is loaded.
14887
14888         (wisent-java-parse, wisent-java-lex-buffer): Use local value of
14889         `semantic-toplevel-bovine-table' instead of
14890         `wisent-java-parser-tables'.
14891
14892         * semantic-bnf.el (semantic-bnf-to-lalr):
14893         Added new argument for alternate entry point
14894         nonterminals.  Now generate parser tables like this:
14895
14896           (eval-when-compile
14897              (wisent-compile-grammar
14898                 `<grammar>
14899                 '<start-nonterminals>))
14900
14901         Thus the parser tables are compiled into the byte-code when the
14902         destination file source is byte-compiled.
14903
14904         (semantic-bnf-generate-and-load): Pass the list of 'start tokens to
14905         `semantic-bnf-to-lalr'.
14906
14907 2001-08-13  David Ponce  <david@dponce.com>
14908
14909         * wisent/wisent-java.el (wisent-java-lex):
14910         Fixed (wrong-type-argument integer-or-marker-p nil)
14911         when scanning a number at end of input stream.
14912
14913         (wisent-java-lex-buffer): Fixed error caused by missing `working'
14914         stuff.
14915
14916         * wisent/wisent.el (wisent-starts-nonterm):
14917         New constant for secondary entry point
14918         productions.
14919
14920         (wisent-reserved-symbols): Removed '$<name>' nonterminals which are
14921         now automatically reserved for internal use.
14922
14923         (wisent-show-nullable): Insert newline before title.
14924
14925         (wisent-show-starts): New function to report entry point
14926         nonterminals.
14927
14928         (wisent-valid-nonterminal-p): '$<name>' nonterminals are now
14929         automatically reserved for internal use.
14930
14931         (wisent-valid-terminal-p): Use `wisent-valid-nonterminal-p'.
14932
14933         (wisent-build-tables): Add the table of defined entry point
14934         nonterminals to the parser tables.
14935
14936         (wisent-process-grammar): New optional argument to specify a list of
14937         entry point nonterminals.  Build the table of entry point nonterminals
14938         and add the corresponding start productions to the grammar definition.
14939
14940         (wisent-compile-grammar): New optional argument to specify a list of
14941         entry point nonterminals.
14942
14943         (wisent-parse-start): New function to return the first lexical token
14944         to parse.
14945
14946         (wisent-parse): New argument to specify the nonterminal production
14947         used at parser initial state.  So the parser can now use grammar
14948         subsets.
14949
14950         * semantic-bnf.el (semantic-bnf-find-table-destination-old, semantic-bnf-find-table-destination, semantic-bnf-find-keyword-destination):
14951         Fixed "def[var|const]" regular
14952         expression to ensure that the searched variable or constant name is on
14953         word boundaries.
14954
14955         * wisent/wisent.el:
14956         New customization group `wisent'.  Minor code reorganization.
14957
14958         (wisent-parse-max-stack-size, wisent-parse-max-recover,
14959         wisent-state-table-size): Now customizable.
14960
14961         * wisent/wisent-java.bnf: Fixed %keywordtable variable name.
14962         Added install of overloaded functions in setup.
14963         Use @tag notation for the javadoc keywords to avoid conflicts with
14964         language reserved words.
14965
14966         * semantic-bnf.el (semantic-bnf-token-table):
14967         Added declaration of local variable tsymb.
14968
14969         (semantic-beginning-of-body): New function to move the point to the
14970         beginning of a function body.
14971
14972         (semantic-bnf-find-setup-code): Use `semantic-beginning-of-body' to
14973         insert new setup code at the beginning of the setup function.
14974
14975         (semantic-bnf-find-table-destination-old,
14976         semantic-bnf-find-table-destination,
14977         semantic-bnf-find-keyword-destination,
14978         semantic-bnf-find-token-destination): Fixed "def[var|const]" regular
14979         expression to ensure that the searched variable or constant name is on
14980         word boundaries.
14981
14982 2001-08-12  Eric M. Ludlam  <zappo@gnu.org>
14983
14984         * semantic-ctxt.el (semantic-narrow-to-context, semantic-with-buffer-narrowed-to-context, semantic-point-at-beginning-of-command, semantic-point-at-end-of-command, semantic-narrow-to-command, semantic-with-buffer-narrowed-to-command):
14985         New functions.
14986         (semantic-end-of-command, semantic-beginning-of-context):
14987         Narrow to current context.
14988         (semantic-end-of-command-default, semantic-beginning-of-context-default):
14989         Use a search, and if that fails go to point-[min/max].
14990         (semantic-ctxt-current-assignment-default): Narrow to current statement.
14991         Use searching functions for an equals.
14992
14993 2001-08-10  David Ponce  <david@dponce.com>
14994
14995         * semantic-java.el (semantic-java-keyword-table): Updated BNF grammar.
14996
14997         (semantic-java-doc-tag, semantic-java-doc-tag-name): New functions to
14998         convert to/from javadoc @tag notation.
14999
15000         (semantic-java-doc-keyword-before-p, semantic-java-doc-keywords-map,
15001         semantic-java-doc-setup): Take into account new @tag notation used for
15002         javadoc keywords.
15003
15004         * java.bnf:
15005         Use @tag notation for the javadoc keywords to avoid conflicts with
15006         language reserved words.
15007
15008 2001-08-09  David Ponce  <david@dponce.com>
15009
15010         * wisent/wisent-java.bnf: Initial revision.
15011
15012         * semantic-bnf.el (semantic-bovine-bnf-table, semantic-bnf-keyword-table):
15013         Added new
15014         TOKENTABLE and PARSERMODE keywords.
15015
15016         (semantic-bnf-token-name-symbol, semantic-bnf-token-token-type,
15017         semantic-bnf-token-token-value, semantic-bnf-token-rule-matchlist):
15018         New API macros/functions.
15019
15020         (semantic-bnf-matching-to-lalr, semantic-bnf-terminal-token-p,
15021         semantic-bnf-find-terminals, semantic-bnf-find-terminal-symbols,
15022         semantic-bnf-to-lalr, semantic-bnf-find-parser-mode): New functions to
15023         generate tables for the LALR parser.
15024
15025         (semantic-bnf-token-table, semantic-bnf-find-token-destination): New
15026         functions to generate a table of %token elements.
15027
15028         (semantic-bnf-generate-and-load): Take into account new %tokentable
15029         and %parsermode declarations.  Added generation of tables for the LALR
15030         parser.
15031
15032         (semantic-bnf-mode-keywords): Correctly highlight rule name when the
15033         colon is on a new line.
15034
15035         (semantic-bnf-mode): Added specification of the
15036         `fill-paragraph-function'.
15037
15038         (semantic-bnf-previous-colon-indentation): Improved indentation of
15039         rules when the colon and the matching list are on new lines.
15040
15041         (semantic-bnf-fill-paragraph): New function to fill BNF comments.
15042
15043 2001-08-08  Eric M. Ludlam  <zappo@gnu.org>
15044
15045         * Project.ede: Added the ChangeLog
15046
15047         * NEWS: NEWS
15048
15049         * tests/test.cpp: Added a reentrant example.
15050
15051         * tests/test.c: Added typedef which was reported as not working.
15052
15053         * semantic-sb.el (semantic-sb-button-token->text-function,  semantic-sb-info-token->text-function):
15054         New options.
15055         (semantic-sb-one-button): Use above to get abbreviation text.
15056
15057 2001-08-04  David Ponce  <david@dponce.com>
15058
15059         * senator.el (senator-eldoc-print-current-symbol-info-default):
15060         Fixed void-variable
15061         error on `semanticdb-current-database' when the optional semanticdb
15062         feature is not provided.
15063
15064 2001-08-02  David Ponce  <david@dponce.com>
15065
15066         * wisent/wisent.el (wisent-skip-token, wisent-skip-block):
15067         Do not clear the lookahead
15068         token nor call `wisent-errok' when at end of input to avoid infinite
15069         error recovery loop.
15070
15071         (wisent-parse): Always return the value on top of the stack.  Maybe it
15072         is a useful value when the parser returns after error recovery.
15073
15074         * wisent/wisent-java.el (wisent-java-parse):
15075         Fixed missing `working' stuff.
15076
15077 2001-08-01  Eric M. Ludlam  <zappo@gnu.org>
15078
15079         * semantic-c.el: New c.bnf.
15080         (semantic-c-reconstitute-token): Added reentrant support.
15081
15082         * c.bnf: Support reentrant.
15083
15084 2001-07-21  David Ponce  <david@dponce.com>
15085
15086         * wisent/wisent-java.el:
15087         Removed redefinitions of Semantic Flex functions which are now in
15088         semantic.el.
15089
15090         (wisent-java-bovinate-toplevel): Added "LALR" indicator to
15091         `working-status-forms' message to distinguish LALR parsing from
15092         default Semantic one.
15093
15094 2001-07-20  David Ponce  <david@dponce.com>
15095
15096         * semantic.el (semantic-flex-keyword-p, semantic-flex-buffer, semantic-flex-start, semantic-flex-end, semantic-flex-text, semantic-flex-list):
15097         Use
15098         `defsubst' instead of `defun' to improve performance of byte compiled
15099         code.
15100
15101 2001-07-20  Eric M. Ludlam  <zappo@gnu.org>
15102
15103         * Project.ede: Version update.
15104
15105         * semantic.el: Update version to beta 9
15106
15107         * semantic.texi:
15108         Added bits about getting destructor information, and about
15109         semantic-current-nonterminal-parent.
15110
15111         * semantic-util.el (semantic-name-nonterminal-default):
15112         Only get destructor flag if TOKEN
15113          is a function.
15114
15115         * semanticdb.el (semanticdb-find-nonterminal-by-token):
15116         New fn by Jesper Nordenberg
15117
15118         * semantic-c.el:
15119         Return public for the protection on any class part which is unlabeled.
15120
15121         * semantic-el.el: Support uml prototypes.
15122
15123 2001-07-20  David Ponce  <david@dponce.com>
15124
15125         * wisent/wisent.el: Initial import of the Semantic LALR parser: Wisent.
15126
15127         * wisent/wisent.el: New file.
15128
15129         * wisent/wisent-java.el:
15130         Initial import of the Semantic LALR parser: Wisent.
15131
15132         * wisent/wisent-java.el: New file.
15133
15134         * wisent/wisent-expr.el:
15135         Initial import of the Semantic LALR parser: Wisent.
15136
15137         * wisent/wisent-expr.el: New file.
15138
15139 2001-07-19  Eric M. Ludlam  <zappo@gnu.org>
15140
15141         * semantic-util.el (semantic-concise-prototype-nonterminal-default):
15142         Add spaces before (,
15143         and after ,
15144         (semantic-uml-colon-string, semantic-uml-no-protection-string): New Var
15145         (semantic-uml-protection-to-string): Return no-protection-string, more
15146         doc.
15147         (semantic-uml-arguments-to-string): Add some spaces into the text.
15148         (semantic-uml-prototype-nonterminal-default,
15149          semantic-uml-concice-prototype-nonterminal-default): Use
15150          -uml-colon-string.
15151
15152         * semantic.el (semantic-toplevel-bovine-table):
15153         Added text for the destructor.
15154
15155         * semantic-util.el (semantic-token-function-destructor): New function
15156         (semantic-current-nonterminal-parent): New function
15157         (semantic-name-nonterminal-default): Handle destructor.
15158         (semantic-uml-arguments-to-string): Pass arguments into mapconcat.
15159         (semantic-uml-prototype-nonterminal-default): Fixed argument display
15160         to not use non-uml prototype to string function, and added support
15161         for types.
15162
15163         * semantic-util.el (semantic-token->text-functions):
15164         Added uml-concise... funciton.
15165         (semantic-uml-protection-to-string): Return nil for unknown protection.
15166         (semantic-uml-token-or-string-to-string): Convert a token or string
15167         into a UML like string.  Taken from the body of
15168         `semantic-uml-abbreviate-nonterminal-default'.
15169         (semantic-uml-abbreviate-nonterminal-default): Use the above.
15170         (semantic-uml-arguments-to-string): Convert an argument list to a UML
15171         string list.  Use in above.
15172         (semantic-uml-prototype-nonterminal-default): Use the above two new fns.
15173         (semantic-uml-concise-prototype-nonterminal[-default]): New functions
15174         (semantic-nonterminal-protection-default): Remove static from list of
15175         modifiers that mean private.
15176
15177 2001-07-13  Eric M. Ludlam  <zappo@gnu.org>
15178
15179         * semantic-util.el (semantic-token-modifiers): New function.
15180         (semantic-uml-prototype-nonterminal): New function.
15181         (semantic-token->text-functions): Added above function.
15182         (semantic-face-alist): Added keyword font face, and more doc.
15183         (semantic-uml-protection-to-string): New function from
15184           semantic-utml-abbreviate-nonterminal-default.
15185         (semantic-abbreviate-nonterminal-default): Use above fn.
15186         (semantic-nonterminal-protection): Swap out friend, use protected.
15187         (semantic-nonterminal-protection-default): Use
15188           `semantic-token-modifiers' instead of
15189           `semantic-token-type-modifiers'.
15190
15191         * senator.el (senator-jump): Push the mark before moving.
15192
15193         * semantic-el.el:
15194         Highlight &optional in prototypes with the keyword face.
15195
15196         * semantic-c.el: Stop using friend, and use protected.
15197
15198         * semantic.el: Updated version number.
15199
15200 2001-06-11  Eric M. Ludlam  <zappo@gnu.org>
15201
15202         * semantic.texi (semantic-token-type-parent):
15203         Describe the format of the parent list.
15204         (semantic-token-type-parent-superclass,
15205         semantic-token-type-parent-implement): New function doc.
15206
15207         * semantic.el (semantic-toplevel-bovine-table): Doc fix.
15208
15209         * semantic-util.el (semantic-token-type-parent):
15210         Describe the format of the parent list.
15211         (semantic-token-type-parent-superclass,
15212         semantic-token-type-parent-implement): New functions.
15213
15214 2001-06-06  Eric M. Ludlam  <zappo@gnu.org>
15215
15216         * tests/Project.ede: Project file for the tests directory.
15217
15218 2001-06-05  Eric M. Ludlam  <zappo@gnu.org>
15219
15220         * semantic-c.el (semantic-default-c-path, semantic-default-c-built-in-types):
15221         Moved
15222         (semantic-c-nonterminal-protection): New function
15223         (semantic-default-c-setup): Add an override table with above in it.
15224
15225         * semantic.texi (semantic-override-table): Doc update.
15226         (semantic-nonterminal-protection): New doc.
15227
15228         * semantic-util.el (semantic-override-table): Doc update.
15229         (semantic-uml-abbreviate-nonterminal-default): Display protection symbol
15230         (semantic-nonterminal-protection, semantic-nonterminal-protection-default):
15231           New functions.
15232
15233 2001-06-03  Eric M. Ludlam  <zappo@gnu.org>
15234
15235         * semantic.el (semantic-toplevel-bovine-cache): Doc fix.
15236         (semantic-after-toplevel-bovinate-hook): Doc fix.
15237         (semantic-after-toplevel-cache-change-hook): Doc fix.
15238
15239         * semanticdb.el (semanticdb-post-bovination):
15240         Update to take a parameter.
15241
15242         * Project.ede: Updated version.
15243
15244         * semanticdb.el (semanticdb-hooks):
15245         Use `semantic-after-toplevel-cache-change-hook'
15246         instead of `semantic-after-toplevel-bovinate-hook'.
15247
15248         * semantic.el (semantic-version): New version
15249         ((semantic-toplevel-bovine-cache): Doc change.
15250         (semantic-after-toplevel-cache-change-hook): New hook.
15251         (semantic-clear-toplevel-cache): Do not call
15252         `semantic-after-toplevel-bovineate-hook' for 1.3 compatibility.
15253         Do call `semantic-after-toplevel-cache-change-hook'.
15254         (semantic-bovinate-toplevel): Do not call
15255         `semantic-after-toplevel-bovinate-hook' after custom parser.
15256         Call `semantic-after-toplevel-cache-change-hook' after full parse.
15257
15258         * tests/test.cpp: Added new features of c.bnf 1.37.
15259
15260         * semantic-c.el: New c.bnf
15261         Add throws to semantic-c-reconstitute-token.
15262         Add `throw' keyword.
15263
15264         * c.bnf: Multi-inheritance for classes.
15265         Structs like classes for C++.
15266         No ; on name spaces.
15267         Throws for methods.
15268         (Bugs & patches from "Jesper Nordenberg" <mayhem@home.se>
15269         and Norbert Lindlbauer <Norbert_Lindlbauer@betaresearch.de>)
15270
15271 2001-05-29  David Ponce  <david@dponce.com>
15272
15273         * semantic.el (semantic-remove-dirty-children, semantic-remove-dirty-children-internal):
15274         New functions.
15275
15276         (semantic-rebovinate-token): Fixed "wrong-type-argument overlayp" bug.
15277         Use `semantic-remove-dirty-children' to remove the old token children
15278         from the dirty list before deorverlaying it.
15279
15280 2001-05-28  David Ponce  <david@dponce.com>
15281
15282         * semantic-java.el (semantic-java-skip-spaces-backward, semantic-java-skip-spaces-forward):
15283         Changed definition from macro to
15284         more appropriate in-line function.
15285
15286 2001-05-25  Eric M. Ludlam  <zappo@gnu.org>
15287
15288         * semantic-c.el: New c.bnf.
15289
15290         * c.bnf (expression): Added string.
15291
15292 2001-05-24  Eric M. Ludlam  <zappo@gnu.org>
15293
15294         * working.el:
15295         Removed variables to stop message logging from working.*status fns.
15296         This was a merge error.
15297
15298 2001-05-23  Eric M. Ludlam  <zappo@gnu.org>
15299
15300         * semantic-scm.el: New scheme.bnf
15301
15302         * scheme.bnf: Fixed type on LOAD token generation.
15303
15304         * working.el: Updated version number.
15305         (working-status-percentage-type, working-status-dynamic-type): added nil option
15306         (working-percentage-step): New variable.
15307         (working-last-percent): New variable.
15308         (working-message): Added `eval-and-compile' around it.
15309         (working-status-forms): Added `working-last-percent' to let statement.
15310         (working-status): Wrap body of code in an if statement to make sure
15311         we only display a message if `working-percentage-step' had passed.
15312         Enable nil message type.
15313         (working-dynamic-status): Enable nil message type.
15314
15315         * tests/test.c: Test parsing of C files.
15316
15317 2001-05-23  David Ponce  <david@dponce.com>
15318
15319         * semantic-java.el: Require 'senator at compile time.
15320         (semantic-default-java-setup): Rebuilt from updated java.bnf.
15321
15322         * java.bnf:
15323         Added `senator-step-at-token-ids' useful default value in language
15324         settings.
15325         Removed in line CVS change log.
15326
15327         * senator.el (senator-message):
15328         Removed. Replaced by new `working-message'
15329         function.
15330
15331         (senator-step-at-parent): Now returns the outermost parent found
15332         instead of the innermost one.
15333
15334         (senator-next-token, senator-previous-token, senator-jump,
15335         senator-beginning-of-defun, senator-isearch-toggle-semantic-mode): Use
15336         `working-message'.
15337
15338         * working.el (working-message-emacs, working-message-xemacs, working-message):
15339         New
15340         functions to display messages without logging.
15341
15342         (working-status, working-dynamic-status): Use `working-message'.
15343
15344 2001-05-21  David Ponce  <david@dponce.com>
15345
15346         * senator.el (senator-message): No more logging of messages on XEmacs.
15347
15348         (senator-find-token-before, senator-find-previous-token,
15349         senator-find-last-token, senator-find-next-token): Removed these
15350         no more used functions.
15351
15352         (senator-step-at-parent, senator-previous-token-or-parent): New
15353         functions.
15354
15355         (senator-next-token, senator-previous-token): New implementation
15356         based on `semantic-find-nonterminal-by-overlay-next' and
15357         `semantic-find-nonterminal-by-overlay-prev'.
15358
15359         (senator-beginning-of-defun): Fixed the bad
15360         `senator-step-at-start-end-token-ids' value.  Ensure that the
15361         point is always at the beginning of the previous token found.
15362
15363         (senator-beginning-of-defun, senator-end-of-defun): Doc string
15364         updated to inform that the ARG parameter is not yet handled.
15365
15366 2001-05-20  Eric M. Ludlam  <zappo@gnu.org>
15367
15368         * Project.ede: Fixed name.
15369         Added URLs
15370
15371 2001-05-18  Eric M. Ludlam  <zappo@gnu.org>
15372
15373         * semantic-util.el (semantic-find-documentation):
15374         Fixed to handle deoverlayed (from db)
15375         cases, plus normalized cases of slots in structs without position info.
15376
15377 2001-05-16  David Ponce  <david@dponce.com>
15378
15379         * senator.el (senator-insert-foreign-token-default, senator-insert-foreign-token, senator-eldoc-print-current-symbol-info-default, senator-eldoc-print-current-symbol-info):
15380         Functions moved to avoid
15381         compiler warnings.
15382
15383 2001-05-16  Eric M. Ludlam  <zappo@gnu.org>
15384
15385         * INSTALL: Added info about adding speedbar to the load path.
15386
15387         * semantic.el: Update version number.
15388
15389 2001-05-15  David Ponce  <david@dponce.com>
15390
15391         * senator.el (senator-completion-flatten-stream):
15392         No more add function arguments to
15393         the completion stream.
15394
15395         (senator-completion-function-args): New function to build a string of
15396         function argument names.
15397
15398         (senator-completion-refine-name): New function to refine a token
15399         completion name in an incremental way.
15400
15401         (senator-completion-uniquify-names): New function to uniquify token
15402         names in a completion stream.
15403
15404         (senator-completion-stream): Use `senator-completion-uniquify-names'.
15405
15406 2001-05-14  Eric M. Ludlam  <zappo@gnu.org>
15407
15408         * semantic.texi:
15409         Added new submenus for override functions, with big special detail
15410         about token->text functions.
15411
15412         * semantic-imenu.el:
15413         Make sure that semantic-sb is loaded when this is loaded.
15414         Not because we needed it, but because speedbar will throw errors
15415         with semantic generated imenu tokens.
15416
15417 2001-05-12  Eric M. Ludlam  <zappo@gnu.org>
15418
15419         * semantic.el (semantic-bovinate-nonterminal):
15420         When calculating the results, if
15421         there was no match, then the result stream equals the input stream, so
15422         remove the non-matching token from the return stream, claiming that
15423         nothing matched.  This prevents repetitive parsing.
15424         (semantic-flex): If the comment-start-skip is matched, but
15425         forward-comment does nothing, then make sure we skip intervening
15426         boring characters so we don't loop infinitly.
15427
15428 2001-05-09  David Ponce  <david@dponce.com>
15429
15430         * semanticdb.el (semanticdb-current-database-list):
15431         Fixed `expand-file-name' bug when
15432         `root' local variable is nil.
15433
15434 2001-05-09  Eric M. Ludlam  <zappo@gnu.org>
15435
15436         * Project.ede: Version & files.
15437
15438         * semantic-c.el: New c.bnf
15439
15440         * c.bnf: Added inline method support.
15441         Store protection elements
15442         Change enum parts to be integer variables.
15443
15444 2001-05-07  David Ponce  <david@dponce.com>
15445
15446         * semantic-util.el (semantic-prototype-nonterminal-default):
15447         Fixed extra space added
15448         before the name of simple tokens like 'include and 'package.
15449
15450         * semantic-java.el (semantic-java-prototype-function, semantic-java-prototype-variable, semantic-java-prototype-type):
15451         Follows `semantic-colorize-text' API
15452         change.
15453
15454         (semantic-java-prototype-include, semantic-java-prototype-package):
15455         Removed these unnecessary functions.
15456
15457 2001-05-07  Eric M. Ludlam  <zappo@gnu.org>
15458
15459         * semantic-el.el (semantic-elisp-prototype-nonterminal):
15460         Changed with `semantic-colorize-text'.
15461
15462         * semantic-bnf.el (semantic-bnf-mode):
15463         Removed `name-nonterminal' override.
15464         Added new values to `semantic-face-alist'
15465         (semantic-bnf-name-nonterminal): Removed.
15466         (semantic-summarize-nonterminal): Changed with `semantic-colorize-text'.
15467
15468         * semantic-util.el (semantic-prototype-nonterminal):
15469         Pass parent/color to subfunction.
15470
15471         * semantic-util.el (semantic-colorize-text):
15472         Take a token as a face class instead of a face.
15473         (semantic-face-alist): New.
15474         (semantic-name-nonterminal): Doc fix.
15475         (semantic-name-nonterminal-default): Use face-class.
15476         (semantic-prototype-nonterminal): Doc fix.
15477         (semantic-prototype-nonterminal-default): Use face-class.
15478         (semantic-concise-prototype-nonterminal): Doc fix
15479         (semantic-concise-prototype-nonterminal-default): Use face-class.
15480         (semantic-uml-abbreviate-nonterminal): Doc fix
15481         (semantic-uml-abbreviate-nonterminal-default): Use face-class.
15482
15483 2001-05-07  David Ponce  <david@dponce.com>
15484
15485         * semantic-java.el (semantic-java-prototype-function, semantic-java-prototype-variable, semantic-java-prototype-type):
15486         Added implementation for the COLOR
15487         parameter.
15488
15489 2001-05-06  David Ponce  <david@dponce.com>
15490
15491         * senator.el (senator-completion-menu-summary-function): Use
15492         `semantic-token->text-custom-list' type instead of function type.
15493
15494         (senator-completion-menu-insert-function): Added choice between
15495         default `senator-completion-menu-insert-default' function or user's
15496         specified one.
15497
15498         (senator-completion-menu-window-offsets): Fixed an Emacs 21 bug w/
15499         completion menu.  Returned offsets are now rounded down.
15500
15501         (senator-eldoc-use-color): New option.
15502
15503         (senator-eldoc-print-current-symbol-info): Use new
15504         `senator-eldoc-use-color' option.
15505
15506         Minor "checkdoc" fixes.
15507
15508         * semantic-java.el:
15509         (semantic-java-prototype-function, semantic-java-prototype-variable,
15510         semantic-java-prototype-type, semantic-java-prototype-include,
15511         semantic-java-prototype-package, semantic-java-prototype-nonterminal):
15512         Added new `semantic-prototype-nonterminal' optional parameters PARENT
15513         and COLOR (not yet used).
15514
15515         (semantic-java-prototype-nonterminal): Replaced default behavior
15516         `semantic-abbreviate-nonterminal' by
15517         `semantic-prototype-nonterminal-default'. Minor code cleanup.
15518
15519 2001-05-05  Eric M. Ludlam  <zappo@gnu.org>
15520
15521         * semantic-imenu.el: Be safe about loading the imenu library.
15522         (semantic-imenu-summary-function): Use new
15523         `semantic-token->text-custom-list' for customization type.
15524         (semantic-which-function-use-color): New variable
15525         (semantic-default-which-function): Use
15526         `semantic-which-function-use-color' to draw the token with colors.
15527
15528         * semantic-scm.el: Fixed the title comment.
15529
15530         * semantic-load.el:
15531         Do not set up imenu code if the imenu library is not available.
15532
15533         * semantic-bnf.el (semantic-bnf-mode):
15534         Added `semantic-bnf-name-nonterminal' as a new
15535         override fcn.
15536         (semantic-bnf-name-nonterminal): New fcn
15537         (semantic-bnf-abbreviate-nonterminal, semantic-bnf-summarize-nonterminal):
15538         Use semantic-name-nonterminal for some things, accept parent/color
15539         arguments.  Colorize text when appropriate.
15540
15541         * semantic-el.el (semantic-elisp-prototype-nonterminal):
15542         Take parent/color argument.
15543         Use the color argument to colorize the output text.
15544
15545         * semantic-util.el (semantic-override-table): Doc fix.
15546         (semantic-token->text-functions, semantic-token->text-custom-list): New var.
15547         (semantic-name-nonterminal, semantic-name-nonterminal-default): New fcn
15548         (semantic-abbreviate-nonterminal[-default]): Use semantic-name-nonterminal.
15549         Added color parameter.
15550         (semantic-summarize-nonterminal[-default]): Added color parameter.
15551         (semantic-prototype-nonterminal[-default]): Added color parameter.
15552         (semantic-concise-prototype-nonterminal[-default]): Added color parameter.
15553         (semantic-uml-abbreviate-nonterminal[-defailt]): New functions
15554
15555         * semantic.el (semantic-version): Updated
15556         (semantic-token-p): nil is a symbol, so make sure that the 'token slot
15557          in a token is not nil.
15558
15559 2001-05-04  David Ponce  <david@dponce.com>
15560
15561         * semantic.el (semantic-bovinate-nonterminal-check-obarray):
15562         New variable to
15563         remember streams already parsed for nonterminal symbols.
15564
15565         (semantic-set-toplevel-bovine-cache): Cleanup
15566         `semantic-bovinate-nonterminal-check-obarray'.
15567
15568         (semantic-bovinate-nonterminal-check): New function to check if a
15569         stream has already been parsed for nonterminal.
15570
15571         (semantic-bovinate-nonterminal): Use
15572         `semantic-bovinate-nonterminal-check' to detect infinite recursion
15573         when doing a full reparse and abort parsing.
15574
15575 2001-05-02  Eric M. Ludlam  <zappo@gnu.org>
15576
15577         * semantic-c.el: New c.bnf
15578
15579 2001-05-01  Eric M. Ludlam  <zappo@gnu.org>
15580
15581         * c.bnf: Revamped lots of summary strings.
15582         Added `type' as a possible expansion in classsubparts.
15583
15584         * document-vars.el: Checkdoc run.
15585
15586 2001-04-30  Eric M. Ludlam  <zappo@gnu.org>
15587
15588         * semanticdb.el (semanticdb-project-roots): New variable
15589         (semanticdb-project-root-functions): New variable
15590         (semanticdb-current-database-list): New function
15591         (semanticdb-find-nonterminal-by-function): Use
15592         `semanticdb-current-database-list' to get list of databases if none
15593         is specified.
15594
15595         * semantic-el.el (semantic-elisp-form-to-doc-string):
15596         Fixed final cond condition.
15597
15598 2001-04-30  David Ponce  <david@dponce.com>
15599
15600         * java.bnf, semantic-java.el:
15601         Changed "version" javadoc keyword to not optional.
15602
15603 2001-04-28  Eric M. Ludlam  <zappo@gnu.org>
15604
15605         * semantic.el:
15606         Added new documentation strings to all the reparsing related hooks to
15607         be much more descriptive.
15608
15609         * semantic.texi: Changed the title.
15610         Added new section `parser hooks', and moved  the two
15611         `..reparse-needed' function doc in there, along with descriptions of
15612         all the hooks, sucked from the source.
15613
15614         * semantic-bnf.el (semantic-bovine-bnf-table):
15615         Extract buffer strings without properties.
15616         Turn sublists in %put tokens into real tokens (with a symbol identifier)
15617         (semantic-bnf-mode): Add `semantic-bnf-nonterminal-children' to
15618         overload list.
15619         (semantic-bnf-nonterminal-children): New fcn.
15620
15621 2001-04-27  David Ponce  <david@dponce.com>
15622
15623         * working.el (working-status, working-dynamic-status):
15624         No more log progress
15625         messages on Xemacs.
15626
15627 2001-04-27  Eric M. Ludlam  <zappo@gnu.org>
15628
15629         * semantic-el.el:
15630         Fixed reading of doc strings if they are not actually strings.
15631
15632 2001-04-26  David Ponce  <david@dponce.com>
15633
15634         * semantic-java.el (semantic-java-keyword-table):
15635         reflect changes in java.bnf.
15636
15637         (semantic-java-clean-docstring): removed.
15638
15639         (semantic-java-find-documentation): use
15640         `semantic-find-doc-snarf-comment' instead of
15641         `semantic-java-clean-docstring'.
15642
15643         (semantic-java-doc-line-tags, semantic-java-doc-with-name-tags,
15644         semantic-java-doc-with-ref-tags, semantic-java-doc-extra-type-tags,
15645         semantic-java-doc-extra-function-tags,
15646         semantic-java-doc-extra-variable-tags, semantic-java-doc-type-tags,
15647         semantic-java-doc-function-tags, semantic-java-doc-variable-tags): new
15648         variables to handle javadoc tags.
15649
15650         (semantic-java-doc-keyword-before-p, semantic-java-doc-keywords-map,
15651         semantic-java-doc-setup): new functions to handle javadoc tags.
15652
15653         (semantic-default-java-setup): reflect changes in java.bnf. Calls
15654         `semantic-java-doc-setup' to setup javadoc elements.
15655
15656         * java.bnf: Added official javadoc line tag keywords.
15657         Provided a value for `block-comment-end'.
15658
15659         * senator.el (senator-minor-mode, senator-minor-mode-setup): Doc fix.
15660
15661 2001-04-26  Eric M. Ludlam  <zappo@gnu.org>
15662
15663         * semanticdb.el (semanticdb-kill-hook):
15664         Use semantic-active-p, instead of checking for
15665         the semantic table.
15666
15667 2001-04-25  David Ponce  <david@dponce.com>
15668
15669         * semantic.el (semantic-new-buffer-fcn, semantic-change-major-mode-hook-function, semantic-post-change-major-mode-function):
15670         Fixed some problems when
15671         initializing Semantic enabled buffers.
15672
15673         (semantic-changed-major-mode): Renamed to
15674         `semantic-changed-mode-buffers'.
15675
15676 2001-04-25  Eric M. Ludlam  <zappo@gnu.org>
15677
15678         * semantic.texi:
15679         Added documentation for new functions in semantic-util, and semanticdb.
15680
15681         * semanticdb.el (semanticdb-current-database): new function.
15682         (semanticdb-find-nonterminal-by-property,
15683          semanticdb-find-nonterminal-by-extra-spec,
15684          semanticdb-find-nonterminal-by-extra-spec-value): new functions.
15685         (semanticdb-find-nonterminal-by-function): Use
15686          `semanticdb-current-database' as a function, not a variable.
15687
15688         * semantic-util.el:
15689         (semantic-find-nonterminal-by-extra-spec-value) New fcn.
15690         (semantic-read-symbol) show the default value, and return it.
15691
15692 2001-04-23  David Ponce  <david@dponce.com>
15693
15694         * semantic-imenu.el (semantic-imenu-flush-fcn):
15695         Added missing `remove-hook' local flags.
15696         (semantic-create-imenu-index): Index creation could remove hook just
15697         added so moved `add-hook' after index creation.
15698
15699         * senator.el: semantic-imenu not only required at compile time.
15700         (senator-momentary-highlight-face): Fixed typo.
15701         (add-log-current-defun): new advice.
15702
15703 2001-04-22  Eric M. Ludlam  <zappo@gnu.org>
15704
15705         * semantic.el:
15706         Change name of old find-file-hook to semantic-new-buffer-fcn.
15707         Do not call semantic-new-buffer-fcn in find-file-hook, only
15708         call it from the change-major-mode-hook stuff.
15709
15710 2001-04-21  Eric M. Ludlam  <zappo@gnu.org>
15711
15712         * semantic.texi:
15713         Fixed up some docs, and added the semanticdb-persistent-path var too.
15714
15715         * semantic.el: Changed the eval-defun function hook to be generic.
15716         Changed the change-major-mode sequence to a new function which
15717           will only clear the cache in a semantic buffer.  It then tracks all
15718           buffers changed, and in a post-command-hook, follows the find-file
15719           hook code on every changed buffer.
15720
15721         * semantic-util.el:
15722         When show-dirty-mode is on, add a rebovination into the after-save-hook.
15723
15724         * semantic-el.el: Fixed problems with defstruct
15725
15726         * semantic-ctxt.el:
15727         Make sure that semantic-case-fold is used for anything that uses
15728         regexps with names.
15729
15730         * semantic-c.el: new c.bnf
15731
15732         * c.bnf: Spelling error for integer.
15733
15734         * INSTALL: Fixed instructions for .emacs files.
15735
15736         * semanticdb.el: Small doc changes.
15737         When saving a database, use condition-case to protect against
15738         file errors, or file write-protection errors.  This assumes that
15739         we aren't going to worry about caches in directories we can't write
15740         to.
15741
15742 2001-04-19  David Ponce  <david@dponce.com>
15743
15744         * senator.el: Added isearch lazy highlighting support for XEmacs 21.4.
15745
15746 2001-04-13  David Ponce  <david@dponce.com>
15747
15748         * java.bnf: Updated copyrights.
15749
15750 2001-04-13  Eric M. Ludlam  <zappo@gnu.org>
15751
15752         * semantic-load.el: Added autoload `semantic-change-function-mark-dirty
15753         Add hook `semantic-change-hooks to contain above fcn.
15754
15755         * semantic-util.el:
15756         Remove hokey semantic dependency, and explicitly depend on semantic.
15757         Moved several common token access functions back into semantic.el.
15758         Moved token overlay/deoverlay functions into semantic.el.
15759         Moved `semantic-file-token-stream' into this file.
15760         New fn `semantic-change-function-mark-dirty' to be used as
15761           a hook in `semantic-change-hooks'.
15762
15763         * semantic.el:
15764         Stop depending on semantic-util.  Pull in the proper bits needed to
15765         operate in from semantic-util.  (This makes undoes some of a previous
15766         check in.)  This includes common token access, and deoverlay/overlay a
15767         token functions.
15768         Removed the after change function body, and call a hook.
15769
15770         * semantic.texi:
15771         Fixed a type originally found in document.el (which created much of
15772         this documetnation.)
15773
15774         * document.el: Fixed a type-o (found by Richard Kim)
15775
15776 2001-04-13  David Ponce  <david@dponce.com>
15777
15778         * java.bnf: Added keyword summaries.
15779
15780         * semantic-java.el (semantic-java-keyword-table):
15781         Added keyword summaries.
15782
15783 2001-04-13  Eric M. Ludlam  <zappo@gnu.org>
15784
15785         * semantic-c.el: New c.bnf
15786
15787         * c.bnf: Added built in types (void, char, etc) and summaries.
15788
15789         * semantic-scm.el: New scheme.bnf.
15790
15791         * scheme.bnf: Added some summaries to tokens.
15792
15793         * semantic-make.el: New make.bnf
15794
15795         * make.bnf:
15796         Added a keyword table, and several new tokens and summaries.
15797         Added support for the include macro.
15798
15799         * INSTALL: Added makefile tricks to the INSTALL process.
15800
15801         * semantic.texi: Added semanticdb-mode-hooks.
15802
15803         * semantic-imenu.el:
15804         Added `semantic-imenu-flush-fcn', and add it to the semanticdb-mode-hooks.
15805
15806         * semanticdb.el:
15807         Added `semanticdb-mode-hooks', run when the global semanticdb is
15808         turned on and off.
15809         Removed imenu reference when toggling semanticdb on and off.
15810
15811 2001-04-12  David Ponce  <david@dponce.com>
15812
15813         * senator.el: Eliminated lots of compile warnings.
15814
15815         (senator-minor-mode): No more use Emacs 21 `define-minor-mode' to
15816         avoid byte code incompatibilities between Emacs 21 and previous
15817         versions.
15818
15819 2001-04-12  Eric M. Ludlam  <zappo@gnu.org>
15820
15821         * Project.ede: Version, and some naming.
15822
15823         * semanticdb.el: Added compile time require statements.
15824
15825         * semantic.el:
15826         Removed some compile time requirements.  Accept the errors.
15827         Remove autoloads for functions defined locally.
15828
15829         * semantic-util.el, semantic-texi.el, semantic-scm.el, semantic-java.el, semantic-imenu.el, semantic-ctxt.el, semantic-c.el, semantic-bnf.el:
15830         Added compile time require statements.
15831
15832 2001-04-11  David Ponce  <david@dponce.com>
15833
15834         * senator.el (senator-completion-menu-window-offsets):
15835         On Emacs 21 add the window
15836         left margin width to XOFFSET.
15837
15838 2001-04-10  David Ponce  <david@dponce.com>
15839
15840         * semanticdb.el (semanticdb-find-nonterminal-by-function):
15841         Search take into account
15842         the current buffer local value of `semantic-case-fold'.
15843
15844         * semantic-util.el (semantic-find-nonterminal-by-name, semantic-find-nonterminal-by-function, semantic-find-nonterminal-by-function-first-match):
15845         Search take into
15846         account the current buffer local value of `semantic-case-fold'.
15847
15848 2001-04-09  David Ponce  <david@dponce.com>
15849
15850         * senator.el: Fixed header comments and removed inline CVS change log.
15851
15852         (senator-completion-menu-window-offsets): New function.
15853
15854         (senator-completion-menu-point-as-event): When running Emacs, use
15855         `senator-completion-menu-window-offsets' to translate a point position
15856         in frame coordinates.
15857
15858 2001-04-07  Eric M. Ludlam  <zappo@gnu.org>
15859
15860         * Project.ede: More project updates.
15861
15862         * semantic.texi:
15863         A series of cleanup items submitted by Karl Eichwalder <keichwa@gmx.net>.
15864
15865         * semantic-el.el: Handle double parent case for quoted toplevel code.
15866
15867         * semantic-c.el:
15868         Added equivalent modes setting from c.bnf w/ new semantic-bnf code.
15869
15870         * semantic-ctxt.el:
15871         Fixed up some documentation that didn't mention the override function.
15872
15873         * document.el: Added a note about texinfo generation.
15874
15875         * semantic-bnf.el: Better speedbar support.
15876         Creates new local variable `semantic-equivalent-major-modes'.
15877
15878         * semantic.el: Removed macros to semantic-util.
15879         Imported commands that deal specifically with parsing from semantic-util.
15880
15881         * semantic-util.el:
15882         Copied some macros from semantic.el into semantic-util.el.
15883         Copied interactive parsing functions out of semantic-util.
15884
15885         * semantic-imenu.el:
15886         Use `semantidb-equivalent-mode' instead of just comparing major modes.
15887         This lets C and C++ to show up in the same directory imenu menu.
15888
15889         * semanticdb.el: Require semantic.
15890         When `semanticdb-persistent-path' is `project', and there are no
15891          project predicates, be equivalent to 'always.
15892         Added `semanticdb-equivalent-mode' function.  Use it in the find function.
15893
15894         * semantic-c.el: New c.bnf
15895
15896         * c.bnf: Added name spaces, and references.
15897
15898 2001-03-27  David Ponce  <david@dponce.com>
15899
15900         * senator.el (senator-completion-menu-popup):
15901         Fixed error when handling a simple
15902         list of menu items returned when the Semantic Database feature is
15903         disabled.
15904
15905 2001-03-26  David Ponce  <david@dponce.com>
15906
15907         * senator.el (senator-find-nonterminal-by-name, senator-find-nonterminal-by-name-regexp, senator-complete-symbol, senator-eldoc-print-current-symbol-info-default):
15908         new format of the
15909         value returned by `semanticdb-find-nonterminal-by-name' and
15910         `semanticdb-find-nonterminal-by-name-regexp'.
15911
15912         (senator-completion-menu-item, senator-completion-menu-popup): Added
15913         sub-menus for each file were tokens were found by Semantic Database
15914         search functions.
15915
15916         * semantic-texi.el (semantic-texi-update-doc-from-texi, semantic-texi-goto-source):
15917         new
15918         format of the value returned by `semanticdb-find-nonterminal-by-name'.
15919
15920         * semantic-ctxt.el (semantic-suggest-lookup-item):
15921         new format of the value returned by
15922         `semanticdb-find-nonterminal-by-name'.
15923
15924         * semanticdb.el (semanticdb-find-nonterminal-by-name, semanticdb-find-nonterminal-by-name-regexp, semanticdb-find-nonterminal-by-type, semanticdb-find-nonterminal-by-function):
15925         return the DB table where
15926         tokens were found as the first element of each returned list.
15927
15928 2001-03-21  David Ponce  <david@dponce.com>
15929
15930         * semanticdb.el (semanticdb-toggle-global-mode):
15931         new function. Toggle use of the
15932         Semantic Database feature and update the environment of Semantic
15933         enabled buffers accordingly.
15934
15935         * semantic-util.el (semantic-map-buffers):
15936         new function.  Run a function for each
15937         Semantic enabled buffer found.
15938
15939         * senator.el (senator-find-nonterminal-by-name, senator-find-nonterminal-by-name-regexp):
15940         return the complete list of
15941         tokens found instead of the ones from the first semanticdb table.
15942
15943         (senator-completion-menu-do-complete, senator-completion-menu-item):
15944         use a one element array to pass and receive token instead of the token
15945         overlay.  Thus can handle tokens without overlay, returned by
15946         semanticdb.
15947
15948         (senator-completion-menu-point-as-event): New function that returns
15949         the text cursor position as an event.
15950
15951         (senator-completion-menu-popup): Now a command.  Uses
15952         `senator-completion-menu-point-as-event' to popup the menu at
15953         completion point.
15954
15955         (senator-completion-menu-mouse-popup,
15956         senator-completion-menu-keyboard-popup): deleted.  Replaced by
15957         `senator-completion-menu-popup'.
15958
15959         (senator-prefix-map, senator-mode-map): updated to use
15960         `senator-completion-menu-popup'.
15961
15962         (senator-menu-bar): Uses `senator-minor-mode-name' as menu title.
15963         Fixed typos.  Replaced `global-semanticdb-minor-mode' by
15964         `semanticdb-toggle-global-mode' to enable/disable the Semantic
15965         Database feature.
15966
15967 2001-03-14  David Ponce  <david@dponce.com>
15968
15969         * semanticdb.el (semanticdb-find-nonterminal-by-function):
15970         avoid unneeded refreshes
15971         while typing with senator-eldoc mode.
15972
15973         * semantic.el (semantic-read-event): replaced `cond' by `if' to fix a
15974         byte-compilation error on FSF Emacs.
15975         (semantic-rebovinate-token): delay rebovination if a [maybe temporary]
15976         re-parse error occurs.
15977         (semantic-flex): fixed the lexer to calm possible errant parsing.
15978
15979 2001-03-12  David Ponce  <david@dponce.com>
15980
15981         * senator.el: New faster core search engine.
15982
15983         Fixed `beginning-of-defun' and `end-of-defun' advices to accept
15984         optional argument ARG.  Usage of ARG is not yet implemented.
15985
15986         Fixed `insert-register' and `jump-to-register' advices to use
15987         ad-get-arg.
15988
15989         Added new hippie expand try function `senator-try-expand-semantic'
15990         to try Semantic inline completion.  This try function is
15991         automatically activated in Semantic enabled buffers.
15992
15993         Many code cleanup and improvement.
15994
15995 2001-03-10  Eric M. Ludlam  <zappo@gnu.org>
15996
15997         * semantic-bnf.el: Fixed indentation after ; bug.
15998
15999         * semantic-c.el: New c.bnf.
16000         Added `semantic-c-reconstitute-token'.
16001
16002         * c.bnf: Added lots of summaries to %tokens.
16003         variables and functions now share declmod and typedecl start
16004         match, and then get recombobulated later.  Prevents massive
16005         reparsing.
16006
16007         * semantic.texi: Ran texinfo menu and node updating command.
16008         Added section mentioning semantic-java as an example expand function.
16009
16010         * semantic-util.el:
16011         Removed UNTRUSTED from docs of find-nonterminal-by-overlay-[next/prev].
16012         Added Nonterminal region splicing section, with two non-working functions.
16013         When concatinating arguments for a concise prototype, make sure we
16014         can handle many types of argument lists without crashing.
16015         Command `bovinate' now checks the cache.
16016
16017         * semantic-load.el:
16018         Senator and which-fun modes are now forced on, as opposed to just
16019         toggled on, hoping they were off before.
16020
16021         * semantic-load.el: Added scm load.
16022         Added which-func turn on.
16023         Removed load path hacks.
16024
16025 2001-03-08  David Ponce  <david@dponce.com>
16026
16027         * semantic-util.el: Fixed an infinite loop bug in
16028         `semantic-find-nonterminal-by-overlay-next' and
16029         `semantic-find-nonterminal-by-overlay-prev' when respectively the last
16030         or the first overlay are encountered.
16031
16032         * semantic-java.el:
16033         Fixed `semantic-expand-java-nonterminal' which did not cleanup invalid
16034         expanded tokens and overlays.
16035
16036 2001-03-05  David Ponce  <david@dponce.com>
16037
16038         * semantic.el: Fixed an XEmacs compatibility problem with `read-event'.
16039
16040 2001-03-05  Eric M. Ludlam  <zappo@gnu.org>
16041
16042         * semantic.texi:
16043         Updated the chapter on senator to account for new features.
16044
16045 2001-03-05  David Ponce  <david@dponce.com>
16046
16047         * semantic-bnf.el:
16048         Improved function `semantic-bnf-find-state-position' to handle
16049         multiple match listes on the same line.  Also, if a match occurs in a
16050         string or comment it is ignored.
16051
16052         New function `semantic-bnf-skip-string-or-comment' to skip strings and
16053         comments.
16054
16055         Added font-locking for ASSOC, EXPAND and EXPANDFULL builtins.
16056
16057         * semantic.el:
16058         New `semantic-bovinate-nonterminal' with iterative parser.
16059         Removed no more needed function `semantic-bovinate-stream'.
16060         Fixed some side effect problems when the BNF source debugger
16061         is enabled.
16062
16063         * senator.el: Added new Eldoc suggestion mode feature.
16064
16065 2001-03-01  Eric M. Ludlam  <zappo@gnu.org>
16066
16067         * semantic-bnf.el: Added summary support to BNF keywords.
16068         Properly use the override table.
16069         Added a completion keybinding.
16070
16071 2001-02-28  David Ponce  <david@dponce.com>
16072
16073         * java.bnf, semantic-java.el:
16074         Fixed a bug on 'array_creation_expression' non-terminal which didn't
16075         match primitive type arrays.
16076
16077 2001-02-28  Eric M. Ludlam  <zappo@gnu.org>
16078
16079         * semantic.texi: Added chapter on debugging.
16080
16081         * semantic.el: Update doc to `semantic-bovinate-toplevel'.
16082         If doing a partial reparse fails, recurse for a full reparse.
16083         Renamed variables in the cooking function to be wordier.
16084         For the token reparser, do even more checks after cooking for
16085         an expansion to additional tokens.  Queue a full reparse if it
16086         gets too hairy.
16087         Make sure the reparse symbol is attached to the new token.
16088
16089 2001-02-26  David Ponce  <david@dponce.com>
16090
16091         * semantic-java.el: Regenerated with new version of semantic-bnf.el.
16092
16093 2001-02-24  Eric M. Ludlam  <zappo@gnu.org>
16094
16095         * semantic-c.el: Updated c.bnf, and semantic-bnf.el.
16096
16097         * c.bnf: Added a few optimizations for structure parts.
16098         Used some %tokens in a few spots where I wasn't using them before.
16099
16100         * semantic.el: Added `semantic-toplevel-bovine-table-source' variable.
16101         Incorporate David Ponce's reparse fix for compounded tokens.
16102         Use table source to do source-level debugging.
16103         Use new semantic-bnf API to find the bit of source to highlight.
16104
16105         * semantic-scm.el: Scheme parser lisp stuff.
16106
16107         * scheme.bnf: Scheme parser
16108
16109         * semantic-bnf.el:
16110         When making an init file, add in a new variable value identifying
16111         the .bnf source file it came from.
16112         Added a bunch of debugging routines for moving in the .bnf file.
16113
16114 2001-02-23  David Ponce  <david@dponce.com>
16115
16116         * senator.el:
16117         Copied over all the menu items that used to be in semanic-mode.
16118         Added the new token cut/paste items into a menu.
16119         Added menu items to configure semantic-imenu and enable semantic-db.
16120         Added Options sub menu to customize Semantic, Senator, Semantic Imenu
16121         and Semantic Database.
16122         Fixed some XEmacs compatibility issues.
16123         Improved robustness of some functions.
16124
16125         * semantic-util.el: Fixed some XEmacs compatibility issues.
16126         Added function `semantic-token-invisible-p'.
16127
16128 2001-02-23  Eric M. Ludlam  <zappo@gnu.org>
16129
16130         * INSTALL: Added simplified installation instructions.
16131
16132         * semantic-imenu.el:
16133         Moved all customizable items into semantic-imenu group.
16134
16135         * semanticdb.el: Moved all customizable items into semanticdb group.
16136
16137         * semantic-util.el:
16138         Added semantic-token-intangible-p and semantic-token-read-only-p.
16139
16140 2001-02-22  David Ponce  <david@dponce.com>
16141
16142         * semantic-el.el:
16143         Fixed "args-out-of-range" bugs when doc string is missing (nil)
16144         or an empty string ("").
16145
16146         Minor typo on first line summary.
16147
16148         * senator.el: Added token Copy, Cut & Paste and Register feature.
16149
16150         Improvement to the senator-jump completion stuff:
16151
16152         o The completion list is now cached (buffer local) and reused when
16153           possible.  The cache is refreshed when parsing or partial parsing
16154           occurs.
16155
16156         o Greatly simplified the way completion name are handled.  Now only
16157           duplicated names are suffixed by parent names :-)
16158
16159         Some minor `checkdoc' fixes.
16160
16161         * java.bnf: Moved setup of Semantic variables from semantic-java.el.
16162
16163         * semantic-java.el: Some code reorganization.
16164
16165         Moved setup of Semantic variables to java.bnf.
16166
16167         Added setup of variables `semantic-command-separation-character',
16168         `document-comment-start', `document-comment-line-prefix',
16169         `document-comment-end'.
16170
16171         New `semantic-find-documentation' function override
16172         `semantic-java-find-documentation' which handles javadoc comments.
16173
16174 2001-02-22  Eric M. Ludlam  <zappo@gnu.org>
16175
16176         * semantic.el: Updated several doc strings.
16177
16178         * semantic-texi.el: Added `semantic-texi-goto-source'.
16179
16180         * semantic-ctxt.el:
16181         Updated almost all doc strings to include override information.
16182
16183         * document.el: Added `-' to meta variable name search.
16184         Added support to turn "text" to ``text'' in texinfo files.
16185
16186         * semantic.texi: Updated lots of deffn, defvar, and defuns.
16187         Added local context section.
16188         Fixed compilation errors by adding the utilities section.
16189
16190 2001-02-21  Eric M. Ludlam  <zappo@gnu.org>
16191
16192         * semantic-load.el: *** empty log message ***
16193
16194         * Project.ede:
16195         Rearranged things.  There is now a languages target, full of the
16196         parser .el files.
16197
16198         * semantic-el.el:
16199         Added `user-visible' as an extra spec to variables and fns.
16200         Added override fns for `find-documentation', and `insert-foreign-token'.
16201
16202         * semanticdb.el:
16203         Added `semanticdb-set-buffer', and `semanticdb-refresh-table'.
16204         Added `find-file-match' param to all search routines.
16205         When a token is found in a file, make sure the file gets loaded into
16206         Emacs.  Useful when additional work to a token needs to be done.
16207         Fixed a search bug related to `diff-mode' parameter.
16208
16209         * semantic-util.el:
16210         Fixed bug in `semantic-summarize-nonterminal' for when a token
16211         type doesn't exist in the name list.
16212
16213         * semantic-imenu.el:
16214         Fixed reversing of token problem when making type submenus, but
16215         without running through the bucket function.
16216
16217         * document.el:
16218         Moved where newlines were inserted for new function documentation.
16219         Support deffn with Command and Option descriptions.
16220         Protect against document generation switching buffers on us.
16221
16222         * semantic-texi.el: Added 'x' version in -name-field-list.
16223         Fixed reversing problems in the return value of the texinfo parser.
16224         Added `semantic-texi-insert-foreign-token'.
16225         Added value for senator-step-at-start-end-token-ids.
16226         Added ':' as the relation-separator-character.
16227         Added semantic-texi-associate-files, semantic-texi-find-documentation,
16228         semantic-texi-update-doc-from-texi, semantic-texi-update-doc-from-source,
16229         and semantic-texi-updae-doc.
16230
16231         * semantic.el: Added `user-visible' to the list of EXTRA-SPECs.
16232         Renamed `semantic-toplevel-bovinate-override' to
16233           `semantic-bovinate-toplevel-override'.
16234         Added more documentation to `semantic-clear-toplevel-cache'.
16235         Added semantic cache/partial reparse logic around foreign
16236           parsers.
16237         More doc for `semantic-flex-keyword-p'.
16238
16239 2001-02-21  David Ponce  <david@dponce.com>
16240
16241         * senator.el:
16242         `senator-minor-mode-setup' now uses the `semantic-active-p' function
16243         to check if the current buffer is set up for parsing.
16244
16245         `senator-full-token-name' now append the parent names in reverse order
16246         to the token name.  Thus the `senator-jump' completion list is now
16247         easy to use.  You can just type a partial token name and press ENTER
16248         to jump to it.  If the name is not unique a completion buffer is
16249         displayed allowing to choose the right one.
16250
16251         `senator-beginning-of-defun' and `senator-end-of-defun' now
16252         respectively step at start or end of tokens with identifier specified
16253         in `senator-step-at-token-ids'.  Thus, adviced `beginning-of-defun'
16254         and `end-of-defun' now work with any tokens where you can step at.
16255
16256         `senator-step-at-start-end-token-ids' can be set to `t' to step at
16257         start and end of any token where it is allowed to step.
16258
16259 2001-02-20  David Ponce  <david@dponce.com>
16260
16261         * semantic.el:
16262         Fixed: with `semantic-flex-enable-newlines' on, `semantic-flex' didn't
16263         catch newline when there was whitespace characters before it.
16264
16265 2001-02-20  Eric M. Ludlam  <zappo@gnu.org>
16266
16267         * Project.ede: Version change.  Added semantic-texi.
16268
16269         * semantic-ctxt.el:
16270         Fixed up token identifying when in a sequence of dereferences.
16271
16272         * semantic-texi.el:
16273         New File: Parse texinfo files using semantic's parsing override mechanism.
16274
16275         * semantic-el.el: Added `semantic-elisp-prototype-nonterminal'.
16276         Use it as an override for `prototype-nonterminal' and `concise-prototype-nonterminal'.
16277
16278         * semantic-util.el:
16279         Pulled the default body from `semantoc-prototype-nonterminal', and
16280         turned it into `semantic-prototype-nonterminal-default'.
16281
16282         * semantic-c.el: New c.bnf.
16283
16284         * c.bnf: Removed unused %put calls.
16285
16286         * semantic.el: Version change.
16287         Added `semantic-active-p' function.
16288         Use `semantic-active-p' in `semantic-find-file-hook'.
16289         Add beef to `semantic-toplevel-bovinate-override' usage.
16290         Removed `reparse needed' message.
16291
16292         * semantic-imenu.el:
16293         Added `semantic-imenu-expand-type-parts' variable.  This lets you not
16294           bucketize a file, and still expand nodes.
16295         Added `semantic-imenu-expandable-token' variable.  This lets you have
16296           parser that doesn't have type information, but still benifits from
16297           hierarchical tag display.
16298         Removed `notypecheck' from `semantic-create-imenu-index'.
16299         Use the above variables.
16300
16301 2001-02-14  Eric M. Ludlam  <zappo@gnu.org>
16302
16303         * semantic-bnf.el:
16304         Vectorized %put.  New forms accept a list in either the token name
16305         or symbol/value pair.
16306
16307 2001-02-09  Eric M. Ludlam  <zappo@gnu.org>
16308
16309         * semantic.el:
16310         Fixed parse bug when a semantic-list was tested with a regex, then
16311         used with an EXPAND tag.  Make sure the proper item is
16312         sent down.
16313
16314         * c.bnf: Added ( testing to argument lists.
16315
16316         * semantic-ctxt.el:
16317         Added section to determine the current local context (assignment,
16318         argument, etc)
16319         Added section for suggestions (incomplete) such as the type
16320         someting should be.
16321
16322 2001-02-09  David Ponce  <david@dponce.com>
16323
16324         * semantic-java.el: Changed `semantic-overlay-delete' by better
16325         `semantic-deoverlay-token'.
16326
16327         * senator.el:
16328         New implementation of completion menu to allow customization of menu
16329         item text and insert function.
16330
16331         * semantic-util.el:
16332         `semantic-override-table' format changed to obarray.
16333         New function `semantic-install-function-overrides' to setup the
16334         override table.
16335         Updated `semantic-fetch-overload' to use override table format.
16336         New functions `semantic-concise-prototype-nonterminal' and
16337         `semantic-concise-prototype-nonterminal-default' to get a concise
16338         prototype text from a token.
16339
16340         * java.bnf, semantic-java.el: Honour last changes in semantic-util.el.
16341
16342 2001-02-09  Eric M. Ludlam  <zappo@gnu.org>
16343
16344         * semantic-c.el: c.bnf changes.
16345
16346         * c.bnf: Added type separation characters.
16347         Added all constituents of DECLMOD into their own tokens.
16348         Created a rule to create a list of declmods.
16349
16350         * semantic.el:
16351         `semantic-change-function' will now correctly navigate through
16352         all tokens hit by a change, and mark the first one found as dirty,
16353         and keep it that way.  It used to mark all tokens, including enclosing
16354         types.  Now it will only mark the innermost token.
16355
16356 2001-02-08  Eric M. Ludlam  <zappo@gnu.org>
16357
16358         * semantic-util.el:
16359         `semantic-type-relation-separator-character' is now buffer local.
16360         `semantic-find-nonterminal-by-name', get children only if they are
16361         valid tokens.
16362
16363 2001-02-05  David Ponce  <david@dponce.com>
16364
16365         * senator.el:
16366         Use new `semantic-type-relation-separator-character' format.
16367         New completion popup menu.
16368
16369         * java.bnf, semantic-java.el:
16370         Use new `semantic-type-relation-separator-character' format.
16371
16372 2001-02-03  Eric M. Ludlam  <zappo@gnu.org>
16373
16374         * semantic-util.el:
16375         Changed `semantic-type-relation-separator-character' to be a list.
16376         Change use of it.
16377
16378         * semantic-ctxt.el: Added new context function that work ok with C.
16379         `semantic-end-of-command'
16380         `semantic-beginning-of-command'
16381         `semantic-ctxt-current-symbol'
16382         `semantic-ctxt-current-assignment'
16383         `semantic-ctxt-current-function'
16384         `semantic-ctxt-current-argument'
16385         and `-default' versions.
16386
16387 2001-02-02  Eric M. Ludlam  <zappo@gnu.org>
16388
16389         * semanticdb.el: Protect against buffers without a parsing table.
16390
16391         * semantic-c.el: New c.bnf
16392
16393         * c.bnf: Added c++ to the list of language modes.
16394         Added lots of operator symbol tokens.
16395         Added DECLMOD symbol w/ complex regexp.
16396         Added CLASS, OPERATOR, PUBLIC, PRIVATE, and PROTECTED token keywords.
16397         Support parsing of a class.
16398         Add class bit parsing for functions.
16399         Add destructor bit parsing for functions.
16400         Allow operator symbols for methods.
16401         Added parent and destructor fields to extra-spec for functions.
16402         The function rule now returns a function or prototype.
16403
16404         * semantic-bnf.el: Added support for multiple language modes in a list.
16405         When resetting buffers, reference the language modes as a list.
16406         Reset a buffer with the setupfunction when available.
16407
16408 2001-02-01  David Ponce  <david@dponce.com>
16409
16410         * senator.el: `senator-last-name' removed.
16411         `senator-jump-completion-list' new variable.
16412         `senator-jump' simpler and more robust!  Save the current
16413         completion table in `senator-jump-completion-list', then reuse it
16414         to retrieve the token association.  Also, this solves jump
16415         conflicts when the same token name is present in different token
16416         children.
16417         `senator-completion-stream' Store the full token itself in the
16418         value part of each association.
16419
16420 2001-02-01  Eric M. Ludlam  <zappo@gnu.org>
16421
16422         * senator.el:
16423         `senator-complete-symbol' now checks that it complete the same symbol
16424         to reuse `senator-last-completion-stat'.  This is needed when for
16425         example completing "set..." and then completing "get..." at the same
16426         point.
16427
16428         * senator.el: Removed compatibility code.
16429         Added isearch code, which was in `senator-isearch'.  Made that shorter.
16430         `senator-step-at-start-end-p' fixed up.
16431         Use `semantic-nonterminal-children' instead of querying for type and
16432         then getting the parts.
16433         Use semantic's separator character.
16434         Added senator-find-nonterminal- .. functions.  Uses semanticdb if loaded.
16435         When completing, use `senator-find...'.
16436         Also do a little more to track if we are doing the same completion.
16437
16438         * semantic-util.el:
16439         Fixed `semantic-token-variable-default' which was using the wrong index.
16440         Fixed `semantic-find-nonterminal-by-name' to pass down new parameters.
16441
16442         * java.bnf:
16443         Parses variables with more than one declaration, such as "int i, k;".
16444
16445         * semantic-java.el: New java.bnf.
16446         Expand java nonterminals so compounded variable declarations are
16447         separated into it's own token.
16448
16449         * semantic.el: Fixed `semantic-token-with-position-p'.
16450
16451 2001-01-31  Eric M. Ludlam  <zappo@gnu.org>
16452
16453         * java.bnf: Java bnf file developed for JDE.
16454
16455         * semantic-java.el:
16456         Sources originally developed for the JDE for java parsing.
16457
16458         * semantic-ctxt.el: Local context querying and navigation.
16459
16460         * Project.ede: Project file.
16461
16462         * semanticdb.el: Added `semanticdb-global-mode' variable.
16463         Changed -find-nonterminal-* to take `search-parts' and
16464         `search-includes'.
16465         Added new -find- routines.
16466
16467         * semantic.texi: Added `current context' chapter.
16468         Changed all MODIFIER references in token descriptions to EXTRA-SPEC.
16469         Documented `semantic-token-extra-spec' and friends.
16470
16471         * semantic-util.el:
16472         Changed -modifiers to -extra-spec, and restored -modifiers to the old behavior.
16473         Moved `semantic-find-nonterminal-by-name'.
16474         Changed `semantic-find-nonterminal-by-token',
16475         `semantic-find-nonterminal-standard', and
16476         `semantic-find-nonterminal-by-type' to take `search-parts' and
16477         `search-include' parameters, and to use
16478         `semantic-find-nonterminal-by-function'.
16479         Changed `semantic-find-nonterminal-by-name-regexp',
16480         `semantic-find-nonterminal-by-property',
16481         `semantic-find-nonterminal-by-modifier',
16482         and `semantic-find-nonterminal-by-function' to take `search-parts' and
16483         `search-include' parameters.
16484         New fn `semantic-find-nonterminal-by-type-regexp'.
16485         Added new override methods to documentation string. (see semantic-ctxt.el)
16486         Use `semantic-token-extra-spec' where apropriate.
16487         Use `semantic-token-with-position-p' when returning token children.
16488         Added `semantic-narrow-to-token'.
16489         Added `semantic-show-dirty-mode' variable.
16490
16491         * semantic-sb.el: Change -modifier to -extra-spec.
16492
16493         * semantic-c.el: Updated with new c.bnf
16494         Fixed `semantic-expand-c-nonterminal' to use `-extra-spec'.
16495
16496         * semantic-bnf.el:
16497         Created a token keyword table.  Use keywords in language def.
16498         Fixed `semantic-bnf-ASSOC' to add spaces in properly (dponce)
16499         Added `scopestart' to `semantic-bnf-to-bovine' fn.  Use it.
16500         Tried to fix indentation bug for rules.
16501
16502         * c.bnf: Added `codeblock' rule and `%scopestart'.
16503
16504         * semantic.el: Version update.
16505         Renamed all MODIFIERS references to EXTRA-SPEC.
16506         Added `semantic-token-with-position-p'.
16507         Changed `semantic-bovinate-block-until-header' to
16508         `semantic-bovinate-region-until-error', and fixed it up.
16509
16510 2001-01-25  Eric M. Ludlam  <zappo@gnu.org>
16511
16512         * semanticdb.el: Added `major-mode' to the table class.
16513         Added `semanticdb-live-p' method to database and table classes.
16514         Only save a database if it is live, and if
16515         `semanticdb-write-directory-p' returns non-nil.
16516         Make `semanticdb-save-all-db' interactive.
16517         Do not write a table if it is not live.
16518         Added `semanticdb-project-predicates' variable to help control
16519         `semanticdb-write-directoryp' when the persistent-path contains
16520         'project.
16521
16522         * semantic-util.el:
16523         Split `abbreviate-nonterminal' to the override fn, and a default fn.
16524         Change `semantic-nonterminal-children' to take an optional argument
16525         to only return children if they have positional data in them.
16526
16527         * semantic-imenu.el:
16528         Only create menus from the database with files of the same mode.
16529
16530         * semantic-bnf.el: Added token abbreviations.
16531
16532         * semanticdb.el: Added placeholders for persistence control.
16533
16534         * semantic.texi: Added many functions added to semantic-util.
16535
16536         * semantic-imenu.el: Moved semantic-imenu-auto-rebuild-running.
16537         Protect against empty files.
16538         Added ability to rebuild all imenu menus under a given directory.
16539
16540 2001-01-24  Eric M. Ludlam  <zappo@gnu.org>
16541
16542         * senator.el: Added some completion functions.
16543
16544         * senator-isearch.el: *** empty log message ***
16545
16546         * semantic-util.el:
16547         Change token accessors to handle new formats, including new functions
16548         `semantic-token-type-modifier', `semantic-token-function-modifier',
16549         `semantic-token-variable-modifier', `semantic-token-variable-const',
16550         and `semantic-token-modifier'.
16551         Updated `find-nonterminal-by-function' to take some control arguments.
16552         Added `semantic-find-nonterminal-by-name-regexp' and
16553         `semantic-find-nonterminal-by-modifier'.
16554         Document finding fn now handles inline strings, or positional
16555         arguments.
16556         Fixed prototype-nonterminal to use new API fns.
16557
16558         * semantic-sb.el: Handle new modifiers storage.
16559
16560         * semantic-make.el: New make.bnf.
16561
16562         * semantic-imenu.el: Create imenu menus with all info from semanticdb.
16563         Added xemancs imenu compatibility func.
16564         Fixed the flush function to handle clean-token hook.
16565
16566         * semantic-el.el: Create tokens for the new token format.
16567
16568         * semantic-c.el: Fixed for new c.bnf.
16569         Fixed `semantic-expand-c-nonterminal' to build the correct format
16570         for the changed token types.
16571
16572         * semantic-bnf.el: Added the new ASSOC keyword for the OLE.
16573         Added `semantic-bnf-generate-one-rule' and bind to bnf keymap.
16574         Remove parens from the syntax table, inherit from parent
16575         Add ; comment highlighting in OLE.
16576         Rehashed indentation engine to alow more natural lisp indentation
16577           style in the OLE.
16578
16579         * make.bnf, c.bnf: Added support for new token formats that use ASSOC.
16580
16581         * semantic.el: Changed the definition of some tokens.
16582         Changed the meaning of MODIFIERS.
16583         Added fn `semantic-bovinate-make-assoc-list' for use in bnf files.
16584
16585 2001-01-10  David Ponce  <david@dponce.com>
16586
16587         * senator.el:
16588         Fixed undeclared local variable 'slot' in `senator-menu-item'.
16589
16590 2001-01-10  Eric M. Ludlam  <zappo@gnu.org>
16591
16592         * semanticdb.el:
16593         Fixed object-write for tables to be very robust to errors when
16594         deoverlaying the cache.  (This happens on exit, so it is very
16595         important this work.)
16596
16597         * semantic.el: Removed some comments.
16598         Added a version string.
16599         Fixed the group description.
16600
16601         * semantic.texi:
16602         Added `semantic-flex-map-keywords' and `semantic-flex-keywords' doc.
16603
16604 2001-01-07  Eric M. Ludlam  <zappo@gnu.org>
16605
16606         * semanticdb.el: Added `semanticdb-find-nonterminal-by-name' content.
16607
16608         * semantic.el:
16609         Added `semantic-flex-map-keywords' and `semantic-flex-keywords'
16610         from David Ponce.  Moved a few bits around.
16611
16612 2001-01-06  Eric M. Ludlam  <zappo@gnu.org>
16613
16614         * semantic-imenu.el:
16615         Enable the use of the imenu splitup routines via `imenu-max-items'.
16616
16617         * semantic-util.el: Fixed completing read to work with XEmacs
16618         Added `semantic-nonterminal-children' function.
16619         Added `semantic-type-relation-separator-character'
16620         Use the separator character in the abbreviate nonterminal fn.
16621         Fixed overlay and deoverlay-token to use `nonterminal-children', and
16622          to accept non-token items.
16623
16624         * semantic-bnf.el: Added a space after all CR.
16625         Added a command to create a table w/out indentation.
16626         Bound old indentation command to C-cc
16627
16628         * semantic-c.el: Updated from c.bnf.
16629
16630         * c.bnf: Put `type' `t' onto some tokens.
16631         Struct and enums now match the braces, and return nil.
16632         Enum parts now have a token type of 'enum.
16633         Added ... to fuction arg lists.
16634         Match parens for arg lists.
16635
16636         * semantic.el: Added semantic-bovine-toplevel-full-reparse-needed-p and
16637         semantic-bovine-toplevel-partial-reparse-needed-p.
16638         Used them in semantic-bovinate-toplevel.
16639
16640         * semantic.texi: Added new functions in Compiling section.
16641
16642 2001-01-03  David Ponce  <david@dponce.com>
16643
16644         * senator.el: New version 2.1.
16645
16646         Fixed a nasty typo in `senator-minor-mode'.  `run-hooks' were missing
16647         a quotation before their arguments.  Thanks to "Charles Rich"
16648         <rich@merl.com> who has reported this bug.
16649
16650         Added new `senator-jump' command.  Thanks to "Eric M. Ludlam"
16651         <zappo@ultranet.com> and "T. V. Raman" <tvraman@almaden.ibm.com> for
16652         their help.
16653
16654         Added new `senator-minor-mode-name' option to customize the name
16655         displayed in the modeline when senator minor mode is on.
16656
16657         When semantic isearch mode is on it now appends "/si" to the senator
16658         minor mode name displayed in the modeline.
16659
16660         Added new keyboard shortcut "\C-," to toggle semantic search in
16661         isearch mode.
16662
16663         Some code improvements.
16664
16665         * senator-isearch.el: Improved isearch lazy highlighting support.
16666
16667 2000-12-28  Eric M. Ludlam  <zappo@gnu.org>
16668
16669         * semantic.el:
16670         When parsing a file, if text is found, and a token is returned, but
16671         that token's car is nil, do not save that token.
16672         This will let a language author specify characters in a rule that
16673         shouldn't be saved, speeding up the parsing process.
16674
16675 2000-12-22  Eric M. Ludlam  <zappo@gnu.org>
16676
16677         * semantic-el.el:
16678         Dump parsing of the lisp functions, and use a magic read function to
16679         pep up the speed of lisp parsing.
16680
16681         Eric
16682
16683 2000-12-16  Eric M. Ludlam  <zappo@gnu.org>
16684
16685         * semantic.texi: Added info about %put in bnf mode.
16686         Added stuff about keyword tables in the Lexing chapter.
16687         Xref the two.
16688
16689         * semanticdb.el: Fixed file loading to return an object.
16690         Fixed file reader to restore table parent-db slot.
16691
16692         * semantic.el:
16693         Renamed `semantic-flex-is-keyword' to `semantic-flex-keyword-p'.
16694
16695         * semantic-bnf.el: Added put values of strings and lists.
16696
16697         * semantic-bnf.el: Added %put to language to values to put on a symbol.
16698         `semantic-bnf-generate-and-load' not outputs a propertylist for
16699         keyword tables.
16700
16701         * semantic.el:
16702         Added `semantic-flex-keyword-put' and `semantic-flex-keyword-get'.
16703         `semantic-flex-make-keyword-table' not takes a property list also.
16704
16705 2000-12-15  Eric M. Ludlam  <zappo@gnu.org>
16706
16707         * semanticdb.el: Added a parent object to tables.
16708         Added `semanticdb-full-filename'.
16709         Added error correction when loading a database.
16710         Removed error protection during a write.
16711         Fix `object-write' for tables; get the buffer of `semanticdb-full-filename'.
16712         Fix hook running for `semanticdb-semantic-init-hook-overload'.
16713         Set the parent of all tables in init hook.
16714
16715 2000-12-12  David Ponce  <david@dponce.com>
16716
16717         * senator.el: `senator-mark-defun' now work on XEmacs too.
16718
16719         * senator.el:
16720         Fixed a "side effect" bug with latest `beginning-of-defun' and
16721         `end-of-defun' advices.  They caused font-lock, which uses
16722         beginning/end of defun to force a reparse.  Thanks to "Eric M. Ludlam"
16723         <zappo@ultranet.com> for pointing this.
16724
16725         Improved consistency with standard behaviour of `beginning-of-defun'
16726         (go to the beginning of the line where the defun starts) and
16727         `end-of-defun' (go to the beginning of the line following the end of
16728         the defun).
16729
16730         Added useful advices for `narrow-to-defun', `mark-defun' and
16731         `c-mark-function'.
16732
16733         Advices are enabled when the functions are called interactively and
16734         `senator-minor-mode' is enabled.
16735
16736 2000-12-12  Eric M. Ludlam  <zappo@gnu.org>
16737
16738         * semanticdb.el: Remove inheritance from eieio-speedbar-*.
16739         Added method for the database to get a table based on a filename.
16740         Used said method in the init hook.
16741         Added `semanticdb-file-stream', to return a stream for a file.
16742
16743 2000-12-11  Eric M. Ludlam  <zappo@gnu.org>
16744
16745         * semantic-util.el:
16746         Fixed semantic-find-token to not expect that the token has a buffer.
16747         Use the current buffer if it doesn't have one.  (see comment)
16748
16749         * semantic-sb.el:
16750         Generation of tags will now run through semanticdb if it is active.
16751         As such, it is possible to view a file's tags without loading it into
16752         a buffer.
16753
16754 2000-12-11  David Ponce  <david@dponce.com>
16755
16756         * senator.el: Code cleanup and optimization.
16757         `senator-next-token' and `senator-previous-token' now correctly work
16758         when not binded to keyboard shortcuts.
16759         `beginning-of-defun' and `end-of-defun' advices no more need to be
16760         called interactively.  So `narrow-to-defun' can use these advices when
16761         `senator-minor-mode' is enabled.
16762
16763         * senator.el:
16764         Applied Eric Ludlam's patch.  It adds a special face for senator to
16765         use for momentary highlight (requires latest semantic-util.el).  If
16766         the user cancels the parse (C-g) when `senator-minor-mode'
16767         initializes, it doesn't kill the rest of the configuration.  (Useful
16768         on a slow machine.)
16769
16770 2000-12-10  Eric M. Ludlam  <zappo@gnu.org>
16771
16772         * semantic.texi: Added miscellaneous tool chapter.
16773         Added senator text.
16774         Added information for all the property functions.
16775
16776         * semantic-c.el: New c.bnf.
16777
16778         * c.bnf: Fix spelling errors.
16779
16780         * semantic-util.el: Added `semantic-find-nonterminal-by-property'.
16781         Don't try to remove hooks in `semantic-unhighlight-token'.
16782         Fix some quoting in some macros to get hooks removed.
16783         Added `semantic-add-label', and `semantic-show-label' user fns.
16784         Fix `semantic-show-dirty-mode' to check for the right fcn when toggling.
16785
16786         * semantic.el: Added `semantic-edits-are-safe' variable.
16787         Added PROPERTIES to standard token.
16788         Added accessors for PROPERTIES slot in a token.
16789         Added semantic-token-put, and -get functions.
16790         Put the parser nonterminal into the token when it isn't bovine-toplevel.
16791         Put 'dirty t into a token when it is edited.
16792         Removed 'dirty flag when it is rebovinated.
16793
16794         * semantic.el: Made semanticdb-minor-mode and auto-load.
16795
16796         * semanticdb.el: Fixed write to get point max from the correct place.
16797
16798 2000-12-09  Eric M. Ludlam  <zappo@gnu.org>
16799
16800         * semanticdb.el: Require eieio-base for base classes.
16801         Added variable semanticdb-save-database-hooks.
16802         Added pointmax to the table class.
16803         Wrap the save fcn into condition-case to protect against errors.
16804         Added messages when saving the table.
16805         Track pointmax on save for each file.
16806         Reset the table on load if the table is out of date (pointmax /=)
16807         Wrap deoverlaying in a condition case, with clear-table as error condition.
16808         Added beginnings of utility functions.
16809
16810         * semantic-util.el:
16811         Turn the highlight/unhighlight set into a stack of faces.
16812         Added `semantic-momentary-unhighlight-token' for momentary case.
16813         Handle the cache which no longer has buffer size in it.
16814         Removed `bovinate-nonterminal'
16815         `semantic-current-token' returns a token now, in addition to the message.
16816
16817         * semantic.el: Added a working type tracking variable.
16818         Show working messages when reparsing.
16819         Change the cache to not have the size at the end. (It isn't used anymore.)
16820         Make sure during a reparse the the new overlay gets its token reset.
16821
16822         * semantic.texi:
16823         Added new chapter for tools, and added speedbar, semanticdb, and senator.
16824
16825 2000-12-08  Eric M. Ludlam  <zappo@gnu.org>
16826
16827         * semantic.el: Fixed rebovinate-token to handle types.
16828
16829         * semantic.el:
16830         Added variable `semantic-dirty-tokens' to track dirty tokens.
16831         Added hooks `semantic-dirty-token-hooks', and `semantic-clean-token-hooks'
16832          which run when a token is marked dirty or clean.
16833         Clear dirty tokens during a reparse.
16834         Call `semantic-after-toplevel-bovinate-hook' on a clear also.
16835          This lets us track the value of the cache better.
16836         In `semantic-bovinate-toplevel', added a new section which cleans
16837          all the dirty tokens, but only if we don't need a full reparse.
16838         In our change-function, add dirty tokens to the dirty token list,
16839          and don't bother with the type searching stuff.  Call dirty-token-hooks.
16840         New function `semantic-rebovinate-token'.
16841
16842         * semantic-util.el:
16843         Added show-dirty-mode, which highlights dirty tokens.
16844         Previous fn bovinate-nonterminal had its guts moved to semantic.el
16845         semantic-describe-token forces a reparse upon request.
16846
16847 2000-12-08  David Ponce  <david@dponce.com>
16848
16849         * senator-isearch.el, senator.el: A bunch of XEmacs compatibility code!
16850
16851 2000-12-08  Eric M. Ludlam  <zappo@gnu.org>
16852
16853         * semantic-util.el:
16854         When re-overlaying a buffer, put the 'semantic property onto the overlay.
16855         Added `bovinate-nonterminal' for splicing new data into an old token slot.
16856         Added `semantic-describe-token' for seeing what we think is under the cursor.
16857
16858         * semantic.el: Added `semantic-raw-to-cooked-token' from the guts of
16859         `semantic-bovinate-nonterminals'.
16860         Added autoload for senator.
16861
16862 2000-12-07  David Ponce  <david@dponce.com>
16863
16864         * senator.el: Applied Eric Ludlam's doc fix patch.
16865
16866 2000-12-07  Eric M. Ludlam  <zappo@gnu.org>
16867
16868         * semantic-imenu.el: Fixed `summarize' misspelling.
16869
16870         * semantic-util.el: Fixed misspelling of summarize.
16871         Deoverlayed tokens no longer contain the buffer.
16872         Implemented `semantic-deoverlay-cache' and `semantic-overlay-cache'.
16873         Added `semantic-deoverlay-list' and `semantic-overlay-list'.
16874
16875         * semantic.el:
16876         Fixed utils that fetch token extents to new vector mode w/out a buffer.
16877         Added `semantic-file-token-stream' to get a token stream for a file.
16878
16879         * semanticdb.el: Add msg to `semanticdb-file-stream'.
16880         Add `semanticdb-minor-mode-p' to learn if its active.
16881         Fix kill hook to only bovinate if the buffer has a cache to save.
16882
16883         * semanticdb.el: New file.
16884
16885 2000-12-05  David Ponce  <david@dponce.com>
16886
16887         * senator.el: Improved consistency with built-in search commands.
16888         New search commands like the ones in the Emacs Search menu.
16889         Added a menu to senator minor mode.
16890         The common prefix key in senator minor mode is now "C-c ,".
16891         Updated header comments.
16892         Some code cleanup.
16893
16894         * senator-isearch.el:
16895         Initial revision needed by senator.el 1.7 (version 2.0) and above.
16896
16897         * senator.el:
16898         New major version 2.0 with [i]search feature and a senator minor mode.
16899         Added compatibility code between GNU Emacs 20.7 and 21.
16900
16901 2000-12-05  Eric M. Ludlam  <zappo@gnu.org>
16902
16903         * semantic-util.el: Enable a face for momentary highlighting.
16904         Added code to convert a token list to/from overlays.
16905
16906 2000-12-03  Eric M. Ludlam  <zappo@gnu.org>
16907
16908         * semantic.el: Added a defvar for semantic-init-hooks.
16909         Renamed to plural for hooks.
16910
16911         * semantic.el:
16912         Added the ability for a semantic token to contain an overlay, or numbers.
16913         Added a fn to get the CONS cell the overlay (or whatever) lives in.
16914         Added a find-file-hook, which turns around and calls `semantic-init-hook'
16915           when the table is availble for parsing.
16916         Move cache setting into a fcn to be called.  This lets an external
16917           program set the cache (from a file perhaps.)
16918
16919 2000-11-28  David Ponce  <david@dponce.com>
16920
16921         * senator.el: More performance improvements.
16922         New option `senator-highlight-found' to customize token highlighting.
16923
16924 2000-11-27  David Ponce  <david@dponce.com>
16925
16926         * senator.el:
16927         Fixed a serious performance problem in `senator-next-token' and
16928         `senator-previous-token'.
16929
16930         Before searching for a next or previous token the point was just moved
16931         to respectively the next or previous character. Thus, during
16932         navigation, the buffer was explored character by character :-(.  Now
16933         `senator-next-token' and `senator-previous-token' skip whole tokens
16934         (unless they are 'type tokens which may include sub tokens).
16935
16936 2000-11-18  Eric M. Ludlam  <zappo@gnu.org>
16937
16938         * semantic.el: Version number.
16939
16940 2000-11-14  David Ponce  <david@dponce.com>
16941
16942         * senator.el:
16943         Minor change to `senator-next-token' and `senator-previous-token' to
16944         return the token at point.  Useful when calling these commands
16945         non-interactively.
16946
16947         * senator.el:
16948         Improved navigation in semantic token where to step at start and end.
16949
16950         - `senator-next-token' move the point to the end of token if it was at
16951           beginning or in the middle of the token.
16952
16953         - `senator-previous-token' move the point to the beginning of token if
16954           it was at end or in the middle of the token.
16955
16956 2000-11-13  Eric M. Ludlam  <zappo@gnu.org>
16957
16958         * make.bnf: Fixed comment.
16959
16960         * semantic-c.el: Reverted to previous version of keyword regexps.
16961
16962         * semantic-bnf.el: Force the table to be cleared before a rebuild.
16963         Insert `nil' for keyword table if there are no keywords.
16964
16965         * semantic-imenu.el:
16966         Added protection from imenu not existing on older XEmacsen.
16967
16968         * semantic.el: Fixed XEmacs bug in `semantic-bovinate-nonterminals'.
16969
16970 2000-11-10  David Ponce  <david@dponce.com>
16971
16972         * senator.el:
16973         Fixed a little bug in `senator-previous-token' navigation.
16974
16975         * senator.el: Initial revision.
16976
16977 2000-10-30  Eric M. Ludlam  <zappo@gnu.org>
16978
16979         * semantic.el: Added in some XEmacs overlay stuff.
16980
16981         * c.bnf: Tidied up opt-array stuff.
16982
16983         * semantic-c.el: Updated for new c.bnf
16984
16985 2000-10-18  Eric M. Ludlam  <zappo@gnu.org>
16986
16987         * semantic.el: Fixed overlay aliases for XEmacs.
16988         Added `semantic-overlay-live-p' alias.
16989         Use `semantic-overlay-live-p' when needed so XEmacs works properly.
16990
16991         * semantic-util.el: Fixed some byte compiler warnings.
16992
16993 2000-10-17  Eric M. Ludlam  <zappo@gnu.org>
16994
16995         * semantic-util.el:
16996         Fixed some calls to overloaded functions to take the correct number
16997         of parameters.
16998
16999 2000-10-16  Eric M. Ludlam  <zappo@gnu.org>
17000
17001         * semantic.el:
17002         Moved `semantic-after-toplevel-bovinate-hook' call to only happen when
17003         a buffer is actually reparsed.
17004
17005 2000-10-12  Eric M. Ludlam  <zappo@gnu.org>
17006
17007         * semantic.el: Changed the overlay aliases to check the xemacs feature.
17008         Added the hooks `semantic-after-toplevel-bovinate-hook',
17009         `semantic-before-toplevel-cache-flush-hook' and
17010         `semantic-no-reparse-needed-change-hook'.  Call then in the right
17011         spots.
17012         Enable reparsing the the change hook to use the additions from
17013         semantics reparse not found change hook.
17014
17015         * semantic-imenu.el:
17016         Updated the `semantic-imenu-goto-function' to check for deleted overlays.
17017         Added `semantic-imenu-flush-fcn' to be used as a hook.
17018         Changed what was `semantic-create-imenu-index' to
17019         `semantic-create-imenu-index-1'.  The new `semantic-create-imenu-index'
17020         calls `semantic-create-imenu-index-1' after setting the goto fcn,
17021         and setting the flush hook to `semantic-imenu-flush-fcn'.
17022         Changed calls to `semantic-create-imenu-index' to -1.
17023
17024 2000-10-10  Eric M. Ludlam  <zappo@gnu.org>
17025
17026         * semantic-bnf.el:
17027         Added `comment-start' and `comment-start-skip' values in bnf mode.
17028
17029         * semantic.el:
17030         Make `semantic-ignore-comments' and `semantic-flex-depth' buffer local.
17031
17032 2000-10-06  Eric M. Ludlam  <zappo@gnu.org>
17033
17034         * semantic-el.el: Added defsubst support.
17035
17036 2000-10-05  Eric M. Ludlam  <zappo@gnu.org>
17037
17038         * semantic-sb.el:
17039         Set up to work with older speedbars again. (removing dframe references.)
17040
17041         * semantic.texi: Added `semantic-find-nonterminal-by-overlay',
17042         `semantic-find-nonterminal-by-overlay-in-region', and
17043         `semantic-current-nonterminal'.
17044
17045         * INSTALL: Fixed up a little
17046
17047         * INSTALL: New file.
17048
17049 2000-10-04  Eric M. Ludlam  <zappo@gnu.org>
17050
17051         * semantic-util.el:
17052         Fixed `semantic-token-variable-optsuffix' for overlay stuff.
17053
17054         * semantic.el: Fixed `semantic-token-docstring' for overlay stuff.
17055
17056         * semantic-util.el:
17057         Fixed throws finding to account for shorter tail of a nonterminal.
17058         Added `semantic-current-nonterminal' as a non-list producing short-cut
17059         for `semantic-find-nonterminal-by-overlay'.
17060
17061 2000-10-03  Eric M. Ludlam  <zappo@gnu.org>
17062
17063         * semantic.el: Updated version number.
17064
17065 2000-09-29  Eric M. Ludlam  <zappo@gnu.org>
17066
17067         * working.el: Fixed copyright.
17068
17069         * semantic.el: Added `semantic-token-buffer'.
17070
17071         * semantic-sb.el, semantic-el.el, document.el, semantic.texi:
17072         Fixed up with some API changes.
17073
17074         * semantic-util.el:
17075         Several override methods find information about tokens, and took both
17076         a buffer, and a token.  Tokens' overlay now have the buffer in it,
17077         so don't require this parameter anymore.
17078
17079         * semantic.texi: Fixed up with some API changes.
17080
17081         * working.el: Indentation and edebug updates.
17082
17083 2000-09-28  Eric M. Ludlam  <zappo@gnu.org>
17084
17085         * working.el: Updated the version.
17086         Made the user options user options.
17087         Fixed press a key.
17088
17089         * semantic-el.el: Specify to only nab 6 flex tokens from sub-lists.
17090
17091         * semantic-imenu.el, semantic-mode.el, semantic-sb.el, semantic-util.el:
17092         Updated calls to `semantic-bovinate-toplevel'.
17093
17094         * semantic.el:
17095         Added `semantic-flex-depth', and `semantic-ignore-comments'.
17096         Removed depth/trashcomments from bovinate-toplevel.
17097         Removed comment stripping code from the parser.
17098         Do not add comments to the flex list, unless the variable is set.
17099         Added length parameter to the flexer.  Lets a language only
17100         look at the first few tokens in a sublist.
17101
17102         * semantic-bnf.el: Updated calls to `semantic-bovinate-toplevel'.
17103
17104         * semantic.texi:
17105         Added long section describing some of semantics variables.
17106
17107         * document.el: Changed use of `semantic-bovinate-toplevel'.
17108
17109 2000-09-27  Eric M. Ludlam  <zappo@gnu.org>
17110
17111         * working.el:
17112         Added `working-status-call-process', and `working-verify-sleep'.
17113
17114         * working.el:
17115         Added a special form `working-status-timeout' which uses a timer
17116         to display the dynamic message, letting the code run normally.
17117         Added timer workarounds.
17118         Added `working-wait-for-keypress' as an example.
17119
17120         * semantic-imenu.el: Made customizable vars of type 'bool in 'boolean.
17121
17122         * semantic-bnf.el: Quote the expression to eval after load.
17123
17124         * semantic-bnf.el:
17125         Added `semantic-bnf-mode' to `which-func-modes' for later use.
17126
17127         * semantic-c.el: c.bnf changed.
17128
17129         * c.bnf:
17130         Moved `type' to be before `function' and `variable' in `declaration'.
17131
17132         * semantic-imenu.el:
17133         Changed the default which-function to be a new function which
17134         intelligently builds a name.
17135
17136         * semantic-imenu.el: Fixed default for `semantic-which-function'.
17137
17138         * semantic-imenu.el: Make imenu config items buffer local.
17139
17140         * semantic.el:
17141         Added type internals check when determining if a change requires a
17142         reparse.
17143
17144         * semantic-util.el: Added interactive bovinate fns from semantic.el.
17145
17146         * semantic.el: `semantic-toplevel-bovine-cache-check' is now boolean.
17147         Moved bovinate fns into semantic-util.
17148         Moved all debug stuff to after the parser, and before the lexer.
17149         Added new `after-change-hook' entry `semantic-change-function'.
17150         This new function will set `semantic-toplevel-bovine-cache-check'
17151         to true based on what the user changed.
17152
17153         * semantic-mode.el: Changed comment, and removed dynamic reparse stuff.
17154
17155         * semantic-el.el: Added advice into the language.
17156
17157         * semantic.el: Added some more overlay compatibility aliases.
17158         Added `semantic-clear-toplevel-cache' to `change-major-mode-hook'.
17159
17160         * semantic-util.el:
17161         Added `semantic-find-nonterminal-by-overlay-in-region',
17162         `semantic-find-nonterminal-by-overlay-next', and
17163         `semantic-find-nonterminal-by-overlay-prev'.
17164
17165         * semantic-imenu.el:
17166         Added a `which-function' hack to use with `which-function' mode.
17167
17168 2000-09-26  Eric M. Ludlam  <zappo@gnu.org>
17169
17170         * semantic-util.el:
17171         summerize-nonterminal, prototype-nonterminal, and prototype-file all
17172         had incorrect overload function grabbing code.  Set them up correctly.
17173
17174         * semantic-mode.el: Added a lame menu for imenu soring functions
17175
17176         * semantic-util.el:
17177         Reversed all compares in the semantic-sort functions because they were
17178         backwards.
17179
17180 2000-09-25  Eric M. Ludlam  <zappo@gnu.org>
17181
17182         * semantic-imenu.el:
17183         nreverse sub-buckets because `semantic-bucketize' now leaves things in
17184         the right order.
17185
17186         * semantic-util.el: Added a filter function to `semantic-bucketize'.
17187         Added many sortingfunctions of the form:
17188          `semantic-sort-tokens-by-name/type-in/decreasing[-ci]'
17189
17190         * semantic-imenu.el:
17191         Added `semantic-imenu-sort-bucket-function' variable.
17192         Pass this to `semantic-bucketize'.
17193
17194         * semantic-mode.el: Removed `checkdoc-add-to-list'.
17195
17196 2000-09-22  Eric M. Ludlam  <zappo@gnu.org>
17197
17198         * semantic-util.el:
17199         Added spiffy functions for changing properties on a token's overlay.
17200
17201         * semantic-imenu.el:
17202         Added interactive toggle functions for our sorting/binning variables.
17203
17204         * semantic-mode.el: New file.
17205
17206         * semantic-imenu.el:
17207         Added changes from David Ponce: no double separators, all types have submenus.
17208         Added `semantic-imenu-goto-function' which takes overlays for
17209         position.  Replaced all explicit numbers with the overlay from the
17210         semantic token.
17211
17212 2000-09-21  Eric M. Ludlam  <zappo@gnu.org>
17213
17214         * semantic-bnf.el: Added symbol->name list to major-mode
17215         Added imenu index function to major-mode
17216
17217         * c.bnf:
17218         Fixed up struct/union variable declaration section to use new lexical
17219         tokens for struct/union.
17220
17221         * semantic-c.el:
17222         Fixed up struct/union variable declaration section of c.bnf.
17223
17224         * semantic.texi: Fixed up for use with OVERLAY.
17225         Fixed up some descriptions of quoting, and updated the settings
17226         section.
17227         Broke the BNF converter section into sub-nodes.
17228
17229         * semantic-el.el: Added support for methods and classes.
17230
17231 2000-09-20  Eric M. Ludlam  <zappo@gnu.org>
17232
17233         * semantic.el: Fixed typo for delete-overlay in debug mode.
17234
17235         * semantic-c.el:
17236         In `semantic-expand-c-nonterminal', copy the overlay, not start/end.
17237
17238         * semantic.el: Converted to use overlays instead of start/end.
17239         Added overlay compatibility section.
17240         Changed the doc string for `semantic-toplevel-bovine-table'.
17241         Added `semantic-overlay-error-recovery-stack',
17242           `semantic-overlay-stack-add', 'semantic-overlay-stack-clear',
17243           `semantic-delete-overlay-maybe'
17244           `semantic-clear-toplevel-cache' was updated to delete overlays.
17245         `semantic-token-extent/start/end' was changed to use the new
17246           `semantic-token-overlay' macro.
17247         `semantic-bovinate-toplevel' was updated to include a local scope of
17248           the overlay error stack.
17249         `semantic-bovinate-nonterminals' changed to convert START/END from the
17250           lambdas into overlays.  Convert overlays from the return streamed
17251           onto the error recovery stack.
17252         Converted old overlay code in debugger to use compatibility layer.
17253         In `semantic-bovinate-stream', added an overlay stack to the local
17254           scope.  Track the overlays from recursive parses, clear the error
17255           recovery stack whenever a failed match occurs.  Return a list of
17256           overlays found during this parse as a third list in the return arg.
17257           Deleted ITERATE section.
17258           Return nothing if we have a failed match.
17259         In `semantic-bovinate-from-nonterminal', use car-safe.
17260
17261         * semantic-util.el: Added `semantic-find-nonterminal-by-overlay'.
17262
17263 2000-09-19  Eric M. Ludlam  <zappo@gnu.org>
17264
17265         * semantic-imenu.el: Added `semantic-imenu-bucketize-file' option.
17266         Added `semantic-imenu-buckets-to-submenu' option.
17267         When bucketize-file is nil, then do not put tokens into a bucket.
17268         When buckets-to-submenu is nil, then do not put buckets into menus,
17269         but only into sections divided with a separator.
17270         David Ponce fixed a reverse order problem.
17271
17272         * semantic.el:
17273         `semantic-flex-make-keyword-table' now returns the table instead of
17274         assigning it.
17275
17276         * c.bnf: Added %keywordtable
17277
17278         * semantic-bnf.el:
17279         Rearranged semantic-bnf-generate-and-load to do keyword table, and
17280         setup changes first, and the main table last.
17281         Added keywordtable keyword to bnf language.
17282         Added keywordtable finding function.
17283
17284         * semantic-c.el: Updated for new semantic-bnf.
17285
17286         * semantic-util.el:
17287         In semantic-bucketize, return only those buckets with stuff in them.
17288
17289         * semantic-imenu.el:
17290         For types, do not show buckets if there is only one bucket.
17291         Added *typedef* to list of a types buckets to go to that class'
17292         definition. (David Ponce)
17293
17294 2000-09-15  Eric M. Ludlam  <zappo@gnu.org>
17295
17296         * semantic.el:
17297         Added `semantic-flex-keywords-obarray' and `semantic-flex-make-keyword-table'
17298         When a symbol is found in `semantic-flex', it is looked up in the
17299         obarray, and its symbol is then substituded in place of the symbol.
17300
17301         * semantic-bnf.el: Tokens that are symbols now generate a keyword list.
17302         This list is passed to the flexer, and converted into an obarray.
17303
17304         * semantic-imenu.el: Fixed reversing of indicies problem.
17305         Enable imenu--sort-by-name inside sub-sub menus
17306         Added *TypeDef* menu item for jumping to the definition of types, as
17307         opposed to their sub-parts.
17308         Fixed jumping to the end of a definition, not the beginning.
17309
17310 2000-09-14  Eric M. Ludlam  <zappo@gnu.org>
17311
17312         * semantic-make.el: Fixed spelling mistake.
17313
17314         * semantic-c.el: Rebuilt table from c.bnf.
17315
17316         * c.bnf: Updated to use %token to make new tokens for use in RULES.
17317
17318         * semantic-bnf.el: Added the %token token to the language.
17319         This generates smart regexps in the table.
17320
17321 2000-09-13  Eric M. Ludlam  <zappo@gnu.org>
17322
17323         * semantic-bnf.el: Removed all indenting commands from code generation.
17324         Perform region indentation instead at the very end.
17325
17326         * semantic-bnf.el:
17327         `semantic-bnf-lambda-convert', EXPAND tokens should use the old
17328         `lambda' notation, and other code shoud use `semantic-lambda'.
17329         This fixes extra start/end data problems.
17330
17331         * semantic.el:
17332         Updated `semantic-bovinate-from-nonterminal' to remove the let statement.
17333
17334 2000-09-11  Eric M. Ludlam  <zappo@gnu.org>
17335
17336         * c.bnf: Use new BNF settings section.
17337
17338         * semantic-el.el: Updated for new semantic-lambda macro.
17339         Added support for backquote in a single expression.
17340
17341         * semantic-c.el: Updated for new c.bnf.
17342
17343 2000-09-09  Eric M. Ludlam  <zappo@gnu.org>
17344
17345         * semantic.texi: Fixed build errors.
17346
17347         * semantic.texi: Added new section on the setup section and % tokens
17348
17349         * make.bnf: Use new bnf settings section.
17350
17351         * semantic-bnf.el:
17352         New code generators for settings based on new tokens available in
17353         the setup seciton.
17354
17355         * semantic-make.el: Rebuilt using new semantic-bnf
17356
17357 2000-09-08  Eric M. Ludlam  <zappo@gnu.org>
17358
17359         * semantic-sb.el: Updates to handle the new speedbar beta.
17360
17361         * semantic.el:
17362         Working is a part of semantic.  Removed large crufty bits.
17363         Added `semantic-case-fold' for modes.  Initialize `case-fold-search'
17364         from this when parsing.
17365         `semantic-bovinate-symbol-nonterminal-p' is now `defsubst'
17366         Added `semantic-lambda' macro for use in tables.
17367
17368         * semantic-bnf.el: Updated language to include % token things.
17369         Updated output to use `semantic-lambda' macro.  Updated language to
17370         use them.
17371         Updated generator setup code to get the token stream, use %tokens
17372         parsed in the input file for file/table/mode detection.
17373         Passes token stream down to all the sub-functions.
17374         Updated font-lock keywords for % tokens.
17375         bnf-mode alias to semantic-bnf-mode
17376         Updated indent function to use lisp-indent-function whenever inside %( )%
17377         Added `semantic-bnf-in-settings-p' function.
17378
17379 2000-07-07  Eric M. Ludlam  <zappo@gnu.org>
17380
17381         * semantic-sb.el: Remove any reference to parent part of types.
17382         We will just ignore it.
17383
17384 2000-07-05  Eric M. Ludlam  <zappo@gnu.org>
17385
17386         * c.bnf: Support multiple continuous decl modifiers.
17387         Added modifiers into variables.
17388
17389         * semantic-c.el: Updated to new c.bnf.
17390         Changed `semantic-expand-c-nonterminal' to use optsuffix for bit
17391         fields and arrays.  Use modifiers for actual modifiers like static.
17392
17393         * semantic-util.el: Added `semantic-token-variable-optsuffix'.
17394         Used above in `semantic-prototype-nonterminal'.
17395         Also added modifiers support to functions and types.
17396
17397         * semantic.el:
17398         Added OPTSUFFIX to variables for bit fields, or opt arrays.
17399
17400 2000-07-04  Eric M. Ludlam  <zappo@gnu.org>
17401
17402         * semantic-imenu.el:
17403         Fix for imenu subindexes when a types PARTS is empty.
17404
17405 2000-07-03  Eric M. Ludlam  <zappo@gnu.org>
17406
17407         * semantic.texi: Doc fix for semantic-token-variable-modifiers.
17408
17409         * semantic-util.el: Fixed doc of type-modifiers.
17410         Fixed function-throws macro to be 6 not 5
17411
17412 2000-07-01  Eric M. Ludlam  <zappo@gnu.org>
17413
17414         * semantic-util.el:
17415         Fixed left over `semantic-default-c-built-in-types' as
17416         `semantic-default-built-in-types'.
17417
17418         * semantic.texi, semantic-util.el:
17419         Added semantic-find-inntermost-nonterminal-by-position.
17420
17421         * semantic-make.el: Updated with make.bnf.
17422
17423         * make.bnf, semantic-el.el: Updated for new elements in the tokens.
17424
17425         * semantic-c.el: Updated with c.bnf.
17426
17427         * c.bnf: Updated for new elements in the tokens.
17428
17429         * semantic.texi: Syntax error.
17430
17431         * semantic.texi: Various documentation updates.
17432         Added `semantic-token-type-modifiers', `semantic-token-function-modifiers',
17433         `semantic-token-function-throws'.
17434
17435         * semantic-util.el:
17436         Added `semantic-token-type-modifiers', `semantic-token-function-modifiers',
17437         `semantic-token-function-throws'.
17438
17439         * semantic.el: Updated documentation.
17440
17441 2000-06-23  Eric M. Ludlam  <zappo@gnu.org>
17442
17443         * semantic-util.el:
17444         Added `semantic-current-token' to call semantic-find-nonterminal-by-position
17445         with arguments.
17446
17447 2000-06-20  Eric M. Ludlam  <zappo@gnu.org>
17448
17449         * semantic.el: Quick hack to make flex robust to broken lists.
17450
17451 2000-06-16  Eric M. Ludlam  <zappo@gnu.org>
17452
17453         * semantic.el: Added fn to read nonterminals until it reached an error.
17454         Fixed up some doc.
17455         Added `with-syntax-table'
17456
17457 2000-06-14  Eric M. Ludlam  <zappo@gnu.org>
17458
17459         * semantic-imenu.el:
17460         Use imenu-summary-function for regular items, not just types.
17461         Maybe reverse this later.
17462
17463         * semantic-util.el:
17464         Updated summerize to use the symbol->name assoc list.
17465
17466         * semantic-util.el:
17467         Swapped summerize-nonterminal to call prototype-nonterminal,
17468         and prototype-nonterminal now some of the old guts of summerize.
17469         abbreviate now does some of the same things as the speedbar display.
17470
17471         * semantic-imenu.el: Updated for new options in display.
17472
17473 2000-06-13  Eric M. Ludlam  <zappo@gnu.org>
17474
17475         * semantic.el:
17476         Added optional argument to bovinate to force a cache clear.
17477
17478         * semantic-util.el:
17479         Added semantic-bucketize, and semantic-abbreviate-nonterminal.
17480
17481         * semantic-sb.el:
17482         Removed the bucketizer, and used the new version now in semantic-util.
17483
17484         * semantic-el.el: Build in imenu support
17485
17486         * make.bnf: Added special equals and colon NTs
17487
17488         * c.bnf: The table has moved.
17489
17490         * semantic-make.el: Added imenu bovinator support.
17491
17492         * semantic-imenu.el, semantic-c.el: New file.
17493
17494 2000-06-11  Eric M. Ludlam  <zappo@gnu.org>
17495
17496         * semantic.texi: Patched with emacs texi functions.
17497         Added `semantic-flex-enable-newlines' and `semantic-flex-syntax-modifications'.
17498
17499         * semantic.el: Added some ITERATE code which doesn't work yet.
17500         Added `semantic-symbol->name-assoc-list. (buffer local)
17501         Added `semantic-flex-syntax-modifications' (buffer-local)
17502         Use syntax-modifications to change the way parsing occurs.
17503
17504         * semantic-el.el: Renamed to semantic-el.el.
17505         Removed all C stuff.
17506         Updated mega hook to a setup function.
17507
17508         * semantic-make.el: Updated from mega-hook lambda to a setup function.
17509         Changed table to match new make.bnf
17510
17511         * semantic-sb.el:
17512         Updated to use the new variable `semantic-symbol->name-assoc-list'.
17513         This lets languages define their own names for types of tokens.
17514         The bucketing code changed.  It now uses a vector.
17515
17516         * semantic-make.el, make.bnf: New file.
17517
17518 2000-05-25  Eric M. Ludlam  <zappo@gnu.org>
17519
17520         * semantic.texi: Added text about semantic-token-extents.
17521
17522         * semantic-util.el:
17523         Added a comment for finding some other utils functions in semantic.el
17524         Fixe typo.
17525
17526 2000-05-17  Eric M. Ludlam  <zappo@gnu.org>
17527
17528         * semantic.el: Added `semantic-token-extent'
17529
17530         * semantic-sb.el: Added XEmacs invisibility hack stuff.
17531
17532 2000-05-14  Eric M. Ludlam  <zappo@gnu.org>
17533
17534         * working.el: Fixed frame-width for XEmacs minibuffer strangeness.
17535         fixed up some animation stuff. (Old)
17536
17537 2000-05-06  Eric M. Ludlam  <zappo@gnu.org>
17538
17539         * semantic.texi: Added small EDE reference
17540
17541         * sformat.el: Added untokenizing regular expression generators.
17542
17543         * document.el: Added file-header stuff.
17544
17545         * semantic-el.el: Added updates from c.bnf
17546
17547         * c.bnf: Use EXPANDFULL for enums, and for argument lists to functions.
17548
17549 2000-05-04  Eric M. Ludlam  <zappo@gnu.org>
17550
17551         * semantic.el:
17552         Added semantic-flex-start and semantic-flex-end functions.
17553
17554         * semantic-util.el: Added flex option to the doc finder.
17555
17556         * document-vars.el: New file.
17557
17558         * document.el:
17559         Converted all the CPCOMMENT stuff here, and made work with semantic.
17560
17561         * sformat.el:
17562         if no additional args are passed to sformat, then `format' will not be
17563         called on the result.
17564
17565         * semantic.el: Added semantic group for custom.
17566
17567         * semantic-util.el: Added find-documentation, and a snarf-doc command.
17568
17569         * semantic-sb.el: Added autoexpand length variable.
17570         Moved making of invisible text.
17571         semantic-sb-buttons-plain no longer save-excursion/set-buffer.
17572         Removed region narrowing in semantic-sb-buttons.
17573         Bucket insertion will now skip the bucket if it only contains one item.
17574
17575         * semantic-el.el: Added defcustom as variables for Emacs Lisp.
17576
17577 2000-05-01  Eric M. Ludlam  <zappo@gnu.org>
17578
17579         * sformat.el: New file.
17580
17581 2000-04-30  Eric M. Ludlam  <zappo@gnu.org>
17582
17583         * document.el: New file.
17584
17585         * semantic.texi: Added piles o doc about util functions.
17586
17587         * semantic.el: docstrings are now described as a position.
17588         Fixed other doc strings.
17589         semantic-bovinate-toplevel takes new CHECKCACHE argument.
17590         If buffer is different size from last time, re-parse.
17591         Added more info in semantic-flex reguarding END param.
17592
17593         * semantic-util.el: Updated a bunch of documentation.
17594         Added semantic-find-nonterminal-by-position
17595         Fixed a bunch of misspelled &optionals
17596         Added a set buffer when finding nonterminals.
17597         Added semantic-find-documentation to find a doc string.
17598         Added semantic-find-doc-snarf-comment to get the actual text from a buffer.
17599
17600         * semantic-el.el: Fixed Emacs Lisp codes to have doc-string positions.
17601
17602         * semantic-el.el:
17603         Fixed lisp expressions to have correct sizing information.
17604
17605         * semantic-util.el:
17606         Added semantic-prototype-file as an overridable function.
17607
17608 2000-04-29  Eric M. Ludlam  <zappo@gnu.org>
17609
17610         * semantic.el: Working msg now has filename in it.
17611         Added `returnonerror' flag to semantic-bovinate-nonterminals.
17612         goto (point-min) in `bovinate'
17613         Open/close paren matching now matches only one paren at a time.
17614
17615         * semantic-util.el: Added scanning message to recursive search routine.
17616
17617         * semantic-el.el: Updated w/ c.bnf.
17618         Added elisp override for finding dependencies.
17619
17620         * c.bnf: Added support for Linux __P items.
17621         Added support for "..." fn prototypes.
17622
17623 2000-04-28  Eric M. Ludlam  <zappo@gnu.org>
17624
17625         * semantic-util.el:
17626         Find dependency now uses EDE to track local includes if needed.
17627
17628         * semantic.el:
17629         Updated doc about include nonterms.  (Added system flag.)
17630
17631         * semantic-util.el:
17632         Added nil t to all parsing routines used for searching.
17633         Added new recursive find-by-name function.
17634
17635         * semantic-sb.el: Added <> after system includes.
17636
17637         * semantic-el.el: Updated for c.bnf
17638
17639         * c.bnf: Added system flag to include files.
17640
17641 2000-04-27  Eric M. Ludlam  <zappo@gnu.org>
17642
17643         * semantic-util.el: New file.
17644
17645         * semantic.el: Removed some API functions to semantic-util.
17646         Require semantic-util.
17647
17648         * semantic-sb.el: Fixed token display for misc items.
17649
17650         * semantic-el.el: Added built-in types stuff.
17651
17652 2000-04-25  Eric M. Ludlam  <zappo@gnu.org>
17653
17654         * semantic-bnf.el: Fixed first line comment.
17655
17656         * semantic.el: Reverse the order of full expanded items.
17657
17658         * semantic-sb.el: Fixed typo (extra parens)
17659
17660         * semantic.el:
17661         Added semantic-dependency-include-path, and semantic-find-dependency.
17662         These were in semantic-inc.el, but belong here with the override
17663         table.  Fixed up semantic-find-nonterminal to use the new function.
17664
17665         * semantic-el.el, semantic-sb.el:
17666         Removed semantic-inc, use new stuff in semantic.el for same behavior.
17667
17668         * semantic.texi: Added stuff about EXPAND and EXPANDFULL
17669
17670         * semantic-bnf.el:
17671         Added support for the EXPANDFULL token when expanding semantic lists.
17672
17673         * semantic-el.el: Change to c.bnf.
17674
17675         * c.bnf:
17676         structparts now uses EXPANDFULL to get positional information for it's
17677         sub parts.  This simplified STRUCTSUBPARTS nonterminal
17678
17679         * semantic.el:
17680         Added support for a second type of inline token expantion which
17681         includes positional information.
17682
17683         * semantic-el.el:
17684         Fixed up the -c- hook to handle the default include path.
17685
17686         * semantic-sb.el: Added some smarts about the new semantic-inc file.
17687
17688         * semantic-inc.el: New file.
17689
17690 2000-04-23  Eric M. Ludlam  <zappo@gnu.org>
17691
17692         * semantic-bnf.el, semantic.el, semantic-el.el, semantic-sb.el:
17693         Fixed copyright information.
17694
17695         * c.bnf: Added copyright information.
17696
17697         * semantic.texi:
17698         Added a package recommendation in Non-Terminals chapter.
17699
17700         * semantic.el: Added a package recommendation to comments.
17701
17702         * semantic-el.el: Added package support to Emacs Lisp table.
17703
17704         * semantic-sb.el: Added support for `package'.
17705
17706 2000-04-21  Eric M. Ludlam  <zappo@gnu.org>
17707
17708         * semantic.el: Documented some byte compiler warnings.
17709
17710 2000-04-20  Eric M. Ludlam  <zappo@gnu.org>
17711
17712         * semantic-el.el: updated the C bnf to match c.bnf.
17713
17714         * c.bnf: Macros split from 'variable' nt.
17715         Added knr-argument parsing.
17716
17717         * semantic-bnf.el:
17718         Added the ability to also reset all modes (and thereby hooks) for a given mode
17719
17720 2000-04-16  Eric M. Ludlam  <zappo@gnu.org>
17721
17722         * semantic.el:
17723         Turn `semantic-clear-toplevel-cache' into an interactive function.
17724
17725         * semantic-sb.el: Added a Misc bucket for Speedbar.
17726
17727         * semantic-el.el: Updated to new c.bnf
17728
17729         * semantic-bnf.el: Added a .bnf speedbar extension.
17730         Make the return list compatible with speedbar.
17731
17732         * c.bnf: Added `filename' for include rules.
17733
17734         * semantic.el: Fixed up some documentation.
17735
17736         * semantic.texi: Added a section on using the nonterminal token stream.
17737
17738 2000-04-15  Eric M. Ludlam  <zappo@gnu.org>
17739
17740         * semantic.el: Fixed typo.
17741
17742         * semantic.el:
17743         Tried to speed up semantic-flex by using a short-circuit and around
17744         the -extentions section.
17745
17746         * semantic-el.el: Fixed a "." punctuation regular expression.
17747
17748         * semantic.texi:
17749         Added some doc about lexing extentions.  Fixed spelling errors.
17750
17751         * semantic.el:
17752         Added big reference/compare cycle code.  To use uncomment a section.
17753
17754 2000-04-14  Eric M. Ludlam  <zappo@gnu.org>
17755
17756         * semantic.el: Added parser dumper.
17757
17758         * semantic.el: Fixed byte compiled table bug.
17759
17760 2000-01-25  Eric M. Ludlam  <zappo@gnu.org>
17761
17762         * semantic.el: Added debugging support for backquoted tables.
17763
17764         * semantic-sb.el:
17765         Added support for the new speedbar tagging extentions.
17766
17767 1999-12-17  Eric M. Ludlam  <zappo@gnu.org>
17768
17769         * semantic.el: Use assq instead of assoc for some lookups.
17770
17771         * c.bnf: Added a splice , for varnamelist.
17772
17773         * semantic-bnf.el:
17774         Output tables now use backquote so that lambda expressions in the
17775         list can be byte compiled.
17776
17777         * semantic-el.el:
17778         Converted all tables to use backquote which then inlines lambda expressions.
17779
17780 1999-12-13  Eric M. Ludlam  <zappo@gnu.org>
17781
17782         * semantic-el.el: don't concat numbers (for XEmacs).  (by Jan Vroonhof)
17783
17784 1999-06-14  Eric M. Ludlam  <zappo@gnu.org>
17785
17786         * semantic-el.el: Small tweek to cons cells.
17787
17788 1999-06-06  Eric M. Ludlam  <zappo@gnu.org>
17789
17790         * semantic-bnf.el: Moved the doc into the info file.
17791
17792         * c.bnf: Fixed up some language definitions.
17793
17794         * semantic-el.el:
17795         Added use of the flex extensions to strip out pre-processor symbols.
17796
17797         * semantic.el:
17798         Added extensions to the flexer so that the mode author can cause some
17799         syntax elements to be stripped (such as pre-processor symbols.)
17800
17801 1999-05-27  Eric M. Ludlam  <zappo@gnu.org>
17802
17803         * semantic.texi: New file.
17804
17805         * semantic-sb.el: Use the semantic token jump and summerize features.
17806
17807         * semantic-el.el: Updated C code table and expander.
17808
17809         * semantic.el: Changed the variable format a little bit.
17810         Added bovinate-debug
17811         Added overridable functions for jump/summerize.
17812
17813 1999-05-23  Eric M. Ludlam  <zappo@gnu.org>
17814
17815         * semantic.el: Added a cache clear function.
17816         Fixed working message call.
17817
17818         * semantic-bnf.el: Auto-clear when bovinating the BNF.
17819         Fixed working message call.
17820
17821         * semantic-el.el: Fixed the C variables some.
17822
17823         * semantic-sb.el: Fixed up jumping to non-toplevel token things.
17824         Added a parent token finder (a parent has a location)
17825         Fixed a little bit with centering.
17826
17827 1999-05-22  Eric M. Ludlam  <zappo@gnu.org>
17828
17829         * working.el: Added bubble displays.
17830
17831 1999-05-20  Eric M. Ludlam  <zappo@gnu.org>
17832
17833         * working.el: Fixed up doc strings.
17834         Fixed the dotgrowth display to change after growing beyond the edge of
17835         the screen.
17836         Added a utility fn for getting the frame size.
17837         Use utility in dotgrowth and bar-graph.
17838
17839 1999-05-18  Eric M. Ludlam  <zappo@gnu.org>
17840
17841         * working.el:
17842         Fixed the plain bar/percent display.  Updated version to 1.1.
17843
17844         * semantic.el: Added a simple cache.
17845
17846         * semantic-el.el: Fixed compile warning.
17847
17848         * semantic.el: fixed compile warnings.
17849
17850         * semantic-sb.el: Added support for tag hierarchy methods.
17851
17852         * semantic.el: Added a type macro.
17853         You can now force-fail a match in the debugger.
17854
17855         * semantic-el.el: changes from c.bnf.
17856
17857         * c.bnf: Fixed up the returns of some nonterminals.
17858
17859         * semantic-sb.el:
17860         Made it do interesting things for what is returned the C bovinator.
17861
17862 1999-05-17  Eric M. Ludlam  <zappo@gnu.org>
17863
17864         * semantic.el: Larger types now pass down only position.
17865
17866         * semantic-bnf.el: Fixed lots o bugs.
17867
17868         * semantic-el.el:
17869         Added a variable expander, and improved bnf from c.bnf
17870
17871         * c.bnf: New file.
17872
17873 1999-05-14  Eric M. Ludlam  <zappo@gnu.org>
17874
17875         * semantic.el: Debugger fix for termianls.
17876         Convenience `bovinate' function.
17877         Infinite comment fix.
17878         Inline comment stripping.
17879
17880         * semantic-bnf.el: New file.
17881
17882 1999-05-07  Eric M. Ludlam  <zappo@gnu.org>
17883
17884         * semantic-el.el: Added some C rules (still broken though.)
17885
17886         * semantic.el: Fixed to work in 20.2
17887
17888 1999-05-06  Eric M. Ludlam  <zappo@gnu.org>
17889
17890         * semantic.el: Doces on the debugger.
17891
17892         * semantic.el: Added small doc updates.
17893         Added a parse-table debugger, and debug entry point.
17894
17895         * semantic-sb.el: Last of the changes needed for swapping name/tokensym
17896
17897         * semantic.el: converted all synthetic words to reference nonterminals.
17898
17899 1999-05-05  Eric M. Ludlam  <zappo@gnu.org>
17900
17901         * semantic-sb.el: New file.
17902
17903         * semantic-el.el: Updated to put name before token symbol.
17904
17905         * semantic.el:
17906         Changed doc to want the NAME first in the synthetic tokens list.
17907         Added lots of macros for referencing return tokens.
17908         Mucked with working message code.
17909
17910         * working.el: fixed to be more robust wrt frames again.
17911
17912 1999-05-04  Eric M. Ludlam  <zappo@gnu.org>
17913
17914         * working.el: Update copyright.
17915         Added celeron-percent-display.
17916         Forced incoming precents to integer for status display.
17917         Fixed so if the current frame has no minibuffer, the correct frame
17918         width is used.
17919         Added `working-frame-animation-display' to handle generic animations.
17920         Converted the celeron to use the animator display.
17921         Added a bounce display.
17922
17923 1999-05-03  Eric M. Ludlam  <zappo@gnu.org>
17924
17925         * semantic-el.el, semantic.el: New file.
17926
17927 1998-12-18  Eric M. Ludlam  <zappo@gnu.org>
17928
17929         * working.el:
17930         Added let of working-log-max into the displayers so they do not drop
17931         messages into the *Messages* buffer.
17932
17933 1998-12-17  Eric M. Ludlam  <zappo@gnu.org>
17934
17935         * working.el: Removed a typo in ref1 defvar.
17936
17937         * working.el: Fixed some spelling.  Changed static to dynamic.
17938
17939         * working.el: Updated backwards compatibility comment section.
17940
17941         * working.el: Changed the custom variable names to be more consistant.
17942
17943         * working.el: Fixed up documentation and such.
17944         Made to compile clean.
17945
17946         * working.el: Added celeron, plus static status.
17947
17948 1998-12-16  Eric M. Ludlam  <zappo@gnu.org>
17949
17950         * working.el: New file.
17951