build: switch to C++17

Change-Id: Id6217b5c993f3e4726e89773128b565e5f136bb6
diff --git a/tools/chunks/catchunks/data-fetcher.hpp b/tools/chunks/catchunks/data-fetcher.hpp
index 53e32c0..c51d577 100644
--- a/tools/chunks/catchunks/data-fetcher.hpp
+++ b/tools/chunks/catchunks/data-fetcher.hpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2016-2019, Regents of the University of California,
+ * Copyright (c) 2016-2022, Regents of the University of California,
  *                          Colorado State University,
  *                          University Pierre & Marie Curie, Sorbonne University.
  *
@@ -29,11 +29,10 @@
 
 #include "core/common.hpp"
 
-namespace ndn {
-namespace chunks {
+namespace ndn::chunks {
 
 /**
- * @brief fetch data for a given interest and handle timeout or nack error with retries
+ * @brief Fetch data for a given interest and handle timeout or nack error with retries.
  *
  * To instantiate a DataFetcher you need to use the static method fetch, this will also express the
  * interest. After a timeout or nack is received, the same interest with a different nonce will be
@@ -53,12 +52,12 @@
    * @brief means that there is no maximum number of retries,
    *        i.e. fetching must be retried indefinitely
    */
-  static const int MAX_RETRIES_INFINITE;
+  static constexpr int MAX_RETRIES_INFINITE = -1;
 
   /**
    * @brief ceiling value for backoff time used in congestion handling
    */
-  static const time::milliseconds MAX_CONGESTION_BACKOFF_TIME;
+  static constexpr time::milliseconds MAX_CONGESTION_BACKOFF_TIME = 10_s;
 
   using FailureCallback = std::function<void(const Interest& interest, const std::string& reason)>;
 
@@ -117,16 +116,15 @@
 
   int m_maxNackRetries;
   int m_maxTimeoutRetries;
-  int m_nNacks;
-  int m_nTimeouts;
-  uint32_t m_nCongestionRetries;
+  int m_nNacks = 0;
+  int m_nTimeouts = 0;
+  uint32_t m_nCongestionRetries = 0;
 
-  bool m_isVerbose;
-  bool m_isStopped;
-  bool m_hasError;
+  bool m_isVerbose = false;
+  bool m_isStopped = false;
+  bool m_hasError = false;
 };
 
-} // namespace chunks
-} // namespace ndn
+} // namespace ndn::chunks
 
 #endif // NDN_TOOLS_CHUNKS_CATCHUNKS_DATA_FETCHER_HPP