Opened 7 years ago

Last modified 7 years ago

#5853 new Bugs

Predefined macro __ppc not checked by various boost headers

Reported by: gshapiro@… Owned by: Douglas Gregor
Milestone: To Be Determined Component: numeric
Version: Boost Development Trunk Severity: Problem
Keywords: powerpc ppc Cc:

Description

Various boost headers implement variant definitions and logic depending on the processor defined for the compilation. There are variations taking into account compilation on the powerpc family of processors but some of the headers in question do not include checking for powerpc compilation via presence of the __ppc predefined macro (they check against other predefineds: __ppc__, __powerpc__, etc, but the WindRiver vxworks gnu compiler for powerpc only defines __ppc).

Boost headers in question:

boost/detail/endian.hpp
boost/interprocess/detail/atomic.hpp
boost/numeric/interval/hw_rounding.hpp
boost/numeric/interval/detail/ppc_rounding_control.hpp

The trunk was checked to be certain that fixes had not yet been applied. No other related bug reports found either.

Attachments (1)

patchfile.patch (2.7 KB) - added by gshapiro@… 7 years ago.
patch file for fixes to problem described in ticket

Download all attachments as: .zip

Change History (4)

Changed 7 years ago by gshapiro@…

Attachment: patchfile.patch added

patch file for fixes to problem described in ticket

comment:1 Changed 7 years ago by viboes

Please, do a ticket by component so that the author can take care of it.

comment:2 in reply to:  1 Changed 7 years ago by gshapiro@…

Replying to viboes:

Please, do a ticket by component so that the author can take care of it.

Vincent, thanks for your response. I did not know what the correct procedure was. I have no problem entering individual tickets by component, but one question: what component is appropriate for endian.hpp that is located in the top-level detail directory?

comment:3 Changed 7 years ago by viboes

Component: Nonenumeric
Owner: set to Douglas Gregor
Note: See TracTickets for help on using tickets.