Skip to content

core::slice::Items is lacking the proper lifetime annotations #16941

Closed
@nikomatsakis

Description

@nikomatsakis

std::slice::Items should require that T:'a, but it does not. It is able to do this due to its unsafe implementation. The following test case fails to compile as a result:

use std::slice::Items;

pub trait MyVec<T> : Slice<T> {
  fn iter<'a>(&'a self) -> Items<'a, T> {
    self.as_slice().iter()
  }
}

fn main() {

}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions