On 1/31/26 8:00 AM, H.J. Lu wrote:
On Fri, Jan 30, 2026 at 1:54 PM Jason Merrill <[email protected]> wrote:
On 1/29/26 8:43 AM, H.J. Lu wrote:
Changes in v7:
1. Remove stack_protect_guard_decl and pushing_stack_protect_guard_decl.
2. Declare the internal stack protection guard with
lang_hooks.types.type_for_mode (ptr_mode, 1))
so that it can be initialized as an integer.
3. Add c-c++-common/pr90108-2.c to verify that c_stack_protect_guard_decl_p
works properly for LP64 targets.
This still has the special case code to allow redeclaration with a
different type, and I still don't see why that's a thing we want to allow.
I think we can drop the
duplicate_stack_protect_guard_decl_p/keep_oldtype code.
Then ssp-global-2.C will fail, but I think that's fine, people can write
unsigned (or size_t, or uintptr_t).
The internal symbol is uintptr_t. Is "const uintptr_t" allowed?
I think the types should match. Your patch would allow the const
declaration but then silently discard the const; we might as well not
allow the const in the first place.
Jason