Limit cast machinery to preserve const and not accept temporaries