View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0000691 | 1003.1(2013)/Issue7+TC1 | System Interfaces | public | 2013-05-07 08:07 | 2019-06-10 08:55 |
| Reporter | philip-guenther | Assigned To | |||
| Priority | normal | Severity | Editorial | Type | Clarification Requested |
| Status | Closed | Resolution | Accepted | ||
| Name | Philip Guenther | ||||
| Organization | OpenBSD | ||||
| User Reference | |||||
| Section | wait() | ||||
| Page Number | 2204-2205 | ||||
| Line Number | 69925-69939 | ||||
| Interp Status | --- | ||||
| Final Accepted Text | |||||
| Summary | 0000691: specification of *stat_loc values confused by XSI shading; incorrect statement of wait() behavior | ||||
| Description | If you cut out the XSI shading, the spec starts repeating itself: If the information pointed to by stat_loc was stored by a call to waitpid() that specified the WUNTRACED flag <...>, exactly one of the macros WIFEXITED(*stat_loc), WIFSIGNALED(*stat_loc), and WIFSTOPPED(*stat_loc) shall evaluate to a non-zero value. If the information pointed to by stat_loc was stored by a call to waitpid() that specified the WUNTRACED <...> flags, exactly one of the macros WIFEXITED(*stat_loc), WIFSIGNALED(*stat_loc), WIFSTOPPED(*stat_loc), <...> shall evaluate to a non-zero value. The two paragraphs after that have the same problem: If the information pointed to by stat_loc was stored by a call to waitpid() that did not specify the WUNTRACED <...> flags, or by a call to the wait() function, exactly one of the macros WIFEXITED(*stat_loc) and WIFSIGNALED(*stat_loc) shall evaluate to a non-zero value. If the information pointed to by stat_loc was stored by a call to waitpid() that did not specify the WUNTRACED flag <...>, or by a call to the wait() function, exactly one of the macros WIFEXITED(*stat_loc), WIFSIGNALED(*stat_loc), <...> shall evaluate to a non-zero value. ...but they *also* have a problem when you include the XSI text: If the information pointed to by stat_loc was stored by a call to waitpid() that did not specify the WUNTRACED or WCONTINUED flags, or by a call to the wait() function, exactly one of the macros WIFEXITED(*stat_loc) and WIFSIGNALED(*stat_loc) shall evaluate to a non-zero value. If the information pointed to by stat_loc was stored by a call to waitpid() that did not specify the WUNTRACED flag and specified the WCONTINUED flag, or by a call to the wait() function, exactly one of the macros WIFEXITED(*stat_loc), WIFSIGNALED(*stat_loc), and WIFCONTINUED(*stat_loc) shall evaluate to a non-zero value. Those gives contradicting statements about wait(), the latter suggesting WIFCONTINUED(*stat_loc) can evaluate to a non-zero value for it, which is wrong. | ||||
| Desired Action | Change the XSI marking on the second and fourth paragraphs (lines 69929-69932 and 69936-69939) to completely enclose those paragraphs. Remove the reference to wait() in the fourth paragraph, ala: If the information pointed to by stat_loc was stored by a call to waitpid() that did not specify the WUNTRACED flag and specified the WCONTINUED flag, exactly one of the macros WIFEXITED(*stat_loc), WIFSIGNALED(*stat_loc), and WIFCONTINUED(*stat_loc) shall evaluate to a non-zero value. | ||||
| Tags | tc2-2008 | ||||
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2013-05-07 08:07 | philip-guenther | New Issue | |
| 2013-05-07 08:07 | philip-guenther | Name | => Philip Guenther |
| 2013-05-07 08:07 | philip-guenther | Organization | => OpenBSD |
| 2013-05-07 08:07 | philip-guenther | Section | => wait() |
| 2013-05-07 08:07 | philip-guenther | Page Number | => 2204-2205 |
| 2013-05-07 08:07 | philip-guenther | Line Number | => 69925-69939 |
| 2013-05-16 16:13 |
|
Interp Status | => --- |
| 2013-05-16 16:13 |
|
Status | New => Resolved |
| 2013-05-16 16:13 |
|
Resolution | Open => Accepted |
| 2013-05-16 16:13 |
|
Tag Attached: tc2-2008 | |
| 2019-06-10 08:55 | agadmin | Status | Resolved => Closed |