Thread: [cedet-semantic] Bug in Semantic with Python Methods Order
Brought to you by:
zappo
From: Markus G. <gr...@iu...> - 2004-04-29 19:47:19
|
Hi! Klaus Berndl adviced me so send the following bug report: Semantic returns the method tag-list in Python Classes reversed. The following example demonstrates the bug: ---------------- class Test: def b(self): pass def c(self): pass def a(self): pass ---------------- Typing M-: (semantic-tag-children-compatibility (car (semantic-fetch-tags))) RET shows that the methods are returned in the wrong order (a c b). Klaus guessed, that there might be an nreverse (or reverse) on the tag-list missing. Kind regards, Markus |
From: Markus G. <gr...@iu...> - 2004-04-29 19:49:48
|
Hi! Klaus Berndl adviced me so send the following bug report: Semantic returns the method tag-list in Python Classes reversed. The following example demonstrates the bug: ---------------- class Test: def b(self): pass def c(self): pass def a(self): pass ---------------- Typing M-: (semantic-tag-children-compatibility (car (semantic-fetch-tags))) RET shows that the methods are returned in the wrong order (a c b). Klaus guessed, that there might be an nreverse (or reverse) on the tag-list missing. Kind regards, Markus |
From: Eric M. L. <er...@si...> - 2004-05-11 02:43:29
|
>>> Markus Gritsch <gr...@iu...> seems to think that: >Hi! > >Klaus Berndl adviced me so send the following bug report: > >Semantic returns the method tag-list in Python Classes reversed. The >following example demonstrates the bug: > >---------------- >class Test: > def b(self): > pass > > def c(self): > pass > > def a(self): > pass >---------------- > >Typing >M-: (semantic-tag-children-compatibility (car (semantic-fetch-tags))) RET >shows that the methods are returned in the wrong order (a c b). Klaus >guessed, that there might be an nreverse (or reverse) on the tag-list >missing. [ ... ] Hi, Sorry for a late reply. I've put this on my todo list of things to solve. If you would like to try it yourself, there is indeed an nreverse on line 629 of wisent-python.wy which, as far as I can tell eventually, parses the indented "def" statements in python. You could fiddle with that, and use "C-c C-c" to rebuild, and then test your change. Thanks Eric -- Eric Ludlam: za...@gn..., er...@si... Home: http://www.ludlam.net Siege: www.siege-engine.com Emacs: http://cedet.sourceforge.net GNU: www.gnu.org |
From: Markus G. <gr...@iu...> - 2004-05-11 20:29:13
|
Eric M. Ludlam wrote: > > Sorry for a late reply. I've put this on my todo list of things to > solve. > > If you would like to try it yourself, there is indeed an nreverse on > line 629 of wisent-python.wy which, as far as I can tell eventually, > parses the indented "def" statements in python. You could fiddle with > that, and use "C-c C-c" to rebuild, and then test your change. Better late than never ;) Thanks for the hint; I will try it at the weekend. Be well, Markus |
From: Markus G. <gr...@iu...> - 2004-05-17 17:41:13
|
Eric M. Ludlam wrote: > If you would like to try it yourself, there is indeed an nreverse on > line 629 of wisent-python.wy which, as far as I can tell eventually, > parses the indented "def" statements in python. You could fiddle with > that, and use "C-c C-c" to rebuild, and then test your change. Yes, this worked perfectly, thank you very much, Markus |
From: Eric M. L. <er...@si...> - 2004-05-17 23:55:24
|
>>> Markus Gritsch <gr...@iu...> seems to think that: >Eric M. Ludlam wrote: >> If you would like to try it yourself, there is indeed an nreverse on >> line 629 of wisent-python.wy which, as far as I can tell eventually, >> parses the indented "def" statements in python. You could fiddle with >> that, and use "C-c C-c" to rebuild, and then test your change. > >Yes, this worked perfectly, thank you very much, >Markus What was the end result in the code? Just removing the nreverse? Thanks Eric -- Eric Ludlam: za...@gn..., er...@si... Home: http://www.ludlam.net Siege: www.siege-engine.com Emacs: http://cedet.sourceforge.net GNU: www.gnu.org |
From: Markus G. <gr...@iu...> - 2004-05-18 18:38:15
|
Eric M. Ludlam wrote: > > What was the end result in the code? Just removing the nreverse? First I tried to replace "nreverse" by "list", but this didn't work. (nreverse (nreverse $2)) is for sure not the best solution, but since I am no Lisp expert, I didn't come up with a better solution, and it works fine for me :) Kind regards, Markus |
From: David P. <dav...@wa...> - 2004-05-18 19:54:31
|
Hi Markus, > First I tried to replace "nreverse" by "list", but this didn't work. > (nreverse (nreverse $2)) is for sure not the best solution, but since I > am no Lisp expert, I didn't come up with a better solution, and it works > fine for me :) I think (progn $2) should work ;-) David |