You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Catch does not compile on ObjC++ code (.mm files) with default configuration.
The reason is that the template signature of the base class which is overridden specify const & qualifier for argument of match function, while for NSString* the signature is specified as bool match( NSString* arg) override.
Replacing the signature on these methods with bool match( NSString* const& arg) override fixes the compile error
The text was updated successfully, but these errors were encountered:
pqnet
changed the title
overloads of match(NSString* ) have wrong type to be overload, hence do not compile
overloads of match(NSString* ) have wrong type to be overload of the base method, hence it does not compile on ObjectiveC++
Mar 15, 2019
@horenmar it seems like you missed one at line 142, otherwise it is just the same as (the relevant portion) of my local corrected copy. I am not familiar with the codebase nor with Travis, I just downloaded the catch.hpp file and discovered the error, I am willing to open a pull request but it might require some time for me to get familiar with travis and create a test case.
Right, I did a search and replace and that signature was missing the override specifier. Should be fixed in master now, so I am going to close this and the test discussion can be done via our Discord.
Catch does not compile on ObjC++ code (
.mm
files) with default configuration.The reason is that the template signature of the base class which is overridden specify
const &
qualifier for argument ofmatch
function, while forNSString*
the signature is specified asbool match( NSString* arg) override
.Replacing the signature on these methods with
bool match( NSString* const& arg) override
fixes the compile errorThe text was updated successfully, but these errors were encountered: