Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- enum some_enum {R, G, B};
- typedef std::pair<some_enum, some_enum> Enum_Pair;
- typedef std::vector<some_enum> Enum_list;
- typedef std::pair<Enum_Pair, Enum_list> Some_Struct;
- typedef std::list<Some_Struct> Full_Struct;
- #define MAKEFULLSTRUCT(First_, Second_, some_enums)
- (Some_Struct(Enum_Pair(First_, Second_), list_of (some_enums) ))
- int main()
- {
- int i = G;
- Full_Struct test_struct = list_of
- MAKEFULLSTRUCT(R, R, R).to_container(test_struct);
- }
- error C2668: 'std::vector<_Ty>::vector' : ambiguous call to overloaded function
- with [_Ty=some_enum]
- vector(593): could be 'std::vector<_Ty>::vector(std::vector<_Ty> &&)'
- with [ _Ty=some_enum]
- vector(515): or 'std::vector<_Ty>::vector(unsigned int)'
- with [ _Ty=some_enum]
- while trying to match the argument list '(boost::assign_detail::generic_list<T>)'
- with [ T=some_enum ]
- #define MAKEFULLSTRUCT(First_, Second_, some_enums)
- (Some_Struct(Enum_Pair(First_, Second_),
- list_of(some_enums).convert_to_container<Enum_list>()))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement