aboutsummaryrefslogtreecommitdiff
path: root/bpkg/diagnostics.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'bpkg/diagnostics.cxx')
-rw-r--r--bpkg/diagnostics.cxx15
1 files changed, 14 insertions, 1 deletions
diff --git a/bpkg/diagnostics.cxx b/bpkg/diagnostics.cxx
index 9174c9f..400b352 100644
--- a/bpkg/diagnostics.cxx
+++ b/bpkg/diagnostics.cxx
@@ -54,7 +54,20 @@ namespace bpkg
void location_prologue_base::
operator() (const diag_record& r) const
{
- r << loc_.file << ':' << loc_.line << ':' << loc_.column << ": ";
+ if (!loc_.empty ())
+ {
+ r << loc_.file << ':';
+
+ if (loc_.line != 0)
+ {
+ r << loc_.line << ':';
+
+ if (loc_.column != 0)
+ r << loc_.column << ':';
+ }
+
+ r << ' ';
+ }
if (type_ != nullptr)
r << type_ << ": ";