Bug#811794: 3dldf: FTBFS with GCC 6: error: reference is ambiguous
Package: 3dldf
Version: 2.0.3+dfsg-4
Severity: important
User: debian-gcc@lists.debian.org
Usertags: ftbfs-gcc-6 gcc-6-reference-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.
Note that only the first error is reported; there might be more. 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.67.0 (26 Dec 2015) on dl580gen9-02.hlinux
...
> Compiling 'parser.c++'. This may take awhile ...
> g++ -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -c -o parser.o parser.c++
> parser.y++: In function 'int yyparse(yyscan_t)':
> parser.y++:40411:13: error: reference to 'conditional' is ambiguous
> int status= conditional(scanner_node,i);
> ^~~~~~~~~~~
>
> In file included from parser.y++:17:0:
> ./io.web:5251:1: note: candidates are: int Scan_Parse::conditional(Scanner_Node, int)
> Scan_Parse::conditional(Scanner_Node scanner_node,
> ^ ~~~~~
>
> In file included from /usr/include/c++/6/bits/move.h:57:0,
> from /usr/include/c++/6/bits/stl_pair.h:59,
> from /usr/include/c++/6/utility:70,
> from /usr/include/c++/6/algorithm:60,
> from ./loader.web:221,
> from parser.y++:12:
> /usr/include/c++/6/type_traits:104:12: note: template<bool <anonymous>, class, class> struct std::conditional
> struct conditional;
> ^~~~~~~~~~~
>
> parser.y++:40459:13: error: reference to 'conditional' is ambiguous
> int status= conditional(static_cast<Scanner_Node> (parameter),discard);
> ^~~~~~~~~~~
>
> In file included from parser.y++:17:0:
> ./io.web:5251:1: note: candidates are: int Scan_Parse::conditional(Scanner_Node, int)
> Scan_Parse::conditional(Scanner_Node scanner_node,
> ^ ~~~~~
>
> In file included from /usr/include/c++/6/bits/move.h:57:0,
> from /usr/include/c++/6/bits/stl_pair.h:59,
> from /usr/include/c++/6/utility:70,
> from /usr/include/c++/6/algorithm:60,
> from ./loader.web:221,
> from parser.y++:12:
> /usr/include/c++/6/type_traits:104:12: note: template<bool <anonymous>, class, class> struct std::conditional
> struct conditional;
> ^~~~~~~~~~~
>
> parser.y++:40502:13: error: reference to 'conditional' is ambiguous
...
--
Martin Michlmayr
Linux for HPE Helion, Hewlett Packard Enterprise
Reply to: