add protection for _BUFFER macro arguments