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

            Bug ID: 118148
           Summary: Miscompilation at -Os
           Product: gcc
           Version: 15.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: yunboni at smail dot nju.edu.cn
  Target Milestone: ---

This code prints 256 at -Os and 0 at -O0/1/2/3:

```c
int printf(const char *, ...);
short a;
int b;
short *c = &a;
static int(d)(int e, unsigned f) { return e < 0 || f ? e : 0; }
static char g(long e, unsigned char f) {
  f++;
  b = d(f, e);
  *c = b;
  return 0;
}
int main() {
  g(4073709551609, 255);
  printf("%d\n", a);
}

```

Bisected to:
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=96fb71883d438bdb241fdf9c7d12f945c5ba0c7f

Compiler Explorer: https://godbolt.org/z/3d8bWv9Kc

Reply via email to