libvisual icon indicating copy to clipboard operation
libvisual copied to clipboard

[0.4.x] plugins: Build fails with strict-aliasing violations

Open eli-schwartz opened this issue 1 year ago • 2 comments

I tried to build with the following *FLAGS to optimize the build: -flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing

The -Werror=* flags are important to detect cases where the compiler can try to optimize based on assuming Undefined Behavior (UB) cannot happen, and miscompile code that has UB in it. strict-aliasing issues are always bad but LTO can make them even worse.

I got this error:

libtool: compile:  x86_64-pc-linux-gnu-g++ -std=c++11 -DHAVE_CONFIG_H -I. -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools -I../../../../.. -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/unix/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/io/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/unix/libmfl -I/usr/include/libvisual-0.4 -pipe -march=native -fstack-protector-all -O2 -fdiagnostics-color=always -frecord-gcc-switches -flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing -Wformat -Werror=format-security -DUNIX_X -D_REENTRANT -c /var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Hashtable.cpp  -fPIC -DPIC -o .libs/Hashtable.o
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Hashtable.cpp: In member function ‘long int& Hashtable::operator[](long int)’:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Hashtable.cpp:259:33: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
  259 |         return (long&) entry -> mValue;
      |                        ~~~~~~~~~^~~~~~
cc1plus: some warnings being treated as errors
make[7]: *** [Makefile:525: Hashtable.lo] Error 1
make[7]: Leaving directory '/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2-abi_x86_64.amd64/plugins/actor/G-Force/Common/GeneralTools'
make[7]: Entering directory '/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2-abi_x86_64.amd64/plugins/actor/G-Force/Common/GeneralTools'
/bin/sh ../../../../../libtool  --tag=CXX   --mode=compile x86_64-pc-linux-gnu-g++ -std=c++11 -DHAVE_CONFIG_H -I. -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools -I../../../../..  -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/unix/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/io/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/unix/libmfl  -I/usr/include/libvisual-0.4 -pipe -march=native -fstack-protector-all -O2 -fdiagnostics-color=always -frecord-gcc-switches -flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing  -Wformat -Werror=format-security   -DUNIX_X -D_REENTRANT -c -o XFloatList.lo /var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/XFloatList.cpp
libtool: compile:  x86_64-pc-linux-gnu-g++ -std=c++11 -DHAVE_CONFIG_H -I. -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools -I../../../../.. -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/unix/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/io/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/unix/libmfl -I/usr/include/libvisual-0.4 -pipe -march=native -fstack-protector-all -O2 -fdiagnostics-color=always -frecord-gcc-switches -flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing -Wformat -Werror=format-security -DUNIX_X -D_REENTRANT -c /var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/XFloatList.cpp  -fPIC -DPIC -o .libs/XFloatList.o
In file included from /var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/XFloatList.cpp:1:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers/XFloatList.h: In member function ‘virtual long int XFloatList::Add(float)’:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers/XFloatList.h:17:151: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
   17 |                 virtual long                    Add( float inNum )                                                              { return mList.Add( *((void**) &inNum) );                       }
      |                                                                                                                                                      ~^~~~~~~~~~~~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers/XFloatList.h: In member function ‘virtual float XFloatList::Fetch(long int)’:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers/XFloatList.h:21:172: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
   21 |                 virtual float                   Fetch( long inIndex )                                                   { long t = (long) mList.Fetch( inIndex ); return *((float*) &t);}
      |                                                                                                                                                                           ~^~~~~~~~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers/XFloatList.h: In member function ‘float XFloatList::operator[](long int)’:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers/XFloatList.h:39:172: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
   39 |                 float                                   operator[] ( const long inIndex )                               { long t = (long) mList.Fetch( inIndex ); return *((float*) &t); }
      |                                                                                                                                                                           ~^~~~~~~~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/XFloatList.cpp: In member function ‘void XFloatList::FindMeans(long int, float*, float) const’:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/XFloatList.cpp:67:49: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
   67 |                         sepCandidates.Put( i, *((void**) &cen) );
      |                                                ~^~~~~~~~~~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/XFloatList.cpp: In static member function ‘static int XFloatList::sFloatComparitor(const void*, const void*)’:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/XFloatList.cpp:299:25: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
  299 |         float diff =  *((float*) &inB) - *((float*) &inA);
      |                        ~^~~~~~~~~~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/XFloatList.cpp:299:44: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
  299 |         float diff =  *((float*) &inB) - *((float*) &inA);
      |                                           ~^~~~~~~~~~~~~~
