From: Stefan Z. <ste...@am...> - 2011-01-28 20:14:56
|
Two excerpts from Lib/typemaps/swigtype.swg: %typemap(in, noblock=1) SWIGTYPE *const& (void *argp = 0, int res = 0, $*1_ltype temp) { res = SWIG_ConvertPtr($input, &argp, $*descriptor, $disown | %convertptr_flags); if (!SWIG_IsOK(res)) { %argument_fail(res, "$*ltype", $symname, $argnum); } temp = %reinterpret_cast(argp, $*ltype); $1 = %reinterpret_cast(&temp, $1_ltype); } %typemap(typecheck,precedence=SWIG_TYPECHECK_POINTER,noblock=1) SWIGTYPE *const& { void *vptr = 0; int res = SWIG_ConvertPtr($input, &vptr, $descriptor, 0); $1 = SWIG_CheckState(res); } So, the typecheck is looking for type $descriptor, but the input typemap is looking for type $*descriptor. Huh? Thanks, Stefan Zager |
From: William S F. <ws...@fu...> - 2011-01-30 01:03:03
|
On 28/01/11 20:13, Stefan Zager wrote: > Two excerpts from Lib/typemaps/swigtype.swg: > > %typemap(in, noblock=1) SWIGTYPE *const& (void *argp = 0, int res = 0, $*1_ltype temp) { > res = SWIG_ConvertPtr($input,&argp, $*descriptor, $disown | %convertptr_flags); > if (!SWIG_IsOK(res)) { > %argument_fail(res, "$*ltype", $symname, $argnum); > } > temp = %reinterpret_cast(argp, $*ltype); > $1 = %reinterpret_cast(&temp, $1_ltype); > } > > %typemap(typecheck,precedence=SWIG_TYPECHECK_POINTER,noblock=1) SWIGTYPE *const& { > void *vptr = 0; > int res = SWIG_ConvertPtr($input,&vptr, $descriptor, 0); > $1 = SWIG_CheckState(res); > } > > > So, the typecheck is looking for type $descriptor, but the input typemap is > looking for type $*descriptor. > > Huh? A bug... just committed the fix. William |
From: Stefan Z. <ste...@am...> - 2011-01-30 05:53:22
|
Thanks! With that, I am happy to report that my work in the szager-python-builtin branch now passes the full regression suite (with a handful of tweaks to the runme scripts, which I documented in the svn log). I have merged all of the trunk activity up to revision 12416. I need to do a bit more work to make sure everything works with python3, and I'd also like to make sure the -builtin option works in combination with -O. How do I proceed now? My changes are 100% in the python-specific code, so there's no danger of destabilizing other languages. However, the changes to Source/Modules/python.cxx and Lib/python/*.i are quite extensive. I was very careful to ensure that the code's behavior doesn't change if the -builtin flag isn't used, but it would still be nice to have some level of external testing. Thanks, Stefan On Sat, 29 Jan 2011, William S Fulton wrote: > On 28/01/11 20:13, Stefan Zager wrote: > > Two excerpts from Lib/typemaps/swigtype.swg: > > > > %typemap(in, noblock=1) SWIGTYPE *const& (void *argp = 0, int res = 0, $*1_ltype temp) { > > res = SWIG_ConvertPtr($input,&argp, $*descriptor, $disown | %convertptr_flags); > > if (!SWIG_IsOK(res)) { > > %argument_fail(res, "$*ltype", $symname, $argnum); > > } > > temp = %reinterpret_cast(argp, $*ltype); > > $1 = %reinterpret_cast(&temp, $1_ltype); > > } > > > > %typemap(typecheck,precedence=SWIG_TYPECHECK_POINTER,noblock=1) SWIGTYPE *const& { > > void *vptr = 0; > > int res = SWIG_ConvertPtr($input,&vptr, $descriptor, 0); > > $1 = SWIG_CheckState(res); > > } > > > > > > So, the typecheck is looking for type $descriptor, but the input typemap is > > looking for type $*descriptor. > > > > Huh? > A bug... just committed the fix. > > William > > > |
From: William S F. <ws...@fu...> - 2011-02-03 06:34:10
|
This sounds good. I'd like to proceed as follows... Release 2.0.2 with the D support, there are few random patches to apply and a bit of tidying up to do before this can be done. This will probably take a week or two. Then after the release I'll review changes and then we can merge into trunk where it should get a bit more testing before releasing 2.0.3. Python 3 definitely needs testing before it can be merged. Also this needs a good bit of documentation in Python.html including any limitations. William On 30/01/11 05:53, Stefan Zager wrote: > Thanks! > > With that, I am happy to report that my work in the szager-python-builtin branch > now passes the full regression suite (with a handful of tweaks to the runme > scripts, which I documented in the svn log). I have merged all of the trunk > activity up to revision 12416. > > I need to do a bit more work to make sure everything works with python3, and I'd > also like to make sure the -builtin option works in combination with -O. > > How do I proceed now? My changes are 100% in the python-specific code, so > there's no danger of destabilizing other languages. However, the changes to > Source/Modules/python.cxx and Lib/python/*.i are quite extensive. I was very > careful to ensure that the code's behavior doesn't change if the -builtin flag > isn't used, but it would still be nice to have some level of external testing. > > Thanks, > > Stefan > |
From: Stefan Z. <ste...@am...> - 2011-02-03 07:26:39
|
Sounds fine. I have added python3 support, and I have verified that -builtin works in combination with -O. Next thing I'm going to do is generate some new performance numbers, to make sure I haven't inadvertantly done anything to cancel out the gain. And I'll start on the documentation. Do you have a rough guess when 2.0.3 might happen? I'd like to coordinate with the release schedule for the project I'm working on. Thanks again, Stefan On Thu, 3 Feb 2011, William S Fulton wrote: > This sounds good. I'd like to proceed as follows... > > Release 2.0.2 with the D support, there are few random patches to apply > and a bit of tidying up to do before this can be done. This will > probably take a week or two. Then after the release I'll review changes > and then we can merge into trunk where it should get a bit more testing > before releasing 2.0.3. > > Python 3 definitely needs testing before it can be merged. Also this > needs a good bit of documentation in Python.html including any limitations. > > William > > On 30/01/11 05:53, Stefan Zager wrote: > > Thanks! > > > > With that, I am happy to report that my work in the szager-python-builtin branch > > now passes the full regression suite (with a handful of tweaks to the runme > > scripts, which I documented in the svn log). I have merged all of the trunk > > activity up to revision 12416. > > > > I need to do a bit more work to make sure everything works with python3, and I'd > > also like to make sure the -builtin option works in combination with -O. > > > > How do I proceed now? My changes are 100% in the python-specific code, so > > there's no danger of destabilizing other languages. However, the changes to > > Source/Modules/python.cxx and Lib/python/*.i are quite extensive. I was very > > careful to ensure that the code's behavior doesn't change if the -builtin flag > > isn't used, but it would still be nice to have some level of external testing. > > > > Thanks, > > > > Stefan > > > > |
From: William S F. <ws...@fu...> - 2011-02-13 00:08:42
|
Probably we can release 2.0.3 soon after 2.0.2. By soon I mean as soon as I can do some testing and you are happy with it. We can aim to not put much else in 2.0.3, so testing can just focus on Python. So say a fortnight or so after 2.0.2... that might not seem that soon, but I really don't have that much spare time. Progress on the 2.0.2 release came a bit unstuck with the preprocessor problems I had, but I'll aim to put this out next weekend. William On 03/02/11 07:26, Stefan Zager wrote: > Sounds fine. I have added python3 support, and I have verified that -builtin > works in combination with -O. Next thing I'm going to do is generate some new > performance numbers, to make sure I haven't inadvertantly done anything to > cancel out the gain. And I'll start on the documentation. > > Do you have a rough guess when 2.0.3 might happen? I'd like to coordinate with > the release schedule for the project I'm working on. > > Thanks again, > > Stefan > > > On Thu, 3 Feb 2011, William S Fulton wrote: > >> This sounds good. I'd like to proceed as follows... >> >> Release 2.0.2 with the D support, there are few random patches to apply >> and a bit of tidying up to do before this can be done. This will >> probably take a week or two. Then after the release I'll review changes >> and then we can merge into trunk where it should get a bit more testing >> before releasing 2.0.3. >> >> Python 3 definitely needs testing before it can be merged. Also this >> needs a good bit of documentation in Python.html including any limitations. >> >> William >> >> On 30/01/11 05:53, Stefan Zager wrote: >>> Thanks! >>> >>> With that, I am happy to report that my work in the szager-python-builtin branch >>> now passes the full regression suite (with a handful of tweaks to the runme >>> scripts, which I documented in the svn log). I have merged all of the trunk >>> activity up to revision 12416. >>> >>> I need to do a bit more work to make sure everything works with python3, and I'd >>> also like to make sure the -builtin option works in combination with -O. >>> >>> How do I proceed now? My changes are 100% in the python-specific code, so >>> there's no danger of destabilizing other languages. However, the changes to >>> Source/Modules/python.cxx and Lib/python/*.i are quite extensive. I was very >>> careful to ensure that the code's behavior doesn't change if the -builtin flag >>> isn't used, but it would still be nice to have some level of external testing. >>> >>> Thanks, >>> >>> Stefan >>> >> >> > > |