[Bug c/121081] [16 Regression] ICE on x86_64-linux-gnu: in composite_type, at c/c-typeck.cc:1011 with visibility attribute on atomic
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121081 uecker at gcc dot gnu.org changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #8 from uecker at gcc dot gnu.org --- Fixed (#7)
[Bug c/121081] [16 Regression] ICE on x86_64-linux-gnu: in composite_type, at c/c-typeck.cc:1011 with visibility attribute on atomic
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121081 --- Comment #7 from GCC Commits --- The master branch has been updated by Martin Uecker : https://gcc.gnu.org/g:41177976c5e4448365f1966f6594458232db05fc commit r16-6472-g41177976c5e4448365f1966f6594458232db05fc Author: Martin Uecker Date: Thu Dec 25 18:27:33 2025 +0100 c: Fix construction of composite type for atomic pointers [PR121081] When constructing the composite type of two atomic pointer types, we used "qualify_type" which did not copy the "atomic" qualifier. Use c_build_type_attribute_qual_variant instead. PR c/121081 gcc/c/ChangeLog: * c-typeck.cc (composite_type_internal): Properly copy atomic qualifier. gcc/testsuite/ChangeLog: * gcc.dg/pr121081.c: New test.
[Bug c/121081] [16 Regression] ICE on x86_64-linux-gnu: in composite_type, at c/c-typeck.cc:1011 with visibility attribute on atomic
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121081 --- Comment #6 from uecker at gcc dot gnu.org --- PATCH: https://gcc.gnu.org/pipermail/gcc-patches/2025-December/704536.html
[Bug c/121081] [16 Regression] ICE on x86_64-linux-gnu: in composite_type, at c/c-typeck.cc:1011 with visibility attribute on atomic
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121081 --- Comment #5 from uecker at gcc dot gnu.org --- Created attachment 63154 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=63154&action=edit patch Patch
[Bug c/121081] [16 Regression] ICE on x86_64-linux-gnu: in composite_type, at c/c-typeck.cc:1011 with visibility attribute on atomic
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121081
Richard Biener changed:
What|Removed |Added
Priority|P3 |P2
--- Comment #4 from Richard Biener ---
(In reply to uecker from comment #3)
>
> int * _Atomic __attribute__((visibility(""))) a;
> int * _Atomic a;
Also fails with a proper visibility attribute like
int * _Atomic __attribute__((visibility("hidden"))) a;
int * _Atomic a;
P2, will go "away" with release checking. Does it create wrong-code?
[Bug c/121081] [16 Regression] ICE on x86_64-linux-gnu: in composite_type, at c/c-typeck.cc:1011 with visibility attribute on atomic
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121081
--- Comment #3 from uecker at gcc dot gnu.org ---
int * _Atomic __attribute__((visibility(""))) a;
int * _Atomic a;
[Bug c/121081] [16 Regression] ICE on x86_64-linux-gnu: in composite_type, at c/c-typeck.cc:1011 with visibility attribute on atomic
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121081 uecker at gcc dot gnu.org changed: What|Removed |Added Keywords||ice-checking --- Comment #2 from uecker at gcc dot gnu.org --- I suspect b25ec038dcaf7e48103911f695756a55478cd54f which adds the checking assertion.
[Bug c/121081] [16 Regression] ICE on x86_64-linux-gnu: in composite_type, at c/c-typeck.cc:1011 with visibility attribute on atomic
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121081 Andrew Pinski changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever confirmed|0 |1 Target Milestone|--- |16.0 Last reconfirmed||2025-07-16 Keywords||ice-on-valid-code, ||needs-bisection Summary|ICE on x86_64-linux-gnu: in |[16 Regression] ICE on |composite_type, at |x86_64-linux-gnu: in |c/c-typeck.cc:1011 with |composite_type, at |visibility attribute on |c/c-typeck.cc:1011 with |atomic |visibility attribute on ||atomic --- Comment #1 from Andrew Pinski --- Confirmed. A regression from 15.
