Path: ...!weretis.net!feeder9.news.weretis.net!news.quux.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail From: Tim Rentsch Newsgroups: comp.lang.c Subject: Re: do { quit; } else { } Date: Tue, 08 Apr 2025 10:47:33 -0700 Organization: A noiseless patient Spider Lines: 34 Message-ID: <864iyyeea2.fsf@linuxsc.com> References: <8634enhcui.fsf@linuxsc.com> <86ldsdfocs.fsf@linuxsc.com> <20250406161323.00005809@yahoo.com> <86ecy5fjin.fsf@linuxsc.com> <20250406190321.000001dc@yahoo.com> <86plhodtsw.fsf@linuxsc.com> <20250407210248.00006457@yahoo.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Injection-Date: Tue, 08 Apr 2025 19:47:34 +0200 (CEST) Injection-Info: dont-email.me; posting-host="3be70bfd357a158f55184c1ca57022b7"; logging-data="2859686"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18DwFDWqLD9iXPXfsyGf4BRGcLF60MfPGA=" User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.4 (gnu/linux) Cancel-Lock: sha1:wT8Naz3gp8mO2VbcGTL8ShLn/NQ= sha1:XyMcqJ3hi1jJL1SljnM5EhuC0MM= Bytes: 2550 bart writes: > On 08/04/2025 09:12, David Brown wrote: > >> On 07/04/2025 20:31, bart wrote: >> >>> On 07/04/2025 19:02, Michael S wrote: >>> >>>> On Mon, 07 Apr 2025 05:45:19 -0700 >>>> [discussing Pascal] >>>> - nested procedures >>>> - everything related to separated compilation of the translation >>>> units is handwaved in the docs rather than strictly specified. >>> >>> I don't think it's that strictly specified in C. Isn't it vaguely >>> left to the implementation? >> >> No. > > C simply has the requirement for separate compilation of > modules. Where does it specify how the implementation does that? In C the term is translation units, not modules. The C standard requires implementations be able to combine separately compiled translation units into a single unified program image that contains all the information needed for program execution. The standard doesn't say how this step is to be done, only that implementations must be able to do it. Also, the standard doesn't say how to cause a produced program image to be executed; rather, there is an explicit statement that says how to do that is outside the scope of the standard.