summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpaltherr <paltherr@epfl.ch>2004-06-11 16:52:00 +0000
committerpaltherr <paltherr@epfl.ch>2004-06-11 16:52:00 +0000
commit1fef47e7b018388df0f0c6b8ec43b753695aa127 (patch)
tree35aa8b70a7280923d1869e80c70b0d28ba4e020d
parent87b12a10405fbb453e5f5838b70f35972c7822ed (diff)
downloadscala-1fef47e7b018388df0f0c6b8ec43b753695aa127.tar.gz
scala-1fef47e7b018388df0f0c6b8ec43b753695aa127.tar.bz2
scala-1fef47e7b018388df0f0c6b8ec43b753695aa127.zip
- Moved method "eq" into AnyRef, changed type o...
- Moved method "eq" into AnyRef, changed type of its argument to AnyRef
-rw-r--r--sources/scala/tools/scalai/Compiler.java6
-rw-r--r--sources/scalac/atree/ATreeFromSTree.java2
-rw-r--r--sources/scalac/backend/Primitives.java2
-rw-r--r--sources/scalac/symtab/Definitions.java7
4 files changed, 9 insertions, 8 deletions
diff --git a/sources/scala/tools/scalai/Compiler.java b/sources/scala/tools/scalai/Compiler.java
index 2de32e3f6d..f545461f25 100644
--- a/sources/scala/tools/scalai/Compiler.java
+++ b/sources/scala/tools/scalai/Compiler.java
@@ -175,9 +175,9 @@ public class Compiler {
// !!! method java.lang.Object.wait(long)
// !!! method java.lang.Object.wait(long, int)
- environment.insertFunction(definitions.ANY_EQ, Function.Eq);
- Override eq_override = Override.empty().insert(definitions.ANY_EQ);
- environment.insertOverride(definitions.ANY_EQ, eq_override);
+ environment.insertFunction(definitions.OBJECT_EQ, Function.Eq);
+ Override eq_override = Override.empty().insert(definitions.OBJECT_EQ);
+ environment.insertOverride(definitions.OBJECT_EQ, eq_override);
environment.insertFunction(definitions.ANY_EQEQ, Function.EqEq);
Override eqeq_override = Override.empty().insert(definitions.ANY_EQEQ);
diff --git a/sources/scalac/atree/ATreeFromSTree.java b/sources/scalac/atree/ATreeFromSTree.java
index 65d5bb5357..5cd902c7dc 100644
--- a/sources/scalac/atree/ATreeFromSTree.java
+++ b/sources/scalac/atree/ATreeFromSTree.java
@@ -474,13 +474,13 @@ public class ATreeFromSTree {
/** Associates generators to primitive methods of given class. */
private void addGeneratorsOf(Symbol clasz) {
if (clasz == definitions.ANY_CLASS) {
- addGenerator(definitions.ANY_EQ, Generator.ANYID);
addGenerator(definitions.ANY_EQEQ, Generator.ANYEQ);
addGenerator(definitions.ANY_BANGEQ, Generator.ANYNE);
addGenerator(definitions.ANY_IS, Generator.ISAS(false));
addGenerator(definitions.ANY_AS, Generator.ISAS(true));
}
if (clasz == definitions.OBJECT_CLASS) {
+ addGenerator(definitions.OBJECT_EQ, Generator.ANYID);
addGenerator(definitions.OBJECT_SYNCHRONIZED, Generator.SYNCHRONIZED);
}
if (clasz == definitions.STRING_CLASS) {
diff --git a/sources/scalac/backend/Primitives.java b/sources/scalac/backend/Primitives.java
index 76453fc179..845c33fd72 100644
--- a/sources/scalac/backend/Primitives.java
+++ b/sources/scalac/backend/Primitives.java
@@ -467,7 +467,6 @@ public class Primitives {
Definitions defs = definitions;
// scala.Any
- addPrimitive(defs.ANY_EQ, Primitive.ID);
addPrimitive(defs.ANY_IS, Primitive.IS);
addPrimitive(defs.ANY_AS, Primitive.AS);
addPrimitive(defs.ANY_EQEQ, Primitive.EQ);
@@ -652,6 +651,7 @@ public class Primitives {
addAll(defs.DOUBLE_CLASS, Names.GE, Primitive.GE, 1);
// scala.Object
+ addPrimitive(defs.OBJECT_EQ, Primitive.ID);
addPrimitive(defs.OBJECT_SYNCHRONIZED, Primitive.SYNCHRONIZED);
// scala.String
diff --git a/sources/scalac/symtab/Definitions.java b/sources/scalac/symtab/Definitions.java
index 7ad28265aa..5311e8dc1d 100644
--- a/sources/scalac/symtab/Definitions.java
+++ b/sources/scalac/symtab/Definitions.java
@@ -285,7 +285,6 @@ public class Definitions {
// Public Fields & Methods - Top and bottom class methods
/** Some scala.Any methods */
- public final Symbol ANY_EQ;
public final Symbol ANY_EQEQ;
public final Symbol ANY_BANGEQ;
public final Symbol ANY_EQUALS;
@@ -300,6 +299,7 @@ public class Definitions {
// Public Fields & Methods - Java class methods
/** Some java.lang.Object methods */
+ public final Symbol OBJECT_EQ;
public final Symbol OBJECT_SYNCHRONIZED;
/** Some java.lang.String methods */
@@ -698,7 +698,6 @@ public class Definitions {
array_TYPE = newTypeMethod(Names.Array ,ARRAY_TYPE(ANYREF_TYPE()));
// add members to scala.Any
- ANY_EQ = newMethod(ANY_CLASS,Names.eq , 0);
ANY_EQEQ = newMethod(ANY_CLASS,Names.EQEQ ,Modifiers.FINAL);
ANY_BANGEQ = newMethod(ANY_CLASS,Names.BANGEQ ,Modifiers.FINAL);
ANY_EQUALS = newMethod(ANY_CLASS,Names.equals ,0);
@@ -709,7 +708,6 @@ public class Definitions {
ANY_AS = newMethod(ANY_CLASS,Names.asInstanceOf,Modifiers.FINAL);
ANY_MATCH = newMethod(ANY_CLASS,Names.match ,Modifiers.FINAL);
- initMethod(ANY_EQ , new Type[]{ANY_TYPE()} , boolean_TYPE());
initMethod(ANY_EQEQ , new Type[]{ANY_TYPE()} , boolean_TYPE());
initMethod(ANY_BANGEQ , new Type[]{ANY_TYPE()} , boolean_TYPE());
initMethod(ANY_EQUALS , new Type[]{ANY_TYPE()} , boolean_TYPE());
@@ -738,9 +736,12 @@ public class Definitions {
ANY_MATCH_TPARAMS[1].type())));
// add members to java.lang.Object
+ OBJECT_EQ =
+ newMethod(OBJECT_CLASS, Names.eq, Modifiers.FINAL);
OBJECT_SYNCHRONIZED =
newMethod(OBJECT_CLASS, Names.synchronized_, Modifiers.FINAL);
+ initMethod(OBJECT_EQ, new Type[]{ANYREF_TYPE()}, boolean_TYPE());
Symbol OBJECT_SYNCHRONIZED_TPARAM =
newTParam(OBJECT_SYNCHRONIZED,0,ANY_TYPE());
Symbol OBJECT_SYNCHRONIZED_VPARAM =