From 8a332d9e66ac2aa517b4eda33ff3a39159110fa0 Mon Sep 17 00:00:00 2001 From: Jason Zaugg Date: Wed, 25 Feb 2015 15:42:55 +1000 Subject: SI-9170 Fix resident compilation / specialization NPE The resident compiler does its best to clean the decks at the conclusion of a compilation batch. One part of this is as follows: if the run was erroneous, reset the info of top level symbols defined in this run to the initial state, that is, to a `SourceFileLoader`. However, if the errors came late in the compilation pipeline, the map from symbols to the source files includes the results of the specialization transformation, which ends up with mappings like `Function1$sp... -> null`. This results in a `NullPointerException` on subsequent runs. This commits filters out null source files during the reset process. --- test/files/res/t9170/A.scala | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 test/files/res/t9170/A.scala (limited to 'test/files/res/t9170/A.scala') diff --git a/test/files/res/t9170/A.scala b/test/files/res/t9170/A.scala new file mode 100644 index 0000000000..239df89679 --- /dev/null +++ b/test/files/res/t9170/A.scala @@ -0,0 +1,4 @@ +object Y { + def f[A](a: => A) = 1 + def f[A](a: => Either[Exception, A]) = 2 +} -- cgit v1.2.3