#include <iostream>
#include <string>

using namespace std;

struct foo {
	const basic_string<char,std::char_traits<char>,std::allocator<char> > f = "foo";
    operator const basic_string<char,std::char_traits<char>,std::allocator<char> >&() const  { return f; }
};
int main() {
    foo a, b;
    auto tmp = (a < b);
}