Ticket #4230 (closed Patches: fixed)
[Patch] Fix missing/broken friend function definitions in class templates
|Reported by:||dgregor||Owned by:||igaztanaga|
We turned on better checking for in-class friend function definitions in Clang, instantiating them when the class templates containing those friends are instantiated (see C++98/03 [temp.friend]p5). This found some breakage in the Interprocess library, where an obvious "operator==" is missing (it's used via an in-class friend function definition) and a swap() function defined as an in-class friend function could never be compiled.
I've attached a patch that fixes both problems.