aboutsummaryrefslogtreecommitdiff
path: root/NEWS
blob: bd962e884813d38b3427b075d673b6304190aee8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
GNU cflow NEWS -- history of user-visible changes. 2021-12-30
See the end of file for copying conditions.

Please send cflow bug reports to <bug-cflow@gnu.org>.

Version 1.7, 2021-12-30

* Multiple start functions are allowed

The '--main' option can be given multiple times.  A separate graph
will be drawn for each function given as its argument.

* New option --target=FUNCTION

If this option is given, the produced graph will contain only paths
leading from start function (or functions) to the given FUNCTION.

Multiple '--target' options are allowed.

* New output format: dot

The '-f dot' (or '--format=dot') option instructs cflow to output
graph as a description in DOT language, suitable as input to graphviz
programs.

* cflow-mode: new commands for navigating in the graph:

  c   go to the calling function
  n   go to the next function at the same nesting level
  p   go to the previous function at the same nesting level

* Bugfixes:

** CVE-2019-16165
** CVE-2019-16166
** Fix parsing of K&R style function declarations
** Improve parsing of typecasts
** Fix recursive call detection


Version 1.6, 2019-02-23

* New option --all (-A)

Produce graphs for all global functions in the program.  Use this
option if your program contains functions which are not directly
reachable from main().

The output consist of separate flow graphs for each global function
defined in the program.  These graphs will be placed after the graph
for main() (if it exists), and will be ordered lexicographically by
the function name.

* New option --no-main

This option has the same effect as '--all', except that the graph for
main() function (if it exists) is treated same way as all the other
graphs, i.e. it will not be placed at the top of output, but in its
place as per the lexicographic ordering of function names.


Version 1.5, 2016-05-17

* Correctly handle functions returning struct/union (fixes bug #31792)
* Gracefully handle invalid inputs (fixes bug #44113)
* Debugging output goes to stderr
* Add a manpage
* Consistent use of exit codes


Version 1.4, 2011-10-11

* Symbol aliases

The `--symbol' option has been extended to allow for defining
symbol aliases.  Aliases are useful for declaring reserved
words such as `__restrict' or `__inline'.  For example,
the option `--symbol __restrict:=restrict' instructs cflow
to treat `__restrict' exactly as `restrict'.

* New syntactic class: qualifiers

Tokens in this class can legitimately appear in place
of C qualifiers, such as `static' or `inline'.  This class
is useful for some compiler-depending keywords, such as
`__extension__' in gcc.  The usual declaration of this symbol
is `--symbol __extension__:qualifier'.

* Speed up recursive call detection.

* Fix parsing of typedefs after `struct'.
* Fix the output of branch marks in tree mode.
* Fix processing of static inline functions (RH bug 650716).


Version 1.3, 2009-07-11

* Optimize symbol tables.

New symbol tables considerably improve the program performance.

* Bugfixes.


Version 1.2, 2007-06-29

* Licensed under the GPLv3


Version 1.1, 2006-07-09

* Bugfixes:
** Fix stack overflow on erroneous nameless function arguments.
** Fix global/static and static/static name clashes.
** Fix initial allocation for level mark array

* New localization: Danish and Vietnamese


Version 1.0, 2005-10-15

* First official release.


Version 0.2.3:

* Finished documentation.

* Added `--no-' options.


Version 0.2.2:

* Added testsuite

* New option --number=N (-nN) - print line numbers along with the flow tree
(default in POSIX mode)

* Added localization support. New localizations: Polish and Ukrainian.


Version 0.2:

* Added autoconf suite.
* Added POSIX output support.


Version 0.1:

Initial version restored from 1997 snapshots. 


----------------------------------------------------------------------
* Copyright information:

Copyright (C) 2005-2022 Sergey Poznyakoff

   Permission is granted to anyone to make or distribute verbatim copies
   of this document as received, in any medium, provided that the
   copyright notice and this permission notice are preserved,
   thus giving the recipient permission to redistribute in turn.

   Permission is granted to distribute modified versions
   of this document, or of portions of it,
   under the above conditions, provided also that they
   carry prominent notices stating who last changed them.

Local variables:
mode: outline
paragraph-separate: "[ 	]*$"
eval: (add-hook 'write-file-hooks 'time-stamp)
time-stamp-start: "changes. "
time-stamp-format: "%:y-%02m-%02d"
time-stamp-end: "\n"
end:

Return to:

Send suggestions and report system problems to the System administrator.