also skip warnings if per rank warning count is over. don't wait until total count is computed

This commit is contained in:
Axel Kohlmeyer
2021-05-05 16:55:35 -04:00
parent 7f034b2ef7
commit 8a2a4c408e

View File

@ -118,8 +118,8 @@ void Error::universe_one(const std::string &file, int line, const std::string &s
void Error::universe_warn(const std::string &file, int line, const std::string &str)
{
if ((allwarn > maxwarn) || (maxwarn < 0)) return;
++numwarn;
if ((numwarn > maxwarn) || (allwarn > maxwarn) || (maxwarn < 0)) return;
if (universe->uscreen)
fmt::print(universe->uscreen,"WARNING on proc {}: {} ({}:{})\n",
universe->me,str,truncpath(file),line);
@ -250,8 +250,8 @@ void Error::_one(const std::string &file, int line, fmt::string_view format,
void Error::warning(const std::string &file, int line, const std::string &str)
{
if ((allwarn > maxwarn) || (maxwarn < 0)) return;
++numwarn;
if ((numwarn > maxwarn) || (allwarn > maxwarn) || (maxwarn < 0)) return;
std::string mesg = fmt::format("WARNING: {} ({}:{})\n",
str,truncpath(file),line);
if (screen) fputs(mesg.c_str(),screen);