4 ( .
"${tools_dir}"/check-misc.sh
) || fail
=$?
6 if grep -n '^ *GError *\*[[:alpha:]_][[:alnum:]_]* *;' "$@"
8 echo "^^^ The above files contain uninitialized GError*s - they should be"
9 echo " initialized to NULL"
13 # The first regex finds function calls like foo() (as opposed to foo ()).
14 # It attempts to ignore string constants (may cause false negatives).
15 # The second and third ignore block comments (gtkdoc uses foo() as markup).
16 # The fourth ignores cpp so you can
17 # #define foo(bar) (_real_foo (__FUNC__, bar)) (cpp insists on foo() style).
18 if grep -n '^[^"]*[[:lower:]](' "$@" \
19 |
grep -v '^[-[:alnum:]_./]*:[[:digit:]]*: *\*' \
20 |
grep -v '^[-[:alnum:]_./]*:[[:digit:]]*: */\*' \
21 |
grep -v '^[-[:alnum:]_./]*:[[:digit:]]*: *#'
23 echo "^^^ Our coding style is to use function calls like foo (), not foo()"
27 if grep -En '[(][[:alnum:]_]+ ?\*[)][(]?[[:alpha:]_]' "$@"; then
28 echo "^^^ Our coding style is to have a space between a cast and the "
29 echo " thing being cast"
33 # this only spots casts
34 if grep -En '[(][[:alnum:]_]+\*+[)]' "$@"; then
35 echo "^^^ Our coding style is to have a space before the * of pointer types"
39 # ... and this only spots variable declarations and function return types
40 if grep -En '^ *(static |const |)* *[[:alnum:]_]+\*+([[:alnum:]_]|;|$)' \
42 echo "^^^ Our coding style is to have a space before the * of pointer types"
47 if test -n "$CHECK_FOR_LONG_LINES"
49 if egrep -n '.{80,}' "$@"
51 echo "^^^ The above files contain long lines"