enable all warnings, treat warnings as errors