#include int main() { using namespace boost::spirit::qi; typedef std::string::iterator iter; rule a; rule a_cp; a_cp = a; //compiles a_cp = a.copy(); //compiles a_cp = a.alias(); //compiles rule b; rule b_cp; b_cp = b; //compiles b_cp = b.copy(); //fails to compile b_cp = b.alias(); //fails to compile }