summaryrefslogtreecommitdiff
path: root/sources
diff options
context:
space:
mode:
authorschinz <schinz@epfl.ch>2003-07-28 14:46:15 +0000
committerschinz <schinz@epfl.ch>2003-07-28 14:46:15 +0000
commit3765cc0c1199ff641451c9894530f86135d93e6d (patch)
tree8228e808ea19960db3927b28f808ef4f55c30166 /sources
parent5107585f17fd04f3b1c1263c4224793d679980cd (diff)
downloadscala-3765cc0c1199ff641451c9894530f86135d93e6d.tar.gz
scala-3765cc0c1199ff641451c9894530f86135d93e6d.tar.bz2
scala-3765cc0c1199ff641451c9894530f86135d93e6d.zip
- bug fix: for calls to "super", use the name o...
- bug fix: for calls to "super", use the name of the super-class instead of the name of the method owner for INVOKESPECIAL
Diffstat (limited to 'sources')
-rw-r--r--sources/scalac/backend/jvm/GenJVM.java4
1 files changed, 3 insertions, 1 deletions
diff --git a/sources/scalac/backend/jvm/GenJVM.java b/sources/scalac/backend/jvm/GenJVM.java
index 68ba41082c..0609b5440c 100644
--- a/sources/scalac/backend/jvm/GenJVM.java
+++ b/sources/scalac/backend/jvm/GenJVM.java
@@ -361,7 +361,9 @@ class GenJVM {
for (int i = 0; i < args.length; ++i)
genLoad(ctx, args[i], argTypes[i]);
- String clsName = javaName(funSym.owner());
+ String clsName = isSuperCall
+ ? ctx.clazz.getSuperclassName()
+ : javaName(funSym.owner());
String mthName = funSym.name.toString();
if (funSym.owner().isInterface())