Modify

Ticket #3553 (closed Bugs: fixed)

Opened 4 years ago

Last modified 4 years ago

Changeset 57125 broke Proto

Reported by: cschmidt Owned by: eric_niebler
Milestone: Boost 1.42.0 Component: proto
Version: Boost Development Trunk Severity: Regression
Keywords: Cc: cschmidt

Description

Changeset 57125, a fix for Ticket #2355 of the Fusion library, broke the Proto library. Here is a fix for Proto.

Attachments

proto.diff Download (1.8 KB) - added by cschmidt 4 years ago.

Change History

Changed 4 years ago by cschmidt

comment:1 Changed 4 years ago by cschmidt

  • Owner set to eric_niebler
  • Component changed from None to proto

comment:2 Changed 4 years ago by eric_niebler

Why is the patch testing for BOOST_VERSION < 103500?

comment:3 Changed 4 years ago by anonymous

If BOOST_VERSION < 103500, the spirit fusion library is used, which uses the old interface. See  fold.hpp and  toy_spirit2.cpp

comment:4 Changed 4 years ago by eric_niebler

But the argument order for fusion::fold's binary function won't be changing until the next version of Boost, right? Have you testing this patch with Boost 1.40?

comment:5 Changed 4 years ago by anonymous

But the argument order for fusion::fold's binary function won't be changing until the next version of Boost, right?

No, I just committed this patch to the trunk and I will commit it to the 1.42 release branch. This patch should not affect 1.41.

Have you testing this patch with Boost 1.40?

I did test this patch with the HEAD of the trunk. I assumed if a proto snapshot is that up-to-date that it contains this patch, there will also be an up-to-date snapshot of Fusion available, or (due to whatever reasons) Boost < 1.35 will be used. Is this assumption incorrect?

I think its ok to apply the patch so the trunk is not broken. Once BOOST_VERSION is set to 104200, I will create another patch to change the

#if BOOST_VERSION < 103500

in the functors to

#if BOOST_VERSION < 104200

Is that OK for you?

I am sorry for any inconvenience caused.

comment:6 Changed 4 years ago by cschmidt

Oh, I did not log in. The last two "anonymous" posts are mine.

comment:7 Changed 4 years ago by eric_niebler

The goal with the version checks is so that newer versions of Proto can work with older versions of Boost. That's arguably not that important now that Proto is an official part of Boost and has been for a while. Please make the change without any version checks. I'll go through and remove all other such version checks. That code is untested and likely broken anyway.

Thanks.

comment:8 Changed 4 years ago by eric_niebler

  • Status changed from new to closed
  • Resolution set to fixed

(In [57159]) accomodate recent change to fusion::fold, remove old support for Doxygen and pre-1.35 Fusion, fixes #3553

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.