Giter VIP home page Giter VIP logo

aiodns's People

Contributors

antonagestam avatar arthurdarcet avatar asvetlov avatar avostap avatar bdraco avatar brouberol avatar chrono-meter avatar cooperlees avatar dthadi3 avatar ekohl avatar gerion0 avatar jchacking avatar jmillxyz avatar jwilk avatar kotnik avatar martiusweb avatar mensaah avatar mgorny avatar mimi89999 avatar nbraud avatar rooterkyberian avatar rytilahti avatar saghul avatar shadchin avatar snawoot avatar sobolevn avatar tomaso avatar vizonex avatar wojtek avatar xtrochu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

aiodns's Issues

SystemError when record contains special characters.

Hi, I have a very similar problem to this solved issue:

import asyncio
import aiodns

loop = asyncio.get_event_loop()
resolver = aiodns.DNSResolver(loop=loop)
result = loop.run_until_complete(resolver.query('xn--cardeosapeluqueros-r0b.com', 'MX'))
print(result)

I get this error and the program hangs.

Exception ignored in: functools.partial(<function DNSResolver._callback at 0x7fe1067b2ea0>, <Future pending cb=[_run_until_complete_cb() at /usr/local/lib/python3.6/asyncio/base_events.py:176]>)
Traceback (most recent call last):
  File "/home/steven/Envs/vPandapipe/lib/python3.6/site-packages/aiodns/__init__.py", line 56, in _callback
    if fut.cancelled():
SystemError: <built-in method cancelled of _asyncio.Future object at 0x7fe106ee7828> returned a result with an error set

Looking further I found that this problem happens when the result of the query has special characters,
Doing a ns lookup I found this for MX:

Non-authoritative answer:
 xn--cardeosapeluqueros-r0b.com mail exchanger = 10 carde\241osapeluqueros.com.

Querying SOA for ayesas.com. Its record also contains a special character:

Non-authoritative answer:
ayesas.com
	origin = ns2.3c1b.com
	mail addr = adm\253n.domain.com
	serial = 2015010244
	refresh = 3600
	retry = 600
	expire = 1209600
	minimum = 3600

I'm using aiodns 1.1.1 and pycares 2.3.0.

Thank you!

too many arguments to function call, expected 6, have 7

I'm getting
build/temp.macosx-10.14-x86_64-3.7/_cares.c:2573:55: error: too many arguments to function call, expected 6, have 7
on pip install aiodns
pip/python version: pip 19.0.3 from path/to/venv/lib/python3.7/site-packages/pip-19.0.3-py3.7.egg/pip (python 3.7)
OS: macOS Mojave 10.14.6

Poor performance running in VMware Linux

When querying thousands of public resolvers asynchronously on dedicated Linux / OS X machine I'm getting about 760 errors in 10700 queries. When I run exactly same code in VMware Linux I'm getting about 7080 errors. Vast majority of errors are Timeouts.

My aiodns settings are:

AIODNS_TIMEOUT = 3
AIODNS_RETRY = 2

On Linux count of errors may be drastically lowered by setting

AIODNS_TIMEOUT = 7
AIODNS_RETRY = 5

which however has serious impact on performance.

See fully working debug code below

import asyncio
import aiodns
import requests
import re


AIODNS_TIMEOUT = 3
AIODNS_RETRY = 2


class Fetcher(object):

    def __init__(self):

        self.loop = asyncio.get_event_loop()

    def get_records(self, names, query_type, resolvers):

        coros = [self._query_sweep_resolvers(names, query_type, resolver) for resolver in resolvers]
        tasks = asyncio.gather(*coros, return_exceptions=True)

        records = self.loop.run_until_complete(tasks)

        return records

    async def _query_sweep_resolvers(self, name, query_type, nameserver):

        resolver = aiodns.DNSResolver(
            nameservers=[nameserver],
            timeout=AIODNS_TIMEOUT,
            tries=AIODNS_RETRY,
            loop=self.loop
        )

        try:
            result = await resolver.query(name, query_type)
        except aiodns.error.DNSError as e:
            result = e

        return {'ns': nameserver,'name': name ,'type': query_type, 'result': result}


def errors_count(results):

    count = 0
    for result in results:
        if type(result['result']) is aiodns.error.DNSError:
            count += 1
    return count

def get_resolvers():

    data = requests.get('https://public-dns.info/nameservers.csv')
    data_list = data.text.split('\n')
    ips = []
    for resolver in data_list[:-1]:
        ip = resolver.split(',')[0]
        reliability = resolver.split(',')[7]
        if re.match('\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$', ip) and reliability == '1.00':
            ips.append(ip)
    return ips


if __name__ == '__main__':

    fetcher = Fetcher()
    resolvers = get_resolvers()
    results = fetcher.get_records('www.flickr.com', 'A', resolvers)
    errors = errors_count(results)
    pass

Output of ulimit

(.venv) root@kali:~/Programs/DNSweeper# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 15552
max locked memory       (kbytes, -l) 16384
max memory size         (kbytes, -m) unlimited
open files                      (-n) 65535
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 65535
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

Output of uname

(.venv) root@kali:~/Programs/DNSweeper# uname -a
Linux kali 4.18.0-kali2-amd64 #1 SMP Debian 4.18.10-2kali1 (2018-10-09) x86_64 GNU/Linux

Running Linux in VMware Professional Version 10.1.5 (10950653)

Question is why I'm getting so many Timeout errors?

Requested hostname in response?

Is it possible to get the requested hostname included in the response (error or success)?

When requesting lots of domain names at one time it becomes cumbersome to try and include this data in some other way. It would be great if it was just accessible in the returned object.

If I'm missing something please let me know, but right now I only see the TTL and IP address.

Unable to build using mingw

Compiler is getting "/NODEFAULTLIB:libcmt" as an argument

[...]
    D:\msys2_64\mingw64\bin\x86_64-w64-mingw32-gcc.exe -shared -Wl,--enable-auto-image-base -pipe -s -pipe -s -s build\temp.mingw-3.7\src/pycares.o build\temp.mingw-3.7\deps/c-ares/src/ares__close_sockets.o build\temp.mingw-3.7\deps/c-ares/src/ares__get_hostent.o build\temp.mingw-3.7\deps/c-ares/src/ares__read_line.o build\temp.mingw-3.7\deps/c-ares/src/ares__timeval.o build\temp.mingw-3.7\deps/c-ares/src/ares_cancel.o build\temp.mingw-3.7\deps/c-ares/src/ares_create_query.o build\temp.mingw-3.7\deps/c-ares/src/ares_data.o build\temp.mingw-3.7\deps/c-ares/src/ares_destroy.o build\temp.mingw-3.7\deps/c-ares/src/ares_expand_name.o build\temp.mingw-3.7\deps/c-ares/src/ares_expand_string.o build\temp.mingw-3.7\deps/c-ares/src/ares_fds.o build\temp.mingw-3.7\deps/c-ares/src/ares_free_hostent.o build\temp.mingw-3.7\deps/c-ares/src/ares_free_string.o build\temp.mingw-3.7\deps/c-ares/src/ares_gethostbyaddr.o build\temp.mingw-3.7\deps/c-ares/src/ares_gethostbyname.o build\temp.mingw-3.7\deps/c-ares/src/ares_getnameinfo.o build\temp.mingw-3.7\deps/c-ares/src/ares_getopt.o build\temp.mingw-3.7\deps/c-ares/src/ares_getsock.o build\temp.mingw-3.7\deps/c-ares/src/ares_init.o build\temp.mingw-3.7\deps/c-ares/src/ares_library_init.o build\temp.mingw-3.7\deps/c-ares/src/ares_llist.o build\temp.mingw-3.7\deps/c-ares/src/ares_mkquery.o build\temp.mingw-3.7\deps/c-ares/src/ares_nowarn.o build\temp.mingw-3.7\deps/c-ares/src/ares_options.o build\temp.mingw-3.7\deps/c-ares/src/ares_parse_a_reply.o build\temp.mingw-3.7\deps/c-ares/src/ares_parse_aaaa_reply.o build\temp.mingw-3.7\deps/c-ares/src/ares_parse_mx_reply.o build\temp.mingw-3.7\deps/c-ares/src/ares_parse_naptr_reply.o build\temp.mingw-3.7\deps/c-ares/src/ares_parse_ns_reply.o build\temp.mingw-3.7\deps/c-ares/src/ares_parse_ptr_reply.o build\temp.mingw-3.7\deps/c-ares/src/ares_parse_soa_reply.o build\temp.mingw-3.7\deps/c-ares/src/ares_parse_srv_reply.o build\temp.mingw-3.7\deps/c-ares/src/ares_parse_txt_reply.o build\temp.mingw-3.7\deps/c-ares/src/ares_process.o build\temp.mingw-3.7\deps/c-ares/src/ares_query.o build\temp.mingw-3.7\deps/c-ares/src/ares_search.o build\temp.mingw-3.7\deps/c-ares/src/ares_send.o build\temp.mingw-3.7\deps/c-ares/src/ares_strcasecmp.o build\temp.mingw-3.7\deps/c-ares/src/ares_strdup.o build\temp.mingw-3.7\deps/c-ares/src/ares_strerror.o build\temp.mingw-3.7\deps/c-ares/src/ares_timeout.o build\temp.mingw-3.7\deps/c-ares/src/ares_version.o build\temp.mingw-3.7\deps/c-ares/src/ares_writev.o build\temp.mingw-3.7\deps/c-ares/src/bitncmp.o build\temp.mingw-3.7\deps/c-ares/src/inet_net_pton.o build\temp.mingw-3.7\deps/c-ares/src/inet_ntop.o build\temp.mingw-3.7\deps/c-ares/src/windows_port.o build\temp.mingw-3.7\deps/c-ares/src/ares_platform.o build\temp.mingw-3.7\src\_core-cpython-37m.def -LD:\msys2_64\mingw64\lib\python3.7\config-3.7m -LD:\msys2_64\mingw64/lib -lpython3.7m -lversion -lshlwapi -ladvapi32 -liphlpapi -lpsapi -lws2_32 -o build\lib.mingw-3.7\pycares\_core-cpython-37m.dll /NODEFAULTLIB:libcmt
    x86_64-w64-mingw32-gcc: error: /NODEFAULTLIB:libcmt: No such file or directory
    error: command 'D:\\msys2_64\\mingw64\\bin\\x86_64-w64-mingw32-gcc.exe' failed with exit status 1

NotImplementedError on Win10 x64 OS

Env

Win10 19.09 x64
Python 3.8.0

Code

import aiodns
import asyncio

async def query_a(name):
    resolver = aiodns.DNSResolver()
    return await resolver.query(name, "A")

if __name__ == '__main__':
    res = asyncio.run(query_a('qq.com'), debug=True)
    pass

Error

Connected to pydev debugger (build 193.5662.61)
From cffi callback <function _sock_state_cb at 0x000001C25B3C3430>:
Traceback (most recent call last):
  File "C:\Users\test\.virtualenvs\OneForAll-qYrK1GZO\lib\site-packages\pycares\__init__.py", line 91, in _sock_state_cb
    sock_state_cb(socket_fd, readable, writable)
  File "C:\Users\test\.virtualenvs\OneForAll-qYrK1GZO\lib\site-packages\aiodns\__init__.py", line 104, in _sock_state_cb
    self.loop.add_reader(fd, self._handle_event, fd, READ)
  File "C:\Program Files\Python38\Lib\asyncio\events.py", line 501, in add_reader
    raise NotImplementedError
NotImplementedError

can not install in osx 10.14 Mojave

