[Pkg-octave-devel] Bug#362219: FTBFS with GCC 4.2: ambiguous overload for 'operator=='

Martin Michlmayr tbm at cyrius.com
Wed Apr 12 20:54:08 UTC 2006


Package: octave2.9
Version: 2.9.4-13

Your package fails to build with GCC 4.2.  Version 4.2 has not been
released yet but I'm building with a snapshot in order to find errors
and give people an advance warning.  While the compiler error is
obviously not your problem (reported as #361602), it seems there are
some bugs in your package as well.  You can reproduce this with the
gcc-snapshot package.


> Automatic build of octave2.9_2.9.4-13 on em64t by sbuild/amd64 1.112
...
> /usr/bin/g++ -c  -fPIC -I. -I.. -I../liboctave -I../src -I../libcruft/misc  -DHAVE_CONFIG_H  -Wall -W -Wshadow -O2 load-save.cc -o pic/load-save.o
> ls-hdf5.h:70: warning: unused parameter 'prot'
> load-save.cc: In function 'octave_value_list Fsave(const octave_value_list&, int)':
> load-save.cc:1689: error: ambiguous overload for 'operator==' in 'file. gzofstream::rdbuf()->gzfilebuf::<anonymous>.std::basic_streambuf<_CharT, _Traits>::pubseekoff [with _CharT = char, _Traits = std::char_traits<char>](0l, _S_cur, std::operator|(_S_in, _S_out)) == std::fpos<__mbstate_t>(0l)'
> load-save.cc:1689: note: candidates are: operator==(std::streamoff, std::streamoff) <built-in>
> ../liboctave/oct-inttypes.h:585: note:                 bool operator==(const octave_int<unsigned int>&, const octave_int<signed char>&)
> ../liboctave/oct-inttypes.h:585: note:                 bool operator==(const octave_int<signed char>&, const octave_int<unsigned int>&)
> ../liboctave/oct-inttypes.h:586: note:                 bool operator==(const octave_int<unsigned int>&, const octave_int<short int>&)
> ../liboctave/oct-inttypes.h:586: note:                 bool operator==(const octave_int<short int>&, const octave_int<unsigned int>&)
> ../liboctave/oct-inttypes.h:587: note:                 bool operator==(const octave_int<unsigned int>&, const octave_int<int>&)
> ../liboctave/oct-inttypes.h:587: note:                 bool operator==(const octave_int<int>&, const octave_int<unsigned int>&)
> ../liboctave/oct-inttypes.h:589: note:                 bool operator==(const octave_int<long unsigned int>&, const octave_int<signed char>&)
> ../liboctave/oct-inttypes.h:589: note:                 bool operator==(const octave_int<signed char>&, const octave_int<long unsigned int>&)
> ../liboctave/oct-inttypes.h:590: note:                 bool operator==(const octave_int<long unsigned int>&, const octave_int<short int>&)
> ../liboctave/oct-inttypes.h:590: note:                 bool operator==(const octave_int<short int>&, const octave_int<long unsigned int>&)
> ../liboctave/oct-inttypes.h:591: note:                 bool operator==(const octave_int<long unsigned int>&, const octave_int<int>&)
> ../liboctave/oct-inttypes.h:591: note:                 bool operator==(const octave_int<int>&, const octave_int<long unsigned int>&)
> ../liboctave/oct-inttypes.h:592: note:                 bool operator==(const octave_int<long unsigned int>&, const octave_int<long int>&)
> ../liboctave/oct-inttypes.h:592: note:                 bool operator==(const octave_int<long int>&, const octave_int<long unsigned int>&)
> ../liboctave/oct-inttypes.h:624: note:                 bool operator==(const octave_int<unsigned int>&, const octave_int<long int>&)
> ../liboctave/oct-inttypes.h:624: note:                 bool operator==(const octave_int<long int>&, const octave_int<unsigned int>&)
> load-save.cc:1711: error: ambiguous overload for 'operator==' in 'file. std::basic_ofstream<_CharT, _Traits>::rdbuf [with _CharT = char, _Traits = std::char_traits<char>]()->std::basic_filebuf<char, std::char_traits<char> >::<anonymous>.std::basic_streambuf<_CharT, _Traits>::pubseekoff [with _CharT = char, _Traits = std::char_traits<char>](0l, _S_cur, std::operator|(_S_in, _S_out)) == std::fpos<__mbstate_t>(0l)'
> load-save.cc:1711: note: candidates are: operator==(std::streamoff, std::streamoff) <built-in>
> ../liboctave/oct-inttypes.h:585: note:                 bool operator==(const octave_int<unsigned int>&, const octave_int<signed char>&)
> ../liboctave/oct-inttypes.h:585: note:                 bool operator==(const octave_int<signed char>&, const octave_int<unsigned int>&)
> ../liboctave/oct-inttypes.h:586: note:                 bool operator==(const octave_int<unsigned int>&, const octave_int<short int>&)
> ../liboctave/oct-inttypes.h:586: note:                 bool operator==(const octave_int<short int>&, const octave_int<unsigned int>&)
> ../liboctave/oct-inttypes.h:587: note:                 bool operator==(const octave_int<unsigned int>&, const octave_int<int>&)
> ../liboctave/oct-inttypes.h:587: note:                 bool operator==(const octave_int<int>&, const octave_int<unsigned int>&)
> ../liboctave/oct-inttypes.h:589: note:                 bool operator==(const octave_int<long unsigned int>&, const octave_int<signed char>&)
> ../liboctave/oct-inttypes.h:589: note:                 bool operator==(const octave_int<signed char>&, const octave_int<long unsigned int>&)
> ../liboctave/oct-inttypes.h:590: note:                 bool operator==(const octave_int<long unsigned int>&, const octave_int<short int>&)
> ../liboctave/oct-inttypes.h:590: note:                 bool operator==(const octave_int<short int>&, const octave_int<long unsigned int>&)
> ../liboctave/oct-inttypes.h:591: note:                 bool operator==(const octave_int<long unsigned int>&, const octave_int<int>&)
> ../liboctave/oct-inttypes.h:591: note:                 bool operator==(const octave_int<int>&, const octave_int<long unsigned int>&)
> ../liboctave/oct-inttypes.h:592: note:                 bool operator==(const octave_int<long unsigned int>&, const octave_int<long int>&)
> ../liboctave/oct-inttypes.h:592: note:                 bool operator==(const octave_int<long int>&, const octave_int<long unsigned int>&)
> ../liboctave/oct-inttypes.h:624: note:                 bool operator==(const octave_int<unsigned int>&, const octave_int<long int>&)
> ../liboctave/oct-inttypes.h:624: note:                 bool operator==(const octave_int<long int>&, const octave_int<unsigned int>&)
> load-save.cc: At global scope:
> load-save.cc:1910: error: inlined_to pointer is set but no predecesors found
> virtual octave_localtime::~octave_localtime()/6461: (inline copy in void write_header(std::ostream&, load_save_format)/2862) availability:available(706) 36 insns (55 after inlining) tree externally_visible finalized inlinable
>   called by: 
>   calls: octave_base_tm::~octave_base_tm()/6462 (inlined) void operator delete(void*)/5088 
> load-save.cc:1910: internal compiler error: verify_cgraph_node failed
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <URL:http://gcc.gnu.org/bugs.html> for instructions.
> make[3]: *** [pic/load-save.o] Error 1
> make[3]: Leaving directory `/build/tbm/octave2.9-2.9.4/src'

-- 
Martin Michlmayr
http://www.cyrius.com/




More information about the Pkg-octave-devel mailing list