[Boost-bugs] [Boost C++ Libraries] #9154: boost/asio/detail/impl/socket_ops.ipp fails to build in Solaris Studio 12.3

Subject: [Boost-bugs] [Boost C++ Libraries] #9154: boost/asio/detail/impl/socket_ops.ipp fails to build in Solaris Studio 12.3
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-09-23 23:21:54


#9154: boost/asio/detail/impl/socket_ops.ipp fails to build in Solaris Studio 12.3
-------------------------------------------------+-------------------------
 Reporter: Brian Vandenberg <phantall+boost@…> | Type: Bugs
   Status: new | Milestone: To Be
Component: None | Determined
 Severity: Problem | Version: Boost
                                                 | 1.54.0
                                                 | Keywords:
-------------------------------------------------+-------------------------
 On (or around) line 977:

 {{{
   /*...*/
   if (result >= 0)
   {
     ec = boost::system::error_code();
 -> out_flags = msg.msg_flags; // Error: msg_flags is not a member of
 msghdr.
   }
 }}}

 I don't see an obvious/simple workaround for this. ```msg_flags``` only
 gets defined in the ```msghdr``` struct if ```_XPG4_2``` or ```_KERNEL```
 are defined. Causing the former to be defined (via
 ```-D_XOPEN_SOURCE=1``` and with/without ```-D_XOPEN_SOURCE_EXTENDED=1```
 causes a bunch of things to fail. The latter is reserved for writing
 kernel drivers & the like so I'm disinclined to use that as a solution.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/9154>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:14 UTC