Treat warnings as errors and fixed warnings