I have got as far as FormPreferences in my attempts to get lyx to compile 
with cxx 6.5. Now I'm a little stuck.

We have not defined an operator=() for class Converters and I'm getting the 
following error message. What's the best way to resolve this? 

I guess that defining operator=() as below is possible, but do we want it and 
if not what's the solution?

Angus

Possible solution
==============
Converters & Converters::operator=()(Converters const & other) {
        converterlist_ = other.converterlist_;
        latex_command_ = other.latex_command_;
        visited_= other.visited_;
        // The offender?
        // std::queue<int> Q_;
        Q_ = other.Q_;
}

The problem
==========
void FormPreferences::Converters::apply() const
{
        converters = local_converters; // The offending line
        converters.update(formats);
        converters.buildGraph();
}

The error message:

cxx: Error: /usr/lib/cmplrs/cxx/V6.5-021/include/cxx/deque, line 574: #468 a
          template argument may not reference a local type
          detected during:
            instantiation of "std::deque<T, Allocator> &std::deque<T,
                      Allocator>::operator=(const std::deque<T, Allocator> &)
                      [with T=int, Allocator=std::allocator<int>]" at line 936
                      of "../../../../devel/src/frontends/xforms/FormPreferences.C"
            implicit generation of "std::queue<int, std::deque<int,
                      std::allocator<int>>> &std::queue<T,
                      Container>::operator=(const std::queue<int,
                      std::deque<int, std::allocator<int>>> &) [with T=int,
                      Container=std::deque<int, std::allocator<int>>]" at line
                      936 of "../../../../devel/src/frontends/xforms/FormPreferences.C"
            implicit generation of
                      "Converters &Converters::operator=(const Converters &)"
                      at line 936 of 
"../../../../devel/src/frontends/xforms/FormPreferences.C"
          copy(x.begin() + size(), x.end(),
----------^



Reply via email to