Find something wrong in this description?  Help us fix it! 
275 Black inov 8 CoralPurple Parkclaw Grey xWEWnw 275 Black inov 8 CoralPurple Parkclaw Grey xWEWnw 275 Black inov 8 CoralPurple Parkclaw Grey xWEWnw 275 Black inov 8 CoralPurple Parkclaw Grey xWEWnw 275 Black inov 8 CoralPurple Parkclaw Grey xWEWnw 275 Black inov 8 CoralPurple Parkclaw Grey xWEWnw

Why does PolySpace 5.1.1 (R2008a) show a red non-terminating loop (NTL) check in my code?

275 Black inov 8 CoralPurple Parkclaw Grey xWEWnw

My C code looks as follows. When I run a PolySpace verification, the "for" keyword that is mentioned in the comments is marked red with a message that the loop never terminates. Also, I get another red check for a underflow error. I am using the option "-detect-unsigned-overflows".

int main () {
    int intC;
    unsigned int uintA, uintB, i = 0;
    uintA = 20;
    uintB = 30;
    intC = 10;
    // The following keyword "for" is marked with
    // a red NTL check.
    for(i; i < 10; i++) {
      // Subtraction marked with a red UNFL check
      // for a possible underflow.
      if ((uintA - uintB) < uintC) { // UNFL: 20 - 30
        //...
      }
    }
}

Tags

No tags entered yet.

Black 275 Parkclaw CoralPurple Grey inov 8
Cushion White BlackVintage Threads BlackVintage Cushion Reef Reef Threads 0q5Iw1n

1 Answer

  Accepted Answer

The red NTL check is caused by the red underflow check (UNFL) within the loop. Correcting the code that causes the UNFL check or removing the option "-detect-unsigned-overflows" will cause the NTL check to disappear.

  0 Comments

Sign in to comment.