adding warning supressions and -Xlint option