about summary refs log tree commit diff
path: root/src/libutil
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2014-04-08T17·24+0200
committerEelco Dolstra <eelco.dolstra@logicblox.com>2014-04-08T17·24+0200
commitdfa2f77d2e1118f32771c2fceefd683435554b9d (patch)
tree36502a51878f50cf01246fdb40e5a5f71d819d75 /src/libutil
parente0a947cde6d11b5182500f024719b04b8997189a (diff)
If a .drv cannot be parsed, show its path
Otherwise you just get ‘expected string `Derive(['’ which isn't very helpful.
Diffstat (limited to 'src/libutil')
-rw-r--r--src/libutil/util.cc2
-rw-r--r--src/libutil/util.hh2
2 files changed, 3 insertions, 1 deletions
diff --git a/src/libutil/util.cc b/src/libutil/util.cc
index 15c462ce4e5b..846674a29d95 100644
--- a/src/libutil/util.cc
+++ b/src/libutil/util.cc
@@ -1041,7 +1041,7 @@ void expect(std::istream & str, const string & s)
     char s2[s.size()];
     str.read(s2, s.size());
     if (string(s2, s.size()) != s)
-        throw Error(format("expected string `%1%'") % s);
+        throw FormatError(format("expected string `%1%'") % s);
 }
 
 
diff --git a/src/libutil/util.hh b/src/libutil/util.hh
index 8bedfea9a0de..ce2d77c19a42 100644
--- a/src/libutil/util.hh
+++ b/src/libutil/util.hh
@@ -326,6 +326,8 @@ bool hasSuffix(const string & s, const string & suffix);
 /* Read string `s' from stream `str'. */
 void expect(std::istream & str, const string & s);
 
+MakeError(FormatError, Error)
+
 
 /* Read a C-style string from stream `str'. */
 string parseString(std::istream & str);