Files
nuttx/libs/libc/libc.csv
T
Gregory Nutt 67ec3d7926 Remove CONFIG_CAN_PASS_STRUCT
This commit resolves issue #620:

Remove CONFIG_CAN_PASS_STRUCTS #620

The configuration option CONFIG_CAN_PASS_STRUCTS was added many years ago to support an old version of the SDCC compiler. That compiler is currently used only with the Z80 and Z180 targets. The limitation of that old compiler was that it could not pass structures or unions as either inputs or outputs. For example:

    #ifdef CONFIG_CAN_PASS_STRUCTS
    struct mallinfo mallinfo(void);
    #else
    int      mallinfo(FAR struct mallinfo *info);
    #endif

And even leads to violation of a few POSIX interfaces like:

    #ifdef CONFIG_CAN_PASS_STRUCTS
    int  sigqueue(int pid, int signo, union sigval value);
    #else
    int  sigqueue(int pid, int signo, FAR void *sival_ptr);
    #endif

This breaks the 1st INVIOLABLES rule:

Strict POSIX compliance
-----------------------

  o Strict conformance to the portable standard OS interface as defined at
    OpenGroup.org.
  o A deeply embedded system requires some special support.  Special
    support must be minimized.
  o The portable interface must never be compromised only for the sake of
    expediency.
  o Expediency or even improved performance are not justifications for
   violation of the strict POSIX interface

Also, it appears that the current SDCC compilers have resolve this issue and so, perhaps, this is no longer a problem: z88dk/z88dk#1132

NOTE:  This commit cannot pass the PR checks because it depends on matching changes to the apps/ directory.
2020-04-11 21:19:47 +01:00

18 KiB

