https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85217

Anonymous <iamanonymous.cs at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |---

--- Comment #5 from Anonymous <iamanonymous.cs at gmail dot com> ---
This bug still reproduces on current GCC trunk. Re-tested with gcc 17.0.0
  (experimental, 2026-11-01); also reproduced on gcc 13.1.0 and 11.4.0.

  Test case (small.c):

      int a=0;

      void main() {
        for (;; a++) {
          int c[1];
          if (a) {
            break;
            a;
            continue;
          }
          continue;
        }
      }

      $ gcc -w --coverage small.c && ./a.out && gcov small.c

  Current output:

              2:    3:void main() {
              2:    4:  for (;; a++) {
              -:    5:    int c[1];
              2:    6:    if (a) {
              1:    7:      break;
              -:    8:      a;
              1:    9:      continue;
              -:   10:    }
              1:   11:    continue;
              -:   12:  }
              1:   13:}

  Line 9 ("continue;" after "break; a;") is still marked as executed (count 1),
  but it is unreachable because the preceding "break;" exits the for loop; it
  should be reported as not executed. This is the same symptom as the original
  report. Could this be reopened and re-examined?
  • [Bug gcov-profile/85217] [GC... iamanonymous.cs at gmail dot com via Gcc-bugs

Reply via email to