The following issue has been SUBMITTED. 
====================================================================== 
http://austingroupbugs.net/view.php?id=1282 
====================================================================== 
Reported By:                joelsherrill
Assigned To:                
====================================================================== 
Project:                    1003.1(2016)/Issue7+TC2
Issue ID:                   1282
Category:                   System Interfaces
Type:                       Clarification Requested
Severity:                   Editorial
Priority:                   normal
Status:                     New
Name:                       Joel Sherrill 
Organization:                
User Reference:              
Section:                    mqueue.h 
Page Number:                NA - used web 
Line Number:                NA - used web 
Interp Status:              --- 
Final Accepted Text:         
====================================================================== 
Date Submitted:             2019-08-23 16:19 UTC
Last Modified:              2019-08-23 16:19 UTC
====================================================================== 
Summary:                    mqueue.h - pthread_attr_t is listed as defined but
unclear why
Description: 
Ref:
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/mqueue.h.html

Issue: In mqueue.h, pthread_attr_t is listed as defined but there is no
need for it as best I can see in the mqueue APIs. Is this just a cut and
paste mistake?

Response from Geoff Clare when asked on mailing list:

"It's needed if you want to have mq_notify() do a SIGEV_THREAD
notification.  However, what's odd here is that mqueue.h is only required
to declare struct sigevent as incomplete, so if you want to actually
populate a struct sigevent you therefore need to include signal.h to get it
properly defined -- in which case signal.h will define pthread_attr_t, so
there is no need for mqueue.h to do it.

So I think either mqueue.h should be required to define struct sigevent or
it should not be required to define pthread_attr_t."


Desired Action: 
There are multiple ways to resolve this but I think Geoff's suggestion of
not requiring mqueue.h to define pthread_attr_t seems the simplest. It also
is consistent with the example provided with mq_notify() that includes
pthread.h.


====================================================================== 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2019-08-23 16:19 joelsherrill   New Issue                                    
2019-08-23 16:19 joelsherrill   Name                      => Joel Sherrill   
2019-08-23 16:19 joelsherrill   Section                   => mqueue.h        
2019-08-23 16:19 joelsherrill   Page Number               => NA - used web   
2019-08-23 16:19 joelsherrill   Line Number               => NA - used web   
======================================================================


Reply via email to