A swig dev said: > Wrapping a function taking va_list isn't currently possible with SWIG - > see: > > http://www.swig.org/Doc1.3/Varargs.html#Varargs_nn8 > > I think the text there is a bit pessimistic though - I think we should be > able to automatically generate a C/C++ function with varargs (i.e. ... in > the prototype) in place of the va_list which just sets up a va_list and > then calls the va_list function. Then we can wrap the automatically > generated function instead. But we don't currently do that (and I don't > have plans to work on it myself in the foreseeable future). > > For now at least, you should be able to use %extend to write such a > wrapper for yourself (and wrap it as the manual explains), and then use > %ignore to ignore the va_list version. > > Or if the API being wrapped already has a "..." equivalent, just %ignore > the va_list variant. It appears to me that the last option is the best alternative for csoundac (given that the problematic function is already exported as a "..." overload). And indeed, adding %ignore Counterpoint::message(const char*, va_list); at the beggining of CsoundAC.i makes the compilation work, while apparently preserving the other message function. -- Felipe Sateler