ports/128603: textproc/flex has too small capacity
Olaf Seibert
olafs at cs.ru.nl
Wed Nov 5 10:40:06 UTC 2008
>Number: 128603
>Category: ports
>Synopsis: textproc/flex has too small capacity
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Wed Nov 05 10:40:06 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator: Olaf Seibert
>Release: FreeBSD 6.1-RELEASE amd64
>Organization:
>Environment:
System: FreeBSD twoquid.cs.ru.nl 6.1-RELEASE FreeBSD 6.1-RELEASE #2: Mon Mar 19 15:05:26 CET 2007 root at twoquid.cs.ru.nl:/usr/src/sys/amd64/compile/TWOQUID amd64
>Description:
Something from the ports installed textproc/flex but no
dependency is recorded so I don't know what it was.
Flex version 2.5.35 has a smaller capacity than the base system
version 2.5.4, or it is less efficient in processing input rules.
I have a flex input file that is handled fine by version 2.5.4
but suddenly failed mysteriously when I upgraded my ports,
which installed the later and more limited flex.
Also, the Texinfo documentation isn't installed, so I can't look
in it to see if there might be some workaround.
>How-To-Repeat:
The vesion from ports fails:
$ /usr/local/bin/flex -pv -i -t morph.l > morph.c
flex: input rules are too complicated (>= 32000 NFA states)
flex version 2.5.35 usage statistics:
scanner options: -iptvI8 -Cem
31000/32000 NFA states
0/1000 DFA states (0 words)
949 rules
No backing up
7/40 start conditions
16901 epsilon states, 8918 double epsilon states
no character classes
0 state/nextstate pairs created
0/0 unique/duplicate transitions
0/1000 base-def entries created
0/2000 (peak 0) nxt-chk entries created
0/2500 (peak 0) template nxt-chk entries created
0 empty table entries
0 protos created
0 templates created, 0 uses
0/256 equivalence classes created
0/256 meta-equivalence classes created
0 (0 saved) hash collisions, 0 DFAs equal
38 sets of reallocations needed
256 total table entries needed
The vesion from the base system works:
$ /usr/bin/flex -pv -i -t morph.l > morph.c
/usr/bin/flex version 2.5.4 usage statistics:
scanner options: -iptvI8 -Cem
28641/29000 NFA states
21996/23000 DFA states (5032166 words)
1567 rules
Compressed tables always back-up
Beginning-of-line patterns used
7/40 start conditions
8886 epsilon states, 4488 double epsilon states
22/100 character classes needed 157/500 words of storage, 145 reused
614918 state/nextstate pairs created
510844/104074 unique/duplicate transitions
22017/23000 base-def entries created
73510/74000 (peak 73731) nxt-chk entries created
84/2500 (peak 819) template nxt-chk entries created
3 empty table entries
750 protos created
21 templates created, 31 uses
39/256 equivalence classes created
4/256 meta-equivalence classes created
98 (55 saved) hash collisions, 488863 DFAs equal
110 sets of reallocations needed
191349 total table entries needed
>Fix:
I don't know a fix, I can only deinstall the textproc/flex
and hope nothing brings it back next time I upgrade any ports.
-Olaf.
--
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list