Opened 8 years ago

Closed 7 years ago

#4230 closed Patches (fixed)

[Patch] Fix missing/broken friend function definitions in class templates

Reported by: Douglas Gregor Owned by: Ion Gaztañaga
Milestone: Boost 1.45.0 Component: interprocess
Version: Boost 1.44.0 Severity: Problem
Keywords: Cc:


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.

Attachments (1)

boost-interprocess-fixes.patch (1.8 KB) - added by Douglas Gregor 8 years ago.
Patch to fix two problems with Boost.Interprocess

Download all attachments as: .zip

Change History (2)

Changed 8 years ago by Douglas Gregor

Patch to fix two problems with Boost.Interprocess

comment:1 Changed 7 years ago by Ion Gaztañaga

Milestone: Boost 1.43.0Boost-1.45.0
Resolution: fixed
Status: newclosed

Fixed for Boost 1.45 in release branch

Modify Ticket

Change Properties
Set your email in Preferences
as closed The owner will remain Ion Gaztañaga.
The resolution will be deleted.

Add Comment

E-mail address and name can be saved in the Preferences.

Note: See TracTickets for help on using tickets.