[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#707644: gcc-4.7: old-style parameter declarations v.s. ANSI C section 3.7.1 ?



Package: gcc-4.7
Version: 4.7.2-5
Severity: minor

Dear Maintainer,

With the follozing source code:
% cat file.c
typedef struct s_ {int i;} st;
void this(st) int st; {}

The compiler complains, but I am not sure about the pertinence of the error message:
% cc -c -o file.o file.c
file.c: In function ‘this’:
file.c:2:6: error: old-style parameter declarations in prototyped function definition
file.c:2:1: error: parameter name omitted

since changing the variable name st to xy in the source code, i.e.:
% cat file2.c
typedef struct s_ {int i;} st;
void this(xy) int xy; {}

makes the compiler happy:
% cc -c -o file2.o file2.c; echo $?
0

I /suspect/ it has to do with the ANSI C section 3.7.1 stating an identifier "shall" not be redeclared as a parameter. May it be possible to confirm/infirm?
If confirmed, then my request would be to have a more meaningful message.
Otherwise, apologizes -;

Thanks, Regards, Jean-Damien.

-- System Information:
Debian Release: 7.0
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 3.2.0-4-686-pae (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages gcc-4.7 depends on:
ii  binutils      2.22-8
ii  cpp-4.7       4.7.2-5
ii  gcc-4.7-base  4.7.2-5
ii  libc6         2.13-38
ii  libgcc1       1:4.7.2-5
ii  libgmp10      2:5.0.5+dfsg-2
ii  libgomp1      4.7.2-5
ii  libitm1       4.7.2-5
ii  libmpc2       0.9-4
ii  libmpfr4      3.1.1-1
ii  libquadmath0  4.7.2-5
ii  zlib1g        1:1.2.7.dfsg-13

Versions of packages gcc-4.7 recommends:
ii  libc6-dev  2.13-38

Versions of packages gcc-4.7 suggests:
pn  binutils-gold        <none>
pn  gcc-4.7-doc          <none>
pn  gcc-4.7-locales      <none>
pn  gcc-4.7-multilib     <none>
ii  libcloog-ppl0        0.15.11-5
pn  libgcc1-dbg          <none>
pn  libgomp1-dbg         <none>
pn  libitm1-dbg          <none>
pn  libmudflap0-4.7-dev  <none>
pn  libmudflap0-dbg      <none>
pn  libppl-c2            <none>
pn  libppl7              <none>
pn  libquadmath0-dbg     <none>

-- no debconf information


Reply to: