>>954
大まかには950で、

 struct definitionmy(const parse &self) {
  boost::function<void (const wchar_t*, const wchar_t*)> fnc;
  fnc = boost::bind(&parse::func, self, _1, _2);
  r = str_p("hoge")[fnc];
 };

void func(const wchar_t *p1, const wchar_t *p2);

これで通ってしまいましたよ。
デバッガでfuncが呼び出されるのも確認できました。