• Stephan Bergmann's avatar
    Fix VclPtr assignment operators · 0f197698
    Stephan Bergmann yazdı
    The original templated assignment operator would never have been used, as
    std::enable_if expects a bool value as first template argument.  But it was also
    unnecessary anyway:
    
    (1) Assignment from VclPtr<reference_type> was (and is) covered by the
        implicitly defined copy assignment operator.
    
    (2) Assignment from naked reference_type* was covered by the user-supplied
        constructor from reference_type* to temporary, followed by (1); it is now
        covered directly by the user-supplied assignment operator from
        reference_type*.
    
    (3) Assignment from VclPtr<derived_type> was covered by the user-supplied,
        templated constructor from VclPtr<derived_type> to temporary, followed by
        (1); it is now covered directly by the user-supplied, templated assignment
        operator from VclPtr<derived_type>.
    
    (4) Assignment from naked derived_type* was (and is) covered by an implicit
        pointer up-cast, followed by (2).
    
    Change-Id: I3c7527feea72fdda76d911a42ae856c353b700b5
    0f197698
vclptr.hxx 10.8 KB