aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/types.ixx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2020-05-13 07:14:50 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2020-05-27 08:35:29 +0200
commit741cce26c1caeacc0e578a8bef1efefa993adcc1 (patch)
treebe3dcd6db8c1fea92ada21a6fa8f88fd53047aec /libbuild2/types.ixx
parent9a0f07035b34a356ce9b5601d71d388595762184 (diff)
Initial support for ad hoc C++ recipes
Diffstat (limited to 'libbuild2/types.ixx')
-rw-r--r--libbuild2/types.ixx21
1 files changed, 21 insertions, 0 deletions
diff --git a/libbuild2/types.ixx b/libbuild2/types.ixx
index c770842..750c8c7 100644
--- a/libbuild2/types.ixx
+++ b/libbuild2/types.ixx
@@ -3,6 +3,27 @@
namespace build2
{
+ // location
+ //
+ inline ostream&
+ operator<< (ostream& o, const location& l)
+ {
+ if (!l.empty ())
+ {
+ o << l.file;
+
+ if (l.line != 0)
+ {
+ o << ':' << l.line;
+
+ if (l.column != 0)
+ o << ':' << l.column;
+ }
+ }
+
+ return o;
+ }
+
// Note that in the constructors we cannot pass the file data member to the
// base class constructor as it is not initialized yet (and so its base
// path/name pointers are not initialized). Thus, we initialize the path