File libakode-2.0.2-gcc6.patch of Package libakode

Index: akode-2.0.2/akode/lib/fast_resampler.cpp
===================================================================
--- akode-2.0.2.orig/akode/lib/fast_resampler.cpp
+++ akode-2.0.2/akode/lib/fast_resampler.cpp
@@ -37,7 +37,7 @@ FastResampler::FastResampler() : speed(1
 // A fast resampling by linear interpolation
 // I assume you know binary arithmetics and convertions if you're reading this
 // T is the input/output type, Arithm defines the used arithmetic
-template<typename T, typename S, template<typename S> class Arithm>
+template<typename T, typename S, template<typename U> class Arithm>
 static bool _doBuffer(AudioFrame* in, AudioFrame* out, float speed, unsigned sample_rate)
 {
     unsigned long vt_pos_start = 0;  // virtual positions of new sample
Index: akode-2.0.2/akode/lib/crossfader.cpp
===================================================================
--- akode-2.0.2.orig/akode/lib/crossfader.cpp
+++ akode-2.0.2/akode/lib/crossfader.cpp
@@ -27,7 +27,7 @@ namespace aKode {
 CrossFader::CrossFader(unsigned int time) : time(time),pos(0) {}
 
 // T is the input/output type, S is the fast arithmetics type, Div is a division method
-template<typename T, typename S, template<typename S> class Arithm>
+template<typename T, typename S, template<typename U> class Arithm>
 static bool _doFrame(AudioFrame* in, int& pos, AudioFrame* frame)
 {
     T** indata1 = (T**)in->data;
@@ -66,7 +66,7 @@ static bool _doFrame(AudioFrame* in, int
 }
 
 // T is the input/output type, S is the fast arithmetics type, Arithm defines devisions
-template<typename T, typename S, template<typename S> class Arithm>
+template<typename T, typename S, template<typename U> class Arithm>
 static bool _readFrame(AudioFrame* in, int& pos, AudioFrame* frame)
 {
     T** indata = (T**)frame->data;
Index: akode-2.0.2/akode/lib/volumefilter.cpp
===================================================================
--- akode-2.0.2.orig/akode/lib/volumefilter.cpp
+++ akode-2.0.2/akode/lib/volumefilter.cpp
@@ -29,7 +29,7 @@ namespace aKode {
 VolumeFilter::VolumeFilter() : m_volume(0) {}
 
 // T is the input/output type, S is the fast arithmetics type, Arithm is a division definition
-template<typename T, typename S, template<typename S> class Arithm>
+template<typename T, typename S, template<typename U> class Arithm>
 static bool _doFrame(AudioFrame* in, AudioFrame* out, int volume)
 {
     T** indata = (T**)in->data;
Index: akode-2.0.2/akode/lib/converter.cpp
===================================================================
--- akode-2.0.2.orig/akode/lib/converter.cpp
+++ akode-2.0.2/akode/lib/converter.cpp
@@ -26,7 +26,7 @@ namespace aKode {
 
 Converter::Converter(int sample_width) : m_sample_width(sample_width) {}
 
-template<typename T, typename S, template<typename T> class ArithmT, template<typename S> class ArithmS>
+template<typename T, typename S, template<typename U> class ArithmT, template<typename V> class ArithmS>
 static bool __doFrameFP(AudioFrame* in, AudioFrame* out, int sample_width)
 {
     AudioConfiguration config = *in;