strftime(3) seems to return the provided invalid format specifiers on all Platforms, i.e even on macOS, but the macOS/*BSD libc implementations of strftime(3) appears to behave differently and causes the % character not to be populated into the results buffer if invalid format specifiers such as "x %! y" are given. If such specifiers are provided, the output will contain x ! y instead of the given invalid format specifiers.
strftime(3)
seems to return the provided invalid format specifiers on all Platforms, i.e even on macOS, but the macOS/*BSD libc implementations ofstrftime(3)
appears to behave differently and causes the%
character not to be populated into the results buffer if invalid format specifiers such as"x %! y"
are given. If such specifiers are provided, the output will containx ! y
instead of the given invalid format specifiers.See https://opensource.apple.com/source/Libc/Libc-1439.40.11/stdtime/FreeBSD/strftime.c.auto.html