tests/cases/conformance/types/spread/spreadUnion2.ts(5,5): error TS2403: Subsequent variable declarations must have the same type.  Variable 'o1' must be of type '{} | { a: number; }', but here has type '{}'.
tests/cases/conformance/types/spread/spreadUnion2.ts(8,5): error TS2403: Subsequent variable declarations must have the same type.  Variable 'o2' must be of type '{} | { b: number; }', but here has type '{}'.
tests/cases/conformance/types/spread/spreadUnion2.ts(11,5): error TS2403: Subsequent variable declarations must have the same type.  Variable 'o3' must be of type '{} | { a: number; } | { b: number; } | { a: number; b: number; }', but here has type '{}'.
tests/cases/conformance/types/spread/spreadUnion2.ts(12,5): error TS2403: Subsequent variable declarations must have the same type.  Variable 'o3' must be of type '{} | { a: number; } | { b: number; } | { a: number; b: number; }', but here has type '{}'.
tests/cases/conformance/types/spread/spreadUnion2.ts(15,5): error TS2403: Subsequent variable declarations must have the same type.  Variable 'o4' must be of type '{} | { a: number; }', but here has type '{}'.
tests/cases/conformance/types/spread/spreadUnion2.ts(18,5): error TS2403: Subsequent variable declarations must have the same type.  Variable 'o5' must be of type '{} | { b: number; }', but here has type '{}'.


==== tests/cases/conformance/types/spread/spreadUnion2.ts (6 errors) ====
    declare const undefinedUnion: { a: number } | undefined;
    declare const nullUnion: { b: number } | null;
    
    var o1: {} | { a: number };
    var o1 = { ...undefinedUnion };
        ~~
!!! error TS2403: Subsequent variable declarations must have the same type.  Variable 'o1' must be of type '{} | { a: number; }', but here has type '{}'.
    
    var o2: {} | { b: number };
    var o2 = { ...nullUnion };
        ~~
!!! error TS2403: Subsequent variable declarations must have the same type.  Variable 'o2' must be of type '{} | { b: number; }', but here has type '{}'.
    
    var o3: {} | { a: number } | { b: number } | { a: number, b: number };
    var o3 = { ...undefinedUnion, ...nullUnion };
        ~~
!!! error TS2403: Subsequent variable declarations must have the same type.  Variable 'o3' must be of type '{} | { a: number; } | { b: number; } | { a: number; b: number; }', but here has type '{}'.
    var o3 = { ...nullUnion, ...undefinedUnion };
        ~~
!!! error TS2403: Subsequent variable declarations must have the same type.  Variable 'o3' must be of type '{} | { a: number; } | { b: number; } | { a: number; b: number; }', but here has type '{}'.
    
    var o4: {} | { a: number };
    var o4 = { ...undefinedUnion, ...undefinedUnion };
        ~~
!!! error TS2403: Subsequent variable declarations must have the same type.  Variable 'o4' must be of type '{} | { a: number; }', but here has type '{}'.
    
    var o5: {} | { b: number };
    var o5 = { ...nullUnion, ...nullUnion };
        ~~
!!! error TS2403: Subsequent variable declarations must have the same type.  Variable 'o5' must be of type '{} | { b: number; }', but here has type '{}'.
    
    