only produce warnings if there are no errors