change macro resval to take body instead of second arg