diff --git a/src/core/CLTool.h b/src/core/CLTool.h
index f0f216037d53023c5dfeec78b79f4b52567bf41d..8afab709870425da06ad1a7c4ae6fe8457caf240 100644
--- a/src/core/CLTool.h
+++ b/src/core/CLTool.h
@@ -100,7 +100,8 @@ bool CLTool::parse(const std::string&key,T&t){
   plumed_massert(keywords.exists(key),"keyword " + key + " has not been registered");
   if(keywords.style(key,"compulsory") ){
      plumed_assert(inputData.count(key)>0);
-     plumed_assert( Tools::convert(inputData[key],t) );
+     bool check=Tools::convert(inputData[key],t);
+     plumed_assert(check);
      return true;
   }
   if( inputData.count(key)==0 ) return false;