| Deutsch English Français Italiano |
|
<86semhawhs.fsf@linuxsc.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: Tim Rentsch <tr.17687@z991.linuxsc.com> Newsgroups: comp.lang.c Subject: Re: "A diagram of C23 basic types" Date: Wed, 09 Apr 2025 13:52:15 -0700 Organization: A noiseless patient Spider Lines: 51 Message-ID: <86semhawhs.fsf@linuxsc.com> References: <87y0wjaysg.fsf@gmail.com> <vsj1m8$1f8h2$1@dont-email.me> <vsrqsh$qhuu$2@solani.org> <vt38i9$29prg$1@dont-email.me> <87h62ys4w5.fsf@nosuchdomain.example.com> <vt488v$35hh3$1@dont-email.me> <vt4n3d$3e8hi$1@dont-email.me> <86ecy2c5o4.fsf@linuxsc.com> <87mscprhhe.fsf@nosuchdomain.example.com> <20250409105549.000037dd@yahoo.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Injection-Date: Wed, 09 Apr 2025 22:52:19 +0200 (CEST) Injection-Info: dont-email.me; posting-host="b047b0586914e6e160c0016b929ac37f"; logging-data="1524232"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX199QB2Rnmd1EmcW9/WG5QaB+Grd1Hhn2ls=" User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.4 (gnu/linux) Cancel-Lock: sha1:lAI/rEsq8Kruf87DjqVGVW5MBzU= sha1:gvgFDY7o2qoRp4k8s8W7lMmse7E= Bytes: 3427 Michael S <already5chosen@yahoo.com> writes: > On Tue, 08 Apr 2025 23:12:13 -0700 > Keith Thompson <Keith.S.Thompson+u@gmail.com> wrote: > >> Tim Rentsch <tr.17687@z991.linuxsc.com> writes: >> >>> James Kuyper <jameskuyper@alumni.caltech.edu> writes: >>> >>>> bart <bc@freeuk.com> writes: >>>> >>>>> On 08/04/2025 22:46, Keith Thompson wrote: >>>>> >>>>>> bart <bc@freeuk.com> writes: >>>> >>>> ...>> Apparently the author of the chart chose to include types >>>> ...>> that are >>>> >>>>>> defined by the core language, not by the library. >>>>> >>>>> So here you're finally admitteding they are a different rank. >>>> >>>> The core language and the library are equal in rank, both being >>>> different parts of any implementation of C. >>> >>> This statement isn't exactly right. Some parts of the standard >>> library are available only in hosted implementations, and not in >>> freestanding implementations. >> >> True. Also, freestanding implementations must support <stddef.h> >> and <stdint.h>, among several other headers. > > May be in some formal sense headers and library routines that are > mandatory for freestanding implementations belong to the same rank as > core language. But in practice there exists an obvious difference. In > the first case, name clashes are avoidable (sometimes with toothless > threat that they can happen in the future) and in the second case they > are unavoidable. It's hard for me to make sense sense of this comment. The only library routines that are required in standard C are those documented as part of a section for one of the standard headers. For freestanding implementations in particular, there are only two names (va_copy and va_end) that might correspond to library functions, and if they do then the names are reserved for that purpose. Do you mean to suggest that user code defining either va_copy or va_end as a symbol with external linkage is unavoidable? Any user code that does so could be summarily rejected by the implementation. It's hard to imagine anyone writing user code wanting to define either of those names as a symbol with external linkage.