Fix global type not getting changed when other type is Weak