Path: ...!eternal-september.org!feeder2.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Keith Thompson Newsgroups: comp.lang.c Subject: Re: else ladders practice Date: Sun, 24 Nov 2024 19:17:11 -0800 Organization: None to speak of Lines: 56 Message-ID: <87o724m288.fsf@nosuchdomain.example.com> References: <3deb64c5b0ee344acd9fbaea1002baf7302c1e8f@i2pn2.org> <87wmgsmme0.fsf@nosuchdomain.example.com> <87sergmhkc.fsf@nosuchdomain.example.com> MIME-Version: 1.0 Content-Type: text/plain Injection-Date: Mon, 25 Nov 2024 04:17:29 +0100 (CET) Injection-Info: dont-email.me; posting-host="b40b20f4d5912db9f2a914577ca2f33c"; logging-data="2752829"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/ej91YhOGKOMTinPgjup/B" User-Agent: Gnus/5.13 (Gnus v5.13) Cancel-Lock: sha1:BaaCRBgw1xrnjj0OCMsumDUKIJQ= sha1:tW25SYc8ZCSxvvIn2YfrmoC8Ig8= Bytes: 3921 Bart writes: > On 24/11/2024 21:45, Keith Thompson wrote: >> Bart writes: [...] >>> A more useful installation would of course need more standard headers, >>> an assembler, linker, and whatever .a files are needed to provide the >>> standard library. >> Sure, those are all part of a C implementation, though they're not >> part of gcc. > > This seems to be a thing with Linux, where a big chunk of a C > implementation is provided by the OS. I'm not sure what you mean by "provided by the OS". Linux-based systems tend to be very modular, with almost everything provided by some installable binary package. Some of those packages have to be provided by default, for example any dynamic libraries relied on by most executables. Files that are needed for development, such as header files, compilers, and associated tools such as assemblers and linkers, may be optional. > That is, standard headers, libraries, possibly even 'as' and 'ld' > utilities. On my system (Ubuntu), the as and ld commands are provided by the binutils package ("binutils-x86-64-linux-gnu"). Some distributions may install these by default. Others do not, but they're easy to install. > On Windows, C compilers tend to be self-contained (except > for Clang which appears to be parasitical: it used to piggy-back onto > gcc, then it switched to MSVC). I don't know what you mean by "piggy-back onto gcc". > I'm not sure what the utility to compile C programs is called, if it > is not 'gcc'. But this is a C group, I would expect people to know it > is a C compiler, or the front end of one. > > However I use 'gcc' in other forums and everyone knows what I mean. > > What do /you/ call the C compiler that is invoked by gcc? I call it gcc. "gcc" is the name for several things. It's the "GNU Compiler Collection". It's the command invoked as the driver for any of several compilers that are part of the GNU Compiler Collection. It can refer specifically to the C compiler. It's mildly confusing for historical reasons, but most people don't have much of a problem with it, and don't pretend that it's more confusing than it really is. -- Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com void Void(void) { Void(); } /* The recursive call of the void */