[Xapian-tickets] [Xapian] #401: Weight cannot be subclassed in bindings

Xapian nobody at xapian.org
Mon Sep 14 13:17:39 BST 2009


#401: Weight cannot be subclassed in bindings
-----------------------------+----------------------------------------------
 Reporter:  james            |       Owner:  olly
     Type:  enhancement      |      Status:  new 
 Priority:  normal           |   Milestone:      
Component:  Xapian-bindings  |     Version:      
 Severity:  normal           |   Blockedby:      
 Platform:  All              |    Blocking:      
-----------------------------+----------------------------------------------
 Originally this was because the Weight API was incompatible with available
 SWIG features. From 1.1, the API has changed; however it is still not
 possible to trivially wrap the class for directors.

 Firstly, SWIG warns:

 /Users/jaylett/projects/xapian/trunk/xapian-
 core/include/xapian/weight.h:163: Warning(473): Returning a pointer or
 reference in a director method is not recommended.

 (this is usually promoted to an error.)

 Secondly, compiling the output has errors:

 modern/xapian_wrap.cc: In function ‘PyObject* _wrap_Weight_init(PyObject*,
 PyObject*)’:
 modern/xapian_wrap.cc:24352: error: ‘_swig_thread_allow’ was not declared
 in this scope
 modern/xapian_wrap.cc: In function ‘PyObject* _wrap_Weight_name(PyObject*,
 PyObject*)’:
 modern/xapian_wrap.cc:24429: error: ‘_swig_thread_allow’ was not declared
 in this scope
 modern/xapian_wrap.cc: In function ‘PyObject*
 _wrap_Weight_serialise(PyObject*, PyObject*)’:
 modern/xapian_wrap.cc:24472: error: ‘_swig_thread_allow’ was not declared
 in this scope
 modern/xapian_wrap.cc: In function ‘PyObject*
 _wrap_Weight_unserialise(PyObject*, PyObject*)’:
 modern/xapian_wrap.cc:24527: error: ‘_swig_thread_allow’ was not declared
 in this scope
 modern/xapian_wrap.cc: In function ‘PyObject*
 _wrap_Weight_get_sumpart(PyObject*, PyObject*)’:
 modern/xapian_wrap.cc:24596: error: ‘_swig_thread_allow’ was not declared
 in this scope
 modern/xapian_wrap.cc: In function ‘PyObject*
 _wrap_Weight_get_maxpart(PyObject*, PyObject*)’:
 modern/xapian_wrap.cc:24639: error: ‘_swig_thread_allow’ was not declared
 in this scope
 modern/xapian_wrap.cc: In function ‘PyObject*
 _wrap_Weight_get_sumextra(PyObject*, PyObject*)’:
 modern/xapian_wrap.cc:24689: error: ‘_swig_thread_allow’ was not declared
 in this scope
 modern/xapian_wrap.cc: In function ‘PyObject*
 _wrap_Weight_get_maxextra(PyObject*, PyObject*)’:
 modern/xapian_wrap.cc:24732: error: ‘_swig_thread_allow’ was not declared
 in this scope

-- 
Ticket URL: <http://trac.xapian.org/ticket/401>
Xapian <http://xapian.org/>
Xapian



More information about the Xapian-tickets mailing list