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

            Bug ID: 121112
           Summary: Issue about alias function call under high level
                    optimization
           Product: gcc
           Version: 16.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: njuwy at smail dot nju.edu.cn
  Target Milestone: ---

gcc version:
gcc version 16.0.0 20250704 (experimental) (GCC) 

src:
#include <stdio.h>
static void bar_impl(void) { puts("bar_impl called."); }
static void *bar_ifunc(void) { return &bar_impl; }
extern void bar(void) __attribute__((ifunc("bar_ifunc")));
extern __typeof(bar) bar_alias __attribute__((alias("bar")));
int main() {
    bar();
    bar_alias();
    return 0;
}

godbolt URL:
https://godbolt.org/z/1Ydqn39jo

issue:
"bar_impl called." was output twice under -O0 -O1, while only once under -Os
-O2 and -O3. Is this a bug?

Reply via email to