From 5a711d7a41c6fe68c5b145b0df7c1a589ba6ea73 Mon Sep 17 00:00:00 2001 From: Jason Zaugg Date: Sat, 21 Jan 2012 14:03:51 +0100 Subject: A better REPL context classloader. Previously, when using ThreadStoppingLineManager (ie, not using -Yrepl-sync), the parent classloader was installed as the thread context classloader. On my machine, this was null. Now, the behaviour is consistent with the thread-free line manager, and allows access to classes defined during the REPL session. Closes SI-5072 --- test/files/run/t5072.check | 14 ++++++++++++++ test/files/run/t5072.scala | 8 ++++++++ 2 files changed, 22 insertions(+) create mode 100644 test/files/run/t5072.check create mode 100644 test/files/run/t5072.scala (limited to 'test/files/run') diff --git a/test/files/run/t5072.check b/test/files/run/t5072.check new file mode 100644 index 0000000000..8fe75f55d6 --- /dev/null +++ b/test/files/run/t5072.check @@ -0,0 +1,14 @@ +Type in expressions to have them evaluated. +Type :help for more information. + +scala> + +scala> class C +defined class C + +scala> Thread.currentThread.getContextClassLoader.loadClass(classOf[C].getName) +res0: Class[_] = class C + +scala> + +scala> diff --git a/test/files/run/t5072.scala b/test/files/run/t5072.scala new file mode 100644 index 0000000000..eef8604ef1 --- /dev/null +++ b/test/files/run/t5072.scala @@ -0,0 +1,8 @@ +import scala.tools.partest.ReplTest + +object Test extends ReplTest { + def code = """ +class C +Thread.currentThread.getContextClassLoader.loadClass(classOf[C].getName) + """ +} -- cgit v1.2.3