lib/vterm_states: fix C++11 compliance In C++11, narrowing a type is no longer allowed in structure initializers: struct foo { u16 u; }; foo f[] = { {0}, {-1} }; results in the gcc-6 to whine out loudly, and fail: error: narrowing conversion of ‘-1’ from ‘int’ to ‘u16 {aka short unsigned int}’ inside { } [-Wnarrowing] }; ^ Signed-off-by: "Yann E. MORIN" diff -durN fbterm-1.7.0.orig/src/lib/vterm_states.cpp fbterm-1.7.0/src/lib/vterm_states.cpp --- fbterm-1.7.0.orig/src/lib/vterm_states.cpp 2010-10-06 06:23:08.000000000 +0200 +++ fbterm-1.7.0/src/lib/vterm_states.cpp 2016-08-13 16:54:29.495451127 +0200 @@ -22,6 +22,7 @@ #include "vterm.h" #define ADDSAME(len) ((len) << 8) +#define ENDSEQ { ((u16)-1) } const VTerm::Sequence VTerm::control_sequences[] = { { 0, 0, ESkeep }, @@ -39,14 +40,14 @@ { 0x1B, 0, ESesc }, { 0x7F, 0, ESkeep }, { 0x9B, 0, ESsquare }, - { -1} + ENDSEQ }; const VTerm::Sequence VTerm::escape_sequences[] = { { 0, 0, ESnormal }, // ESnormal - { -1 }, + ENDSEQ, // ESesc { '[', &VTerm::clear_param, ESsquare }, @@ -65,7 +66,7 @@ { '8', &VTerm::restore_cursor, ESnormal }, { '>', &VTerm::keypad_numeric, ESnormal }, { '=', &VTerm::keypad_application, ESnormal }, - { -1 }, + ENDSEQ, // ESsquare { '[', 0, ESfunckey }, @@ -104,7 +105,7 @@ { '`', &VTerm::cursor_position_col, ESnormal }, { ']', &VTerm::linux_specific, ESnormal }, { '}', &VTerm::fbterm_specific, ESnormal }, - { -1 }, + ENDSEQ, // ESnonstd { '0' | ADDSAME(9), &VTerm::set_palette, ESkeep }, @@ -112,25 +113,25 @@ { 'a' | ADDSAME(5), &VTerm::set_palette, ESkeep }, { 'P', &VTerm::begin_set_palette, ESkeep }, { 'R', &VTerm::reset_palette, ESnormal }, - { -1 }, + ENDSEQ, // ESpercent { '@', &VTerm::clear_utf8, ESnormal }, { 'G', &VTerm::set_utf8, ESnormal }, { '8', &VTerm::set_utf8, ESnormal }, - { -1 }, + ENDSEQ, // EScharset { '0', &VTerm::set_charset, ESnormal }, { 'B', &VTerm::set_charset, ESnormal }, { 'U', &VTerm::set_charset, ESnormal }, { 'K', &VTerm::set_charset, ESnormal }, - { -1 }, + ENDSEQ, // EShash { '8', &VTerm::screen_align, ESnormal }, - { -1 }, + ENDSEQ, // ESfunckey - { -1 }, + ENDSEQ, };