summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorIulian Dragos <jaguarul@gmail.com>2008-06-18 16:58:56 +0000
committerIulian Dragos <jaguarul@gmail.com>2008-06-18 16:58:56 +0000
commite2b7b044c533e295309dc8ba9fcdb6d8dbc52fd4 (patch)
tree71e90da3bbe9420d42e25f757ad012990d00e02a /src
parent72da305329d3a8889e4e5f8d81a0ecad04b097ad (diff)
downloadscala-e2b7b044c533e295309dc8ba9fcdb6d8dbc52fd4.tar.gz
scala-e2b7b044c533e295309dc8ba9fcdb6d8dbc52fd4.tar.bz2
scala-e2b7b044c533e295309dc8ba9fcdb6d8dbc52fd4.zip
Fixed #1054.
Diffstat (limited to 'src')
-rw-r--r--src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala
index 06106c6d03..5252699198 100644
--- a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala
+++ b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala
@@ -1484,10 +1484,12 @@ abstract class GenJVM extends SubComponent {
}
/** Calls to methods in 'sym' need invokeinterface? */
- def needsInterfaceCall(sym: Symbol): Boolean =
+ def needsInterfaceCall(sym: Symbol): Boolean = {
+ sym.info // needed so that the type is up to date (erasure may add lateINTERFACE to traits)
sym.hasFlag(Flags.INTERFACE) ||
(sym.hasFlag(Flags.JAVA) &&
sym.isNonBottomSubClass(definitions.ClassfileAnnotationClass))
+ }
def javaType(t: TypeKind): JType = (t: @unchecked) match {