Deutsch English Français Italiano |
<20250410120954.337@kylheku.com> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail From: Kaz Kylheku <643-408-1753@kylheku.com> Newsgroups: comp.lang.c Subject: Re: do { quit; } else { } Date: Thu, 10 Apr 2025 19:14:20 -0000 (UTC) Organization: A noiseless patient Spider Lines: 24 Message-ID: <20250410120954.337@kylheku.com> References: <vspbjh$8dvd$1@dont-email.me> <vt2lp6$1qtjd$1@dont-email.me> <vt31m5$2513i$1@dont-email.me> <vt3d4g$2djqe$1@dont-email.me> <vt3iqh$2ka99$1@dont-email.me> <868qoaeezc.fsf@linuxsc.com> <vt3oeo$2oq3p$1@dont-email.me> <86mscqcpy1.fsf@linuxsc.com> <vt48go$35hh3$2@dont-email.me> <86iknecjz8.fsf@linuxsc.com> <vt4del$3a9sk$1@dont-email.me> <86o6x5at05.fsf@linuxsc.com> <vt712u$1m84p$1@dont-email.me> <20250409170901.947@kylheku.com> <vt88bk$2rv8r$1@dont-email.me> <20250410092409.825@kylheku.com> <v8UJP.52200$j2D.50588@fx09.iad> Injection-Date: Thu, 10 Apr 2025 21:14:20 +0200 (CEST) Injection-Info: dont-email.me; posting-host="e3007b402d1419a454483462709f55b6"; logging-data="3827006"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19jjprJTYfnDQVUNNrsNKFlF/b/pCHUNzY=" User-Agent: slrn/pre1.0.4-9 (Linux) Cancel-Lock: sha1:HJ5wY2H//v5vPnBEXPFuUtbPqKc= Bytes: 2544 On 2025-04-10, Scott Lurndal <scott@slp53.sl.home> wrote: > Kaz Kylheku <643-408-1753@kylheku.com> writes: >>On 2025-04-10, bart <bc@freeuk.com> wrote: > >>As far as different translation units go, there are rules. But most >>implementations of C operate on faith: implementations see only >>the type declarations in one translation unit being processed. >>It is trusted that cross-translation-unit uses of types are compatible. > > And when they're not compatible, it can take _days_ to find the > bug. I was once called in to debug a random SIGSEGV in a large > crypto application (generated X.509 site certificates for most of the > world at the time). Turned out that different components of the > the application were linked against different versions of the crypto > library (a proprietary predecessor to openssl). OpenSSL's libcrypto libcrypto doesn't do any symbol versioning, allowing old binary clients to link to the latest versions of its functions that require different structures. It's completely bonkers. -- TXR Programming Language: http://nongnu.org/txr Cygnal: Cygwin Native Application Library: http://kylheku.com/cygnal Mastodon: @Kazinator@mstdn.ca