I installed the source project, converted it to VS2008, and did a clean compile.
Many irrelevant build warnings appeared which I simply ignored, but there were some valid bugs found by the build.
aastr.c @30 should appear as follows
[parens missing]
#define bit(a) (1<<(a))
mgame.cpp @1372 should appear as follows
[variable unused]
//static av_frame_time = 0;
mview.cpp @635 should appear as follows
[ambiguous call to "pow", cast to double makes version to use explicit]
n.z = ref_size * pow( 2, (double)(iround( ceil(log(n.z/ref_size) / log(2.0)))) );
errors.cpp @254 should appear as follows
[unnecessarily converting from const to non-const]
const char *_file = strstr(file, "source");
ggob.cpp @438 should appear as follows
[ambiguous call to "sqrt", explicit 3.0 makes version to use explicit]
if (e > sqrt(3.0*base) + 2)
vanguard.cpp @654 should appear as follows
[ambiguous call to "pow", explicit 2.0 makes version to use explicit]
if(pow(pow(w-w2,2.0)+pow(h-h2,2.0),.5)<MinDistance) ok=0;