FTBFS w/ gcc@10 -- missing iswspace #692

Open
opened 2021-12-28 05:46:08 +01:00 by bavier · 0 comments
bavier commented 2021-12-28 05:46:08 +01:00 (Migrated from github.com)

I get the following error when building cool-retro-term using gcc version 10.3.0:

lib/TerminalCharacterDecoder.cpp: In member function ‘virtual void Konsole::HTMLDecoder::decodeLine(const Konsole::Character*, int, Konsole::LineProperty)’:
lib/TerminalCharacterDecoder.cpp:205:18: error: ‘iswspace’ is not a member of ‘std’; did you mean ‘isspace’?
  205 |         if (std::iswspace(ch))
      |                  ^~~~~~~~
      |                  isspace
make[1]: *** [Makefile:800: TerminalCharacterDecoder.o] Error 1

It builds fine without modification using gcc@9.4.0. With the following patch I'm able to build successfully using gcc 10.3.0:

--- a/qmltermwidget/lib/TerminalCharacterDecoder.cpp
+++ b/qmltermwidget/lib/TerminalCharacterDecoder.cpp
@@ -19,6 +19,8 @@                                                                                                                                                                                                                                                               
     02110-1301  USA.                                                                                                                                                                                                                                                           
 */                                                                                                                                                                                                                                                                             
                                                                                                                                                                                                                                                                                
+#include <cwctype>                                                                                                                                                                                                                                                             
+                                                                                                                                                                                                                                                                               
 // Own                                                                                                                                                                                                                                                                         
 #include "TerminalCharacterDecoder.h"
I get the following error when building cool-retro-term using gcc version 10.3.0: ``` lib/TerminalCharacterDecoder.cpp: In member function ‘virtual void Konsole::HTMLDecoder::decodeLine(const Konsole::Character*, int, Konsole::LineProperty)’: lib/TerminalCharacterDecoder.cpp:205:18: error: ‘iswspace’ is not a member of ‘std’; did you mean ‘isspace’? 205 | if (std::iswspace(ch)) | ^~~~~~~~ | isspace make[1]: *** [Makefile:800: TerminalCharacterDecoder.o] Error 1 ``` It builds fine without modification using gcc@9.4.0. With the following patch I'm able to build successfully using gcc 10.3.0: ```diff --- a/qmltermwidget/lib/TerminalCharacterDecoder.cpp +++ b/qmltermwidget/lib/TerminalCharacterDecoder.cpp @@ -19,6 +19,8 @@ 02110-1301 USA. */ +#include <cwctype> + // Own #include "TerminalCharacterDecoder.h" ```
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: seeseemelk/cool-retro-term#692
No description provided.