Yeah it seems like you would need some kind of guard to make sure you don't violate any of the lifetimes that could be tucked away. Still good work!
I guess compiler plugins and libraries will eventually fill in the gaps, until then I guess I just have to be creative :)