Ticket #1507: variant2.patch

File variant2.patch, 3.8 KB (added by Richard Webb <richard.webb@…>, 15 years ago)

Silence 4512 warnings on VC9

  • detail/apply_visitor_binary.hpp

     
    6363        return visitor_(value1_, value2);
    6464    }
    6565
     66private:
     67    //Silence 4512 (assignment operator could not be generated) warning on VC8/9
     68    apply_visitor_binary_invoke& operator=(const apply_visitor_binary_invoke&);
    6669};
    6770
    6871template <typename Visitor, typename Visitable2>
     
    100103        return boost::apply_visitor(invoker, visitable2_);
    101104    }
    102105
     106private:
     107    //Silence 4512 (assignment operator could not be generated) warning on VC8/9
     108    apply_visitor_binary_unwrap& operator=(const apply_visitor_binary_unwrap&);
    103109};
    104110
    105111}} // namespace detail::variant
  • detail/apply_visitor_delayed.hpp

     
    7272        return apply_visitor(visitor_, visitable1, visitable2);
    7373    }
    7474
     75private:
     76    //Silence 4512 (assignment operator could not be generated) warning on VC8/9
     77    apply_visitor_delayed_t& operator=(const apply_visitor_delayed_t&);
    7578};
    7679
    7780template <typename Visitor>
  • detail/variant_io.hpp

     
    6464        out_ << operand;
    6565    }
    6666
     67private:
     68    //Silence 4512 (assignment operator could not be generated) warning on VC8/9
     69    printer& operator=(const printer&);
    6770};
    6871
    6972}} // namespace detail::variant
  • variant.hpp

     
    290290    {
    291291        operand.~T();
    292292
    293 #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x0551))
     293#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x0551)) || \
     294    BOOST_WORKAROUND(BOOST_MSVC, >= 1300)
    294295        operand; // suppresses warnings
    295296#endif
    296297
     
    529530
    530531#endif // MSVC6 workaround
    531532
     533private:
     534    //Silence 4512 (assignment operator could not be generated) warning on VC8/9
     535    direct_assigner& operator=(const direct_assigner&);
     536
    532537};
    533538
    534539///////////////////////////////////////////////////////////////////////////////
     
    647652        BOOST_VARIANT_AUX_RETURN_VOID;
    648653    }
    649654
     655private:
     656    //Silence 4512 (assignment operator could not be generated) warning on VC8/9
     657    backup_assigner& operator=(const backup_assigner&);
    650658};
    651659
    652660///////////////////////////////////////////////////////////////////////////////
     
    684692        ::boost::detail::variant::move_swap( operand, other );
    685693    }
    686694
     695private:
     696    //Silence 4512 (assignment operator could not be generated) warning on VC8/9
     697    swap_with& operator=(const swap_with&);
    687698};
    688699
    689700///////////////////////////////////////////////////////////////////////////////
     
    740751        return Comp()(lhs_content, rhs_content);
    741752    }
    742753
     754private:
     755    //Silence 4512 (assignment operator could not be generated) warning on VC8/9
     756    comparer& operator=(const comparer&);
    743757};
    744758
    745759///////////////////////////////////////////////////////////////////////////////
     
    891905        return internal_visit( operand.get(), 1L );
    892906    }
    893907
     908private:
     909    //Silence 4512 (assignment operator could not be generated) warning on VC8/9
     910    invoke_visitor& operator=(const invoke_visitor&);
    894911};
    895912
    896913}} // namespace detail::variant
     
    15411558            BOOST_VARIANT_AUX_RETURN_VOID;
    15421559        }
    15431560
     1561    private:
     1562            //Silence 4512 (assignment operator could not be generated) warning on VC8/9
     1563            assigner& operator=(const assigner&);
    15441564    };
    15451565
    15461566    friend class assigner;