diff options
author | Adriaan Moors <adriaan.moors@typesafe.com> | 2013-02-04 19:40:12 -0800 |
---|---|---|
committer | Adriaan Moors <adriaan.moors@typesafe.com> | 2013-02-04 19:40:12 -0800 |
commit | de2284b876da52114f567badbdcaa7ce06b98858 (patch) | |
tree | 4a4d1e3533bf6125d87c213812ff1cf686f89aef /src/compiler | |
parent | 59928c6b529b2221b96eaf3da90468676d507945 (diff) | |
parent | 02dd4c974f33d137ea353a72e27efb70928fb378 (diff) | |
download | scala-de2284b876da52114f567badbdcaa7ce06b98858.tar.gz scala-de2284b876da52114f567badbdcaa7ce06b98858.tar.bz2 scala-de2284b876da52114f567badbdcaa7ce06b98858.zip |
Merge pull request #2040 from scalamacros/ticket/7008
SI-7008 @throws annotations are now populated in reflect
Diffstat (limited to 'src/compiler')
-rw-r--r-- | src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala b/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala index 4b1d3c34f3..976f7e038b 100644 --- a/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala +++ b/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala @@ -1042,14 +1042,9 @@ abstract class ClassfileParser { def parseExceptions(len: Int) { val nClasses = in.nextChar for (n <- 0 until nClasses) { + // FIXME: this performs an equivalent of getExceptionTypes instead of getGenericExceptionTypes (SI-7065) val cls = pool.getClassSymbol(in.nextChar.toInt) - val tp = if (cls.isMonomorphicType) cls.tpe else { - debuglog(s"Encountered polymorphic exception `${cls.fullName}` while parsing class file.") - // in case we encounter polymorphic exception the best we can do is to convert that type to - // monomorphic one by introducing existientals, see SI-7009 for details - typer.packSymbols(cls.typeParams, cls.tpe) - } - sym.addAnnotation(appliedType(definitions.ThrowsClass, tp), Literal(Constant(tp))) + sym.addThrowsAnnotation(cls) } } |