Implementation of Type level warnings