cc1plus: some warnings being treated as errors
make[7]: *** [Makefile:525: XFloatList.lo] Error 1
libtool: compile:  x86_64-pc-linux-gnu-g++ -std=c++11 -DHAVE_CONFIG_H -I. -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/io -I../../../../.. -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/io/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/UI/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/unix/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/unix/libmfl -pipe -march=native -fstack-protector-all -O2 -fdiagnostics-color=always -frecord-gcc-switches -flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing -Wformat -Werror=format-security -DUNIX_X -D_REENTRANT -c /var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/io/CEgIStream.cpp  -fPIC -DPIC -o .libs/CEgIStream.o
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/io/CEgIStream.cpp: In member function ‘float CEgIStream::GetFloat()’:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/io/CEgIStream.cpp:45:19: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
   45 |         return *( (float*) &v );
      |                 ~~^~~~~~~~~~~~~
cc1plus: some warnings being treated as errors
make[7]: *** [Makefile:514: CEgIStream.lo] Error 1
libtool: compile:  x86_64-pc-linux-gnu-g++ -std=c++11 -DHAVE_CONFIG_H -I. -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/math -I../../../../.. -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/UI/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/math/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/io/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/unix/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/unix/libmfl -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2 -I/usr/include/libvisual-0.4 -pipe -march=native -fstack-protector-all -O2 -fdiagnostics-color=always -frecord-gcc-switches -flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing -Wformat -Werror=format-security -DUNIX_X -D_REENTRANT -c /var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/math/ExprVirtualMachine.cpp  -fPIC -DPIC -o .libs/ExprVirtualMachine.o
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/math/ExprVirtualMachine.cpp: In member function ‘float ExprVirtualMachine::Execute()’:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/math/ExprVirtualMachine.cpp:85:75: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
   85 |                                                         case cSEED: i = *((long*) &r);                                          \
      |                                                                          ~^~~~~~~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/math/ExprVirtualMachine.cpp:275:41: note: in expansion of macro ‘_exeFn’
  275 |                                         _exeFn( v1 )
      |                                         ^~~~~~
