Identity of union type
This commit is contained in:
parent
16fc7a22e2
commit
1ca9273f49
20
tests/baselines/reference/unionTypeIdentity.errors.txt
Normal file
20
tests/baselines/reference/unionTypeIdentity.errors.txt
Normal file
|
@ -0,0 +1,20 @@
|
|||
tests/cases/conformance/types/typeRelationships/typeAndMemberIdentity/unionTypeIdentity.ts(6,5): error TS2403: Subsequent variable declarations must have the same type. Variable 'strOrNum' must be of type 'string | boolean', but here has type 'string'.
|
||||
tests/cases/conformance/types/typeRelationships/typeAndMemberIdentity/unionTypeIdentity.ts(7,5): error TS2403: Subsequent variable declarations must have the same type. Variable 'strOrNum' must be of type 'string | boolean', but here has type 'boolean'.
|
||||
tests/cases/conformance/types/typeRelationships/typeAndMemberIdentity/unionTypeIdentity.ts(8,5): error TS2403: Subsequent variable declarations must have the same type. Variable 'strOrNum' must be of type 'string | boolean', but here has type 'number'.
|
||||
|
||||
|
||||
==== tests/cases/conformance/types/typeRelationships/typeAndMemberIdentity/unionTypeIdentity.ts (3 errors) ====
|
||||
// Two types are considered identical when
|
||||
// they are union types with identical sets of constituent types, or
|
||||
var strOrNum: string | boolean;
|
||||
var strOrNum: boolean | string;
|
||||
var strOrNum: boolean | string | boolean;
|
||||
var strOrNum: string; // error
|
||||
~~~~~~~~
|
||||
!!! error TS2403: Subsequent variable declarations must have the same type. Variable 'strOrNum' must be of type 'string | boolean', but here has type 'string'.
|
||||
var strOrNum: boolean; // error
|
||||
~~~~~~~~
|
||||
!!! error TS2403: Subsequent variable declarations must have the same type. Variable 'strOrNum' must be of type 'string | boolean', but here has type 'boolean'.
|
||||
var strOrNum: number; // error
|
||||
~~~~~~~~
|
||||
!!! error TS2403: Subsequent variable declarations must have the same type. Variable 'strOrNum' must be of type 'string | boolean', but here has type 'number'.
|
19
tests/baselines/reference/unionTypeIdentity.js
Normal file
19
tests/baselines/reference/unionTypeIdentity.js
Normal file
|
@ -0,0 +1,19 @@
|
|||
//// [unionTypeIdentity.ts]
|
||||
// Two types are considered identical when
|
||||
// they are union types with identical sets of constituent types, or
|
||||
var strOrNum: string | boolean;
|
||||
var strOrNum: boolean | string;
|
||||
var strOrNum: boolean | string | boolean;
|
||||
var strOrNum: string; // error
|
||||
var strOrNum: boolean; // error
|
||||
var strOrNum: number; // error
|
||||
|
||||
//// [unionTypeIdentity.js]
|
||||
// Two types are considered identical when
|
||||
// they are union types with identical sets of constituent types, or
|
||||
var strOrNum;
|
||||
var strOrNum;
|
||||
var strOrNum;
|
||||
var strOrNum; // error
|
||||
var strOrNum; // error
|
||||
var strOrNum; // error
|
|
@ -0,0 +1,8 @@
|
|||
// Two types are considered identical when
|
||||
// they are union types with identical sets of constituent types, or
|
||||
var strOrNum: string | boolean;
|
||||
var strOrNum: boolean | string;
|
||||
var strOrNum: boolean | string | boolean;
|
||||
var strOrNum: string; // error
|
||||
var strOrNum: boolean; // error
|
||||
var strOrNum: number; // error
|
Loading…
Reference in a new issue