diff options
author | Martin Odersky <odersky@gmail.com> | 2016-06-29 20:18:04 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2016-07-11 13:35:05 +0200 |
commit | dca10528b40632860696d65cfe699d6dfcb62ec0 (patch) | |
tree | 722e245294c8487206b9314708700f19c6fba140 /src | |
parent | 9a90e8167f4694576670a5943ec147757b460af5 (diff) | |
download | dotty-dca10528b40632860696d65cfe699d6dfcb62ec0.tar.gz dotty-dca10528b40632860696d65cfe699d6dfcb62ec0.tar.bz2 dotty-dca10528b40632860696d65cfe699d6dfcb62ec0.zip |
Don't make * types higher-kinded in avoid
Also, fix error counts in tests for new hk scheme.
Diffstat (limited to 'src')
-rw-r--r-- | src/dotty/tools/dotc/typer/TypeAssigner.scala | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/dotty/tools/dotc/typer/TypeAssigner.scala b/src/dotty/tools/dotc/typer/TypeAssigner.scala index 27cc0e6f5..e26ea1138 100644 --- a/src/dotty/tools/dotc/typer/TypeAssigner.scala +++ b/src/dotty/tools/dotc/typer/TypeAssigner.scala @@ -97,8 +97,10 @@ trait TypeAssigner { } case tp @ AppliedType(tycon, args) if toAvoid(tycon) => val base = apply(tycon) - val args = tp.baseArgInfos(base.typeSymbol) - if (base.typeParams.length == args.length) base.appliedTo(args) else base + var args = tp.baseArgInfos(base.typeSymbol) + if (base.typeParams.length != args.length) + args = base.typeParams.map(_.memberBounds) + base.appliedTo(args) case tp @ RefinedType(parent, name, rinfo) if variance > 0 => val parent1 = apply(tp.parent) val refinedInfo1 = apply(rinfo) |