summaryrefslogtreecommitdiff
path: root/src/reflect/scala/reflect/internal/Types.scala
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2012-11-10 21:30:00 +0100
committerJason Zaugg <jzaugg@gmail.com>2012-11-10 23:42:57 +0100
commit86e045e2863b04bf4af4abb5c2ce345bcdae2b80 (patch)
treed307c1f495e4ac3dc5d77a4ff8872a2561acd265 /src/reflect/scala/reflect/internal/Types.scala
parent0b59b4627a76d99531a51c7f17bbfa8b9c8c4bd8 (diff)
downloadscala-86e045e2863b04bf4af4abb5c2ce345bcdae2b80.tar.gz
scala-86e045e2863b04bf4af4abb5c2ce345bcdae2b80.tar.bz2
scala-86e045e2863b04bf4af4abb5c2ce345bcdae2b80.zip
Refine the message and triggering of MissingRequirementError.
- To force a failure of the stub, call a new method `failIfStub` rather than `info`. - Offer a broader range of potential root causes in the error message.
Diffstat (limited to 'src/reflect/scala/reflect/internal/Types.scala')
-rw-r--r--src/reflect/scala/reflect/internal/Types.scala6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/reflect/scala/reflect/internal/Types.scala b/src/reflect/scala/reflect/internal/Types.scala
index 86d03d7450..57212bab55 100644
--- a/src/reflect/scala/reflect/internal/Types.scala
+++ b/src/reflect/scala/reflect/internal/Types.scala
@@ -1385,7 +1385,11 @@ trait Types extends api.Types { self: SymbolTable =>
/** A class for this-types of the form <sym>.this.type
*/
abstract case class ThisType(sym: Symbol) extends SingletonType with ThisTypeApi {
- assert(sym.isClass, {sym.info; sym}) // call .info to allow StubSymbols to reveal what's missing from the classpath
+ // SI-6640 allow StubSymbols to reveal what's missing from the classpath
+ // before we trip the assertion.
+ sym.failIfStub()
+ assert(sym.isClass, sym)
+
//assert(sym.isClass && !sym.isModuleClass || sym.isRoot, sym)
override def isTrivial: Boolean = sym.isPackageClass
override def isNotNull = true