|
Boost Users : |
From: Olaf Peter (ope-devel_at_[hidden])
Date: 2008-08-08 14:14:49
Hi,
I perform some tests and run into problems. The following code doesn't
compile:
---8<---
#include <boost/python.hpp>
namespace python = boost::python;
struct My {
void exec_test() { }
};
int main()
{
Py_Initialize();
boost::function<void (My*)> exec_test = &My::exec_test; //L13
My my;
if (python::handle_exception(exec_test(&my))) {
if (PyErr_Occurred()) {
PyErr_Print();
}
}
return 0;
}
--->8---
$ LANG=en g++ -I /usr/include/python2.5 python_embedded.cpp -o
python_embedded -l python2.5 -l boost_python
python_embedded.cpp: In function 'int main()':
python_embedded.cpp:13: error: variable 'boost::function<void ()(My*),
std::allocator<void> > exec_test' has initializer but incomplete type
but the code snipped from the boost.function doc page works:
---8<---
#include <boost/function.hpp>
struct X {
void foo() {}
};
int main()
{
boost::function<void (X*)> f = &X::foo;
X x;
f(&x);
}
--->8---
I see no difference that matter, what happens here?
Thanks,
Olaf
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net