add more compiler checks