From 6116b8db81b46b0f179a1ea277a7323595e6dd68 Mon Sep 17 00:00:00 2001 From: Paul Phillips Date: Fri, 30 Sep 2011 02:05:20 +0000 Subject: My suspicion that unsafeTypeParams was "double-... My suspicion that unsafeTypeParams was "double-adjustment-dipping" its phase manipulation is borne out by the fact that no tests were harmed in the removal of the second adjustment. OK, review by odersky. --- src/compiler/scala/reflect/internal/Symbols.scala | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/compiler/scala/reflect/internal/Symbols.scala b/src/compiler/scala/reflect/internal/Symbols.scala index 160fbf7f77..fb6d512243 100644 --- a/src/compiler/scala/reflect/internal/Symbols.scala +++ b/src/compiler/scala/reflect/internal/Symbols.scala @@ -1007,17 +1007,17 @@ trait Symbols extends api.Symbols { self: SymbolTable => def typeConstructor: Type = abort("typeConstructor inapplicable for " + this) - /** The logic approximately boils down to finding the phase following - * the most recent of namer, typer, or erasure. + /** The logic approximately boils down to finding the most recent phase + * which immediately follows any of namer, typer, or erasure. */ private def unsafeTypeParamPhase = { var ph = phase while (ph.prev.keepsTypeParams) ph = ph.prev - if (ph ne phase) { // Can anyone comment as to what this condition accomplishes? - ph = ph.next + + if (ph ne phase) debuglog("checking unsafeTypeParams(" + this + ") at: " + phase + " reading at: " + ph) - } + ph } /** The type parameters of this symbol, without ensuring type completion. -- cgit v1.2.3