Narrowing conversion


#1

So when I try to compile the Blinkstick firmware on OSX, i run into this problem.

main.cpp:126:1: error: narrowing conversion of ‘161’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘255’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘133’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘149’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘178’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘133’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘149’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘178’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘133’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘149’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘178’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘133’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘149’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘178’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘133’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘149’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘178’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘133’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘149’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘178’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘133’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘149’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘178’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘133’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘149’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘178’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘133’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘149’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘193’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘178’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
main.cpp:126:1: error: narrowing conversion of ‘192’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
make: *** [main.o] Error 1

Before I dive into it, it would be really helpfull if someone could explain why this is happening, from what I understand looking around on different forums, it’s a problem with the later versions of C.