Ticket #4947: Haiku POSIX Eval I-P.txt

File Haiku POSIX Eval I-P.txt, 3.2 KB (added by scottmc, 10 years ago)

results from a research task by GCI student Hamish Morrison to check headers I-P

Line 
1inttypes.h
2
3Conversion functions for wide-char strings are missing:
4
5intmax_t wcstoimax(const wchar_t *restrict, wchar_t **restrict, int);
6uintmax_t wcstoumax(const wchar_t *restrict, wchar_t **restrict, int);
7
8--------------------------------------------
9
10langinfo.h
11
12The locale variant of nl_langinfo() is missing:
13
14char *nl_langinfo_l(nl_item, locale_t);
15
16--------------------------------------------
17
18libgen.h is fine.
19
20--------------------------------------------
21
22limits.h appears to miss a large number of definitions, but this
23behaviour is in fact fine as long as the missing limits are indeterminate
24in Haiku.
25
26--------------------------------------------
27
28locale.h
29
30The following bitmasks for newlocale() are missing:
31
32LC_COLLATE_MASK,
33LC_CTYPE_MASK,
34LC_MESSAGES_MASK,
35LC_MONETARY_MASK,
36LC_NUMERIC_MASK,
37LC_TIME_MASK,
38and LC_ALL_MASK, which combines them all.
39
40The locale_t type, which represents a locale object, is missing.
41
42LC_GLOBAL_LOCALE, which is used by uselocale(), should be defined
43as a unique object of type locale_t.
44
45The following function declarations are missing:
46
47locale_t duplocale(locale_t);
48void freelocale(locale_t);
49locale_t newlocale(int, const char *, locale_t);
50locale_t uselocale (locale_t);
51
52--------------------------------------------
53
54monetary.h
55
56The locale variant of strfmon() is missing:
57
58ssize_t strfmon_l(char *restrict, size_t, locale_t, const char *restrict, ...);
59
60--------------------------------------------
61
62netdb.h is fine.
63
64--------------------------------------------
65
66poll.h is fine.
67
68--------------------------------------------
69
70pthread.h
71
72The following symbolic constants are missing:
73
74PTHREAD_MUTEX_ROBUST
75PTHREAD_MUTEX_STALLED
76PTHREAD_INHERIT_SCHED
77
78PTHREAD_RWLOCK_INITIALIZER is missing, and should expand to an
79expression suitable to initialize the pthread_rwlock_t type.
80
81The following types are missing:
82
83pthread_barrier_t
84pthread_barrierattr_t
85
86The following function declarations are missing:
87
88int pthread_mutex_consistent(pthread_mutex_t *);
89int pthread_mutexattr_getrobust(const pthread_mutexattr_t *restrict, int *restrict);
90int pthread_mutexattr_setrobust(pthread_mutexattr_t *, int);
91int pthread_condattr_getclock(const pthread_condattr_t *restrict, clockid_t *restrict);
92int pthread_condattr_setclock(pthread_condattr_t *, clockid_t);
93int pthread_getcpuclockid(pthread_t, clockid_t *);
94int pthread_setschedprio(pthread_t, int);
95
96as are all the barrier functions:
97
98int pthread_barrier_destroy(pthread_barrier_t *);
99int pthread_barrier_init(pthread_barrier_t *restrict,
100 const pthread_barrierattr_t *restrict, unsigned);
101int pthread_barrier_wait(pthread_barrier_t *);
102int pthread_barrierattr_destroy(pthread_barrierattr_t *);
103int pthread_barrierattr_getpshared(const pthread_barrierattr_t *restrict, int *restrict);
104int pthread_barrierattr_init(pthread_barrierattr_t *);
105int pthread_barrierattr_setpshared(pthread_barrierattr_t *, int);
106
107and all the commented out pthread_attr_* functions.
108
109pthread_kill() should be moved to signal.h.
110
111--------------------------------------------
112
113pwd.h is fine.
114
115--------------------------------------------
116
117ivonv.h, iso646.h, mqueue.h, and ndbm.h are missing.