repo.or.cz
/
smatch.git
/
search
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
log
|
graphiclog1
|
graphiclog2
|
commit
|
commitdiff
|
tree
|
refs
|
edit
|
fork
first
·
prev
·
next
smatch: make the --enable/disable options take strings
2018-10-31
Dan Carpen
t
er
s
match: make t
h
e
--enab
l
e/disa
b
le options take st
r
ings
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-10-31
J
o
hn Levon
clock()
is already defined on ill
u
mos,
s
o rena
m
e th
e
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-10-31
Jo
h
n Levo
n
Ignore "#
i
dent" as found i
n
s
o
me o
l
d
s
o
urce
s
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-10-31
John Levon
Use $(CF
L
AGS
)
when compiling smat
c
h
.
c
its
e
lf
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-10-31
Dan Carp
e
n
t
er
smatch_nul_terminated:
f
i
x comp
i
le
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-10-31
Dan Carpenter
u
n
tracked_param: fi
x
a NU
L
L dereferen
c
e
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-10-30
Da
n
C
arp
e
nter
uninitialized: fix a crash
i
ng bug pars
i
ng
"
return
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-10-23
Dan
C
ar
p
enter
n
ul_te
r
min
a
t
or: track wh
e
n strings have
a NUL terminat
o
r
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-10-18
Dan
Carpenter
user_data2: fix a type issue in caller_
i
n
f
o
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-10-18
Dan Carpe
n
ter
user_da
t
a: integers can't be
d
ereferen
c
ed
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-10-18
Dan Carpenter
compari
s
on: make
a
buffer larger to make GC
C
ha
p
py
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-10-18
Dan Carp
e
nte
r
data_source: track assignments better
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-10-18
Dan Carpenter
e
x
tra: prevent a d
i
vide by z
e
ro
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-10-18
Dan Car
p
enter
modifi
c
ation_
h
ook
s
: use
the
DB f
o
r
frob(&foo);
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-10-18
Dan Ca
r
penter
sva
l
: i
n
t
r
od
u
ce sval
_
binop_ov
e
rflows_no_s
i
gn
(
)
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-28
Dan
C
arpe
n
ter
extra: un
d
o bogus unop changes
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-27
D
an Car
p
ent
e
r
array_
v
al
u
e
s: fix up a
n
d support two dime
n
sio
n
al local
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-27
Dan Carpenter
pa
r
a
m
_
s
et: d
o
n't re
c
ord
a param_set
f
or p
+
+ changes
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-27
Dan
Carpen
t
e
r
fu
n
c
t
io
n
_hooks: re-hack a
r
ound moving the
fake parameter
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-26
Dan C
a
rpenter
array_values: store array va
l
ue
s
of struct member arrays
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-26
Dan
Carpe
n
ter
function_
h
ooks: ha
c
k around
fallout from moving the
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-24
Da
n
Ca
r
pe
n
ter
comp
a
rison: do
n
't return i
n
valid params in get_mask_compariso
n
()
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Dan
Carpenter
db: don't print
"
f
ailed to open"
w
a
r
n
ings
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
D
a
n C
a
rpen
t
e
r
pa
r
am_set: re
m
ove some d
e
ad code
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Da
n
Carpenter
mtag:
t
em
p
orar
i
ly d
i
sable generating
mtag for kmalloc(
)
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Dan
Carp
e
nter
ex
p
r
e
ssions: don
'
t cr
a
sh
o
n inv
a
li
d
co
d
e
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Dan Carpenter
extr
a
: fix a ty
p
e bug in in
s
erting info int
o
caller_info
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Dan Carpenter
kernel: don't insist that the parameter
i
s
n
ame
d
"e
r
ror"
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
D
a
n
Carpen
t
e
r
extra: ex
p
ort is_imp
o
ssible_vari
a
b
le()
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Dan
C
a
r
p
enter
flow: fix a crashing b
u
g
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Dan Carp
e
n
t
er
function
_
hooks: do the fak
e
p
a
r
ameter assignmen
t
afte
r
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Dan
Car
p
en
t
er
param_
l
imit: fix generi
f
y_mtag_ra
n
ge()
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Dan
C
arpenter
extr
a
: clear_pointed_
a
t
_
s
t
ate
(
)
i
s a nomod
s
tate
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Dan C
a
r
p
enter
param_set: handl
e
when the stack variable wa
s
modified
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Dan Carpent
e
r
parse_call_mat
h
: d
o
n
't say
the
retur
n
is equ
a
l to a
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Dan Carpenter
scope: fix is_outer_st
m
t()
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Dan
C
arpe
n
ter
sval:
h
and
l
e casting to boo
l
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Dan C
a
rpenter
array_
v
al
u
e
s
: don't crash o
n
invalid cod
e
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-20
Dan
Carpenter
no_
s
pec: record w
h
en fu
n
ctions
h
ave a barrier
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-14
Dan Ca
r
pe
n
ter
extra/t
y
pe:
f
i
x
type
o
f return PARAM_ADD/SET
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-14
Dan
Carpent
e
r
param_limit: mak
e
mtag lim
i
ts
m
ore generic
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-12
Dan Carpenter
param_set: don
'
t save if t
h
e parent is set
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-11
Dan Ca
r
penter
ato
m
ic
_
i
n
c_de
c
: ad
d
a cou
p
le mo
r
e functions
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-11
Dan
C
arpen
t
er
signed_integer_over
f
l
ow: ignore this for t
h
e
kernel
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-11
Dan Carpenter
math:
hand
l
e co
n
diti
o
n
als like: "a = b?: c;"
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-11
D
a
n Carpenter
nospec: don't fill the DB up w
i
th
g
arbag
e
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-11
Dan Carpenter
s
ize
o
f: fi
x
N
U
LL
d
e
reference parsi
n
g inva
l
id code
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-11
Dan C
a
r
p
e
n
ter
strings: tr
u
n
c
ating large st
r
ings causes SQL problems
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-11
Dan Car
p
e
nte
r
type_va
l
: don't
d
ouble
record globals
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-11
Dan C
a
rpenter
target: ma
n
ssize_t
be unsigned
l
ong
instead of u
n
signed
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-11
D
a
n
C
a
rpenter
extra
:
d
on't reset impossib
l
e states
after
a
condit
i
on
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-10
Dan Carpe
n
ter
array: store po
s
si
b
le
a
rray values for simple arrays
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-06
Dan Carpenter
m
t
ag: HACK: return false if
the m
t
ag is zero
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-06
Dan Carpenter
flow: fake an assign
statement for global initializers
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-06
Dan Carpenter
fl
o
w
: tweak how f
u
ncti
o
n timeou
t
s happen
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-06
Dan
C
arpen
t
er
db:
f
ix a
type bug
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-09-06
Dan Carpen
t
er
smatch_flow: don't
p
arse inli
n
e
f
u
nctions af
t
er we
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-31
Dan Carpente
r
mtag: a
d
d
s
t
ring information
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-31
Dan
C
arpenter
f
l
ow:
h
andl
e
__builtin_m
u
l
_o
v
e
r
flo
w
()
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-29
Dan Car
p
enter
kern
e
l_printf: silence
"
spec
i
fi
e
r
i
s c
a
s
t
f
rom pointer
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-28
D
a
n
C
a
rpenter
no
s
p
e
c:
t
urn off
spec
u
lati
o
n a
t
rmb(), smb_rmb() and
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-28
Dan
C
arpenter
check
_
signed: ign
o
re fake assignments
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-25
Dan C
a
rpente
r
mtag_data: clear
cache
at start of
f
u
nction
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-25
D
a
n Carpenter
nos
p
ec
:
f
i
x uninitialized pointer crash
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-24
D
a
n
Carpenter
he
l
per: fake c
a
lls are not equ
i
valent to anyt
h
ing
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-24
Da
n
C
arpenter
comparison: handle comparisons
:
if ((fo
o
= frob(
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-24
Dan
C
a
rpenter
com
p
arison
:
improve "foo = mi
n
(
.
.
.
);" assignment handl
i
ng
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-24
D
a
n Carp
e
n
t
e
r
comparison: ha
c
k a
r
ound some t
y
p
e bugs
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-24
Dan
C
ar
p
enter
mtag_data: remove duplica
t
e mtag_d
a
ta
and r
a
ndom small
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-24
Da
n
Carpen
t
er
container_of: fix a bug
i
n get_sha
r
ed
_
cnt()
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-24
Dan Ca
r
penter
check_check_deref: s
i
lence
s
o
m
e false
posit
i
ves
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-18
Dan Carpenter
nos
p
ec: store functions
t
h
at r
e
turn nospec
indexes
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-15
Dan Carpenter
nospec: handle CAL
L
_NOSPEC
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-14
D
a
n Carpenter
db: introdu
c
e t
h
e --db-
f
i
l
e=/path/to/smatch_db
.
sq
l
it
e
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-13
Da
n
Ca
r
pent
e
r
user_data2: use fu
n
c
ti
o
n returns in points_t
o
_
u
ser_d
a
ta
(
)
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-13
Dan Carpenter
files
:
che
c
k for
sch
e
ma fi
l
e
s
re
l
a
t
i
ve to the bin_dir
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-13
Dan Carpenter
smatch
.
c: e
x
p
o
rt bi
n
_d
i
r to everyone
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-10
D
a
n C
a
r
p
e
nter
core: pr
i
nt the
full
p
a
t
h whe
n
--
i
nfo is us
e
d
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-08
Dan
Car
p
e
nter
user_data: impro
v
e
h
o
w returned data is handled
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-08
Dan C
a
rpenter
c
apped:
s
et returned struct
memb
e
rs to cappe
d
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-08-06
Dan Carpenter
user_data: fix validation test
for r
e
turned stru
c
t
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Dan Carpenter
im
p
lied: don'
t
p
r
int so many "turni
n
g
o
f
f impli
c
ations
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
D
an Carpe
n
te
r
mtag: delete some bogus c
o
de
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Dan C
a
rpenter
mtag_
d
ata:
u
p
d
a
te mtag
_
d
ata to use get_
m
tag
_
addr_sval()
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
D
a
n Car
p
enter
mtag: fix expr_to_mtag_offset()
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Dan Carpenter
mt
a
g:
introduce ge
t
_mtag_
a
ddr_
s
val()
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Dan
C
a
r
pent
e
r
param
_
to_mtag_data:
rename "data_name" -
-
> "name"
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Dan
Carpen
t
er
mtag: do
n
'
t set the
n
ame in expr_to_mtag_offset()
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Dan
C
a
r
penter
mtag_data: cache DB r
e
sults
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Dan Carpenter
ext
r
a:
move
g
et_address_rl()
out
o
f get_
e
xtra_
s
tate()
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
D
a
n
C
arp
e
nter
implicit_dependencies: white space
c
hange
s
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Da
n
C
a
rpenter
implicit_
d
ependenci
e
s:
o
nly
ena
b
le this with the -
.
.
.
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Da
n
Car
p
en
t
er
i
m
plicit_dependenc
i
es: fi
x
a crashin
g
b
u
g
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Andrew A
d
ay
sav
e
d no_Str
u
ct graph and b
e
g
i
n arg filteri
n
g
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
An
d
r
e
w
Aday
Generat
e
j
son for
w
ithout
str
u
cts
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Andrew
A
day
Test: ignore
s
truct f
i
elds
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Andrew
A
d
ay
upda
t
e
i
mplicit dep
s
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Andrew Aday
regen
i
mplicit dep after
m
e
r
g
i
n
g
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Andrew Aday
modif
i
ed smatch to c
a
t
c
h msy
n
c
and si
m
ilar funcs
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
2018-07-31
Andrew Ad
a
y
update re
a
dme an
d
manually a
d
d dep
s
for
msync
Signed-off-by:
Dan Carpenter
<dan.carpenter@oracle.com>
commit
|
commitdiff
|
tree
next