diff options
author | mihaylov <mihaylov@epfl.ch> | 2004-03-22 10:34:30 +0000 |
---|---|---|
committer | mihaylov <mihaylov@epfl.ch> | 2004-03-22 10:34:30 +0000 |
commit | ef1bee05f0fb8809b11f8f14a87a9a004aa00367 (patch) | |
tree | bdc96a84b18d58a0dc49f11ed8dd50fcbf980e4f /sources/scalac/backend | |
parent | e0ae9dedb091915dd8b951a6d8ddca9d975db8d8 (diff) | |
download | scala-ef1bee05f0fb8809b11f8f14a87a9a004aa00367.tar.gz scala-ef1bee05f0fb8809b11f8f14a87a9a004aa00367.tar.bz2 scala-ef1bee05f0fb8809b11f8f14a87a9a004aa00367.zip |
- Added support for bitwise logical operations ...
- Added support for bitwise logical operations on .NET enumerations.
Diffstat (limited to 'sources/scalac/backend')
-rw-r--r-- | sources/scalac/backend/msil/GenMSIL.java | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sources/scalac/backend/msil/GenMSIL.java b/sources/scalac/backend/msil/GenMSIL.java index 41c3159a9f..c583647f47 100644 --- a/sources/scalac/backend/msil/GenMSIL.java +++ b/sources/scalac/backend/msil/GenMSIL.java @@ -866,13 +866,10 @@ public final class GenMSIL { qualifier, right, resType); } - //Primitive enumCmp = enumCmp(sym); - Symbol owner = sym.owner(); Type t = tc.getType(owner); assert t != null; if (t.IsEnum()) { - System.out.println("Enumeration class: " + t); Primitive enumOp = null; if (sym.name == Names.EQ) enumOp = Primitive.EQ; else if (sym.name == Names.NE) enumOp = Primitive.NE; @@ -880,6 +877,9 @@ public final class GenMSIL { else if (sym.name == Names.LE) enumOp = Primitive.LE; else if (sym.name == Names.GT) enumOp = Primitive.GT; else if (sym.name == Names.GE) enumOp = Primitive.GE; + else if (sym.name == Names.OR) enumOp = Primitive.OR; + else if (sym.name == Names.AND) enumOp = Primitive.AND; + else if (sym.name == Names.XOR) enumOp = Primitive.XOR; if (enumOp != null) { assert args.length == 1; return primitiveOp(enumOp, qualifier, args[0], resType); |