diff options
Diffstat (limited to 'typing.cpp')
-rw-r--r-- | typing.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -89,13 +89,13 @@ void APrimitive::constrain(TEnv& tenv) const { const string n = dynamic_cast<ASymbol*>(at(0))->str(); - enum { ARITHMETIC, BINARY, BITWISE, COMPARISON } type; + enum { ARITHMETIC, BINARY, LOGICAL, COMPARISON } type; if (n == "+" || n == "-" || n == "*" || n == "/") type = ARITHMETIC; else if (n == "%") type = BINARY; else if (n == "and" || n == "or" || n == "xor") - type = BITWISE; + type = LOGICAL; else if (n == "=" || n == "!=" || n == ">" || n == ">=" || n == "<" || n == "<=") type = COMPARISON; else @@ -117,7 +117,7 @@ APrimitive::constrain(TEnv& tenv) const tenv.constrain(at(1), tenv.type(this)); tenv.constrain(at(2), tenv.type(this)); break; - case BITWISE: + case LOGICAL: if (size() != 3) throw Error((format("`%1%' requires exactly 2 arguments") % n).str(), loc); tenv.constrain(this, tenv.named("Bool")); |