Fix macro condition
Add visual studio warnings