Nest all namespaces

The compiler supports this now.  We can type less going forward.
No functional changes.

Signed-off-by: Stephan Pleines <pleines.stephan@gmail.com>
Change-Id: I29d6fa4f9aacc0e381f1a7637294db0392466995
diff --git a/aos/ipc_lib/aos_sync.cc b/aos/ipc_lib/aos_sync.cc
index 6bf5d8c..b1a9fb0 100644
--- a/aos/ipc_lib/aos_sync.cc
+++ b/aos/ipc_lib/aos_sync.cc
@@ -1054,9 +1054,7 @@
   return !__atomic_exchange_n(m, 0, __ATOMIC_SEQ_CST);
 }
 
-namespace aos {
-namespace linux_code {
-namespace ipc_lib {
+namespace aos::linux_code::ipc_lib {
 
 // Sets an extra offset between mutexes and the value we use for them in the
 // robust list (only the forward pointers). This is used to work around a kernel
@@ -1070,6 +1068,4 @@
 // This is mainly useful for testing.
 bool HaveLockedMutexes() { return my_robust_list::HaveLockedMutexes(); }
 
-}  // namespace ipc_lib
-}  // namespace linux_code
-}  // namespace aos
+}  // namespace aos::linux_code::ipc_lib
diff --git a/aos/ipc_lib/event_test.cc b/aos/ipc_lib/event_test.cc
index 40c48b2..eda9156 100644
--- a/aos/ipc_lib/event_test.cc
+++ b/aos/ipc_lib/event_test.cc
@@ -8,8 +8,7 @@
 #include "aos/testing/test_logging.h"
 #include "aos/time/time.h"
 
-namespace aos {
-namespace testing {
+namespace aos::testing {
 
 namespace chrono = ::std::chrono;
 namespace this_thread = ::std::this_thread;
@@ -89,5 +88,4 @@
   EXPECT_GE(finish_time - start_time, kWaitTime);
 }
 
-}  // namespace testing
-}  // namespace aos
+}  // namespace aos::testing
diff --git a/aos/ipc_lib/index.cc b/aos/ipc_lib/index.cc
index 4701f51..b6796b6 100644
--- a/aos/ipc_lib/index.cc
+++ b/aos/ipc_lib/index.cc
@@ -3,8 +3,7 @@
 #include <sstream>
 #include <string>
 
-namespace aos {
-namespace ipc_lib {
+namespace aos::ipc_lib {
 
 ::std::string QueueIndex::DebugString() const {
   if (valid()) {
@@ -29,5 +28,4 @@
   }
 }
 
-}  // namespace ipc_lib
-}  // namespace aos
+}  // namespace aos::ipc_lib
diff --git a/aos/ipc_lib/index_test.cc b/aos/ipc_lib/index_test.cc
index dca75a0..8e0da6d 100644
--- a/aos/ipc_lib/index_test.cc
+++ b/aos/ipc_lib/index_test.cc
@@ -3,9 +3,7 @@
 #include "glog/logging.h"
 #include "gtest/gtest.h"
 
-namespace aos {
-namespace ipc_lib {
-namespace testing {
+namespace aos::ipc_lib::testing {
 
 class QueueIndexTest : public ::testing::Test {
  protected:
@@ -204,6 +202,4 @@
 #endif
 }
 
-}  // namespace testing
-}  // namespace ipc_lib
-}  // namespace aos
+}  // namespace aos::ipc_lib::testing
diff --git a/aos/ipc_lib/lockless_queue.cc b/aos/ipc_lib/lockless_queue.cc
index f033e60..a26b564 100644
--- a/aos/ipc_lib/lockless_queue.cc
+++ b/aos/ipc_lib/lockless_queue.cc
@@ -22,8 +22,7 @@
 DEFINE_bool(dump_lockless_queue_data, false,
             "If true, print the data out when dumping the queue.");
 
-namespace aos {
-namespace ipc_lib {
+namespace aos::ipc_lib {
 namespace {
 
 class GrabQueueSetupLockOrDie {
@@ -1662,5 +1661,4 @@
   ::std::cout << "}" << ::std::endl;
 }
 
-}  // namespace ipc_lib
-}  // namespace aos
+}  // namespace aos::ipc_lib
diff --git a/aos/ipc_lib/lockless_queue_death_test.cc b/aos/ipc_lib/lockless_queue_death_test.cc
index 92ad8a8..ccf95f7 100644
--- a/aos/ipc_lib/lockless_queue_death_test.cc
+++ b/aos/ipc_lib/lockless_queue_death_test.cc
@@ -27,9 +27,7 @@
 #include "aos/realtime.h"
 #include "aos/testing/test_logging.h"
 
-namespace aos {
-namespace ipc_lib {
-namespace testing {
+namespace aos::ipc_lib::testing {
 
 namespace chrono = ::std::chrono;
 
@@ -216,6 +214,4 @@
 
 #endif
 
-}  // namespace testing
-}  // namespace ipc_lib
-}  // namespace aos
+}  // namespace aos::ipc_lib::testing
diff --git a/aos/ipc_lib/lockless_queue_test.cc b/aos/ipc_lib/lockless_queue_test.cc
index 5b57aa9..bfd9916 100644
--- a/aos/ipc_lib/lockless_queue_test.cc
+++ b/aos/ipc_lib/lockless_queue_test.cc
@@ -39,9 +39,7 @@
 #endif
              "Number of threads to race");
 
