boost::variable перемещает семантику при использовании boost::apply_visitor
Когда я попытался построить один AST из другого ( постоянное свертывание), я заметил, что во время вызова посетителя происходит ненужное копирование. Но конструкция перехода должна быть там, если мы говорим о C++11/C++1y.
Существуют ли непреодолимые трудности при создании версии посетителя / мультивизитора, которая правильно поддерживает универсальные ссылки?