[Debian-med-packaging] Bug#831115: hhsuite: FTBFS with GCC 6: util.C:58:26: error: 'float log2(float)' conflicts with a previous declaration

Lucas Nussbaum lucas at debian.org
Thu Jul 14 07:03:33 UTC 2016


Source: hhsuite
Version: 2.0.16-6
Severity: serious
Tags: stretch sid
User: debian-qa at lists.debian.org
Usertags: qa-ftbfs-20160713 qa-ftbfs
Justification: FTBFS with GCC 6 on amd64

Hi,

During a rebuild of all packages in sid using the gcc-defaults package
available in experimental to make GCC default to version 6, your package failed
to build on amd64. For more information about GCC 6 and Stretch, see:
- https://wiki.debian.org/GCC6
- https://lists.debian.org/debian-devel-announce/2016/06/msg00007.html

Relevant part (hopefully):
> g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -O3 -Wall -Wno-deprecated -Wno-char-subscripts -fno-strict-aliasing -Ics  -fopenmp -DHH_SSE3 -msse3 -Wl,-z,relro hhblits.C -o hhblits  cs/blosum_matrix.o  cs/log.o  cs/application.o  cs/getopt_pp.o  cs/assert_helpers.o  cs/aa.o  cs/as.o -lpthread -fopenmp -lrt -lffindex
> In file included from cs/count_profile-inl.h:8:0,
>                  from cs/context_profile.h:7,
>                  from cs/context_library.h:8,
>                  from hhblits.C:123:
> cs/alignment-inl.h: In function 'Vector<double> cs::PositionSpecificWeightsAndDiversity(const cs::Alignment<Abc>&, Matrix<double>&)':
> cs/alignment-inl.h:823:16: warning: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses]
>              if (ncoli < kMinCols)  // number of columns in subalignment insufficient?
>                 ^
> In file included from hhblits.C:128:0:
> util.C: In function 'float log2(float)':
> util.C:58:26: error: 'float log2(float)' conflicts with a previous declaration
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>                           ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1542:3: note: previous declaration 'constexpr float std::log2(float)'
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C: In function 'float log10(float)':
> util.C:59:27: error: 'float log10(float)' conflicts with a previous declaration
>  inline float log10(float x) {return (x<=0? (float)(-100000):0.434294481*log(x));}
>                            ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:380:3: note: previous declaration 'constexpr float std::log10(float)'
>    log10(float __x)
>    ^~~~~
> In file included from hhblits.C:128:0:
> util.C: In function 'char* sprintg(float, int)':
> util.C:379:35: error: call of overloaded 'log10(float)' is ambiguous
>    float log10val = log10(fabs(val));
>                                    ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:112:1: note: candidate: double log10(double)
>  __MATHCALL (log10,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:384:3: note: candidate: constexpr long double std::log10(long double)
>    log10(long double __x)
>    ^~~~~
> /usr/include/c++/6/cmath:380:3: note: candidate: constexpr float std::log10(float)
>    log10(float __x)
>    ^~~~~
> In file included from hhblits.C:128:0:
> util.C:59:14: note: candidate: float log10(float)
>  inline float log10(float x) {return (x<=0? (float)(-100000):0.434294481*log(x));}
>               ^~~~~
> In file included from hhblits.C:132:0:
> hhutil.C: In function 'void ReadDefaultsFile(int&, char**, char*)':
> hhutil.C:478:67: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>                    argv_conf[argc_conf]=new(char[strlen(c_first)+1]);
>                                                                    ^
> hhutil.C:483:63: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>                argv_conf[argc_conf]=new(char[strlen(c_first)+1]);
>                                                                ^
> In file included from hhblits.C:133:0:
> hhmatrices.C: In function 'void SetSubstitutionMatrix()':
> hhmatrices.C:380:35: error: call of overloaded 'log2(float)' is ambiguous
>        S[a][b] = log2(R[a][b]/pb[a]); // S[a][b] = log2(P(a,b)/P(a)/P(b))
>                                    ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:144:1: note: candidate: double log2(double)
>  __MATHCALL (log2,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1546:3: note: candidate: constexpr long double std::log2(long double)
>    log2(long double __x)
>    ^~~~
> /usr/include/c++/6/cmath:1542:3: note: candidate: constexpr float std::log2(float)
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C:58:14: note: candidate: float log2(float)
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>               ^~~~
> In file included from hhblits.C:133:0:
> hhmatrices.C:390:56: error: call of overloaded 'log2(float&)' is ambiguous
>        for (a=0; a<20; ++a) entropy_pb-=pb[a]*log2(pb[a]);
>                                                         ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:144:1: note: candidate: double log2(double)
>  __MATHCALL (log2,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1546:3: note: candidate: constexpr long double std::log2(long double)
>    log2(long double __x)
>    ^~~~
> /usr/include/c++/6/cmath:1542:3: note: candidate: constexpr float std::log2(float)
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C:58:14: note: candidate: float log2(float)
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>               ^~~~
> In file included from hhblits.C:133:0:
> hhmatrices.C:394:37: error: call of overloaded 'log2(float&)' is ambiguous
>         entropy-=P[a][b]*log2(R[a][b]);
>                                      ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:144:1: note: candidate: double log2(double)
>  __MATHCALL (log2,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1546:3: note: candidate: constexpr long double std::log2(long double)
>    log2(long double __x)
>    ^~~~
> /usr/include/c++/6/cmath:1542:3: note: candidate: constexpr float std::log2(float)
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C:58:14: note: candidate: float log2(float)
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>               ^~~~
> In file included from hhblits.C:133:0:
> hhmatrices.C: In function 'void SetSecStrucSubstitutionMatrix()':
> hhmatrices.C:473:38: error: call of overloaded 'log2(float&)' is ambiguous
>     S73[A][B][cf] = log2(P73[A][B][cf]);
>                                       ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:144:1: note: candidate: double log2(double)
>  __MATHCALL (log2,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1546:3: note: candidate: constexpr long double std::log2(long double)
>    log2(long double __x)
>    ^~~~
> /usr/include/c++/6/cmath:1542:3: note: candidate: constexpr float std::log2(float)
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C:58:14: note: candidate: float log2(float)
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>               ^~~~
> In file included from hhblits.C:133:0:
> hhmatrices.C:484:36: error: call of overloaded 'log2(float&)' is ambiguous
>       S33[B][cf][BB][ccf] = log2(sum);
>                                     ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:144:1: note: candidate: double log2(double)
>  __MATHCALL (log2,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1546:3: note: candidate: constexpr long double std::log2(long double)
>    log2(long double __x)
>    ^~~~
> /usr/include/c++/6/cmath:1542:3: note: candidate: constexpr float std::log2(float)
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C:58:14: note: candidate: float log2(float)
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>               ^~~~
> In file included from hhblits.C:142:0:
> hhhmm.C: In member function 'HMM& HMM::operator=(HMM&)':
> hhhmm.C:169:44: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>      sname[k]=new(char[strlen(q.sname[k])+1]);
>                                             ^
> hhhmm.C:174:40: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>      seq[k]=new(char[strlen(q.seq[k])+1]);
>                                         ^
> hhhmm.C: In member function 'int HMM::Read(FILE*, char*)':
> hhhmm.C:360:57: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>                      seq[k-1]=new(char[strlen(cur_seq)+1]);
>                                                          ^
> hhhmm.C:367:57: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>                    sname[k] = new (char[strlen(line+1)+1]); //+1 for terminating '\0'
>                                                          ^
> hhhmm.C:468:47: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>              seq[k]=new(char[strlen(cur_seq)+1]);
>                                                ^
> hhhmm.C: In member function 'int HMM::ReadHMMer(FILE*, char*)':
> hhhmm.C:719:53: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>                seq[nsa_dssp] = new(char[par.maxres+2]);
>                                                      ^
> hhhmm.C:740:53: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>                seq[nss_pred] = new(char[par.maxres+2]);
>                                                      ^
> hhhmm.C:761:53: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>                seq[nss_conf] = new(char[par.maxres+2]);
>                                                      ^
> hhhmm.C:835:49: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>            seq[nss_dssp] = new(char[par.maxres+2]);
>                                                  ^
> hhhmm.C:1009:46: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        sname[k+1]=new(char[strlen(longname)+1]);
>                                               ^
> hhhmm.C:1011:27: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        seq[k]=new(char[L+2]);
>                            ^
> hhhmm.C:1014:29: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        seq[k+1]=new(char[L+2]);
>                              ^
> hhhmm.C:1032:44: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        sname[k]=new(char[strlen(longname)+1]);
>                                             ^
> hhhmm.C:1034:27: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        seq[k]=new(char[L+2]);
>                            ^
> hhhmm.C: In member function 'int HMM::ReadHMMer3(FILE*, char*)':
> hhhmm.C:1182:53: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>                seq[nsa_dssp] = new(char[par.maxres+2]);
>                                                      ^
> hhhmm.C:1203:53: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>                seq[nss_pred] = new(char[par.maxres+2]);
>                                                      ^
> hhhmm.C:1224:53: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>                seq[nss_conf] = new(char[par.maxres+2]);
>                                                      ^
> hhhmm.C:1281:58: error: call of overloaded 'log2(float)' is ambiguous
>       tr[0][a] = log2((float) exp(-1.0*strflta(ptr,99999))); //store transition probabilites as log2 values
>                                                           ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:144:1: note: candidate: double log2(double)
>  __MATHCALL (log2,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1546:3: note: candidate: constexpr long double std::log2(long double)
>    log2(long double __x)
>    ^~~~
> /usr/include/c++/6/cmath:1542:3: note: candidate: constexpr float std::log2(float)
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C:58:14: note: candidate: float log2(float)
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>               ^~~~
> In file included from hhblits.C:142:0:
> hhhmm.C:1295:49: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>            seq[nss_dssp] = new(char[par.maxres+2]);
>                                                  ^
> hhhmm.C:1415:69: error: call of overloaded 'log2(float)' is ambiguous
>                  tr[i][a] = log2((float) exp(-1.0*strflta(ptr,99999))); //store transition prob's as log2-values
>                                                                      ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:144:1: note: candidate: double log2(double)
>  __MATHCALL (log2,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1546:3: note: candidate: constexpr long double std::log2(long double)
>    log2(long double __x)
>    ^~~~
> /usr/include/c++/6/cmath:1542:3: note: candidate: constexpr float std::log2(float)
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C:58:14: note: candidate: float log2(float)
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>               ^~~~
> In file included from hhblits.C:142:0:
> hhhmm.C:1471:46: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        sname[k+1]=new(char[strlen(longname)+1]);
>                                               ^
> hhhmm.C:1473:27: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        seq[k]=new(char[L+2]);
>                            ^
> hhhmm.C:1476:29: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        seq[k+1]=new(char[L+2]);
>                              ^
> hhhmm.C:1494:44: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        sname[k]=new(char[strlen(longname)+1]);
>                                             ^
> hhhmm.C:1496:27: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        seq[k]=new(char[L+2]);
>                            ^
> hhhmm.C: In member function 'void HMM::InsertCalibration(char*)':
> hhhmm.C:2177:39: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    char** lines = new(char*[3*L+100000]);
>                                        ^
> hhhmm.C:2205:44: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        lines[nline]=new(char[strlen(line)+1]);
>                                             ^
> hhhmm.C: In member function 'void HMM::AddSSPrediction(char*, char*)':
> hhhmm.C:2329:34: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        seq[nss_pred]=new(char[L+2]);
>                                   ^
> hhhmm.C:2336:34: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        seq[nss_conf]=new(char[L+2]);
>                                   ^
> In file included from hhblits.C:143:0:
> hhalignment.C: In constructor 'Alignment::Alignment(int, int)':
> hhalignment.C:47:30: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    sname = new(char*[maxseq+2]);
>                               ^
> hhalignment.C:48:28: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    seq = new(char*[maxseq+2]);
>                             ^
> hhalignment.C:49:22: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    l = new(int[maxres]);
>                       ^
> hhalignment.C:50:26: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    X = new(char*[maxseq+2]);
>                           ^
> hhalignment.C:51:40: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    I = new(short unsigned int*[maxseq+2]);
>                                         ^
> hhalignment.C:52:28: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    keep = new(char[maxseq+2]);
>                             ^
> hhalignment.C:53:31: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    display = new(char[maxseq+2]);
>                                ^
> hhalignment.C:54:27: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    wg = new(float[maxseq+2]);
>                            ^
> hhalignment.C:55:28: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    nseqs = new(int[maxres+2]);
>                             ^
> hhalignment.C: In member function 'Alignment& Alignment::operator=(Alignment&)':
> hhalignment.C:144:25: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        nres=new(int[N_in]);
>                          ^
> hhalignment.C:150:48: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        sname[k]=new(char[strlen(ali.sname[k])+1]);
>                                                 ^
> hhalignment.C:156:44: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        seq[k]=new(char[strlen(ali.seq[k])+1]);
>                                             ^
> hhalignment.C:162:42: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        X[k]=new(char[strlen(ali.seq[k])+2]);
>                                           ^
> hhalignment.C:167:56: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        I[k]=new(short unsigned int[strlen(ali.seq[k])+2]);
>                                                         ^
> hhalignment.C: In member function 'void Alignment::Read(FILE*, char*, char*)':
> hhalignment.C:252:49: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>                seq[k]=new(char[strlen(cur_seq)+2]);
>                                                  ^
> hhalignment.C:254:47: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>                X[k]=new(char[strlen(cur_seq)+2]);
>                                                ^
> hhalignment.C:256:61: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>                I[k]=new(short unsigned int[strlen(cur_seq)+2]);
>                                                              ^
> In file included from hhblits.C:143:0:
> hhalignment.C:315:50: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>            sname[k] = new(char[strlen(cur_name)+1]);
>                                                   ^
> hhalignment.C:431:41: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        seq[k]=new(char[strlen(cur_seq)+2]);
>                                          ^
> hhalignment.C:433:39: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        X[k]=new(char[strlen(cur_seq)+2]);
>                                        ^
> hhalignment.C:435:53: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        I[k]=new(short unsigned int[strlen(cur_seq)+2]);
>                                                      ^
> hhalignment.C: In member function 'void Alignment::Compress(const char*)':
> hhalignment.C:649:36: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>   if (nres==NULL) nres=new(int[N_in]);
>                                     ^
> hhalignment.C: In member function 'void Alignment::GetSeqsFromHMM(HMM*)':
> hhalignment.C:923:44: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        seq[k]=new(char[strlen(q->seq[qk])+1]);
>                                             ^
> hhalignment.C:926:42: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        X[k]=new(char[strlen(q->seq[qk])+1]);
>                                           ^
> hhalignment.C:928:56: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        I[k]=new(short unsigned int[strlen(q->seq[qk])+1]);
>                                                         ^
> hhalignment.C:949:50: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        sname[k] = new(char[strlen(q->sname[qk])+1]);
>                                                   ^
> hhalignment.C: In member function 'int Alignment::FilterForDisplay(int, int, int, float, int)':
> hhalignment.C:972:33: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    char *dummy = new(char[N_in+1]);
>                                  ^
> hhalignment.C: In member function 'int Alignment::Filter2(char*, int, int, float, int, int, int)':
> hhalignment.C:1031:28: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    char* in=new(char[N_in+1]);   // in[k]=1: seq k has been accepted; in[k]=0: seq k has not yet been accepted at current seqid
>                             ^
> hhalignment.C:1032:30: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    char* inkk=new(char[N_in+1]); // inkk[k]=1 iff in[ksort[k]]=1 else 0;
>                               ^
> hhalignment.C:1033:25: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    int* Nmax=new(int[L+2]);     // position-dependent maximum-sequence-identity threshold for filtering? (variable used in former version was idmax)
>                          ^
> hhalignment.C:1034:29: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    int* idmaxwin=new(int[L+2]);      // minimum value of idmax[i-WFIL,i+WFIL]
>                              ^
> hhalignment.C:1035:34: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    int* seqid_prev=new(int[N_in+1]); // maximum-sequence-identity threshold used in previous round of filtering (with lower seqid)
>                                   ^
> hhalignment.C:1036:22: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    int* N=new(int[L+2]);             // N[i] number of already accepted sequences at position i
>                       ^
> hhalignment.C:1064:26: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        first=new(int[N_in]);// first non-gap position in sequence k
>                           ^
> hhalignment.C:1065:26: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        last =new(int[N_in]);// last  non-gap position in sequence k
>                           ^
> hhalignment.C:1079:25: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        nres=new(int[N_in]);
>                          ^
> hhalignment.C:1095:26: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        ksort=new(int[N_in]); // never reuse alignment object for new alignment with more sequences
>                           ^
> hhalignment.C: In member function 'int Alignment::FilterWithCoreHMM(char*, float, HMM*)':
> hhalignment.C:1303:34: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    float** logodds=new(float*[L+1]); // log-odds ratios for HMM qcore
>                                   ^
> hhalignment.C:1312:26: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        first=new(int[N_in]);// first non-gap position in sequence k
>                           ^
> hhalignment.C:1313:26: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        last =new(int[N_in]);// last  non-gap position in sequence k
>                           ^
> hhalignment.C:1326:25: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        nres=new(int[N_in]);
>                          ^
> hhalignment.C: In member function 'void Alignment::FrequenciesAndTransitions(HMM*, char*, bool)':
> hhalignment.C:1598:41: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>            q->seq[q->ncons]=new(char[L+2]);
>                                          ^
> hhalignment.C:1605:56: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>            q->sname[q->nfirst]=new(char[strlen(name)+11]);
>                                                         ^
> hhalignment.C:1609:42: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>            q->seq[q->nfirst]=new(char[L+2]);
>                                           ^
> hhalignment.C:1661:52: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>            q->sname[nn]=new(char[strlen(sname[k])+1]);
>                                                     ^
> hhalignment.C:1664:48: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>            q->seq[nn]=new(char[strlen(seq[k])+1]);
>                                                 ^
> hhalignment.C: In member function 'void Alignment::Amino_acid_frequencies_and_transitions_from_M_state(HMM*, char*)':
> hhalignment.C:1764:20: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    n = new(int*[L+2]);
>                     ^
> hhalignment.C:1823:18: warning: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses]
>                if (ncol<NCOLMIN)
>                   ^
> hhalignment.C:1876:43: error: call of overloaded 'log2(float)' is ambiguous
>        q->tr[i][M2M]=log2(q->tr[i][M2M]/sum);
>                                            ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:144:1: note: candidate: double log2(double)
>  __MATHCALL (log2,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1546:3: note: candidate: constexpr long double std::log2(long double)
>    log2(long double __x)
>    ^~~~
> /usr/include/c++/6/cmath:1542:3: note: candidate: constexpr float std::log2(float)
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C:58:14: note: candidate: float log2(float)
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>               ^~~~
> In file included from hhblits.C:143:0:
> hhalignment.C:1877:43: error: call of overloaded 'log2(float)' is ambiguous
>        q->tr[i][M2I]=log2(q->tr[i][M2I]/sum);
>                                            ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:144:1: note: candidate: double log2(double)
>  __MATHCALL (log2,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1546:3: note: candidate: constexpr long double std::log2(long double)
>    log2(long double __x)
>    ^~~~
> /usr/include/c++/6/cmath:1542:3: note: candidate: constexpr float std::log2(float)
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C:58:14: note: candidate: float log2(float)
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>               ^~~~
> In file included from hhblits.C:143:0:
> hhalignment.C:1878:43: error: call of overloaded 'log2(float)' is ambiguous
>        q->tr[i][M2D]=log2(q->tr[i][M2D]/sum);
>                                            ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:144:1: note: candidate: double log2(double)
>  __MATHCALL (log2,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1546:3: note: candidate: constexpr long double std::log2(long double)
>    log2(long double __x)
>    ^~~~
> /usr/include/c++/6/cmath:1542:3: note: candidate: constexpr float std::log2(float)
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C:58:14: note: candidate: float log2(float)
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>               ^~~~
> In file included from hhblits.C:143:0:
> hhalignment.C: In member function 'void Alignment::Transitions_from_I_state(HMM*, char*)':
> hhalignment.C:1980:20: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    n = new(int*[L+2]);
>                     ^
> hhalignment.C:2044:18: warning: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses]
>                if (ncol>=NCOLMIN)
>                   ^
> hhalignment.C:2108:43: error: call of overloaded 'log2(float)' is ambiguous
>        q->tr[i][I2M]=log2(q->tr[i][I2M]/sum);
>                                            ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:144:1: note: candidate: double log2(double)
>  __MATHCALL (log2,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1546:3: note: candidate: constexpr long double std::log2(long double)
>    log2(long double __x)
>    ^~~~
> /usr/include/c++/6/cmath:1542:3: note: candidate: constexpr float std::log2(float)
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C:58:14: note: candidate: float log2(float)
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>               ^~~~
> In file included from hhblits.C:143:0:
> hhalignment.C:2109:43: error: call of overloaded 'log2(float)' is ambiguous
>        q->tr[i][I2I]=log2(q->tr[i][I2I]/sum);
>                                            ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:144:1: note: candidate: double log2(double)
>  __MATHCALL (log2,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1546:3: note: candidate: constexpr long double std::log2(long double)
>    log2(long double __x)
>    ^~~~
> /usr/include/c++/6/cmath:1542:3: note: candidate: constexpr float std::log2(float)
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C:58:14: note: candidate: float log2(float)
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>               ^~~~
> In file included from hhblits.C:143:0:
> hhalignment.C: In member function 'void Alignment::Transitions_from_D_state(HMM*, char*)':
> hhalignment.C:2173:20: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    n = new(int*[L+2]);
>                     ^
> hhalignment.C:2240:18: warning: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses]
>                if (ncol<NCOLMIN)
>                   ^
> hhalignment.C:2314:43: error: call of overloaded 'log2(float)' is ambiguous
>        q->tr[i][D2M]=log2(q->tr[i][D2M]/sum);
>                                            ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:144:1: note: candidate: double log2(double)
>  __MATHCALL (log2,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1546:3: note: candidate: constexpr long double std::log2(long double)
>    log2(long double __x)
>    ^~~~
> /usr/include/c++/6/cmath:1542:3: note: candidate: constexpr float std::log2(float)
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C:58:14: note: candidate: float log2(float)
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>               ^~~~
> In file included from hhblits.C:143:0:
> hhalignment.C:2315:43: error: call of overloaded 'log2(float)' is ambiguous
>        q->tr[i][D2D]=log2(q->tr[i][D2D]/sum);
>                                            ^
> In file included from /usr/include/features.h:364:0,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39,
>                  from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:495,
>                  from /usr/include/c++/6/iostream:38,
>                  from hhblits.C:62:
> /usr/include/x86_64-linux-gnu/bits/mathcalls.h:144:1: note: candidate: double log2(double)
>  __MATHCALL (log2,, (_Mdouble_ __x));
>  ^
> In file included from /usr/include/c++/6/math.h:36:0,
>                  from hhblits.C:70:
> /usr/include/c++/6/cmath:1546:3: note: candidate: constexpr long double std::log2(long double)
>    log2(long double __x)
>    ^~~~
> /usr/include/c++/6/cmath:1542:3: note: candidate: constexpr float std::log2(float)
>    log2(float __x)
>    ^~~~
> In file included from hhblits.C:128:0:
> util.C:58:14: note: candidate: float log2(float)
>  inline float log2(float x)  {return (x<=0? (float)(-100000):1.442695041*log(x));}
>               ^~~~
> In file included from hhblits.C:143:0:
> hhalignment.C: In member function 'void Alignment::MergeMasterSlave(Hit&, Alignment&, char*)':
> hhalignment.C:2430:39: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    char* cur_seq = new(char[par.maxcol]);   // Sequence currently read in
>                                        ^
> hhalignment.C:2442:32: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    int* imatch=new(int[hit.j2+1]);
>                                 ^
> hhalignment.C:2574:47: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>                char* new_seq=new(char[2*maxcol]);
>                                                ^
> hhalignment.C:2587:28: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        seq[N_in]=new(char[h]);
>                             ^
> hhalignment.C:2590:26: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        X[N_in]=new(char[h]);
>                           ^
> hhalignment.C:2592:40: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        I[N_in]=new(short unsigned int[h]);
>                                         ^
> hhalignment.C:2594:52: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        sname[N_in]=new(char[strlen(Tali.sname[k])+1]);
>                                                     ^
> hhalignment.C: In member function 'void Alignment::AddSequence(char*, int*)':
> hhalignment.C:2625:24: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    X[N_in]=new(char[L+2]);
>                         ^
> hhalignment.C: In member function 'void Alignment::AddSSPrediction(char*, char*)':
> hhalignment.C:2663:30: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        seq[N_in]=new(char[L+2]);
>                               ^
> hhalignment.C:2665:28: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        X[N_in]=new(char[L+2]);
>                             ^
> hhalignment.C:2667:42: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        I[N_in]=new(short unsigned int[L+2]);
>                                           ^
> hhalignment.C:2686:30: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        seq[N_in]=new(char[L+2]);
>                               ^
> hhalignment.C:2688:28: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        X[N_in]=new(char[L+2]);
>                             ^
> hhalignment.C:2690:42: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        I[N_in]=new(short unsigned int[L+2]);
>                                           ^
> hhalignment.C: In member function 'void Alignment::GetPositionSpecificWeights(float**)':
> hhalignment.C:2743:24: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        n = new(int*[L+2]);
>                         ^
> In file included from hhblits.C:144:0:
> hhhit.C: In member function 'void Hit::Delete()':
> hhhit.C:122:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
>      for (int k=0; k<n_display; ++k) delete[] sname[k]; delete[] sname;
>      ^~~
> hhhit.C:122:56: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'for'
>      for (int k=0; k<n_display; ++k) delete[] sname[k]; delete[] sname;
>                                                         ^~~~~~
> hhhit.C:125:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
>      for (int k=0; k<n_display; ++k) delete[] seq[k]; delete[] seq;
>      ^~~
> hhhit.C:125:54: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'for'
>      for (int k=0; k<n_display; ++k) delete[] seq[k]; delete[] seq;
>                                                       ^~~~~~
> hhhit.C: In member function 'void Hit::AllocateBacktraceMatrix(int, int)':
> hhhit.C:141:20: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    bMM=new(char*[Nq]);
>                     ^
> hhhit.C:142:20: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    bMI=new(char*[Nq]);
>                     ^
> hhhit.C:143:20: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    bIM=new(char*[Nq]);
>                     ^
> hhhit.C:144:20: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    bDG=new(char*[Nq]);
>                     ^
> hhhit.C:145:20: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    bGD=new(char*[Nq]);
>                     ^
> hhhit.C:146:25: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    cell_off=new(char*[Nq]);
>                          ^
> hhhit.C:149:26: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        bMM[i]=new(char[Nt]);
>                           ^
> hhhit.C:150:26: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        bMI[i]=new(char[Nt]);
>                           ^
> hhhit.C:151:26: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        bIM[i]=new(char[Nt]);
>                           ^
> hhhit.C:152:26: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        bGD[i]=new(char[Nt]);
>                           ^
> hhhit.C:153:26: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        bDG[i]=new(char[Nt]);
>                           ^
> hhhit.C:154:31: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        cell_off[i]=new(char[Nt]);
>                                ^
> hhhit.C: In member function 'void Hit::AllocateForwardMatrix(int, int)':
> hhhit.C:192:23: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    F_MM=new(double*[Nq]);
>                        ^
> hhhit.C:199:25: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    scale=new(double[Nq+1]); // need Nq+3?
>                          ^
> hhhit.C:202:31: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        F_MM[i] = new(double[Nt]);
>                                ^
> hhhit.C: In member function 'void Hit::AllocateBackwardMatrix(int, int)':
> hhhit.C:252:23: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    B_MM=new(double*[Nq]);
>                        ^
> hhhit.C:261:31: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        B_MM[i] = new(double[Nt]);
>                                ^
> hhhit.C: In member function 'void Hit::AllocateIndices(int)':
> hhhit.C:291:19: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    i = new(int[len]);
>                    ^
> hhhit.C:292:19: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    j = new(int[len]);
>                    ^
> hhhit.C: In member function 'void Hit::Backtrace(HMM*, HMM*)':
> hhhit.C:1147:30: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    S    = new( float[nsteps+1]);
>                               ^
> hhhit.C:1148:30: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    S_ss = new( float[nsteps+1]);
>                               ^
> hhhit.C: In member function 'void Hit::BacktraceMAC(HMM*, HMM*)':
> hhhit.C:1487:30: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    S    = new( float[nsteps+1]);
>                               ^
> hhhit.C:1488:30: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    S_ss = new( float[nsteps+1]);
>                               ^
> hhhit.C:1489:37: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    P_posterior = new( float[nsteps+1]);
>                                      ^
> hhhit.C: In member function 'void Hit::InitializeBacktrace(HMM*, HMM*)':
> hhhit.C:1795:43: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    longname=new(char[strlen(t->longname)+1]);
>                                            ^
> hhhit.C:1796:39: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    name    =new(char[strlen(t->name)+1]);
>                                        ^
> hhhit.C:1797:39: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    file    =new(char[strlen(t->file)+1]);
>                                        ^
> hhhit.C:1808:30: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    this->i = new( int[i2+j2+2]);
>                               ^
> hhhit.C:1809:30: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    this->j = new( int[i2+j2+2]);
>                               ^
> hhhit.C:1810:31: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    states  = new( char[i2+j2+2]);
>                                ^
> hhhit.C:1813:32: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    sname=new(char*[t->n_display]);
>                                 ^
> hhhit.C:1814:32: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    seq  =new(char*[t->n_display]);
>                                 ^
> hhhit.C:1833:46: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>     sname[k] = new(char[strlen(t->sname[k])+1]);
>                                               ^
> hhhit.C:1834:44: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>     seq[k]   = new(char[strlen(t->seq[k])+1]);
>                                             ^
> hhhit.C:1840:34: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>   dbfile = new(char[strlen(ptr)+1]);
>                                   ^
> In file included from hhblits.C:145:0:
> hhhalfalignment.C: In constructor 'HalfAlignment::HalfAlignment(int)':
> hhhalfalignment.C:46:25: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    h = new(int[maxseqdis]);   //h[k] = next position of sequence k to be written
>                          ^
> hhhalfalignment.C:47:27: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    s = new(char*[maxseqdis]);  //s[k][h] = character in column h, sequence k of output alignment
>                            ^
> hhhalfalignment.C:48:26: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    l = new(int*[maxseqdis]);   //counts non-gap residues: l[k][i] = index of last residue AT OR BEFORE match state i in seq k
>                           ^
> hhhalfalignment.C:49:26: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    m = new(int*[maxseqdis]);   //counts positions:        m[k][i] = position of match state i in string seq[k]
>                           ^
> In file included from hhblits.C:262:0:
> hhprefilter.C: In function 'void init_no_prefiltering()':
> hhprefilter.C:794:52: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>     dbfiles_new[ndb_new]=new(char[strlen(db_name)+1]);
>                                                     ^
> hhprefilter.C: In function 'void init_prefilter()':
> hhprefilter.C:846:45: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>     dbnames[num_dbs]=new(char[strlen(word)+1]);
>                                              ^
> hhprefilter.C: In function 'void prefilter_db()':
> hhprefilter.C:1045:42: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    __m128i** workspace = new(__m128i*[cpu]);
>                                           ^
> hhprefilter.C:1144:56: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>         dbfiles_old[ndb_old]=new(char[strlen(db_name)+1]);
>                                                         ^
> hhprefilter.C:1150:56: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>         dbfiles_new[ndb_new]=new(char[strlen(db_name)+1]);
>                                                         ^
> hhblits.C: In function 'void ReadQueryA3MFile()':
> hhblits.C:781:54: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>        Qali.longname = new(char[strlen(q->longname)+1]);
>                                                       ^
> hhblits.C: In function 'void DoViterbiSearch(char**, int, bool)':
> hhblits.C:914:55: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>     hit[bin]->dbfile = new(char[strlen(dbfiles[idb])+1]);
>                                                        ^
> hhblits.C: In function 'void RescoreWithViterbiKeepAlignment(int)':
> hhblits.C:1120:51: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>     dbfiles[ndb]=new(char[strlen(hit_cur.dbfile)+1]);
>                                                    ^
> hhblits.C: In function 'void perform_realign(char**, int)':
> hhblits.C:1406:57: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>     hit[bin]->dbfile = new(char[strlen(hit_cur.dbfile)+1]);
>                                                          ^
> hhblits.C:1716:59: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>         hit[bin]->dbfile = new(char[strlen(dbfiles[idb])+1]);
>                                                            ^
> hhblits.C: In function 'int main(int, char**)':
> hhblits.C:2140:25: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    format = new(int[bins]);
>                          ^
> hhblits.C:2190:5: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
>      if (par.prefilter)
>      ^~
> hhblits.C:2192:7: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'if'
>        prefilter_db();  // in hhprefilter.C
>        ^~~~~~~~~~~~
> hhblits.C:2240:58: warning: non-constant array new length must be specified without parentheses around the type-id [-Wvla]
>    dbfiles_new[ndb_new]=new(char[strlen(dbfiles_old[a])+1]);
>                                                           ^
> make[3]: *** [hhblits] Error 1

The full build log is available from:
   http://people.debian.org/~lucas/logs/2016/07/13/hhsuite_2.0.16-6_unstable_gcc6.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 Debian-med-packaging mailing list