fix: narrow uses insufficient input char type

The current implementation uses std::stringstream::narrow(char) with its 'char' input parameter type to transform 'charT' chars taken from a std::basic_istream<charT> into 'char' chars. This is most likely not what is intended if 'charT' is wider than 'char'. Fix this by using std::basic_istream<charT>::narrow(charT) instead.

Signed-off-by: Daniela Engert <dani@ngrt.de>