cc1plus: some warnings being treated as errors
make[7]: *** [Makefile:517: ExprVirtualMachine.lo] Error 1
libtool: compile:  x86_64-pc-linux-gnu-g++ -std=c++11 -DHAVE_CONFIG_H -I. -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon -I../../../.. -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/unix/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/math/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/UI/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/io/Headers -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/unix/libmfl -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/unix/libxpce -I/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2 -DDATADIR=\"/usr/share/libvisual-plugins-0.4/actor/actor_gforce\" -I/usr/include/libvisual-0.4 -pipe -march=native -fstack-protector-all -O2 -fdiagnostics-color=always -frecord-gcc-switches -flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing -Wformat -Werror=format-security -DUNIX_X -D_REENTRANT -c /var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp  -fPIC -DPIC -o .libs/G-Force.o
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:79:30: warning: multi-character character constant [-Wmultichar]
   79 |         if ( mPrefs.GetPref( 'Vers' ) != GFORCE_COMPAT_VERSION ) {
      |                              ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:86:33: warning: multi-character character constant [-Wmultichar]
   86 |                 mPrefs.SetPref( 'Vers', GFORCE_COMPAT_VERSION );
      |                                 ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:118:59: warning: multi-character character constant [-Wmultichar]
  118 |                 mConsoleDelay           = mPrefs.GetPref( 'CDur' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:119:59: warning: multi-character character constant [-Wmultichar]
  119 |                 mConsoleLineDur         = mPrefs.GetPref( 'CLin' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:120:67: warning: multi-character character constant [-Wmultichar]
  120 |                 mMagScale                       = mPrefs.GetPref( 'MScl' ) / 1000.0;
      |                                                                   ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:121:59: warning: multi-character character constant [-Wmultichar]
  121 |                 mTransitionLo           = mPrefs.GetPref( 'TrLo' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:122:59: warning: multi-character character constant [-Wmultichar]
  122 |                 mTransitionHi           = mPrefs.GetPref( 'TrHi' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:123:59: warning: multi-character character constant [-Wmultichar]
  123 |                 mScrnSaverDelay         = mPrefs.GetPref( 'SSvr' ) * 60.0;
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:124:59: warning: multi-character character constant [-Wmultichar]
  124 |                 mBorderlessWind         = mPrefs.GetPref( 'NoBo' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:125:67: warning: multi-character character constant [-Wmultichar]
  125 |                 mHandleKeys                     = mPrefs.GetPref( 'Kybd' );
      |                                                                   ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:126:59: warning: multi-character character constant [-Wmultichar]
  126 |                 mNum_S_Steps            = mPrefs.GetPref( 'Stps' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:127:59: warning: multi-character character constant [-Wmultichar]
  127 |                 mFullscreenSize.h       = mPrefs.GetPref( 'FS_X' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:128:59: warning: multi-character character constant [-Wmultichar]
  128 |                 mFullscreenSize.v       = mPrefs.GetPref( 'FS_Y' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:129:59: warning: multi-character character constant [-Wmultichar]
  129 |                 mFullscreenDepth        = mPrefs.GetPref( 'FS_D' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:130:59: warning: multi-character character constant [-Wmultichar]
  130 |                 mFullscreenDevice       = mPrefs.GetPref( 'FS_#' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:131:59: warning: multi-character character constant [-Wmultichar]
  131 |                 mParticlesOn            = mPrefs.GetPref( 'P_On' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:132:59: warning: multi-character character constant [-Wmultichar]
  132 |                 mNormalizeInput         = mPrefs.GetPref( 'Norm' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:133:67: warning: multi-character character constant [-Wmultichar]
  133 |                 mMaxSize.v                      = mPrefs.GetPref( 'MaxY' );
      |                                                                   ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:134:67: warning: multi-character character constant [-Wmultichar]
  134 |                 mMaxSize.h                      = mPrefs.GetPref( 'MaxX' );
      |                                                                   ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:135:59: warning: multi-character character constant [-Wmultichar]
  135 |                 mNewConfigNotify        = mPrefs.GetPref( 'ShwT' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:136:59: warning: multi-character character constant [-Wmultichar]
  136 |                 mTrackTextPosMode       = mPrefs.GetPref( 'TPos' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:137:59: warning: multi-character character constant [-Wmultichar]
  137 |                 mTrackTextSize          = mPrefs.GetPref( 'TSze' );
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:138:33: warning: multi-character character constant [-Wmultichar]
  138 |                 mPrefs.GetPref( 'WInt', mShapeIntervalStr );
      |                                 ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:139:33: warning: multi-character character constant [-Wmultichar]
  139 |                 mPrefs.GetPref( 'DInt', mFieldIntervalStr );
      |                                 ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:140:33: warning: multi-character character constant [-Wmultichar]
  140 |                 mPrefs.GetPref( 'CInt', mColorIntervalStr );
      |                                 ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:141:33: warning: multi-character character constant [-Wmultichar]
  141 |                 mPrefs.GetPref( 'T?', mTrackTextStartStr );
      |                                 ^~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:142:33: warning: multi-character character constant [-Wmultichar]
  142 |                 mPrefs.GetPref( 'TDur', mTrackTextDurationStr );
      |                                 ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:143:33: warning: multi-character character constant [-Wmultichar]
  143 |                 mPrefs.GetPref( 'TFnt', mTrackFont );
      |                                 ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:144:33: warning: multi-character character constant [-Wmultichar]
  144 |                 mPrefs.GetPref( 'TStr', mTrackMetaText );
      |                                 ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:145:33: warning: multi-character character constant [-Wmultichar]
  145 |                 mPrefs.GetPref( 'PDur', mParticleDuration );
      |                                 ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:146:33: warning: multi-character character constant [-Wmultichar]
  146 |                 mPrefs.GetPref( 'PPrb', mParticleProbability );
      |                                 ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:147:33: warning: multi-character character constant [-Wmultichar]
  147 |                 mPrefs.GetPref( 'KMap', mKeyMap );
      |                                 ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:213:25: warning: multi-character character constant [-Wmultichar]
  213 |         mPrefs.SetPref( 'SSvr', mScrnSaverDelay / 60.0 );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:214:25: warning: multi-character character constant [-Wmultichar]
  214 |         mPrefs.SetPref( 'TrHi', mTransitionHi );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:215:25: warning: multi-character character constant [-Wmultichar]
  215 |         mPrefs.SetPref( 'TrLo', mTransitionLo );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:216:25: warning: multi-character character constant [-Wmultichar]
  216 |         mPrefs.SetPref( 'MScl', mMagScale * 1000 );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:217:25: warning: multi-character character constant [-Wmultichar]
  217 |         mPrefs.SetPref( 'CInt', mColorIntervalStr );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:218:25: warning: multi-character character constant [-Wmultichar]
  218 |         mPrefs.SetPref( 'WInt', mShapeIntervalStr );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:219:25: warning: multi-character character constant [-Wmultichar]
  219 |         mPrefs.SetPref( 'DInt', mFieldIntervalStr );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:220:25: warning: multi-character character constant [-Wmultichar]
  220 |         mPrefs.SetPref( 'Stps', mNum_S_Steps );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:221:25: warning: multi-character character constant [-Wmultichar]
  221 |         mPrefs.SetPref( 'PDur', mParticleDuration );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:222:25: warning: multi-character character constant [-Wmultichar]
  222 |         mPrefs.SetPref( 'PPrb', mParticleProbability );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:223:25: warning: multi-character character constant [-Wmultichar]
  223 |         mPrefs.SetPref( 'NoBo', mBorderlessWind );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:224:25: warning: multi-character character constant [-Wmultichar]
  224 |         mPrefs.SetPref( 'Kybd', mHandleKeys     );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:225:25: warning: multi-character character constant [-Wmultichar]
  225 |         mPrefs.SetPref( 'FS_X', mFullscreenSize.h );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:226:25: warning: multi-character character constant [-Wmultichar]
  226 |         mPrefs.SetPref( 'FS_Y', mFullscreenSize.v );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:227:25: warning: multi-character character constant [-Wmultichar]
  227 |         mPrefs.SetPref( 'FS_D', mFullscreenDepth );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:228:25: warning: multi-character character constant [-Wmultichar]
  228 |         mPrefs.SetPref( 'FS_#', mFullscreenDevice );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:229:25: warning: multi-character character constant [-Wmultichar]
  229 |         mPrefs.SetPref( 'Norm', mNormalizeInput );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:230:25: warning: multi-character character constant [-Wmultichar]
  230 |         mPrefs.SetPref( 'MaxY', mMaxSize.v );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:231:25: warning: multi-character character constant [-Wmultichar]
  231 |         mPrefs.SetPref( 'MaxX', mMaxSize.h );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:232:25: warning: multi-character character constant [-Wmultichar]
  232 |         mPrefs.SetPref( 'TPos', mTrackTextPosMode );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:233:25: warning: multi-character character constant [-Wmultichar]
  233 |         mPrefs.SetPref( 'TSze', mTrackTextSize );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:234:25: warning: multi-character character constant [-Wmultichar]
  234 |         mPrefs.SetPref( 'TFnt', mTrackFont );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:235:25: warning: multi-character character constant [-Wmultichar]
  235 |         mPrefs.SetPref( 'TStr', mTrackMetaText );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:236:25: warning: multi-character character constant [-Wmultichar]
  236 |         mPrefs.SetPref( 'T?',   mTrackTextStartStr );
      |                         ^~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:237:25: warning: multi-character character constant [-Wmultichar]
  237 |         mPrefs.SetPref( 'TDur', mTrackTextDurationStr );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:238:25: warning: multi-character character constant [-Wmultichar]
  238 |         mPrefs.SetPref( 'KMap', mKeyMap );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:239:25: warning: multi-character character constant [-Wmultichar]
  239 |         mPrefs.SetPref( 'P_On', mParticlesOn ? 1 : 0 );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:240:25: warning: multi-character character constant [-Wmultichar]
  240 |         mPrefs.SetPref( 'ShwT', mNewConfigNotify ? 1 : 0 );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:241:25: warning: multi-character character constant [-Wmultichar]
  241 |         mPrefs.SetPref( 'CDur', mConsoleDelay );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:242:25: warning: multi-character character constant [-Wmultichar]
  242 |         mPrefs.SetPref( 'CLin', mConsoleLineDur );
      |                         ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:510:59: warning: multi-character character constant [-Wmultichar]
  510 |                 case cSetPreset0:       StoreConfigState( 'SET0' );     break;
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:511:59: warning: multi-character character constant [-Wmultichar]
  511 |                 case cSetPreset1:       StoreConfigState( 'SET1' );     break;
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:512:59: warning: multi-character character constant [-Wmultichar]
  512 |                 case cSetPreset2:       StoreConfigState( 'SET2' );     break;
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:513:59: warning: multi-character character constant [-Wmultichar]
  513 |                 case cSetPreset3:       StoreConfigState( 'SET3' );     break;
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:514:59: warning: multi-character character constant [-Wmultichar]
  514 |                 case cSetPreset4:       StoreConfigState( 'SET4' );     break;
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:515:59: warning: multi-character character constant [-Wmultichar]
  515 |                 case cSetPreset5:       StoreConfigState( 'SET5' );     break;
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:516:59: warning: multi-character character constant [-Wmultichar]
  516 |                 case cSetPreset6:       StoreConfigState( 'SET6' );     break;
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:517:59: warning: multi-character character constant [-Wmultichar]
  517 |                 case cSetPreset7:       StoreConfigState( 'SET7' );     break;
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:518:59: warning: multi-character character constant [-Wmultichar]
  518 |                 case cSetPreset8:       StoreConfigState( 'SET8' );     break;
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:519:59: warning: multi-character character constant [-Wmultichar]
  519 |                 case cSetPreset9:       StoreConfigState( 'SET9' );     break;
      |                                                           ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:522:63: warning: multi-character character constant [-Wmultichar]
  522 |                 case cPreset0:  handled = RestoreConfigState( 'SET0' ); break;
      |                                                               ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:523:63: warning: multi-character character constant [-Wmultichar]
  523 |                 case cPreset1:  handled = RestoreConfigState( 'SET1' ); break;
      |                                                               ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:524:63: warning: multi-character character constant [-Wmultichar]
  524 |                 case cPreset2:  handled = RestoreConfigState( 'SET2' ); break;
      |                                                               ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:525:63: warning: multi-character character constant [-Wmultichar]
  525 |                 case cPreset3:  handled = RestoreConfigState( 'SET3' ); break;
      |                                                               ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:526:63: warning: multi-character character constant [-Wmultichar]
  526 |                 case cPreset4:  handled = RestoreConfigState( 'SET4' ); break;
      |                                                               ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:527:63: warning: multi-character character constant [-Wmultichar]
  527 |                 case cPreset5:  handled = RestoreConfigState( 'SET5' ); break;
      |                                                               ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:528:63: warning: multi-character character constant [-Wmultichar]
  528 |                 case cPreset6:  handled = RestoreConfigState( 'SET6' ); break;
      |                                                               ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:529:63: warning: multi-character character constant [-Wmultichar]
  529 |                 case cPreset7:  handled = RestoreConfigState( 'SET7' ); break;
      |                                                               ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:530:63: warning: multi-character character constant [-Wmultichar]
  530 |                 case cPreset8:  handled = RestoreConfigState( 'SET8' ); break;
      |                                                               ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:531:63: warning: multi-character character constant [-Wmultichar]
  531 |                 case cPreset9:  handled = RestoreConfigState( 'SET9' ); break;
      |                                                               ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:1131:45: warning: multi-character character constant [-Wmultichar]
 1131 |                         vers = args.GetArg( 'Vers' );
      |                                             ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:1189:45: warning: multi-character character constant [-Wmultichar]
 1189 |                         vers = args.GetArg( 'Vers' );
      |                                             ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:1224:45: warning: multi-character character constant [-Wmultichar]
 1224 |                         vers = args.GetArg( 'Vers' );
      |                                             ^~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:1281:45: warning: multi-character character constant [-Wmultichar]
 1281 |                         vers = args.GetArg( 'Vers' );
      |                                             ^~~~~~
In file included from /var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:8:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers/XFloatList.h: In member function ‘virtual long int XFloatList::Add(float)’:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers/XFloatList.h:17:151: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
   17 |                 virtual long                    Add( float inNum )                                                              { return mList.Add( *((void**) &inNum) );                       }
      |                                                                                                                                                      ~^~~~~~~~~~~~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers/XFloatList.h: In member function ‘virtual float XFloatList::Fetch(long int)’:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers/XFloatList.h:21:172: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
   21 |                 virtual float                   Fetch( long inIndex )                                                   { long t = (long) mList.Fetch( inIndex ); return *((float*) &t);}
      |                                                                                                                                                                           ~^~~~~~~~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers/XFloatList.h: In member function ‘float XFloatList::operator[](long int)’:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/Common/GeneralTools/Headers/XFloatList.h:39:172: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
   39 |                 float                                   operator[] ( const long inIndex )                               { long t = (long) mList.Fetch( inIndex ); return *((float*) &t); }
      |                                                                                                                                                                           ~^~~~~~~~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp: In constructor ‘GForce::GForce(void*)’:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:173:23: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
  173 |         mDict.AddVar( "T", &mT );
      |                       ^~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:174:23: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
  174 |         mDict.AddVar( "LAST_PARTICLE_START", &mLastParticleStart );
      |                       ^~~~~~~~~~~~~~~~~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:175:23: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
  175 |         mDict.AddVar( "NUM_PARTICLES", &mNumRunningParticles );
      |                       ^~~~~~~~~~~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:185:23: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
  185 |         mDict.AddVar( "LAST_SONG_START", &mLastSongStart );
      |                       ^~~~~~~~~~~~~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp: In member function ‘void GForce::NewSong()’:
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:1324:29: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
 1324 |         mTrackText.Replace( "\\r", "\r" );
      |                             ^~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:1324:36: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
 1324 |         mTrackText.Replace( "\\r", "\r" );
      |                                    ^~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:1325:29: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
 1325 |         mTrackText.Replace( "#ARTIST#", mArtist.getCStr(), false );
      |                             ^~~~~~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:1326:29: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
 1326 |         mTrackText.Replace( "#ALBUM#", mAlbum.getCStr(), false );
      |                             ^~~~~~~~~
/var/tmp/portage/media-plugins/libvisual-plugins-0.4.2-r1/work/libvisual-plugins-0.4.2/plugins/actor/G-Force/GForceCommon/G-Force.cpp:1327:29: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
 1327 |         mTrackText.Replace( "#TITLE#", mSongTitle.getCStr(), false );
      |                             ^~~~~~~~~
cc1plus: some warnings being treated as errors
make[6]: *** [Makefile:519: G-Force.lo] Error 1

Originally reported downstream (hi @hartwork): https://bugs.gentoo.org/927006 Full build log: build.log

eli-schwartz avatar Sep 02 '24 00:09 eli-schwartz

Most of the errors are fixed in master. The remaining ones are being addressed in https://github.com/Libvisual/libvisual/pull/291. They should work in C++11 and can be backported to 0.4.x.

kaixiong avatar Jan 15 '25 21:01 kaixiong

and can be backported to 0.4.x.

…which we should do upstream (rather than only downstream in Gentoo), to be explicit about that.

hartwork avatar Jan 17 '25 23:01 hartwork