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


Groups > comp.lang.c > #103577

Re: C Names and Scopes

From BartC <bc@freeuk.com>
Newsgroups comp.lang.c
Subject Re: C Names and Scopes
Date 2017-02-09 23:09 +0000
Organization A noiseless patient Spider
Message-ID <o7isn9$51m$1@dont-email.me> (permalink)
References <o7duoo$vmp$1@dont-email.me> <o7iddv$55j$1@dont-email.me> <87vasj5efl.fsf@bsb.me.uk>

Show all headers | View raw


On 09/02/2017 19:53, Ben Bacarisse wrote:
> BartC <bc@freeuk.com> writes:

>>   int;
>
> <snip>
>> ... Does the
>> standard actually allow this?
>
> No.

Error, then.

> Secondly, a C compiler has to be able to parse declaration-like forms
> in function prototypes where the name is optional:
>
>   void f(int, const char *, void (*)(int *));
>
> So, since it's likely that the parser can already understand "int;" it
> might as well do so in order to give you that better diagnostic.

A weak argument. As I understand it, a construct that includes a type 
either expects a name (eg ordinary declaration), or doesn't expect one 
(eg a cast), or can be with or without a name (eg function param).

The first two should be straight errors if a name is missing or whatever.

The third just makes it tricky, for people reading the code too not just 
language processors:

  int fn (int (((T))));

This is a function with an int parameter called T. But if a declaration 
like this is visible:

  typedef double T;

then that parameter becomes some sort of function or pointer to 
function, and doesn't have a name. But you don't know that until you're 
N levels deep in parentheses.

(Of course, this isn't poor design because I'm not looking at the wider 
picture!)

-- 
Bartc

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


Thread

