about summary refs log tree commit diff
path: root/src/libexpr/nixexpr.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/libexpr/nixexpr.cc')
-rw-r--r--src/libexpr/nixexpr.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/libexpr/nixexpr.cc b/src/libexpr/nixexpr.cc
index 2632d9f3ff8b..c52a413916a7 100644
--- a/src/libexpr/nixexpr.cc
+++ b/src/libexpr/nixexpr.cc
@@ -44,6 +44,7 @@ void ExprVar::show(std::ostream & str)
 void ExprSelect::show(std::ostream & str)
 {
     str << "(" << *e << ")." << showAttrPath(attrPath);
+    if (def) str << " or " << *def;
 }
 
 void ExprOpHasAttr::show(std::ostream & str)
@@ -211,6 +212,7 @@ void ExprVar::bindVars(const StaticEnv & env)
 void ExprSelect::bindVars(const StaticEnv & env)
 {
     e->bindVars(env);
+    if (def) def->bindVars(env);
 }
 
 void ExprOpHasAttr::bindVars(const StaticEnv & env)