const stuff
diff --git a/src/jsontestrunner/main.cpp b/src/jsontestrunner/main.cpp
index f6f12b8..61411b4 100644
--- a/src/jsontestrunner/main.cpp
+++ b/src/jsontestrunner/main.cpp
@@ -151,7 +151,6 @@
            reader.getFormattedErrorMessages().c_str());
     return 1;
   }
-
   if (!parseOnly) {
     FILE* factual = fopen(actual.c_str(), "wt");
     if (!factual) {
@@ -182,6 +181,14 @@
   writer.write(sout, root);
   return sout.str();
 }
+static std::string useBuiltStyledStreamWriter(
+    Json::Value const& root)
+{
+  Json::StreamWriterBuilderFactory f;
+  Json::StreamWriter::Builder builder(&f);
+  builder.setCommentStyle(Json::StreamWriter::CommentStyle::All);
+  return writeString(root, builder);
+}
 static int rewriteValueTree(
     const std::string& rewritePath,
     const Json::Value& root,
@@ -248,6 +255,8 @@
       opts->write = &useStyledWriter;
     } else if (writerName == "StyledStreamWriter") {
       opts->write = &useStyledStreamWriter;
+    } else if (writerName == "BuiltStyledStreamWriter") {
+      opts->write = &useBuiltStyledStreamWriter;
     } else {
       printf("Unknown '--json-writer %s'\n", writerName.c_str());
       return 4;