diff options
author | Martin Odersky <odersky@gmail.com> | 2015-05-03 16:41:29 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2015-05-03 16:41:29 +0200 |
commit | 220fe53ad0638c33572a9e11db0b6dc3aabd6c27 (patch) | |
tree | 30fc8bfeb1ad330f1c5bab78fb227a32dfa76e14 /src/dotty/tools/dotc/transform/FullParameterization.scala | |
parent | bb6582bd265d22186570bef81d2a2f9ab3e23f9d (diff) | |
download | dotty-220fe53ad0638c33572a9e11db0b6dc3aabd6c27.tar.gz dotty-220fe53ad0638c33572a9e11db0b6dc3aabd6c27.tar.bz2 dotty-220fe53ad0638c33572a9e11db0b6dc3aabd6c27.zip |
Fix #522.
We were missing a substitution in full parameterization. Embarraingly, this
made even the example in the doc comment of `fullyParameterizedDef` fail.
Diffstat (limited to 'src/dotty/tools/dotc/transform/FullParameterization.scala')
-rw-r--r-- | src/dotty/tools/dotc/transform/FullParameterization.scala | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/dotty/tools/dotc/transform/FullParameterization.scala b/src/dotty/tools/dotc/transform/FullParameterization.scala index d402c2e7f..d650eecb7 100644 --- a/src/dotty/tools/dotc/transform/FullParameterization.scala +++ b/src/dotty/tools/dotc/transform/FullParameterization.scala @@ -116,8 +116,9 @@ trait FullParameterization { info match { case info @ PolyType(mtnames) => PolyType(mtnames ++ ctnames)( - pt => (info.paramBounds ++ mappedClassBounds(pt)) - .mapConserve(_.subst(info, pt).bounds), + pt => + (info.paramBounds.map(mapClassParams(_, pt).bounds) ++ + mappedClassBounds(pt)).mapConserve(_.subst(info, pt).bounds), pt => resultType(mapClassParams(_, pt)).subst(info, pt)) case _ => if (ctparams.isEmpty) resultType(identity) |