mmdvm-sdr icon indicating copy to clipboard operation
mmdvm-sdr copied to clipboard

Narrowing conversion error

Open ManoDaSilva opened this issue 4 years ago • 0 comments

Hi! Thank you for your work, I'm actually looking into the same idea of having an SDR-based repeater :)

I tried to compile your code today on by Debian XX machine (x86), and I got those compilation errors:

home/manoel/mmdvm-sdr/IORPi.cpp:39:240: error: narrowing conversion of ‘192’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
/home/manoel/mmdvm-sdr/IORPi.cpp:39:240: error: narrowing conversion of ‘143’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
/home/manoel/mmdvm-sdr/IORPi.cpp:39:240: error: narrowing conversion of ‘192’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
/home/manoel/mmdvm-sdr/IORPi.cpp:39:240: error: narrowing conversion of ‘128’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
/home/manoel/mmdvm-sdr/IORPi.cpp:39:240: error: narrowing conversion of ‘187’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
/home/manoel/mmdvm-sdr/IORPi.cpp:39:240: error: narrowing conversion of ‘255’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
/home/manoel/mmdvm-sdr/IORPi.cpp:39:240: error: narrowing conversion of ‘255’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
/home/manoel/mmdvm-sdr/IORPi.cpp:39:240: error: narrowing conversion of ‘255’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
/home/manoel/mmdvm-sdr/IORPi.cpp:39:240: error: narrowing conversion of ‘255’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]

Managed to clear the error by formatting the wav header as a char directly using this: char wavheader[] = {(char)0x52,(char)0x49,(char)0x46,(char)0x46,(char)0xb8,(char)0xc0,(char)0x8f,(char)0x00,(char)0x57,(char)0x41,(char)0x56,(char)0x45,(char)0x66,(char)0x6d,(char)0x74,(char)0x20,(char)0x10,(char)0x00,(char)0x00,(char)0x00,(char)0x01,(char)0x00,(char)0x01,(char)0x00,(char)0xc0,(char)0x5d,(char)0x00,(char)0x00,(char)0x80,(char)0xbb,(char)0x00,(char)0x00,(char)0x02,(char)0x00,(char)0x10,(char)0x00,(char)0x64,(char)0x61,(char)0x74,(char)0x61,(char)0xff,(char)0xff,(char)0xff,(char)0xff};

But I don't think this is the most elegant way... :)

Cheers!

ManoDaSilva avatar Mar 26 '20 10:03 ManoDaSilva