Collecting aiodns
Using cached https://files.pythonhosted.org/packages/bd/f5/b69cb930fd5ab0569396659afe3f3c0d37d4098e5d0ba6afdf6fd9388cb0/aiodns-1.1.1-py2.py3-none-any.whl
Collecting pycares>=1.0.0 (from aiodns)
Using cached https://files.pythonhosted.org/packages/89/5c/3a7e1a52d6abb52b9ca1a56d2df699936e89d8b98f75cfd60d03363e7c10/pycares-2.3.0.tar.gz
Installing collected packages: pycares, aiodns
Running setup.py install for pycares: started
Running setup.py install for pycares: finished with status 'error'
Complete output from command /Users/xxxxx/.pyenv/versions/3.5.6/bin/python3.5 -u -c "import setuptools, tokenize;file='/private/var/folders/9g/hzdktlvs3jn1d712hl3rcbd00000gn/T/pip-install-v5iiebti/pycares/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record /private/var/folders/9g/hzdktlvs3jn1d712hl3rcbd00000gn/T/pip-record-n9vgw7ds/install-record.txt --single-version-externally-managed --compile:
running install
running build
running build_py
creating build
creating build/lib.macosx-10.14-x86_64-3.5
creating build/lib.macosx-10.14-x86_64-3.5/pycares
copying pycares/errno.py -> build/lib.macosx-10.14-x86_64-3.5/pycares
copying pycares/_version.py -> build/lib.macosx-10.14-x86_64-3.5/pycares
copying pycares/init.py -> build/lib.macosx-10.14-x86_64-3.5/pycares
copying pycares/main.py -> build/lib.macosx-10.14-x86_64-3.5/pycares
running build_ext
building 'pycares._core' extension
creating build/temp.macosx-10.14-x86_64-3.5
creating build/temp.macosx-10.14-x86_64-3.5/src
creating build/temp.macosx-10.14-x86_64-3.5/deps
creating build/temp.macosx-10.14-x86_64-3.5/deps/c-ares
creating build/temp.macosx-10.14-x86_64-3.5/deps/c-ares/src
clang -Wno-unused-result -Wsign-compare -Wunreachable-code -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include -I/usr/local/opt/ -DHAVE_CONFIG_H=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -D_DARWIN_USE_64_BIT_INODE=1 -I/Users/xxxxx/.pyenv/versions/3.5.6/include/python3.5m -Ideps/c-ares/src -Ideps/c-ares/src/config_darwin -c src/pycares.c -o build/temp.macosx-10.14-x86_64-3.5/src/pycares.o
In file included from src/pycares.c:2:
In file included from src/pycares.h:7:
In file included from /Users/xxxxx/.pyenv/versions/3.5.6/include/python3.5m/Python.h:25:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:64:
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:93:16: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
unsigned char *_base;
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:93:16: note: insert '_Nullable' if the pointer may be null
unsigned char *_base;
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:93:16: note: insert '_Nonnull' if the pointer should never be null
unsigned char _base;
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:138:32: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nullable _read) (void *, char , int);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:138:32: note: insert '_Nullable' if the pointer may be null
int (
_Nullable _read) (void *, char , int);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:138:32: note: insert '_Nonnull' if the pointer should never be null
int (
_Nullable _read) (void *, char , int);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:138:40: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nullable _read) (void *, char , int);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:138:40: note: insert '_Nullable' if the pointer may be null
int (
_Nullable _read) (void *, char , int);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:138:40: note: insert '_Nonnull' if the pointer should never be null
int (
_Nullable _read) (void *, char , int);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:139:35: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
fpos_t (
_Nullable _seek) (void , fpos_t, int);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:139:35: note: insert '_Nullable' if the pointer may be null
fpos_t (
_Nullable _seek) (void , fpos_t, int);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:139:35: note: insert '_Nonnull' if the pointer should never be null
fpos_t (
_Nullable _seek) (void , fpos_t, int);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:140:32: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nullable _write)(void *, const char , int);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:140:32: note: insert '_Nullable' if the pointer may be null
int (
_Nullable _write)(void *, const char , int);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:140:32: note: insert '_Nonnull' if the pointer should never be null
int (
_Nullable _write)(void *, const char , int);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:140:46: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nullable _write)(void *, const char , int);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:140:46: note: insert '_Nullable' if the pointer may be null
int (
_Nullable _write)(void *, const char , int);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:140:46: note: insert '_Nonnull' if the pointer should never be null
int (
_Nullable _write)(void *, const char *, int);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:144:18: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
struct __sFILEX _extra; / additions to FILE to not break ABI */
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:144:18: note: insert '_Nullable' if the pointer may be null
struct __sFILEX _extra; / additions to FILE to not break ABI */
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/_stdio.h:144:18: note: insert '_Nonnull' if the pointer should never be null
struct __sFILEX _extra; / additions to FILE to not break ABI */
^
_Nonnull
In file included from src/pycares.c:2:
In file included from src/pycares.h:7:
In file included from /Users/xxxxx/.pyenv/versions/3.5.6/include/python3.5m/Python.h:25:
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:67:13: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
extern FILE *__stdinp;
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:67:13: note: insert '_Nullable' if the pointer may be null
extern FILE *__stdinp;
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:67:13: note: insert '_Nonnull' if the pointer should never be null
extern FILE __stdinp;
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:390:41: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nullable)(void *, const char , int),
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:390:41: note: insert '_Nullable' if the pointer may be null
int (
_Nullable)(void *, const char , int),
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:390:41: note: insert '_Nonnull' if the pointer should never be null
int (
_Nullable)(void *, const char , int),
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:390:55: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nullable)(void *, const char , int),
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:390:55: note: insert '_Nullable' if the pointer may be null
int (
_Nullable)(void *, const char , int),
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:390:55: note: insert '_Nonnull' if the pointer should never be null
int (
_Nullable)(void *, const char , int),
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:391:44: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
fpos_t (
_Nullable)(void , fpos_t, int),
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:391:44: note: insert '_Nullable' if the pointer may be null
fpos_t (
_Nullable)(void , fpos_t, int),
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:391:44: note: insert '_Nonnull' if the pointer should never be null
fpos_t (
_Nullable)(void , fpos_t, int),
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:392:41: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nullable)(void ));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:392:41: note: insert '_Nullable' if the pointer may be null
int (
_Nullable)(void ));
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:392:41: note: insert '_Nonnull' if the pointer should never be null
int (
_Nullable)(void *));
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:388:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
FILE *funopen(const void *,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:388:6: note: insert '_Nullable' if the pointer may be null
FILE *funopen(const void *,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h:388:6: note: insert '_Nonnull' if the pointer should never be null
FILE *funopen(const void *,
^
_Nonnull
In file included from src/pycares.c:2:
In file included from src/pycares.h:7:
In file included from /Users/xxxxx/.pyenv/versions/3.5.6/include/python3.5m/Python.h:34:
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:134:25: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
double atof(const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:134:25: note: insert '_Nullable' if the pointer may be null
double atof(const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:134:25: note: insert '_Nonnull' if the pointer should never be null
double atof(const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:135:22: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int atoi(const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:135:22: note: insert '_Nullable' if the pointer may be null
int atoi(const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:135:22: note: insert '_Nonnull' if the pointer should never be null
int atoi(const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:136:23: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
long atol(const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:136:23: note: insert '_Nullable' if the pointer may be null
long atol(const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:136:23: note: insert '_Nonnull' if the pointer should never be null
long atol(const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:139:20: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
atoll(const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:139:20: note: insert '_Nullable' if the pointer may be null
atoll(const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:139:20: note: insert '_Nonnull' if the pointer should never be null
atoll(const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:141:26: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void *bsearch(const void *__key, const void *__base, size_t __nel,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:141:26: note: insert '_Nullable' if the pointer may be null
void *bsearch(const void *__key, const void *__base, size_t __nel,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:141:26: note: insert '_Nonnull' if the pointer should never be null
void *bsearch(const void *__key, const void *__base, size_t __nel,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:141:45: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void *bsearch(const void *__key, const void *__base, size_t __nel,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:141:45: note: insert '_Nullable' if the pointer may be null
void *bsearch(const void *__key, const void *__base, size_t __nel,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:141:45: note: insert '_Nonnull' if the pointer should never be null
void *bsearch(const void *__key, const void __base, size_t __nel,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:142:59: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
size_t __width, int (
_Nonnull __compar)(const void *, const void ));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:142:59: note: insert '_Nullable' if the pointer may be null
size_t __width, int (
_Nonnull __compar)(const void *, const void ));
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:142:59: note: insert '_Nonnull' if the pointer should never be null
size_t __width, int (
_Nonnull __compar)(const void *, const void ));
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:142:73: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
size_t __width, int (
_Nonnull __compar)(const void *, const void ));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:142:73: note: insert '_Nullable' if the pointer may be null
size_t __width, int (
_Nonnull __compar)(const void *, const void ));
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:142:73: note: insert '_Nonnull' if the pointer should never be null
size_t __width, int (
_Nonnull __compar)(const void *, const void *));
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:141:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void *bsearch(const void *__key, const void *__base, size_t __nel,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:141:6: note: insert '_Nullable' if the pointer may be null
void *bsearch(const void *__key, const void *__base, size_t __nel,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:141:6: note: insert '_Nonnull' if the pointer should never be null
void *bsearch(const void *__key, const void *__base, size_t __nel,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:147:25: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *getenv(const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:147:25: note: insert '_Nullable' if the pointer may be null
char *getenv(const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:147:25: note: insert '_Nonnull' if the pointer should never be null
char *getenv(const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:147:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *getenv(const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:147:6: note: insert '_Nullable' if the pointer may be null
char *getenv(const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:147:6: note: insert '_Nonnull' if the pointer should never be null
char *getenv(const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:156:23: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int mblen(const char *__s, size_t __n);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:156:23: note: insert '_Nullable' if the pointer may be null
int mblen(const char *__s, size_t __n);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:156:23: note: insert '_Nonnull' if the pointer should never be null
int mblen(const char *__s, size_t __n);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:157:26: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
size_t mbstowcs(wchar_t * __restrict , const char * __restrict, size_t);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:157:26: note: insert '_Nullable' if the pointer may be null
size_t mbstowcs(wchar_t * __restrict , const char * __restrict, size_t);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:157:26: note: insert '_Nonnull' if the pointer should never be null
size_t mbstowcs(wchar_t * __restrict , const char * __restrict, size_t);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:157:52: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
size_t mbstowcs(wchar_t * __restrict , const char * __restrict, size_t);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:157:52: note: insert '_Nullable' if the pointer may be null
size_t mbstowcs(wchar_t * __restrict , const char * __restrict, size_t);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:157:52: note: insert '_Nonnull' if the pointer should never be null
size_t mbstowcs(wchar_t * __restrict , const char * __restrict, size_t);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:158:21: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int mbtowc(wchar_t * __restrict, const char * __restrict, size_t);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:158:21: note: insert '_Nullable' if the pointer may be null
int mbtowc(wchar_t * __restrict, const char * __restrict, size_t);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:158:21: note: insert '_Nonnull' if the pointer should never be null
int mbtowc(wchar_t * __restrict, const char * __restrict, size_t);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:158:46: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int mbtowc(wchar_t * __restrict, const char * __restrict, size_t);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:158:46: note: insert '_Nullable' if the pointer may be null
int mbtowc(wchar_t * __restrict, const char * __restrict, size_t);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:158:46: note: insert '_Nonnull' if the pointer should never be null
int mbtowc(wchar_t * __restrict, const char * __restrict, size_t);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:160:18: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void qsort(void *__base, size_t __nel, size_t __width,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:160:18: note: insert '_Nullable' if the pointer may be null
void qsort(void *__base, size_t __nel, size_t __width,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:160:18: note: insert '_Nonnull' if the pointer should never be null
void qsort(void __base, size_t __nel, size_t __width,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:161:43: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nonnull __compar)(const void *, const void ));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:161:43: note: insert '_Nullable' if the pointer may be null
int (
_Nonnull __compar)(const void *, const void ));
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:161:43: note: insert '_Nonnull' if the pointer should never be null
int (
_Nonnull __compar)(const void *, const void ));
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:161:57: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nonnull __compar)(const void *, const void ));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:161:57: note: insert '_Nullable' if the pointer may be null
int (
_Nonnull __compar)(const void *, const void ));
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:161:57: note: insert '_Nonnull' if the pointer should never be null
int (
_Nonnull __compar)(const void *, const void *));
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:165:27: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
double strtod(const char *, char **) __DARWIN_ALIAS(strtod);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:165:27: note: insert '_Nullable' if the pointer may be null
double strtod(const char *, char **) __DARWIN_ALIAS(strtod);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:165:27: note: insert '_Nonnull' if the pointer should never be null
double strtod(const char *, char **) __DARWIN_ALIAS(strtod);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:165:35: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
double strtod(const char *, char **) __DARWIN_ALIAS(strtod);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:165:35: note: insert '_Nullable' if the pointer may be null
double strtod(const char *, char **) __DARWIN_ALIAS(strtod);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:165:35: note: insert '_Nonnull' if the pointer should never be null
double strtod(const char *, char **) __DARWIN_ALIAS(strtod);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:165:36: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
double strtod(const char *, char **) __DARWIN_ALIAS(strtod);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:165:36: note: insert '_Nullable' if the pointer may be null
double strtod(const char *, char **) __DARWIN_ALIAS(strtod);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:165:36: note: insert '_Nonnull' if the pointer should never be null
double strtod(const char *, char **) __DARWIN_ALIAS(strtod);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:166:26: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
float strtof(const char *, char **) __DARWIN_ALIAS(strtof);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:166:26: note: insert '_Nullable' if the pointer may be null
float strtof(const char *, char **) __DARWIN_ALIAS(strtof);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:166:26: note: insert '_Nonnull' if the pointer should never be null
float strtof(const char *, char **) __DARWIN_ALIAS(strtof);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:166:34: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
float strtof(const char *, char **) __DARWIN_ALIAS(strtof);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:166:34: note: insert '_Nullable' if the pointer may be null
float strtof(const char *, char **) __DARWIN_ALIAS(strtof);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:166:34: note: insert '_Nonnull' if the pointer should never be null
float strtof(const char *, char **) __DARWIN_ALIAS(strtof);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:166:35: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
float strtof(const char *, char **) __DARWIN_ALIAS(strtof);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:166:35: note: insert '_Nullable' if the pointer may be null
float strtof(const char *, char **) __DARWIN_ALIAS(strtof);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:166:35: note: insert '_Nonnull' if the pointer should never be null
float strtof(const char *, char **) __DARWIN_ALIAS(strtof);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:167:25: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
long strtol(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:167:25: note: insert '_Nullable' if the pointer may be null
long strtol(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:167:25: note: insert '_Nonnull' if the pointer should never be null
long strtol(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:167:38: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
long strtol(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:167:38: note: insert '_Nullable' if the pointer may be null
long strtol(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:167:38: note: insert '_Nonnull' if the pointer should never be null
long strtol(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:167:39: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
long strtol(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:167:39: note: insert '_Nullable' if the pointer may be null
long strtol(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:167:39: note: insert '_Nonnull' if the pointer should never be null
long strtol(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:169:22: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtold(const char *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:169:22: note: insert '_Nullable' if the pointer may be null
strtold(const char *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:169:22: note: insert '_Nonnull' if the pointer should never be null
strtold(const char *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:169:30: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtold(const char *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:169:30: note: insert '_Nullable' if the pointer may be null
strtold(const char *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:169:30: note: insert '_Nonnull' if the pointer should never be null
strtold(const char *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:169:31: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtold(const char *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:169:31: note: insert '_Nullable' if the pointer may be null
strtold(const char *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:169:31: note: insert '_Nonnull' if the pointer should never be null
strtold(const char *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:172:22: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtoll(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:172:22: note: insert '_Nullable' if the pointer may be null
strtoll(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:172:22: note: insert '_Nonnull' if the pointer should never be null
strtoll(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:172:35: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtoll(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:172:35: note: insert '_Nullable' if the pointer may be null
strtoll(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:172:35: note: insert '_Nonnull' if the pointer should never be null
strtoll(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:172:36: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtoll(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:172:36: note: insert '_Nullable' if the pointer may be null
strtoll(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:172:36: note: insert '_Nonnull' if the pointer should never be null
strtoll(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:175:22: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtoul(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:175:22: note: insert '_Nullable' if the pointer may be null
strtoul(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:175:22: note: insert '_Nonnull' if the pointer should never be null
strtoul(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:175:35: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtoul(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:175:35: note: insert '_Nullable' if the pointer may be null
strtoul(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:175:35: note: insert '_Nonnull' if the pointer should never be null
strtoul(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:175:36: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtoul(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:175:36: note: insert '_Nullable' if the pointer may be null
strtoul(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:175:36: note: insert '_Nonnull' if the pointer should never be null
strtoul(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:178:23: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtoull(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:178:23: note: insert '_Nullable' if the pointer may be null
strtoull(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:178:23: note: insert '_Nonnull' if the pointer should never be null
strtoull(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:178:36: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtoull(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:178:36: note: insert '_Nullable' if the pointer may be null
strtoull(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:178:36: note: insert '_Nonnull' if the pointer should never be null
strtoull(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:178:37: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtoull(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:178:37: note: insert '_Nullable' if the pointer may be null
strtoull(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:178:37: note: insert '_Nonnull' if the pointer should never be null
strtoull(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:190:24: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int system(const char *) __DARWIN_ALIAS_C(system);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:190:24: note: insert '_Nullable' if the pointer may be null
int system(const char *) __DARWIN_ALIAS_C(system);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:190:24: note: insert '_Nonnull' if the pointer should never be null
int system(const char *) __DARWIN_ALIAS_C(system);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:194:23: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
size_t wcstombs(char * __restrict, const wchar_t * __restrict, size_t);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:194:23: note: insert '_Nullable' if the pointer may be null
size_t wcstombs(char * __restrict, const wchar_t * __restrict, size_t);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:194:23: note: insert '_Nonnull' if the pointer should never be null
size_t wcstombs(char * __restrict, const wchar_t * __restrict, size_t);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:194:51: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
size_t wcstombs(char * __restrict, const wchar_t * __restrict, size_t);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:194:51: note: insert '_Nullable' if the pointer may be null
size_t wcstombs(char * __restrict, const wchar_t * __restrict, size_t);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:194:51: note: insert '_Nonnull' if the pointer should never be null
size_t wcstombs(char * __restrict, const wchar_t * __restrict, size_t);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:195:18: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int wctomb(char *, wchar_t);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:195:18: note: insert '_Nullable' if the pointer may be null
int wctomb(char *, wchar_t);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:195:18: note: insert '_Nonnull' if the pointer should never be null
int wctomb(char *, wchar_t);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:199:23: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
long a64l(const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:199:23: note: insert '_Nullable' if the pointer may be null
long a64l(const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:199:23: note: insert '_Nonnull' if the pointer should never be null
long a64l(const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:201:29: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *ecvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:201:29: note: insert '_Nullable' if the pointer may be null
char *ecvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:201:29: note: insert '_Nonnull' if the pointer should never be null
char *ecvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:201:46: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *ecvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:201:46: note: insert '_Nullable' if the pointer may be null
char *ecvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:201:46: note: insert '_Nonnull' if the pointer should never be null
char *ecvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:201:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *ecvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:201:6: note: insert '_Nullable' if the pointer may be null
char *ecvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:201:6: note: insert '_Nonnull' if the pointer should never be null
char *ecvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:202:31: warning: array parameter is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness-on-arrays]
double erand48(unsigned short[3]);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:202:31: note: insert '_Nullable' if the array parameter may be null
double erand48(unsigned short[3]);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:202:31: note: insert '_Nonnull' if the array parameter should never be null
double erand48(unsigned short[3]);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:203:29: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *fcvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:203:29: note: insert '_Nullable' if the pointer may be null
char *fcvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:203:29: note: insert '_Nonnull' if the pointer should never be null
char *fcvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:203:46: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *fcvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:203:46: note: insert '_Nullable' if the pointer may be null
char *fcvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:203:46: note: insert '_Nonnull' if the pointer should never be null
char *fcvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:203:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *fcvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:203:6: note: insert '_Nullable' if the pointer may be null
char *fcvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:203:6: note: insert '_Nonnull' if the pointer should never be null
char *fcvt(double, int, int *__restrict, int __restrict); / LEGACY */
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:204:30: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *gcvt(double, int, char ); / LEGACY */
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:204:30: note: insert '_Nullable' if the pointer may be null
char *gcvt(double, int, char ); / LEGACY */
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:204:30: note: insert '_Nonnull' if the pointer should never be null
char *gcvt(double, int, char ); / LEGACY */
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:204:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *gcvt(double, int, char ); / LEGACY */
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:204:6: note: insert '_Nullable' if the pointer may be null
char *gcvt(double, int, char ); / LEGACY */
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:204:6: note: insert '_Nonnull' if the pointer should never be null
char *gcvt(double, int, char ); / LEGACY */
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:21: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int getsubopt(char **, char * const *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:21: note: insert '_Nullable' if the pointer may be null
int getsubopt(char **, char * const *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:21: note: insert '_Nonnull' if the pointer should never be null
int getsubopt(char **, char * const *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:22: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int getsubopt(char **, char * const *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:22: note: insert '_Nullable' if the pointer may be null
int getsubopt(char **, char * const *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:22: note: insert '_Nonnull' if the pointer should never be null
int getsubopt(char **, char * const *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:30: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int getsubopt(char **, char * const *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:30: note: insert '_Nullable' if the pointer may be null
int getsubopt(char **, char * const *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:30: note: insert '_Nonnull' if the pointer should never be null
int getsubopt(char **, char * const *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:38: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int getsubopt(char **, char * const *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:38: note: insert '_Nullable' if the pointer may be null
int getsubopt(char **, char * const *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:38: note: insert '_Nonnull' if the pointer should never be null
int getsubopt(char **, char * const *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:46: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int getsubopt(char **, char * const *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:46: note: insert '_Nullable' if the pointer may be null
int getsubopt(char **, char * const *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:46: note: insert '_Nonnull' if the pointer should never be null
int getsubopt(char **, char * const *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:47: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int getsubopt(char **, char * const *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:47: note: insert '_Nullable' if the pointer may be null
int getsubopt(char **, char * const *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:205:47: note: insert '_Nonnull' if the pointer should never be null
int getsubopt(char **, char * const *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:208:32: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *initstate(unsigned, char , size_t); / no __DARWIN_ALIAS needed */
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:208:32: note: insert '_Nullable' if the pointer may be null
char *initstate(unsigned, char , size_t); / no __DARWIN_ALIAS needed */
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:208:32: note: insert '_Nonnull' if the pointer should never be null
char *initstate(unsigned, char , size_t); / no __DARWIN_ALIAS needed */
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:208:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *initstate(unsigned, char , size_t); / no __DARWIN_ALIAS needed */
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:208:6: note: insert '_Nullable' if the pointer may be null
char *initstate(unsigned, char , size_t); / no __DARWIN_ALIAS needed */
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:208:6: note: insert '_Nonnull' if the pointer should never be null
char *initstate(unsigned, char , size_t); / no __DARWIN_ALIAS needed */
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:212:29: warning: array parameter is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness-on-arrays]
long jrand48(unsigned short[3]) __swift_unavailable("Use arc4random instead.");
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:212:29: note: insert '_Nullable' if the array parameter may be null
long jrand48(unsigned short[3]) __swift_unavailable("Use arc4random instead.");
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:212:29: note: insert '_Nonnull' if the array parameter should never be null
long jrand48(unsigned short[3]) __swift_unavailable("Use arc4random instead.");
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:213:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *l64a(long);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:213:6: note: insert '_Nullable' if the pointer may be null
char *l64a(long);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:213:6: note: insert '_Nonnull' if the pointer should never be null
char *l64a(long);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:214:29: warning: array parameter is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness-on-arrays]
void lcong48(unsigned short[7]);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:214:29: note: insert '_Nullable' if the array parameter may be null
void lcong48(unsigned short[7]);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:214:29: note: insert '_Nonnull' if the array parameter should never be null
void lcong48(unsigned short[7]);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:216:19: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *mktemp(char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:216:19: note: insert '_Nullable' if the pointer may be null
char *mktemp(char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:216:19: note: insert '_Nonnull' if the pointer should never be null
char *mktemp(char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:216:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *mktemp(char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:216:6: note: insert '_Nullable' if the pointer may be null
char *mktemp(char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:216:6: note: insert '_Nonnull' if the pointer should never be null
char *mktemp(char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:217:19: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int mkstemp(char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:217:19: note: insert '_Nullable' if the pointer may be null
int mkstemp(char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:217:19: note: insert '_Nonnull' if the pointer should never be null
int mkstemp(char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:219:29: warning: array parameter is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness-on-arrays]
long nrand48(unsigned short[3]) __swift_unavailable("Use arc4random instead.");
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:219:29: note: insert '_Nullable' if the array parameter may be null
long nrand48(unsigned short[3]) __swift_unavailable("Use arc4random instead.");
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:219:29: note: insert '_Nonnull' if the array parameter should never be null
long nrand48(unsigned short[3]) __swift_unavailable("Use arc4random instead.");
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:221:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *ptsname(int);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:221:6: note: insert '_Nullable' if the pointer may be null
char *ptsname(int);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:221:6: note: insert '_Nonnull' if the pointer should never be null
char *ptsname(int);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:224:32: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int ptsname_r(int fildes, char *buffer, size_t buflen) __API_AVAILABLE(macos(10.13.4), ios(11.3), tvos(11.3), watchos(4.3));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:224:32: note: insert '_Nullable' if the pointer may be null
int ptsname_r(int fildes, char *buffer, size_t buflen) __API_AVAILABLE(macos(10.13.4), ios(11.3), tvos(11.3), watchos(4.3));
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:224:32: note: insert '_Nonnull' if the pointer should never be null
int ptsname_r(int fildes, char *buffer, size_t buflen) __API_AVAILABLE(macos(10.13.4), ios(11.3), tvos(11.3), watchos(4.3));
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:227:18: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int putenv(char *) __DARWIN_ALIAS(putenv);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:227:18: note: insert '_Nullable' if the pointer may be null
int putenv(char *) __DARWIN_ALIAS(putenv);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:227:18: note: insert '_Nonnull' if the pointer should never be null
int putenv(char *) __DARWIN_ALIAS(putenv);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:229:22: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int rand_r(unsigned *) __swift_unavailable("Use arc4random instead.");
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:229:22: note: insert '_Nullable' if the pointer may be null
int rand_r(unsigned *) __swift_unavailable("Use arc4random instead.");
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:229:22: note: insert '_Nonnull' if the pointer should never be null
int rand_r(unsigned *) __swift_unavailable("Use arc4random instead.");
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:231:27: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *realpath(const char * __restrict, char * __restrict) __DARWIN_EXTSN(realpath);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:231:27: note: insert '_Nullable' if the pointer may be null
char *realpath(const char * __restrict, char * __restrict) __DARWIN_EXTSN(realpath);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:231:27: note: insert '_Nonnull' if the pointer should never be null
char *realpath(const char * __restrict, char * __restrict) __DARWIN_EXTSN(realpath);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:231:46: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *realpath(const char * __restrict, char * __restrict) __DARWIN_EXTSN(realpath);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:231:46: note: insert '_Nullable' if the pointer may be null
char *realpath(const char * __restrict, char * __restrict) __DARWIN_EXTSN(realpath);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:231:46: note: insert '_Nonnull' if the pointer should never be null
char *realpath(const char * __restrict, char * __restrict) __DARWIN_EXTSN(realpath);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:231:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *realpath(const char * __restrict, char * __restrict) __DARWIN_EXTSN(realpath);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:231:6: note: insert '_Nullable' if the pointer may be null
char *realpath(const char * __restrict, char * __restrict) __DARWIN_EXTSN(realpath);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:231:6: note: insert '_Nonnull' if the pointer should never be null
char *realpath(const char * __restrict, char * __restrict) __DARWIN_EXTSN(realpath);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:236:24: warning: array parameter is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness-on-arrays]
*seed48(unsigned short[3]);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:236:24: note: insert '_Nullable' if the array parameter may be null
*seed48(unsigned short[3]);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:236:24: note: insert '_Nonnull' if the array parameter should never be null
*seed48(unsigned short[3]);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:236:2: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
*seed48(unsigned short[3]);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:236:2: note: insert '_Nullable' if the pointer may be null
*seed48(unsigned short[3]);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:236:2: note: insert '_Nonnull' if the pointer should never be null
*seed48(unsigned short[3]);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:237:24: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int setenv(const char * __name, const char * __value, int __overwrite) __DARWIN_ALIAS(setenv);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:237:24: note: insert '_Nullable' if the pointer may be null
int setenv(const char * __name, const char * __value, int __overwrite) __DARWIN_ALIAS(setenv);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:237:24: note: insert '_Nonnull' if the pointer should never be null
int setenv(const char * __name, const char * __value, int __overwrite) __DARWIN_ALIAS(setenv);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:237:45: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int setenv(const char * __name, const char * __value, int __overwrite) __DARWIN_ALIAS(setenv);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:237:45: note: insert '_Nullable' if the pointer may be null
int setenv(const char * __name, const char * __value, int __overwrite) __DARWIN_ALIAS(setenv);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:237:45: note: insert '_Nonnull' if the pointer should never be null
int setenv(const char * __name, const char * __value, int __overwrite) __DARWIN_ALIAS(setenv);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:239:25: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void setkey(const char *) __DARWIN_ALIAS(setkey);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:239:25: note: insert '_Nullable' if the pointer may be null
void setkey(const char *) __DARWIN_ALIAS(setkey);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:239:25: note: insert '_Nonnull' if the pointer should never be null
void setkey(const char *) __DARWIN_ALIAS(setkey);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:243:27: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *setstate(const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:243:27: note: insert '_Nullable' if the pointer may be null
char *setstate(const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:243:27: note: insert '_Nonnull' if the pointer should never be null
char *setstate(const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:243:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *setstate(const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:243:6: note: insert '_Nullable' if the pointer may be null
char *setstate(const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:243:6: note: insert '_Nonnull' if the pointer should never be null
char *setstate(const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:252:26: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int unsetenv(const char *) __DARWIN_ALIAS(unsetenv);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:252:26: note: insert '_Nullable' if the pointer may be null
int unsetenv(const char *) __DARWIN_ALIAS(unsetenv);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:252:26: note: insert '_Nonnull' if the pointer should never be null
int unsetenv(const char *) __DARWIN_ALIAS(unsetenv);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:266:42: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void arc4random_addrandom(unsigned char * /dat/, int /datlen/)
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:266:42: note: insert '_Nullable' if the pointer may be null
void arc4random_addrandom(unsigned char * /dat/, int /datlen/)
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:266:42: note: insert '_Nonnull' if the pointer should never be null
void arc4random_addrandom(unsigned char * /dat/, int /datlen/)
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:271:27: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void arc4random_buf(void * __buf, size_t __nbytes) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:271:27: note: insert '_Nullable' if the pointer may be null
void arc4random_buf(void * __buf, size_t __nbytes) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:271:27: note: insert '_Nonnull' if the pointer should never be null
void arc4random_buf(void * __buf, size_t __nbytes) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:277:28: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void *bsearch_b(const void *__key, const void *__base, size_t __nel,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:277:28: note: insert '_Nullable' if the pointer may be null
void *bsearch_b(const void *__key, const void *__base, size_t __nel,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:277:28: note: insert '_Nonnull' if the pointer should never be null
void *bsearch_b(const void *__key, const void *__base, size_t __nel,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:277:47: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void *bsearch_b(const void *__key, const void *__base, size_t __nel,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:277:47: note: insert '_Nullable' if the pointer may be null
void *bsearch_b(const void *__key, const void *__base, size_t __nel,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:277:47: note: insert '_Nonnull' if the pointer should never be null
void *bsearch_b(const void *__key, const void *__base, size_t __nel,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:278:59: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
size_t __width, int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:278:59: note: insert '_Nullable' if the pointer may be null
size_t __width, int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:278:59: note: insert '_Nonnull' if the pointer should never be null
size_t __width, int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:278:73: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
size_t __width, int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:278:73: note: insert '_Nullable' if the pointer may be null
size_t __width, int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:278:73: note: insert '_Nonnull' if the pointer should never be null
size_t __width, int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:277:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void *bsearch_b(const void *__key, const void *__base, size_t __nel,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:277:6: note: insert '_Nullable' if the pointer may be null
void *bsearch_b(const void *__key, const void *__base, size_t __nel,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:277:6: note: insert '_Nonnull' if the pointer should never be null
void *bsearch_b(const void *__key, const void *__base, size_t __nel,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:282:20: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *cgetcap(char *, const char *, int);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:282:20: note: insert '_Nullable' if the pointer may be null
char *cgetcap(char *, const char *, int);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:282:20: note: insert '_Nonnull' if the pointer should never be null
char *cgetcap(char *, const char *, int);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:282:34: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *cgetcap(char *, const char *, int);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:282:34: note: insert '_Nullable' if the pointer may be null
char *cgetcap(char *, const char *, int);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:282:34: note: insert '_Nonnull' if the pointer should never be null
char *cgetcap(char *, const char *, int);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:282:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *cgetcap(char *, const char *, int);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:282:6: note: insert '_Nullable' if the pointer may be null
char *cgetcap(char *, const char *, int);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:282:6: note: insert '_Nonnull' if the pointer should never be null
char *cgetcap(char *, const char *, int);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:19: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetent(char **, char **, const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:19: note: insert '_Nullable' if the pointer may be null
int cgetent(char **, char **, const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:19: note: insert '_Nonnull' if the pointer should never be null
int cgetent(char **, char **, const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:20: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetent(char **, char **, const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:20: note: insert '_Nullable' if the pointer may be null
int cgetent(char **, char **, const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:20: note: insert '_Nonnull' if the pointer should never be null
int cgetent(char **, char **, const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:28: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetent(char **, char **, const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:28: note: insert '_Nullable' if the pointer may be null
int cgetent(char **, char **, const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:28: note: insert '_Nonnull' if the pointer should never be null
int cgetent(char **, char **, const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:29: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetent(char **, char **, const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:29: note: insert '_Nullable' if the pointer may be null
int cgetent(char **, char **, const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:29: note: insert '_Nonnull' if the pointer should never be null
int cgetent(char **, char **, const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:43: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetent(char **, char **, const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:43: note: insert '_Nullable' if the pointer may be null
int cgetent(char **, char **, const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:284:43: note: insert '_Nonnull' if the pointer should never be null
int cgetent(char **, char **, const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:285:21: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetfirst(char **, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:285:21: note: insert '_Nullable' if the pointer may be null
int cgetfirst(char **, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:285:21: note: insert '_Nonnull' if the pointer should never be null
int cgetfirst(char **, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:285:22: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetfirst(char **, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:285:22: note: insert '_Nullable' if the pointer may be null
int cgetfirst(char **, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:285:22: note: insert '_Nonnull' if the pointer should never be null
int cgetfirst(char **, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:285:30: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetfirst(char **, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:285:30: note: insert '_Nullable' if the pointer may be null
int cgetfirst(char **, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:285:30: note: insert '_Nonnull' if the pointer should never be null
int cgetfirst(char **, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:285:31: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetfirst(char **, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:285:31: note: insert '_Nullable' if the pointer may be null
int cgetfirst(char **, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:285:31: note: insert '_Nonnull' if the pointer should never be null
int cgetfirst(char **, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:286:27: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetmatch(const char *, const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:286:27: note: insert '_Nullable' if the pointer may be null
int cgetmatch(const char *, const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:286:27: note: insert '_Nonnull' if the pointer should never be null
int cgetmatch(const char *, const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:286:41: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetmatch(const char *, const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:286:41: note: insert '_Nullable' if the pointer may be null
int cgetmatch(const char *, const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:286:41: note: insert '_Nonnull' if the pointer should never be null
int cgetmatch(const char *, const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:287:20: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetnext(char **, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:287:20: note: insert '_Nullable' if the pointer may be null
int cgetnext(char **, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:287:20: note: insert '_Nonnull' if the pointer should never be null
int cgetnext(char **, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:287:21: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetnext(char **, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:287:21: note: insert '_Nullable' if the pointer may be null
int cgetnext(char **, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:287:21: note: insert '_Nonnull' if the pointer should never be null
int cgetnext(char **, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:287:29: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetnext(char **, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:287:29: note: insert '_Nullable' if the pointer may be null
int cgetnext(char **, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:287:29: note: insert '_Nonnull' if the pointer should never be null
int cgetnext(char **, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:287:30: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetnext(char **, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:287:30: note: insert '_Nullable' if the pointer may be null
int cgetnext(char **, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:287:30: note: insert '_Nonnull' if the pointer should never be null
int cgetnext(char **, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:288:19: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetnum(char *, const char *, long *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:288:19: note: insert '_Nullable' if the pointer may be null
int cgetnum(char *, const char *, long *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:288:19: note: insert '_Nonnull' if the pointer should never be null
int cgetnum(char *, const char *, long *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:288:33: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetnum(char *, const char *, long *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:288:33: note: insert '_Nullable' if the pointer may be null
int cgetnum(char *, const char *, long *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:288:33: note: insert '_Nonnull' if the pointer should never be null
int cgetnum(char *, const char *, long *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:288:41: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetnum(char *, const char *, long *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:288:41: note: insert '_Nullable' if the pointer may be null
int cgetnum(char *, const char *, long *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:288:41: note: insert '_Nonnull' if the pointer should never be null
int cgetnum(char *, const char *, long *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:289:25: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetset(const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:289:25: note: insert '_Nullable' if the pointer may be null
int cgetset(const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:289:25: note: insert '_Nonnull' if the pointer should never be null
int cgetset(const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:290:19: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetstr(char *, const char *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:290:19: note: insert '_Nullable' if the pointer may be null
int cgetstr(char *, const char *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:290:19: note: insert '_Nonnull' if the pointer should never be null
int cgetstr(char *, const char *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:290:33: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetstr(char *, const char *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:290:33: note: insert '_Nullable' if the pointer may be null
int cgetstr(char *, const char *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:290:33: note: insert '_Nonnull' if the pointer should never be null
int cgetstr(char *, const char *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:290:41: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetstr(char *, const char *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:290:41: note: insert '_Nullable' if the pointer may be null
int cgetstr(char *, const char *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:290:41: note: insert '_Nonnull' if the pointer should never be null
int cgetstr(char *, const char *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:290:42: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetstr(char *, const char *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:290:42: note: insert '_Nullable' if the pointer may be null
int cgetstr(char *, const char *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:290:42: note: insert '_Nonnull' if the pointer should never be null
int cgetstr(char *, const char *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:291:20: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetustr(char *, const char *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:291:20: note: insert '_Nullable' if the pointer may be null
int cgetustr(char *, const char *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:291:20: note: insert '_Nonnull' if the pointer should never be null
int cgetustr(char *, const char *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:291:34: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetustr(char *, const char *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:291:34: note: insert '_Nullable' if the pointer may be null
int cgetustr(char *, const char *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:291:34: note: insert '_Nonnull' if the pointer should never be null
int cgetustr(char *, const char *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:291:42: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetustr(char *, const char *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:291:42: note: insert '_Nullable' if the pointer may be null
int cgetustr(char *, const char *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:291:42: note: insert '_Nonnull' if the pointer should never be null
int cgetustr(char *, const char *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:291:43: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int cgetustr(char *, const char *, char **);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:291:43: note: insert '_Nullable' if the pointer may be null
int cgetustr(char *, const char *, char **);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:291:43: note: insert '_Nonnull' if the pointer should never be null
int cgetustr(char *, const char *, char **);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:294:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *devname(dev_t, mode_t);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:294:6: note: insert '_Nullable' if the pointer may be null
char *devname(dev_t, mode_t);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:294:6: note: insert '_Nonnull' if the pointer should never be null
char *devname(dev_t, mode_t);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:295:37: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *devname_r(dev_t, mode_t, char *buf, int len);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:295:37: note: insert '_Nullable' if the pointer may be null
char *devname_r(dev_t, mode_t, char *buf, int len);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:295:37: note: insert '_Nonnull' if the pointer should never be null
char *devname_r(dev_t, mode_t, char *buf, int len);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:295:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *devname_r(dev_t, mode_t, char *buf, int len);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:295:6: note: insert '_Nullable' if the pointer may be null
char *devname_r(dev_t, mode_t, char *buf, int len);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:295:6: note: insert '_Nonnull' if the pointer should never be null
char *devname_r(dev_t, mode_t, char *buf, int len);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:296:20: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *getbsize(int *, long *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:296:20: note: insert '_Nullable' if the pointer may be null
char *getbsize(int *, long *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:296:20: note: insert '_Nonnull' if the pointer should never be null
char *getbsize(int *, long *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:296:28: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *getbsize(int *, long *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:296:28: note: insert '_Nullable' if the pointer may be null
char *getbsize(int *, long *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:296:28: note: insert '_Nonnull' if the pointer should never be null
char *getbsize(int *, long *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:296:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
char *getbsize(int *, long *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:296:6: note: insert '_Nullable' if the pointer may be null
char *getbsize(int *, long *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:296:6: note: insert '_Nonnull' if the pointer should never be null
char *getbsize(int *, long *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:297:24: warning: array parameter is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness-on-arrays]
int getloadavg(double [], int);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:297:24: note: insert '_Nullable' if the array parameter may be null
int getloadavg(double [], int);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:297:24: note: insert '_Nonnull' if the array parameter should never be null
int getloadavg(double [], int);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:299:2: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
*getprogname(void);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:299:2: note: insert '_Nullable' if the pointer may be null
*getprogname(void);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:299:2: note: insert '_Nonnull' if the pointer should never be null
*getprogname(void);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:301:20: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int heapsort(void *__base, size_t __nel, size_t __width,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:301:20: note: insert '_Nullable' if the pointer may be null
int heapsort(void *__base, size_t __nel, size_t __width,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:301:20: note: insert '_Nonnull' if the pointer should never be null
int heapsort(void __base, size_t __nel, size_t __width,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:302:43: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nonnull __compar)(const void *, const void ));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:302:43: note: insert '_Nullable' if the pointer may be null
int (
_Nonnull __compar)(const void *, const void ));
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:302:43: note: insert '_Nonnull' if the pointer should never be null
int (
_Nonnull __compar)(const void *, const void ));
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:302:57: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nonnull __compar)(const void *, const void ));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:302:57: note: insert '_Nullable' if the pointer may be null
int (
_Nonnull __compar)(const void *, const void ));
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:302:57: note: insert '_Nonnull' if the pointer should never be null
int (
_Nonnull __compar)(const void *, const void *));
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:304:22: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int heapsort_b(void *__base, size_t __nel, size_t __width,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:304:22: note: insert '_Nullable' if the pointer may be null
int heapsort_b(void *__base, size_t __nel, size_t __width,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:304:22: note: insert '_Nonnull' if the pointer should never be null
int heapsort_b(void *__base, size_t __nel, size_t __width,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:305:43: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:305:43: note: insert '_Nullable' if the pointer may be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:305:43: note: insert '_Nonnull' if the pointer should never be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:305:57: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:305:57: note: insert '_Nullable' if the pointer may be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:305:57: note: insert '_Nonnull' if the pointer should never be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:307:21: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int mergesort(void *__base, size_t __nel, size_t __width,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:307:21: note: insert '_Nullable' if the pointer may be null
int mergesort(void *__base, size_t __nel, size_t __width,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:307:21: note: insert '_Nonnull' if the pointer should never be null
int mergesort(void __base, size_t __nel, size_t __width,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:308:43: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nonnull __compar)(const void *, const void ));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:308:43: note: insert '_Nullable' if the pointer may be null
int (
_Nonnull __compar)(const void *, const void ));
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:308:43: note: insert '_Nonnull' if the pointer should never be null
int (
_Nonnull __compar)(const void *, const void ));
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:308:57: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nonnull __compar)(const void *, const void ));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:308:57: note: insert '_Nullable' if the pointer may be null
int (
_Nonnull __compar)(const void *, const void ));
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:308:57: note: insert '_Nonnull' if the pointer should never be null
int (
_Nonnull __compar)(const void *, const void *));
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:310:23: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int mergesort_b(void *__base, size_t __nel, size_t __width,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:310:23: note: insert '_Nullable' if the pointer may be null
int mergesort_b(void *__base, size_t __nel, size_t __width,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:310:23: note: insert '_Nonnull' if the pointer should never be null
int mergesort_b(void *__base, size_t __nel, size_t __width,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:311:43: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:311:43: note: insert '_Nullable' if the pointer may be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:311:43: note: insert '_Nonnull' if the pointer should never be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:311:57: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:311:57: note: insert '_Nullable' if the pointer may be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:311:57: note: insert '_Nonnull' if the pointer should never be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:313:18: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void psort(void *__base, size_t __nel, size_t __width,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:313:18: note: insert '_Nullable' if the pointer may be null
void psort(void *__base, size_t __nel, size_t __width,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:313:18: note: insert '_Nonnull' if the pointer should never be null
void psort(void __base, size_t __nel, size_t __width,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:314:43: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nonnull __compar)(const void *, const void )) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:314:43: note: insert '_Nullable' if the pointer may be null
int (
_Nonnull __compar)(const void *, const void )) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:314:43: note: insert '_Nonnull' if the pointer should never be null
int (
_Nonnull __compar)(const void *, const void )) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:314:57: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nonnull __compar)(const void *, const void )) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:314:57: note: insert '_Nullable' if the pointer may be null
int (
_Nonnull __compar)(const void *, const void )) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:314:57: note: insert '_Nonnull' if the pointer should never be null
int (
_Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:316:20: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void psort_b(void *__base, size_t __nel, size_t __width,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:316:20: note: insert '_Nullable' if the pointer may be null
void psort_b(void *__base, size_t __nel, size_t __width,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:316:20: note: insert '_Nonnull' if the pointer should never be null
void psort_b(void *__base, size_t __nel, size_t __width,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:317:43: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:317:43: note: insert '_Nullable' if the pointer may be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:317:43: note: insert '_Nonnull' if the pointer should never be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:317:57: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:317:57: note: insert '_Nullable' if the pointer may be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:317:57: note: insert '_Nonnull' if the pointer should never be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:319:20: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void psort_r(void *__base, size_t __nel, size_t __width, void *,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:319:20: note: insert '_Nullable' if the pointer may be null
void psort_r(void *__base, size_t __nel, size_t __width, void *,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:319:20: note: insert '_Nonnull' if the pointer should never be null
void psort_r(void *__base, size_t __nel, size_t __width, void *,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:319:64: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void psort_r(void *__base, size_t __nel, size_t __width, void *,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:319:64: note: insert '_Nullable' if the pointer may be null
void psort_r(void *__base, size_t __nel, size_t __width, void *,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:319:64: note: insert '_Nonnull' if the pointer should never be null
void psort_r(void *__base, size_t __nel, size_t __width, void ,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:320:37: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nonnull __compar)(void *, const void *, const void )) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:320:37: note: insert '_Nullable' if the pointer may be null
int (
_Nonnull __compar)(void *, const void *, const void )) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:320:37: note: insert '_Nonnull' if the pointer should never be null
int (
_Nonnull __compar)(void *, const void *, const void )) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:320:51: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nonnull __compar)(void *, const void *, const void )) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:320:51: note: insert '_Nullable' if the pointer may be null
int (
_Nonnull __compar)(void *, const void *, const void )) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:320:51: note: insert '_Nonnull' if the pointer should never be null
int (
_Nonnull __compar)(void *, const void *, const void )) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:320:65: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nonnull __compar)(void *, const void *, const void )) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:320:65: note: insert '_Nullable' if the pointer may be null
int (
_Nonnull __compar)(void *, const void *, const void )) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:320:65: note: insert '_Nonnull' if the pointer should never be null
int (
_Nonnull __compar)(void *, const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:322:20: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void qsort_b(void *__base, size_t __nel, size_t __width,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:322:20: note: insert '_Nullable' if the pointer may be null
void qsort_b(void *__base, size_t __nel, size_t __width,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:322:20: note: insert '_Nonnull' if the pointer should never be null
void qsort_b(void *__base, size_t __nel, size_t __width,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:323:43: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:323:43: note: insert '_Nullable' if the pointer may be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:323:43: note: insert '_Nonnull' if the pointer should never be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:323:57: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:323:57: note: insert '_Nullable' if the pointer may be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:323:57: note: insert '_Nonnull' if the pointer should never be null
int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:325:20: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void qsort_r(void *__base, size_t __nel, size_t __width, void *,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:325:20: note: insert '_Nullable' if the pointer may be null
void qsort_r(void *__base, size_t __nel, size_t __width, void *,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:325:20: note: insert '_Nonnull' if the pointer should never be null
void qsort_r(void *__base, size_t __nel, size_t __width, void *,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:325:64: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void qsort_r(void *__base, size_t __nel, size_t __width, void *,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:325:64: note: insert '_Nullable' if the pointer may be null
void qsort_r(void *__base, size_t __nel, size_t __width, void *,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:325:64: note: insert '_Nonnull' if the pointer should never be null
void qsort_r(void *__base, size_t __nel, size_t __width, void ,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:326:37: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nonnull __compar)(void *, const void *, const void ));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:326:37: note: insert '_Nullable' if the pointer may be null
int (
_Nonnull __compar)(void *, const void *, const void ));
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:326:37: note: insert '_Nonnull' if the pointer should never be null
int (
_Nonnull __compar)(void *, const void *, const void ));
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:326:51: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nonnull __compar)(void *, const void *, const void ));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:326:51: note: insert '_Nullable' if the pointer may be null
int (
_Nonnull __compar)(void *, const void *, const void ));
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:326:51: note: insert '_Nonnull' if the pointer should never be null
int (
_Nonnull __compar)(void *, const void *, const void ));
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:326:65: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int (
_Nonnull __compar)(void *, const void *, const void ));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:326:65: note: insert '_Nullable' if the pointer may be null
int (
_Nonnull __compar)(void *, const void *, const void ));
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:326:65: note: insert '_Nonnull' if the pointer should never be null
int (
_Nonnull __compar)(void *, const void *, const void *));
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:327:36: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int radixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:327:36: note: insert '_Nullable' if the pointer may be null
int radixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:327:36: note: insert '_Nonnull' if the pointer should never be null
int radixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:327:37: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int radixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:327:37: note: insert '_Nullable' if the pointer may be null
int radixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:327:37: note: insert '_Nonnull' if the pointer should never be null
int radixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:327:77: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int radixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:327:77: note: insert '_Nullable' if the pointer may be null
int radixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:327:77: note: insert '_Nonnull' if the pointer should never be null
int radixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:329:30: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void setprogname(const char *);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:329:30: note: insert '_Nullable' if the pointer may be null
void setprogname(const char *);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:329:30: note: insert '_Nonnull' if the pointer should never be null
void setprogname(const char *);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:330:37: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sradixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:330:37: note: insert '_Nullable' if the pointer may be null
int sradixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:330:37: note: insert '_Nonnull' if the pointer should never be null
int sradixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:330:38: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sradixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:330:38: note: insert '_Nullable' if the pointer may be null
int sradixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:330:38: note: insert '_Nonnull' if the pointer should never be null
int sradixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:330:78: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sradixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:330:78: note: insert '_Nullable' if the pointer may be null
int sradixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:330:78: note: insert '_Nonnull' if the pointer should never be null
int sradixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:334:21: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void *reallocf(void *__ptr, size_t __size) __alloc_size(2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:334:21: note: insert '_Nullable' if the pointer may be null
void *reallocf(void *__ptr, size_t __size) __alloc_size(2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:334:21: note: insert '_Nonnull' if the pointer should never be null
void *reallocf(void *__ptr, size_t __size) __alloc_size(2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:334:6: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void *reallocf(void *__ptr, size_t __size) __alloc_size(2);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:334:6: note: insert '_Nullable' if the pointer may be null
void *reallocf(void *__ptr, size_t __size) __alloc_size(2);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:334:6: note: insert '_Nonnull' if the pointer should never be null
void *reallocf(void *__ptr, size_t __size) __alloc_size(2);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:337:21: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtoq(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:337:21: note: insert '_Nullable' if the pointer may be null
strtoq(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:337:21: note: insert '_Nonnull' if the pointer should never be null
strtoq(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:337:34: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtoq(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:337:34: note: insert '_Nullable' if the pointer may be null
strtoq(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:337:34: note: insert '_Nonnull' if the pointer should never be null
strtoq(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:337:35: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtoq(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:337:35: note: insert '_Nullable' if the pointer may be null
strtoq(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:337:35: note: insert '_Nonnull' if the pointer should never be null
strtoq(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:339:22: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtouq(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:339:22: note: insert '_Nullable' if the pointer may be null
strtouq(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:339:22: note: insert '_Nonnull' if the pointer should never be null
strtouq(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:339:35: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtouq(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:339:35: note: insert '_Nullable' if the pointer may be null
strtouq(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:339:35: note: insert '_Nonnull' if the pointer should never be null
strtouq(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:339:36: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
strtouq(const char *__str, char **__endptr, int __base);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:339:36: note: insert '_Nullable' if the pointer may be null
strtouq(const char *__str, char **__endptr, int __base);
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:339:36: note: insert '_Nonnull' if the pointer should never be null
strtouq(const char *__str, char **__endptr, int __base);
^
_Nonnull
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:341:13: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
extern char suboptarg; / getsubopt(3) external variable */
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:341:13: note: insert '_Nullable' if the pointer may be null
extern char suboptarg; / getsubopt(3) external variable */
^
_Nullable
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdlib.h:341:13: note: insert '_Nonnull' if the pointer should never be null
extern char suboptarg; / getsubopt(3) external variable */
^
_Nonnull
In file included from src/pycares.c:4:
src/cares.c:915:14: error: use of undeclared identifier 'T_A'
case T_A:
^
src/cares.c:917:45: error: use of undeclared identifier 'C_IN'
ares_query(self->channel, name, C_IN, T_A, &query_a_cb, (void *)callback);
^
src/cares.c:917:51: error: use of undeclared identifier 'T_A'
ares_query(self->channel, name, C_IN, T_A, &query_a_cb, (void *)callback);
^
src/cares.c:921:14: error: use of undeclared identifier 'T_AAAA'
case T_AAAA:
^
src/cares.c:923:45: error: use of undeclared identifier 'C_IN'
ares_query(self->channel, name, C_IN, T_AAAA, &query_aaaa_cb, (void *)callback);
^
src/cares.c:923:51: error: use of undeclared identifier 'T_AAAA'
ares_query(self->channel, name, C_IN, T_AAAA, &query_aaaa_cb, (void *)callback);
^
src/cares.c:927:14: error: use of undeclared identifier 'T_CNAME'
case T_CNAME:
^
src/cares.c:929:45: error: use of undeclared identifier 'C_IN'
ares_query(self->channel, name, C_IN, T_CNAME, &query_cname_cb, (void *)callback);
^
src/cares.c:929:51: error: use of undeclared identifier 'T_CNAME'
ares_query(self->channel, name, C_IN, T_CNAME, &query_cname_cb, (void *)callback);
^
src/cares.c:933:14: error: use of undeclared identifier 'T_MX'
case T_MX:
^
src/cares.c:935:45: error: use of undeclared identifier 'C_IN'
ares_query(self->channel, name, C_IN, T_MX, &query_mx_cb, (void *)callback);
^
src/cares.c:935:51: error: use of undeclared identifier 'T_MX'
ares_query(self->channel, name, C_IN, T_MX, &query_mx_cb, (void *)callback);
^
src/cares.c:939:14: error: use of undeclared identifier 'T_NAPTR'
case T_NAPTR:
^
src/cares.c:941:45: error: use of undeclared identifier 'C_IN'
ares_query(self->channel, name, C_IN, T_NAPTR, &query_naptr_cb, (void *)callback);
^
src/cares.c:941:51: error: use of undeclared identifier 'T_NAPTR'
ares_query(self->channel, name, C_IN, T_NAPTR, &query_naptr_cb, (void *)callback);
^
src/cares.c:945:14: error: use of undeclared identifier 'T_NS'
case T_NS:
^
src/cares.c:947:45: error: use of undeclared identifier 'C_IN'
ares_query(self->channel, name, C_IN, T_NS, &query_ns_cb, (void *)callback);
^
src/cares.c:947:51: error: use of undeclared identifier 'T_NS'
ares_query(self->channel, name, C_IN, T_NS, &query_ns_cb, (void *)callback);
^
src/cares.c:951:14: error: use of undeclared identifier 'T_PTR'
case T_PTR:
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
189 warnings and 20 errors generated.
error: command 'clang' failed with exit status 1

----------------------------------------

Let DNSError inherit OSError to match with stdlib behavior

Both socket.getaddrinfo and asyncio.BaseEventLoop.getaddrinfo raises OSError when a DNS lookup fails.
It would be more consistent if aiodns.error.DNSError is also an instance of OSError, setting errno and stringified error message as the current implementation does.

Error when running aiodns

future: <Future finished exception=DNSError(1, 'DNS server returned answer with no data')>
aiodns.error.DNSError: (1, 'DNS server returned answer with no data')
Future exception was never retrieved

Code is as follows:

import asyncio
import aiodns
from tqdm import tqdm
import time

from src.utils.load import load

loop = asyncio.get_event_loop()
resolver = aiodns.DNSResolver(loop=loop, nameservers=['8.8.8.8'])

bucket = [....]
f = []
for i in tqdm(bucket):
    f = resolver.query(i+'.com','NS')



result = loop.run_until_complete(f)
print(result)

DNSError inheritance

loop.getaddrinfo (asyncio) raises socket.gaierror (inherited from OSError) when it fail.
It might be worth to aiodns.DNSError was also inherited from OSError?

class DNSError(OSError):
     pass

AttributeError: 'DNSResolver' object has no attribute '_channel'

Exception ignored in: <bound method DNSResolver.del of <aiodns.DNSResolver object at 0x7fbeae94ca90>>
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/aiodns/init.py", line 123, in del
AttributeError: 'DNSResolver' object has no attribute '_channel'

aiodns==1.1.0 wheel issue

It seems aiodns==1.1.0 wheel from pypi is build with trollius requirement via setup.py check for Python less then 3.3, which produces an issue for any python version

python --version
Python 3.5.2
pip install aiodns
Collecting aiodns
  Downloading aiodns-1.1.0-py2.py3-none-any.whl
Collecting trollius (from aiodns)
Requirement already satisfied (use --upgrade to upgrade): pycares>=1.0.0 in ./env/lib/python3.5/site-packages (from aiodns)
Requirement already satisfied (use --upgrade to upgrade): six in ./env/lib/python3.5/site-packages (from trollius->aiodns)
Installing collected packages: trollius, aiodns
Successfully installed aiodns-1.1.0 trollius-2.1

Installation directly from tar.gz (sdist) works as expected

pip install https://pypi.python.org/packages/e1/3a/855c8e79e626ca43d7c28072676bf5bf5576a91a987dc39a44c04da6e761/aiodns-1.1.0.tar.gz#md5=ee3fc86fc11296a9887a92870bdfd0b1
Collecting https://pypi.python.org/packages/e1/3a/855c8e79e626ca43d7c28072676bf5bf5576a91a987dc39a44c04da6e761/aiodns-1.1.0.tar.gz#md5=ee3fc86fc11296a9887a92870bdfd0b1
  Using cached aiodns-1.1.0.tar.gz
Requirement already satisfied (use --upgrade to upgrade): pycares>=1.0.0 in ./env/lib/python3.5/site-packages (from aiodns==1.1.0)
Building wheels for collected packages: aiodns
  Running setup.py bdist_wheel for aiodns ... done
  Stored in directory: ZzzZzZzzZz
Successfully built aiodns
Installing collected packages: aiodns
Successfully installed aiodns-1.1.0

macOS Mojave fails to build: "Failed building wheel for pycares"

I have tried using Pycares 3.0 (as suggested in other issue thread I found here) using pip3 install pycares --pre but with the same result:

sudo -H pip3 install aiodns
Collecting aiodns
  Using cached https://files.pythonhosted.org/packages/c0/9d/82d910965520ac17956a4b412e36298466de1b87a8fd0ab6dea601cdb8aa/aiodns-1.2.0-py2.py3-none-any.whl
Requirement already satisfied: typing in /usr/local/lib/python3.7/site-packages (from aiodns) (3.6.6)
Collecting pycares>=1.0.0 (from aiodns)
  Using cached https://files.pythonhosted.org/packages/86/0c/3b662b2629fbde4b81ac36f2735495751fbde74a478ba5fe0c30e4db8f59/pycares-2.4.0.tar.gz
Building wheels for collected packages: pycares
  Running setup.py bdist_wheel for pycares ... error
  Complete output from command /usr/local/opt/python/bin/python3.7 -u -c "import setuptools, tokenize;__file__='/private/tmp/pip-install-25wts093/pycares/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /private/tmp/pip-wheel-1x17gq6p --python-tag cp37:
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-10.14-x86_64-3.7
  creating build/lib.macosx-10.14-x86_64-3.7/pycares
  copying pycares/errno.py -> build/lib.macosx-10.14-x86_64-3.7/pycares
  copying pycares/_version.py -> build/lib.macosx-10.14-x86_64-3.7/pycares
  copying pycares/__init__.py -> build/lib.macosx-10.14-x86_64-3.7/pycares
  copying pycares/__main__.py -> build/lib.macosx-10.14-x86_64-3.7/pycares
  running build_ext
  building 'pycares._core' extension
  creating build/temp.macosx-10.14-x86_64-3.7
  creating build/temp.macosx-10.14-x86_64-3.7/src
  creating build/temp.macosx-10.14-x86_64-3.7/deps
  creating build/temp.macosx-10.14-x86_64-3.7/deps/c-ares
  creating build/temp.macosx-10.14-x86_64-3.7/deps/c-ares/src
  clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers -DHAVE_CONFIG_H=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -D_DARWIN_USE_64_BIT_INODE=1 -I/usr/local/include -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include -I/usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m -Ideps/c-ares/src -Ideps/c-ares/src/config_darwin -c src/pycares.c -o build/temp.macosx-10.14-x86_64-3.7/src/pycares.o
  In file included from src/pycares.c:4:
  src/cares.c:302:72: error: no member named 'ttl' in 'struct ares_mx_reply'
          PyStructSequence_SET_ITEM(tmp, 2, PyInt_FromLong((long)mx_ptr->ttl));
                                                                 ~~~~~~  ^
  /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/structseq.h:38:69: note: expanded from macro 'PyStructSequence_SET_ITEM'
  #define PyStructSequence_SET_ITEM(op, i, v) PyTuple_SET_ITEM(op, i, v)
                                                                      ^
  /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/tupleobject.h:62:75: note: expanded from macro 'PyTuple_SET_ITEM'
  #define PyTuple_SET_ITEM(op, i, v) (((PyTupleObject *)(op))->ob_item[i] = v)
                                                                            ^
  In file included from src/pycares.c:4:
  src/cares.c:415:95: error: too many arguments to function call, expected 6, have 7
      parse_status = ares_parse_ptr_reply(answer_buf, answer_len, NULL, 0, AF_UNSPEC, &hostent, &hostttls);
                     ~~~~~~~~~~~~~~~~~~~~                                                       ^~~~~~~~~
  /usr/local/include/ares.h:581:14: note: 'ares_parse_ptr_reply' declared here
  CARES_EXTERN int ares_parse_ptr_reply(const unsigned char *abuf,
               ^
  In file included from src/pycares.c:4:
  src/cares.c:522:81: error: no member named 'ttl' in 'struct ares_txt_ext'
              PyStructSequence_SET_ITEM(tmp_obj, 1, PyInt_FromLong((long)txt_ptr->ttl));
                                                                         ~~~~~~~  ^
  /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/structseq.h:38:69: note: expanded from macro 'PyStructSequence_SET_ITEM'
  #define PyStructSequence_SET_ITEM(op, i, v) PyTuple_SET_ITEM(op, i, v)
                                                                      ^
  /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/tupleobject.h:62:75: note: expanded from macro 'PyTuple_SET_ITEM'
  #define PyTuple_SET_ITEM(op, i, v) (((PyTupleObject *)(op))->ob_item[i] = v)
                                                                            ^
  In file included from src/pycares.c:4:
  src/cares.c:597:78: error: no member named 'ttl' in 'struct ares_soa_reply'
      PyStructSequence_SET_ITEM(dns_result, 7, PyInt_FromLong((long)soa_reply->ttl));
                                                                    ~~~~~~~~~  ^
  /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/structseq.h:38:69: note: expanded from macro 'PyStructSequence_SET_ITEM'
  #define PyStructSequence_SET_ITEM(op, i, v) PyTuple_SET_ITEM(op, i, v)
                                                                      ^
  /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/tupleobject.h:62:75: note: expanded from macro 'PyTuple_SET_ITEM'
  #define PyTuple_SET_ITEM(op, i, v) (((PyTupleObject *)(op))->ob_item[i] = v)
                                                                            ^
  In file included from src/pycares.c:4:
  src/cares.c:664:73: error: no member named 'ttl' in 'struct ares_srv_reply'
          PyStructSequence_SET_ITEM(tmp, 4, PyInt_FromLong((long)srv_ptr->ttl));
                                                                 ~~~~~~~  ^
  /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/structseq.h:38:69: note: expanded from macro 'PyStructSequence_SET_ITEM'
  #define PyStructSequence_SET_ITEM(op, i, v) PyTuple_SET_ITEM(op, i, v)
                                                                      ^
  /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/tupleobject.h:62:75: note: expanded from macro 'PyTuple_SET_ITEM'
  #define PyTuple_SET_ITEM(op, i, v) (((PyTupleObject *)(op))->ob_item[i] = v)
                                                                            ^
  In file included from src/pycares.c:4:
  src/cares.c:735:75: error: no member named 'ttl' in 'struct ares_naptr_reply'
          PyStructSequence_SET_ITEM(tmp, 6, PyInt_FromLong((long)naptr_ptr->ttl));
                                                                 ~~~~~~~~~  ^
  /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/structseq.h:38:69: note: expanded from macro 'PyStructSequence_SET_ITEM'
  #define PyStructSequence_SET_ITEM(op, i, v) PyTuple_SET_ITEM(op, i, v)
                                                                      ^
  /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/tupleobject.h:62:75: note: expanded from macro 'PyTuple_SET_ITEM'
  #define PyTuple_SET_ITEM(op, i, v) (((PyTupleObject *)(op))->ob_item[i] = v)
                                                                            ^
  6 errors generated.
  error: command 'clang' failed with exit status 1

  ----------------------------------------
  Failed building wheel for pycares
  Running setup.py clean for pycares
Failed to build pycares
Installing collected packages: pycares, aiodns
  Running setup.py install for pycares ... error
    Complete output from command /usr/local/opt/python/bin/python3.7 -u -c "import setuptools, tokenize;__file__='/private/tmp/pip-install-25wts093/pycares/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /private/tmp/pip-record-sv78fuzs/install-record.txt --single-version-externally-managed --compile:
    running install
    running build
    running build_py
    creating build
    creating build/lib.macosx-10.14-x86_64-3.7
    creating build/lib.macosx-10.14-x86_64-3.7/pycares
    copying pycares/errno.py -> build/lib.macosx-10.14-x86_64-3.7/pycares
    copying pycares/_version.py -> build/lib.macosx-10.14-x86_64-3.7/pycares
    copying pycares/__init__.py -> build/lib.macosx-10.14-x86_64-3.7/pycares
    copying pycares/__main__.py -> build/lib.macosx-10.14-x86_64-3.7/pycares
    running build_ext
    building 'pycares._core' extension
    creating build/temp.macosx-10.14-x86_64-3.7
    creating build/temp.macosx-10.14-x86_64-3.7/src
    creating build/temp.macosx-10.14-x86_64-3.7/deps
    creating build/temp.macosx-10.14-x86_64-3.7/deps/c-ares
    creating build/temp.macosx-10.14-x86_64-3.7/deps/c-ares/src
    clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers -DHAVE_CONFIG_H=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -D_DARWIN_USE_64_BIT_INODE=1 -I/usr/local/include -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include -I/usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m -Ideps/c-ares/src -Ideps/c-ares/src/config_darwin -c src/pycares.c -o build/temp.macosx-10.14-x86_64-3.7/src/pycares.o
    In file included from src/pycares.c:4:
    src/cares.c:302:72: error: no member named 'ttl' in 'struct ares_mx_reply'
            PyStructSequence_SET_ITEM(tmp, 2, PyInt_FromLong((long)mx_ptr->ttl));
                                                                   ~~~~~~  ^
    /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/structseq.h:38:69: note: expanded from macro 'PyStructSequence_SET_ITEM'
    #define PyStructSequence_SET_ITEM(op, i, v) PyTuple_SET_ITEM(op, i, v)
                                                                        ^
    /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/tupleobject.h:62:75: note: expanded from macro 'PyTuple_SET_ITEM'
    #define PyTuple_SET_ITEM(op, i, v) (((PyTupleObject *)(op))->ob_item[i] = v)
                                                                              ^
    In file included from src/pycares.c:4:
    src/cares.c:415:95: error: too many arguments to function call, expected 6, have 7
        parse_status = ares_parse_ptr_reply(answer_buf, answer_len, NULL, 0, AF_UNSPEC, &hostent, &hostttls);
                       ~~~~~~~~~~~~~~~~~~~~                                                       ^~~~~~~~~
    /usr/local/include/ares.h:581:14: note: 'ares_parse_ptr_reply' declared here
    CARES_EXTERN int ares_parse_ptr_reply(const unsigned char *abuf,
                 ^
    In file included from src/pycares.c:4:
    src/cares.c:522:81: error: no member named 'ttl' in 'struct ares_txt_ext'
                PyStructSequence_SET_ITEM(tmp_obj, 1, PyInt_FromLong((long)txt_ptr->ttl));
                                                                           ~~~~~~~  ^
    /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/structseq.h:38:69: note: expanded from macro 'PyStructSequence_SET_ITEM'
    #define PyStructSequence_SET_ITEM(op, i, v) PyTuple_SET_ITEM(op, i, v)
                                                                        ^
    /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/tupleobject.h:62:75: note: expanded from macro 'PyTuple_SET_ITEM'
    #define PyTuple_SET_ITEM(op, i, v) (((PyTupleObject *)(op))->ob_item[i] = v)
                                                                              ^
    In file included from src/pycares.c:4:
    src/cares.c:597:78: error: no member named 'ttl' in 'struct ares_soa_reply'
        PyStructSequence_SET_ITEM(dns_result, 7, PyInt_FromLong((long)soa_reply->ttl));
                                                                      ~~~~~~~~~  ^
    /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/structseq.h:38:69: note: expanded from macro 'PyStructSequence_SET_ITEM'
    #define PyStructSequence_SET_ITEM(op, i, v) PyTuple_SET_ITEM(op, i, v)
                                                                        ^
    /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/tupleobject.h:62:75: note: expanded from macro 'PyTuple_SET_ITEM'
    #define PyTuple_SET_ITEM(op, i, v) (((PyTupleObject *)(op))->ob_item[i] = v)
                                                                              ^
    In file included from src/pycares.c:4:
    src/cares.c:664:73: error: no member named 'ttl' in 'struct ares_srv_reply'
            PyStructSequence_SET_ITEM(tmp, 4, PyInt_FromLong((long)srv_ptr->ttl));
                                                                   ~~~~~~~  ^
    /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/structseq.h:38:69: note: expanded from macro 'PyStructSequence_SET_ITEM'
    #define PyStructSequence_SET_ITEM(op, i, v) PyTuple_SET_ITEM(op, i, v)
                                                                        ^
    /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/tupleobject.h:62:75: note: expanded from macro 'PyTuple_SET_ITEM'
    #define PyTuple_SET_ITEM(op, i, v) (((PyTupleObject *)(op))->ob_item[i] = v)
                                                                              ^
    In file included from src/pycares.c:4:
    src/cares.c:735:75: error: no member named 'ttl' in 'struct ares_naptr_reply'
            PyStructSequence_SET_ITEM(tmp, 6, PyInt_FromLong((long)naptr_ptr->ttl));
                                                                   ~~~~~~~~~  ^
    /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/structseq.h:38:69: note: expanded from macro 'PyStructSequence_SET_ITEM'
    #define PyStructSequence_SET_ITEM(op, i, v) PyTuple_SET_ITEM(op, i, v)
                                                                        ^
    /usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m/tupleobject.h:62:75: note: expanded from macro 'PyTuple_SET_ITEM'
    #define PyTuple_SET_ITEM(op, i, v) (((PyTupleObject *)(op))->ob_item[i] = v)
                                                                              ^
    6 errors generated.
    error: command 'clang' failed with exit status 1

    ----------------------------------------
Command "/usr/local/opt/python/bin/python3.7 -u -c "import setuptools, tokenize;__file__='/private/tmp/pip-install-25wts093/pycares/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /private/tmp/pip-record-sv78fuzs/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /private/tmp/pip-install-25wts093/pycares/

Problems using custom DNS with aiohttp

I followed the example from here:

https://aiohttp.readthedocs.io/en/stable/client_advanced.html#resolving-using-custom-nameservers

and would like to use a custom DNS server with aiohttp:

import asyncio
import uvloop
import aiohttp
from aiohttp.resolver import AsyncResolver

asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
loop = asyncio.get_event_loop()

resolver = AsyncResolver(nameservers=["1.1.1.1", "1.0.0.1"])
session = aiohttp.ClientSession(loop=loop, connector=aiohttp.TCPConnector(limit=100, ssl=False, force_close=True,
                ttl_dns_cache=300, resolver=resolver), timeout=aiohttp.ClientTimeout(total=5))

async def f(url):
    response = await session.get(url)
    response.raise_for_status()
    return response

loop.run_until_complete(f("https://example.com"))

unfortunately I don't know what to make of the error message:

OSErrorTraceback (most recent call last)
/opt/conda/lib/python3.6/site-packages/aiohttp/connector.py in _wrap_create_connection(self, req, timeout, client_error, *args, **kwargs)
    821             with CeilTimeout(timeout.sock_connect):
--> 822                 return await self._loop.create_connection(*args, **kwargs)
    823         except certificate_errors as exc:

/opt/conda/lib/python3.6/site-packages/uvloop/loop.pyx in create_connection()

/opt/conda/lib/python3.6/site-packages/uvloop/loop.pyx in uvloop.loop.Loop.create_connection()

/opt/conda/lib/python3.6/site-packages/uvloop/handles/tcp.pyx in uvloop.loop.TCPTransport.connect()

/opt/conda/lib/python3.6/site-packages/uvloop/handles/tcp.pyx in uvloop.loop._TCPConnectRequest.connect()

OSError: [Errno 99] Cannot assign requested address

The above exception was the direct cause of the following exception:

ClientConnectorErrorTraceback (most recent call last)
<ipython-input-1-622959d2ae35> in <module>()
     16     return response
     17
---> 18 loop.run_until_complete(f("https://example.com"))

/opt/conda/lib/python3.6/site-packages/uvloop/loop.pyx in uvloop.loop.Loop.run_until_complete()

<ipython-input-1-622959d2ae35> in f(url)
     12
     13 async def f(url):
---> 14     response = await session.get(url)
     15     response.raise_for_status()
     16     return response

/opt/conda/lib/python3.6/site-packages/aiohttp/client.py in _request(self, method, url, params, data, json, headers, skip_auto_headers, auth, allow_redirects, max_redirects, compress, chunked, expect100, read_until_eof, proxy, proxy_auth, timeout, verify_ssl, fingerprint, ssl_context, ssl, proxy_headers, trace_request_ctx)
    364                                 req,
    365                                 traces=traces,
--> 366                                 timeout=timeout
    367                             )
    368                     except asyncio.TimeoutError as exc:

/opt/conda/lib/python3.6/site-packages/aiohttp/connector.py in connect(self, req, traces, timeout)
    443
    444             try:
--> 445                 proto = await self._create_connection(req, traces, timeout)
    446                 if self._closed:
    447                     proto.close()

/opt/conda/lib/python3.6/site-packages/aiohttp/connector.py in _create_connection(self, req, traces, timeout)
    755         else:
    756             _, proto = await self._create_direct_connection(
--> 757                 req, traces, timeout)
    758
    759         return proto

/opt/conda/lib/python3.6/site-packages/aiohttp/connector.py in _create_direct_connection(self, req, traces, timeout, client_error)
    877             return transp, proto
    878         else:
--> 879             raise last_exc
    880
    881     async def _create_proxy_connection(self, req, traces, timeout):

/opt/conda/lib/python3.6/site-packages/aiohttp/connector.py in _create_direct_connection(self, req, traces, timeout, client_error)
    860                     server_hostname=hinfo['hostname'] if sslcontext else None,
    861                     local_addr=self._local_addr,
--> 862                     req=req, client_error=client_error)
    863             except ClientConnectorError as exc:
    864                 last_exc = exc

/opt/conda/lib/python3.6/site-packages/aiohttp/connector.py in _wrap_create_connection(self, req, timeout, client_error, *args, **kwargs)
    827             raise ClientConnectorSSLError(req.connection_key, exc) from exc
    828         except OSError as exc:
--> 829             raise client_error(req.connection_key, exc) from exc
    830
    831     async def _create_direct_connection(self, req, traces, timeout,

ClientConnectorError: Cannot connect to host example.com:443 ssl:None [Cannot assign requested address]

Include tests in archive

Please include the tests in the archive. This makes it more convenient for packages to automatically test their packages.

Convert Type Annotations to Py3 syntax

Since this project is now >= Python 3.5 we can move all type annotations to Python 3 syntax except variable annotations (they will need to stay as comments until the project is >= 3.6).

Happy to do the PR one day and also happy if someone else beats me. I did PR #75 to add CI type checking, ensuring master is passing before we convert.

Not sure if there are tools to do this for us, but manual wouldn’t take to long.

SystemError resolving TXT record

Hello, I was resolving DNS records for some domains and I found an unexpected error resolving the TXT record of like.com.sa

Here is a code to reproduce the error

import asyncio
import aiodns

loop = asyncio.get_event_loop()
resolver = aiodns.DNSResolver(loop=loop)
result = loop.run_until_complete(resolver.query('like.com.sa', 'TXT'))
print(result)

Thanks

How can i get absolute domains?

When i use dig i obtain absolute domain names:

;; ANSWER SECTION:
google.com. 5 IN NS ns1.google.com.
google.com. 5 IN NS ns3.google.com.
google.com. 5 IN NS ns4.google.com.
google.com. 5 IN NS ns2.google.com.

But aiodns gives me relative domains:
[ares_query_ns_result(host='ns3.google.com', ttl=None), ares_query_ns_result(host='ns4.google.com', ttl=None), ares_query_ns_result(host='ns2.google.com', ttl=None), ares_query_ns_result(host='ns1.google.com', ttl=None)]

Is the way to get true data exists?

Update README example

I suggest updating README with using coroutine and making explicit yield from resolver.query('google.com','A').

I know your example is perfectly correct but loop.run_until_complete() is not so obvious as yield from.

Can not connect to python.org:80 [No route to host]

Running the aiohttp client example on the homepage using aiodns 1.1.1 results in;

aiohttp.errors.ClientOSError: [Errno 65] Cannot connect to host python.org:80 ssl:False [Can not connect to python.org:80 [No route to host]]

However, running with aiodns 1.0.1 works without fault.

Please release 1.1.1

Shouldn't the 1.1.1 version appear under releases?

On e.g. ArchLinux (AUR) we won't have the latest version of aiodns unless it appears under releases.

can't resolve localhost

I'm using aiodns and was surprised that it could not resolve localhost. Now maybe I shouldn't be surprised, after all Unix has always been a little bit weird about combining looking at /etc/hosts with a dns resolver.

Recommend: mentioning this in the docs?

about resolver.query

If I want to query different records, do I need different requests, such as querying A records at the same time, cname max, etc.

query result is wrapped in list: Clarify Readme or change return value

First of all: Thank you for this useful library freeing people from interacting with a C-style interface.

While trying out the given example there is one thing that confuses me: The namedtuple-like query results are wrapped in a single item list:

import asyncio
import aiodns

loop = asyncio.get_event_loop()
resolver = aiodns.DNSResolver(loop=loop)


async def query(name, query_type):
    return await resolver.query(name, query_type)

coro = query('google.com', 'A')
result = loop.run_until_complete(coro)
print(type(result), result)

The code above prints the following using python3.6:
<class 'list'> [ares_query_simple_result(host='172.217.22.110', ttl=151)]

Is this intended? If yes, why? Single-item lists are not really useful, are they?

At least to me this return type wasn't obviuos neither from the aiodns Readme ("The actual result of the DNS query is taken directly from pycares. As of version 1.0.0 of aiodns (and pycares, for that matter) results are always namedtuple-like objects with different attributes") nor from the pycares documentation.

Or am I holding it wrong?

Issue a release please

Please issue a tagged release since there are bugfixes accumulated since last release, to enable distributions to distribute the updates.

#71 , which causes Gentoo bug https://bugs.gentoo.org/692720 has been resolved in Sep 2019. Yet the last release of aiodns is from Mar 2019.

Thanks in advance.

Memory corruption when using the library

Hi.
I have a bug report for aiohttp.
Looks like aiodns has a subtle bug: aio-libs/aiohttp#3573
I cannot reproduce the problem but the reporter provided a stack trace which is weird:

/aiohttp-1.py:38: DeprecationWarning: The object should be created from async function
  resolver = AsyncResolver(nameservers=["114.114.114.114"])
/aiohttp-1.py:41: DeprecationWarning: verify_ssl is deprecated, use ssl=False instead
  async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=False, use_dns_cache=False, resolver=resolver)) assession:
Traceback (most recent call last):
  File "/aiohttp-1.py", line 51, in <module>
    asyncio.run(dnstesting())
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/asyncio/runners.py", line 43, in run
    return loop.run_until_complete(main)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/asyncio/base_events.py", line 584, in run_until_complete
    return future.result()
  File "/aiohttp-1.py", line 42, in dnstesting
    r = await session.get("http://google.com")
  File "/pyvenvs/aiohttp/venv/lib/python3.7/site-packages/aiohttp/client.py", line 476, in _request
    timeout=real_timeout
  File "/pyvenvs/aiohttp/venv/lib/python3.7/site-packages/aiohttp/connector.py", line 522, in connect
    proto = await self._create_connection(req, traces, timeout)
  File "/pyvenvs/aiohttp/venv/lib/python3.7/site-packages/aiohttp/connector.py", line 854, in _create_connection
    req, traces, timeout)
  File "/pyvenvs/aiohttp/venv/lib/python3.7/site-packages/aiohttp/connector.py", line 955, in _create_d/aiohttp-1.py:38: DeprecationWarning: The object should be created from async function
  resolver = AsyncResolver(nameservers=["114.114.114.114"])
/aiohttp-1.py:41: DeprecationWarning: verify_ssl is deprecated, use ssl=False instead
  async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=False, use_dns_cache=False, resolver=resolver)) assession:
Traceback (most recent call last):
  File "/aiohttp-1.py", line 51, in <module>
    asyncio.run(dnstesting())
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/asyncio/runners.py", line 43, in run
    return loop.run_until_complete(main)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/asyncio/base_events.py", line 584, in run_until_complete
    return future.result()
  File "/aiohttp-1.py", line 42, in dnstesting
    r = await session.get("http://google.com")
  File "/pyvenvs/aiohttp/venv/lib/python3.7/site-packages/aiohttp/client.py", line 476, in _request
    timeout=real_timeout
  File "/pyvenvs/aiohttp/venv/lib/python3.7/site-packages/aiohttp/connector.py", line 522, in connect
    proto = await self._create_connection(req, traces, timeout)
  File "/pyvenvs/aiohttp/venv/lib/python3.7/site-packages/aiohttp/connector.py", line 854, in _create_connection
    req, traces, timeout)
  File "/pyvenvs/aiohttp/venv/lib/python3.7/site-packages/aiohttp/connector.py", line 955, in _create_direct_connection
    traces=traces), loop=self._loop)
  File "/pyvenvs/aiohttp/venv/lib/python3.7/site-packages/aiohttp/connector.py", line 788, in _resolve_host
    host, port, family=self._family))
  File "/pyvenvs/aiohttp/venv/lib/python3.7/site-packages/aiohttp/resolver.py", line 64, in resolve
    resp = await self._resolver.gethostbyname(host, family)
RuntimeError: Task <Task pending coro=<TCPConnector._resolve_host() running at /pyvenvs/aiohttp/venv/lib/python3.7/site-packages/aiohttp/connector.py:788> cb=[shield.<locals>._done_callback() at /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/asyncio/tasks.py:776]> got Future <Future pending> attached to a different loop
python3(38437,0x107b185c0) malloc: *** error for object 0x9000000000000000: pointer being freed was not allocated
python3(38437,0x107b185c0) malloc: *** set a breakpoint in malloc_error_break to debug
Abort trap: 6irect_connection
    traces=traces), loop=self._loop)
  File "/pyvenvs/aiohttp/venv/lib/python3.7/site-packages/aiohttp/connector.py", line 788, in _resolve_host
    host, port, family=self._family))
  File "/pyvenvs/aiohttp/venv/lib/python3.7/site-packages/aiohttp/resolver.py", line 64, in resolve
    resp = await self._resolver.gethostbyname(host, family)
RuntimeError: Task <Task pending coro=<TCPConnector._resolve_host() running at /pyvenvs/aiohttp/venv/lib/python3.7/site-packages/aiohttp/connector.py:788> cb=[shield.<locals>._done_callback() at /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/asyncio/tasks.py:776]> got Future <Future pending> attached to a different loop
python3(38437,0x107b185c0) malloc: *** error for object 0x9000000000000000: pointer being freed was not allocated
python3(38437,0x107b185c0) malloc: *** set a breakpoint in malloc_error_break to debug
Abort trap: 6

Do you have any idea?

Finding A requests that have been resolved via CNAME

I don't know if this is a limitation of pycares, or if I'm missing something obvious.

Pycares seems to automatically follow CNAME entries to resolve the hostname to an IP address, but gives no indication of when it has done so. Is there any way to tell when this has happened, and if so what the CNAME was?

Thanks very much.

Segmentation fault upon application termination when querying lots and lots of DNS servers using separate DNSResolver instances

I'm not sure if the problem is in aiodns, pycares or even Python itself, but to start off this seems like a good place to put this, especially if it turns out that the issue is just me doing something very very wrong.

I'm trying to look up all IP addresses belonging to a certain hostname. Due to load balancing techniques different DNS servers may report different IP addresses, which means that I first need to find a list of public DNS servers, and then query each one with the hostname. From what I can tell, DNSResolver (or rather pycares) doesn't get very happy when you try to change the nameservers from different simultaneously running coroutines (not very surprising really), so separate DNSResolver instances are needed.

Here's an example of what I'm trying to do, using aiodns in conjunction with aiohttp to fetch the DNS server list (note that it may take several seconds to fetch the DNS list):

import asyncio
import json

import aiodns
import aiohttp

json_url = "http://public-dns.tk/nameservers.json"
address = "google.com"

@asyncio.coroutine
def main():
    try:
        print("Fetching DNS server list...")
        response = yield from asyncio.wait_for(
            aiohttp.request('GET', json_url), 30)
    except asyncio.TimeoutError:
        print("Error: Couldn't fetch DNS server list")
        return

    body = yield from response.read_and_close()
    dns_data = json.loads(body.decode('utf-8'))
    dns_servers = [entry['ip'] for entry in dns_data
                   if entry['state'] == 'valid'
                      and len(entry['ip'].split('.')) == 4]

    ips = set()
    i = 0
    @asyncio.coroutine
    def do_lookup(ip):
        nonlocal i
        try:
            resolver = aiodns.DNSResolver(nameservers=[ip],
                                          timeout=3, tries=2)
            ips.update((yield from resolver.query(address, 'A')))
        except Exception as e:
            print("Warning: Couldn't connect to DNS server {}"
                    .format(ip))
        i += 1
        print("Queried DNS server {}/{}".format(i, len(dns_servers)))

    print("Resolving IP addresses...")
    yield from asyncio.wait([do_lookup(server)
                             for server in dns_servers])
    print("Got IP addresses:", ips)


if __name__ == '__main__':
    loop = asyncio.get_event_loop()
    loop.run_until_complete(main())

When running the above code I get the following output:

Fetching DNS server list...
Resolving IP addresses...
Warning: Couldn't connect to DNS server 85.185.171.82
Queried DNS server 1/3130
[...]
Queried DNS server 2205/3130
Queried DNS server 2206/3130
Queried DNS server 2207/3130
Queried DNS server 2208/3130
Queried DNS server 2209/3130
[...]
Warning: Couldn't connect to DNS server 207.172.11.73
Queried DNS server 3129/3130
Warning: Couldn't connect to DNS server 83.238.39.254
Queried DNS server 3130/3130
Got IP addresses: {'212.39.82.177', '74.125.239.99', [...], '173.194.124.39', '93.191.15.103'}
Segmentation fault

Backtrace:

Program received signal SIGSEGV, Segmentation fault.
visit_decref (op=0x7ffff017c370, data=0x0) at Modules/gcmodule.c:373
373     Modules/gcmodule.c: No such file or directory.
(gdb) bt
#0  visit_decref (op=0x7ffff017c370, data=0x0) at Modules/gcmodule.c:373
#1  0x00007ffff79d279b in list_traverse (o=0x7ffff2b29e48, visit=0x7ffff7a95ee0 <visit_decref>, arg=0x0)
    at Objects/listobject.c:2217
#2  0x00007ffff7a951bf in subtract_refs (containers=<optimized out>) at Modules/gcmodule.c:398
#3  collect (generation=generation@entry=2, n_collected=n_collected@entry=0x0, 
    n_uncollectable=n_uncollectable@entry=0x0, nofail=nofail@entry=1) at Modules/gcmodule.c:969
#4  0x00007ffff7a96301 in _PyGC_CollectNoFail () at Modules/gcmodule.c:1638
#5  0x00007ffff7a705f8 in PyImport_Cleanup () at Python/import.c:483
#6  0x00007ffff7a7cd16 in Py_Finalize () at Python/pythonrun.c:616
#7  0x00007ffff7a9408f in Py_Main (argc=-136464988, argv=0x0) at Modules/main.c:771
#8  0x0000000000400af6 in main ()

I'm using aiodns 0.3.0 with Python 3.4.1 running on 64-bit (Arch) Linux.

.onion pseudo TLD leads to segmentation fault

I have stumbled with an issue, pseudo .onion TLD leads to segmentation fault. Code is simple as:

import asyncio
import aiodns

loop = asyncio.get_event_loop()
resolver = aiodns.DNSResolver(loop=loop)

async def query(name, query_type):
    return await resolver.query(name, query_type)

coro = query('something.onion', 'NS') # actually any DNS record (e.g. A, CNAME, MX)
result = loop.run_until_complete(coro)

Let me know if it's expected behaviour.

Support for DNSSEC

Querying for the type DNSKEY failed when it should succeed on the website 'dnssec-tools.org' the query worked with dns.resolver.query('dnssec-tools.org', 'DNSKEY')

DNSError when providing nameservers to DNSResolver

Hi!

Question. I'm trying to fetch the name servers of a specific domain name. This works when I don't provide nameservers to the DNSResolver:

import asyncio
import aiodns

loop = asyncio.get_event_loop()
resolver = aiodns.DNSResolver(loop=loop)
f = resolver.query('test.de', 'NS')
result = loop.run_until_complete(f)
print(result)

This results in:

[ares_query_ns_result(host='dns3.iwelt-ag.de', ttl=None), ares_query_ns_result(host='dns2.iwelt-ag.net', ttl=None), ares_query_ns_result(host='dns.iwelt-ag.net', ttl=None)]

But, when I do this:

import asyncio
import aiodns

loop = asyncio.get_event_loop()
resolver = aiodns.DNSResolver(loop=loop, nameservers=['81.91.164.5'])
f = resolver.query('test.de', 'NS')
result = loop.run_until_complete(f)
print(result)

This is the result:

aiodns.error.DNSError: (1, 'DNS server returned answer with no data')

Though when I capture the packets I see that I'm getting the results back from the name server:

 sudo tcpdump -i en0 -AAA -vvv host 81.91.164.5

tcpdump: listening on en0, link-type EN10MB (Ethernet), capture size 262144 bytes
21:40:30.518946 IP (tos 0x0, ttl 64, id 23865, offset 0, flags [none], proto UDP (17), length 53)
    192.168.178.10.55500 > f.nic.de.domain: [udp sum ok] 58234+ NS? test.de. (25)
.Y3.;/..V?. ..E..5][email protected]...
Q[.....5.!...z...........test.de.....
21:40:30.532423 IP (tos 0x0, ttl 57, id 27877, offset 0, flags [none], proto UDP (17), length 146)
    f.nic.de.domain > 192.168.178.10.55500: [udp sum ok] 58234- q: NS? test.de. 0/3/1 ns: test.de. [1d] NS dns.iwelt-ag.net., test.de. [1d] NS dns2.iwelt-ag.net., test.de. [1d] NS dns3.iwelt-ag.de. ar: dns3.iwelt-ag.de. [1d] A 85.236.41.196 (118)
..V?. .Y3.;/..E...l...9..bQ[.....
.5...~...z...........test.de.............Q....dns.iwelt-ag.net.........Q....dns2.)........Q....dns3.iwelt-ag...V......Q...U.).

Am I missing something, or is this a bug somewhere in aiodns or pycares?

ProactorEventLoop on Windows

Hi,

I've had a few problems trying to implement asyncio and aiohttp into my script running out of sockets to perform the connection in SelectorEventLoop. I've then tried to use ProactorEventLoop on Windows that doesn't seem to not have this limitation. However when I try:

import asyncio
import aiohttp


async def getHeaders(url, session, sema):
    async with session:
        async with sema:
            try:
                async with session.head(url) as response:
                    try:
                        if "html" in response.headers["Content-Type"]:
                            return url, True
                        else:
                            return url, False
                    except:
                        return url, False
            except:
                return url, False


def removeUrlsWithoutHtml(setOfUrls, MAXitems):
    listOfUrls = list(setOfUrls)
    while(len(listOfUrls) != 0):
        blockurls = []
        print("URLS left to process: " + str(len(listOfUrls)))
        items = 0
        for num in range(0, len(listOfUrls)):
            if num < MAXitems:
                blockurls.append(listOfUrls[num - items])
                listOfUrls.remove(listOfUrls[num - items])
                items += 1
        loop = asyncio.ProactorEventLoop()
        asyncio.set_event_loop(loop)
        semaphoreHeaders = asyncio.Semaphore(50)
        session = aiohttp.ClientSession()
        data = loop.run_until_complete(asyncio.gather(*(getHeaders(url, session, semaphoreHeaders) for url in blockurls)))
        for header in data:
            if False == header[1]:
                setOfUrls.remove(header[0])

MAXitems = 10
setOfUrls = {'http://www.google.com', 'http://www.reddit.com'}
removeUrlsWithoutHtml(setOfUrls, MAXitems)

for link in list(setOfUrls):
    print(link)

Note the use of semaphore and chuncking to try to get around the selector limit issue that I face if I replace

        loop = asyncio.ProactorEventLoop()
        asyncio.set_event_loop(loop)

with:
loop = asyncio.get_event_loop()

With the current configuratioon it raises:

Exception ignored in: <bound method DNSResolver._sock_state_cb of <aiodns.DNSResolver object at 0x0616F830>>
Traceback (most recent call last):
  File "USER\AppData\Local\Programs\Python\Python36-32\lib\site-packages\aiodns\__init__.py", line 85, in _sock_state_cb
    self.loop.add_reader(fd, self._handle_event, fd, READ)
  File "USER\AppData\Local\Programs\Python\Python36-32\lib\asyncio\events.py", line 453, in add_reader
    raise NotImplementedError
NotImplementedError:

Note my direction path has been manually changed to USER

Python documentation says: https://docs.python.org/3/library/asyncio-eventloops.html#asyncio.ProactorEventLoop

add_reader() and add_writer() only accept file descriptors of sockets

Is aiodns not supported with ProactorEventLoop? Is this some type of weird bug? Is aiodns fully supported on Windows?

I can provide more info, but in case you need a little bit more background I've been derived here by @asvetlov in the following stack overflow question: https://stackoverflow.com/questions/47675410/python-asyncio-aiohttp-valueerror-too-many-file-descriptors-in-select-on-win

gethostbyname defaults to ipv6

Not sure if it's a bug or intended behaviour, but it's bitten me and other users (probably #22) of aiohttp since they switched to family=0 per default. Most Linux distro's ship with IPv6 enabled (luckily) but most don't have a IPv6 route set up yet.

Output:

Async: ['2a03:b0c0:2:d0::27d:6001']
Socket: ['188.166.29.234', '2a03:b0c0:2:d0::27d:6001']

Test:

import asyncio
import aiodns
import socket

HOST = 'www.vinyl-lp.com'
FAMILY = 0 
PORT = 80

async def aiodns_gethostbyname():
    resolver = aiodns.DNSResolver()
    resp = await resolver.gethostbyname(HOST, FAMILY)
    print("Async: {}".format(resp.addresses))

def regular_gethostbyname():
    resp = socket.getaddrinfo(HOST, PORT, family=FAMILY, proto=socket.IPPROTO_TCP)
    ips = [x[4][0] for x in resp]
    print("Socket: {}".format(ips))


if __name__ == '__main__':
    loop = asyncio.get_event_loop()
    loop.run_until_complete(aiodns_gethostbyname())
    loop.close()

    regular_gethostbyname()

File IO in setup.py misses explicit file encoding.

The current setup.py file misses an explicit file encoding declaration for the README.rst file and package version detection. These files have the explicit UTF-8 encoding though. This causes the setup process to fail under certain circumstances in certain environments.

Python 3.8.0a1 can't install aiodns 2.0.0

my python version is 3.8.When I runing "python3 -m pip install aiodns" have a problem 'ERROR: Command "python setup.py egg_info" failed with error code 1 in C:\Users\notyeat\AppData\Local\Temp\pip-install-zoa6xiik\pycares'

Fatal Python error: Segmentation fault

Not really sure if it's an issue with aiodns or pycares. I'm using aiodns to resolve ~300k domains/hour and it works great most of the time, but I'm getting "Fatal Python error: Segmentation fault" from time to time, and it doesn't seem to be related to the load.

Fatal Python error: Segmentation fault
 Current thread 0x00007f23a2ffd700 (most recent call first):
   File "/task/python3/lib/python3.7/site-packages/pycares/__init__.py", line 519 in _do_query
   File "/task/python3/lib/python3.7/site-packages/pycares/__init__.py", line 505 in query
   File "/task/python3/lib/python3.7/site-packages/aiodns/__init__.py", line 79 in query
   File "/task/batch/ResolverBatch.py", line 24 in query
   File "/usr/lib/python3.7/asyncio/events.py", line 88 in _run
   File "/usr/lib/python3.7/asyncio/base_events.py", line 1775 in _run_once
   File "/usr/lib/python3.7/asyncio/base_events.py", line 539 in run_forever
   File "/task/batch/ResolverBatch.py", line 29 in resolver_worker
   File "/usr/lib/python3.7/threading.py", line 865 in run
   File "/usr/lib/python3.7/threading.py", line 917 in _bootstrap_inner
   File "/usr/lib/python3.7/threading.py", line 885 in _bootstrap

Asyncio loop is running in a separate thread and queries are executed using asyncio.run_coroutine_threadsafe(query(domain, 'A'), loop):

loop = asyncio.get_event_loop()
resolver = DNSResolver(loop=loop, nameservers=pDNS)

async def query(name, query_type):
    return await resolver.query(name, query_type)

def resolver_worker(loop):
    """ Switch to new event loop and run forever """
    asyncio.set_event_loop(loop)
    loop.run_forever()

def start_worker():
    """ Start worker thread """
    log.info(f"Starting resolver thread")
    worker = Thread(target=resolver_worker, args=(loop, ))
    worker.setDaemon(True)
    worker.start()

def run_resolver(testing=False):
    log.info(f"Starting Resolver with nameserver {pDNS}")
    start_worker()
    queue = Queue('queue'))
    for domains in queue.recv(forever=True):
        for domain in domains:
            future = asyncio.run_coroutine_threadsafe(query(domain, 'A'), loop)
            if testing:
                return future.result()

Package versions:

        "aiodns": {
            "hashes": [
                "sha256:815fdef4607474295d68da46978a54481dd1e7be153c7d60f9e72773cd38d77d",
                "sha256:aaa5ac584f40fe778013df0aa6544bf157799bd3f608364b451840ed2c8688de"
            ],
            "index": "pypi",
            "version": "==2.0.0"
        },
        "asyncio": {
            "hashes": [
                "sha256:83360ff8bc97980e4ff25c964c7bd3923d333d177aa4f7fb736b019f26c7cb41",
                "sha256:b62c9157d36187eca799c378e572c969f0da87cd5fc42ca372d92cdb06e7e1de",
                "sha256:c46a87b48213d7464f22d9a497b9eef8c1928b68320a2fa94240f969f6fec08c",
                "sha256:c4d18b22701821de07bd6aea8b53d21449ec0ec5680645e5317062ea21817d2d"
            ],
            "index": "pypi",
            "version": "==3.4.3"
        "pycares": {
            "hashes": [
                "sha256:2ca080db265ea238dc45f997f94effb62b979a617569889e265c26a839ed6305",
                "sha256:6f79c6afb6ce603009db2042fddc2e348ad093ece9784cbe2daa809499871a23",
                "sha256:70918d06eb0603016d37092a5f2c0228509eb4e6c5a3faacb4184f6ab7be7650",
                "sha256:755187d28d24a9ea63aa2b4c0638be31d65fbf7f0ce16d41261b9f8cb55a1b99",
                "sha256:7baa4b1f2146eb8423ff8303ebde3a20fb444a60db761fba0430d104fe35ddbf",
                "sha256:90b27d4df86395f465a171386bc341098d6d47b65944df46518814ae298f6cc6",
                "sha256:9e090dd6b2afa65cb51c133883b2bf2240fd0f717b130b0048714b33fb0f47ce",
                "sha256:a11b7d63c3718775f6e805d6464cb10943780395ab042c7e5a0a7a9f612735dd",
                "sha256:b253f5dcaa0ac7076b79388a3ac80dd8f3bd979108f813baade40d3a9b8bf0bd",
                "sha256:c7f4f65e44ba35e35ad3febc844270665bba21cfb0fb7d749434e705b556e087",
                "sha256:cdb342e6a254f035bd976d95807a2184038fc088d957a5104dcaab8be602c093",
                "sha256:cf08e164f8bfb83b9fe633feb56f2754fae6baefcea663593794fa0518f8f98c",
                "sha256:df9bc694cf03673878ea8ce674082c5acd134991d64d6c306d4bd61c0c1df98f"
            ],
            "version": "==3.0.0"
        },```

aiodns can't contact DNS servers error when running in OS X terminal

Following code snippet fetches multiple public DNS servers asynchronously. If script is executed in PyCharm it works perfectly and resolves all given resolvers with very few errors (~14 errors in 1078 requests).

However if I run exactly same script in OS X terminal only first ~280 aiodns requests are successful and the rest returns aiodns.DNSError(11, 'Could not contact DNS servers')(~834 errors in 1078 requests).

Copy/paste resolvers_short list from https://pastebin.com/wSYtzebZ

This code is part of my open-source project on https://github.com/MMquant/DNSweeper/blob/master/DNSweeper.py

import asyncio
import aiodns

#resolvers_short = [fill resolvers from link]

class Fetcher(object):

    def __init__(self):
        self.loop = asyncio.get_event_loop()

    def get_records(self, names, query_type, resolvers):

        coros = [self._query_sweep_resolvers(names, query_type, resolver) for resolver in resolvers]
        tasks = asyncio.gather(*coros, return_exceptions=True)

        records = self.loop.run_until_complete(tasks)

        return records

    async def _query_sweep_resolvers(self, name, query_type, nameserver):

        resolver = aiodns.DNSResolver(
            nameservers=[nameserver],
            timeout=5,
            tries=3,
            loop=self.loop
        )

        try:
            result = await resolver.query(name, query_type)
        except aiodns.error.DNSError as e:
            result = e

        return {'ns': nameserver,'name': name ,'type': query_type, 'result': result}


def errors_count(results):

    count = 0
    for result in results:
        if type(result['result']) is aiodns.error.DNSError:
            count += 1
    return count


if __name__ == '__main__':

    fetcher = Fetcher()
    results = fetcher.get_records('www.flickr.com', 'A', resolvers_short)
    # print(results)
    errors = errors_count(results)
    # In 1078 resolvers
    # If script executed in PyCharm there are only ~14 aiodns response errors on average
    # If script executed in terminal there are ~834 aiodns response errors where majority are
    # DNSError(11, 'Could not contact DNS servers')
    print(errors)
    pass

Caching?

Does this cache the lookups? How would we change the expiration?

Invalid unicode in author email field of README.rst

Python 3.4.x is unable to build / install the latest version of this library due to incompatiable unicode used in the authors name/email field. Removal of this line or usage of conversion tools such as iconv fix the issue.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.