C Names and Scopes BartC <bc@freeuk.com> - 2017-02-08 02:13 +0000
  Re: C Names and Scopes David Brown <david.brown@hesbynett.no> - 2017-02-08 10:09 +0100
    Re: C Names and Scopes mark.bluemel@gmail.com - 2017-02-08 02:37 -0800
      Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-08 11:07 +0000
        Re: C Names and Scopes fir <profesor.fir@gmail.com> - 2017-02-08 09:03 -0800
          Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-08 17:19 +0000
            Re: C Names and Scopes fir <profesor.fir@gmail.com> - 2017-02-08 09:42 -0800
      Re: C Names and Scopes David Brown <david.brown@hesbynett.no> - 2017-02-08 12:08 +0100
    Re: C Names and Scopes Moai <penultimategrill@gmail.com> - 2017-02-08 19:16 -0500
      Re: C Names and Scopes David Brown <david.brown@hesbynett.no> - 2017-02-09 01:32 +0100
      Re: C Names and Scopes Tim Rentsch <txr@alumni.caltech.edu> - 2017-02-09 08:18 -0800
      Re: C Names and Scopes Jerry Stuckle <jstucklex@attglobal.net> - 2017-02-09 12:06 -0500
  Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-08 10:51 +0000
  Re: C Names and Scopes Thiago Adams <thiago.adams@gmail.com> - 2017-02-08 03:11 -0800
    Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-08 11:39 +0000
      Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-08 12:06 +0000
        Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-08 13:31 +0000
        Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-08 13:40 +0000
          Re: C Names and Scopes Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-02-08 16:39 +0000
            Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-08 17:51 +0000
              Re: C Names and Scopes Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-02-08 20:56 +0000
                Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-08 22:08 +0000
                Re: C Names and Scopes Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-02-08 23:27 +0000
      Re: C Names and Scopes David Brown <david.brown@hesbynett.no> - 2017-02-08 13:41 +0100
      Re: C Names and Scopes Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-02-08 14:32 +0000
        Re: C Names and Scopes supercat@casperkitty.com - 2017-02-08 07:28 -0800
          Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-08 20:12 +0000
            Re: C Names and Scopes Keith Thompson <kst-u@mib.org> - 2017-02-08 12:38 -0800
              Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-08 21:54 +0000
                Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-08 22:40 +0000
  Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-09 18:48 +0000
    Re: C Names and Scopes Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-02-09 19:53 +0000
      Re: C Names and Scopes Keith Thompson <kst-u@mib.org> - 2017-02-09 12:25 -0800
        Re: C Names and Scopes Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-02-09 21:27 +0000
          Re: C Names and Scopes Keith Thompson <kst-u@mib.org> - 2017-02-09 13:57 -0800
            Re: C Names and Scopes David Brown <david.brown@hesbynett.no> - 2017-02-13 10:54 +0100
        Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-10 00:26 +0000
          Re: C Names and Scopes Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-02-10 00:42 +0000
            Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-10 01:03 +0000
              Re: C Names and Scopes Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-02-10 01:49 +0000
                Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-10 12:31 +0000
                Re: C Names and Scopes Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-02-10 23:48 +0000
                Re: C Names and Scopes supercat@casperkitty.com - 2017-02-10 16:06 -0800
                Re: C Names and Scopes Keith Thompson <kst-u@mib.org> - 2017-02-10 16:22 -0800
                Re: C Names and Scopes supercat@casperkitty.com - 2017-02-12 09:17 -0800
                Re: C Names and Scopes Tim Rentsch <txr@alumni.caltech.edu> - 2017-02-15 16:26 -0800
              Re: C Names and Scopes Keith Thompson <kst-u@mib.org> - 2017-02-09 17:56 -0800
              Re: C Names and Scopes supercat@casperkitty.com - 2017-02-10 07:42 -0800
                Re: C Names and Scopes Keith Thompson <kst-u@mib.org> - 2017-02-10 08:44 -0800
                Re: C Names and Scopes supercat@casperkitty.com - 2017-02-10 09:25 -0800
                Re: C Names and Scopes Jerry Stuckle <jstucklex@attglobal.net> - 2017-02-10 16:43 -0500
                Re: C Names and Scopes supercat@casperkitty.com - 2017-02-10 14:04 -0800
                Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-10 22:52 +0000
                Re: C Names and Scopes Andrey Tarasevich <andreytarasevich@hotmail.com> - 2017-02-10 15:10 -0800
        Re: C Names and Scopes Tim Rentsch <txr@alumni.caltech.edu> - 2017-02-15 16:31 -0800
      Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-09 23:09 +0000
        Re: C Names and Scopes Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-02-09 23:36 +0000
          Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-02-10 00:19 +0000
            Re: C Names and Scopes Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-02-10 00:38 +0000
  Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-03-04 01:23 +0000
    Re: C Names and Scopes jameskuyper@verizon.net - 2017-03-03 18:23 -0800
      Re: C Names and Scopes GOTHIER Nathan <nathan.gothier@gmail.com> - 2017-03-04 14:42 +0100
        Re: C Names and Scopes "James R. Kuyper" <jameskuyper@verizon.net> - 2017-03-04 11:02 -0500
          Re: C Names and Scopes GOTHIER Nathan <nathan.gothier@gmail.com> - 2017-03-04 23:35 +0100
            Re: C Names and Scopes Malcolm McLean <malcolm.mclean5@btinternet.com> - 2017-03-04 14:50 -0800
            Re: C Names and Scopes Richard Heathfield <rjh@cpax.org.uk> - 2017-03-05 13:39 +0000
              Re: C Names and Scopes GOTHIER Nathan <nathan.gothier@gmail.com> - 2017-03-05 15:10 +0100
                Re: C Names and Scopes Richard Heathfield <rjh@cpax.org.uk> - 2017-03-05 14:34 +0000
                Re: C Names and Scopes Keith Thompson <kst-u@mib.org> - 2017-03-05 19:25 -0800
              Re: C Names and Scopes raltbos@xs4all.nl (Richard Bos) - 2017-03-06 09:37 +0000
                Re: C Names and Scopes Richard Heathfield <rjh@cpax.org.uk> - 2017-03-06 10:34 +0000
                Re: C Names and Scopes James Kuyper <jameskuyper@verizon.net> - 2017-03-06 07:23 -0500
                Re: C Names and Scopes GOTHIER Nathan <nathan.gothier@gmail.com> - 2017-03-06 14:26 +0100
    Re: C Names and Scopes Keith Thompson <kst-u@mib.org> - 2017-03-04 11:52 -0800
      Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-03-04 20:13 +0000
        Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-03-04 20:17 +0000
        Re: C Names and Scopes Keith Thompson <kst-u@mib.org> - 2017-03-04 12:38 -0800
        Re: C Names and Scopes jameskuyper@verizon.net - 2017-03-04 13:50 -0800
          Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-03-04 22:37 +0000
            Re: C Names and Scopes jameskuyper@verizon.net - 2017-03-04 16:15 -0800
              Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-03-05 00:31 +0000
                Re: C Names and Scopes jameskuyper@verizon.net - 2017-03-04 16:47 -0800
                Re: C Names and Scopes BartC <bc@freeuk.com> - 2017-03-05 01:42 +0000
                Re: C Names and Scopes jameskuyper@verizon.net - 2017-03-04 19:20 -0800
                Re: C Names and Scopes Keith Thompson <kst-u@mib.org> - 2017-03-05 01:40 -0800

csiph-web