This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: stack-protector guard location
Roland McGrath wrote:
>> Except that name is implemention namespace which is reserved.
>
> 1. All the world is not C.
Actually, it is, kind of (unless I've overlooked something). All the other
languages use some form of mangling that makes plain-C-compatible names, don't
they?
> 2. We well know that in practice "implementation namespace" belongs
> to all the libraries and so forth that want to use it and rely
> on their mutual maintenance cooperation to decide conflicts.
Yes, true, but unless we have reason to believe this name *already* exists
in the system libraries for one of the architectures we want to support, we're
ok aren't we? We already know that the C toolchain and the operating
environment have to be aware of each other and share this namespace, it's not
a new issue that we don't know how to handle.
> 3. It's still a lie, and that just ain't right. :-)
Where's the lie? In the implementation namespace, we are explicitly
permitted to do any kind of magic we want. A preprocessor macro define may
change the behaviour of (e.g.) the linker, if it's in the environment's
namespace and the ABI says so.
cheers,
DaveK