Code view:

A painting is a person's account of this edit as text, recorded independently of the node mapping - a rendering often has several equally defensible answers where the mapping has one. Deletions and insertions carry no position on the opposite side in a painting, so that panel draws no caret for them.

Before

…lines 1–23 unchanged (23 lines)
24declare var arg4: { cb: new (x: string) => string };
25var r6 = foo(arg4); // string
26declare var arg5: { cb: new () => string };
27var r7 = foo(arg5); // string
28
29
30//// [genericCallWithConstructorTypedArguments5.js]
31// Generic call with parameter of object type with member of function type of n args passed object whose associated member is call signature with n+1 args
32function foo(arg) {
33 return new arg.cb(null);
34}
35var r = foo(arg); // {}
36var r2 = foo(arg2); // error
…lines 37–45 unchanged (9 lines)

After

…lines 1–24 unchanged (24 lines)
25var r6 = foo(arg4); // string
26declare var arg5: { cb: new () => string };
27var r7 = foo(arg5); // string
28
29
30//// [genericCallWithConstructorTypedArguments5.js]
31"use strict";
32// Generic call with parameter of object type with member of function type of n args passed object whose associated member is call signature with n+1 args
33function foo(arg) {
34 return new arg.cb(null);
35}
36var r = foo(arg); // {}
37var r2 = foo(arg2); // error
…lines 38–46 unchanged (9 lines)

Before

program
comment "//// [tests/cases/conformance/types/typeRelationships/typeIn"...
comment "//// [genericCallWithConstructorTypedArguments5.ts]"
comment "// Generic call with parameter of object type with member of"...
ERROR
function "function"
identifier "foo"
ERROR
< "<"
identifier "T"
, ","
identifier "U"
> ">"
( "("
ERROR (+102 nodes collapsed)
identifier "r2"
= "="
ERROR
call_expression
identifier "foo"
arguments
( "("
identifier "arg2"
) ")"
; ";"
comment "// error"
call_expression (+124 nodes collapsed)
ERROR
= "="
> ">"
identifier "string"
ERROR
} "}"
; ";"
var "var"
identifier "r6"
= "="
ERROR
call_expression
identifier "foo"
arguments
( "("
identifier "arg4"
) ")"
; ";"
comment "// string"
ERROR (+30 nodes collapsed)
comment "// string"
comment "//// [genericCallWithConstructorTypedArguments5.js]"
comment "// Generic call with parameter of object type with member of"...
ERROR (+59 nodes collapsed)
comment "// error"
ERROR (+52 nodes collapsed)
assignment_expression
identifier "r7"
= "="
call_expression
identifier "foo"
arguments
( "("
identifier "arg5"
) ")"
empty_statement
; ";"
comment "// string"

After

program
comment "//// [tests/cases/conformance/types/typeRelationships/typeIn"...
comment "//// [genericCallWithConstructorTypedArguments5.ts]"
comment "// Generic call with parameter of object type with member of"...
ERROR
function "function"
identifier "foo"
ERROR
< "<"
identifier "T"
, ","
identifier "U"
> ">"
( "("
ERROR (+102 nodes collapsed)
identifier "r2"
= "="
ERROR
call_expression
identifier "foo"
arguments
( "("
identifier "arg2"
) ")"
; ";"
comment "// error"
call_expression (+124 nodes collapsed)
ERROR
= "="
> ">"
identifier "string"
ERROR
} "}"
; ";"
var "var"
identifier "r6"
= "="
ERROR
call_expression
identifier "foo"
arguments
( "("
identifier "arg4"
) ")"
; ";"
comment "// string"
ERROR (+30 nodes collapsed)
comment "// string"
comment "//// [genericCallWithConstructorTypedArguments5.js]"
ERROR
string
" "\""
string_fragment "use strict"
" "\""
; ";"
comment "// Generic call with parameter of object type with member of"...
ERROR (+59 nodes collapsed)
comment "// error"
ERROR (+52 nodes collapsed)
assignment_expression
identifier "r7"
= "="
call_expression
identifier "foo"
arguments
( "("
identifier "arg5"
) ")"
empty_statement
; ";"
comment "// string"