Compilação condicional no Rust 0.10?

Eu tenho usado 0,10 e recentemente configurei uma compilação do nightly para experimentar Box e amigos.

Agora eu tenho código para 0.10 usando~str e código para pre0.11 usandoString por causa deto_owned sendo obsoleto. Eu pensei que poderia fazer isso:

#[cfg(rust_version = "0.10")]
fn my_old_func() -> Option<~str> {
}

#[cfg(not(rust_version = "0.10")]
fn my_old_func() -> Option<String> {
}

E passar--cfg rust_version:0.11 durante a compilação. Mas o compilador ainda engasga com o agora removido~ operador. Existe uma maneira de ter código que funcione tanto em 0.10 quanto em 0.11 ainda não lançado usando compilação condicional ou algum outro mecanismo?

Eu acho que eu poderia voltar a usar cpp e #ifdef, mas isso parece sair da mentalidade do Rust.

questionAnswers(1)

yourAnswerToTheQuestion