summaryrefslogtreecommitdiff
path: root/src/reflect
diff options
context:
space:
mode:
authorLukas Rytz <lukas.rytz@epfl.ch>2013-01-08 10:05:55 +0100
committerLukas Rytz <lukas.rytz@epfl.ch>2013-02-03 21:08:33 +0100
commit91c9c420b25072d6ff4123b9bd073028f0a3562a (patch)
tree74da8fc56be73b5b2d40fdeedb56db1fc1506626 /src/reflect
parent01eb6f4958b64667dfae6240effa55d44fa0d392 (diff)
downloadscala-91c9c420b25072d6ff4123b9bd073028f0a3562a.tar.gz
scala-91c9c420b25072d6ff4123b9bd073028f0a3562a.tar.bz2
scala-91c9c420b25072d6ff4123b9bd073028f0a3562a.zip
replace symbols correctly when subtyping dependent types
as discussed in [1], this change has no impact on the scala type system, but it can fix subtyping for annotation checkers if the pluggable type system supports annotations that can refer to method parameters. [1] https://groups.google.com/forum/#!topic/scala-internals/kSJLzYkmif0/discussion
Diffstat (limited to 'src/reflect')
-rw-r--r--src/reflect/scala/reflect/internal/Types.scala2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/reflect/scala/reflect/internal/Types.scala b/src/reflect/scala/reflect/internal/Types.scala
index 3136b227db..55873f6c2f 100644
--- a/src/reflect/scala/reflect/internal/Types.scala
+++ b/src/reflect/scala/reflect/internal/Types.scala
@@ -6075,7 +6075,7 @@ trait Types extends api.Types { self: SymbolTable =>
(sameLength(params1, params2) &&
mt1.isImplicit == mt2.isImplicit &&
matchingParams(params1, params2, mt1.isJava, mt2.isJava) &&
- isSubType(res1, res2.substSym(params2, params1), depth))
+ isSubType(res1.substSym(params1, params2), res2, depth))
// TODO: if mt1.params.isEmpty, consider NullaryMethodType?
case _ =>
false