Package: mrtrix Version: 0.2.12-2 Severity: normal User: debian-...@lists.debian.org Usertags: ftbfs-gcc-6 gcc-6-overloaded-ambiguous
This package fails to build with GCC 6. GCC 6 has not been released yet, but it's expected that GCC 6 will become the default compiler for stretch. You can find a snapshot of GCC 6 in experimental. To build with GCC 6, you can set CC=gcc-6 CXX=g++-6 explicitly. You may be able to find out more about this issue at https://gcc.gnu.org/gcc-6/changes.html > sbuild (Debian sbuild) 0.68.0 (15 Jan 2016) on dl580gen9-02.hlinux ... > ERROR: [CC] cmd/tracks2prob.o > > g++ -c -Wall -pedantic -fPIC -fno-strict-aliasing -DGL_GLEXT_PROTOTYPES > -DUSE_TR1 -g -std=c++11 -pthread -I/usr/include/glibmm-2.4 > -I/usr/lib/x86_64-linux-gnu/glibmm-2.4/include -I/usr/include/sigc++-2.0 > -I/usr/lib/x86_64-linux-gnu/sigc++-2.0/include -I/usr/include/glib-2.0 > -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -Ilib -Isrc cmd/tracks2prob.cpp > -o cmd/tracks2prob.o > > failed with output: > > In file included from src/dwi/tractography/roi.h:28:0, > from src/dwi/tractography/properties.h:27, > from src/dwi/tractography/file.h:30, > from cmd/tracks2prob.cpp:43: > lib/image/interp.h: In member function 'float MR::Image::Interp::re() const': > lib/image/interp.h:238:46: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (faaa) val = faaa * image.re (os); os += stride[2]; > ^~ > lib/image/interp.h:238:7: note: ...this 'if' clause, but it is not > if (faaa) val = faaa * image.re (os); os += stride[2]; > ^~ > lib/image/interp.h:239:46: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (faab) val += faab * image.re (os); os += stride[1]; > ^~ > lib/image/interp.h:239:7: note: ...this 'if' clause, but it is not > if (faab) val += faab * image.re (os); os += stride[1]; > ^~ > lib/image/interp.h:240:46: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fabb) val += fabb * image.re (os); os -= stride[2]; > ^~ > lib/image/interp.h:240:7: note: ...this 'if' clause, but it is not > if (fabb) val += fabb * image.re (os); os -= stride[2]; > ^~ > lib/image/interp.h:241:46: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (faba) val += faba * image.re (os); os += stride[0]; > ^~ > lib/image/interp.h:241:7: note: ...this 'if' clause, but it is not > if (faba) val += faba * image.re (os); os += stride[0]; > ^~ > lib/image/interp.h:242:46: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fbba) val += fbba * image.re (os); os -= stride[1]; > ^~ > lib/image/interp.h:242:7: note: ...this 'if' clause, but it is not > if (fbba) val += fbba * image.re (os); os -= stride[1]; > ^~ > lib/image/interp.h:243:46: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fbaa) val += fbaa * image.re (os); os += stride[2]; > ^~ > lib/image/interp.h:243:7: note: ...this 'if' clause, but it is not > if (fbaa) val += fbaa * image.re (os); os += stride[2]; > ^~ > lib/image/interp.h:244:46: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fbab) val += fbab * image.re (os); os += stride[1]; > ^~ > lib/image/interp.h:244:7: note: ...this 'if' clause, but it is not > if (fbab) val += fbab * image.re (os); os += stride[1]; > ^~ > lib/image/interp.h: In member function 'float MR::Image::Interp::im() const': > lib/image/interp.h:258:46: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (faaa) val = faaa * image.im (os); os += stride[2]; > ^~ > lib/image/interp.h:258:7: note: ...this 'if' clause, but it is not > if (faaa) val = faaa * image.im (os); os += stride[2]; > ^~ > lib/image/interp.h:259:46: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (faab) val += faab * image.im (os); os += stride[1]; > ^~ > lib/image/interp.h:259:7: note: ...this 'if' clause, but it is not > if (faab) val += faab * image.im (os); os += stride[1]; > ^~ > lib/image/interp.h:260:46: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fabb) val += fabb * image.im (os); os -= stride[2]; > ^~ > lib/image/interp.h:260:7: note: ...this 'if' clause, but it is not > if (fabb) val += fabb * image.im (os); os -= stride[2]; > ^~ > lib/image/interp.h:261:46: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (faba) val += faba * image.im (os); os += stride[0]; > ^~ > lib/image/interp.h:261:7: note: ...this 'if' clause, but it is not > if (faba) val += faba * image.im (os); os += stride[0]; > ^~ > lib/image/interp.h:262:46: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fbba) val += fbba * image.im (os); os -= stride[1]; > ^~ > lib/image/interp.h:262:7: note: ...this 'if' clause, but it is not > if (fbba) val += fbba * image.im (os); os -= stride[1]; > ^~ > lib/image/interp.h:263:46: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fbaa) val += fbaa * image.im (os); os += stride[2]; > ^~ > lib/image/interp.h:263:7: note: ...this 'if' clause, but it is not > if (fbaa) val += fbaa * image.im (os); os += stride[2]; > ^~ > lib/image/interp.h:264:46: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fbab) val += fbab * image.im (os); os += stride[1]; > ^~ > lib/image/interp.h:264:7: note: ...this 'if' clause, but it is not > if (fbab) val += fbab * image.im (os); os += stride[1]; > ^~ > lib/image/interp.h: In member function 'float MR::Image::Interp::re_abs() > const': > lib/image/interp.h:277:53: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (faaa) val = faaa * fabs (image.re (os)); os += stride[2]; > ^~ > lib/image/interp.h:277:7: note: ...this 'if' clause, but it is not > if (faaa) val = faaa * fabs (image.re (os)); os += stride[2]; > ^~ > lib/image/interp.h:278:53: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (faab) val += faab * fabs (image.re (os)); os += stride[1]; > ^~ > lib/image/interp.h:278:7: note: ...this 'if' clause, but it is not > if (faab) val += faab * fabs (image.re (os)); os += stride[1]; > ^~ > lib/image/interp.h:279:53: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fabb) val += fabb * fabs (image.re (os)); os -= stride[2]; > ^~ > lib/image/interp.h:279:7: note: ...this 'if' clause, but it is not > if (fabb) val += fabb * fabs (image.re (os)); os -= stride[2]; > ^~ > lib/image/interp.h:280:53: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (faba) val += faba * fabs (image.re (os)); os += stride[0]; > ^~ > lib/image/interp.h:280:7: note: ...this 'if' clause, but it is not > if (faba) val += faba * fabs (image.re (os)); os += stride[0]; > ^~ > lib/image/interp.h:281:53: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fbba) val += fbba * fabs (image.re (os)); os -= stride[1]; > ^~ > lib/image/interp.h:281:7: note: ...this 'if' clause, but it is not > if (fbba) val += fbba * fabs (image.re (os)); os -= stride[1]; > ^~ > lib/image/interp.h:282:53: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fbaa) val += fbaa * fabs (image.re (os)); os += stride[2]; > ^~ > lib/image/interp.h:282:7: note: ...this 'if' clause, but it is not > if (fbaa) val += fbaa * fabs (image.re (os)); os += stride[2]; > ^~ > lib/image/interp.h:283:53: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fbab) val += fbab * fabs (image.re (os)); os += stride[1]; > ^~ > lib/image/interp.h:283:7: note: ...this 'if' clause, but it is not > if (fbab) val += fbab * fabs (image.re (os)); os += stride[1]; > ^~ > lib/image/interp.h: In member function 'float MR::Image::Interp::im_abs() > const': > lib/image/interp.h:297:53: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (faaa) val = faaa * fabs (image.im (os)); os += stride[2]; > ^~ > lib/image/interp.h:297:7: note: ...this 'if' clause, but it is not > if (faaa) val = faaa * fabs (image.im (os)); os += stride[2]; > ^~ > lib/image/interp.h:298:53: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (faab) val += faab * fabs (image.im (os)); os += stride[1]; > ^~ > lib/image/interp.h:298:7: note: ...this 'if' clause, but it is not > if (faab) val += faab * fabs (image.im (os)); os += stride[1]; > ^~ > lib/image/interp.h:299:53: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fabb) val += fabb * fabs (image.im (os)); os -= stride[2]; > ^~ > lib/image/interp.h:299:7: note: ...this 'if' clause, but it is not > if (fabb) val += fabb * fabs (image.im (os)); os -= stride[2]; > ^~ > lib/image/interp.h:300:53: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (faba) val += faba * fabs (image.im (os)); os += stride[0]; > ^~ > lib/image/interp.h:300:7: note: ...this 'if' clause, but it is not > if (faba) val += faba * fabs (image.im (os)); os += stride[0]; > ^~ > lib/image/interp.h:301:53: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fbba) val += fbba * fabs (image.im (os)); os -= stride[1]; > ^~ > lib/image/interp.h:301:7: note: ...this 'if' clause, but it is not > if (fbba) val += fbba * fabs (image.im (os)); os -= stride[1]; > ^~ > lib/image/interp.h:302:53: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fbaa) val += fbaa * fabs (image.im (os)); os += stride[2]; > ^~ > lib/image/interp.h:302:7: note: ...this 'if' clause, but it is not > if (fbaa) val += fbaa * fabs (image.im (os)); os += stride[2]; > ^~ > lib/image/interp.h:303:53: warning: statement is indented as if it were > guarded by... [-Wmisleading-indentation] > if (fbab) val += fbab * fabs (image.im (os)); os += stride[1]; > ^~ > lib/image/interp.h:303:7: note: ...this 'if' clause, but it is not > if (fbab) val += fbab * fabs (image.im (os)); os += stride[1]; > ^~ > cmd/tracks2prob.cpp: In constructor 'Voxel::Voxel(const MR::Point&)': > cmd/tracks2prob.cpp:130:21: error: call of overloaded 'round(const float&)' > is ambiguous > x (round (p[0])), > ^ > In file included from /usr/include/features.h:361:0, > from /usr/include/limits.h:25, > from > /usr/lib/gcc/x86_64-linux-gnu/6/include-fixed/limits.h:168, > from > /usr/lib/gcc/x86_64-linux-gnu/6/include-fixed/syslimits.h:7, > from > /usr/lib/gcc/x86_64-linux-gnu/6/include-fixed/limits.h:34, > from lib/mrtrix.h:51, > from lib/ptr.h:26, > from lib/args.h:26, > from lib/app.h:30, > from cmd/tracks2prob.cpp:41: > /usr/include/x86_64-linux-gnu/bits/mathcalls.h:309:1: note: candidate: double > round(double) > __MATHCALLX (round,, (_Mdouble_ __x), (__const__)); > ^ > In file included from lib/mrtrix.h:63:0, > from lib/ptr.h:26, > from lib/args.h:26, > from lib/app.h:30, > from cmd/tracks2prob.cpp:41: > /usr/include/c++/6/cmath:1712:3: note: candidate: constexpr long double > std::round(long double) > round(long double __x) > ^~~~~ > /usr/include/c++/6/cmath:1708:3: note: candidate: constexpr float > std::round(float) > round(float __x) > ^~~~~ > In file included from lib/ptr.h:26:0, > from lib/args.h:26, > from lib/app.h:30, > from cmd/tracks2prob.cpp:41: > lib/mrtrix.h:383:14: note: candidate: int MR::round(float) > inline int round (float x) { return (int (x + (x > 0.0 ? 0.5 : -0.5))); } > ^~~~~ > cmd/tracks2prob.cpp:131:21: error: call of overloaded 'round(const float&)' > is ambiguous > y (round (p[1])), > ^ > In file included from /usr/include/features.h:361:0, > from /usr/include/limits.h:25, > from > /usr/lib/gcc/x86_64-linux-gnu/6/include-fixed/limits.h:168, > from > /usr/lib/gcc/x86_64-linux-gnu/6/include-fixed/syslimits.h:7, > from > /usr/lib/gcc/x86_64-linux-gnu/6/include-fixed/limits.h:34, > from lib/mrtrix.h:51, > from lib/ptr.h:26, > from lib/args.h:26, > from lib/app.h:30, > from cmd/tracks2prob.cpp:41: > /usr/include/x86_64-linux-gnu/bits/mathcalls.h:309:1: note: candidate: double > round(double) > __MATHCALLX (round,, (_Mdouble_ __x), (__const__)); > ^ > In file included from lib/mrtrix.h:63:0, > from lib/ptr.h:26, > from lib/args.h:26, > from lib/app.h:30, > from cmd/tracks2prob.cpp:41: > /usr/include/c++/6/cmath:1712:3: note: candidate: constexpr long double > std::round(long double) > round(long double __x) > ^~~~~ > /usr/include/c++/6/cmath:1708:3: note: candidate: constexpr float > std::round(float) > round(float __x) > ^~~~~ > In file included from lib/ptr.h:26:0, > from lib/args.h:26, > from lib/app.h:30, > from cmd/tracks2prob.cpp:41: > lib/mrtrix.h:383:14: note: candidate: int MR::round(float) > inline int round (float x) { return (int (x + (x > 0.0 ? 0.5 : -0.5))); } > ^~~~~ > cmd/tracks2prob.cpp:132:21: error: call of overloaded 'round(const float&)' > is ambiguous -- Martin Michlmayr Linux for HPE Helion, Hewlett Packard Enterprise