T macro cause error in boost, renamed