<html><head></head><body>Hi,<br><br>Narrowing is not an error. And the patch does not even fix the narrowing problem on platforms with signed 'char' such as x86. Looks like some bad -Werror here.<br><br><div class="gmail_quote">Le 9 janvier 2020 20:49:09 GMT+09:00, Steve Lhomme <robux4@ycbcr.xyz> a écrit :<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<pre class="k9mail">This is the error I get:<br><br>/bin/bash ../../libtool  --tag=CXX   --mode=compile <br>arm-linux-gnueabihf-g++ -DHAVE_CONFIG_H <br>-I/mnt/c/Users/robux/Documents/Programs/Videolabs/build/rasp/contrib/arm-linux-gnueabihf/include <br> <br>-I/mnt/c/Users/robux/Documents/Programs/Videolabs/build/rasp/contrib/arm-linux-gnueabihf/include <br>  -g -O2 -DHAVE_UNIX -I../../include -I../../include/sidplay -c -o <br>xsid.lo xsid.cpp<br>libtool: compile:  arm-linux-gnueabihf-g++ -DHAVE_CONFIG_H <br>-I/mnt/c/Users/robux/Documents/Programs/Videolabs/build/rasp/contrib/arm-linux-gnueabihf/include <br>-I/mnt/c/Users/robux/Documents/Programs/Videolabs/build/rasp/contrib/arm-linux-gnueabihf/include <br>-g -O2 -DHAVE_UNIX -I../../include -I../../include/sidplay -c xsid.cpp <br>-fPIC -DPIC -o xsid.o<br>xsid.cpp:101:1: error: narrowing conversion of ‘'\200'’ from ‘char’ to <br>‘int8_t’ {aka ‘signed char’} [-Wnarrowing]<br>   101 | };<br>       | ^<br>xsid.cpp:101:1: error: narrowing conversion of ‘'\224'’ from ‘char’ to <br>‘int8_t’ {aka ‘signed char’} [-Wnarrowing]<br>xsid.cpp:101:1: error: narrowing conversion of ‘'\251'’ from ‘char’ to <br>‘int8_t’ {aka ‘signed char’} [-Wnarrowing]<br>xsid.cpp:101:1: error: narrowing conversion of ‘'\274'’ from ‘char’ to <br>‘int8_t’ {aka ‘signed char’} [-Wnarrowing]<br>xsid.cpp:101:1: error: narrowing conversion of ‘'\316'’ from ‘char’ to <br>‘int8_t’ {aka ‘signed char’} [-Wnarrowing]<br>xsid.cpp:101:1: error: narrowing conversion of ‘'\341'’ from ‘char’ to <br>‘int8_t’ {aka ‘signed char’} [-Wnarrowing]<br>xsid.cpp:101:1: error: narrowing conversion of ‘'\362'’ from ‘char’ to <br>‘int8_t’ {aka ‘signed char’} [-Wnarrowing]<br>make[4]: *** [Makefile:409: xsid.lo] Error 1<br><br>On 2020-01-09 10:54, Martin Storsjö wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;">On Thu, 9 Jan 2020, Steve Lhomme wrote:<br><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;">Fixes compilation with gcc 9 for Raspberry<hr>contrib/src/sidplay2/rules.mak                |  1 +<br>contrib/src/sidplay2/sidplay2-char-cast.patch | 22 +++++++++++++++++++<br>2 files changed, 23 insertions(+)<br>create mode 100644 contrib/src/sidplay2/sidplay2-char-cast.patch<br></blockquote>Um, can you quote the actual error you're fixing here? Because <br>intuitively to me, the current state seems much more correct.<br><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;"> diff --git a/contrib/src/sidplay2/rules.mak <br> b/contrib/src/sidplay2/rules.mak<br> index 84c35ccfee7..de77935774a 100644<br> --- a/contrib/src/sidplay2/rules.mak<br> +++ b/contrib/src/sidplay2/rules.mak<br> @@ -25,6 +25,7 @@ sidplay-libs: sidplay-libs-$(SID_VERSION).tar.gz <br> .sum-sidplay2<br>     $(APPLY) $(SRC)/sidplay2/sidplay2-string.patch<br>     $(APPLY) $(SRC)/sidplay2/sidplay-fix-ln-s.patch<br>     $(APPLY) $(SRC)/sidplay2/sidplay2-resid-dependency.patch<br> +    $(APPLY) $(SRC)/sidplay2/sidplay2-char-cast.patch<br>     $(MOVE)<br><br> .sidplay2: sidplay-libs<br> diff --git a/contrib/src/sidplay2/sidplay2-char-cast.patch <br> b/contrib/src/sidplay2/sidplay2-char-cast.patch<br> new file mode 100644<br> index 00000000000..a16898945fa<br> --- /dev/null<br> +++ b/contrib/src/sidplay2/sidplay2-char-cast.patch<br> @@ -0,0 +1,22 @@<br> +--- sidplay-libs/libsidplay/src/xsid/xsid.cpp.char    2020-01-08 <br> 14:09:08.124096200 +0100<br> ++++ sidplay-libs/libsidplay/src/xsid/xsid.cpp    2020-01-08 <br> 14:09:16.204111900 +0100<br> +@@ -94,7 +94,7 @@ const int8_t XSID::sampleConvertTable[16<br> +     '\x08', '\x19', '\x2a', '\x3b', '\x4c', '\x5d', '\x6e', '\x7f'<br> + };<br> + */<br> +-const int8_t XSID::sampleConvertTable[16] =<br> ++const char XSID::sampleConvertTable[16] =<br> + {<br> +     '\x80', '\x94', '\xa9', '\xbc', '\xce', '\xe1', '\xf2', '\x03',<br> +     '\x1b', '\x2a', '\x3b', '\x49', '\x58', '\x66', '\x73', '\x7f'<br></blockquote>Using 'char' here is probably wrong, as the plain 'char' type has <br>different signedness on different platforms.<br><br>Is the problem that the table contains values that are intended to be <br>interpreted as signed, but written in the table as unsigned values?<br><br>// Martin<hr>vlc-devel mailing list<br>To unsubscribe or modify your subscription options:<br><a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a><br></blockquote><hr>vlc-devel mailing list<br>To unsubscribe or modify your subscription options:<br><a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a></pre></blockquote></div><br>-- <br>Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.</body></html>