public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libstdc++/115907] New: Libstdc++ and GCC itself should avoid glibc above 2.34 dependency
@ 2024-07-13 11:55 unlvsur at live dot com
  2024-07-13 12:13 ` [Bug libstdc++/115907] " unlvsur at live dot com
                   ` (59 more replies)
  0 siblings, 60 replies; 61+ messages in thread
From: unlvsur at live dot com @ 2024-07-13 11:55 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115907

            Bug ID: 115907
           Summary: Libstdc++ and GCC itself should avoid glibc above 2.34
                    dependency
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libstdc++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: unlvsur at live dot com
  Target Milestone: ---

I think we really need to relax the version requirements of glibc since version
2.34. I cannot use the upstream glibc due to the potential new and versioned
symbols from glibc itself. Glibc2.38 is just too new tbh. Majority of linux
distributions do not support glibc 2.38. Ubuntu 22.04 which is i guess the most
of people are using is still using glibc 2.35

libstdc++ built with latest glibc would introduce import symbols like

arc4random@GLIBC_2.36
__isoc23_strtoull@GLIBC_2.38

I have checked arc4random implementation in glibc. It does not do anything
meaningful in terms of performance but just a wrapper of /dev/random.

glibc only introduces the symbol since 2.36. I don't see why libstdc++ needs
this and in fact it can break abi silently since passing arc4random as a device
now has different behaviors across libstdc++ versions

https://github.com/gcc-mirror/gcc/blob/abf3964711f05b6858d9775c3595ec2b45483e14/libstdc%2B%2B-v3/src/c%2B%2B11/random.cc#L189

This is another thing which is useless for gcc and libstdc++ since libstdc++ 
won't use 0b 0B in scanf/printf.
https://github.com/bminor/glibc/blob/4b2a1b602fc1ade0de85084feb328203be3147c9/include/features.h#L481

while glibc does not break the abi until 2.34. I suggest libstdc++ to use glibc
below 2.34 functions.

^ permalink raw reply	[flat|nested] 61+ messages in thread

end of thread, other threads:[~2024-07-22  9:56 UTC | newest]

Thread overview: 61+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-07-13 11:55 [Bug libstdc++/115907] New: Libstdc++ and GCC itself should avoid glibc above 2.34 dependency unlvsur at live dot com
2024-07-13 12:13 ` [Bug libstdc++/115907] " unlvsur at live dot com
2024-07-13 12:39 ` pinskia at gcc dot gnu.org
2024-07-13 12:41 ` pinskia at gcc dot gnu.org
2024-07-13 12:56 ` unlvsur at live dot com
2024-07-13 12:57 ` unlvsur at live dot com
2024-07-13 12:59 ` pinskia at gcc dot gnu.org
2024-07-13 13:04 ` unlvsur at live dot com
2024-07-13 13:04 ` unlvsur at live dot com
2024-07-13 13:05 ` unlvsur at live dot com
2024-07-13 13:05 ` unlvsur at live dot com
2024-07-13 13:06 ` unlvsur at live dot com
2024-07-13 13:08 ` unlvsur at live dot com
2024-07-13 13:10 ` unlvsur at live dot com
2024-07-13 13:11 ` pinskia at gcc dot gnu.org
2024-07-13 13:12 ` arsen at gcc dot gnu.org
2024-07-13 13:13 ` pinskia at gcc dot gnu.org
2024-07-13 13:13 ` unlvsur at live dot com
2024-07-13 13:14 ` unlvsur at live dot com
2024-07-13 13:15 ` pinskia at gcc dot gnu.org
2024-07-13 13:17 ` arsen at gcc dot gnu.org
2024-07-13 13:19 ` unlvsur at live dot com
2024-07-13 13:20 ` unlvsur at live dot com
2024-07-13 13:21 ` pinskia at gcc dot gnu.org
2024-07-13 13:23 ` unlvsur at live dot com
2024-07-13 13:31 ` pinskia at gcc dot gnu.org
2024-07-13 13:37 ` unlvsur at live dot com
2024-07-13 13:41 ` pinskia at gcc dot gnu.org
2024-07-13 13:43 ` arsen at gcc dot gnu.org
2024-07-13 14:01 ` unlvsur at live dot com
2024-07-13 14:06 ` unlvsur at live dot com
2024-07-13 14:10 ` unlvsur at live dot com
2024-07-13 14:12 ` unlvsur at live dot com
2024-07-13 14:23 ` unlvsur at live dot com
2024-07-13 14:47 ` arsen at gcc dot gnu.org
2024-07-13 15:51 ` unlvsur at live dot com
2024-07-13 15:55 ` unlvsur at live dot com
2024-07-13 19:30 ` pinskia at gcc dot gnu.org
2024-07-13 19:57 ` arsen at gcc dot gnu.org
2024-07-13 20:10 ` unlvsur at live dot com
2024-07-13 20:12 ` pinskia at gcc dot gnu.org
2024-07-19 18:55 ` frankhb1989 at gmail dot com
2024-07-19 19:02 ` pinskia at gcc dot gnu.org
2024-07-21 14:31 ` unlvsur at live dot com
2024-07-21 14:35 ` unlvsur at live dot com
2024-07-21 14:36 ` pinskia at gcc dot gnu.org
2024-07-21 14:38 ` unlvsur at live dot com
2024-07-21 14:57 ` pinskia at gcc dot gnu.org
2024-07-21 15:01 ` arsen at gcc dot gnu.org
2024-07-21 15:13 ` unlvsur at live dot com
2024-07-21 15:14 ` unlvsur at live dot com
2024-07-21 15:15 ` unlvsur at live dot com
2024-07-21 15:16 ` unlvsur at live dot com
2024-07-21 15:17 ` unlvsur at live dot com
2024-07-21 15:18 ` unlvsur at live dot com
2024-07-21 15:20 ` pinskia at gcc dot gnu.org
2024-07-21 15:21 ` unlvsur at live dot com
2024-07-21 15:53 ` arsen at gcc dot gnu.org
2024-07-22  9:41 ` redi at gcc dot gnu.org
2024-07-22  9:53 ` unlvsur at live dot com
2024-07-22  9:56 ` unlvsur at live dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).