diff options
-rw-r--r-- | src/dotty/tools/dotc/ast/Desugar.scala | 2 | ||||
-rw-r--r-- | src/dotty/tools/dotc/typer/Typer.scala | 4 | ||||
-rw-r--r-- | tests/pos/sigs.scala | 4 |
3 files changed, 7 insertions, 3 deletions
diff --git a/src/dotty/tools/dotc/ast/Desugar.scala b/src/dotty/tools/dotc/ast/Desugar.scala index fa664ee08..da8c892c2 100644 --- a/src/dotty/tools/dotc/ast/Desugar.scala +++ b/src/dotty/tools/dotc/ast/Desugar.scala @@ -151,7 +151,7 @@ object desugar { Modifiers(PrivateLocalParamAccessor | Synthetic), name, refOfDef(tparam)) Thicket(tparam, alias) } - else cpy.TypeDef(tdef, mods, name, rhs1) + else cpy.TypeDef(tdef, mods, name, rhs1, tdef.tparams) } private val synthetic = Modifiers(Synthetic) diff --git a/src/dotty/tools/dotc/typer/Typer.scala b/src/dotty/tools/dotc/typer/Typer.scala index 968d385b0..24599f7c8 100644 --- a/src/dotty/tools/dotc/typer/Typer.scala +++ b/src/dotty/tools/dotc/typer/Typer.scala @@ -740,8 +740,8 @@ class Typer extends Namer with Applications with Implicits { def typedTypeDef(tdef: untpd.TypeDef, sym: Symbol)(implicit ctx: Context): TypeDef = track("typedTypeDef") { val TypeDef(mods, name, rhs) = tdef val mods1 = typedModifiers(mods) - val rhs1 = typedType(rhs) - cpy.TypeDef(tdef, mods1, name, rhs1).withType(sym.typeRef) + //val rhs1 = typedType(rhs) + cpy.TypeDef(tdef, mods1, name, TypeTree(sym.info)).withType(sym.typeRef) } def typedClassDef(cdef: untpd.TypeDef, cls: ClassSymbol)(implicit ctx: Context) = track("typedClassDef") { diff --git a/tests/pos/sigs.scala b/tests/pos/sigs.scala index 4b91015ee..6f66a02e9 100644 --- a/tests/pos/sigs.scala +++ b/tests/pos/sigs.scala @@ -1,5 +1,9 @@ object sigs { + type Lst[A] = List[A] + + type Twin[B] = (B, B) + var x = 7 * 9 class Base { |