[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Build error in swig-pl

From: Hyrum K. Wright <hyrum_at_hyrumwright.org>
Date: Tue, 30 Jun 2009 07:55:20 -0500

John, Nik,
I know it's been a while since either of you did much with the perl
swig bindings, but I think you're still the domain experts around
here, so this plea goes to you. (If anybody else can fix this,
though, feel free to do so.)

I rev'd an API in libsvn_wc the other day, and now the perl swig
bindings won't build. Specifically, I added svn_wc_get_ignores2(),
and inside the generated wrapper, I see the following error:

svn_wc.c: In function ‘_wrap_svn_wc_get_ignores2’:
svn_wc.c:28992: error: ‘_global_pool’ undeclared (first use in this
svn_wc.c:28992: error: (Each undeclared identifier is reported only once
svn_wc.c:28992: error: for each function it appears in.)

Looking at the generated code it appears that sure enough, that
function is trying to use _global_pool in line 28992:

       arg4 = svn_swig_pl_objs_to_hash_by_name (ST(2), "svn_config_t *",

But _global_pool is never declared or initialized anywhere, like it is
in the wrapper for the now-deprecated API, svn_wc_get_ignores(). I
think part of the problem is that we've started using a dual-pool
structure to allow callers to better manage memory, and instead of
having a single pool argument, our new APIs now have two pool
arguments: a result_pool and a scratch_pool.

The build problem doesn't happen with the swig python or ruby
bindings, and I feel that it might be pretty easy to solve, once one
acquires the knowledge needed to do so. Do either of you have any


PS - The above error information can also be seen on the x64-ubuntu
buildbot: http://crest.ics.uci.edu/buildbot/builders/x64-ubuntu%20gcc/builds/803/steps/Build/logs/stdio

Received on 2009-06-30 14:55:39 CEST

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.