]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - contrib/gperf/NEWS
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / contrib / gperf / NEWS
1 New in 3.0.3:
2
3 * The generated C code is compatible with gcc-4.3.x in c99 or gnu99 mode.
4
5 New in 3.0.2:
6
7 * Compiles with g++-4.0.x.
8 * Added option --length-table-name.
9 * Added declaration %define length-table-name.
10 * Fixed  #line directives for filenames containing backslashes.
11
12 New in 3.0.1:
13
14 * Bug fix.
15
16 New in 3.0:
17
18 * Added option --output that allows to specify the output file name.
19 * Some options have been renamed:
20     --hash-fn-name=NAME     -->   --hash-function-name=NAME
21     --lookup-fn-name=NAME   -->   --lookup-function-name=NAME
22     --compare-strlen        -->   --compare-lengths
23     --global                -->   --global-table
24   The older variants are still supported for backward compatibility.
25 * The following options can now be specified inside the input file:
26     %delimiters=DELIMITER-LIST
27     %struct-type
28     %ignore-case
29     %language=LANGUAGE-NAME
30     %define slot-name NAME
31     %define initializer-suffix INITIALIZERS
32     %define hash-function-name NAME
33     %define lookup-function-name NAME
34     %define class-name NAME
35     %7bit
36     %compare-lengths
37     %compare-strncmp
38     %readonly-tables
39     %enum
40     %includes
41     %global-table
42     %pic
43     %define string-pool-name NAME
44     %null-strings
45     %define word-array-name NAME
46     %switch=COUNT
47     %omit-struct-type
48 * When the option -k is not given, the default key positions are now
49   computed depending on the set of keywords.
50 * If the input file is given by name, the output file will now contain
51   #line directives referring to the input file.
52 * Some keyword sets containing permutations, like { "xy", "yx", "xz", "zx" }
53   or { "abc", "acb", "bca", "cab" }, are now handled by gperf without
54   requiring the option -D.
55 * The generated table is usually much smaller than it was with earlier
56   versions of gperf.
57 * Added option -m/--multiple-iterations that allows to further reduce the
58   size of the generated table.
59 * When the search for a good hash function is not immediately successful,
60   the table's size will grow as needed. Earlier versions of gperf bailed
61   out with an "Internal error, duplicate hash code value".
62 * The options -f/--fast and -o/--occurrence-sort have no effect any more.
63 * Added options -P/--pic and --null-strings that optimize the generated code
64   for use in shared libraries. -P/--pic does a perfect optimization but may
65   require some small code changes (see the documentation for details), whereas
66   --null-strings does only a half-hearted optimization but works without
67   needing any change to surrounding code.
68 * Added option --ignore-case that produces a case independent lookup function.
69 * Bug fixes.
70
71 New in 2.7.2:
72
73 * Keywords may now be enclosed in double quotes; this permits the use of
74   '#', ',', space or NUL inside keywords.
75 * Bug fixes.
76
77 New in 2.7.1:
78
79 * Added option "-F" for gcc.
80
81 New in 2.7:
82
83 * gperf is now a stand-alone package, untied from libg++.
84 * Autoconfiguring.
85 * Removed the "-a" and "-g" options, extended the "-L" option instead.
86 * Removed the "-p" option, it is the default.
87 * Added long options ("--help", "--version" etc.).
88 * 8-bit cleanliness is now the default; use "-7" to get the old behaviour.
89 * Compiles with any C++ compiler.
90 * Numerous small improvements.
91