Reports while loops that could be more effectively written as do-while loops. There are while loops where the code just before the loop is identical to the code in the body of the loop. Replacing with a do-while loop removes the duplicated code. For while loops without such duplicated code, the quick fix is offered in the editor as well, but without highlighting.

Example:


  foo();
  while (x) {
      foo();
  }

Can be replaced with:


  do {
    foo();
  } while (x);

New in 2024.1