aboutsummaryrefslogtreecommitdiffstats
path: root/src/resp.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/resp.hpp')
-rw-r--r--src/resp.hpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/resp.hpp b/src/resp.hpp
index 1edf9e6..34106f4 100644
--- a/src/resp.hpp
+++ b/src/resp.hpp
@@ -353,6 +353,7 @@ struct AType : public ATuple {
if (kid && !kid->concrete())
return false;
}
+ case DOTS: return false;
}
return true;
}
@@ -365,6 +366,7 @@ struct AType : public ATuple {
case VAR: return id == rt->id;
case PRIM: return head()->str() == rt->head()->str();
case EXPR: return ATuple::operator==(rhs);
+ case DOTS: return true;
}
return false; // never reached
}
@@ -697,7 +699,7 @@ struct Engine {
virtual CVal compilePrimitive(CEnv& cenv, APrimitive* prim) = 0;
virtual CVal compileIf(CEnv& cenv, AIf* aif) = 0;
virtual CVal compileGlobal(CEnv& cenv, const AType* t, const string& sym, CVal val) = 0;
- virtual CVal getGlobal(CEnv& cenv, CVal val) = 0;
+ virtual CVal getGlobal(CEnv& cenv, const string& sym, CVal val) = 0;
virtual void writeModule(CEnv& cenv, std::ostream& os) = 0;
virtual const string call(CEnv& cenv, CFunc f, const AType* retT) = 0;