Path: csiph.com!eternal-september.org!feeder.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Keith Thompson Newsgroups: comp.lang.c Subject: Re: usecases of void foo(char **b) {} Date: Wed, 02 Nov 2016 09:02:58 -0700 Organization: None to speak of Lines: 33 Message-ID: References: <5a9aae7f-eb86-4c7b-bc93-142504b1d0a9@googlegroups.com> <49899127-bf04-4a84-a374-5bebfbe7f4f7@googlegroups.com> <2bf83e98-eb96-4ab6-b1ca-4e6a8bd824f5@googlegroups.com> <5b33a608-8f61-4ea0-be08-080018f5772c@googlegroups.com> <87mvhjo3jw.fsf@bsb.me.uk> <877f8no0xv.fsf@bsb.me.uk> <4efe17d0-95cb-421c-9a19-410c1e5f1a34@googlegroups.com> <31964aba-3f33-44bb-be1c-6e849fe631fc@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Injection-Info: mx02.eternal-september.org; posting-host="55d562a779fc0ae2b1f2a983cf45db85"; logging-data="30201"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19zMOeoyTf47KSbnM5y6gp2" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) Cancel-Lock: sha1:oRBbBiFwenBIbTSeYHQIs66C0WA= sha1:adZEBX6uUltL6cb/hpr0IzZzjnc= Xref: csiph.com comp.lang.c:95596 jameskuyper@verizon.net writes: > On Tuesday, November 1, 2016 at 10:16:12 PM UTC-4, Jerry Stuckle wrote: [...] >> So ?: is not an operator. >> >> Right... Too bad the standard disagrees with you. > > Yes, but more importantly, it's bad that the standard disagrees with > itself. And of course you'll claim that this is just due to my > misreading the standard, without bothering to identify how you think > I've misread it. How does the standard disagree with itself? The definition of "operator" is in N1570 6.4.6p2 (italics indicated *like this*): A punctuator is a symbol that has independent syntactic and semantic significance. Depending on context, it may specify an operation to be performed (which in turn may yield a value or a function designator, produce a side effect, or some combination thereof) in which case it is known as an *operator* (other forms of operator also exist in some contexts). An *operand* is an entity on which an operator acts. The "other forms of operator" clause covers operators like ?:, [], and the cast operator that aren't single punctuators. -- Keith Thompson (The_Other_Keith) kst-u@mib.org Working, but not speaking, for JetHead Development, Inc. "We must do something. This is something. Therefore, we must do this." -- Antony Jay and Jonathan Lynn, "Yes Minister"