xref: /linux/scripts/checker-valid.sh (revision fd69b2f7d5f4e1d89cea4cdfa6f15e7fa53d8358)
1*fd69b2f7SPeter Zijlstra#!/bin/sh -eu
2*fd69b2f7SPeter Zijlstra# SPDX-License-Identifier: GPL-2.0
3*fd69b2f7SPeter Zijlstra
4*fd69b2f7SPeter Zijlstra[ ! -x "$(command -v "$1")" ] && exit 1
5*fd69b2f7SPeter Zijlstra
6*fd69b2f7SPeter Zijlstratmp_file=$(mktemp)
7*fd69b2f7SPeter Zijlstratrap "rm -f $tmp_file" EXIT
8*fd69b2f7SPeter Zijlstra
9*fd69b2f7SPeter Zijlstracat << EOF >$tmp_file
10*fd69b2f7SPeter Zijlstrastatic inline int u(const int *q)
11*fd69b2f7SPeter Zijlstra{
12*fd69b2f7SPeter Zijlstra	__typeof_unqual__(*q) v = *q;
13*fd69b2f7SPeter Zijlstra	return v;
14*fd69b2f7SPeter Zijlstra}
15*fd69b2f7SPeter ZijlstraEOF
16*fd69b2f7SPeter Zijlstra
17*fd69b2f7SPeter Zijlstra# sparse happily exits with 0 on error so validate
18*fd69b2f7SPeter Zijlstra# there is none on stderr. Use awk as grep is a pain with sh -e
19*fd69b2f7SPeter Zijlstra$@ $tmp_file 2>&1 | awk -v c=1 '/error/{c=0}END{print c}'
20