vendredi 31 août 2018

VS2017 - Error overloading function with different template template parameters with same argument

Error overloading function with different template template parameters with same argument

In VS2017 I am getting an error

error C2535: 'bool mv::conjoined_graph::make_node_(T_allocator::owner_ptr &,T_allocator::owner_ptr::node> &)': member function already defined or declared

However, the two fucntion declarations have different arguments, 'owner_ptr &new_node' and 'owner_ptr &new_node`

bool make_node_(owner_ptr<detail::base_node_class<T_node, T_size>> &b_node, owner_ptr<typename first_graph::node> &new_node)

bool make_node_(owner_ptr<detail::base_node_class<T_node, T_size>> &b_node, owner_ptr<typename second_graph::node> &new_node)

This code compiles fine on GCC.

I found a similar error here:

Error overloading function with different template template parameters with same argument

Could anybody suggest a solution as I want to code to be the same for linux and windows and compile with both GCC and MSVC.

Aucun commentaire:

Enregistrer un commentaire