Por que "limite de tempo de vida explícito obrigatório" para Box <T> em struct?

Nota do editor: este código não produz mais o mesmo erro apósRFC 599 foi implementado, mas os conceitos discutidos nas respostas ainda são válidos.

Estou tentando compilar este código:

trait A {
    fn f(&self);
}

struct S {
    a: Box<A>,
}

e estou recebendo este erro:

a.rs:6:13: 6:14 error: explicit lifetime bound required
a.rs:6     a: Box<A>,

eu queroS.a possuir uma instância deAe não veja como essa vida útil é apropriada aqui. O que preciso fazer para tornar o compilador feliz?

Minha versão Rust:

rustc --version
rustc 0.12.0-pre-nightly (79a5448f4 2014-09-13 20:36:02 +0000)

questionAnswers(2)

yourAnswerToTheQuestion