C'est dans le rust-book mais ça a été ajouté récemment il me semble:
There’s one more restriction on implementing traits. Either the trait or the type you’re writing the impl for must be defined by you. So, we could implement the HasArea type for i32, because HasArea is in our code. But if we tried to implement Float, a trait provided by Rust, for i32, we could not, because neither the trait nor the type are in our code.
[^] # Re: Premières impressions
Posté par Shuba . En réponse à la dépêche Rust 1.0, entrée dans la période stable. Évalué à 6.
C'est dans le rust-book mais ça a été ajouté récemment il me semble:
Une RFC récente qui traite du sujet: https://github.com/rust-lang/rfcs/blob/master/text/1023-rebalancing-coherence.md
(mais je ne l'ai pas lue en détail donc je suis pas sûr que ce soit elle qui ajoute ces règles).