File: typePredicateInLoop.errors.txt

package info (click to toggle)
node-typescript 3.3.3333-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 324,548 kB
  • sloc: makefile: 6; sh: 3
file content (27 lines) | stat: -rw-r--r-- 792 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
tests/cases/compiler/typePredicateInLoop.ts(17,11): error TS1345: An expression of type 'void' cannot be tested for truthiness


==== tests/cases/compiler/typePredicateInLoop.ts (1 errors) ====
    // Repro from #12101
    
    interface Type {
      type: number;
    }
    
    interface TypeExt extends Type {
      arr: Type[];
    }
    
    const guard = (arg: Type): arg is TypeExt => arg.type === 1;
    const otherFunc = (arg1: Type, arg2: TypeExt): void => {};
    
    export function y(arg: Type): void {
      if (guard(arg)) {
        for (const ITEM of arg.arr) {
          if (otherFunc(ITEM, arg)) {
              ~~~~~~~~~~~~~~~~~~~~
!!! error TS1345: An expression of type 'void' cannot be tested for truthiness
          }
        }
      }
    }