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?