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
db: cleanup get_row_count()
2017-01-13
Dan Carpenter
db: clea
n
up g
e
t_row_
c
ount()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
Dan
C
arpenter
implied:
rename a function
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
Dan Carpenter
estate: add an esta
t
e_
i
s
_empt
y
() f
u
ncti
o
n
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
Dan C
a
r
pente
r
db/ke
r
nel
.
no_inline: don't p
a
r
s
e
t
he b
i
te swap
f
u
nctions
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
Da
n
Carpenter
kernel: parse ATOMIC
_
SET()
m
a
nual
l
y
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
Dan Car
p
ente
r
db/kern
e
l
.
return_fixes: add some
m
ore
fixe
s
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
Dan Ca
r
penter
db/fixup_kernel
.
sh:
h
and
l
e
_
_
kernel_write()
a
bit bette
r
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
Da
n
Carpenter
vim_
d
b: handle
o
lder versi
o
n
s
of vim
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-12
D
a
n Carpent
e
r
db/fixup_k
e
rnel: handle __b
u
iltin_bswap64()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-10
Dan
C
arpe
n
ter
f
un
c
tion_hooks: change or
d
er of h
o
w d
b
verse implie
d
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-10
Dan Carp
e
nter
param_
l
imit: don't insert empty states in
t
o th
e
db
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-10
D
a
n
Carpenter
r
a
nges:
u
se
a
ha
c
k arou
n
d
so wh
e
n merging rang
e
s
of
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-10
Dan Carpenter
t
y
pe_
v
al: fix a memor
y
leak
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-10
Da
n
Carpente
r
f
unction_
h
ooks, db: han
d
le
P
A
RAM_LIMIT for str
u
ct memb
e
rs
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-10
Da
n
Carp
e
nter
im
p
lied: fix a
bug han
d
ling parameter implications
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-10
Dan Carpenter
i
m
plie
d
:
a
d
d
more debug information
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-05
Dan
C
arpe
n
t
er
db
:
sort retu
r
n_states by file
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-04
Dan Carp
e
n
t
er
flow: tiny cleanup handling assignm
e
nts
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-04
Dan C
a
rpenter
flow: remove an unneeded con
d
i
t
io
n
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2017-01-04
D
an
Carp
e
nter
f
low: ren
a
me a variable
"
tmp" ->
"righ
t
"
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-12-15
Dan Carpenter
kernel
.
ignored
_
m
a
c
ros:
a
dd LASSERT() fro
m
lustre
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-12-13
Dan Carpenter
funct
i
on_hooks, db: use INTERNAL as
the marker for
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-12-13
Dan Carpen
t
e
r
db: ha
n
dl
e
fun
c
tion
pointers better
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-30
Dan
C
arpenter
user_data2: ma
t
h: function
c
alls should
b
e handled
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-30
Dan C
a
rpent
e
r
math:
f
ix a type
i
ssue with
M
O
D
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-28
Dan Car
p
enter
u
ntracked
_
para
m
:
f
u
n
ctions that a
r
e too hairy a
r
e untrackable
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-25
D
a
n Carpenter
address: simp
l
ify is_non_nu
l
l_a
r
r
a
y()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-25
Dan Carpenter
t
y
pe_val: use th
e
co
r
rec
t
type
in
g
et_db_type_rl()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-25
Dan Car
p
ente
r
implied: fix a bug with borrowed
implications
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-09
Dan Ca
r
penter
f
l
ow: handled decla
r
ed
l
abe
l
s b
e
t
t
e
r
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-11-09
Dan
C
arpenter
ra
n
ges
:
rea
d
u64max correctly
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-18
Dan
Carpenter
smatch:
r
em
o
v
e
tests to see if an array is NUL
L
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-18
Dan
Carpenter
extr
a
: h
a
ndle "if (a + b < a) {
"
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-18
D
a
n Car
p
enter
slist: Sile
n
ce a
s
m
a
tch
w
ar
n
ing
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-18
Dan Ca
r
penter
debug:
a
dd the __smatch_a
b
solute(
)
hook
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-18
Dan Ca
r
p
enter
buf_size: Using plain in
t
eger as N
U
LL
p
ointer
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-18
Da
n
Carpenter
db: Using plain in
t
eger as NULL pointe
r
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-18
Dan Carpen
t
er
ast-model: Using pla
i
n int
e
ger as NULL pointer
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carpenter
debug: a
d
d a __smatch_a
b
solute(
)
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Da
n
Carpenter
us
e
r_da
t
a
: short circuit a
b
unch
o
f
code
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carpenter
dma
_
m
a
pping_error: add
p
c
i_dma_mapping_err
o
r() to this
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan
C
a
r
p
ente
r
continue_vs_b
r
eak:
a
dd it ch
e
ck
l
i
st
.
h
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Car
p
enter
s
match_addre
s
s:
d
o
n
't cr
a
sh
o
n
invalid co
d
e
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carpenter
*new* continue_v
s
_bre
a
k: co
m
plain
if
c
ontinu
e
is used
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan
C
arp
e
nt
e
r
smatch
.
h:
r
eserve some db types for later
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
D
an C
a
rp
e
nte
r
sm
a
tch
.
h: shuffle some declar
a
tions
a
ro
u
n
d
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan C
a
rpenter
sma
t
ch
.
h: silence a
c
ompile
w
arning
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan C
a
rpenter
capped: set it t
o
uncapped
if
i
t's modifie
d
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
D
an Carpenter
db
/
fixu
p
_ke
r
nel
.
sh: work around for __to_fd()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Da
n
Carpenter
db/fix
u
p_k
e
rnel
.
sh: wo
r
k
around for g
f
s2_ea_fi
n
d
()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan
C
arpe
n
ter
db/
k
ernel
.
ret
u
rn_f
i
xe
s
: speci
f
y
s
ome functions th
a
t
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carpenter
i
mplied: add
m
o
re information to the debug output
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
D
an C
a
rpenter
debug:
prin
t
if you give a bad che
c
k name to
__sma
t
c
h_states()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carp
e
nter
smatch_data/wine: upda
t
e wine data files
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Da
n
Carpenter
extra: add
m
ore paramete
r
d
ereferences
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
D
a
n Carpenter
mat
h
: don't
crash on invalid code
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carpenter
user_data2:
s
kb->data
is not u
s
er dat
a
, s
k
b->
d
ata[0]
i
s
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carpente
r
type_v
a
lu
e
: it doe
s
n't make sense to talk
about the
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan
C
arpenter
extra: im
p
rove how
"
if
(foo &
~
0xF)" is handled
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan Carpenter
m
a
th: ig
n
or
e
b
y
te swaps
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Dan C
a
rpen
t
er
flow: handle while (42) {
.
.
.
} loops
better
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
Da
n
Carpen
t
er
comparison,function
_
hooks
:
remove impossible paths
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-16
D
an Carpenter
para
m
_
c
om
p
are_limit: like
p
aram_limit but for comparisons
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-15
D
a
n Carpenter
comparison
:
add a FIXME r
e
g
ardin
g
a bu
g
I noticed
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-15
Dan C
a
rpenter
compa
r
ison:
l
oad/use return c
o
m
p
arisons in the cross
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-15
Dan
C
arpen
t
er
comparison: load struct me
m
ber info i
n
to
the caller_info
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-15
Dan
C
a
rpenter
compa
r
is
o
n
: load th
e
c
orrect c
o
mparison
information
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-12
Dan Carpe
n
ter
flow: don't call scope hook
s
until after t
h
e
END_FU
N
C_HOOK
s
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-12
Dan Car
p
e
nter
modifi
c
a
t
i
o
n
_ho
o
ks
:
going out of scope i
s
not a modification
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-12
Dan
C
arpenter
db/fixup_k
e
rnel
.
sh
:
update
g
et_us
e
r_pages()
to match
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-11
Dan Carpen
t
er
function_hooks: pull is_im
p
ossible_dat
a
(
) i
n
to its
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-11
Dan Carpenter
comparison:
c
leanu
p
hand
l
e_comparis
o
n()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-11
Dan Carpenter
comparison: e
x
port
some functions
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-09
Dan C
a
rpen
t
er
state
s
: nullif
y
_path(
)
shou
l
d do
f
ree th
e
fake_cur_stree
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-08
Dan Carpenter
db: handle co
m
par
i
sons t
h
at we know are true better
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-08
Dan Carpenter
d
b
:
mar
k
s
o
me true fals
e
p
aths imp
o
ssible based on
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-08
Da
n
C
a
rpenter
r
anges, db: if we c
a
n't fi
l
ter by c
o
mparison then use
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-08
Dan Carp
e
nter
db: handle nested
cal
l
s bet
t
er
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-04
Dan Carpenter
extra:
r
e-writ
e
handle_AND_condition()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-01
Dan Carpenter
implied: handle imp
o
ssible
pa
t
hs from complicated switch
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-01
Dan
C
a
rpenter
impli
e
d: get
r
i
d
of the ->impl
i
ed
member
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-01
Dan
C
arpenter
imp
l
ied: get rid
of
a t
e
mpor
a
ry
vari
a
b
le
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-01
D
a
n C
a
r
p
enter
smatch_data/wi
n
e
.
no_
r
eturn_funcs: add more functions
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-01
Dan
Carpe
n
ter
smatch_scripts/ge
n
_no_ret
u
rn_funcs
:
fix thi
s
for
o
ther
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-07-01
Dan Ca
r
penter
pre-process: ma
k
e -nostdinc
w
ork again
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-30
D
a
n
C
arpenter
c
h
eck_win
e
: make report
(
R_FATAL
,
.
.
.
) a
nullify the
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-30
D
an
C
a
rpenter
valid
a
tion/sm_WtoA:
a
dd sing
l
e q
u
otes in output
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-30
Dan Carpente
r
smatch_scripts: up
d
a
t
e t
h
e
gen_* scri
p
ts to
t
a
k
e
a
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-30
D
a
n Carp
e
nter
parse: ignore
_
Pr
a
g
m
a
()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-30
D
a
n
C
arpenter
s
match_data
/
wine
.
ignored_macros: add
ok()
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-30
Dan Car
p
enter
s
m
atch_d
a
t
a/wine
.
no_re
t
u
rn_
f
u
n
cs
:
update
t
h
e
lis
t
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-30
Dan Carpenter
spar
s
e: add
/
usr/include/x86_64-linux-gnu/
i
n
clude
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-30
Dan C
a
r
p
enter
wine_W
t
oA:
a
dd
s
ingled
quotes
in the ou
t
put
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-25
Dan Car
p
en
t
er
d
b
: remove PRAGMA synchronous = OFF
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-24
Dan Car
p
enter
avl:
m
ake
g
et_stree_id(
)
r
eturn -1
i
f
the stree
p
ointer
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-24
D
an C
a
rpent
e
r
impl
i
ed: handle
->implied states d
i
fferently
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-24
Dan C
a
rpe
n
ter
slis
t
,
imp
l
ied: preser
v
e the ent
i
re cur_stree
i
n
the
.
.
.
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-24
Dan Carpenter
i
m
plied
:
fix
a
bug where we imply
th
e
wron
g
t
h
i
ng
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-24
Dan Ca
r
pente
r
impli
e
d: r
e
move an indent level
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
2016-06-24
D
a
n Carpenter
imp
l
ied: change debug output
Signed-off-by: Dan Carpenter <
dan.carpenter@oracle.com
>
commit
|
commitdiff
|
tree
next