language changes: types and variants cannot share the same name now.