newlib-cygwin/newlib/libc
Corinna Vinschen 748b416ab9 select.h: update FD macros to latest FreeBSD, fix type conversion warning
Compiling

#include <sys/select.h>
void f(int X)
{
  fd_set set;
  FD_ZERO(&set);
  FD_SET(X,&set);
  FD_CLR(X+1,&set);
  (void)FD_ISSET(X+2,&set);
}

results in plenty of gcc warnings when compiled with
-Wconversion -Wsign-conversion:

  fds.c:7:2: warning: conversion to ‘long unsigned int’ from ‘int’ may
    FD_SET(X,&set);
    ^~~~~~
  [...]

The unsigned NFDBITS macro combined with the signed 1L constant
are causing lots of implicit signed/unsigned type conversions.

Fix this by updating the FD_* macro code to the latest from FreeBSD
and adding an (int) cast to _NFDBITS.

As a side-effect, this fixes the visibility of NFDBITS and
fds_bits (only if __BSD_VISIBLE).

This also eliminates the old, outdated fd_set workaround.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2020-10-14 10:54:25 -04:00
..
argz ansification: remove _DEFUN 2018-01-17 11:47:26 -06:00
ctype Use remove-advertising-clause script to edit BSD licenses 2020-10-14 10:54:10 -04:00
errno makedoc: make errors visible 2017-12-07 11:54:11 +00:00
iconv libc/iconv: find_alias was mis-computing remaining alias table length 2020-10-14 10:54:23 -04:00
include select.h: update FD macros to latest FreeBSD, fix type conversion warning 2020-10-14 10:54:25 -04:00
locale Locale modifier "@cjksingle" to enforce single-width CJK width. 2020-10-14 10:54:12 -04:00
machine arm: Fix fenv support 2020-10-14 10:54:25 -04:00
misc Use remove-advertising-clause script to edit BSD licenses 2020-10-14 10:54:10 -04:00
posix Cygwin: posix_spawn: add Cygwin-specific code fixing process synchronisation 2020-10-14 10:54:25 -04:00
reent ansification: remove _DEFUN 2018-01-17 11:47:26 -06:00
search Use remove-advertising-clause script to edit BSD licenses 2020-10-14 10:54:10 -04:00
signal Fix newlib functions perror()/psignal() not to use writev(). 2018-07-05 15:33:49 -04:00
ssp AMD GCN Port contributed by Andrew Stubbs <ams@codesourcery.com> 2019-01-15 10:48:08 -05:00
stdio Typo in license for newlib/libc/stdio/flags.c 2020-10-14 10:54:11 -04:00
stdio64 Use remove-advertising-clause script to edit BSD licenses 2020-10-14 10:54:10 -04:00
stdlib Reimplement aligned_alloc 2020-10-14 10:54:19 -04:00
string Locale modifier "@cjksingle" to enforce single-width CJK width. 2020-10-14 10:54:12 -04:00
sys RTEMS: Include missing header and fix stub 2020-10-14 10:54:15 -04:00
syscalls ansification: remove _HAVE_STDC 2018-01-17 11:47:30 -06:00
time newlib: strftime: fix over-enthusiastic fix from 0283642f35 2018-08-08 23:59:34 +02:00
unix Fix comparison between two character arrays 2018-07-30 09:36:49 +02:00
xdr xdr_private.h needs sys/types.h for u_char 2018-09-06 14:10:42 +02:00
Makefile.am ssp: add build infrastructure 2017-11-29 11:25:46 -06:00
Makefile.in ssp: add build infrastructure 2017-11-29 11:25:46 -06:00
aclocal.m4 Fix up errors in regenerated files for 2.3.0 release. 2016-01-04 12:57:31 -05:00
configure Bump up newlib release to 3.3.0 2020-10-14 10:54:08 -04:00
configure.in ssp: add build infrastructure 2017-11-29 11:25:46 -06:00
libc.in.xml ssp: add documentation 2017-11-29 11:25:45 -06:00
libc.texinfo ssp: add documentation 2017-11-29 11:25:45 -06:00
saber Remove matherr, and SVID and X/Open math library configurations 2019-01-23 10:46:24 +01:00
sys.tex Don't include stdio64 functions in reentrant syscalls menu when not bulding stdio64. 2015-08-03 09:54:33 +01:00