summaryrefslogtreecommitdiff
path: root/src/compiler
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan.moors@typesafe.com>2013-02-04 19:40:12 -0800
committerAdriaan Moors <adriaan.moors@typesafe.com>2013-02-04 19:40:12 -0800
commitde2284b876da52114f567badbdcaa7ce06b98858 (patch)
tree4a4d1e3533bf6125d87c213812ff1cf686f89aef /src/compiler
parent59928c6b529b2221b96eaf3da90468676d507945 (diff)
parent02dd4c974f33d137ea353a72e27efb70928fb378 (diff)
downloadscala-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.scala9
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)
}
}