Bug#811996: ptlib: FTBFS with GCC 6: call overloaded is ambiguous

Martin Michlmayr tbm at hpe.com
Wed Jan 20 04:20:01 UTC 2016


Package: ptlib
Version: 2.10.11~dfsg-2
Severity: important
User: debian-gcc at 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.

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
...
> [CC] ptlib/unix/switch.cxx
> [CC] ptclib/cli.cxx
> In file included from /<<PKGBUILDDIR>>/include/ptlib.h:145:0,
>                  from ptclib/httpsvc.cxx:35:
> /<<PKGBUILDDIR>>/include/ptlib/psharedptr.h:63:21: warning: 'template<class> class std::auto_ptr' is deprecated [-Wdeprecated-declarations]
>      PSharedPtr(std::auto_ptr<element_type> & v)
>                      ^~~~~~~~
> 
> In file included from /usr/include/c++/6/bits/locale_conv.h:41:0,
>                  from /usr/include/c++/6/locale:43,
>                  from /usr/include/c++/6/iomanip:43,
>                  from /<<PKGBUILDDIR>>/include/ptlib/object.h:58,
>                  from /<<PKGBUILDDIR>>/include/ptlib/psync.h:43,
>                  from /<<PKGBUILDDIR>>/include/ptlib/critsec.h:34,
>                  from /<<PKGBUILDDIR>>/include/ptlib/contain.h:42,
>                  from /<<PKGBUILDDIR>>/include/ptlib.h:56,
>                  from ptclib/httpsvc.cxx:35:
> /usr/include/c++/6/bits/unique_ptr.h:49:28: note: declared here
>    template<typename> class auto_ptr;
>                             ^~~~~~~~
> 
> ptlib/unix/svcproc.cxx: In member function 'int PServiceProcess::InitialiseService()':
> ptlib/unix/svcproc.cxx:220:35: error: call of overloaded 'basic_ifstream(PString&)' is ambiguous
>        ifstream pidfile(pidfilename);
>                                    ^
> 
> In file included from ptlib/unix/svcproc.cxx:57:0:
> /usr/include/c++/6/fstream:511:7: note: candidate: std::basic_ifstream<_CharT, _Traits>::basic_ifstream(const string&, std::ios_base::openmode) [with _CharT = char; _Traits = std::char_traits<char>; std::__cxx11::string = std::__cxx11::basic_string<char>; std::ios_base::openmode = std::_Ios_Openmode]
>        basic_ifstream(const std::string& __s,
>        ^~~~~~~~~~~~~~
> 
> /usr/include/c++/6/fstream:495:7: note: candidate: std::basic_ifstream<_CharT, _Traits>::basic_ifstream(const char*, std::ios_base::openmode) [with _CharT = char; _Traits = std::char_traits<char>; std::ios_base::openmode = std::_Ios_Openmode]
>        basic_ifstream(const char* __s, ios_base::openmode __mode = ios_base::in)
>        ^~~~~~~~~~~~~~
> 
> In file included from /<<PKGBUILDDIR>>/include/ptlib.h:145:0,
>                  from ptclib/shttpsvc.cxx:35:
> /<<PKGBUILDDIR>>/include/ptlib/psharedptr.h:63:21: warning: 'template<class> class std::auto_ptr' is deprecated [-Wdeprecated-declarations]
>      PSharedPtr(std::auto_ptr<element_type> & v)
>                      ^~~~~~~~
> 
> In file included from /usr/include/c++/6/bits/locale_conv.h:41:0,
>                  from /usr/include/c++/6/locale:43,
>                  from /usr/include/c++/6/iomanip:43,
>                  from /<<PKGBUILDDIR>>/include/ptlib/object.h:58,
>                  from /<<PKGBUILDDIR>>/include/ptlib/psync.h:43,
>                  from /<<PKGBUILDDIR>>/include/ptlib/critsec.h:34,
>                  from /<<PKGBUILDDIR>>/include/ptlib/contain.h:42,
>                  from /<<PKGBUILDDIR>>/include/ptlib.h:56,
>                  from ptclib/shttpsvc.cxx:35:
> /usr/include/c++/6/bits/unique_ptr.h:49:28: note: declared here
>    template<typename> class auto_ptr;
>                             ^~~~~~~~
> 
> ptlib/unix/svcproc.cxx:387:33: error: call of overloaded 'basic_ifstream(PString&)' is ambiguous
>      ifstream pidfile(pidfilename);
>                                  ^
> 
> In file included from ptlib/unix/svcproc.cxx:57:0:
> /usr/include/c++/6/fstream:511:7: note: candidate: std::basic_ifstream<_CharT, _Traits>::basic_ifstream(const string&, std::ios_base::openmode) [with _CharT = char; _Traits = std::char_traits<char>; std::__cxx11::string = std::__cxx11::basic_string<char>; std::ios_base::openmode = std::_Ios_Openmode]
>        basic_ifstream(const std::string& __s,
>        ^~~~~~~~~~~~~~
> 
> /usr/include/c++/6/fstream:495:7: note: candidate: std::basic_ifstream<_CharT, _Traits>::basic_ifstream(const char*, std::ios_base::openmode) [with _CharT = char; _Traits = std::char_traits<char>; std::ios_base::openmode = std::_Ios_Openmode]
>        basic_ifstream(const char* __s, ios_base::openmode __mode = ios_base::in)
>        ^~~~~~~~~~~~~~
> 
> ptlib/unix/svcproc.cxx:415:37: error: call of overloaded 'basic_ofstream(PString&)' is ambiguous
>          ofstream pidfile(pidfilename);
>                                      ^



More information about the Pkg-voip-maintainers mailing list