1abortstdlib.hvoid
2absstdlib.hintint
3aio_erroraio.hdefined(CONFIG_FS_AIO)intFAR struct aiocb *
4aio_returnaio.hdefined(CONFIG_FS_AIO)ssize_tFAR struct aiocb *
5aio_suspendaio.hdefined(CONFIG_FS_AIO)intFAR struct aiocb *const []|FAR struct aiocb *const *intFAR const struct timespec *
6alarmunistd.h!defined(CONFIG_DISABLE_POSIX_TIMERS)unsigned intunsigned int
7asprintfstdio.hintFAR char **FAR const char *...
8vasprintfstdio.hintFAR char **FAR const char *va_list
9b16atan2fixedmath.h!defined(CONFIG_HAVE_LONG_LONG)b16_tb16_tb16_t
10b16cosfixedmath.hb16_tb16_t
11b16divb16fixedmath.h!defined(CONFIG_HAVE_LONG_LONG)b16_tb16_tb16_t
12b16mulb16fixedmath.h!defined(CONFIG_HAVE_LONG_LONG)b16_tb16_tb16_t
13b16sinfixedmath.hb16_tb16_t
14b16sqrfixedmath.h!defined(CONFIG_HAVE_LONG_LONG)b16_tb16_t
15basenamelibgen.hFAR charFAR char *
16cfgetspeedtermios.hdefined(CONFIG_SERIAL_TERMIOS)speed_tFAR const struct termios *
17cfsetspeedtermios.hdefined(CONFIG_SERIAL_TERMIOS)intFAR struct termios *speed_t
18chdirunistd.h!defined(CONFIG_DISABLE_ENVIRON)intFAR const char *
19clocktime.hclock_t
20crc32crc32.huint32_tFAR const uint8_t *size_t
21crc32partcrc32.huint32_tFAR const uint8_t *size_tuint32_t
22dirnamelibgen.hFAR charFAR char *
23dq_addafterqueue.hvoidFAR dq_entry_t *FAR dq_entry_t *FAR dq_queue_t *
24dq_addbeforequeue.hvoidFAR dq_entry_t *FAR dq_entry_t *FAR dq_queue_t *
25dq_addfirstqueue.hvoidFAR dq_entry_t *dq_queue_t *
26dq_addlastqueue.hvoidFAR dq_entry_t *dq_queue_t *
27dq_remqueue.hvoidFAR dq_entry_t *dq_queue_t *
28dq_remfirstqueue.hFAR dq_entry_tdq_queue_t *
29dq_remlastqueue.hFAR dq_entry_tdq_queue_t *
30_errdebug.h!defined(CONFIG_CPP_HAVE_VARARGS) && defined(CONFIG_DEBUG_ERROR)intFAR const char *...
31ether_ntoanetinet/ether.hFAR charFAR const struct ether_addr *
32fclosestdio.hCONFIG_NFILE_STREAMS > 0intFAR FILE *
33fdopenstdio.hCONFIG_NFILE_STREAMS > 0FAR FILEintFAR const char *
34fflushstdio.hCONFIG_NFILE_STREAMS > 0intFAR FILE *
35ffsstrings.hintint
36fgetcstdio.hCONFIG_NFILE_STREAMS > 0intFAR FILE *
37fgetposstdio.hCONFIG_NFILE_STREAMS > 0intFAR FILE *FAR fpos_t *
38fgetsstdio.hCONFIG_NFILE_STREAMS > 0FAR charFAR char *intFAR FILE *
39filenostdio.hintFAR FILE *
40fopenstdio.hCONFIG_NFILE_STREAMS > 0FAR FILEFAR const char *FAR const char *
41fprintfstdio.hCONFIG_NFILE_STREAMS > 0intFAR FILE *FAR const char *...
42fputcstdio.hCONFIG_NFILE_STREAMS > 0intint cFAR FILE *
43fputsstdio.hCONFIG_NFILE_STREAMS > 0intFAR const char *FAR FILE *
44freadstdio.hCONFIG_NFILE_STREAMS > 0size_tFAR void *size_tsize_tFAR FILE *
45freestdlib.hvoidFAR void *
46fseekstdio.hCONFIG_NFILE_STREAMS > 0intFAR FILE *long intint
47fsetposstdio.hCONFIG_NFILE_STREAMS > 0intFAR FILE *FAR fpos_t *
48ftellstdio.hCONFIG_NFILE_STREAMS > 0longFAR FILE *
49fwritestdio.hCONFIG_NFILE_STREAMS > 0size_tFAR const void *size_tsize_tFAR FILE *
50get_errno_ptrerrno.hdefined(CONFIG_BUILD_FLAT)FAR int *
51getcwdunistd.h!defined(CONFIG_DISABLE_ENVIRON)FAR charFAR char *size_t
52gethostnameunistd.hintFAR char*size_t
53getoptunistd.hintintFAR char *const[]FAR const char *
54getoptargpunistd.hFAR char *
55getoptindpunistd.hint
56getoptoptpunistd.hint
57getsstdio.hCONFIG_NFILE_STREAMS > 0FAR charFAR char *
58gmtimetime.hstruct tmFAR const time_t *
59gmtime_rtime.hFAR struct tmFAR const time_t *FAR struct tm *
60htonlarpa/inet.huint32_tuint32_t
61htonsarpa/inet.huint16_tuint16_t
62imaxabsinttypes.hintmax_tintmax_t
63inet_addrarpa/inet.hin_addr_tFAR const char
64inet_ntoaarpa/inet.hdefined(CONFIG_NET_IPv4)FAR charstruct in_addr
65inet_ntoparpa/inet.hFAR const charintFAR const void *FAR char *socklen_t
66inet_ptonarpa/inet.hintintFAR const char *FAR void *
67ioctlsys/ioctl.hdefined(CONFIG_LIBC_IOCTL_VARIADIC)intintint...
68iswalnumwctype.hdefined(CONFIG_LIBC_WCHAR)intwint_t
69iswalphawctype.hdefined(CONFIG_LIBC_WCHAR)intwint_t
70iswblankwctype.hdefined(CONFIG_LIBC_WCHAR)intwint_t
71iswcntrlwctype.hdefined(CONFIG_LIBC_WCHAR)intwint_t
72iswctypewctype.hdefined(CONFIG_LIBC_WCHAR)intwint_twctype_t
73iswdigitwctype.hdefined(CONFIG_LIBC_WCHAR)intwint_t
74iswgraphwctype.hdefined(CONFIG_LIBC_WCHAR)intwint_t
75iswlowerwctype.hdefined(CONFIG_LIBC_WCHAR)intwint_t
76iswprintwctype.hdefined(CONFIG_LIBC_WCHAR)intwint_t
77iswpunctwctype.hdefined(CONFIG_LIBC_WCHAR)intwint_t
78iswspacewctype.hdefined(CONFIG_LIBC_WCHAR)intwint_t
79iswupperwctype.hdefined(CONFIG_LIBC_WCHAR)intwint_t
80iswxdigitwctype.hdefined(CONFIG_LIBC_WCHAR)intwint_t
81labsstdlib.hlong intlong int
82lib_dumpbufferdebug.hvoidFAR const char *FAR const uint8_t *unsigned int
83lio_listioaio.hdefined(CONFIG_FS_AIO)intintFAR struct aiocb *const []|FAR struct aiocb *const *intFAR struct sigevent *
84llabsstdlib.hdefined(CONFIG_HAVE_LONG_LONG)long long intlong long int
85mallocstdlib.hFAR void *size_t
86matchnuttx/lib/regex.hintFAR const char *FAR const char *
87mbrtowcwchar.hdefined(CONFIG_LIBC_WCHAR)size_twchar_t *FAR const char *size_tmbstate_t *
88mbsnrtowcswchar.hdefined(CONFIG_LIBC_WCHAR)size_tFAR wchar_t *FAR const char **size_tsize_tmbstate_t *
89mbtowcwchar.hdefined(CONFIG_LIBC_WCHAR)intwchar_t *FAR const wchar_t *size_t
90memccpystring.hFAR voidFAR void *FAR const void *int csize_t
91memchrstring.hFAR voidFAR const void *int csize_t
92memcmpstring.hintFAR const void *FAR const void *size_t
93memcpystring.hFAR voidFAR void *FAR const void *size_t
94memmovestring.hFAR voidFAR void *FAR const void *size_t
95memsetstring.hFAR voidFAR void *int csize_t
96mkfifosys/stat.hintFAR const char*mode_t
97mktimetime.htime_tFAR const struct tm *
98ntohlarpa/inet.huint32_tuint32_t
99ntohsarpa/inet.huint16_tuint16_t
100perrorstdio.hCONFIG_NFILE_STREAMS > 0voidFAR const char *
101pipeunistd.hintint [2]|int*
102printfstdio.hintFAR const char *...
103pthread_attr_destroypthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_attr_t *
104pthread_attr_getinheritschedpthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR const pthread_attr_t *FAR int *
105pthread_attr_getschedparampthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_attr_t *FAR struct sched_param *
106pthread_attr_getschedpolicypthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_attr_t *int *
107pthread_attr_getstacksizepthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_attr_t *FAR size_t *
108pthread_attr_initpthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_attr_t *
109pthread_attr_setinheritschedpthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_attr_t *int
110pthread_attr_setschedparampthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_attr_t *FAR const struct sched_param *
111pthread_attr_setschedpolicypthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_attr_t *int
112pthread_attr_setstacksizepthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_attr_t *size_t
113pthread_barrierattr_destroypthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_barrierattr_t *
114pthread_barrierattr_getpsharedpthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR const pthread_barrierattr_t *FAR int *
115pthread_barrierattr_initpthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_barrierattr_t *
116pthread_barrierattr_setpsharedpthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_barrierattr_t *int
117pthread_barrier_destroypthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_barrier_t*
118pthread_barrier_initpthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_barrier_t*FAR const pthread_barrierattr_t*unsigned int
119pthread_barrier_waitpthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_barrier_t*
120pthread_condattr_destroypthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_condattr_t *
121pthread_condattr_initpthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_condattr_t *
122pthread_cond_destroypthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_cond_t*
123pthread_cond_initpthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_cond_t*FAR const pthread_condattr_t*
124pthread_mutex_lockpthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_mutex_t*
125pthread_mutexattr_destroypthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_mutexattr_t *
126pthread_mutexattr_getpsharedpthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_mutexattr_t *FAR int *
127pthread_mutexattr_gettypepthread.h!defined(CONFIG_DISABLE_PTHREAD) && defined(CONFIG_PTHREAD_MUTEX_TYPES)intFAR const pthread_mutexattr_t *int *
128pthread_mutexattr_initpthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_mutexattr_t *
129pthread_mutexattr_setpsharedpthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_mutexattr_t *int
130pthread_mutexattr_settypepthread.h!defined(CONFIG_DISABLE_PTHREAD) && defined(CONFIG_PTHREAD_MUTEX_TYPES)intpthread_mutexattr_t *int
131pthread_oncepthread.h!defined(CONFIG_DISABLE_PTHREAD)intFAR pthread_once_t*CODE void (*)(void)
132pthread_yieldpthread.h!defined(CONFIG_DISABLE_PTHREAD)void
133putsstdio.hCONFIG_NFILE_STREAMS > 0intFAR const char *
134qsortstdlib.hvoidvoid *size_tsize_tint(*)(const void *FAR const void *)
135randstdlib.hint
136readdir_rdirent.hintFAR DIR *FAR struct dirent *FAR struct dirent **
137reallocstdlib.hFAR void *FAR void *size_t
138sched_get_priority_maxsched.hintint
139sched_get_priority_minsched.hintint
140sem_getvaluesemaphore.hintFAR sem_t *FAR int *
141sem_initsemaphore.hintFAR sem_t *intunsigned int
142sendfilesys/sendfile.hssize_tintintoff_tsize_t
143setlocalelocale.hdefined(CONFIG_LIBC_LOCALE)FAR char *sintFAR const char *s
144setlogmasksyslog.hintint
145sigaddsetsignal.hintFAR sigset_t *int
146sigdelsetsignal.hintFAR sigset_t *int
147sigemptysetsignal.hintFAR sigset_t *
148sigfillsetsignal.hintFAR sigset_t *
149sigismembersignal.hintFAR const sigset_t *int
150sleepunistd.hunsigned intunsigned int
151snprintfstdio.hintFAR char *size_tFAR const char *...
152sprintfstdio.hintFAR char *FAR const char *...
153sq_addafterqueue.hvoidFAR sq_entry_t *FAR sq_entry_t *FAR sq_queue_t *
154sq_addfirstqueue.hvoidFAR sq_entry_t *sq_queue_t *
155sq_addlastqueue.hvoidFAR sq_entry_t *sq_queue_t *
156sq_remqueue.hvoidFAR sq_entry_t *sq_queue_t *
157sq_remafterqueue.hFAR sq_entry_tFAR sq_entry_t *sq_queue_t *
158sq_remfirstqueue.hFAR sq_entry_tsq_queue_t *
159sq_remlastqueue.hFAR sq_entry_tsq_queue_t *
160srandstdlib.hvoidunsigned int
161sscanfstdio.hintFAR const char *FAR const char *...
162strcasecmpstrings.hintFAR const char *FAR const char *
163strcasestrstring.hFAR charFAR const char *FAR const char *
164strcatstring.hFAR charFAR char *FAR const char *
165strchrstring.hFAR charFAR const char *int
166strcmpstring.hintFAR const char *FAR const char *
167strcollstring.hdefined(CONFIG_LIBC_LOCALE)intFAR const char *FAR const char *
168strcpystring.hFAR char *FAR char *FAR const char *
169strcspnstring.hsize_tFAR const char *FAR const char *
170strdupstring.hFAR charFAR const char *
171strerrorstring.hFAR const charint
172strerror_rstring.hintintFAR char *size_t
173strftimetime.hsize_tFAR char *size_tFAR const char *FAR const struct tm *
174strlenstring.hsize_tFAR const char *
175strncasecmpstrings.hintFAR const char *FAR const char *size_t
176strncatstring.hFAR charFAR char *FAR const char *size_t
177strncmpstring.hintFAR const char *FAR const char *size_t
178strncpystring.hFAR charFAR char *FAR const char *size_t
179strndupstring.hFAR charFAR const char *size_t
180strnlenstring.hsize_tFAR const char *size_t
181strpbrkstring.hFAR charFAR const char *FAR const char *
182strrchrstring.hFAR charFAR const char *int
183strspnstring.hsize_tFAR const char *FAR const char *
184strstrstring.hFAR charFAR const char *FAR const char *
185strtodstdlib.hdouble_tFAR const char *strFAR char **endptr
186strtokstring.hFAR charFAR char *FAR const char *
187strtok_rstring.hFAR charFAR char *FAR const char *FAR char **
188strtolstring.hlongFAR const char *FAR char **int
189strtollstdlib.hdefined(CONFIG_HAVE_LONG_LONG)long longFAR const char *nptrFAR char **endptrint base
190strtoulstdlib.hunsigned longFAR const char *FAR char **int
191strtoullstdlib.hdefined(CONFIG_HAVE_LONG_LONG)unsigned long longFAR const char *FAR char **int
192strxfrmstring.hdefined(CONFIG_LIBC_LOCALE)size_tFAR char *FAR const char *size_t
193swabunistd.hvoidintFAR const void *FAR void *ssize_t
194swprintfwchar.hdefined(CONFIG_LIBC_WCHAR)intFAR wchar_t *size_tFAR const wchar_t *...
195syslogsyslog.hintintFAR const char *...
196tcflushtermios.hdefined(CONFIG_SERIAL_TERMIOS)intintint
197tcgetattrtermios.hdefined(CONFIG_SERIAL_TERMIOS)intintFAR struct termios *
198tcsetattrtermios.hdefined(CONFIG_SERIAL_TERMIOS)intintintFAR const struct termios *
199telldirdirent.hoff_tFAR DIR *
200timetime.htime_ttime_t *
201towlowerwchar.hdefined(CONFIG_LIBC_WCHAR)wint_twint_t
202towupperwchar.hdefined(CONFIG_LIBC_WCHAR)wint_twint_t
203ub16divub16fixedmath.h!defined(CONFIG_HAVE_LONG_LONG)ub16_tub16_tub16_t
204ub16mulub16fixedmath.h!defined(CONFIG_HAVE_LONG_LONG)ub16_tub16_tub16_t
205ub16sqrfixedmath.h!defined(CONFIG_HAVE_LONG_LONG)ub16_tub16_t
206ungetcstdio.hCONFIG_NFILE_STREAMS > 0intintFAR FILE *
207usleepunistd.hintintFAR FILE *
208_infodebug.h!defined(CONFIG_CPP_HAVE_VARARGS) && defined(CONFIG_DEBUG_INFO)intFAR const char *...
209vfprintfstdio.hCONFIG_NFILE_STREAMS > 0intFAR FILE *FAR const char *va_list
210vprintfstdio.hCONFIG_NFILE_STREAMS > 0intFAR const char *va_list
211vsnprintfstdio.hintFAR char *size_tFAR const char *va_list
212vsprintfstdio.hintFAR char *FAR const char *va_list
213vsscanfstdio.hintFAR char *FAR const char *va_list
214vsyslogsyslog.hintintFAR const char *va_list
215wcrtombwchar.hdefined(CONFIG_LIBC_WCHAR)size_tFAR char *wchar_tmbstate_t *
216wcscmpwchar.hdefined(CONFIG_LIBC_WCHAR)intFAR const wchar_t *FAR const wchar_t *
217wcscollwchar.hdefined(CONFIG_LIBC_WCHAR)intFAR const wchar_t *FAR const wchar_t *
218wcsftimewchar.hdefined(CONFIG_LIBC_WCHAR)size_tFAR wchar_t *size_tFAR const wchar_t *FAR const struct tm *
219wcslcpywchar.hdefined(CONFIG_LIBC_WCHAR)size_tFAR const wchar_t *FAR const wchar_t *size_t
220wcslenwchar.hdefined(CONFIG_LIBC_WCHAR)size_tFAR const wchar_t *
221wcsnrtombswchar.hdefined(CONFIG_LIBC_WCHAR)size_tFAR char *FAR const wchar_t **size_tsize_tmbstate_t *
222wcstodwchar.hdefined(CONFIG_LIBC_WCHAR)FAR const wchar_t *FAR wchar_t **
223wcstofwchar.hdefined(CONFIG_LIBC_WCHAR)floatFAR const wchar_t *FAR wchar_t **
224wcstolwchar.hdefined(CONFIG_LIBC_WCHAR)long intFAR const wchar_t *FAR wchar_t **int
225wcstoldwchar.hdefined(CONFIG_LIBC_WCHAR)long doubleFAR const wchar_t *FAR wchar_t **
226wcstollwchar.hdefined(CONFIG_LIBC_WCHAR)long long intFAR const wchar_t *FAR wchar_t **int
227wcstoulwchar.hdefined(CONFIG_LIBC_WCHAR)unsigned long intFAR const wchar_t *FAR wchar_t **int
228wcsxfrmwchar.hdefined(CONFIG_LIBC_WCHAR)size_twchar_t *FAR const wchar_t *size_t
229wctobwchar.hdefined(CONFIG_LIBC_WCHAR)intwchar_t
230wctombwchar.hdefined(CONFIG_LIBC_WCHAR)intFAR char *wchar_t
231wctypewctype.hdefined(CONFIG_LIBC_WCHAR)wctype_tFAR const char *
232wmemchrwchar.hdefined(CONFIG_LIBC_WCHAR)wchar_t *wchar_t *wchar_tsize_t
233wmemcmpwchar.hdefined(CONFIG_LIBC_WCHAR)intwchar_t *wchar_t *size_t
234wmemcpywchar.hdefined(CONFIG_LIBC_WCHAR)wchat_t *wchar_t *wchar_t *size_t
235wmemmovewchar.hdefined(CONFIG_LIBC_WCHAR)wchat_t *wchar_t *wchar_t *size_t
236wmemsetwchar.hdefined(CONFIG_LIBC_WCHAR)wchat_t *wchar_t *wchar_tsize_t
237writevsys/uio.hssize_tintFAR const struct iovec *int
238_warndebug.h!defined(CONFIG_CPP_HAVE_VARARGS) && defined(CONFIG_DEBUG_WARN)intFAR const char *...