_EWL_WIDE_FILENAME

If the flag _EWL_WIDE_FILENAME is defined, then the file stream classes support wide character filenames (null terminated arrays of const wchart_t*). Each stream class has an overloaded constructor, and an overloaded open member taking the const wchar_t. If the underlying system supports wide filenames, EWL C++ will pass the wchar_t straight through without any locale encoding.

Thus the interpretation of the wide filename is done by the OS, not by the C++ library. If the underlying system does not support wide filenames, the open will fail at runtime.

By default _EWL_WIDE_FILENAME is not defined as these signatures are not standard.

Turning on this flag does not require a recompile of EWL C++.

When EWL C is not being used as the underlying C library, and when the file stream is implemented in terms of FILE* (see _EWL_CFILE_STREAM ), the system is said to not support wide filenames and the open will fail at runtime.

When using Posix as the underlying implementation (see _EWL_POSIX_STREAM ), wide filenames are supported if the Posix library comes from the EWL Extras Library (in which case the _EWL_WFILEIO_AVAILABLE flag must be on).