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
type_val: handle |= type assignments
2017-01-27
Dan
C
a
r
penter
type_val: handle |= type
assignmen
t
s
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-23
D
a
n Car
p
ente
r
d
b: rename "func
t
ion_type_info"
table
t
o
"function_type"
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-20
Dan Carpen
t
er
user
_
data2: if a user_d
a
t
a
is equal to non-user dat
a
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-20
Dan
C
a
rpenter
pre-process: try f
i
nd any
i
nc
l
ude
t
hat looks like it
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-20
Dan Carpent
e
r
c
o
mpar
i
s
on:
remove some
local
_
d
eb
u
g information
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-20
Dan Carpe
n
ter
db/fixu
p
_kernel
.
sh:
w
rite to t
h
e
t
e
mporary DB in
s
tead
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-20
Dan Carpen
t
e
r
extra: fix typ
e
issue handling ++= and --= operations
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-20
Dan
Carpenter
math: remove uncommitted function call
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-20
Dan Carp
e
n
t
er
m
a
th:
fix
h
a
ndling of sizeof() __le1
6
types
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-20
Dan
Carpen
t
er
math: handle real_ab
s
olute variabl
e
s mor
e
a
ccurat
e
ly
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-20
D
an
C
a
rpenter
real_absol
u
te:
i
gnore itera
t
or pre statements
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-20
Dan Car
p
ent
e
r
h
elper: In
e
xpr_to_str() remove extra p
a
renth
e
si
s
around
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-20
Dan Ca
r
pen
t
er
db: in
t
r
odu
c
e sql_insert_data_i
n
fo
_
var_sym()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-20
D
an
C
arpenter
db: use "ext
e
rn
"
i
n
st
e
ad of the fil
e
name
for globals
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-20
Dan Carpenter
sparse:
introduce par
s
e
_error vari
a
bl
e
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-20
Dan Carpenter
user_data2: handle functions that mer
e
l
y
return passed
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-19
D
a
n Car
p
e
n
t
er
hooks: introd
u
ce ASSIGNMENT_HOOK_AF
T
ER
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-19
Dan C
a
rpenter
d
b
: give
u
p
handlin
g
function
p
o
in
t
ers if ther
e
are
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-18
Dan Carpenter
user_data2
:
remove some debug printfs
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-18
Dan C
a
rpenter
user_d
a
t
a
2: don't set
t
he function
i
t
self t
o
us
e
r_d
a
ta
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-18
Da
n
Carpe
n
te
r
user_data2:
improve handling
w
h
e
n
we return user d
a
ta
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-17
Dan Carp
e
nter
function_hooks: don'
t
mark it as i
m
possible
if a
funct
i
on
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-14
D
an Carpenter
com
p
arison: modify the links at at
s
t
art
o
f
an
assignmen
t
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-13
Dan Car
p
en
t
er
db: cleanu
p
get_row_coun
t
()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
D
an Carpenter
imp
l
i
ed: rename a function
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
D
a
n Carpen
t
er
estate: ad
d
an est
a
te_is_empty() fu
n
ctio
n
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
Dan Ca
r
penter
db/kernel
.
no_inline
:
don't parse
t
h
e
b
ite swa
p
functions
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
Dan
C
arpenter
k
ernel: parse ATO
M
IC_SET(
)
manually
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
Dan Carpenter
d
b
/
kerne
l
.
r
e
tur
n
_fi
x
es:
a
dd s
o
me more fixes
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
Dan Carpenter
d
b
/fixup_kernel
.
sh: han
d
le __
k
ernel_write() a bit better
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
Dan Carpen
t
e
r
vim_db: handle older v
e
rsions o
f
v
im
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
Dan Carpenter
db/fix
u
p_kernel: handle _
_
bu
i
ltin_bswap64()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-10
Dan Carpenter
function_hook
s
: change order of h
o
w db
verse implied
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-10
Dan Carpenter
param_limit:
d
on't i
n
se
r
t
em
p
ty stat
e
s into the db
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-10
Dan C
a
rpenter
rang
e
s: use a hack arou
n
d
s
o when merging
rang
e
s of
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-10
D
a
n Ca
r
penter
t
y
pe_val: fix a memory leak
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-10
Dan
Carpenter
funct
i
on_
h
ooks, db: handle PARAM_LIMIT
f
o
r struct membe
r
s
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-10
Dan Carpente
r
implied:
fix a bug ha
n
dling
parameter i
m
pli
c
ations
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-10
Da
n
C
arp
e
nter
im
p
lied: ad
d
mor
e
debug
i
nformat
i
o
n
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-05
Dan
Carpenter
db: sort return_s
t
ates by f
i
le
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-04
Dan Carpenter
flow: tiny
c
leanup h
a
ndling assignme
n
ts
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-04
Dan Carpenter
flow: remove
a
n unn
e
e
ded
co
n
d
i
tion
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-04
Dan
C
a
r
penter
f
l
ow: rename
a varia
b
le "t
m
p" -> "right"
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-12-15
Dan Carp
e
n
t
er
k
e
r
nel
.
ig
n
o
r
ed_macros: add LASSERT() from
l
u
str
e
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-12-13
D
a
n Carpente
r
funct
i
on_hooks, db:
u
se INTER
N
AL
a
s the
marker for
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-12-13
D
a
n Carp
e
nter
d
b:
handle function
poi
n
ters
b
ette
r
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-30
Dan Carpenter
user_data2: m
a
th: function calls s
h
ould b
e
handled
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-30
Dan Carpen
t
er
m
ath: fix a ty
p
e
i
ssue
wi
t
h MOD
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-28
D
an
C
arpenter
untracke
d
_p
a
ram: functi
o
ns that are too ha
i
r
y are
u
ntrac
k
able
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-25
Dan C
a
rpenter
add
r
ess: simplify is_non_null_arra
y
()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-25
Dan Carpente
r
type
_
val:
u
se th
e
corre
c
t type in
get_
d
b_type_rl
(
)
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-25
D
an Carp
e
nter
implied: fix
a bug with bo
r
r
o
wed i
m
plications
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-09
Dan Carpen
t
er
flow: handled
d
e
clared labe
l
s bet
t
er
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-09
Dan Carpenter
ranges: read
u
64ma
x
correc
t
ly
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-18
Dan Carpenter
smatch: remove
t
ests
to see
if a
n
array is
NULL
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-18
Dan Ca
r
penter
extra: handle "i
f
(a
+ b
< a) { "
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-18
Dan Carpenter
s
l
is
t
:
Silen
c
e
a smatc
h
warning
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-18
Dan Ca
r
penter
de
b
ug:
a
d
d the
__smatch_absolut
e
() hook
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-18
Dan
C
ar
p
enter
buf_size: Usi
n
g plain
i
nteger as NULL pointe
r
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-18
Dan C
a
r
penter
db: U
s
in
g
plain integer as NULL
pointer
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-18
Dan C
a
rpenter
ast-
m
odel
:
Using plain
integer as N
U
L
L pointer
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carpenter
debug: add a
__smatch_absolute
(
)
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
D
a
n C
a
r
penter
us
e
r
_data
:
short ci
r
cuit a bunch of c
o
d
e
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carpen
t
er
dma_mapping_erro
r
:
add pci_dma_mappin
g
_er
r
or()
to this
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Ca
r
penter
c
o
nti
n
ue_vs_break: a
d
d
it chec
k
list
.
h
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Da
n
C
ar
p
e
n
ter
s
match_address: don't crash on invalid code
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
D
a
n
C
a
rpenter
*new*
c
on
t
i
nue_v
s
_
b
re
a
k
:
complain if c
o
ntinue is used
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan
C
arpenter
smatch
.
h: reserve s
o
me db t
y
p
e
s f
o
r later
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan
C
arpenter
sma
t
c
h
.
h: shu
f
f
l
e some declarations a
r
o
u
nd
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Car
p
e
nter
smatc
h
.
h
: silence a compile warning
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Da
n
Carpenter
capped: set i
t
to uncapped if it's modif
i
ed
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carpenter
db/
f
i
xup_kernel
.
sh: wor
k
around for __to_fd()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carp
e
n
ter
db/fixup_kernel
.
sh: work around
for gfs2_ea_f
i
nd()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Ca
r
penter
db/kernel
.
re
t
urn_fix
e
s
:
specify some fu
n
ctions t
h
at
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carp
e
nter
implied: add more information to the
d
ebug ou
t
pu
t
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carpenter
debug: print
if you give a b
a
d check name
t
o
__sm
a
tch
_
states()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Car
p
enter
smat
c
h
_
da
t
a/wine: update wine
d
ata
fil
e
s
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Da
n
C
arpente
r
extra: add
m
ore
p
arameter dereferences
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
D
an Carpenter
math
:
d
o
n't cras
h
on invalid code
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan C
a
rpente
r
user_data2: s
k
b-
>
d
a
ta is n
o
t user data, skb->data[0] is
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
D
an Carpenter
type_
v
alue: it
does
n
't make sense to talk about the
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carpenter
extra: improve how "if (foo & ~0xF
)
" is
handled
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carpent
e
r
math:
i
gnore b
y
t
e swaps
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
D
a
n
C
a
rpen
t
er
flow:
h
a
n
dle while (42)
{
.
.
.
} loops be
t
ter
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
D
a
n
Carpente
r
comparison,fu
n
cti
o
n_ho
o
ks
:
remove impos
s
ib
l
e
pa
t
hs
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carpenter
param_compare_limit: like param_limit but for c
o
mpar
i
so
n
s
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-15
D
a
n Carpenter
c
o
m
pariso
n
: add a FIXME
r
e
garding a bug I no
t
iced
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-15
Dan Carpenter
comparison:
load/use return comparis
o
ns in the cross
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-15
D
a
n Car
p
enter
co
m
pa
r
ison: load
s
tr
u
ct membe
r
info
into the c
a
ller_info
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-15
D
an Carpenter
compar
i
son: loa
d
the correc
t
comparison informa
t
io
n
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-12
D
an Carpenter
flo
w
: do
n
't call scope hooks unt
i
l after the
END_FUNC_HOO
K
s
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-12
D
an Carpenter
modification_ho
o
ks: goin
g
out of scope
is
n
ot a modification
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-12
D
a
n
Carp
e
nter
db/fixup_kernel
.
sh: upd
a
te
g
e
t_user
_
pages() t
o
mat
c
h
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-11
D
a
n Carp
e
nter
function
_
h
ooks: pull is_impos
s
ibl
e
_data
(
) into its
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-11
Dan
C
a
rpenter
c
o
m
parison:
c
leanup hand
l
e_compari
s
on
(
)
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-11
Dan
Carp
e
nter
comp
a
rison: export some f
u
nctions
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-09
Dan
Carp
e
nt
e
r
sta
t
es: nu
l
lify_
p
ath()
s
hould do f
r
ee the fake_cu
r
_
s
tree
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-08
Dan Carpenter
db:
han
d
le comparisons
t
ha
t
we know a
r
e
true
b
etter
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-08
Dan
Carpenter
db: mark so
m
e true
fa
l
s
e
p
aths im
p
ossible based
on
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-08
Dan C
a
rp
e
nte
r
ranges, db: if
we
c
an't filter by c
o
mpariso
n
then use
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
next