// PR c++/88123 | |
// { dg-do compile { target c++14 } } | |
struct bar {}; | |
struct baz {}; | |
struct baq {}; | |
namespace foo | |
{ | |
void operator+(bar); | |
} // namespace foo | |
namespace foo2 | |
{ | |
void operator-(baz); | |
} | |
auto fn() { | |
using foo::operator+; | |
using namespace foo2; | |
extern void operator!(baq); | |
return [](auto x, auto y, auto z) { +x; -y; !z; }; | |
} | |
int main() | |
{ | |
auto l = fn(); | |
l(bar(),baz(),baq()); | |
} |