ARMANRIAZIRUSTERRORE0308MISMISTATTED TYPED TYPE TYPE PARAMETER ``, Fund Associated Type

//Resolve IntoIterator<Item=S>
fn sum_list<I,S>(l:I,mut s:S)->S
    where I: IntoIterator,
          S: AddAssign,
{

    let mut it = l.into_iter();
    while let Some(n) = it.next(){
        s +=n //Error rised
    }
    s
}
ArmanRiazi