Operators for `munit_plus_op_switch` break on compilation
codylico opened this issue · 0 comments
codylico commented
from AppVeyor:
c:\projects\munit-plus\munit.hpp(668) : error C2143: syntax error : missing ';' before '=='
c:\projects\munit-plus\munit.hpp(679) : see reference to class template instantiation 'munit_plus_op_switch<A>' being compiled
c:\projects\munit-plus\munit.hpp(667) : error C3856: 'munit_plus_ops::equal_to': class is not a class template
c:\projects\munit-plus\munit.hpp(668) : error C2061: syntax error : identifier 'B'
c:\projects\munit-plus\munit.hpp(668) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\projects\munit-plus\munit.hpp(668) : error C2805: binary 'operator ==' has too few parameters
c:\projects\munit-plus\munit.hpp(670) : error C2143: syntax error : missing ';' before '!='
c:\projects\munit-plus\munit.hpp(669) : error C3856: 'munit_plus_ops::not_equal_to': class is not a class template
c:\projects\munit-plus\munit.hpp(670) : error C2061: syntax error : identifier 'B'
c:\projects\munit-plus\munit.hpp(670) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\projects\munit-plus\munit.hpp(670) : error C2805: binary 'operator !=' has too few parameters
c:\projects\munit-plus\munit.hpp(672) : error C2143: syntax error : missing ';' before '>'
c:\projects\munit-plus\munit.hpp(671) : error C3856: 'munit_plus_ops::greater': class is not a class template
c:\projects\munit-plus\munit.hpp(672) : error C2061: syntax error : identifier 'B'
c:\projects\munit-plus\munit.hpp(672) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\projects\munit-plus\munit.hpp(672) : error C2805: binary 'operator >' has too few parameters
c:\projects\munit-plus\munit.hpp(674) : error C2143: syntax error : missing ';' before '<'
c:\projects\munit-plus\munit.hpp(673) : error C3856: 'munit_plus_ops::less': class is not a class template
c:\projects\munit-plus\munit.hpp(674) : error C2061: syntax error : identifier 'B'
c:\projects\munit-plus\munit.hpp(674) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\projects\munit-plus\munit.hpp(674) : error C2805: binary 'operator <' has too few parameters
c:\projects\munit-plus\munit.hpp(676) : error C2143: syntax error : missing ';' before '>='
c:\projects\munit-plus\munit.hpp(675) : error C3856: 'munit_plus_ops::greater_equal': class is not a class template
c:\projects\munit-plus\munit.hpp(676) : error C2061: syntax error : identifier 'B'
c:\projects\munit-plus\munit.hpp(676) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\projects\munit-plus\munit.hpp(676) : error C2805: binary 'operator >=' has too few parameters
c:\projects\munit-plus\munit.hpp(678) : error C2143: syntax error : missing ';' before '<='
c:\projects\munit-plus\munit.hpp(677) : error C3856: 'munit_plus_ops::less_equal': class is not a class template
c:\projects\munit-plus\munit.hpp(678) : error C2061: syntax error : identifier 'B'
c:\projects\munit-plus\munit.hpp(678) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\projects\munit-plus\munit.hpp(678) : error C2805: binary 'operator <=' has too few parameters
c:\projects\munit-plus\munit.hpp(757) : error C2065: 'B' : undeclared identifier
c:\projects\munit-plus\munit.hpp(757) : error C2143: syntax error : missing ')' before 'const'
c:\projects\munit-plus\munit.hpp(757) : error C2433: 'munit_plus_op_switch<A>::operator ==' : 'inline' not permitted on data declarations
c:\projects\munit-plus\munit.hpp(757) : error C2470: 'munit_plus_op_switch<A>::operator ==' : looks like a function definition, but there is no parameter list; skipping apparent body
c:\projects\munit-plus\munit.hpp(757) : error C2059: syntax error : ')'
c:\projects\munit-plus\munit.hpp(763) : error C2065: 'A' : undeclared identifier
c:\projects\munit-plus\munit.hpp(763) : error C2923: 'munit_plus_op_switch' : 'A' is not a valid template type argument for parameter 'A'
c:\projects\munit-plus\munit.hpp(763) : error C2143: syntax error : missing ';' before '{'
c:\projects\munit-plus\munit.hpp(763) : error C2447: '{' : missing function header (old-style formal list?)
c:\projects\munit-plus\munit.hpp(769) : error C2065: 'B' : undeclared identifier
c:\projects\munit-plus\munit.hpp(769) : error C2143: syntax error : missing ')' before 'const'
c:\projects\munit-plus\munit.hpp(769) : error C2433: 'munit_plus_op_switch<A>::operator >' : 'inline' not permitted on data declarations
c:\projects\munit-plus\munit.hpp(769) : error C2470: 'munit_plus_op_switch<A>::operator >' : looks like a function definition, but there is no parameter list; skipping apparent body
c:\projects\munit-plus\munit.hpp(769) : error C2059: syntax error : ')'
c:\projects\munit-plus\munit.hpp(775) : error C2065: 'A' : undeclared identifier
c:\projects\munit-plus\munit.hpp(775) : error C2923: 'munit_plus_op_switch' : 'A' is not a valid template type argument for parameter 'A'
c:\projects\munit-plus\munit.hpp(775) : error C2143: syntax error : missing ';' before '{'
c:\projects\munit-plus\munit.hpp(775) : error C2447: '{' : missing function header (old-style formal list?)
c:\projects\munit-plus\munit.hpp(781) : error C2065: 'B' : undeclared identifier
c:\projects\munit-plus\munit.hpp(781) : error C2143: syntax error : missing ')' before 'const'
c:\projects\munit-plus\munit.hpp(781) : error C2433: 'munit_plus_op_switch<A>::operator >=' : 'inline' not permitted on data declarations
c:\projects\munit-plus\munit.hpp(781) : error C2470: 'munit_plus_op_switch<A>::operator >=' : looks like a function definition, but there is no parameter list; skipping apparent body
c:\projects\munit-plus\munit.hpp(781) : error C2059: syntax error : ')'
c:\projects\munit-plus\munit.hpp(787) : error C2065: 'A' : undeclared identifier
c:\projects\munit-plus\munit.hpp(787) : error C2923: 'munit_plus_op_switch' : 'A' is not a valid template type argument for parameter 'A'
c:\projects\munit-plus\munit.hpp(787) : error C2143: syntax error : missing ';' before '{'
c:\projects\munit-plus\munit.hpp(787) : error C2447: '{' : missing function header (old-style formal list?)
example.cpp
c:\projects\munit-plus\munit.hpp(668) : error C2143: syntax error : missing ';' before '=='
c:\projects\munit-plus\munit.hpp(679) : see reference to class template instantiation 'munit_plus_op_switch<A>' being compiled
c:\projects\munit-plus\munit.hpp(667) : error C3856: 'munit_plus_ops::equal_to': class is not a class template
c:\projects\munit-plus\munit.hpp(668) : error C2061: syntax error : identifier 'B'
c:\projects\munit-plus\munit.hpp(668) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\projects\munit-plus\munit.hpp(668) : error C2805: binary 'operator ==' has too few parameters
c:\projects\munit-plus\munit.hpp(670) : error C2143: syntax error : missing ';' before '!='
c:\projects\munit-plus\munit.hpp(669) : error C3856: 'munit_plus_ops::not_equal_to': class is not a class template
c:\projects\munit-plus\munit.hpp(670) : error C2061: syntax error : identifier 'B'
c:\projects\munit-plus\munit.hpp(670) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\projects\munit-plus\munit.hpp(670) : error C2805: binary 'operator !=' has too few parameters
c:\projects\munit-plus\munit.hpp(672) : error C2143: syntax error : missing ';' before '>'
c:\projects\munit-plus\munit.hpp(671) : error C3856: 'munit_plus_ops::greater': class is not a class template
c:\projects\munit-plus\munit.hpp(672) : error C2061: syntax error : identifier 'B'
c:\projects\munit-plus\munit.hpp(672) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\projects\munit-plus\munit.hpp(672) : error C2805: binary 'operator >' has too few parameters
c:\projects\munit-plus\munit.hpp(674) : error C2143: syntax error : missing ';' before '<'
c:\projects\munit-plus\munit.hpp(673) : error C3856: 'munit_plus_ops::less': class is not a class template
c:\projects\munit-plus\munit.hpp(674) : error C2061: syntax error : identifier 'B'
c:\projects\munit-plus\munit.hpp(674) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\projects\munit-plus\munit.hpp(674) : error C2805: binary 'operator <' has too few parameters
c:\projects\munit-plus\munit.hpp(676) : error C2143: syntax error : missing ';' before '>='
c:\projects\munit-plus\munit.hpp(675) : error C3856: 'munit_plus_ops::greater_equal': class is not a class template
c:\projects\munit-plus\munit.hpp(676) : error C2061: syntax error : identifier 'B'
c:\projects\munit-plus\munit.hpp(676) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\projects\munit-plus\munit.hpp(676) : error C2805: binary 'operator >=' has too few parameters
c:\projects\munit-plus\munit.hpp(678) : error C2143: syntax error : missing ';' before '<='
c:\projects\munit-plus\munit.hpp(677) : error C3856: 'munit_plus_ops::less_equal': class is not a class template
c:\projects\munit-plus\munit.hpp(678) : error C2061: syntax error : identifier 'B'
c:\projects\munit-plus\munit.hpp(678) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\projects\munit-plus\munit.hpp(678) : error C2805: binary 'operator <=' has too few parameters
c:\projects\munit-plus\munit.hpp(757) : error C2065: 'B' : undeclared identifier
c:\projects\munit-plus\munit.hpp(757) : error C2143: syntax error : missing ')' before 'const'
c:\projects\munit-plus\munit.hpp(757) : error C2433: 'munit_plus_op_switch<A>::operator ==' : 'inline' not permitted on data declarations
c:\projects\munit-plus\munit.hpp(757) : error C2470: 'munit_plus_op_switch<A>::operator ==' : looks like a function definition, but there is no parameter list; skipping apparent body
c:\projects\munit-plus\munit.hpp(757) : error C2059: syntax error : ')'
c:\projects\munit-plus\munit.hpp(763) : error C2065: 'A' : undeclared identifier
c:\projects\munit-plus\munit.hpp(763) : error C2923: 'munit_plus_op_switch' : 'A' is not a valid template type argument for parameter 'A'
c:\projects\munit-plus\munit.hpp(763) : error C2143: syntax error : missing ';' before '{'
c:\projects\munit-plus\munit.hpp(763) : error C2447: '{' : missing function header (old-style formal list?)
c:\projects\munit-plus\munit.hpp(769) : error C2065: 'B' : undeclared identifier
c:\projects\munit-plus\munit.hpp(769) : error C2143: syntax error : missing ')' before 'const'
c:\projects\munit-plus\munit.hpp(769) : error C2433: 'munit_plus_op_switch<A>::operator >' : 'inline' not permitted on data declarations
c:\projects\munit-plus\munit.hpp(769) : error C2470: 'munit_plus_op_switch<A>::operator >' : looks like a function definition, but there is no parameter list; skipping apparent body
c:\projects\munit-plus\munit.hpp(769) : error C2059: syntax error : ')'
c:\projects\munit-plus\munit.hpp(775) : error C2065: 'A' : undeclared identifier
c:\projects\munit-plus\munit.hpp(775) : error C2923: 'munit_plus_op_switch' : 'A' is not a valid template type argument for parameter 'A'
c:\projects\munit-plus\munit.hpp(775) : error C2143: syntax error : missing ';' before '{'
c:\projects\munit-plus\munit.hpp(775) : error C2447: '{' : missing function header (old-style formal list?)
c:\projects\munit-plus\munit.hpp(781) : error C2065: 'B' : undeclared identifier
c:\projects\munit-plus\munit.hpp(781) : error C2143: syntax error : missing ')' before 'const'
c:\projects\munit-plus\munit.hpp(781) : error C2433: 'munit_plus_op_switch<A>::operator >=' : 'inline' not permitted on data declarations
c:\projects\munit-plus\munit.hpp(781) : error C2470: 'munit_plus_op_switch<A>::operator >=' : looks like a function definition, but there is no parameter list; skipping apparent body
c:\projects\munit-plus\munit.hpp(781) : error C2059: syntax error : ')'
c:\projects\munit-plus\munit.hpp(787) : error C2065: 'A' : undeclared identifier
c:\projects\munit-plus\munit.hpp(787) : error C2923: 'munit_plus_op_switch' : 'A' is not a valid template type argument for parameter 'A'
c:\projects\munit-plus\munit.hpp(787) : error C2143: syntax error : missing ';' before '{'
c:\projects\munit-plus\munit.hpp(787) : error C2447: '{' : missing function header (old-style formal list?)