I'm having a conflict between VXL and windows.h that I don't quite understand. On compilation, I get the warnings:

vil/vil_convert.h(1219): warning C4003: not enough actual parameters for macro 'max'
vil/vil_convert.h(1220): warning C4003: not enough actual parameters for macro 'min'

To recreate this warning, I can make a very simple header files that has:

#include <Windows.h>
#include <vil/vil_convert.h>

If I switch the order of these includes, the problem goes away. Trying to figure out the precise order of the includes in a larger project, however, is turning out to be very time-consuming. Does anyone know why this might be happening, or if there is a more correct solution than re-ordering the includes?

FYI, I'm using VS2010 and Windows XP.

Thanks in advance for any help or pointers!

:) Michael