boostorg / boostorg/asio

Errors on AIX with C++20

Open
#445 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
1.6k
Forks
485
PR merge metrics
No merged PRs in 30d

Description

I am trying to compile the boost beast sample programs using boost-1.87.0

I am getting the below errors:

```
In file included from /boost/boost/asio.hpp:38:
In file included from /boost/boost/asio/basic_readable_pipe.hpp:39:
In file included from /boost/boost/asio/detail/reactive_descriptor_service.hpp:32:
In file included from /boost/boost/asio/detail/descriptor_ops.hpp:174:
/boost/boost/asio/detail/impl/descriptor_ops.ipp:197:25: error: implicit conversion from 'unsigned long' to 'int' changes value from 18446744071562356350 to -2147195266 [-Werror,-Wconstant-conversion]
197 | result = ::ioctl(d, FIONBIO, &arg);
| ~~ ^~~~~~~
```

So, was wondering if any have faced the same issue?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing the Boost.Beast sample compilation on AIX with C++20 and inspect boost/asio/detail/impl/descriptor_ops.ipp around line 197, where the FIONBIO ioctl call reports the conversion error. Determine the platform-specific cause and verify that the samples compile without the reported error and warning.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.