whereij scalar can't use BOOST_DISPATCH_RETURNS, it may result in a reference which is dangling