Making macro arguments safer