Why would it be safer to implement Vec as a "language feature" as opposed to implementing it in the library?
We actually used to implement Vec as a language feature, and it was a lot of work to write things like growth in raw LLVM IR (which is a miserable programming language) instead of just using a real programming language—Rust—to do it.