Fix source compatibility for VC++

1. __func__ macro
2. UTF8 literal
3. header ctime