title: Conversion between const wchar_t* and const char*, not allowed using qt
body: <p>I am trying to use the library <a href="https://sourceforge.net/p/simplexlsx/wiki/Home/" rel="nofollow">simplexlsxwriter</a>  with Qt, however when i try to compile I met the following error on several place in the code : </p>
  
  <p>"cannot convert 'const TCHAR* {aka const wchar_t*}' to 'const char*' for argument '1' to 'size_t strlen(const char*)'"</p>
  
  <p>The line in question is:</p>
  
  <pre><code>bool HasZipSuffix(const TCHAR *fn) { 
      const TCHAR *ext = fn+_tcslen(fn);
  }
  </code></pre>
  
  <p>In order to remove the error i tried the following:</p>
  
  <pre><code>bool HasZipSuffix(const TCHAR *fn) { 
      const char* fn_cc = reinterpret_cast&lt;const char*&gt; (fn);
      const TCHAR *ext = fn+_tcslen(fn_cc );
  }
  </code></pre>
  
  <p>It works, however it introduces a lot of errors (about 3720 issues) during compilations. I use mingw53_32 under Qt.</p>
  
  <p>It is very strange since when i create a simple Makefile as follow:</p>
  
  <pre><code>ROOT_DIR := ./
  
  CXXFLAGS=-MMD -MP -Wall
  CXXFLAGS+= -I$(ROOT_DIR)
  
  src = Zip/zip.cpp \
      Xlsx/Chartsheet.cpp \
      Xlsx/Workbook.cpp \
      Xlsx/Worksheet.cpp \
      Xlsx/XlsxHeaders.cpp \
      main.cpp 
  
  includes = Zip/zip.h \
      tchar.h \
      Xlsx/Chartsheet.h \
      Xlsx/SimpleXlsxDef.h \
      Xlsx/Workbook.h \
      Xlsx/Worksheet.h \
      Xlsx/XlsxHeaders.h
  
  object=$(src:.cpp=.o)
  
  %: %.o
      $(LINK.cpp) -o $@ $^ $(LDFLAGS)
  
  main: $(object)
  
  -include $(src:.cpp=.d)
  </code></pre>
  
  <p>The compilation encountered absolutely no difficulty and I obtain the desired binary. So my question is, why using Qt the conversion from  const wchar_t* to  const char* throw an error while using "raw" mingw compiler, it does not throw any error ?</p>