diff --git a/tools/gn/command_args.cc b/tools/gn/command_args.cc
index 4e3a43f..9980333 100644
--- a/tools/gn/command_args.cc
+++ b/tools/gn/command_args.cc
@@ -181,11 +181,8 @@
       std::string location, comment;
       GetContextForValue(arg.override_value, &location, &line_no, &comment,
                          /*pad_comment=*/false);
-      // Omit file and line if set with --args (i.e. no file)
-      if (!location.empty()) {
-        override_dict.SetKey("file", base::Value(location));
-        override_dict.SetKey("line", base::Value(line_no));
-      }
+      override_dict.SetKey("file", base::Value(location));
+      override_dict.SetKey("line", base::Value(line_no));
     }
     dict.SetKey("current", std::move(override_dict));
   }
@@ -199,11 +196,8 @@
     std::string location;
     GetContextForValue(arg.default_value, &location, &line_no, &comment,
                        /*pad_comment=*/false);
-    // Only emit file and line if the value is overridden.
-    if (arg.has_override) {
-      default_dict.SetKey("file", base::Value(location));
-      default_dict.SetKey("line", base::Value(line_no));
-    }
+    default_dict.SetKey("file", base::Value(location));
+    default_dict.SetKey("line", base::Value(line_no));
   }
   dict.SetKey("default", std::move(default_dict));
   if (!comment.empty() && !short_only)
