Bug#952055: paulstretch: FTBFS: XMLwrapper.cpp:32:26: error: invalid use of incomplete type ‘mxml_node_t’ {aka ‘struct _mxml_node_s’}

Lucas Nussbaum lucas at debian.org
Sun Feb 23 07:56:14 GMT 2020


Source: paulstretch
Version: 2.2-2-4
Severity: serious
Justification: FTBFS on amd64
Tags: buster sid
Usertags: ftbfs-20200222 ftbfs-buster

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.

Relevant part (hopefully):
> g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security GUI.cxx FreeEditUI.cxx `LC_ALL=C ls *.cpp Input/*.cpp Output/*.cpp` \
>   -o paulstretch \
>   -Wl,-z,relro -Wl,-z,now -Wl,--as-needed \
>   `fltk-config --cflags` `fltk-config --ldflags` \
>   -DHAVE_JACK -DENABLE_RESAMPLING \
>   `pkg-config --cflags --libs jack samplerate` \
>   `pkg-config --cflags --libs fftw3f vorbisenc vorbisfile vorbis ogg mad mxml audiofile` \
>   -lportaudio -lpthread -lz
> In file included from Player.h:27,
>                  from Control.h:29,
>                  from GUI.h:13,
>                  from GUI.cxx:3:
> BinauralBeats.h: In member function ‘float AP::set(float)’:
> BinauralBeats.h:41:3: warning: no return statement in function returning non-void [-Wreturn-type]
>    41 |   };
>       |   ^
> In file included from Player.h:27,
>                  from Control.h:29,
>                  from FreeEditUI.h:12,
>                  from FreeEditUI.cxx:3:
> BinauralBeats.h: In member function ‘float AP::set(float)’:
> BinauralBeats.h:41:3: warning: no return statement in function returning non-void [-Wreturn-type]
>    41 |   };
>       |   ^
> In file included from BinauralBeats.cpp:21:
> BinauralBeats.h: In member function ‘float AP::set(float)’:
> BinauralBeats.h:41:3: warning: no return statement in function returning non-void [-Wreturn-type]
>    41 |   };
>       |   ^
> In file included from Player.h:27,
>                  from Control.h:29,
>                  from Control.cpp:22:
> BinauralBeats.h: In member function ‘float AP::set(float)’:
> BinauralBeats.h:41:3: warning: no return statement in function returning non-void [-Wreturn-type]
>    41 |   };
>       |   ^
> Control.cpp: In member function ‘std::string Control::get_stretch_info()’:
> Control.cpp:179:38: warning: ‘%s’ directive output may be truncated writing up to 199 bytes into a region of size between 174 and 187 [-Wformat-truncation=]
>   179 |   snprintf(tmp,size,"Stretch: %.7gx (%s%.2d:%.2d:%.2d)",
>       |                                      ^~
>   180 |     stretch,strdays,(duration/3600)%24,(duration/60)%60,duration%60);
>       |             ~~~~~~~                   
> Control.cpp:179:21: note: directive argument in the range [-23, 23]
>   179 |   snprintf(tmp,size,"Stretch: %.7gx (%s%.2d:%.2d:%.2d)",
>       |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Control.cpp:179:21: note: directive argument in the range [-59, 59]
> Control.cpp:179:21: note: directive argument in the range [-59, 59]
> In file included from /usr/include/stdio.h:867,
>                  from /usr/include/c++/9/cstdio:42,
>                  from /usr/include/c++/9/ext/string_conversions.h:43,
>                  from /usr/include/c++/9/bits/basic_string.h:6493,
>                  from /usr/include/c++/9/string:55,
>                  from Input/AInputS.h:21,
>                  from Control.h:23,
>                  from Control.cpp:22:
> /usr/include/x86_64-linux-gnu/bits/stdio2.h:67:35: note: ‘__builtin___snprintf_chk’ output between 23 and 238 bytes into a destination of size 200
>    67 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
>       |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    68 |        __bos (__s), __fmt, __va_arg_pack ());
>       |        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Control.cpp:164:38: warning: ‘%s’ directive output may be truncated writing up to 199 bytes into a region of size between 174 and 187 [-Wformat-truncation=]
>   164 |   snprintf(tmp,size,"Stretch: %.7gx (%s%s%s)",process.stretch,stryears,strdays,strhours);
>       |                                      ^~                       ~~~~~~~~
> In file included from /usr/include/stdio.h:867,
>                  from /usr/include/c++/9/cstdio:42,
>                  from /usr/include/c++/9/ext/string_conversions.h:43,
>                  from /usr/include/c++/9/bits/basic_string.h:6493,
>                  from /usr/include/c++/9/string:55,
>                  from Input/AInputS.h:21,
>                  from Control.h:23,
>                  from Control.cpp:22:
> /usr/include/x86_64-linux-gnu/bits/stdio2.h:67:35: note: ‘__builtin___snprintf_chk’ output between 15 and 625 bytes into a destination of size 200
>    67 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
>       |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    68 |        __bos (__s), __fmt, __va_arg_pack ());
>       |        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Control.cpp:140:51: warning: ‘%s’ directive output may be truncated writing up to 199 bytes into a region of size between 155 and 175 [-Wformat-truncation=]
>   140 |   snprintf(tmp,size,"Stretch: %.7gx (%d milleniums%s)",process.stretch,milleniums,stryears);
>       |                                                   ^~                              ~~~~~~~~
> In file included from /usr/include/stdio.h:867,
>                  from /usr/include/c++/9/cstdio:42,
>                  from /usr/include/c++/9/ext/string_conversions.h:43,
>                  from /usr/include/c++/9/bits/basic_string.h:6493,
>                  from /usr/include/c++/9/string:55,
>                  from Input/AInputS.h:21,
>                  from Control.h:23,
>                  from Control.cpp:22:
> /usr/include/x86_64-linux-gnu/bits/stdio2.h:67:35: note: ‘__builtin___snprintf_chk’ output between 27 and 246 bytes into a destination of size 200
>    67 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
>       |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    68 |        __bos (__s), __fmt, __va_arg_pack ());
>       |        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> In file included from Player.h:27,
>                  from JAaudiooutput.h:25,
>                  from JAaudiooutput.cpp:32:
> BinauralBeats.h: In member function ‘float AP::set(float)’:
> BinauralBeats.h:41:3: warning: no return statement in function returning non-void [-Wreturn-type]
>    41 |   };
>       |   ^
> JAaudiooutput.cpp: In function ‘void* jack_player_thread(void*)’:
> JAaudiooutput.cpp:142:1: warning: no return statement in function returning non-void [-Wreturn-type]
>   142 | }
>       | ^
> JAaudiooutput.cpp: In function ‘void JACKaudiooutputinit(Player*, int)’:
> JAaudiooutput.cpp:167:34: warning: ‘%i’ directive output may be truncated writing between 1 and 10 bytes into a region of size 9 [-Wformat-truncation=]
>   167 |  snprintf(channelid, 16, "output_%i", i);
>       |                                  ^~
> JAaudiooutput.cpp:167:26: note: directive argument in the range [0, 2147483647]
>   167 |  snprintf(channelid, 16, "output_%i", i);
>       |                          ^~~~~~~~~~~
> In file included from /usr/include/stdio.h:867,
>                  from /usr/include/c++/9/cstdio:42,
>                  from /usr/include/c++/9/ext/string_conversions.h:43,
>                  from /usr/include/c++/9/bits/basic_string.h:6493,
>                  from /usr/include/c++/9/string:55,
>                  from Player.h:21,
>                  from JAaudiooutput.h:25,
>                  from JAaudiooutput.cpp:32:
> /usr/include/x86_64-linux-gnu/bits/stdio2.h:67:35: note: ‘__builtin___snprintf_chk’ output between 9 and 18 bytes into a destination of size 16
>    67 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
>       |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    68 |        __bos (__s), __fmt, __va_arg_pack ());
>       |        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> In file included from Player.h:27,
>                  from PAaudiooutput.h:24,
>                  from PAaudiooutput.cpp:22:
> BinauralBeats.h: In member function ‘float AP::set(float)’:
> BinauralBeats.h:41:3: warning: no return statement in function returning non-void [-Wreturn-type]
>    41 |   };
>       |   ^
> In file included from Player.h:27,
>                  from Player.cpp:22:
> BinauralBeats.h: In member function ‘float AP::set(float)’:
> BinauralBeats.h:41:3: warning: no return statement in function returning non-void [-Wreturn-type]
>    41 |   };
>       |   ^
> XMLwrapper.cpp: In function ‘const char* XMLwrapper_whitespace_callback(mxml_node_t*, int)’:
> XMLwrapper.cpp:32:26: error: invalid use of incomplete type ‘mxml_node_t’ {aka ‘struct _mxml_node_s’}
>    32 |     const char *name=node->value.element.name;
>       |                          ^~
> In file included from XMLwrapper.h:21,
>                  from XMLwrapper.cpp:21:
> /usr/include/mxml.h:97:16: note: forward declaration of ‘mxml_node_t’ {aka ‘struct _mxml_node_s’}
>    97 | typedef struct _mxml_node_s mxml_node_t; /**** An XML node. ****/
>       |                ^~~~~~~~~~~~
> XMLwrapper.cpp: In member function ‘void XMLwrapper::getparstr(const char*, char*, int)’:
> XMLwrapper.cpp:410:13: error: invalid use of incomplete type ‘mxml_node_t’ {aka ‘struct _mxml_node_s’}
>   410 |     if (node->child==NULL) return;
>       |             ^~
> In file included from XMLwrapper.h:21,
>                  from XMLwrapper.cpp:21:
> /usr/include/mxml.h:97:16: note: forward declaration of ‘mxml_node_t’ {aka ‘struct _mxml_node_s’}
>    97 | typedef struct _mxml_node_s mxml_node_t; /**** An XML node. ****/
>       |                ^~~~~~~~~~~~
> XMLwrapper.cpp:411:13: error: invalid use of incomplete type ‘mxml_node_t’ {aka ‘struct _mxml_node_s’}
>   411 |     if (node->child->type!=MXML_OPAQUE) return;
>       |             ^~
> In file included from XMLwrapper.h:21,
>                  from XMLwrapper.cpp:21:
> /usr/include/mxml.h:97:16: note: forward declaration of ‘mxml_node_t’ {aka ‘struct _mxml_node_s’}
>    97 | typedef struct _mxml_node_s mxml_node_t; /**** An XML node. ****/
>       |                ^~~~~~~~~~~~
> XMLwrapper.cpp:413:37: error: invalid use of incomplete type ‘mxml_node_t’ {aka ‘struct _mxml_node_s’}
>   413 |     snprintf(par,maxstrlen,"%s",node->child->value.element.name);
>       |                                     ^~
> In file included from XMLwrapper.h:21,
>                  from XMLwrapper.cpp:21:
> /usr/include/mxml.h:97:16: note: forward declaration of ‘mxml_node_t’ {aka ‘struct _mxml_node_s’}
>    97 | typedef struct _mxml_node_s mxml_node_t; /**** An XML node. ****/
>       |                ^~~~~~~~~~~~
> make[1]: *** [debian/rules:15: override_dh_auto_build] Error 1

The full build log is available from:
   http://qa-logs.debian.net/2020/02/22/paulstretch_2.2-2-4_unstable.log

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

About the archive rebuild: The rebuild was done on EC2 VM instances from
Amazon Web Services, using a clean, minimal and up-to-date chroot. Every
failed build was retried once to eliminate random failures.



More information about the pkg-multimedia-maintainers mailing list