Re: [pygccxml-development] Infinite recursion
Brought to you by:
mbaas,
roman_yakovenko
From: Gustavo C. <gjc...@gm...> - 2007-05-22 20:23:24
|
Thanks, it works. Your changes in patch form attached as diff file. On 22/05/07, Roman Yakovenko <rom...@gm...> wrote: > > On 5/22/07, Gustavo Carneiro <gjc...@gm...> wrote: > > > > Py++ entered an infinite recursive loop when parsing some header file; > > I'm not sure which. Log file in attachment for more details. > > > :-( > > I am looking at code right now and I think I found the problem. > > First of all context. It happens when Py++ analyze declarations to produce > warnings to the user. One of them is related to "function registration > order": > > http://www.language-binding.net/pyplusplus/documentation/functions/registration_order.html > > The infinite loop is possible if you have 2 functions with single > argument. Now the argument type should be pointer to a function. In this > case remove_pointer returns the original type: > > http://www.language-binding.net/pyplusplus/documentation/apidocs/pygccxml.declarations.type_traits-pysrc.html#remove_pointer > > > Do you mind to try attached patch? > > Basically you should replace the pyplusplus/decl_wrapper/algorithm.py > select_problematics function with the attached one. I believe it will solve > the problem. > > P.S. I am on Windows machine, so I don't have access to diff\patch > utilities, you will have to apply the patch manually. > > -- > Roman Yakovenko > C++ Python language binding > http://www.language-binding.net/ > -- Gustavo J. A. M. Carneiro "The universe is always one step beyond logic." -- Frank Herbert |