Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #168637

Re: Christmas Quiz 2022

From Tim Rentsch <tr.17687@z991.linuxsc.com>
Newsgroups comp.lang.c
Subject Re: Christmas Quiz 2022
Date 2022-12-26 06:24 -0800
Organization A noiseless patient Spider
Message-ID <86pmc6w8e7.fsf@linuxsc.com> (permalink)
References (2 earlier) <87tu1quou7.fsf@bsb.me.uk> <tnshp9$mh7i$1@dont-email.me> <87ili6unpn.fsf@bsb.me.uk> <tnsis8$mh7i$2@dont-email.me> <tnsl3s$mh7i$3@dont-email.me>

Show all headers | View raw


Lew Pitcher <lew.pitcher@digitalfreehold.ca> writes:

> On Tue, 20 Dec 2022 15:03:36 +0000, Lew Pitcher wrote:
>
>> On Tue, 20 Dec 2022 14:57:56 +0000, Ben Bacarisse wrote:
>
> [snip]
>
>>>> The notable point is that the semicolon between clause-1 and
>>>> expression-2 is /not/ part of clause-1, but is, instead part of
>>>> the for statement itself.
>>>
>>> But that does not help if the grammar for a declaration still
>>> includes a semicolon.  I wonder what all the relevant parts of the
>>> draft you are referring to look like when taken together.
>>>
>>>> Because of this, I don't believe that your count can be correct.
>>>> But, I'm willing to be educated on this :-)
>>>
>>> Well, I did add (but then deleted) that the count depends on how
>>> the grammar is structured.  I should look at a more recent draft
>>> that will have taken the confirmed C11 text as a starting point.
>>> I might do that later, but I am in a rush!
>>
>> Perhaps I've got an outdated copy of the draft standard, and the
>> semicolon question was asked and answered in a later release.
>>
>> Your explanation sounds valid to me.  'Tis a puzzle to be resolved
>> later.
>
> Oops... I found it.
>
> Under 6.8.5 Iteration statements
> Syntax
>   ...
>   for ( expression ; expression ; expression ) statement
>   for ( declaration expression ; expression ) statement
>
> (all expressions are marked optional)
>
> Crisis averted.  You are indeed correct, and I've learned something
> new today.  :-)
>
> But, that doesn't explain why 6.8.5.3 ("the for statement") shows
> the syntax it does.  Perhaps the draft missed something in resolving
> the text between 6.8.5 and 6.8.5.3.

This line

    for ( clause-1 ; expression-2 ; expression-3 ) statement

