It is expected that code should compile without any errors and warnings before committing it. But, it is also good to check this for both Release and Debug versions. Why? The primary reason is that assertions are not defined in Release mode. So, code that compiles properly in Release mode, might still cause compile errors in Debug mode. There could be other differences in the Project properties for these 2 modes.