On Sat, May 20, 2023 at 12:28:41PM +0100, Wookey wrote:
> I was aware of it (the gentoo info is linked on the 64bit-time wiki
> page), but had not yet looked into how significant an issue this actually
> was, so had not documented it. (frankly, I was hoping we could avoid
> tying yet another transition into this one). Thanks for the reminder.

> So having re-read that, if I understand this correctly, we do need to
> be mindful that software which looks up functions or function
> parameters in unusual ways (e.g. cross-language Foreign Function
> Interfaces, or using implicit declarations) is likely to get the
> wrong-size definition (because glibc makes both versions available).

> So we should enable -Wimplicit-function-declaration on libraries being
> rebuilt because their ABIs changed.

I guess this needs to be -Werror=implicit-function-declaration, to ensure it
fails the build if used, regardless of whether -Werror is set elsewhere?

> We don't need to enable/fix it for everything though.  A rebuild check of
> affected libraries to see how much work this adds would be a good idea.

Isn't it a problem not just for library ABIs but also for any other packages
rebuild with -D_TIME_BITS=64, because the code will be consuming the 64-bit
prototype from the headers but using the 32-bit symbol at runtime?

(Which is a better answer in terms of automation, because then we can just
put it in dpkg-buildflags)

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                   https://www.debian.org/
slanga...@ubuntu.com                                     vor...@debian.org

Attachment: signature.asc
Description: PGP signature

Reply via email to