=== tests/cases/compiler/specializedInheritedConstructors1.ts ===
interface ViewOptions<TModel> {
>ViewOptions : Symbol(ViewOptions, Decl(specializedInheritedConstructors1.ts, 0, 0))
>TModel : Symbol(TModel, Decl(specializedInheritedConstructors1.ts, 0, 22))

    model: TModel;
>model : Symbol(model, Decl(specializedInheritedConstructors1.ts, 0, 31))
>TModel : Symbol(TModel, Decl(specializedInheritedConstructors1.ts, 0, 22))
}

class View<TModel> {
>View : Symbol(View, Decl(specializedInheritedConstructors1.ts, 2, 1))
>TModel : Symbol(TModel, Decl(specializedInheritedConstructors1.ts, 4, 11))

    constructor(options: ViewOptions<TModel>) { }
>options : Symbol(options, Decl(specializedInheritedConstructors1.ts, 5, 16))
>ViewOptions : Symbol(ViewOptions, Decl(specializedInheritedConstructors1.ts, 0, 0))
>TModel : Symbol(TModel, Decl(specializedInheritedConstructors1.ts, 4, 11))

    model: TModel;
>model : Symbol(model, Decl(specializedInheritedConstructors1.ts, 5, 49))
>TModel : Symbol(TModel, Decl(specializedInheritedConstructors1.ts, 4, 11))
}

class Model { }
>Model : Symbol(Model, Decl(specializedInheritedConstructors1.ts, 7, 1))

class MyView extends View<Model> { }
>MyView : Symbol(MyView, Decl(specializedInheritedConstructors1.ts, 9, 15))
>View : Symbol(View, Decl(specializedInheritedConstructors1.ts, 2, 1))
>Model : Symbol(Model, Decl(specializedInheritedConstructors1.ts, 7, 1))

var m: ViewOptions<Model> = { model: new Model() };
>m : Symbol(m, Decl(specializedInheritedConstructors1.ts, 12, 3))
>ViewOptions : Symbol(ViewOptions, Decl(specializedInheritedConstructors1.ts, 0, 0))
>Model : Symbol(Model, Decl(specializedInheritedConstructors1.ts, 7, 1))
>model : Symbol(model, Decl(specializedInheritedConstructors1.ts, 12, 29))
>Model : Symbol(Model, Decl(specializedInheritedConstructors1.ts, 7, 1))

var aView = new View({ model: new Model() }); 
>aView : Symbol(aView, Decl(specializedInheritedConstructors1.ts, 13, 3))
>View : Symbol(View, Decl(specializedInheritedConstructors1.ts, 2, 1))
>model : Symbol(model, Decl(specializedInheritedConstructors1.ts, 13, 22))
>Model : Symbol(Model, Decl(specializedInheritedConstructors1.ts, 7, 1))

var aView2 = new View(m); 
>aView2 : Symbol(aView2, Decl(specializedInheritedConstructors1.ts, 14, 3))
>View : Symbol(View, Decl(specializedInheritedConstructors1.ts, 2, 1))
>m : Symbol(m, Decl(specializedInheritedConstructors1.ts, 12, 3))

var myView = new MyView(m); // was error
>myView : Symbol(myView, Decl(specializedInheritedConstructors1.ts, 15, 3))
>MyView : Symbol(MyView, Decl(specializedInheritedConstructors1.ts, 9, 15))
>m : Symbol(m, Decl(specializedInheritedConstructors1.ts, 12, 3))

