diff options
author | Paul Phillips <paulp@improving.org> | 2011-11-04 21:09:14 +0000 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2011-11-04 21:09:14 +0000 |
commit | 508101158c87446410606100819b977b379a6620 (patch) | |
tree | f3a5f6e66ba094599f867522bbc3f05c197ddecd /src | |
parent | f4991fcffc0cddcd16e7abccbc577581fbf5bd0f (diff) | |
download | scala-508101158c87446410606100819b977b379a6620.tar.gz scala-508101158c87446410606100819b977b379a6620.tar.bz2 scala-508101158c87446410606100819b977b379a6620.zip |
More elaborate error message.
No review.
Diffstat (limited to 'src')
-rw-r--r-- | src/compiler/scala/reflect/internal/pickling/UnPickler.scala | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/compiler/scala/reflect/internal/pickling/UnPickler.scala b/src/compiler/scala/reflect/internal/pickling/UnPickler.scala index 47677fad91..2280aba54d 100644 --- a/src/compiler/scala/reflect/internal/pickling/UnPickler.scala +++ b/src/compiler/scala/reflect/internal/pickling/UnPickler.scala @@ -819,10 +819,15 @@ abstract class UnPickler /*extends reflect.generic.UnPickler*/ { protected def errorMissingRequirement(name: Name, owner: Symbol): Symbol = missingHook(owner, name) orElse { + val what = if (name.isTypeName) "type" else "value" MissingRequirementError.notFound( - "reference " + (if (name.isTypeName) "type " else "value ") + - name.decode + " of " + owner.tpe.widen + "/" +owner.tpe.typeSymbol.ownerChain + "/" + owner.info.members) - } + "while unpickling %s, reference %s %s of %s/%s/%s".format( + filename, + what, name.decode, owner.tpe.widen, + owner.tpe.typeSymbol.ownerChain, + owner.info.members.mkString("\n ", "\n ", "")) + ) + } def inferMethodAlternative(fun: Tree, argtpes: List[Type], restpe: Type) {} // can't do it; need a compiler for that. |