Fix dependencies for stats options (#6378)
authorGereon Kremer <gereon.kremer@cs.rwth-aachen.de>
Fri, 16 Apr 2021 15:12:03 +0000 (17:12 +0200)
committerGitHub <noreply@github.com>
Fri, 16 Apr 2021 15:12:03 +0000 (15:12 +0000)
A last-minute edit in a previous PR broke the handling of dependencies between the statistic options.

src/options/options_handler.cpp

index 35a9673e26f435eb6970a7d5742d9886592c06ac..3c5616c73c7241b4ee00af394b31149b1c1bed1b 100644 (file)
@@ -275,24 +275,26 @@ void OptionsHandler::setStats(const std::string& option, bool value)
     throw OptionException(ss.str());
   }
 #endif /* CVC5_STATISTICS_ON */
+  Assert(option.substr(0, 2) == "--");
+  std::string opt = option.substr(2);
   if (value)
   {
-    if (option == options::statisticsAll.getName())
+    if (opt == options::statisticsAll.getName())
     {
       d_options->d_holder->statistics = true;
     }
-    else if (option == options::statisticsEveryQuery.getName())
+    else if (opt == options::statisticsEveryQuery.getName())
     {
       d_options->d_holder->statistics = true;
     }
-    else if (option == options::statisticsExpert.getName())
+    else if (opt == options::statisticsExpert.getName())
     {
       d_options->d_holder->statistics = true;
     }
   }
   else
   {
-    if (option == options::statistics.getName())
+    if (opt == options::statistics.getName())
     {
       d_options->d_holder->statisticsAll = false;
       d_options->d_holder->statisticsEveryQuery = false;