From: Eric M. Ludlam <eric@si...> - 2006-02-09 02:30:00
I made it a little farther through the prerelease checklist today.
In so doing, I found and fixed the dreaded python parser bug. In
test.py there was a comment about our parser choking on some
definition, and choke hard it did. I needed a little time in GDB to
find the solution.
Turns out, the imenu function that is a part of python.el was using
the senator end-of-defun overload which did something unexpected to
python.el, so naturally, it did the wrong thing.
Because it was in a menu update function, this would completely hang
Emacs. (Thus the need for GDB.)
Thankfully the solution was easy. Use the semantic imenu function
Any python gurus out there, please make sure my change (now in CVS)
does the right thing, since I did a few other random things while I
In other news, the parser was fine, and I uncommented the 'choke'
classes in test.py.
Eric Ludlam: zappo@..., eric@...
Home: http://www.ludlam.net Siege: http://www.siege-engine.com
Emacs: http://cedet.sourceforge.net GNU: http://www.gnu.org
From: Vladimir Kazanov <vkazanov@in...> - 2009-02-05 11:01:15
Oh, seems so :)
Nevertheless, it would be interesting to contact a person who was
developing python grammar and could deal with problems found in
the module. I could name a few...
Of course, it would be interesting to fix those on my own, but I don`t
feel confident enough about Elisp programming.
From: Eric M. Ludlam <eric@si...> - 2009-02-05 12:31:45
>>> Vladimir Kazanov <vkazanov@...> seems to think that:
>Oh, seems so :)
>Nevertheless, it would be interesting to contact a person who was
>developing python grammar and could deal with problems found in
>the module. I could name a few...
>Of course, it would be interesting to fix those on my own, but I don`t
>feel confident enough about Elisp programming.
[ ... ]
I'm sure there are several folks, including myself, who would
code-review your changes before submitting them if you are worried
about your Elisp skills.
If the issues you allude to are in the grammar, then the first step is
actually to build up a test file. The file
cedet/semantic/tests/test.py might be a good start, but it is full of
all sorts of misc stuff that could probably be compressed into simpler
cases. Adding in unit-test markers for smart completion, and some of
the other features would be the next logical step after fixing the
Since I don't know python, I can't really fix it and know I've
covered the right kinds of things. Once we have a good test case, I
can help guide someone through the first steps of updating the
Eric Ludlam: eric@...
Siege: http://www.siege-engine.com Emacs: http://cedet.sourceforge.net