-namespace aos {
-namespace ipc_lib {
-namespace testing {
+namespace aos::ipc_lib::testing {
 
 namespace chrono = ::std::chrono;
 
@@ -566,6 +564,4 @@
 
 #endif
 
-}  // namespace testing
-}  // namespace ipc_lib
-}  // namespace aos
+}  // namespace aos::ipc_lib::testing
diff --git a/aos/ipc_lib/memory_mapped_queue.cc b/aos/ipc_lib/memory_mapped_queue.cc
index 594febb..d73b850 100644
--- a/aos/ipc_lib/memory_mapped_queue.cc
+++ b/aos/ipc_lib/memory_mapped_queue.cc
@@ -6,8 +6,7 @@
 
 #include "absl/strings/str_cat.h"
 
-namespace aos {
-namespace ipc_lib {
+namespace aos::ipc_lib {
 
 std::string ShmFolder(std::string_view shm_base, const Channel *channel) {
   CHECK(channel->has_name());
@@ -140,5 +139,4 @@
   PCHECK(munmap(const_cast<void *>(const_data_), size_) == 0);
 }
 
-}  // namespace ipc_lib
-}  // namespace aos
+}  // namespace aos::ipc_lib
diff --git a/aos/ipc_lib/queue_racer.cc b/aos/ipc_lib/queue_racer.cc
index 27f3835..aa73f2b 100644
--- a/aos/ipc_lib/queue_racer.cc
+++ b/aos/ipc_lib/queue_racer.cc
@@ -8,8 +8,7 @@
 
 #include "aos/ipc_lib/event.h"
 
-namespace aos {
-namespace ipc_lib {
+namespace aos::ipc_lib {
 namespace {
 
 struct ThreadPlusCount {
@@ -428,5 +427,4 @@
   }
 }
 
-}  // namespace ipc_lib
-}  // namespace aos
+}  // namespace aos::ipc_lib
diff --git a/aos/ipc_lib/robust_ownership_tracker.cc b/aos/ipc_lib/robust_ownership_tracker.cc
index f106113..13edebc 100644
--- a/aos/ipc_lib/robust_ownership_tracker.cc
+++ b/aos/ipc_lib/robust_ownership_tracker.cc
@@ -2,8 +2,7 @@
 
 #include "aos/ipc_lib/lockless_queue.h"
 
-namespace aos {
-namespace ipc_lib {
+namespace aos::ipc_lib {
 
 ::std::string RobustOwnershipTracker::DebugString() const {
   ::std::stringstream s;
@@ -21,5 +20,4 @@
   return s.str();
 }
 
-}  // namespace ipc_lib
-}  // namespace aos
+}  // namespace aos::ipc_lib
diff --git a/aos/ipc_lib/shm_observers.cc b/aos/ipc_lib/shm_observers.cc
index 04a6214..2f28e46 100644
--- a/aos/ipc_lib/shm_observers.cc
+++ b/aos/ipc_lib/shm_observers.cc
@@ -1,8 +1,6 @@
 #include "aos/ipc_lib/shm_observers.h"
 
-namespace aos {
-namespace linux_code {
-namespace ipc_lib {
+namespace aos::linux_code::ipc_lib {
 
 ShmAccessorObserver before_observer = nullptr, after_observer = nullptr;
 
@@ -12,6 +10,4 @@
   after_observer = after;
 }
 
-}  // namespace ipc_lib
-}  // namespace linux_code
-}  // namespace aos
+}  // namespace aos::linux_code::ipc_lib
diff --git a/aos/ipc_lib/signalfd.cc b/aos/ipc_lib/signalfd.cc
index f23d0be..d25151d 100644
--- a/aos/ipc_lib/signalfd.cc
+++ b/aos/ipc_lib/signalfd.cc
@@ -12,8 +12,7 @@
 
 #include "glog/logging.h"
 
-namespace aos {
-namespace ipc_lib {
+namespace aos::ipc_lib {
 namespace {
 
 // Wrapper which propagates msan information.
@@ -118,5 +117,4 @@
   return result;
 }
 
-}  // namespace ipc_lib
-}  // namespace aos
+}  // namespace aos::ipc_lib
diff --git a/aos/ipc_lib/signalfd_test.cc b/aos/ipc_lib/signalfd_test.cc
index 40c0a13..2f349c1 100644
--- a/aos/ipc_lib/signalfd_test.cc
+++ b/aos/ipc_lib/signalfd_test.cc
@@ -5,9 +5,7 @@
 
 #include "aos/testing/test_logging.h"
 
-namespace aos {
-namespace ipc_lib {
-namespace testing {
+namespace aos::ipc_lib::testing {
 
 // Tests in this file use separate threads to isolate all manipulation of signal
 // masks between test cases.
@@ -72,6 +70,4 @@
                "Some other code unblocked one or more of our signals");
 }
 
-}  // namespace testing
-}  // namespace ipc_lib
-}  // namespace aos
+}  // namespace aos::ipc_lib::testing