Package: flex
Version: 2.5.35-10
Severity: normal
Tags: upstream patch

Hi,
When using flex in re-entrant mode, no prototypes are generated for
yy_getcolumn and yy_setcolumn, despite non-static declarations.  This
leads to warnings which can tank a build if using -Werror (I know,
pointless in distributions and tarballs, but useful for upstream
maintenance ...):
  CC     src/xkbcomp/xkbscan.lo
  src/xkbcomp/xkbscan.c:2416:5: error: no previous prototype for 'yyget_column' 
[-Werror=missing-prototypes]
  src/xkbcomp/xkbscan.c:2492:6: error: no previous prototype for 'yyset_column' 
[-Werror=missing-prototypes]

The attached patch has been shipped in Fedora since Fedora 13, with no
complaints AFAICT.  Please consider including this in the Debian
package.

Cheers,
Daniel

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.3.0-rc5+ (SMP w/4 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages flex depends on:
ii  debconf [debconf-2.0]  1.5.42
ii  dpkg                   1.16.2
ii  install-info           4.13a.dfsg.1-9
ii  libc6                  2.13-27
ii  m4                     1.4.16-2

Versions of packages flex recommends:
ii  gcc [c-compiler]      4:4.6.3-3
ii  gcc-4.6 [c-compiler]  4.6.3-1

Versions of packages flex suggests:
ii  bison            1:2.5.dfsg-2.1
ii  build-essential  11.5

-- no debconf information
diff -up flex-2.5.35/flex.skl\~ flex-2.5.35/flex.skl
--- flex-2.5.35/flex.skl~	2010-07-13 17:18:43.000000000 +0200
+++ flex-2.5.35/flex.skl	2010-07-13 17:23:49.000000000 +0200
@@ -960,6 +960,22 @@ m4_ifdef( [[M4_YY_NO_SET_LINENO]],,
 void yyset_lineno M4_YY_PARAMS( int line_number M4_YY_PROTO_LAST_ARG );
 ]])
 
+m4_ifdef( [[M4_YY_REENTRANT]],
+[[
+m4_ifdef( [[M4_YY_NO_GET_COLUMN]],,
+[[
+int yyget_column  M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+]])
+]])
+
+m4_ifdef( [[M4_YY_REENTRANT]],
+[[
+m4_ifdef( [[M4_YY_NO_SET_COLUMN]],,
+[[
+void yyset_column M4_YY_PARAMS( int column_no M4_YY_PROTO_LAST_ARG );
+]])
+]])
+
 %if-bison-bridge
 m4_ifdef( [[M4_YY_NO_GET_LVAL]],,
 [[

Diff finished.  Tue Jul 13 17:27:50 2010

Reply via email to