feature gates type annotation and destructuring syntax