summaryrefslogtreecommitdiff
path: root/sources
diff options
context:
space:
mode:
authorschinz <schinz@epfl.ch>2004-10-14 07:41:30 +0000
committerschinz <schinz@epfl.ch>2004-10-14 07:41:30 +0000
commitea57d9e40d4e356285bb0b6744231e4dc7f1e1eb (patch)
tree76d19f168617fdb431d63da06112bb8c1068152c /sources
parente8642090148d98e2883e3340a10e3a518bc0d226 (diff)
downloadscala-ea57d9e40d4e356285bb0b6744231e4dc7f1e1eb.tar.gz
scala-ea57d9e40d4e356285bb0b6744231e4dc7f1e1eb.tar.bz2
scala-ea57d9e40d4e356285bb0b6744231e4dc7f1e1eb.zip
- handle static members correctly (i.e.
make them appear in the interface)
Diffstat (limited to 'sources')
-rw-r--r--sources/scalac/transformer/AddInterfaces.java3
-rw-r--r--sources/scalac/transformer/AddInterfacesPhase.java2
2 files changed, 3 insertions, 2 deletions
diff --git a/sources/scalac/transformer/AddInterfaces.java b/sources/scalac/transformer/AddInterfaces.java
index fec955fdfe..c5b6b94fab 100644
--- a/sources/scalac/transformer/AddInterfaces.java
+++ b/sources/scalac/transformer/AddInterfaces.java
@@ -97,7 +97,8 @@ public class AddInterfaces extends GenTransformer {
case Ident(_):
Symbol symbol = tree.symbol();
if (symbol.isInitializer()) return getClassMember(symbol);
- if (symbol.isParameter()) return getClassVParam(symbol);
+ if (symbol.isParameter() && !symbol.owner().isStatic())
+ return getClassVParam(symbol);
return symbol;
default:
return tree.symbol();
diff --git a/sources/scalac/transformer/AddInterfacesPhase.java b/sources/scalac/transformer/AddInterfacesPhase.java
index 388510059d..e018abb00e 100644
--- a/sources/scalac/transformer/AddInterfacesPhase.java
+++ b/sources/scalac/transformer/AddInterfacesPhase.java
@@ -102,7 +102,7 @@ public class AddInterfacesPhase extends Phase {
}
protected boolean memberGoesInInterface(Symbol member) {
- return member.isType() || member.isMethod();
+ return !member.isStatic() && (member.isType() || member.isMethod());
}
protected final SymbolNameWriter uniqueNameWriter = new SymbolNameWriter()