diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2013-09-23 23:35:21 -0700 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2013-09-23 23:35:21 -0700 |
commit | f0ca5aec4c575fe297adcd3e2b16018fff4a0639 (patch) | |
tree | 2fe768432cdbea44d4a1cd98756771d2e9065c8a /src | |
parent | 43dcfd07610f0b17906159c79c1cb1611be14f82 (diff) | |
parent | 733b3220c9c099fcb68e09c37251bea8023198f2 (diff) | |
download | scala-f0ca5aec4c575fe297adcd3e2b16018fff4a0639.tar.gz scala-f0ca5aec4c575fe297adcd3e2b16018fff4a0639.tar.bz2 scala-f0ca5aec4c575fe297adcd3e2b16018fff4a0639.zip |
Merge pull request #2919 from retronym/ticket/7815
SI-7815 Dealias before deeming method type as dependent
Diffstat (limited to 'src')
-rw-r--r-- | src/reflect/scala/reflect/internal/Types.scala | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/reflect/scala/reflect/internal/Types.scala b/src/reflect/scala/reflect/internal/Types.scala index cfa6f927b5..c684f4d690 100644 --- a/src/reflect/scala/reflect/internal/Types.scala +++ b/src/reflect/scala/reflect/internal/Types.scala @@ -2626,7 +2626,7 @@ trait Types extends api.Types { self: SymbolTable => private var isdepmeth: ThreeValue = UNKNOWN override def isDependentMethodType: Boolean = { - if (isdepmeth == UNKNOWN) isdepmeth = fromBoolean(IsDependentCollector.collect(resultType)) + if (isdepmeth == UNKNOWN) isdepmeth = fromBoolean(IsDependentCollector.collect(resultType.dealias)) toBoolean(isdepmeth) } @@ -4807,7 +4807,7 @@ trait Types extends api.Types { self: SymbolTable => object IsDependentCollector extends TypeCollector(false) { def traverse(tp: Type) { if (tp.isImmediatelyDependent) result = true - else if (!result) mapOver(tp) + else if (!result) mapOver(tp.dealias) } } |