annotate TOOLS/checktree.sh @ 24326:ff2f302a176b

Replace short region code explanation by more detailed section.
author diego
date Wed, 05 Sep 2007 20:50:35 +0000
parents 993062afb229
children ac0406c340b3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
1 #!/bin/sh
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
2
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
3 # -----------------------------------------------------------------------------
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
4
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
5 # Check source-tree for anomalies
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
6 #
23940
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
7 # Copyright (C) 2005-2007 by Ivo van Poorten
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
8 #
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
9 # This program is free software; you can redistribute it and/or modify
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
10 # it under the terms of the GNU General Public License as published by
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
11 # the Free Software Foundation; either version 2 of the License, or
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
12 # (at your option) any later version.
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
13 #
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
14 # This program is distributed in the hope that it will be useful,
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
17 # GNU General Public License for more details.
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
18 #
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
19 # You should have received a copy of the GNU General Public License
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
20 # along with this program; if not, write to the Free Software
1b3e61a77754 Update copyright info and license
ivo
parents: 23939
diff changeset
21 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
22 #
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
23 # Thanks to Melchior Franz of the FlightGear project for the original idea
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
24 # of a source-tree checker and Torinthiel for the feedback along the way.
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
25
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
26 # $Id$
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
27
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
28 # -----------------------------------------------------------------------------
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
29
23948
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
30 # All yes/no flags. Spaces around flagnames are important!
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
31
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
32 testflags=" spaces extensions crlf tabs trailws rcsid oll charset stupid gnu \
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
33 res "
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
34 allflags="$testflags showcont color head svn "
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
35
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
36 # Default settings
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
37
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
38 _spaces=yes
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
39 _extensions=yes
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
40 _crlf=yes
23235
0e8285c7b2fa test for tab characters
ivo
parents: 23233
diff changeset
41 _tabs=no
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
42 _trailws=no
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
43 _rcsid=no
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
44 _oll=no
18087
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
45 _charset=no
19085
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
46 _stupid=no
17131
80d3fdcf58a8 option to show the lines containing anomalies, patch by Ivo van Poorten
wanderer
parents: 16405
diff changeset
47 _showcont=no
23927
91ccac9cc015 Add test for GNUisms
ivo
parents: 23235
diff changeset
48 _gnu=no
23935
b4a1d0cf4c11 Test for reserved identifiers.
ivo
parents: 23927
diff changeset
49 _res=no
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
50
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
51 _color=yes
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
52 _head=yes
19077
e3f7f221f75e CVS --> Subversion
ivo
parents: 18087
diff changeset
53 _svn=yes
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
54 _files=
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
55
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
56 # -----------------------------------------------------------------------------
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
57
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
58 # Avoid locale problems
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
59
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
60 export LC_ALL=C
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
61
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
62 # -----------------------------------------------------------------------------
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
63
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
64 # Helper functions
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
65
23949
26db94620073 Shorten (un)setting of all test flags
ivo
parents: 23948
diff changeset
66 set_all_tests() {
26db94620073 Shorten (un)setting of all test flags
ivo
parents: 23948
diff changeset
67 for i in $testflags ; do
26db94620073 Shorten (un)setting of all test flags
ivo
parents: 23948
diff changeset
68 eval _$i=$1
26db94620073 Shorten (un)setting of all test flags
ivo
parents: 23948
diff changeset
69 done
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
70 }
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
71
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
72 printoption() {
23951
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
73 test -n "$3" && def=$3 || eval def=\$_$1
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
74 echo " -(no)$1 $2 [default: $def]"
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
75 }
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
76
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
77 printhead() {
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
78 test "$_head" = "yes" && echo -e "$COLB$1$COLE"
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
79 }
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
80
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
81 all_filenames() {
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
82 test "$_files" != "" && echo "$_files" && return
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
83
20204
97fbe96274c3 Use = instead of == for extra portability.
diego
parents: 19085
diff changeset
84 if [ "$_svn" = "no" ]; then
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
85 find . -type f \
19077
e3f7f221f75e CVS --> Subversion
ivo
parents: 18087
diff changeset
86 | grep -v "\.\#\|\~$\|\.depend\|\/\.svn\/\|config.mak\|^\./config\.h" \
19078
4361813f6cae also omit configure.log and the generated help_mp.h from files to check
ivo
parents: 19077
diff changeset
87 | grep -v "^\./version\.h\|\.o$\|\.a$\|configure.log\|^\./help_mp.h"
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
88 else
22361
eec955510da7 do not rely on svn internals and use svn info instead
ivo
parents: 22359
diff changeset
89 svn info -R | sed -n '/Path:/bb; :a; d; b; :b; s/Path: /.\//; h; :c; n;
eec955510da7 do not rely on svn internals and use svn info instead
ivo
parents: 22359
diff changeset
90 /Node Kind:/bd; bc; :d; /directory/ba; g; p;'
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
91 fi
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
92 }
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
93
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
94 # -----------------------------------------------------------------------------
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
95
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
96 # Parse command line
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
97
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
98 for i in "$@"; do
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
99 case "$i" in
22359
206b4600a956 also respond to --help, -h and -? command line options
ivo
parents: 22358
diff changeset
100 -help|--help|-h|-\?)
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
101 echo -e "\n$0 [options] [files]\n"
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
102 echo -e "options:\n"
23951
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
103 printoption "spaces " "test for spaces in filenames"
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
104 printoption "extensions" "test for uppercase extensions"
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
105 printoption "crlf " "test for MSDOS line endings"
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
106 printoption "tabs " "test for tab characters"
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
107 printoption "trailws " "test for trailing whitespace"
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
108 printoption "rcsid " "test for missing RCS Id's"
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
109 printoption "oll " "test for overly long lines"
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
110 printoption "charset " "test for wrong charset"
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
111 printoption "stupid " "test for stupid code"
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
112 printoption "gnu " "test for GNUisms"
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
113 printoption "res " "test for reserved identifiers"
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
114 echo
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
115 printoption "all " "enable all tests" "no"
22357
131563493cc4 clarify -none command line option
ivo
parents: 20204
diff changeset
116 echo " (-noall can be specified as -none)"
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
117 echo
23951
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
118 printoption "showcont " "show offending content of file(s)"
17131
80d3fdcf58a8 option to show the lines containing anomalies, patch by Ivo van Poorten
wanderer
parents: 16405
diff changeset
119 echo
23951
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
120 printoption "color " "colored output"
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
121 printoption "head " "print heading for each test"
22509
b65e001a3e68 fix forgotten \
ivo
parents: 22361
diff changeset
122 printoption "svn " \
23951
993062afb229 Make the printoption function take the default values from the variable
ivo
parents: 23950
diff changeset
123 "use svn info to determine which files to check"
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
124 echo -e "\nIf no files are specified, the whole tree is traversed."
19077
e3f7f221f75e CVS --> Subversion
ivo
parents: 18087
diff changeset
125 echo -e "If there are, -(no)svn has no effect.\n"
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
126 exit
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
127 ;;
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
128 -all)
23949
26db94620073 Shorten (un)setting of all test flags
ivo
parents: 23948
diff changeset
129 set_all_tests yes
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
130 ;;
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
131 -noall)
23949
26db94620073 Shorten (un)setting of all test flags
ivo
parents: 23948
diff changeset
132 set_all_tests no
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
133 ;;
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
134 -none)
23949
26db94620073 Shorten (un)setting of all test flags
ivo
parents: 23948
diff changeset
135 set_all_tests no
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
136 ;;
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
137 -*)
23948
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
138 var=`echo X$i | sed 's/^X-//'`
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
139 val=yes
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
140 case "$var" in
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
141 no*)
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
142 var=`echo "$var" | cut -c 3-`
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
143 val=no
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
144 ;;
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
145 esac
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
146 case "$allflags" in
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
147 *\ $var\ *)
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
148 eval _$var=$val
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
149 ;;
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
150 *)
23950
68af8ad58a8f cosmetics, indentation
ivo
parents: 23949
diff changeset
151 echo "unknown option: $i" >&2
68af8ad58a8f cosmetics, indentation
ivo
parents: 23949
diff changeset
152 exit 0
68af8ad58a8f cosmetics, indentation
ivo
parents: 23949
diff changeset
153 ;;
23948
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
154 esac
66a261a0e0f2 Much smaller command line parser
ivo
parents: 23940
diff changeset
155 ;;
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
156 *)
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
157 _files="$_files $i"
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
158 ;;
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
159 esac
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
160 done
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
161
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
162 # -----------------------------------------------------------------------------
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
163
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
164 # Set heading color
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
165
20204
97fbe96274c3 Use = instead of == for extra portability.
diego
parents: 19085
diff changeset
166 if [ "$_color" = "yes" ]; then
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
167 COLB="\e[36m"
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
168 COLE="\e[m"
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
169 else
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
170 COLB=""
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
171 COLE=""
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
172 fi
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
173
19077
e3f7f221f75e CVS --> Subversion
ivo
parents: 18087
diff changeset
174 # Generate filelist once so -svn isn't _that_ much slower than -nosvn anymore
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
175
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
176 filelist=`all_filenames`
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
177
23935
b4a1d0cf4c11 Test for reserved identifiers.
ivo
parents: 23927
diff changeset
178 if [ "$_stupid" = "yes" -o "$_res" = "yes" ] ; then
b4a1d0cf4c11 Test for reserved identifiers.
ivo
parents: 23927
diff changeset
179 # generate 'shortlist' to avoid false positives in xpm files, docs, etc,
b4a1d0cf4c11 Test for reserved identifiers.
ivo
parents: 23927
diff changeset
180 # when one only needs to check .c and .h files
b4a1d0cf4c11 Test for reserved identifiers.
ivo
parents: 23927
diff changeset
181 chfilelist=`echo $filelist | tr ' ' '\n' | grep "[\.][ch]$"`
b4a1d0cf4c11 Test for reserved identifiers.
ivo
parents: 23927
diff changeset
182 fi
b4a1d0cf4c11 Test for reserved identifiers.
ivo
parents: 23927
diff changeset
183
20204
97fbe96274c3 Use = instead of == for extra portability.
diego
parents: 19085
diff changeset
184 if [ "$_showcont" = "yes" ]; then
18087
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
185 _diffopts="-u"
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
186 _grepopts="-n -I"
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
187 else
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
188 _diffopts="-q"
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
189 _grepopts="-l -I"
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
190 fi
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
191
23936
c0b23a73d5f1 10l, forgot to make TAB global
ivo
parents: 23935
diff changeset
192 TAB=`echo " " | tr ' ' '\011'`
c0b23a73d5f1 10l, forgot to make TAB global
ivo
parents: 23935
diff changeset
193
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
194 # -----------------------------------------------------------------------------
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
195
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
196 # DO CHECKS
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
197
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
198 # -----------------------------------------------------------------------------
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
199
20204
97fbe96274c3 Use = instead of == for extra portability.
diego
parents: 19085
diff changeset
200 if [ "$_spaces" = "yes" ]; then
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
201 printhead "checking for spaces in filenames ..."
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
202 find . | grep " "
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
203 fi
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
204
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
205 # -----------------------------------------------------------------------------
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
206
20204
97fbe96274c3 Use = instead of == for extra portability.
diego
parents: 19085
diff changeset
207 if [ "$_extensions" = "yes" ]; then
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
208 printhead "checking for uppercase extensions ..."
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
209 echo $filelist | grep "\.[[:upper:]]\+$" | grep -v "\.S$"
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
210 fi
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
211
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
212 # -----------------------------------------------------------------------------
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
213
20204
97fbe96274c3 Use = instead of == for extra portability.
diego
parents: 19085
diff changeset
214 if [ "$_crlf" = "yes" ]; then
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
215 printhead "checking for MSDOS line endings ..."
19079
0ba020beb2e4 fix matching of MSDOS line endings
ivo
parents: 19078
diff changeset
216 CR=`echo " " | tr ' ' '\015'`
0ba020beb2e4 fix matching of MSDOS line endings
ivo
parents: 19078
diff changeset
217 grep $_grepopts "$CR" $filelist
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
218 fi
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
219
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
220 # -----------------------------------------------------------------------------
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
221
23235
0e8285c7b2fa test for tab characters
ivo
parents: 23233
diff changeset
222 if [ "$_tabs" = "yes" ]; then
0e8285c7b2fa test for tab characters
ivo
parents: 23233
diff changeset
223 printhead "checking for TAB characters ..."
0e8285c7b2fa test for tab characters
ivo
parents: 23233
diff changeset
224 grep $_grepopts "$TAB" $filelist
0e8285c7b2fa test for tab characters
ivo
parents: 23233
diff changeset
225 fi
0e8285c7b2fa test for tab characters
ivo
parents: 23233
diff changeset
226
0e8285c7b2fa test for tab characters
ivo
parents: 23233
diff changeset
227 # -----------------------------------------------------------------------------
0e8285c7b2fa test for tab characters
ivo
parents: 23233
diff changeset
228
20204
97fbe96274c3 Use = instead of == for extra portability.
diego
parents: 19085
diff changeset
229 if [ "$_trailws" = "yes" ]; then
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
230 printhead "checking for trailing whitespace ..."
18087
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
231 grep $_grepopts "[[:space:]]\+$" $filelist
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
232 fi
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
233
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
234 # -----------------------------------------------------------------------------
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
235
20204
97fbe96274c3 Use = instead of == for extra portability.
diego
parents: 19085
diff changeset
236 if [ "$_rcsid" = "yes" ]; then
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
237 printhead "checking for missing RCS \$Id\$ or \$Revision\$ tags ..."
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
238 grep -L -I "\$\(Id\|Revision\)[[:print:]]\+\$" $filelist
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
239 fi
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
241 # -----------------------------------------------------------------------------
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
242
20204
97fbe96274c3 Use = instead of == for extra portability.
diego
parents: 19085
diff changeset
243 if [ "$_oll" = "yes" ]; then
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
244 printhead "checking for overly long lines (over 79 characters) ..."
18087
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
245 grep $_grepopts "^[[:print:]]\{80,\}$" $filelist
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
246 fi
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
247
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
248 # -----------------------------------------------------------------------------
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
249
23927
91ccac9cc015 Add test for GNUisms
ivo
parents: 23235
diff changeset
250 if [ "$_gnu" = "yes" ]; then
91ccac9cc015 Add test for GNUisms
ivo
parents: 23235
diff changeset
251 printhead "checking for GNUisms ..."
91ccac9cc015 Add test for GNUisms
ivo
parents: 23235
diff changeset
252 grep $_grepopts "case.*\.\.\..*:" $filelist
91ccac9cc015 Add test for GNUisms
ivo
parents: 23235
diff changeset
253 fi
91ccac9cc015 Add test for GNUisms
ivo
parents: 23235
diff changeset
254
91ccac9cc015 Add test for GNUisms
ivo
parents: 23235
diff changeset
255 # -----------------------------------------------------------------------------
91ccac9cc015 Add test for GNUisms
ivo
parents: 23235
diff changeset
256
23937
00d78036f96b only test for stupid code and reserved identifiers if there are any .c or .h
ivo
parents: 23936
diff changeset
257 if [ "$_res" = "yes" -a -n "$chfilelist" ]; then
23935
b4a1d0cf4c11 Test for reserved identifiers.
ivo
parents: 23927
diff changeset
258 printhead "checking for reserved identifiers ..."
b4a1d0cf4c11 Test for reserved identifiers.
ivo
parents: 23927
diff changeset
259 grep $_grepopts "#[ $TAB]*define[ $TAB]\+_[[:upper:]].*" $chfilelist
b4a1d0cf4c11 Test for reserved identifiers.
ivo
parents: 23927
diff changeset
260 grep $_grepopts "#[ $TAB]*define[ $TAB]\+__.*" $chfilelist
b4a1d0cf4c11 Test for reserved identifiers.
ivo
parents: 23927
diff changeset
261 fi
b4a1d0cf4c11 Test for reserved identifiers.
ivo
parents: 23927
diff changeset
262
b4a1d0cf4c11 Test for reserved identifiers.
ivo
parents: 23927
diff changeset
263 # -----------------------------------------------------------------------------
b4a1d0cf4c11 Test for reserved identifiers.
ivo
parents: 23927
diff changeset
264
20204
97fbe96274c3 Use = instead of == for extra portability.
diego
parents: 19085
diff changeset
265 if [ "$_charset" = "yes" ]; then
18087
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
266 printhead "checking bad charsets ..."
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
267 for I in $filelist ; do
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
268 case "$I" in
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
269 ./help/help_mp-*.h)
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
270 ;;
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
271 ./DOCS/*)
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
272 ;;
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
273 *.c|*.h)
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
274 iconv -c -f ascii -t ascii "$I" | diff $_diffopts "$I" -
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
275 ;;
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
276 esac
edffd6f8a022 add check for non-ascii charsets used in code and simplify showcont switch handling
reimar
parents: 17131
diff changeset
277 done
16240
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
278 fi
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
279
d4cf25d45b13 Script to check (CVS) source-tree for anomalies, like MSDOS line endings etc..
ivo
parents:
diff changeset
280 # -----------------------------------------------------------------------------
19085
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
281
23937
00d78036f96b only test for stupid code and reserved identifiers if there are any .c or .h
ivo
parents: 23936
diff changeset
282 if [ "$_stupid" = "yes" -a -n "$chfilelist" ]; then
19085
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
283 printhead "checking for stupid code ..."
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
284
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
285 for i in calloc malloc realloc memalign av_malloc av_mallocz faad_malloc \
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
286 lzo_malloc safe_malloc mpeg2_malloc _ogg_malloc; do
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
287 printhead "--> casting of void* $i()"
23939
f85dd30807a3 cosmetics, break overly long lines
ivo
parents: 23938
diff changeset
288 grep $_grepopts "([ $TAB]*[a-zA-Z_]\+[ $TAB]*\*.*)[ $TAB]*$i" \
f85dd30807a3 cosmetics, break overly long lines
ivo
parents: 23938
diff changeset
289 $chfilelist
19085
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
290 done
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
291
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
292 for i in "" signed unsigned; do
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
293 printhead "--> usage of sizeof($i char)"
23939
f85dd30807a3 cosmetics, break overly long lines
ivo
parents: 23938
diff changeset
294 grep $_grepopts "sizeof[ $TAB]*([ $TAB]*$i[ $TAB]*char[ $TAB]*)" \
f85dd30807a3 cosmetics, break overly long lines
ivo
parents: 23938
diff changeset
295 $chfilelist
19085
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
296 done
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
297
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
298 for i in int8_t uint8_t; do
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
299 printhead "--> usage of sizeof($i)"
23938
0239a594ec45 replace ^I by $TAB now that TAB is global
ivo
parents: 23937
diff changeset
300 grep $_grepopts "sizeof[ $TAB]*([ $TAB]*$i[ $TAB]*)" $chfilelist
19085
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
301 done
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
302
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
303 printhead "--> usage of &&1"
23938
0239a594ec45 replace ^I by $TAB now that TAB is global
ivo
parents: 23937
diff changeset
304 grep $_grepopts "&&[ $TAB]*1" $chfilelist
19085
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
305
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
306 printhead "--> usage of ||0"
23938
0239a594ec45 replace ^I by $TAB now that TAB is global
ivo
parents: 23937
diff changeset
307 grep $_grepopts "||[ $TAB]*0" $chfilelist
19085
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
308
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
309 # added a-fA-F_ to eliminate some false positives
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
310 printhead "--> usage of *0"
23939
f85dd30807a3 cosmetics, break overly long lines
ivo
parents: 23938
diff changeset
311 grep $_grepopts "[a-zA-Z0-9)]\+[ $TAB]*\*[ $TAB]*0[^.0-9xa-fA-F_]" \
f85dd30807a3 cosmetics, break overly long lines
ivo
parents: 23938
diff changeset
312 $chfilelist
19085
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
313
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
314 printhead "--> usage of *1"
23939
f85dd30807a3 cosmetics, break overly long lines
ivo
parents: 23938
diff changeset
315 grep $_grepopts "[a-zA-Z0-9)]\+[ $TAB]*\*[ $TAB]*1[^.0-9ea-fA-F_]" \
f85dd30807a3 cosmetics, break overly long lines
ivo
parents: 23938
diff changeset
316 $chfilelist
19085
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
317
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
318 printhead "--> usage of +0"
23939
f85dd30807a3 cosmetics, break overly long lines
ivo
parents: 23938
diff changeset
319 grep $_grepopts "[a-zA-Z0-9)]\+[ $TAB]*+[ $TAB]*0[^.0-9xa-fA-F_]" \
f85dd30807a3 cosmetics, break overly long lines
ivo
parents: 23938
diff changeset
320 $chfilelist
19085
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
321
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
322 printhead "--> usage of -0"
23939
f85dd30807a3 cosmetics, break overly long lines
ivo
parents: 23938
diff changeset
323 grep $_grepopts "[a-zA-Z0-9)]\+[ $TAB]*-[ $TAB]*0[^.0-9xa-fA-F_]" \
f85dd30807a3 cosmetics, break overly long lines
ivo
parents: 23938
diff changeset
324 $chfilelist
19085
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
325 fi
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
326
e5ec659ec1c6 added checks for stupid code like casting return value of malloc and friends,
ivo
parents: 19083
diff changeset
327 # -----------------------------------------------------------------------------