Deutsch   English   Français   Italiano  
<20250409124900.00000fa1@yahoo.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: Michael S <already5chosen@yahoo.com>
Newsgroups: comp.lang.c
Subject: Re: "A diagram of C23 basic types"
Date: Wed, 9 Apr 2025 12:49:00 +0300
Organization: A noiseless patient Spider
Lines: 51
Message-ID: <20250409124900.00000fa1@yahoo.com>
References: <87y0wjaysg.fsf@gmail.com>
	<vsj1m8$1f8h2$1@dont-email.me>
	<vsj2l9$1j0as$1@dont-email.me>
	<vsjef3$1u4nk$1@dont-email.me>
	<vsjg6t$20pdb$1@dont-email.me>
	<vsjgjn$1v1n4$1@dont-email.me>
	<vsjk4k$24q5m$1@dont-email.me>
	<vsjlcp$230a5$1@dont-email.me>
	<vsjmdl$277bk$1@dont-email.me>
	<VsdHP.1828827$TBhc.1078002@fx16.iad>
	<vskjlo$34st8$1@dont-email.me>
	<20250402220614.431@kylheku.com>
	<85mscxlqnb.fsf@nosuchdomain.example.com>
	<vsl9sn$3vdjj$2@dont-email.me>
	<20250403121946.134@kylheku.com>
	<vsms75$1i8ud$1@dont-email.me>
	<vsnhq6$291i3$4@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Injection-Date: Wed, 09 Apr 2025 11:48:59 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="644d447233835e2adaf6a2a915809f6d";
	logging-data="197353"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX18qi8zOk9lweBJn3be+hg3poli+mSFtp+o="
Cancel-Lock: sha1:Ujk++5Z+6a3GHUyxxsVjsweDdEs=
X-Newsreader: Claws Mail 3.19.1 (GTK+ 2.24.33; x86_64-w64-mingw32)
Bytes: 2716

On Fri, 4 Apr 2025 02:57:10 -0000 (UTC)
Lawrence D'Oliveiro <ldo@nz.invalid> wrote:

> On Thu, 3 Apr 2025 21:48:40 +0100, bart wrote:
> 
> > Commas are overwhelmingly used to separate list elements in
> > programming languages.  
> 
> Not just separate, but terminate. 

I disagree. I am in favor of optional trailing commas rather than
mandatory ones.

> All the reasonable languages allow 
> trailing commas.

Are your sure that C Standard does not allow trailing commas?
That is, they are obviously legal in initializer lists.
All compilers that I tried reject trailing comma in function calls.

For example

void bar(int);
void foo(void) {
  bar(1,);
}

MSVC:
comma.c(3): error C2059: syntax error: ')'

clang:
comma.c:3:9: error: expected expression
    3 |   bar(1,);
      |         ^

gcc:
comma.c: In function 'foo':
comma.c:3:9: error: expected expression before ')' token
    3 |   bar(1,);
      |         ^
comma.c:3:3: error: too many arguments to function 'bar'
    3 |   bar(1,);
      |   ^~~
comma.c:1:6: note: declared here
    1 | void bar(int);
      |      ^~~

But is it (rejection) really required by the Standard? I don't know.