Modify

Ticket #4230 (closed Patches: fixed)

Opened 4 years ago

Last modified 4 years ago

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

Reported by: dgregor Owned by: igaztanaga
Milestone: Boost 1.45.0 Component: interprocess
Version: Boost 1.44.0 Severity: Problem
Keywords: Cc:

Description

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

boost-interprocess-fixes.patch Download (1.8 KB) - added by dgregor 4 years ago.
Patch to fix two problems with Boost.Interprocess

Change History

Changed 4 years ago by dgregor

Patch to fix two problems with Boost.Interprocess

comment:1 Changed 4 years ago by igaztanaga

  • Status changed from new to closed
  • Resolution set to fixed
  • Milestone changed from Boost 1.43.0 to Boost-1.45.0

Fixed for Boost 1.45 in release branch

View

Add a comment

Modify Ticket

Change Properties
<Author field>
Action
as closed
The resolution will be deleted. Next status will be 'reopened'
Author


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

 
Note: See TracTickets for help on using tickets.