Andreas Stieger <andreas.stieger_at_gmx.de> writes:
> Hi,
>
> On 29/01/15 16:05, Philip Martin wrote:
>> Andreas Stieger <andreas.stieger_at_gmx.de> writes:
>>
>>> When removing comments which throw SWIG 3.0.4 errors as this:
>>
>> What errors do you get if you leave the comments in? We don't really
>> want to delete the comments from our source code.
>
>> [ 479s] ./subversion/bindings/swig/core.i:792: Error: Unknown SWIG preprocessor directive: The (if this is a block of target language code, delimit it with %{ and %})
>> [ 479s] ./subversion/bindings/swig/core.i:793: Error: Unknown SWIG preprocessor directive: reference (if this is a block of target language code, delimit it with %{ and %})
>> [ 479s] ./subversion/bindings/swig/core.i:794: Error: Unknown SWIG preprocessor directive: references (if this is a block of target language code, delimit it with %{ and %})
>> [ 479s] ./subversion/bindings/swig/core.i:795: Error: Unknown SWIG preprocessor directive: keeping (if this is a block of target language code, delimit it with %{ and %})
>> [ 479s] /home/abuild/rpmbuild/BUILD/subversion-1.8.11/subversion/bindings/swig/include/proxy.swg:86: Error: Unknown SWIG preprocessor directive: If (if this is a block of target language code, delimit it with %{ and %})
>> [ 479s] /home/abuild/rpmbuild/BUILD/subversion-1.8.11/subversion/bindings/swig/include/proxy.swg:87: Error: Unknown SWIG preprocessor directive: metadata (if this is a block of target language code, delimit it with %{ and %})
So it appears that the SWIG preprocessor is different between 2.0 and
3.0. Rather than remove the comments we could mark them like below.
This works with my 2.0.7, does it work for you? (With both # and %# the
comments are not present in the generated files with my 2.0.7.)
Index: subversion/bindings/swig/include/proxy.swg
===================================================================
--- subversion/bindings/swig/include/proxy.swg (revision 1655672)
+++ subversion/bindings/swig/include/proxy.swg (working copy)
@@ -83,13 +83,13 @@
value = _swig_getattr(self, self.__class__, name)
- # If we got back a different object than we have, we need to copy all our
- # metadata into it, so that it looks identical
+ %# If we got back a different object than we have, we need to copy all our
+ %# metadata into it, so that it looks identical
members = self.__dict__.get("_members")
if members is not None:
_copy_metadata_deep(value, members.get(name))
- # Verify that the new object is good
+ %# Verify that the new object is good
_assert_valid_deep(value)
return value
@@ -98,9 +98,9 @@
"""Set an attribute on this object"""
self.assert_valid()
- # Save a copy of the object, so that the garbage
- # collector won't kill the object while it's in
- # SWIG-land
+ %# Save a copy of the object, so that the garbage
+ %# collector won't kill the object while it's in
+ %# SWIG-land
self.__dict__.setdefault("_members",{})[name] = value
return _swig_setattr(self, self.__class__, name, value)
Index: subversion/bindings/swig/svn_delta.i
===================================================================
--- subversion/bindings/swig/svn_delta.i (revision 1655672)
+++ subversion/bindings/swig/svn_delta.i (working copy)
@@ -206,8 +206,8 @@ void _ops_get(int *num_ops, const svn_txdelta_op_t
#ifdef SWIGPYTHON
%pythoncode {
-# This function is for backwards compatibility only.
-# Use svn_txdelta_window_t.ops instead.
+%# This function is for backwards compatibility only.
+%# Use svn_txdelta_window_t.ops instead.
svn_txdelta_window_t_ops_get = svn_txdelta_window_t._ops_get
}
#endif
--
Philip Martin | Subversion Committer
WANdisco // *Non-Stop Data*
Received on 2015-01-29 17:42:55 CET