Use a bool for ForceDefaults instead of an int

The actual function takes a bool.

While we are doing this, add a couple missing ForceDefaults.

Change-Id: I7fd41c048dae340ca4f339230ceb033349db0faf
diff --git a/aos/configuration.cc b/aos/configuration.cc
index 2d4b867..ee343c2 100644
--- a/aos/configuration.cc
+++ b/aos/configuration.cc
@@ -289,7 +289,7 @@
   }
 
   flatbuffers::FlatBufferBuilder fbb;
-  fbb.ForceDefaults(1);
+  fbb.ForceDefaults(true);
 
   // Start by building the vectors.  They need to come before the final table.
   // Channels
@@ -492,7 +492,7 @@
     const Flatbuffer<Configuration> &config,
     const std::vector<aos::FlatbufferString<reflection::Schema>> &schemas) {
   flatbuffers::FlatBufferBuilder fbb;
-  fbb.ForceDefaults(1);
+  fbb.ForceDefaults(true);
 
   flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<Channel>>>
       channels_offset;
@@ -500,7 +500,7 @@
     std::vector<flatbuffers::Offset<Channel>> channel_offsets;
     for (const Channel *c : *config.message().channels()) {
       flatbuffers::FlatBufferBuilder channel_fbb;
-      channel_fbb.ForceDefaults(1);
+      channel_fbb.ForceDefaults(true);
 
       // Search for a schema with a matching type.
       const aos::FlatbufferString<reflection::Schema> *found_schema = nullptr;
diff --git a/aos/events/event_loop.cc b/aos/events/event_loop.cc
index b50162b..2ffad3b 100644
--- a/aos/events/event_loop.cc
+++ b/aos/events/event_loop.cc
@@ -209,7 +209,7 @@
 
   // Now, build up a report with everything pre-filled out.
   flatbuffers::FlatBufferBuilder fbb;
-  fbb.ForceDefaults(1);
+  fbb.ForceDefaults(true);
 
   // Pre-fill in the defaults for timers.
   std::vector<flatbuffers::Offset<timing::Timer>> timer_offsets;
diff --git a/aos/events/event_loop.h b/aos/events/event_loop.h
index 4294226..27df016 100644
--- a/aos/events/event_loop.h
+++ b/aos/events/event_loop.h
@@ -252,7 +252,7 @@
           allocator_(allocator),
           sender_(sender) {
       CheckChannelDataAlignment(allocator->data(), allocator->size());
-      fbb_.ForceDefaults(1);
+      fbb_.ForceDefaults(true);
     }
     Builder() {}
     Builder(const Builder &) = delete;
diff --git a/aos/events/logging/log_edit.cc b/aos/events/logging/log_edit.cc
index 5db503a..02b7bd7 100644
--- a/aos/events/logging/log_edit.cc
+++ b/aos/events/logging/log_edit.cc
@@ -27,7 +27,7 @@
       const ::std::string header_json =
           aos::util::ReadFileToStringOrDie(FLAGS_header);
       flatbuffers::FlatBufferBuilder fbb;
-      fbb.ForceDefaults(1);
+      fbb.ForceDefaults(true);
       flatbuffers::Offset<aos::logger::LogFileHeader> header =
           aos::JsonToFlatbuffer<aos::logger::LogFileHeader>(header_json, &fbb);
 
diff --git a/aos/events/logging/logger.cc b/aos/events/logging/logger.cc
index 57c2c2c..ddd3dac 100644
--- a/aos/events/logging/logger.cc
+++ b/aos/events/logging/logger.cc
@@ -124,7 +124,7 @@
 void Logger::WriteHeader(const Node *node) {
   // Now write the header with this timestamp in it.
   flatbuffers::FlatBufferBuilder fbb;
-  fbb.ForceDefaults(1);
+  fbb.ForceDefaults(true);
 
   flatbuffers::Offset<aos::Configuration> configuration_offset =
       CopyFlatBuffer(event_loop_->configuration(), &fbb);
@@ -230,7 +230,7 @@
             // Write!
             flatbuffers::FlatBufferBuilder fbb(f.fetcher->context().size +
                                                max_header_size_);
-            fbb.ForceDefaults(1);
+            fbb.ForceDefaults(true);
 
             fbb.FinishSizePrefixed(PackMessage(&fbb, f.fetcher->context(),
                                                f.channel_index, f.log_type));
@@ -252,7 +252,7 @@
           if (f.timestamp_writer != nullptr) {
             // And now handle timestamps.
             flatbuffers::FlatBufferBuilder fbb;
-            fbb.ForceDefaults(1);
+            fbb.ForceDefaults(true);
 
             fbb.FinishSizePrefixed(PackMessage(&fbb, f.fetcher->context(),
                                                f.channel_index,
@@ -898,13 +898,13 @@
   // This is the builder that we use for the config containing all the new
   // channels.
   flatbuffers::FlatBufferBuilder new_config_fbb;
-  new_config_fbb.ForceDefaults(1);
+  new_config_fbb.ForceDefaults(true);
   std::vector<flatbuffers::Offset<Channel>> channel_offsets;
   for (auto &pair : remapped_channels_) {
     // This is the builder that we use for creating the Channel with just the
     // new name.
     flatbuffers::FlatBufferBuilder new_name_fbb;
-    new_name_fbb.ForceDefaults(1);
+    new_name_fbb.ForceDefaults(true);
     const flatbuffers::Offset<flatbuffers::String> name_offset =
         new_name_fbb.CreateString(pair.second);
     ChannelBuilder new_name_builder(new_name_fbb);
diff --git a/aos/flatbuffer_merge.cc b/aos/flatbuffer_merge.cc
index 1f5c8a0..e548f70 100644
--- a/aos/flatbuffer_merge.cc
+++ b/aos/flatbuffer_merge.cc
@@ -518,7 +518,7 @@
     const uint8_t *data2) {
   // Build up a builder.
   flatbuffers::FlatBufferBuilder fbb;
-  fbb.ForceDefaults(1);
+  fbb.ForceDefaults(true);
 
   // Finish up the buffer and return it.
   fbb.Finish(MergeFlatBuffers(typetable, data1, data2, &fbb));
@@ -537,10 +537,10 @@
   // implementation is fine for the usages that we have now.  We are better off
   // abstracting this into a library call where we can fix it later easily.
   flatbuffers::FlatBufferBuilder fbb1;
-  fbb1.ForceDefaults(1);
+  fbb1.ForceDefaults(true);
   fbb1.Finish(MergeFlatBuffers(typetable, t1, nullptr, &fbb1));
   flatbuffers::FlatBufferBuilder fbb2;
-  fbb2.ForceDefaults(1);
+  fbb2.ForceDefaults(true);
   fbb2.Finish(MergeFlatBuffers(typetable, t2, nullptr, &fbb2));
 
   if (fbb1.GetSize() != fbb2.GetSize()) return false;
diff --git a/aos/flatbuffer_merge.h b/aos/flatbuffer_merge.h
index 5e84160..418ea5e 100644
--- a/aos/flatbuffer_merge.h
+++ b/aos/flatbuffer_merge.h
@@ -55,7 +55,7 @@
 inline aos::FlatbufferDetachedBuffer<T> MergeFlatBuffers(const T *fb1,
                                                          const T *fb2) {
   flatbuffers::FlatBufferBuilder fbb;
-  fbb.ForceDefaults(1);
+  fbb.ForceDefaults(true);
   fbb.Finish(MergeFlatBuffers<T>(
       reinterpret_cast<const flatbuffers::Table *>(fb1),
       reinterpret_cast<const flatbuffers::Table *>(fb2), &fbb));
@@ -72,7 +72,7 @@
 template <class T>
 inline FlatbufferDetachedBuffer<T> CopyFlatBuffer(const T *t) {
   flatbuffers::FlatBufferBuilder fbb;
-  fbb.ForceDefaults(1);
+  fbb.ForceDefaults(true);
   fbb.Finish(CopyFlatBuffer<T>(t, &fbb));
   return FlatbufferDetachedBuffer<T>(fbb.Release());
 }
diff --git a/aos/flatbuffer_merge_test.cc b/aos/flatbuffer_merge_test.cc
index 371639a..890a831 100644
--- a/aos/flatbuffer_merge_test.cc
+++ b/aos/flatbuffer_merge_test.cc
@@ -136,7 +136,7 @@
         out);
     {
       flatbuffers::FlatBufferBuilder fbb;
-      fbb.ForceDefaults(1);
+      fbb.ForceDefaults(true);
       fbb.Finish(MergeFlatBuffers(
           ConfigurationTypeTable(),
           flatbuffers::GetRoot<flatbuffers::Table>(fb1.data()),
@@ -145,7 +145,7 @@
     }
     {
       flatbuffers::FlatBufferBuilder fbb;
-      fbb.ForceDefaults(1);
+      fbb.ForceDefaults(true);
       fbb.Finish(MergeFlatBuffers<Configuration>(
           flatbuffers::GetRoot<flatbuffers::Table>(fb1.data()),
           flatbuffers::GetRoot<flatbuffers::Table>(fb2.data()), &fbb));
diff --git a/aos/flatbuffers.h b/aos/flatbuffers.h
index 15740a1..6e86d35 100644
--- a/aos/flatbuffers.h
+++ b/aos/flatbuffers.h
@@ -216,7 +216,7 @@
   // Constructs an empty flatbuffer of type T.
   static FlatbufferDetachedBuffer<T> Empty() {
     flatbuffers::FlatBufferBuilder fbb;
-    fbb.ForceDefaults(1);
+    fbb.ForceDefaults(true);
     const auto end = fbb.EndTable(fbb.StartTable());
     fbb.Finish(flatbuffers::Offset<flatbuffers::Table>(end));
     return FlatbufferDetachedBuffer<T>(fbb.Release());
@@ -238,6 +238,7 @@
  public:
   FlatbufferFixedAllocatorArray() : buffer_(), allocator_(&buffer_[0], Size) {
     builder_ = flatbuffers::FlatBufferBuilder(Size, &allocator_);
+    builder_.ForceDefaults(true);
   }
 
   flatbuffers::FlatBufferBuilder *Builder() {
diff --git a/aos/json_to_flatbuffer.cc b/aos/json_to_flatbuffer.cc
index 249a59e..95c95dd 100644
--- a/aos/json_to_flatbuffer.cc
+++ b/aos/json_to_flatbuffer.cc
@@ -777,7 +777,7 @@
     const std::string_view data,
     const flatbuffers::TypeTable *typetable) {
   flatbuffers::FlatBufferBuilder fbb;
-  fbb.ForceDefaults(1);
+  fbb.ForceDefaults(true);
 
   const flatbuffers::Offset<flatbuffers::Table> result =
       JsonToFlatbuffer(data, typetable, &fbb);
diff --git a/aos/network/message_bridge_client_lib.cc b/aos/network/message_bridge_client_lib.cc
index 39c3d17..93eccc9 100644
--- a/aos/network/message_bridge_client_lib.cc
+++ b/aos/network/message_bridge_client_lib.cc
@@ -107,7 +107,7 @@
 aos::FlatbufferDetachedBuffer<aos::logger::MessageHeader>
 MakeMessageHeaderReply() {
   flatbuffers::FlatBufferBuilder fbb;
-  fbb.ForceDefaults(1);
+  fbb.ForceDefaults(true);
   logger::MessageHeader::Builder message_header_builder(fbb);
   message_header_builder.add_channel_index(0);
   message_header_builder.add_monotonic_sent_time(0);
@@ -123,7 +123,7 @@
     const std::vector<std::string_view> &source_node_names,
     const Configuration *configuration) {
   flatbuffers::FlatBufferBuilder fbb;
-  fbb.ForceDefaults(1);
+  fbb.ForceDefaults(true);
 
   std::vector<flatbuffers::Offset<ClientConnection>> connection_offsets;
   for (const std::string_view node_name : source_node_names) {
diff --git a/aos/network/message_bridge_server_lib.cc b/aos/network/message_bridge_server_lib.cc
index 38958ba..c32829c 100644
--- a/aos/network/message_bridge_server_lib.cc
+++ b/aos/network/message_bridge_server_lib.cc
@@ -22,6 +22,7 @@
     const std::vector<std::string_view> &source_node_names,
     const Configuration *configuration) {
   flatbuffers::FlatBufferBuilder fbb;
+  fbb.ForceDefaults(true);
 
   std::vector<flatbuffers::Offset<ServerConnection>> connection_offsets;
   for (const std::string_view node_name : source_node_names) {
@@ -78,6 +79,7 @@
   // TODO(austin): I don't like allocating this buffer when we are just freeing
   // it at the end of the function.
   flatbuffers::FlatBufferBuilder fbb(channel_->max_size() + 100);
+  fbb.ForceDefaults(true);
   VLOG(1) << "Found " << peers_.size() << " peers on channel "
           << channel_->name()->string_view() << " size " << context.size;
 
diff --git a/frc971/control_loops/drivetrain/improved_down_estimator_test.cc b/frc971/control_loops/drivetrain/improved_down_estimator_test.cc
index 26b27e9..a6d02f6 100644
--- a/frc971/control_loops/drivetrain/improved_down_estimator_test.cc
+++ b/frc971/control_loops/drivetrain/improved_down_estimator_test.cc
@@ -136,7 +136,7 @@
                                     Eigen::AngleAxis<double>(kPitch, uy) *
                                     Eigen::AngleAxis<double>(kRoll, ux));
   flatbuffers::FlatBufferBuilder fbb;
-  fbb.ForceDefaults(1);
+  fbb.ForceDefaults(true);
   fbb.Finish(dtukf.PopulateStatus(&fbb));
 
   aos::FlatbufferDetachedBuffer<drivetrain::DownEstimatorState> state(
diff --git a/frc971/control_loops/drivetrain/line_follow_drivetrain_test.cc b/frc971/control_loops/drivetrain/line_follow_drivetrain_test.cc
index 180af4b..c6bedf6 100644
--- a/frc971/control_loops/drivetrain/line_follow_drivetrain_test.cc
+++ b/frc971/control_loops/drivetrain/line_follow_drivetrain_test.cc
@@ -51,7 +51,7 @@
 
   void Iterate() {
     flatbuffers::FlatBufferBuilder fbb;
-    fbb.ForceDefaults(1);
+    fbb.ForceDefaults(true);
     Goal::Builder goal_builder(fbb);
     goal_builder.add_throttle(driver_model_(state_));
     goal_builder.add_controller_type(freeze_target_
@@ -105,7 +105,7 @@
 
   double GoalTheta(double x, double y, double v, double throttle) {
     flatbuffers::FlatBufferBuilder fbb;
-    fbb.ForceDefaults(1);
+    fbb.ForceDefaults(true);
     Goal::Builder goal_builder(fbb);
     goal_builder.add_throttle(throttle);
     fbb.Finish(goal_builder.Finish());
diff --git a/frc971/zeroing/imu_zeroer_test.cc b/frc971/zeroing/imu_zeroer_test.cc
index 9ec52da..8eef149 100644
--- a/frc971/zeroing/imu_zeroer_test.cc
+++ b/frc971/zeroing/imu_zeroer_test.cc
@@ -7,7 +7,7 @@
 aos::FlatbufferDetachedBuffer<IMUValues> MakeMeasurement(
     const Eigen::Vector3d &gyro, const Eigen::Vector3d &accel) {
   flatbuffers::FlatBufferBuilder fbb;
-  fbb.ForceDefaults(1);
+  fbb.ForceDefaults(true);
   IMUValuesBuilder builder(fbb);
   builder.add_gyro_x(gyro.x());
   builder.add_gyro_y(gyro.y());
diff --git a/y2019/control_loops/superstructure/collision_avoidance_tests.cc b/y2019/control_loops/superstructure/collision_avoidance_tests.cc
index 6b1f031..90b1659 100644
--- a/y2019/control_loops/superstructure/collision_avoidance_tests.cc
+++ b/y2019/control_loops/superstructure/collision_avoidance_tests.cc
@@ -31,7 +31,7 @@
 
 FlatbufferDetachedBuffer<Goal> MakeZeroGoal() {
   flatbuffers::FlatBufferBuilder fbb;
-  fbb.ForceDefaults(1);
+  fbb.ForceDefaults(true);
 
   flatbuffers::Offset<StaticZeroingSingleDOFProfiledSubsystemGoal> wrist_offset;
   {
@@ -71,7 +71,7 @@
 
 FlatbufferDetachedBuffer<Status> MakeZeroStatus() {
   flatbuffers::FlatBufferBuilder fbb;
-  fbb.ForceDefaults(1);
+  fbb.ForceDefaults(true);
 
   flatbuffers::Offset<PotAndAbsoluteEncoderProfiledJointStatus> wrist_offset;
   {