Package: flex
Version: 2.5.39-8+b1
Severity: important
Tags: upstream


-- System Information:
Debian Release: jessie/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'stable-updates'), (500, 'stable'), (500, 
'oldstable'), (50, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.16.0-4-amd64 (SMP w/12 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.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.53
ii  dpkg                   1.17.21
ii  install-info           5.2.0.dfsg.1-5
ii  libc6                  2.19-12
ii  libfl-dev              2.5.39-8+b1
ii  m4                     1.4.17-4

Versions of packages flex recommends:
ii  gcc [c-compiler]                      4:4.9.1-5
ii  gcc-3.3 [c-compiler]                  1:3.3.6-15
ii  gcc-4.1-multiarch-fudge [c-compiler]  4.1.2-29
ii  gcc-4.2 [c-compiler]                  4.2.4-6
ii  gcc-4.3-multiarch-fudge [c-compiler]  4.3.5-4
ii  gcc-4.6 [c-compiler]                  4.6.4-7
ii  gcc-4.7 [c-compiler]                  4.7.4-3
ii  gcc-4.8 [c-compiler]                  4.8.3-13
ii  gcc-4.9 [c-compiler]                  4.9.1-19

Versions of packages flex suggests:
ii  bison            2:3.0.2.dfsg-2
ii  build-essential  11.7

-- no debconf information

This is issue mentioned in flex database 
<http://sourceforge.net/p/flex/bugs/160/>, but it seriously affects usability 
of the flex if `%option` read is used.

The YY_INPUT macro is then defined as (excerpt):

#define YY_INPUT(buf,result,max_size) \
    errno=0; \
    while ( (result = read( fileno(yyin), (char *) buf, max_size )) < 0 ) \
    { \
            if( errno != EINTR) \

while used as:

YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
                    yyg->yy_n_chars, num_to_read );

The difference between code generated by version 2.3.39 and 2.3.35 (from 
wheezy) is that yy_n_chars has now type yy_size_t, while in code generated by 
previous version had type int.

The problem doesn't affect code generated with `%option noread` as then 
YY_INPUT uses fread() function instead of read(); fread() returns unsigned type.


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to