emscripten-core / emscripten-core/posixtestsuite

aio_* and lio_listio tests expect _POSIX_ASYNCHRONOUS_IO to equal 200112L, which corresponds to an outdated POSIX standard from 2001

Open
#15 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
67
Forks
17
PR merge metrics
No merged PRs in 30d

Description

All 104 tests under conformance/interfaces/{aio_cancel,aio_error,aio_fsync,aio_read,aio_suspend,aio_write,lio_listio}/ have the following gate:

```c
#if _POSIX_ASYNCHRONOUS_IO != 200112L
exit(PTS_UNSUPPORTED);
#endif
```
This means that if the POSIX revision isn't POSIX.1-2001, the test will ALWAYS return UNSUPPORTED. However, all libcs have updated to 200809L, which corresponds to POSIX.1-2008. Every other check allows newer versions except for this one, so it might be a mistake or a leftover. It is a 1-line fix on all 104 tests, so me and my agent would be happy to submit a pull request that fixes this to match.

alexander.re.g64@gmail.com

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by inspecting the POSIX version gate in one test under conformance/interfaces/aio_cancel, then compare it with the version checks in the other named AIO and lio_listio directories. Done means all 104 tests no longer reject newer POSIX revisions as unsupported; review the affected gates across those directories afterward.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
operating-systems, testing-qa
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
76/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.