@@ -581,15 +581,19 @@ add_tfunc(nfields, 1, 1, nfields_tfunc, 1)
581581add_tfunc (Core. _expr, 1 , INT_INF, @nospecs ((π:: AbstractLattice , args... )-> Expr), 100 )
582582add_tfunc (svec, 0 , INT_INF, @nospecs ((π:: AbstractLattice , args... )-> SimpleVector), 20 )
583583
584- @nospecs  function  _svec_len_tfunc (π :: AbstractLattice , s)
584+ @nospecs  function  _svec_len_tfunc (:: AbstractLattice , s)
585585    if  isa (s, Const) &&  isa (s. val, SimpleVector)
586586        return  Const (length (s. val))
587587    end 
588588    return  Int
589589end 
590590add_tfunc (Core. _svec_len, 1 , 1 , _svec_len_tfunc, 1 )
591+ @nospecs  function  _svec_len_nothrow (π:: AbstractLattice , s)
592+     β  =  partialorder (π)
593+     return  s β  SimpleVector
594+ end 
591595
592- @nospecs  function  _svec_ref_tfunc (π :: AbstractLattice , s, i)
596+ @nospecs  function  _svec_ref_tfunc (:: AbstractLattice , s, i)
593597    if  isa (s, Const) &&  isa (i, Const)
594598        s, i =  s. val, i. val
595599        if  isa (s, SimpleVector) &&  isa (i, Int)
@@ -599,7 +603,7 @@ add_tfunc(Core._svec_len, 1, 1, _svec_len_tfunc, 1)
599603    return  Any
600604end 
601605add_tfunc (Core. _svec_ref, 2 , 2 , _svec_ref_tfunc, 1 )
602- @nospecs  function  typevar_tfunc (π :: AbstractLattice , n, lb_arg, ub_arg)
606+ @nospecs  function  typevar_tfunc (:: AbstractLattice , n, lb_arg, ub_arg)
603607    lb =  Union{}
604608    ub =  Any
605609    ub_certain =  lb_certain =  true 
@@ -2338,7 +2342,7 @@ function _builtin_nothrow(π::AbstractLattice, @nospecialize(f::Builtin), argt
23382342        return  compilerbarrier_nothrow (argtypes[1 ], nothing )
23392343    elseif  f ===  Core. _svec_len
23402344        na ==  1  ||  return  false 
2341-         return  _svec_len_tfunc (π, argtypes[1 ])  isa  Const 
2345+         return  _svec_len_nothrow (π, argtypes[1 ])
23422346    elseif  f ===  Core. _svec_ref
23432347        na ==  2  ||  return  false 
23442348        return  _svec_ref_tfunc (π, argtypes[1 ], argtypes[2 ]) isa  Const
0 commit comments