Link-centralized, modular event logging facility
Go to file
Minty-Meeo f23179e168 Wide char homogeneity
If wide char stdlib functions are used on a narrow char stream, they attempt to narrow the character or string.  If this fails, nothing is written to the stream and an error is indicated.  The {fmt} library, at its core, uses stdlib functions for printing to a stream.  However, it takes it a step further and acts upon errors while printing by throwing an exception.

If narrow char stdlib functions are used on a wide char stream, they throw an assertion.  The {fmt} library somehow does not throw an assertion, but whatever it ends up printing is garbage anyhow.

So from either end, it is generally a bad idea to mix narrow and wide character printing.  While you can get away with using wide char functions on a narrow char stream, the moment you start using anything other than English characters, it all falls apart.  Just as well, narrow chars on wide char streams do not work at all.  Despite this, I found many situations where wide char printing and narrow char printing was being used at the same time.  This PR makes character printing homogeneous to avoid the previously discussed issues.
2021-05-08 00:52:03 -05:00
fmt@95da484727 Update submodules; set submodule tracking branch 2021-04-06 12:46:56 -04:00
include/logvisor Set FMT_ARM_ABI_COMPATIBILITY; move fmt defines to CMake 2021-04-06 17:55:15 -04:00
lib Wide char homogeneity 2021-05-08 00:52:03 -05:00
.gitmodules Fetch Sentry as needed; don't reimport fmt unnecessarily 2021-04-13 00:05:09 -04:00
CMakeLists.txt Don't install if not building directly 2021-04-13 00:48:30 -04:00
Config.cmake.in Add cmake package config files 2019-05-22 18:07:58 -10:00
LICENSE Update LICENSE date 2016-03-06 17:11:13 -10:00