in 6.8.5.3 p1 is not syntax.  It may /look/ like syntax, but it
isn't;  it is simply a template to assist the discussion later in
the same paragraph and subsequent paragraph (and also in various
footnotes).  How do we know it isn't syntax?  For starters, it
isn't labeled 'Syntax', as are all other syntax excerpts in the C
standard.  (Disclaimer:  I'm pretty sure this is true but I
didn't check every one.)  Also, none of clause-1, expression-2,
and expression-3 are defined non-terminals.  They are there to
serve as reference points for the subsequent discussion, not to
to be part of the C syntax.

So it seems clear that this non-syntax line is present as a
deliberate choice, put there to aid the discussion of semantics
but not as part of the C syntax.

Back to comp.lang.c | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Christmas Quiz 2022 Roman P <invalid@example.com> - 2022-12-18 20:00 +0000
  Re: Christmas Quiz 2022 Tony Oliver <guinness.tony@gmail.com> - 2022-12-18 13:18 -0800
    Re: Christmas Quiz 2022 Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2022-12-18 16:48 -0800
    Re: Christmas Quiz 2022 Tim Rentsch <tr.17687@z991.linuxsc.com> - 2022-12-18 17:18 -0800
      Re: Christmas Quiz 2022 "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2022-12-19 19:39 -0800
    Re: Christmas Quiz 2022 Niles Rogoff <eternal-september@niles.xyz> - 2022-12-27 01:22 -0800
      Re: Christmas Quiz 2022 Öö Tiib <ootiib@hot.ee> - 2022-12-27 01:58 -0800
        Re: Christmas Quiz 2022 Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2022-12-27 10:25 -0800
      Re: Christmas Quiz 2022 James Kuyper <jameskuyper@alumni.caltech.edu> - 2022-12-27 05:07 -0500
        Re: Christmas Quiz 2022 scott@slp53.sl.home (Scott Lurndal) - 2022-12-27 16:06 +0000
          Re: Christmas Quiz 2022 scott@slp53.sl.home (Scott Lurndal) - 2022-12-27 17:42 +0000
          Re: Christmas Quiz 2022 Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2022-12-27 13:53 -0800
    Re: Christmas Quiz 2022 Niles Rogoff <eternal-september@niles.xyz> - 2022-12-27 01:24 -0800
      Re: Christmas Quiz 2022 scott@slp53.sl.home (Scott Lurndal) - 2022-12-27 16:07 +0000
  Re: Christmas Quiz 2022 Ben Bacarisse <ben.usenet@bsb.me.uk> - 2022-12-18 21:22 +0000
    Re: Christmas Quiz 2022 Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2022-12-18 21:40 +0000
    Re: Christmas Quiz 2022 Tim Rentsch <tr.17687@z991.linuxsc.com> - 2022-12-18 17:02 -0800
    Re: Christmas Quiz 2022 Tim Rentsch <tr.17687@z991.linuxsc.com> - 2022-12-18 17:20 -0800
  Re: Christmas Quiz 2022 red floyd <no.spam.here@its.invalid> - 2022-12-18 13:36 -0800
  Re: Christmas Quiz 2022 "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2022-12-18 13:48 -0800
    Re: Christmas Quiz 2022 Siri Cruise <chine.bleu@yahoo.com> - 2022-12-18 14:57 -0800
      Re: Christmas Quiz 2022 "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2022-12-18 15:43 -0800
        Re: Christmas Quiz 2022 Lynn McGuire <lynnmcguire5@gmail.com> - 2022-12-19 23:40 -0600
      Re: Christmas Quiz 2022 "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2022-12-20 14:01 -0800
  Re: Christmas Quiz 2022 Kaz Kylheku <864-117-4973@kylheku.com> - 2022-12-20 13:49 +0000
    Re: Christmas Quiz 2022 Ben Bacarisse <ben.usenet@bsb.me.uk> - 2022-12-20 14:33 +0000
      Re: Christmas Quiz 2022 Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2022-12-20 14:44 +0000
        Re: Christmas Quiz 2022 Ben Bacarisse <ben.usenet@bsb.me.uk> - 2022-12-20 14:57 +0000
          Re: Christmas Quiz 2022 Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2022-12-20 15:03 +0000
            Re: Christmas Quiz 2022 David Brown <david.brown@hesbynett.no> - 2022-12-20 16:32 +0100
            Re: Christmas Quiz 2022 Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2022-12-20 15:41 +0000
              Re: Christmas Quiz 2022 Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2022-12-20 10:22 -0800
                Re: for() syntax (Was: Christmas Quiz 2022) Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2022-12-20 18:54 +0000
                Re: for() syntax Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2022-12-20 12:08 -0800
                Re: for() syntax (Was: Christmas Quiz 2022) Tim Rentsch <tr.17687@z991.linuxsc.com> - 2022-12-26 06:48 -0800
                Re: Christmas Quiz 2022 Tim Rentsch <tr.17687@z991.linuxsc.com> - 2022-12-26 06:25 -0800
              Re: Christmas Quiz 2022 Tim Rentsch <tr.17687@z991.linuxsc.com> - 2022-12-26 06:24 -0800
                Re: Christmas Quiz 2022 Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2022-12-26 13:05 -0800
  Re: Christmas Quiz 2022 Andrey Tarasevich <andreytarasevich@hotmail.com> - 2022-12-20 12:46 -0800
    Re: Christmas Quiz 2022 Paavo Helde <eesnimi@osa.pri.ee> - 2022-12-20 23:49 +0200
      Re: Christmas Quiz 2022 Andrey Tarasevich <andreytarasevich@hotmail.com> - 2022-12-20 14:00 -0800
        Re: Christmas Quiz 2022 Paavo Helde <eesnimi@osa.pri.ee> - 2022-12-21 00:13 +0200
          Re: Christmas Quiz 2022 Andrey Tarasevich <andreytarasevich@hotmail.com> - 2022-12-20 14:38 -0800
    Re: Christmas Quiz 2022 Andrey Tarasevich <andreytarasevich@hotmail.com> - 2022-12-20 21:31 -0800
      Re: Christmas Quiz 2022 David Brown <david.brown@hesbynett.no> - 2022-12-21 12:02 +0100

csiph-web