in reply to Re: Writing XS frontends to C++ libraries.
in thread Writing XS frontends to C++ libraries.

I'm still confused as to why there should be an ambiguity about this section of the XS file:

void MySettings::set(const string &key, const string &value)
When the error produced by the code shows that we have what looks like a matching method:
MyModule.c:64: no matching function for call to `Mysettings::set (cons +t string *, const string *)' /usr/local/include/mysettings.h:66: candidates are: void Mysettings::s +et(const string &, const string &)
Does XS not distinguish well between pointers and references?

MySet does have a typemap entry, of type O_OBJECT. I'll admit my understanding of typemaps is basic; this is just taken from the combining C++ and Perl link above.