• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1v0.4.2 (2009-10-16)
2===================
3
4I have tagged and released the sparse version 0.4.2 at http://ftp.be.debian.org/pub/software/devel/sparse/dist/ with sha1sum a2adef3f78c7409e8c0bb80941f473d775afcac4
5
6As previously discussed on the sparse mailing list, I am the new maintainer of
7the sparse project. This is my first release for sparse.
8Thanks Josh Triplett for the previous maintenance of the project.
9
10I also created a new sparse wiki, it will replace the current sparse
11home page. https://sparse.wiki.kernel.org/
12
13A lot of bug fixes and enhancements have gone into this release.
14Special thanks to Al Viro for overhauling the parser. Now sparse
15has  better ctype and attribute handling. The detailed changes follow.
16
17Al Viro (39):
18   * saner warnings for restricted types
19   * fix show_typename()
20   * catch !x & y brainos
21   * fun with declarations and definitions
22   * Fix type_info_expression()
23   * fun with declarations and definitions
24   * Fix handling of ident-less declarations
25   * Separate parsing of identifier-list (in K&R-style declarations)
26   * More nested declarator fixes
27   * Fix attribute/asm handling
28   * more direct_declarator() sanitizing
29   * Warn about non-empty identifier list outside of definition
30   * Apply attributes after ( to the right place
31   * Leave applying attributes until we know whether it's a nested declarator
32   * Don't mess with passing symbol to declarator/direct_declarator
33   * Fix braino in which_kind()
34   * Sanitize direct_declarator logics
35   * Separating ctype and parser state, part 1
36   * Propagate decl_state to declaration_specifiers()
37   * Fix regression created by commit af30c6df74f01db10fa78ac0cbdb5c3c40b5c73f
38   * Take the rest of storage class keywords to parse.c
39   * Fix handling of typedefs with several declarators
40   * preparations to ->declarator() cleanup - separate typedef handling
41   * Take the rest of specifiers to parse.c
42   * Saner type for __builtin_va_list
43   * Rewrite and fix specifiers handling
44   * Have ->declarator() act directly on ctype being affected
45   * Clean up and split declaration_specifiers()
46   * Pass decl_state down to ->declarator() and handle_attributes()
47   * Pass decl_state down to ->attribute()
48   * Restore __attribute__((mode)) handling
49   * Fix enumeration constants' scope beginning
50   * Fix declaration_specifiers() handling of typedef name shadowed by NS_SYMBOL
51   * Fix __label__ handling
52   * Simplify get_number_value() and ctype_integer()
53   * Don't mix storage class bits with ctype->modifiers while parsing type
54   * Sanitize pointer()
55   * Segfault at evaluate.c:341
56   * warn directive in argument list
57
58Alberto Bertogli (1):
59   * Support the __thread storage class
60
61Alexander Shishkin (1):
62   * don't call sparse when called to generate dependencies
63
64Alexey Zaytsev (16):
65   * Remove symbol.id_list
66   * Replace the -specs cgcc option with -target
67   * Make show_symbol newline-consistent
68   * Handle a terminal -o option properly.
69   * Looks more evident this way.
70   * Mark handle_switch as static and don't export it from lib.h
71   * Handle missing argument to -D.
72   * Gdb macros to get a better look at some sparse data structures.
73   * A slightly edited irc discussion with Josh Triplett.
74   * Warning should be enough for an unhandled transparent union
75   * Set gcc include path at runtime.
76   * Let cgcc pass -gcc-base-dir to sparse.
77   * Document -gcc-base-dir in sparse.1
78   * Rename dirafter to idirafter.
79   * Let void have sizeof 1
80   * Also warn about sizeof(function)
81
82Blue Swirl (6):
83   * Sparc64 (Sparc V9, LP64) support
84   * OpenBSD support
85   * Ignore attribute __bounded__, used by OpenBSD headers.
86   * Add c{l,t}z{,l,ll}, ffsl{,l}, popcountll and floating point comparison builtins.
87   * Add support for TImode type (__int128_t)
88   * Define __LP64__ for x86_64 unless in 32 bit mode
89
90Christopher Li (11):
91   * Evaluate iterator symbols
92   * Remove pre_buffer
93   * Add enum member list to the parent
94   * Teach classify_type to handle typeof
95   * Warn about explicit usage of sizeof(void)
96   * Makefile automatic header dependency
97   * Clean up Makefile long lines
98   * Update the validation check for ftabstop=
99   * Add validation for restrict and attribute warning
100   * move extern inline function to file scope
101   * Sparse 0.4.2
102
103David Given (2):
104   * Unhardcode byte size being 8 bits.
105   * Add type information to struct instruction.
106
107Geoff Johnstone (4):
108   * Add support for GCC's -std=... and -ansi command line options.
109   * Add builtin functions for use with __FORTIFY_SOURCE
110   * Fix type mismatches with incomplete types
111   * Add -Wno-declaration-after-statement
112
113Hannes Eder (4):
114   * Add -ftabstop=WIDTH
115   * refactor handle_switch_f
116   * test-suite: be more verbose on 'unhandled' and 'known to fail' tests
117   * test-suite: integrate unhandled proprocessor tests
118
119Johannes Berg (8):
120   * cgcc: handle ppc arch
121   * make sparse keep its promise about context tracking
122   * sparse test suite: add test mixing __context__ and __attribute__((context(...)))
123   * sparse: simple conditional context tracking
124   * inlined call bugfix & test
125   * improve -Wcontext code and messages
126   * fix bug in context tracking code
127   * Revert the context tracking code
128
129Josh Triplett (2):
130   * Add test case for new warning about !x & y
131   * Expand "dubious !x & y" handling to other combinations of !, &, and \|.
132
133Kamil Dudka (4):
134   * compile-i386: do not generate an infinite loop
135   * linearize.h: sanitize header
136   * unssa: track uses when replacing a phi node
137   * make sparse headers self-compilable...
138
139Linus Torvalds (5):
140   * Fix cast instruction generation
141   * Simplify (and warn about) right shifts that result in zero
142   * Allow array declarators to have 'restrict' in them
143   * Turn off '-Wtransparent-union' by default
144   * Avoid "attribute 'warning': unknown attribute" warning
145
146Martin Nagy (3):
147   * .gitignore: Ignore dependencies and Vim swap files
148   * Add missing checks for Waddress-space
149   * Print an error if typeof() lacks an argument
150
151Pavel Roskin (1):
152   * Ignore "cold" and "hot" attributes, which appeared in gcc 4.3
153
154Pekka Enberg (1):
155   * sparse: Add GCC pre-defined macros for user-space
156
157Ramsay Jones (1):
158   * Makefile: suppress error message from pkg-config
159
160Reinhard Tartler (1):
161   * show_token: handle TOKEN_UNTAINT and TOKEN_ARG_COUNT types
162
163Samuel Bronson (1):
164   * Have Makefile import local.mk if it exists.
165
166Thomas Schmid (1):
167   * Fix implicit cast to float
168
169Vegard Nossum (2):
170   * Fix use of invalid file descriptor
171   * Set \*tree to NULL on error
172
173-- Chris Li
174