summaryrefslogtreecommitdiffstats
path: root/vendor/modernc.org/libc
diff options
context:
space:
mode:
authorWim <wim@42.be>2022-04-25 23:50:10 +0200
committerGitHub <noreply@github.com>2022-04-25 23:50:10 +0200
commit67adad3e08fe17d5f7e87468ea47aa76e1662255 (patch)
tree91314fac90d39254e66ae794decfcd21c10a7b20 /vendor/modernc.org/libc
parent2fca3c756373577eab4e0120ccce62eecc1f5ad8 (diff)
downloadmatterbridge-msglm-67adad3e08fe17d5f7e87468ea47aa76e1662255.tar.gz
matterbridge-msglm-67adad3e08fe17d5f7e87468ea47aa76e1662255.tar.bz2
matterbridge-msglm-67adad3e08fe17d5f7e87468ea47aa76e1662255.zip
Update dependencies (#1813)
Diffstat (limited to 'vendor/modernc.org/libc')
-rw-r--r--vendor/modernc.org/libc/Makefile8
-rw-r--r--vendor/modernc.org/libc/capi_windows_arm64.go722
-rw-r--r--vendor/modernc.org/libc/errno/capi_windows_arm64.go5
-rw-r--r--vendor/modernc.org/libc/errno/errno_windows_arm64.go363
-rw-r--r--vendor/modernc.org/libc/fcntl/capi_windows_arm64.go5
-rw-r--r--vendor/modernc.org/libc/fcntl/fcntl_windows_arm64.go424
-rw-r--r--vendor/modernc.org/libc/libc_windows.go16
-rw-r--r--vendor/modernc.org/libc/libc_windows_arm64.go513
-rw-r--r--vendor/modernc.org/libc/limits/capi_windows_arm64.go5
-rw-r--r--vendor/modernc.org/libc/limits/limits_windows_arm64.go102
-rw-r--r--vendor/modernc.org/libc/musl_windows_arm64.go1199
-rw-r--r--vendor/modernc.org/libc/pthread/capi_windows_arm64.go9
-rw-r--r--vendor/modernc.org/libc/pthread/pthread_windows_arm64.go1050
-rw-r--r--vendor/modernc.org/libc/signal/capi_windows_arm64.go5
-rw-r--r--vendor/modernc.org/libc/signal/signal_windows_arm64.go313
-rw-r--r--vendor/modernc.org/libc/stdio/capi_windows_arm64.go5
-rw-r--r--vendor/modernc.org/libc/stdio/stdio_windows_arm64.go348
-rw-r--r--vendor/modernc.org/libc/stdlib/capi_windows_arm64.go5
-rw-r--r--vendor/modernc.org/libc/stdlib/stdlib_windows_arm64.go459
-rw-r--r--vendor/modernc.org/libc/sys/stat/capi_windows_arm64.go5
-rw-r--r--vendor/modernc.org/libc/sys/stat/stat_windows_arm64.go559
-rw-r--r--vendor/modernc.org/libc/sys/types/capi_windows_arm64.go5
-rw-r--r--vendor/modernc.org/libc/sys/types/types_windows_arm64.go329
-rw-r--r--vendor/modernc.org/libc/time/capi_windows_arm64.go9
-rw-r--r--vendor/modernc.org/libc/time/time_windows_arm64.go437
-rw-r--r--vendor/modernc.org/libc/unistd/capi_windows_arm64.go5
-rw-r--r--vendor/modernc.org/libc/unistd/unistd_windows_arm64.go682
-rw-r--r--vendor/modernc.org/libc/utime/capi_windows_arm64.go5
-rw-r--r--vendor/modernc.org/libc/utime/utime_windows_arm64.go304
-rw-r--r--vendor/modernc.org/libc/wctype/capi_windows_arm64.go5
-rw-r--r--vendor/modernc.org/libc/wctype/wctype_windows_arm64.go290
31 files changed, 8191 insertions, 0 deletions
diff --git a/vendor/modernc.org/libc/Makefile b/vendor/modernc.org/libc/Makefile
index c4727abf..2f6e9648 100644
--- a/vendor/modernc.org/libc/Makefile
+++ b/vendor/modernc.org/libc/Makefile
@@ -36,6 +36,7 @@ all:
GOOS=openbsd GOARCH=amd64 go build
GOOS=windows GOARCH=386 go build
GOOS=windows GOARCH=amd64 go build
+ GOOS=windows GOARCH=arm64 go build
go vet -unsafeptr=false 2>&1 | grep -v $(ngrep) || true
golint 2>&1 | grep -v $(ngrep) || true
make todo
@@ -106,6 +107,11 @@ windows_amd64:
go generate 2>&1 | tee log-generate
go build -v ./...
+windows_arm64:
+ @echo "Should be executed only on windows/arm64."
+ go generate 2>&1 | tee log-generate
+ go build -v ./...
+
windows_386:
@echo "Should be executed only on linux/amd64."
CCGO_CPP=i686-w64-mingw32-cpp TARGET_GOOS=windows TARGET_GOARCH=386 go generate
@@ -141,6 +147,8 @@ build_all_targets:
GOOS=windows GOARCH=386 go test -c -o /dev/null
GOOS=windows GOARCH=amd64 go build -v ./...
GOOS=windows GOARCH=amd64 go test -c -o /dev/null
+ GOOS=windows GOARCH=arm64 go build -v ./...
+ GOOS=windows GOARCH=arm64 go test -c -o /dev/null
echo done
devbench:
diff --git a/vendor/modernc.org/libc/capi_windows_arm64.go b/vendor/modernc.org/libc/capi_windows_arm64.go
new file mode 100644
index 00000000..b5c7e1c4
--- /dev/null
+++ b/vendor/modernc.org/libc/capi_windows_arm64.go
@@ -0,0 +1,722 @@
+// Code generated by 'go generate' - DO NOT EDIT.
+
+package libc // import "modernc.org/libc"
+
+var CAPI = map[string]struct{}{
+ "AccessCheck": {},
+ "AddAccessDeniedAce": {},
+ "AddAce": {},
+ "AreFileApisANSI": {},
+ "BuildCommDCBW": {},
+ "CancelSynchronousIo": {},
+ "CharLowerW": {},
+ "ClearCommError": {},
+ "CloseHandle": {},
+ "CopyFileW": {},
+ "CreateDirectoryW": {},
+ "CreateEventA": {},
+ "CreateEventW": {},
+ "CreateFileA": {},
+ "CreateFileMappingA": {},
+ "CreateFileMappingW": {},
+ "CreateFileW": {},
+ "CreateHardLinkW": {},
+ "CreateMutexW": {},
+ "CreatePipe": {},
+ "CreateProcessA": {},
+ "CreateProcessW": {},
+ "CreateThread": {},
+ "CreateWindowExW": {},
+ "DdeAbandonTransaction": {},
+ "DdeAccessData": {},
+ "DdeClientTransaction": {},
+ "DdeConnect": {},
+ "DdeCreateDataHandle": {},
+ "DdeCreateStringHandleW": {},
+ "DdeDisconnect": {},
+ "DdeFreeDataHandle": {},
+ "DdeFreeStringHandle": {},
+ "DdeGetData": {},
+ "DdeGetLastError": {},
+ "DdeInitializeW": {},
+ "DdeNameService": {},
+ "DdeQueryStringW": {},
+ "DdeUnaccessData": {},
+ "DdeUninitialize": {},
+ "DebugBreak": {},
+ "DefWindowProcW": {},
+ "DeleteCriticalSection": {},
+ "DeleteFileA": {},
+ "DeleteFileW": {},
+ "DestroyWindow": {},
+ "DeviceIoControl": {},
+ "DispatchMessageW": {},
+ "DuplicateHandle": {},
+ "EnterCriticalSection": {},
+ "EnumWindows": {},
+ "EqualSid": {},
+ "EscapeCommFunction": {},
+ "ExitProcess": {},
+ "FindClose": {},
+ "FindFirstFileExW": {},
+ "FindFirstFileW": {},
+ "FindNextFileW": {},
+ "FlushFileBuffers": {},
+ "FlushViewOfFile": {},
+ "FormatMessageA": {},
+ "FormatMessageW": {},
+ "FreeLibrary": {},
+ "GetACP": {},
+ "GetAce": {},
+ "GetAclInformation": {},
+ "GetCommModemStatus": {},
+ "GetCommState": {},
+ "GetCommandLineW": {},
+ "GetComputerNameExW": {},
+ "GetComputerNameW": {},
+ "GetConsoleCP": {},
+ "GetConsoleMode": {},
+ "GetConsoleScreenBufferInfo": {},
+ "GetCurrentDirectoryW": {},
+ "GetCurrentProcess": {},
+ "GetCurrentProcessId": {},
+ "GetCurrentThread": {},
+ "GetCurrentThreadId": {},
+ "GetDiskFreeSpaceA": {},
+ "GetDiskFreeSpaceW": {},
+ "GetEnvironmentVariableA": {},
+ "GetEnvironmentVariableW": {},
+ "GetExitCodeProcess": {},
+ "GetExitCodeThread": {},
+ "GetFileAttributesA": {},
+ "GetFileAttributesExW": {},
+ "GetFileAttributesW": {},
+ "GetFileInformationByHandle": {},
+ "GetFileSecurityA": {},
+ "GetFileSecurityW": {},
+ "GetFileSize": {},
+ "GetFileType": {},
+ "GetFullPathNameA": {},
+ "GetFullPathNameW": {},
+ "GetLastError": {},
+ "GetLengthSid": {},
+ "GetLogicalDriveStringsA": {},
+ "GetMessageW": {},
+ "GetModuleFileNameA": {},
+ "GetModuleFileNameW": {},
+ "GetModuleHandleA": {},
+ "GetModuleHandleW": {},
+ "GetNamedSecurityInfoW": {},
+ "GetOverlappedResult": {},
+ "GetPrivateProfileStringA": {},
+ "GetProcAddress": {},
+ "GetProcessHeap": {},
+ "GetProfilesDirectoryW": {},
+ "GetSecurityDescriptorDacl": {},
+ "GetSecurityDescriptorOwner": {},
+ "GetShortPathNameW": {},
+ "GetSidIdentifierAuthority": {},
+ "GetSidLengthRequired": {},
+ "GetSidSubAuthority": {},
+ "GetStdHandle": {},
+ "GetSystemInfo": {},
+ "GetSystemTime": {},
+ "GetSystemTimeAsFileTime": {},
+ "GetTempFileNameW": {},
+ "GetTempPathA": {},
+ "GetTempPathW": {},
+ "GetTickCount": {},
+ "GetTokenInformation": {},
+ "GetUserNameW": {},
+ "GetVersionExA": {},
+ "GetVersionExW": {},
+ "GetVolumeInformationA": {},
+ "GetVolumeInformationW": {},
+ "GetVolumeNameForVolumeMountPointW": {},
+ "GetWindowLongPtrW": {},
+ "GetWindowsDirectoryA": {},
+ "GlobalAddAtomW": {},
+ "GlobalDeleteAtom": {},
+ "GlobalGetAtomNameW": {},
+ "HeapAlloc": {},
+ "HeapCompact": {},
+ "HeapCreate": {},
+ "HeapDestroy": {},
+ "HeapFree": {},
+ "HeapReAlloc": {},
+ "HeapSize": {},
+ "HeapValidate": {},
+ "IN6_ADDR_EQUAL": {},
+ "IN6_IS_ADDR_V4MAPPED": {},
+ "ImpersonateSelf": {},
+ "InitializeAcl": {},
+ "InitializeCriticalSection": {},
+ "InitializeSid": {},
+ "IsDebuggerPresent": {},
+ "IsWindow": {},
+ "KillTimer": {},
+ "LeaveCriticalSection": {},
+ "LoadLibraryA": {},
+ "LoadLibraryExW": {},
+ "LoadLibraryW": {},
+ "LocalFree": {},
+ "LockFile": {},
+ "LockFileEx": {},
+ "MapViewOfFile": {},
+ "MessageBeep": {},
+ "MessageBoxW": {},
+ "MoveFileW": {},
+ "MsgWaitForMultipleObjectsEx": {},
+ "MultiByteToWideChar": {},
+ "NetApiBufferFree": {},
+ "NetGetDCName": {},
+ "NetUserGetInfo": {},
+ "OpenEventA": {},
+ "OpenProcessToken": {},
+ "OpenThreadToken": {},
+ "OutputDebugStringA": {},
+ "OutputDebugStringW": {},
+ "PeekConsoleInputW": {},
+ "PeekMessageW": {},
+ "PeekNamedPipe": {},
+ "PostMessageW": {},
+ "PostQuitMessage": {},
+ "PurgeComm": {},
+ "QueryPerformanceCounter": {},
+ "QueryPerformanceFrequency": {},
+ "RaiseException": {},
+ "ReadConsoleW": {},
+ "ReadFile": {},
+ "RegCloseKey": {},
+ "RegConnectRegistryW": {},
+ "RegCreateKeyExW": {},
+ "RegDeleteKeyW": {},
+ "RegDeleteValueW": {},
+ "RegEnumKeyExW": {},
+ "RegEnumValueW": {},
+ "RegOpenKeyExW": {},
+ "RegQueryValueExW": {},
+ "RegSetValueExW": {},
+ "RegisterClassExW": {},
+ "RegisterClassW": {},
+ "RemoveDirectoryW": {},
+ "ResetEvent": {},
+ "RevertToSelf": {},
+ "RtlGetVersion": {},
+ "SearchPathW": {},
+ "SendMessageTimeoutW": {},
+ "SendMessageW": {},
+ "SetCommState": {},
+ "SetCommTimeouts": {},
+ "SetConsoleCtrlHandler": {},
+ "SetConsoleMode": {},
+ "SetConsoleTextAttribute": {},
+ "SetCurrentDirectoryW": {},
+ "SetEndOfFile": {},
+ "SetErrorMode": {},
+ "SetEvent": {},
+ "SetFileAttributesW": {},
+ "SetFilePointer": {},
+ "SetFileTime": {},
+ "SetHandleInformation": {},
+ "SetNamedSecurityInfoA": {},
+ "SetThreadPriority": {},
+ "SetTimer": {},
+ "SetWindowLongPtrW": {},
+ "SetupComm": {},
+ "Sleep": {},
+ "SleepEx": {},
+ "SystemTimeToFileTime": {},
+ "TerminateThread": {},
+ "TranslateMessage": {},
+ "UnlockFile": {},
+ "UnlockFileEx": {},
+ "UnmapViewOfFile": {},
+ "UnregisterClassW": {},
+ "WSAAsyncSelect": {},
+ "WSAGetLastError": {},
+ "WSAStartup": {},
+ "WaitForInputIdle": {},
+ "WaitForSingleObject": {},
+ "WaitForSingleObjectEx": {},
+ "WideCharToMultiByte": {},
+ "WriteConsoleW": {},
+ "WriteFile": {},
+ "WspiapiFreeAddrInfo": {},
+ "WspiapiGetAddrInfo": {},
+ "WspiapiGetNameInfo": {},
+ "_IO_putc": {},
+ "_InterlockedCompareExchange": {},
+ "_InterlockedExchange": {},
+ "___errno_location": {},
+ "__acrt_iob_func": {},
+ "__assert_fail": {},
+ "__atomic_load_n": {},
+ "__atomic_store_n": {},
+ "__builtin___memcpy_chk": {},
+ "__builtin___memmove_chk": {},
+ "__builtin___memset_chk": {},
+ "__builtin___snprintf_chk": {},
+ "__builtin___sprintf_chk": {},
+ "__builtin___strcat_chk": {},
+ "__builtin___strcpy_chk": {},
+ "__builtin___strncpy_chk": {},
+ "__builtin___vsnprintf_chk": {},
+ "__builtin_abort": {},
+ "__builtin_abs": {},
+ "__builtin_add_overflow": {},
+ "__builtin_add_overflowInt64": {},
+ "__builtin_add_overflowUint32": {},
+ "__builtin_add_overflowUint64": {},
+ "__builtin_bswap16": {},
+ "__builtin_bswap32": {},
+ "__builtin_bswap64": {},
+ "__builtin_bzero": {},
+ "__builtin_clz": {},
+ "__builtin_clzl": {},
+ "__builtin_clzll": {},
+ "__builtin_constant_p_impl": {},
+ "__builtin_copysign": {},
+ "__builtin_copysignf": {},
+ "__builtin_copysignl": {},
+ "__builtin_exit": {},
+ "__builtin_expect": {},
+ "__builtin_fabs": {},
+ "__builtin_fabsf": {},
+ "__builtin_fabsl": {},
+ "__builtin_free": {},
+ "__builtin_getentropy": {},
+ "__builtin_huge_val": {},
+ "__builtin_huge_valf": {},
+ "__builtin_inf": {},
+ "__builtin_inff": {},
+ "__builtin_infl": {},
+ "__builtin_isnan": {},
+ "__builtin_isunordered": {},
+ "__builtin_malloc": {},
+ "__builtin_memcmp": {},
+ "__builtin_memcpy": {},
+ "__builtin_memset": {},
+ "__builtin_mmap": {},
+ "__builtin_mul_overflow": {},
+ "__builtin_mul_overflowInt64": {},
+ "__builtin_mul_overflowUint128": {},
+ "__builtin_mul_overflowUint64": {},
+ "__builtin_nan": {},
+ "__builtin_nanf": {},
+ "__builtin_nanl": {},
+ "__builtin_object_size": {},
+ "__builtin_popcount": {},
+ "__builtin_popcountl": {},
+ "__builtin_prefetch": {},
+ "__builtin_printf": {},
+ "__builtin_snprintf": {},
+ "__builtin_sprintf": {},
+ "__builtin_strchr": {},
+ "__builtin_strcmp": {},
+ "__builtin_strcpy": {},
+ "__builtin_strlen": {},
+ "__builtin_sub_overflow": {},
+ "__builtin_sub_overflowInt64": {},
+ "__builtin_trap": {},
+ "__builtin_unreachable": {},
+ "__ccgo_dmesg": {},
+ "__ccgo_getMutexType": {},
+ "__ccgo_in6addr_anyp": {},
+ "__ccgo_pthreadAttrGetDetachState": {},
+ "__ccgo_pthreadMutexattrGettype": {},
+ "__ccgo_sqlite3_log": {},
+ "__ctype_get_mb_cur_max": {},
+ "__env_rm_add": {},
+ "__errno_location": {},
+ "__imp__environ": {},
+ "__imp__wenviron": {},
+ "__isalnum_l": {},
+ "__isalpha_l": {},
+ "__isdigit_l": {},
+ "__islower_l": {},
+ "__isnan": {},
+ "__isnanf": {},
+ "__isnanl": {},
+ "__isoc99_sscanf": {},
+ "__isprint_l": {},
+ "__isspace_l": {},
+ "__isxdigit_l": {},
+ "__mingw_vfprintf": {},
+ "__mingw_vfscanf": {},
+ "__mingw_vfwprintf": {},
+ "__mingw_vfwscanf": {},
+ "__mingw_vprintf": {},
+ "__mingw_vsnprintf": {},
+ "__mingw_vsnwprintf": {},
+ "__mingw_vsprintf": {},
+ "__mingw_vsscanf": {},
+ "__mingw_vswscanf": {},
+ "__ms_vfscanf": {},
+ "__ms_vfwscanf": {},
+ "__ms_vscanf": {},
+ "__ms_vsnprintf": {},
+ "__ms_vsscanf": {},
+ "__ms_vswscanf": {},
+ "__ms_vwscanf": {},
+ "__putenv": {},
+ "__stdio_common_vfprintf": {},
+ "__stdio_common_vfprintf_p": {},
+ "__stdio_common_vfprintf_s": {},
+ "__stdio_common_vfscanf": {},
+ "__stdio_common_vfwprintf_s": {},
+ "__stdio_common_vfwscanf": {},
+ "__stdio_common_vsnprintf_s": {},
+ "__stdio_common_vsnwprintf_s": {},
+ "__stdio_common_vsprintf": {},
+ "__stdio_common_vsprintf_p": {},
+ "__stdio_common_vsprintf_s": {},
+ "__stdio_common_vsscanf": {},
+ "__stdio_common_vswprintf": {},
+ "__stdio_common_vswprintf_s": {},
+ "__stdio_common_vswscanf": {},
+ "__strchrnul": {},
+ "__sync_add_and_fetch_uint32": {},
+ "__sync_sub_and_fetch_uint32": {},
+ "_access": {},
+ "_assert": {},
+ "_beginthread": {},
+ "_beginthreadex": {},
+ "_byteswap_uint64": {},
+ "_byteswap_ulong": {},
+ "_chmod": {},
+ "_chsize": {},
+ "_commit": {},
+ "_controlfp": {},
+ "_copysign": {},
+ "_endthreadex": {},
+ "_errno": {},
+ "_exit": {},
+ "_fileno": {},
+ "_findclose": {},
+ "_findfirst32": {},
+ "_findfirst64i32": {},
+ "_findnext32": {},
+ "_findnext64i32": {},
+ "_fstat64": {},
+ "_fstati64": {},
+ "_ftime": {},
+ "_ftime64": {},
+ "_gmtime64": {},
+ "_imp___environ": {},
+ "_iob": {},
+ "_isatty": {},
+ "_localtime64": {},
+ "_longjmp": {},
+ "_mkdir": {},
+ "_mktime64": {},
+ "_msize": {},
+ "_obstack_begin": {},
+ "_obstack_newchunk": {},
+ "_pclose": {},
+ "_popen": {},
+ "_putchar": {},
+ "_set_abort_behavior": {},
+ "_setjmp": {},
+ "_setmode": {},
+ "_snprintf": {},
+ "_snwprintf": {},
+ "_stat64": {},
+ "_stati64": {},
+ "_strdup": {},
+ "_stricmp": {},
+ "_strnicmp": {},
+ "_unlink": {},
+ "_vsnwprintf": {},
+ "_wcsicmp": {},
+ "_wcsnicmp": {},
+ "_wgetenv": {},
+ "_wopen": {},
+ "_wputenv": {},
+ "_wtoi": {},
+ "_wunlink": {},
+ "abort": {},
+ "abs": {},
+ "accept": {},
+ "access": {},
+ "acos": {},
+ "acosh": {},
+ "alarm": {},
+ "asin": {},
+ "asinh": {},
+ "atan": {},
+ "atan2": {},
+ "atanh": {},
+ "atexit": {},
+ "atof": {},
+ "atoi": {},
+ "atol": {},
+ "backtrace": {},
+ "backtrace_symbols_fd": {},
+ "bind": {},
+ "bsearch": {},
+ "bzero": {},
+ "calloc": {},
+ "ceil": {},
+ "ceilf": {},
+ "cfsetispeed": {},
+ "cfsetospeed": {},
+ "chdir": {},
+ "chmod": {},
+ "clock_gettime": {},
+ "close": {},
+ "closedir": {},
+ "closesocket": {},
+ "confstr": {},
+ "connect": {},
+ "copysign": {},
+ "copysignf": {},
+ "cos": {},
+ "cosf": {},
+ "cosh": {},
+ "dlclose": {},
+ "dlerror": {},
+ "dlopen": {},
+ "dlsym": {},
+ "dup2": {},
+ "environ": {},
+ "execvp": {},
+ "exit": {},
+ "exp": {},
+ "fabs": {},
+ "fabsf": {},
+ "fabsl": {},
+ "fchmod": {},
+ "fclose": {},
+ "fcntl": {},
+ "fcntl64": {},
+ "fdopen": {},
+ "ferror": {},
+ "fflush": {},
+ "fgetc": {},
+ "fgets": {},
+ "fileno": {},
+ "floor": {},
+ "fmod": {},
+ "fopen": {},
+ "fopen64": {},
+ "fork": {},
+ "fprintf": {},
+ "fputc": {},
+ "fputs": {},
+ "fread": {},
+ "free": {},
+ "frexp": {},
+ "fscanf": {},
+ "fseek": {},
+ "fstat": {},
+ "fstat64": {},
+ "fsync": {},
+ "ftell": {},
+ "ftruncate": {},
+ "ftruncate64": {},
+ "fts64_close": {},
+ "fts64_open": {},
+ "fts64_read": {},
+ "fts_close": {},
+ "fts_read": {},
+ "fwrite": {},
+ "gai_strerror": {},
+ "gai_strerrorA": {},
+ "gai_strerrorW": {},
+ "getc": {},
+ "getcwd": {},
+ "getentropy": {},
+ "getenv": {},
+ "gethostname": {},
+ "getpeername": {},
+ "getpid": {},
+ "getpwuid": {},
+ "getrlimit": {},
+ "getrlimit64": {},
+ "getrusage": {},
+ "getservbyname": {},
+ "getsockname": {},
+ "getsockopt": {},
+ "gettimeofday": {},
+ "gmtime": {},
+ "gmtime_r": {},
+ "htonl": {},
+ "htons": {},
+ "hypot": {},
+ "inet_ntoa": {},
+ "ioctl": {},
+ "ioctlsocket": {},
+ "isalnum": {},
+ "isalpha": {},
+ "isascii": {},
+ "isatty": {},
+ "isdigit": {},
+ "islower": {},
+ "isnan": {},
+ "isnanf": {},
+ "isnanl": {},
+ "isprint": {},
+ "isspace": {},
+ "isxdigit": {},
+ "kill": {},
+ "ldexp": {},
+ "link": {},
+ "listen": {},
+ "localtime": {},
+ "localtime_r": {},
+ "log": {},
+ "log10": {},
+ "longjmp": {},
+ "lseek": {},
+ "lseek64": {},
+ "lstat": {},
+ "lstat64": {},
+ "lstrcmpiA": {},
+ "lstrlenW": {},
+ "malloc": {},
+ "mblen": {},
+ "mbstowcs": {},
+ "mbtowc": {},
+ "memchr": {},
+ "memcmp": {},
+ "memcpy": {},
+ "memmove": {},
+ "memset": {},
+ "mkdir": {},
+ "mkfifo": {},
+ "mknod": {},
+ "mkstemp64": {},
+ "mkstemps": {},
+ "mkstemps64": {},
+ "mktime": {},
+ "mmap": {},
+ "mmap64": {},
+ "modf": {},
+ "mremap": {},
+ "munmap": {},
+ "ntohs": {},
+ "obstack_free": {},
+ "obstack_vprintf": {},
+ "open": {},
+ "open64": {},
+ "opendir": {},
+ "openpty": {},
+ "pclose": {},
+ "perror": {},
+ "pipe": {},
+ "popen": {},
+ "pow": {},
+ "printf": {},
+ "pselect": {},
+ "putc": {},
+ "putchar": {},
+ "putenv": {},
+ "puts": {},
+ "qsort": {},
+ "raise": {},
+ "rand": {},
+ "random": {},
+ "read": {},
+ "readdir": {},
+ "readlink": {},
+ "readv": {},
+ "realloc": {},
+ "reallocarray": {},
+ "realpath": {},
+ "recv": {},
+ "rename": {},
+ "rewind": {},
+ "rindex": {},
+ "rint": {},
+ "rmdir": {},
+ "round": {},
+ "sched_yield": {},
+ "select": {},
+ "send": {},
+ "setbuf": {},
+ "setenv": {},
+ "setjmp": {},
+ "setlocale": {},
+ "setmode": {},
+ "setrlimit": {},
+ "setrlimit64": {},
+ "setsid": {},
+ "setsockopt": {},
+ "setvbuf": {},
+ "shutdown": {},
+ "sigaction": {},
+ "sin": {},
+ "sinf": {},
+ "sinh": {},
+ "sleep": {},
+ "snprintf": {},
+ "socket": {},
+ "sprintf": {},
+ "sqrt": {},
+ "sscanf": {},
+ "stat": {},
+ "stat64": {},
+ "stderr": {},
+ "stdin": {},
+ "stdout": {},
+ "strcasecmp": {},
+ "strcat": {},
+ "strchr": {},
+ "strcmp": {},
+ "strcpy": {},
+ "strcspn": {},
+ "strdup": {},
+ "strerror": {},
+ "strlen": {},
+ "strncmp": {},
+ "strncpy": {},
+ "strpbrk": {},
+ "strrchr": {},
+ "strstr": {},
+ "strtod": {},
+ "strtol": {},
+ "strtoul": {},
+ "symlink": {},
+ "sysconf": {},
+ "system": {},
+ "tan": {},
+ "tanh": {},
+ "tcgetattr": {},
+ "tcsendbreak": {},
+ "tcsetattr": {},
+ "time": {},
+ "timezone": {},
+ "tolower": {},
+ "toupper": {},
+ "trunc": {},
+ "tzset": {},
+ "umask": {},
+ "uname": {},
+ "ungetc": {},
+ "unlink": {},
+ "unsetenv": {},
+ "usleep": {},
+ "utime": {},
+ "utimes": {},
+ "vasprintf": {},
+ "vfprintf": {},
+ "vprintf": {},
+ "vsnprintf": {},
+ "vsprintf": {},
+ "waitpid": {},
+ "wcrtomb": {},
+ "wcschr": {},
+ "wcscmp": {},
+ "wcscpy": {},
+ "wcsicmp": {},
+ "wcslen": {},
+ "wcsncmp": {},
+ "wcsrtombs": {},
+ "wcstombs": {},
+ "wctomb": {},
+ "wcwidth": {},
+ "write": {},
+ "wsprintfA": {},
+ "wsprintfW": {},
+}
diff --git a/vendor/modernc.org/libc/errno/capi_windows_arm64.go b/vendor/modernc.org/libc/errno/capi_windows_arm64.go
new file mode 100644
index 00000000..b2a64d7c
--- /dev/null
+++ b/vendor/modernc.org/libc/errno/capi_windows_arm64.go
@@ -0,0 +1,5 @@
+// Code generated by 'ccgo errno\gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o errno\errno_windows_arm64.go -pkgname errno', DO NOT EDIT.
+
+package errno
+
+var CAPI = map[string]struct{}{}
diff --git a/vendor/modernc.org/libc/errno/errno_windows_arm64.go b/vendor/modernc.org/libc/errno/errno_windows_arm64.go
new file mode 100644
index 00000000..a3e0c40c
--- /dev/null
+++ b/vendor/modernc.org/libc/errno/errno_windows_arm64.go
@@ -0,0 +1,363 @@
+// Code generated by 'ccgo errno\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o errno\errno_windows_arm64.go -pkgname errno', DO NOT EDIT.
+
+package errno
+
+import (
+ "math"
+ "reflect"
+ "sync/atomic"
+ "unsafe"
+)
+
+var _ = math.Pi
+var _ reflect.Kind
+var _ atomic.Value
+var _ unsafe.Pointer
+
+const (
+ DUMMYSTRUCTNAME = 0
+ DUMMYSTRUCTNAME1 = 0
+ DUMMYSTRUCTNAME2 = 0
+ DUMMYSTRUCTNAME3 = 0
+ DUMMYSTRUCTNAME4 = 0
+ DUMMYSTRUCTNAME5 = 0
+ DUMMYUNIONNAME = 0
+ DUMMYUNIONNAME1 = 0
+ DUMMYUNIONNAME2 = 0
+ DUMMYUNIONNAME3 = 0
+ DUMMYUNIONNAME4 = 0
+ DUMMYUNIONNAME5 = 0
+ DUMMYUNIONNAME6 = 0
+ DUMMYUNIONNAME7 = 0
+ DUMMYUNIONNAME8 = 0
+ DUMMYUNIONNAME9 = 0
+ E2BIG = 7
+ EACCES = 13
+ EADDRINUSE = 100
+ EADDRNOTAVAIL = 101
+ EAFNOSUPPORT = 102
+ EAGAIN = 11
+ EALREADY = 103
+ EBADF = 9
+ EBADMSG = 104
+ EBUSY = 16
+ ECANCELED = 105
+ ECHILD = 10
+ ECONNABORTED = 106
+ ECONNREFUSED = 107
+ ECONNRESET = 108
+ EDEADLK = 36
+ EDEADLOCK = 36
+ EDESTADDRREQ = 109
+ EDOM = 33
+ EEXIST = 17
+ EFAULT = 14
+ EFBIG = 27
+ EHOSTUNREACH = 110
+ EIDRM = 111
+ EILSEQ = 42
+ EINPROGRESS = 112
+ EINTR = 4
+ EINVAL = 22
+ EIO = 5
+ EISCONN = 113
+ EISDIR = 21
+ ELOOP = 114
+ EMFILE = 24
+ EMLINK = 31
+ EMSGSIZE = 115
+ ENAMETOOLONG = 38
+ ENETDOWN = 116
+ ENETRESET = 117
+ ENETUNREACH = 118
+ ENFILE = 23
+ ENOBUFS = 119
+ ENODATA = 120
+ ENODEV = 19
+ ENOENT = 2
+ ENOEXEC = 8
+ ENOFILE = 2
+ ENOLCK = 39
+ ENOLINK = 121
+ ENOMEM = 12
+ ENOMSG = 122
+ ENOPROTOOPT = 123
+ ENOSPC = 28
+ ENOSR = 124
+ ENOSTR = 125
+ ENOSYS = 40
+ ENOTCONN = 126
+ ENOTDIR = 20
+ ENOTEMPTY = 41
+ ENOTRECOVERABLE = 127
+ ENOTSOCK = 128
+ ENOTSUP = 129
+ ENOTTY = 25
+ ENXIO = 6
+ EOPNOTSUPP = 130
+ EOVERFLOW = 132
+ EOWNERDEAD = 133
+ EPERM = 1
+ EPIPE = 32
+ EPROTO = 134
+ EPROTONOSUPPORT = 135
+ EPROTOTYPE = 136
+ ERANGE = 34
+ EROFS = 30
+ ESPIPE = 29
+ ESRCH = 3
+ ETIME = 137
+ ETIMEDOUT = 138
+ ETXTBSY = 139
+ EWOULDBLOCK = 140
+ EXDEV = 18
+ MINGW_DDK_H = 0
+ MINGW_HAS_DDK_H = 1
+ MINGW_HAS_SECURE_API = 1
+ MINGW_SDK_INIT = 0
+ STRUNCATE = 80
+ UNALIGNED = 0
+ USE___UUIDOF = 0
+ WIN32 = 1
+ WIN64 = 1
+ WINNT = 1
+ X_AGLOBAL = 0
+ X_ANONYMOUS_STRUCT = 0
+ X_ANONYMOUS_UNION = 0
+ X_ARGMAX = 100
+ X_ARM64_ = 1
+ X_CONST_RETURN = 0
+ X_CRTNOALIAS = 0
+ X_CRTRESTRICT = 0
+ X_CRT_ALTERNATIVE_IMPORTED = 0
+ X_CRT_ERRNO_DEFINED = 0
+ X_CRT_MANAGED_HEAP_DEPRECATE = 0
+ X_CRT_PACKING = 8
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
+ X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0
+ X_DLL = 0
+ X_ERRCODE_DEFINED = 0
+ X_FILE_OFFSET_BITS = 64
+ X_INC_CORECRT = 0
+ X_INC_CRTDEFS = 0
+ X_INC_CRTDEFS_MACRO = 0
+ X_INC_ERRNO = 0
+ X_INC_MINGW_SECAPI = 0
+ X_INC_VADEFS = 0
+ X_INC__MINGW_H = 0
+ X_INT128_DEFINED = 0
+ X_INTPTR_T_DEFINED = 0
+ X_MT = 0
+ X_M_ARM64 = 1
+ X_PGLOBAL = 0
+ X_PTRDIFF_T_ = 0
+ X_PTRDIFF_T_DEFINED = 0
+ X_RSIZE_T_DEFINED = 0
+ X_SECURECRT_ERRCODE_VALUES_DEFINED = 0
+ X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD
+ X_SIZE_T_DEFINED = 0
+ X_SSIZE_T_DEFINED = 0
+ X_TAGLC_ID_DEFINED = 0
+ X_THREADLOCALEINFO = 0
+ X_TIME32_T_DEFINED = 0
+ X_TIME64_T_DEFINED = 0
+ X_TIME_T_DEFINED = 0
+ X_UCRT = 0
+ X_UINTPTR_T_DEFINED = 0
+ X_VA_LIST_DEFINED = 0
+ X_W64 = 0
+ X_WCHAR_T_DEFINED = 0
+ X_WCTYPE_T_DEFINED = 0
+ X_WIN32 = 1
+ X_WIN32_WINNT = 0x601
+ X_WIN64 = 1
+ X_WINT_T = 0
+)
+
+type Ptrdiff_t = int64 /* <builtin>:3:26 */
+
+type Size_t = uint64 /* <builtin>:9:23 */
+
+type Wchar_t = uint16 /* <builtin>:15:24 */
+
+type X__int128_t = struct {
+ Flo int64
+ Fhi int64
+} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
+type X__uint128_t = struct {
+ Flo uint64
+ Fhi uint64
+} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
+
+type X__builtin_va_list = uintptr /* <builtin>:46:14 */
+type X__float128 = float64 /* <builtin>:47:21 */
+
+type Va_list = X__builtin_va_list /* <builtin>:50:27 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// This macro holds an monotonic increasing value, which indicates
+// a specific fix/patch is present on trunk. This value isn't related to
+// minor/major version-macros. It is increased on demand, if a big
+// fix was applied to trunk. This macro gets just increased on trunk. For
+// other branches its value won't be modified.
+
+// mingw.org's version macros: these make gcc to define
+// MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
+// and the __mingwthr_key_dtor() function from the MinGW
+// CRT in its private gthr-win32.h header.
+
+// Set VC specific compiler target macros.
+
+// MS does not prefix symbols by underscores for 64-bit.
+// As we have to support older gcc version, which are using underscores
+// as symbol prefix for x64, we have to check here for the user label
+// prefix defined by gcc.
+
+// Special case nameless struct/union.
+
+// MinGW-w64 has some additional C99 printf/scanf feature support.
+// So we add some helper macros to ease recognition of them.
+
+// If _FORTIFY_SOURCE is enabled, some inline functions may use
+// __builtin_va_arg_pack(). GCC may report an error if the address
+// of such a function is used. Set _FORTIFY_VA_ARG=0 in this case.
+
+// Enable workaround for ABI incompatibility on affected platforms
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
+// Templates won't work in C, will break if secure API is not enabled, disabled
+
+// https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
+// fallback on default implementation if we can't know the size of the destination
+
+// Include _cygwin.h if we're building a Cygwin application.
+
+// Target specific macro replacement for type "long". In the Windows API,
+// the type long is always 32 bit, even if the target is 64 bit (LLP64).
+// On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right
+// sized definitions and declarations, all usage of type long in the Windows
+// headers have to be replaced by the below defined macro __LONG32.
+
+// C/C++ specific language defines.
+
+// Note the extern. This is needed to work around GCC's
+// limitations in handling dllimport attribute.
+
+// Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
+// variadiac macro facility, because variadic macros cause syntax
+// errors with --traditional-cpp.
+
+// High byte is the major version, low byte is the minor.
+
+// Allow both 0x1400 and 0xE00 to identify UCRT
+
+// ===-------- vadefs.h ---------------------------------------------------===
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===-----------------------------------------------------------------------===
+
+// Only include this if we are aiming for MSVC compatibility.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// for backward compatibility
+
+type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
+
+type Ssize_t = int64 /* corecrt.h:45:35 */
+
+type Rsize_t = Size_t /* corecrt.h:52:16 */
+
+type Intptr_t = int64 /* corecrt.h:62:35 */
+
+type Uintptr_t = uint64 /* corecrt.h:75:44 */
+
+type Wint_t = uint16 /* corecrt.h:106:24 */
+type Wctype_t = uint16 /* corecrt.h:107:24 */
+
+type Errno_t = int32 /* corecrt.h:113:13 */
+
+type X__time32_t = int32 /* corecrt.h:118:14 */
+
+type X__time64_t = int64 /* corecrt.h:123:35 */
+
+type Time_t = X__time64_t /* corecrt.h:138:20 */
+
+type Threadlocaleinfostruct = struct {
+ F_locale_pctype uintptr
+ F_locale_mb_cur_max int32
+ F_locale_lc_codepage uint32
+} /* corecrt.h:430:1 */
+
+type Pthreadlocinfo = uintptr /* corecrt.h:432:39 */
+type Pthreadmbcinfo = uintptr /* corecrt.h:433:36 */
+
+type Localeinfo_struct = struct {
+ Flocinfo Pthreadlocinfo
+ Fmbcinfo Pthreadmbcinfo
+} /* corecrt.h:436:9 */
+
+type X_locale_tstruct = Localeinfo_struct /* corecrt.h:439:3 */
+type X_locale_t = uintptr /* corecrt.h:439:19 */
+
+type TagLC_ID = struct {
+ FwLanguage uint16
+ FwCountry uint16
+ FwCodePage uint16
+} /* corecrt.h:443:9 */
+
+type LC_ID = TagLC_ID /* corecrt.h:447:3 */
+type LPLC_ID = uintptr /* corecrt.h:447:9 */
+
+type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:482:3 */
+
+// Posix thread extensions.
+
+// Extension defined as by report VC 10+ defines error-numbers.
+
+// Defined as WSAETIMEDOUT.
+
+var _ int8 /* gen.c:2:13: */
diff --git a/vendor/modernc.org/libc/fcntl/capi_windows_arm64.go b/vendor/modernc.org/libc/fcntl/capi_windows_arm64.go
new file mode 100644
index 00000000..a9efb24d
--- /dev/null
+++ b/vendor/modernc.org/libc/fcntl/capi_windows_arm64.go
@@ -0,0 +1,5 @@
+// Code generated by 'ccgo fcntl\gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o fcntl\fcntl_windows_arm64.go -pkgname fcntl', DO NOT EDIT.
+
+package fcntl
+
+var CAPI = map[string]struct{}{}
diff --git a/vendor/modernc.org/libc/fcntl/fcntl_windows_arm64.go b/vendor/modernc.org/libc/fcntl/fcntl_windows_arm64.go
new file mode 100644
index 00000000..1cf256b0
--- /dev/null
+++ b/vendor/modernc.org/libc/fcntl/fcntl_windows_arm64.go
@@ -0,0 +1,424 @@
+// Code generated by 'ccgo fcntl\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o fcntl\fcntl_windows_arm64.go -pkgname fcntl', DO NOT EDIT.
+
+package fcntl
+
+import (
+ "math"
+ "reflect"
+ "sync/atomic"
+ "unsafe"
+)
+
+var _ = math.Pi
+var _ reflect.Kind
+var _ atomic.Value
+var _ unsafe.Pointer
+
+const (
+ DUMMYSTRUCTNAME = 0
+ DUMMYSTRUCTNAME1 = 0
+ DUMMYSTRUCTNAME2 = 0
+ DUMMYSTRUCTNAME3 = 0
+ DUMMYSTRUCTNAME4 = 0
+ DUMMYSTRUCTNAME5 = 0
+ DUMMYUNIONNAME = 0
+ DUMMYUNIONNAME1 = 0
+ DUMMYUNIONNAME2 = 0
+ DUMMYUNIONNAME3 = 0
+ DUMMYUNIONNAME4 = 0
+ DUMMYUNIONNAME5 = 0
+ DUMMYUNIONNAME6 = 0
+ DUMMYUNIONNAME7 = 0
+ DUMMYUNIONNAME8 = 0
+ DUMMYUNIONNAME9 = 0
+ F_OK = 0
+ MINGW_DDK_H = 0
+ MINGW_HAS_DDK_H = 1
+ MINGW_HAS_SECURE_API = 1
+ MINGW_SDK_INIT = 0
+ O_ACCMODE = 3
+ O_APPEND = 8
+ O_BINARY = 32768
+ O_CREAT = 256
+ O_EXCL = 1024
+ O_NOINHERIT = 128
+ O_RANDOM = 16
+ O_RAW = 32768
+ O_RDONLY = 0
+ O_RDWR = 2
+ O_SEQUENTIAL = 32
+ O_TEMPORARY = 64
+ O_TEXT = 16384
+ O_TRUNC = 512
+ O_WRONLY = 1
+ R_OK = 4
+ UNALIGNED = 0
+ USE___UUIDOF = 0
+ WIN32 = 1
+ WIN64 = 1
+ WINNT = 1
+ W_OK = 2
+ X_OK = 1
+ X_AGLOBAL = 0
+ X_ANONYMOUS_STRUCT = 0
+ X_ANONYMOUS_UNION = 0
+ X_ARGMAX = 100
+ X_ARM64_ = 1
+ X_A_ARCH = 0x20
+ X_A_HIDDEN = 0x02
+ X_A_NORMAL = 0x00
+ X_A_RDONLY = 0x01
+ X_A_SUBDIR = 0x10
+ X_A_SYSTEM = 0x04
+ X_CONST_RETURN = 0
+ X_CRTNOALIAS = 0
+ X_CRTRESTRICT = 0
+ X_CRT_ALTERNATIVE_IMPORTED = 0
+ X_CRT_DIRECTORY_DEFINED = 0
+ X_CRT_MANAGED_HEAP_DEPRECATE = 0
+ X_CRT_MEMORY_DEFINED = 0
+ X_CRT_PACKING = 8
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
+ X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0
+ X_DLL = 0
+ X_ERRCODE_DEFINED = 0
+ X_FILE_OFFSET_BITS = 64
+ X_FILE_OFFSET_BITS_SET_LSEEK = 0
+ X_FILE_OFFSET_BITS_SET_OFFT = 0
+ X_FINDDATA_T_DEFINED = 0
+ X_FSIZE_T_DEFINED = 0
+ X_INC_CORECRT = 0
+ X_INC_CRTDEFS = 0
+ X_INC_CRTDEFS_MACRO = 0
+ X_INC_FCNTL = 0
+ X_INC_MINGW_SECAPI = 0
+ X_INC_STRING = 0
+ X_INC_STRING_S = 0
+ X_INC_VADEFS = 0
+ X_INC__MINGW_H = 0
+ X_INT128_DEFINED = 0
+ X_INTPTR_T_DEFINED = 0
+ X_IO_H_ = 0
+ X_MT = 0
+ X_M_ARM64 = 1
+ X_NLSCMPERROR = 2147483647
+ X_NLSCMP_DEFINED = 0
+ X_OFF64_T_DEFINED = 0
+ X_OFF_T_ = 0
+ X_OFF_T_DEFINED = 0
+ X_O_ACCMODE = 3
+ X_O_APPEND = 0x0008
+ X_O_BINARY = 0x8000
+ X_O_CREAT = 0x0100
+ X_O_EXCL = 0x0400
+ X_O_NOINHERIT = 0x0080
+ X_O_RANDOM = 0x0010
+ X_O_RAW = 32768
+ X_O_RDONLY = 0x0000
+ X_O_RDWR = 0x0002
+ X_O_SEQUENTIAL = 0x0020
+ X_O_SHORT_LIVED = 0x1000
+ X_O_TEMPORARY = 0x0040
+ X_O_TEXT = 0x4000
+ X_O_TRUNC = 0x0200
+ X_O_U16TEXT = 0x20000
+ X_O_U8TEXT = 0x40000
+ X_O_WRONLY = 0x0001
+ X_O_WTEXT = 0x10000
+ X_PGLOBAL = 0
+ X_PTRDIFF_T_ = 0
+ X_PTRDIFF_T_DEFINED = 0
+ X_RSIZE_T_DEFINED = 0
+ X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD
+ X_SIZE_T_DEFINED = 0
+ X_SSIZE_T_DEFINED = 0
+ X_TAGLC_ID_DEFINED = 0
+ X_THREADLOCALEINFO = 0
+ X_TIME32_T_DEFINED = 0
+ X_TIME64_T_DEFINED = 0
+ X_TIME_T_DEFINED = 0
+ X_UCRT = 0
+ X_UINTPTR_T_DEFINED = 0
+ X_VA_LIST_DEFINED = 0
+ X_W64 = 0
+ X_WCHAR_T_DEFINED = 0
+ X_WCTYPE_T_DEFINED = 0
+ X_WConst_return = 0
+ X_WFINDDATA_T_DEFINED = 0
+ X_WIN32 = 1
+ X_WIN32_WINNT = 0x601
+ X_WIN64 = 1
+ X_WINT_T = 0
+ X_WIO_DEFINED = 0
+ X_WSTRING_DEFINED = 0
+ X_WSTRING_S_DEFINED = 0
+)
+
+type Ptrdiff_t = int64 /* <builtin>:3:26 */
+
+type Size_t = uint64 /* <builtin>:9:23 */
+
+type Wchar_t = uint16 /* <builtin>:15:24 */
+
+type X__int128_t = struct {
+ Flo int64
+ Fhi int64
+} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
+type X__uint128_t = struct {
+ Flo uint64
+ Fhi uint64
+} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
+
+type X__builtin_va_list = uintptr /* <builtin>:46:14 */
+type X__float128 = float64 /* <builtin>:47:21 */
+
+type Va_list = X__builtin_va_list /* <builtin>:50:27 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// This macro holds an monotonic increasing value, which indicates
+// a specific fix/patch is present on trunk. This value isn't related to
+// minor/major version-macros. It is increased on demand, if a big
+// fix was applied to trunk. This macro gets just increased on trunk. For
+// other branches its value won't be modified.
+
+// mingw.org's version macros: these make gcc to define
+// MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
+// and the __mingwthr_key_dtor() function from the MinGW
+// CRT in its private gthr-win32.h header.
+
+// Set VC specific compiler target macros.
+
+// MS does not prefix symbols by underscores for 64-bit.
+// As we have to support older gcc version, which are using underscores
+// as symbol prefix for x64, we have to check here for the user label
+// prefix defined by gcc.
+
+// Special case nameless struct/union.
+
+// MinGW-w64 has some additional C99 printf/scanf feature support.
+// So we add some helper macros to ease recognition of them.
+
+// If _FORTIFY_SOURCE is enabled, some inline functions may use
+// __builtin_va_arg_pack(). GCC may report an error if the address
+// of such a function is used. Set _FORTIFY_VA_ARG=0 in this case.
+
+// Enable workaround for ABI incompatibility on affected platforms
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
+// Templates won't work in C, will break if secure API is not enabled, disabled
+
+// https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
+// fallback on default implementation if we can't know the size of the destination
+
+// Include _cygwin.h if we're building a Cygwin application.
+
+// Target specific macro replacement for type "long". In the Windows API,
+// the type long is always 32 bit, even if the target is 64 bit (LLP64).
+// On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right
+// sized definitions and declarations, all usage of type long in the Windows
+// headers have to be replaced by the below defined macro __LONG32.
+
+// C/C++ specific language defines.
+
+// Note the extern. This is needed to work around GCC's
+// limitations in handling dllimport attribute.
+
+// Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
+// variadiac macro facility, because variadic macros cause syntax
+// errors with --traditional-cpp.
+
+// High byte is the major version, low byte is the minor.
+
+// Allow both 0x1400 and 0xE00 to identify UCRT
+
+// ===-------- vadefs.h ---------------------------------------------------===
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===-----------------------------------------------------------------------===
+
+// Only include this if we are aiming for MSVC compatibility.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// for backward compatibility
+
+type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
+
+type Ssize_t = int64 /* corecrt.h:45:35 */
+
+type Rsize_t = Size_t /* corecrt.h:52:16 */
+
+type Intptr_t = int64 /* corecrt.h:62:35 */
+
+type Uintptr_t = uint64 /* corecrt.h:75:44 */
+
+type Wint_t = uint16 /* corecrt.h:106:24 */
+type Wctype_t = uint16 /* corecrt.h:107:24 */
+
+type Errno_t = int32 /* corecrt.h:113:13 */
+
+type X__time32_t = int32 /* corecrt.h:118:14 */
+
+type X__time64_t = int64 /* corecrt.h:123:35 */
+
+type Time_t = X__time64_t /* corecrt.h:138:20 */
+
+type Threadlocaleinfostruct = struct {
+ F_locale_pctype uintptr
+ F_locale_mb_cur_max int32
+ F_locale_lc_codepage uint32
+} /* corecrt.h:430:1 */
+
+type Pthreadlocinfo = uintptr /* corecrt.h:432:39 */
+type Pthreadmbcinfo = uintptr /* corecrt.h:433:36 */
+
+type Localeinfo_struct = struct {
+ Flocinfo Pthreadlocinfo
+ Fmbcinfo Pthreadmbcinfo
+} /* corecrt.h:436:9 */
+
+type X_locale_tstruct = Localeinfo_struct /* corecrt.h:439:3 */
+type X_locale_t = uintptr /* corecrt.h:439:19 */
+
+type TagLC_ID = struct {
+ FwLanguage uint16
+ FwCountry uint16
+ FwCodePage uint16
+} /* corecrt.h:443:9 */
+
+type LC_ID = TagLC_ID /* corecrt.h:447:3 */
+type LPLC_ID = uintptr /* corecrt.h:447:9 */
+
+type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:482:3 */
+type X_fsize_t = uint32 /* io.h:29:25 */
+
+type X_finddata32_t = struct {
+ Fattrib uint32
+ Ftime_create X__time32_t
+ Ftime_access X__time32_t
+ Ftime_write X__time32_t
+ Fsize X_fsize_t
+ Fname [260]int8
+} /* io.h:35:3 */
+
+type X_finddata32i64_t = struct {
+ Fattrib uint32
+ Ftime_create X__time32_t
+ Ftime_access X__time32_t
+ Ftime_write X__time32_t
+ Fsize int64
+ Fname [260]int8
+ F__ccgo_pad1 [4]byte
+} /* io.h:44:3 */
+
+type X_finddata64i32_t = struct {
+ Fattrib uint32
+ F__ccgo_pad1 [4]byte
+ Ftime_create X__time64_t
+ Ftime_access X__time64_t
+ Ftime_write X__time64_t
+ Fsize X_fsize_t
+ Fname [260]int8
+} /* io.h:53:3 */
+
+type X__finddata64_t = struct {
+ Fattrib uint32
+ F__ccgo_pad1 [4]byte
+ Ftime_create X__time64_t
+ Ftime_access X__time64_t
+ Ftime_write X__time64_t
+ Fsize int64
+ Fname [260]int8
+ F__ccgo_pad2 [4]byte
+} /* io.h:62:3 */
+
+type X_wfinddata32_t = struct {
+ Fattrib uint32
+ Ftime_create X__time32_t
+ Ftime_access X__time32_t
+ Ftime_write X__time32_t
+ Fsize X_fsize_t
+ Fname [260]Wchar_t
+} /* io.h:94:3 */
+
+type X_wfinddata32i64_t = struct {
+ Fattrib uint32
+ Ftime_create X__time32_t
+ Ftime_access X__time32_t
+ Ftime_write X__time32_t
+ Fsize int64
+ Fname [260]Wchar_t
+} /* io.h:103:3 */
+
+type X_wfinddata64i32_t = struct {
+ Fattrib uint32
+ F__ccgo_pad1 [4]byte
+ Ftime_create X__time64_t
+ Ftime_access X__time64_t
+ Ftime_write X__time64_t
+ Fsize X_fsize_t
+ Fname [260]Wchar_t
+ F__ccgo_pad2 [4]byte
+} /* io.h:112:3 */
+
+type X_wfinddata64_t = struct {
+ Fattrib uint32
+ F__ccgo_pad1 [4]byte
+ Ftime_create X__time64_t
+ Ftime_access X__time64_t
+ Ftime_write X__time64_t
+ Fsize int64
+ Fname [260]Wchar_t
+} /* io.h:121:3 */
+
+type X_off_t = int32 /* _mingw_off_t.h:5:16 */
+type Off32_t = int32 /* _mingw_off_t.h:7:16 */
+
+type X_off64_t = int64 /* _mingw_off_t.h:13:39 */
+type Off64_t = int64 /* _mingw_off_t.h:15:39 */
+
+type Off_t = Off64_t /* _mingw_off_t.h:24:17 */
+
+var _ int8 /* gen.c:2:13: */
diff --git a/vendor/modernc.org/libc/libc_windows.go b/vendor/modernc.org/libc/libc_windows.go
index 2c5012ca..6a6e81f9 100644
--- a/vendor/modernc.org/libc/libc_windows.go
+++ b/vendor/modernc.org/libc/libc_windows.go
@@ -5874,3 +5874,19 @@ func bootWinEnviron(t *TLS) {
}
func Xfabsl(t *TLS, x float64) float64 { return math.Abs(x) }
+
+func X__stdio_common_vfprintf(t *TLS, args ...interface{}) int32 { panic("TODO") }
+func X__stdio_common_vfprintf_p(t *TLS, args ...interface{}) int32 { panic("TODO") }
+func X__stdio_common_vfprintf_s(t *TLS, args ...interface{}) int32 { panic("TODO") }
+func X__stdio_common_vfscanf(t *TLS, args ...interface{}) int32 { panic("TODO") }
+func X__stdio_common_vfwprintf_s(t *TLS, args ...interface{}) int32 { panic("TODO") }
+func X__stdio_common_vfwscanf(t *TLS, args ...interface{}) int32 { panic("TODO") }
+func X__stdio_common_vsnprintf_s(t *TLS, args ...interface{}) int32 { panic("TODO") }
+func X__stdio_common_vsnwprintf_s(t *TLS, args ...interface{}) int32 { panic("TODO") }
+func X__stdio_common_vsprintf(t *TLS, args ...interface{}) int32 { panic("TODO") }
+func X__stdio_common_vsprintf_p(t *TLS, args ...interface{}) int32 { panic("TODO") }
+func X__stdio_common_vsprintf_s(t *TLS, args ...interface{}) int32 { panic("TODO") }
+func X__stdio_common_vsscanf(t *TLS, args ...interface{}) int32 { panic("TODO") }
+func X__stdio_common_vswprintf(t *TLS, args ...interface{}) int32 { panic("TODO") }
+func X__stdio_common_vswprintf_s(t *TLS, args ...interface{}) int32 { panic("TODO") }
+func X__stdio_common_vswscanf(t *TLS, args ...interface{}) int32 { panic("TODO") }
diff --git a/vendor/modernc.org/libc/libc_windows_arm64.go b/vendor/modernc.org/libc/libc_windows_arm64.go
new file mode 100644
index 00000000..10cdf904
--- /dev/null
+++ b/vendor/modernc.org/libc/libc_windows_arm64.go
@@ -0,0 +1,513 @@
+// Copyright 2020 The Libc Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+package libc // import "modernc.org/libc"
+
+import (
+ "modernc.org/libc/errno"
+ "modernc.org/libc/sys/types"
+ "os"
+ "strings"
+ "syscall"
+ "unsafe"
+)
+
+// int sigaction(int signum, const struct sigaction *act, struct sigaction *oldact);
+func Xsigaction(t *TLS, signum int32, act, oldact uintptr) int32 {
+ panic(todo(""))
+ // musl/arch/x86_64/ksigaction.h
+ //
+ // struct k_sigaction {
+ // void (*handler)(int);
+ // unsigned long flags;
+ // void (*restorer)(void);
+ // unsigned mask[2];
+ // };
+ // type k_sigaction struct {
+ // handler uintptr
+ // flags ulong
+ // restorer uintptr
+ // mask [2]uint32
+ // }
+
+ // var kact, koldact uintptr
+ // if act != 0 {
+ // kact = t.Alloc(int(unsafe.Sizeof(k_sigaction{})))
+ // defer Xfree(t, kact)
+ // *(*k_sigaction)(unsafe.Pointer(kact)) = k_sigaction{
+ // handler: (*signal.Sigaction)(unsafe.Pointer(act)).F__sigaction_handler.Fsa_handler,
+ // flags: ulong((*signal.Sigaction)(unsafe.Pointer(act)).Fsa_flags),
+ // restorer: (*signal.Sigaction)(unsafe.Pointer(act)).Fsa_restorer,
+ // }
+ // Xmemcpy(t, kact+unsafe.Offsetof(k_sigaction{}.mask), act+unsafe.Offsetof(signal.Sigaction{}.Fsa_mask), types.Size_t(unsafe.Sizeof(k_sigaction{}.mask)))
+ // }
+ // if oldact != 0 {
+ // panic(todo(""))
+ // }
+
+ // if _, _, err := unix.Syscall6(unix.SYS_RT_SIGACTION, uintptr(signal.SIGABRT), kact, koldact, unsafe.Sizeof(k_sigaction{}.mask), 0, 0); err != 0 {
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // if oldact != 0 {
+ // panic(todo(""))
+ // }
+
+ // return 0
+}
+
+// int fcntl(int fd, int cmd, ... /* arg */ );
+func Xfcntl64(t *TLS, fd, cmd int32, args uintptr) int32 {
+ panic(todo(""))
+ // var arg uintptr
+ // if args != 0 {
+ // arg = *(*uintptr)(unsafe.Pointer(args))
+ // }
+ // n, _, err := unix.Syscall(unix.SYS_FCNTL, uintptr(fd), uintptr(cmd), arg)
+ // if err != 0 {
+ // if dmesgs {
+ // dmesg("%v: fd %v cmd %v", origin(1), fcntlCmdStr(fd), cmd)
+ // }
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // if dmesgs {
+ // dmesg("%v: %d %s %#x: %d", origin(1), fd, fcntlCmdStr(cmd), arg, n)
+ // }
+ // return int32(n)
+}
+
+// int lstat(const char *pathname, struct stat *statbuf);
+func Xlstat64(t *TLS, pathname, statbuf uintptr) int32 {
+ panic(todo(""))
+ // if _, _, err := unix.Syscall(unix.SYS_LSTAT, pathname, statbuf, 0); err != 0 {
+ // if dmesgs {
+ // dmesg("%v: %q: %v", origin(1), GoString(pathname), err)
+ // }
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // if dmesgs {
+ // dmesg("%v: %q: ok", origin(1), GoString(pathname))
+ // }
+ // return 0
+}
+
+// int stat(const char *pathname, struct stat *statbuf);
+func Xstat64(t *TLS, pathname, statbuf uintptr) int32 {
+ panic(todo(""))
+ // if _, _, err := unix.Syscall(unix.SYS_STAT, pathname, statbuf, 0); err != 0 {
+ // if dmesgs {
+ // dmesg("%v: %q: %v", origin(1), GoString(pathname), err)
+ // }
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // if dmesgs {
+ // dmesg("%v: %q: ok", origin(1), GoString(pathname))
+ // }
+ // return 0
+}
+
+// int fstat(int fd, struct stat *statbuf);
+func Xfstat64(t *TLS, fd int32, statbuf uintptr) int32 {
+ panic(todo(""))
+ // if _, _, err := unix.Syscall(unix.SYS_FSTAT, uintptr(fd), statbuf, 0); err != 0 {
+ // if dmesgs {
+ // dmesg("%v: fd %d: %v", origin(1), fd, err)
+ // }
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // if dmesgs {
+ // dmesg("%v: %d size %#x: ok\n%+v", origin(1), fd, (*stat.Stat)(unsafe.Pointer(statbuf)).Fst_size, (*stat.Stat)(unsafe.Pointer(statbuf)))
+ // }
+ // return 0
+}
+
+func Xmmap(t *TLS, addr uintptr, length types.Size_t, prot, flags, fd int32, offset types.Off_t) uintptr {
+ return Xmmap64(t, addr, length, prot, flags, fd, offset)
+}
+
+// void *mmap(void *addr, size_t length, int prot, int flags, int fd, off_t offset);
+func Xmmap64(t *TLS, addr uintptr, length types.Size_t, prot, flags, fd int32, offset types.Off_t) uintptr {
+ panic(todo(""))
+ // data, _, err := unix.Syscall6(unix.SYS_MMAP, addr, uintptr(length), uintptr(prot), uintptr(flags), uintptr(fd), uintptr(offset))
+ // if err != 0 {
+ // if dmesgs {
+ // dmesg("%v: %v", origin(1), err)
+ // }
+ // t.setErrno(err)
+ // return ^uintptr(0) // (void*)-1
+ // }
+
+ // if dmesgs {
+ // dmesg("%v: %#x", origin(1), data)
+ // }
+ // return data
+}
+
+// void *mremap(void *old_address, size_t old_size, size_t new_size, int flags, ... /* void *new_address */);
+func Xmremap(t *TLS, old_address uintptr, old_size, new_size types.Size_t, flags int32, args uintptr) uintptr {
+ panic(todo(""))
+ // var arg uintptr
+ // if args != 0 {
+ // arg = *(*uintptr)(unsafe.Pointer(args))
+ // }
+ // data, _, err := unix.Syscall6(unix.SYS_MREMAP, old_address, uintptr(old_size), uintptr(new_size), uintptr(flags), arg, 0)
+ // if err != 0 {
+ // if dmesgs {
+ // dmesg("%v: %v", origin(1), err)
+ // }
+ // t.setErrno(err)
+ // return ^uintptr(0) // (void*)-1
+ // }
+
+ // if dmesgs {
+ // dmesg("%v: %#x", origin(1), data)
+ // }
+ // return data
+}
+
+// int ftruncate(int fd, off_t length);
+func Xftruncate64(t *TLS, fd int32, length types.Off_t) int32 {
+ panic(todo(""))
+ // if _, _, err := unix.Syscall(unix.SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0); err != 0 {
+ // if dmesgs {
+ // dmesg("%v: fd %d: %v", origin(1), fd, err)
+ // }
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // if dmesgs {
+ // dmesg("%v: %d %#x: ok", origin(1), fd, length)
+ // }
+ // return 0
+}
+
+// off64_t lseek64(int fd, off64_t offset, int whence);
+func Xlseek64(t *TLS, fd int32, offset types.Off_t, whence int32) types.Off_t {
+
+ f, ok := fdToFile(fd)
+ if !ok {
+ t.setErrno(errno.EBADF)
+ return -1
+ }
+
+ n, err := syscall.Seek(f.Handle, offset, int(whence))
+ if err != nil {
+ if dmesgs {
+ dmesg("%v: fd %v, off %#x, whence %v: %v", origin(1), f._fd, offset, whenceStr(whence), n)
+ }
+ t.setErrno(err)
+ return -1
+ }
+
+ if dmesgs {
+ dmesg("%v: fd %v, off %#x, whence %v: ok", origin(1), f._fd, offset, whenceStr(whence))
+ }
+ return n
+}
+
+// int utime(const char *filename, const struct utimbuf *times);
+func Xutime(t *TLS, filename, times uintptr) int32 {
+ panic(todo(""))
+ // if _, _, err := unix.Syscall(unix.SYS_UTIME, filename, times, 0); err != 0 {
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // return 0
+}
+
+// unsigned int alarm(unsigned int seconds);
+func Xalarm(t *TLS, seconds uint32) uint32 {
+ panic(todo(""))
+ // n, _, err := unix.Syscall(unix.SYS_ALARM, uintptr(seconds), 0, 0)
+ // if err != 0 {
+ // panic(todo(""))
+ // }
+
+ // return uint32(n)
+}
+
+// time_t time(time_t *tloc);
+func Xtime(t *TLS, tloc uintptr) types.Time_t {
+ panic(todo(""))
+ // n, _, err := unix.Syscall(unix.SYS_TIME, tloc, 0, 0)
+ // if err != 0 {
+ // t.setErrno(err)
+ // return types.Time_t(-1)
+ // }
+
+ // if tloc != 0 {
+ // *(*types.Time_t)(unsafe.Pointer(tloc)) = types.Time_t(n)
+ // }
+ // return types.Time_t(n)
+}
+
+// int getrlimit(int resource, struct rlimit *rlim);
+func Xgetrlimit64(t *TLS, resource int32, rlim uintptr) int32 {
+ panic(todo(""))
+ // if _, _, err := unix.Syscall(unix.SYS_GETRLIMIT, uintptr(resource), uintptr(rlim), 0); err != 0 {
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // return 0
+}
+
+// int mkdir(const char *path, mode_t mode);
+func Xmkdir(t *TLS, path uintptr, mode types.Mode_t) int32 {
+ panic(todo(""))
+ // if _, _, err := unix.Syscall(unix.SYS_MKDIR, path, uintptr(mode), 0); err != 0 {
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // if dmesgs {
+ // dmesg("%v: %q: ok", origin(1), GoString(path))
+ // }
+ // return 0
+}
+
+// int symlink(const char *target, const char *linkpath);
+func Xsymlink(t *TLS, target, linkpath uintptr) int32 {
+ panic(todo(""))
+ // if _, _, err := unix.Syscall(unix.SYS_SYMLINK, target, linkpath, 0); err != 0 {
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // if dmesgs {
+ // dmesg("%v: %q %q: ok", origin(1), GoString(target), GoString(linkpath))
+ // }
+ // return 0
+}
+
+// int utimes(const char *filename, const struct timeval times[2]);
+func Xutimes(t *TLS, filename, times uintptr) int32 {
+ panic(todo(""))
+ // if _, _, err := unix.Syscall(unix.SYS_UTIMES, filename, times, 0); err != 0 {
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // if dmesgs {
+ // dmesg("%v: %q: ok", origin(1), GoString(filename))
+ // }
+ // return 0
+}
+
+// int unlink(const char *pathname);
+func Xunlink(t *TLS, pathname uintptr) int32 {
+
+ err := syscall.DeleteFile((*uint16)(unsafe.Pointer(pathname)))
+ if err != nil {
+ t.setErrno(err)
+ return -1
+ }
+
+ if dmesgs {
+ dmesg("%v: %q: ok", origin(1), GoString(pathname))
+ }
+
+ return 0
+}
+
+// int access(const char *pathname, int mode);
+func Xaccess(t *TLS, pathname uintptr, mode int32) int32 {
+ panic(todo(""))
+ // if _, _, err := unix.Syscall(unix.SYS_ACCESS, pathname, uintptr(mode), 0); err != 0 {
+ // if dmesgs {
+ // dmesg("%v: %q: %v", origin(1), GoString(pathname), err)
+ // }
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // if dmesgs {
+ // dmesg("%v: %q %#o: ok", origin(1), GoString(pathname), mode)
+ // }
+ // return 0
+}
+
+// int rmdir(const char *pathname);
+func Xrmdir(t *TLS, pathname uintptr) int32 {
+ panic(todo(""))
+ // if _, _, err := unix.Syscall(unix.SYS_RMDIR, pathname, 0, 0); err != 0 {
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // if dmesgs {
+ // dmesg("%v: %q: ok", origin(1), GoString(pathname))
+ // }
+ // return 0
+}
+
+// int mknod(const char *pathname, mode_t mode, dev_t dev);
+func Xmknod(t *TLS, pathname uintptr, mode types.Mode_t, dev types.Dev_t) int32 {
+ panic(todo(""))
+ // if _, _, err := unix.Syscall(unix.SYS_MKNOD, pathname, uintptr(mode), uintptr(dev)); err != 0 {
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // return 0
+}
+
+// // int chown(const char *pathname, uid_t owner, gid_t group);
+// func Xchown(t *TLS, pathname uintptr, owner types.Uid_t, group types.Gid_t) int32 {
+// panic(todo(""))
+// // if _, _, err := unix.Syscall(unix.SYS_CHOWN, pathname, uintptr(owner), uintptr(group)); err != 0 {
+// // t.setErrno(err)
+// // return -1
+// // }
+//
+// // return 0
+// }
+
+// int link(const char *oldpath, const char *newpath);
+func Xlink(t *TLS, oldpath, newpath uintptr) int32 {
+ panic(todo(""))
+ // if _, _, err := unix.Syscall(unix.SYS_LINK, oldpath, newpath, 0); err != 0 {
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // return 0
+}
+
+// int pipe(int pipefd[2]);
+func Xpipe(t *TLS, pipefd uintptr) int32 {
+ panic(todo(""))
+ // if _, _, err := unix.Syscall(unix.SYS_PIPE, pipefd, 0, 0); err != 0 {
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // return 0
+}
+
+// int dup2(int oldfd, int newfd);
+func Xdup2(t *TLS, oldfd, newfd int32) int32 {
+ panic(todo(""))
+ // n, _, err := unix.Syscall(unix.SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
+ // if err != 0 {
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // return int32(n)
+}
+
+// ssize_t readlink(const char *restrict path, char *restrict buf, size_t bufsize);
+func Xreadlink(t *TLS, path, buf uintptr, bufsize types.Size_t) types.Ssize_t {
+ panic(todo(""))
+ // n, _, err := unix.Syscall(unix.SYS_READLINK, path, buf, uintptr(bufsize))
+ // if err != 0 {
+ // t.setErrno(err)
+ // return -1
+ // }
+
+ // return types.Ssize_t(n)
+}
+
+// FILE *fopen64(const char *pathname, const char *mode);
+func Xfopen64(t *TLS, pathname, mode uintptr) uintptr {
+
+ m := strings.ReplaceAll(GoString(mode), "b", "")
+ var flags int
+ switch m {
+ case "r":
+ flags = os.O_RDONLY
+ case "r+":
+ flags = os.O_RDWR
+ case "w":
+ flags = os.O_WRONLY | os.O_CREATE | os.O_TRUNC
+ case "w+":
+ flags = os.O_RDWR | os.O_CREATE | os.O_TRUNC
+ case "a":
+ flags = os.O_WRONLY | os.O_CREATE | os.O_APPEND
+ case "a+":
+ flags = os.O_RDWR | os.O_CREATE | os.O_APPEND
+ default:
+ panic(m)
+ }
+ //TODO- flags |= fcntl.O_LARGEFILE
+ h, err := syscall.Open(GoString(pathname), int(flags), uint32(0666))
+ if err != nil {
+ t.setErrno(err)
+ return 0
+ }
+
+ p, _ := wrapFdHandle(h)
+ if p != 0 {
+ return p
+ }
+ _ = syscall.Close(h)
+ t.setErrno(errno.ENOMEM)
+ return 0
+}
+
+func Xrecv(t *TLS, sockfd uint64, buf uintptr, len, flags int32) int32 {
+ panic(todo(""))
+}
+
+func Xsend(t *TLS, sockfd uint64, buf uintptr, len, flags int32) int32 {
+ panic(todo(""))
+}
+
+func Xshutdown(t *TLS, sockfd uint64, how int32) int32 {
+ panic(todo(""))
+}
+
+func Xgetpeername(t *TLS, sockfd uint64, addr uintptr, addrlen uintptr) int32 {
+ panic(todo(""))
+}
+
+func Xgetsockname(t *TLS, sockfd uint64, addr, addrlen uintptr) int32 {
+ panic(todo(""))
+}
+
+func Xsocket(t *TLS, domain, type1, protocol int32) uint64 {
+ panic(todo(""))
+}
+
+func Xbind(t *TLS, sockfd uint64, addr uintptr, addrlen int32) int32 {
+ panic(todo(""))
+}
+
+func Xconnect(t *TLS, sockfd uint64, addr uintptr, addrlen int32) int32 {
+ panic(todo(""))
+}
+
+func Xlisten(t *TLS, sockfd uint64, backlog int32) int32 {
+ panic(todo(""))
+}
+
+func Xaccept(t *TLS, sockfd uint64, addr uintptr, addrlen uintptr) uint64 {
+ panic(todo(""))
+}
+
+// LRESULT LRESULT DefWindowProcW(
+// HWND hWnd,
+// UINT Msg,
+// WPARAM wParam,
+// LPARAM lParam
+// );
+func XDefWindowProcW(t *TLS, _ ...interface{}) int64 {
+ panic(todo(""))
+}
+
+func XSendMessageTimeoutW(t *TLS, _ ...interface{}) int64 {
+ panic(todo(""))
+}
diff --git a/vendor/modernc.org/libc/limits/capi_windows_arm64.go b/vendor/modernc.org/libc/limits/capi_windows_arm64.go
new file mode 100644
index 00000000..f964fb5c
--- /dev/null
+++ b/vendor/modernc.org/libc/limits/capi_windows_arm64.go
@@ -0,0 +1,5 @@
+// Code generated by 'ccgo limits\gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o limits\limits_windows_arm64.go -pkgname limits', DO NOT EDIT.
+
+package limits
+
+var CAPI = map[string]struct{}{}
diff --git a/vendor/modernc.org/libc/limits/limits_windows_arm64.go b/vendor/modernc.org/libc/limits/limits_windows_arm64.go
new file mode 100644
index 00000000..c399b5f7
--- /dev/null
+++ b/vendor/modernc.org/libc/limits/limits_windows_arm64.go
@@ -0,0 +1,102 @@
+// Code generated by 'ccgo limits\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o limits\limits_windows_arm64.go -pkgname limits', DO NOT EDIT.
+
+package limits
+
+import (
+ "math"
+ "reflect"
+ "sync/atomic"
+ "unsafe"
+)
+
+var _ = math.Pi
+var _ reflect.Kind
+var _ atomic.Value
+var _ unsafe.Pointer
+
+const (
+ CHAR_BIT = 8
+ CHAR_MAX = 127
+ CHAR_MIN = -128
+ INT_MAX = 2147483647
+ INT_MIN = -2147483648
+ LLONG_MAX = 9223372036854775807
+ LLONG_MIN = -9223372036854775808
+ LONG_LONG_MAX = 9223372036854775807
+ LONG_LONG_MIN = -9223372036854775808
+ LONG_MAX = 2147483647
+ LONG_MIN = -2147483648
+ MB_LEN_MAX = 1
+ PATH_MAX = 260
+ SCHAR_MAX = 127
+ SCHAR_MIN = -128
+ SHRT_MAX = 32767
+ SHRT_MIN = -32768
+ UCHAR_MAX = 255
+ UINT_MAX = 4294967295
+ ULLONG_MAX = 18446744073709551615
+ ULONG_LONG_MAX = 18446744073709551615
+ ULONG_MAX = 4294967295
+ USHRT_MAX = 65535
+ WIN32 = 1
+ WIN64 = 1
+ WINNT = 1
+ X_FILE_OFFSET_BITS = 64
+ X_GCC_LIMITS_H_ = 0
+ X_VA_LIST_DEFINED = 0
+ X_WIN32 = 1
+ X_WIN64 = 1
+)
+
+type Ptrdiff_t = int64 /* <builtin>:3:26 */
+
+type Size_t = uint64 /* <builtin>:9:23 */
+
+type Wchar_t = uint16 /* <builtin>:15:24 */
+
+type X__int128_t = struct {
+ Flo int64
+ Fhi int64
+} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
+type X__uint128_t = struct {
+ Flo uint64
+ Fhi uint64
+} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
+
+type X__builtin_va_list = uintptr /* <builtin>:46:14 */
+type X__float128 = float64 /* <builtin>:47:21 */
+
+type Va_list = X__builtin_va_list /* <builtin>:50:27 */
+
+//===---- limits.h - Standard header for integer sizes --------------------===* *
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+// \*===----------------------------------------------------------------------===
+
+// The system's limits.h may, in turn, try to #include_next GCC's limits.h.
+// Avert this #include_next madness.
+
+// System headers include a number of constants from POSIX in <limits.h>.
+// Include it if we're hosted.
+
+// Many system headers try to "help us out" by defining these. No really, we
+// know how big each datatype is.
+
+// C90/99 5.2.4.2.1
+
+// C2x 5.2.4.2.1
+// FIXME: This is using the placeholder dates Clang produces for these macros
+// in C2x mode; switch to the correct values once they've been published.
+
+// C99 5.2.4.2.1: Added long long.
+// C++11 18.3.3.2: same contents as the Standard C Library header <limits.h>.
+//
+
+// LONG_LONG_MIN/LONG_LONG_MAX/ULONG_LONG_MAX are a GNU extension. It's too bad
+// that we don't have something like #pragma poison that could be used to
+// deprecate a macro - the code should just use LLONG_MAX and friends.
+//
+
+var _ int8 /* gen.c:2:13: */
diff --git a/vendor/modernc.org/libc/musl_windows_arm64.go b/vendor/modernc.org/libc/musl_windows_arm64.go
new file mode 100644
index 00000000..2804cdc9
--- /dev/null
+++ b/vendor/modernc.org/libc/musl_windows_arm64.go
@@ -0,0 +1,1199 @@
+// Code generated by 'ccgo -D__environ=environ -export-externs X -hide __syscall0,__syscall1,__syscall2,__syscall3,__syscall4,__syscall5,__syscall6 -nostdinc -nostdlib -o ../musl_windows_arm64.go -pkgname libc -static-locals-prefix _s -Iarch\aarch64 -Iarch/generic -Iobj/src/internal -Isrc/include -Isrc/internal -Iobj/include -Iinclude copyright.c src/ctype/isalnum.c src/ctype/isalpha.c src/ctype/isdigit.c src/ctype/islower.c src/ctype/isprint.c src/ctype/isspace.c src/ctype/isxdigit.c src/env/putenv.c src/env/setenv.c src/env/unsetenv.c src/multibyte/wcrtomb.c src/multibyte/wcsrtombs.c src/multibyte/wcstombs.c src/stdlib/bsearch.c src/string/strchrnul.c src/string/strdup.c', DO NOT EDIT.
+
+package libc
+
+import (
+ "math"
+ "reflect"
+ "sync/atomic"
+ "unsafe"
+)
+
+var _ = math.Pi
+var _ reflect.Kind
+var _ atomic.Value
+var _ unsafe.Pointer
+
+// musl as a whole is licensed under the following standard MIT license:
+//
+// ----------------------------------------------------------------------
+// Copyright © 2005-2020 Rich Felker, et al.
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+// ----------------------------------------------------------------------
+//
+// Authors/contributors include:
+//
+// A. Wilcox
+// Ada Worcester
+// Alex Dowad
+// Alex Suykov
+// Alexander Monakov
+// Andre McCurdy
+// Andrew Kelley
+// Anthony G. Basile
+// Aric Belsito
+// Arvid Picciani
+// Bartosz Brachaczek
+// Benjamin Peterson
+// Bobby Bingham
+// Boris Brezillon
+// Brent Cook
+// Chris Spiegel
+// Clément Vasseur
+// Daniel Micay
+// Daniel Sabogal
+// Daurnimator
+// David Carlier
+// David Edelsohn
+// Denys Vlasenko
+// Dmitry Ivanov
+// Dmitry V. Levin
+// Drew DeVault
+// Emil Renner Berthing
+// Fangrui Song
+// Felix Fietkau
+// Felix Janda
+// Gianluca Anzolin
+// Hauke Mehrtens
+// He X
+// Hiltjo Posthuma
+// Isaac Dunham
+// Jaydeep Patil
+// Jens Gustedt
+// Jeremy Huntwork
+// Jo-Philipp Wich
+// Joakim Sindholt
+// John Spencer
+// Julien Ramseier
+// Justin Cormack
+// Kaarle Ritvanen
+// Khem Raj
+// Kylie McClain
+// Leah Neukirchen
+// Luca Barbato
+// Luka Perkov
+// M Farkas-Dyck (Strake)
+// Mahesh Bodapati
+// Markus Wichmann
+// Masanori Ogino
+// Michael Clark
+// Michael Forney
+// Mikhail Kremnyov
+// Natanael Copa
+// Nicholas J. Kain
+// orc
+// Pascal Cuoq
+// Patrick Oppenlander
+// Petr Hosek
+// Petr Skocik
+// Pierre Carrier
+// Reini Urban
+// Rich Felker
+// Richard Pennington
+// Ryan Fairfax
+// Samuel Holland
+// Segev Finer
+// Shiz
+// sin
+// Solar Designer
+// Stefan Kristiansson
+// Stefan O'Rear
+// Szabolcs Nagy
+// Timo Teräs
+// Trutz Behn
+// Valentin Ochs
+// Will Dietz
+// William Haddon
+// William Pitcock
+//
+// Portions of this software are derived from third-party works licensed
+// under terms compatible with the above MIT license:
+//
+// The TRE regular expression implementation (src/regex/reg* and
+// src/regex/tre*) is Copyright © 2001-2008 Ville Laurikari and licensed
+// under a 2-clause BSD license (license text in the source files). The
+// included version has been heavily modified by Rich Felker in 2012, in
+// the interests of size, simplicity, and namespace cleanliness.
+//
+// Much of the math library code (src/math/* and src/complex/*) is
+// Copyright © 1993,2004 Sun Microsystems or
+// Copyright © 2003-2011 David Schultz or
+// Copyright © 2003-2009 Steven G. Kargl or
+// Copyright © 2003-2009 Bruce D. Evans or
+// Copyright © 2008 Stephen L. Moshier or
+// Copyright © 2017-2018 Arm Limited
+// and labelled as such in comments in the individual source files. All
+// have been licensed under extremely permissive terms.
+//
+// The ARM memcpy code (src/string/arm/memcpy.S) is Copyright © 2008
+// The Android Open Source Project and is licensed under a two-clause BSD
+// license. It was taken from Bionic libc, used on Android.
+//
+// The AArch64 memcpy and memset code (src/string/aarch64/*) are
+// Copyright © 1999-2019, Arm Limited.
+//
+// The implementation of DES for crypt (src/crypt/crypt_des.c) is
+// Copyright © 1994 David Burren. It is licensed under a BSD license.
+//
+// The implementation of blowfish crypt (src/crypt/crypt_blowfish.c) was
+// originally written by Solar Designer and placed into the public
+// domain. The code also comes with a fallback permissive license for use
+// in jurisdictions that may not recognize the public domain.
+//
+// The smoothsort implementation (src/stdlib/qsort.c) is Copyright © 2011
+// Valentin Ochs and is licensed under an MIT-style license.
+//
+// The x86_64 port was written by Nicholas J. Kain and is licensed under
+// the standard MIT terms.
+//
+// The mips and microblaze ports were originally written by Richard
+// Pennington for use in the ellcc project. The original code was adapted
+// by Rich Felker for build system and code conventions during upstream
+// integration. It is licensed under the standard MIT terms.
+//
+// The mips64 port was contributed by Imagination Technologies and is
+// licensed under the standard MIT terms.
+//
+// The powerpc port was also originally written by Richard Pennington,
+// and later supplemented and integrated by John Spencer. It is licensed
+// under the standard MIT terms.
+//
+// All other files which have no copyright comments are original works
+// produced specifically for use as part of this library, written either
+// by Rich Felker, the main author of the library, or by one or more
+// contibutors listed above. Details on authorship of individual files
+// can be found in the git version control history of the project. The
+// omission of copyright and license comments in each file is in the
+// interest of source tree size.
+//
+// In addition, permission is hereby granted for all public header files
+// (include/* and arch/*/bits/*) and crt files intended to be linked into
+// applications (crt/*, ldso/dlstart.c, and arch/*/crt_arch.h) to omit
+// the copyright notice and permission notice otherwise required by the
+// license, and to use these files without any requirement of
+// attribution. These files include substantial contributions from:
+//
+// Bobby Bingham
+// John Spencer
+// Nicholas J. Kain
+// Rich Felker
+// Richard Pennington
+// Stefan Kristiansson
+// Szabolcs Nagy
+//
+// all of whom have explicitly granted such permission.
+//
+// This file previously contained text expressing a belief that most of
+// the files covered by the above exception were sufficiently trivial not
+// to be subject to copyright, resulting in confusion over whether it
+// negated the permissions granted in the license. In the spirit of
+// permissive licensing, and of not having licensing issues being an
+// obstacle to adoption, that text has been removed.
+const ( /* copyright.c:194:1: */
+ __musl__copyright__ = 0
+)
+
+const ( /* pthread_impl.h:58:1: */
+ DT_EXITING = 0
+ DT_JOINABLE = 1
+ DT_DETACHED = 2
+)
+
+type ptrdiff_t = int64 /* <builtin>:3:26 */
+
+type size_t = uint64 /* <builtin>:9:23 */
+
+type wchar_t = uint16 /* <builtin>:15:24 */
+
+type va_list = uintptr /* <builtin>:50:27 */
+
+type __locale_struct = struct{ cat [6]uintptr } /* alltypes.h:351:9 */
+
+type locale_t = uintptr /* alltypes.h:351:32 */
+
+func Xisalnum(tls *TLS, c int32) int32 { /* isalnum.c:3:5: */
+ return Bool32(func() int32 {
+ if 0 != 0 {
+ return Xisalpha(tls, c)
+ }
+ return Bool32(uint32(c)|uint32(32)-uint32('a') < uint32(26))
+ }() != 0 || func() int32 {
+ if 0 != 0 {
+ return Xisdigit(tls, c)
+ }
+ return Bool32(uint32(c)-uint32('0') < uint32(10))
+ }() != 0)
+}
+
+func X__isalnum_l(tls *TLS, c int32, l locale_t) int32 { /* isalnum.c:8:5: */
+ return Xisalnum(tls, c)
+}
+
+func Xisalpha(tls *TLS, c int32) int32 { /* isalpha.c:4:5: */
+ return Bool32(uint32(c)|uint32(32)-uint32('a') < uint32(26))
+}
+
+func X__isalpha_l(tls *TLS, c int32, l locale_t) int32 { /* isalpha.c:9:5: */
+ return Xisalpha(tls, c)
+}
+
+func Xisdigit(tls *TLS, c int32) int32 { /* isdigit.c:4:5: */
+ return Bool32(uint32(c)-uint32('0') < uint32(10))
+}
+
+func X__isdigit_l(tls *TLS, c int32, l locale_t) int32 { /* isdigit.c:9:5: */
+ return Xisdigit(tls, c)
+}
+
+func Xislower(tls *TLS, c int32) int32 { /* islower.c:4:5: */
+ return Bool32(uint32(c)-uint32('a') < uint32(26))
+}
+
+func X__islower_l(tls *TLS, c int32, l locale_t) int32 { /* islower.c:9:5: */
+ return Xislower(tls, c)
+}
+
+func Xisprint(tls *TLS, c int32) int32 { /* isprint.c:4:5: */
+ return Bool32(uint32(c)-uint32(0x20) < uint32(0x5f))
+}
+
+func X__isprint_l(tls *TLS, c int32, l locale_t) int32 { /* isprint.c:9:5: */
+ return Xisprint(tls, c)
+}
+
+func Xisspace(tls *TLS, c int32) int32 { /* isspace.c:4:5: */
+ return Bool32(c == ' ' || uint32(c)-uint32('\t') < uint32(5))
+}
+
+func X__isspace_l(tls *TLS, c int32, l locale_t) int32 { /* isspace.c:9:5: */
+ return Xisspace(tls, c)
+}
+
+func Xisxdigit(tls *TLS, c int32) int32 { /* isxdigit.c:3:5: */
+ return Bool32(func() int32 {
+ if 0 != 0 {
+ return Xisdigit(tls, c)
+ }
+ return Bool32(uint32(c)-uint32('0') < uint32(10))
+ }() != 0 || uint32(c)|uint32(32)-uint32('a') < uint32(6))
+}
+
+func X__isxdigit_l(tls *TLS, c int32, l locale_t) int32 { /* isxdigit.c:8:5: */
+ return Xisxdigit(tls, c)
+}
+
+type div_t = struct {
+ quot int32
+ rem int32
+} /* stdlib.h:62:35 */
+type ldiv_t = struct {
+ quot int32
+ rem int32
+} /* stdlib.h:63:36 */
+type lldiv_t = struct {
+ quot int64
+ rem int64
+} /* stdlib.h:64:41 */
+
+type ssize_t = int32 /* alltypes.h:73:15 */
+
+type intptr_t = int32 /* alltypes.h:78:15 */
+
+type off_t = int32 /* alltypes.h:170:16 */
+
+type pid_t = int32 /* alltypes.h:243:13 */
+
+type uid_t = uint32 /* alltypes.h:253:18 */
+
+type gid_t = uint32 /* alltypes.h:258:18 */
+
+type useconds_t = uint32 /* alltypes.h:268:18 */
+
+func X__putenv(tls *TLS, s uintptr, l size_t, r uintptr) int32 { /* putenv.c:8:5: */
+ var i size_t
+ var newenv uintptr
+ var tmp uintptr
+ //TODO for (char **e = __environ; *e; e++, i++)
+ var e uintptr
+ i = uint64(0)
+ if !(Environ() != 0) {
+ goto __1
+ }
+ //TODO for (char **e = __environ; *e; e++, i++)
+ e = Environ()
+__2:
+ if !(*(*uintptr)(unsafe.Pointer(e)) != 0) {
+ goto __4
+ }
+ if !!(Xstrncmp(tls, s, *(*uintptr)(unsafe.Pointer(e)), l+uint64(1)) != 0) {
+ goto __5
+ }
+ tmp = *(*uintptr)(unsafe.Pointer(e))
+ *(*uintptr)(unsafe.Pointer(e)) = s
+ X__env_rm_add(tls, tmp, r)
+ return 0
+__5:
+ ;
+ goto __3
+__3:
+ e += 8
+ i++
+ goto __2
+ goto __4
+__4:
+ ;
+__1:
+ ;
+ if !(Environ() == _soldenv) {
+ goto __6
+ }
+ newenv = Xrealloc(tls, _soldenv, uint64(unsafe.Sizeof(uintptr(0)))*(i+uint64(2)))
+ if !!(newenv != 0) {
+ goto __8
+ }
+ goto oom
+__8:
+ ;
+ goto __7
+__6:
+ newenv = Xmalloc(tls, uint64(unsafe.Sizeof(uintptr(0)))*(i+uint64(2)))
+ if !!(newenv != 0) {
+ goto __9
+ }
+ goto oom
+__9:
+ ;
+ if !(i != 0) {
+ goto __10
+ }
+ Xmemcpy(tls, newenv, Environ(), uint64(unsafe.Sizeof(uintptr(0)))*i)
+__10:
+ ;
+ Xfree(tls, _soldenv)
+__7:
+ ;
+ *(*uintptr)(unsafe.Pointer(newenv + uintptr(i)*8)) = s
+ *(*uintptr)(unsafe.Pointer(newenv + uintptr(i+uint64(1))*8)) = uintptr(0)
+ *(*uintptr)(unsafe.Pointer(EnvironP())) = AssignPtrUintptr(uintptr(unsafe.Pointer(&_soldenv)), newenv)
+ if !(r != 0) {
+ goto __11
+ }
+ X__env_rm_add(tls, uintptr(0), r)
+__11:
+ ;
+ return 0
+oom:
+ Xfree(tls, r)
+ return -1
+}
+
+var _soldenv uintptr /* putenv.c:22:14: */
+
+func Xputenv(tls *TLS, s uintptr) int32 { /* putenv.c:43:5: */
+ var l size_t = size_t((int64(X__strchrnul(tls, s, '=')) - int64(s)) / 1)
+ if !(l != 0) || !(int32(*(*int8)(unsafe.Pointer(s + uintptr(l)))) != 0) {
+ return Xunsetenv(tls, s)
+ }
+ return X__putenv(tls, s, l, uintptr(0))
+}
+
+func X__env_rm_add(tls *TLS, old uintptr, new uintptr) { /* setenv.c:5:6: */
+ //TODO for (size_t i=0; i < env_alloced_n; i++)
+ var i size_t = uint64(0)
+ for ; i < _senv_alloced_n; i++ {
+ if *(*uintptr)(unsafe.Pointer(_senv_alloced + uintptr(i)*8)) == old {
+ *(*uintptr)(unsafe.Pointer(_senv_alloced + uintptr(i)*8)) = new
+ Xfree(tls, old)
+ return
+ } else if !(int32(*(*uintptr)(unsafe.Pointer(_senv_alloced + uintptr(i)*8))) != 0) && new != 0 {
+ *(*uintptr)(unsafe.Pointer(_senv_alloced + uintptr(i)*8)) = new
+ new = uintptr(0)
+ }
+ }
+ if !(new != 0) {
+ return
+ }
+ var t uintptr = Xrealloc(tls, _senv_alloced, uint64(unsafe.Sizeof(uintptr(0)))*(_senv_alloced_n+uint64(1)))
+ if !(t != 0) {
+ return
+ }
+ *(*uintptr)(unsafe.Pointer(AssignPtrUintptr(uintptr(unsafe.Pointer(&_senv_alloced)), t) + uintptr(PostIncUint64(&_senv_alloced_n, 1))*8)) = new
+}
+
+var _senv_alloced uintptr /* setenv.c:7:14: */
+var _senv_alloced_n size_t /* setenv.c:8:16: */
+
+func Xsetenv(tls *TLS, var1 uintptr, value uintptr, overwrite int32) int32 { /* setenv.c:26:5: */
+ var s uintptr
+ var l1 size_t
+ var l2 size_t
+
+ if !(var1 != 0) || !(int32(AssignUint64(&l1, size_t((int64(X__strchrnul(tls, var1, '='))-int64(var1))/1))) != 0) || *(*int8)(unsafe.Pointer(var1 + uintptr(l1))) != 0 {
+ *(*int32)(unsafe.Pointer(X___errno_location(tls))) = 22
+ return -1
+ }
+ if !(overwrite != 0) && Xgetenv(tls, var1) != 0 {
+ return 0
+ }
+
+ l2 = Xstrlen(tls, value)
+ s = Xmalloc(tls, l1+l2+uint64(2))
+ if !(s != 0) {
+ return -1
+ }
+ Xmemcpy(tls, s, var1, l1)
+ *(*int8)(unsafe.Pointer(s + uintptr(l1))) = int8('=')
+ Xmemcpy(tls, s+uintptr(l1)+uintptr(1), value, l2+uint64(1))
+ return X__putenv(tls, s, l1, s)
+}
+
+func Xunsetenv(tls *TLS, name uintptr) int32 { /* unsetenv.c:9:5: */
+ var l size_t = size_t((int64(X__strchrnul(tls, name, '=')) - int64(name)) / 1)
+ if !(l != 0) || *(*int8)(unsafe.Pointer(name + uintptr(l))) != 0 {
+ *(*int32)(unsafe.Pointer(X___errno_location(tls))) = 22
+ return -1
+ }
+ if Environ() != 0 {
+ var e uintptr = Environ()
+ var eo uintptr = e
+ for ; *(*uintptr)(unsafe.Pointer(e)) != 0; e += 8 {
+ //TODO if (!strncmp(name, *e, l) && l[*e] == '=')
+ if !(Xstrncmp(tls, name, *(*uintptr)(unsafe.Pointer(e)), l) != 0) && int32(*(*int8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(e)) + uintptr(l)))) == '=' {
+ X__env_rm_add(tls, *(*uintptr)(unsafe.Pointer(e)), uintptr(0))
+ } else if eo != e {
+ *(*uintptr)(unsafe.Pointer(PostIncUintptr(&eo, 8))) = *(*uintptr)(unsafe.Pointer(e))
+ } else {
+ eo += 8
+ }
+ }
+ if eo != e {
+ *(*uintptr)(unsafe.Pointer(eo)) = uintptr(0)
+ }
+ }
+ return 0
+}
+
+type wint_t = uint32 /* alltypes.h:21:18 */
+
+type wctype_t = uint32 /* alltypes.h:211:23 */
+
+type __mbstate_t = struct {
+ __opaque1 uint32
+ __opaque2 uint32
+} /* alltypes.h:345:9 */
+
+type mbstate_t = __mbstate_t /* alltypes.h:345:63 */
+
+type tm = struct {
+ tm_sec int32
+ tm_min int32
+ tm_hour int32
+ tm_mday int32
+ tm_mon int32
+ tm_year int32
+ tm_wday int32
+ tm_yday int32
+ tm_isdst int32
+ tm_gmtoff int32
+ tm_zone uintptr
+} /* wchar.h:138:1 */
+
+type uintptr_t = uint32 /* alltypes.h:63:24 */
+
+type int8_t = int8 /* alltypes.h:104:25 */
+
+type int16_t = int16 /* alltypes.h:109:25 */
+
+type int32_t = int32 /* alltypes.h:114:25 */
+
+type int64_t = int32 /* alltypes.h:119:25 */
+
+type intmax_t = int32 /* alltypes.h:124:25 */
+
+type uint8_t = uint8 /* alltypes.h:129:25 */
+
+type uint16_t = uint16 /* alltypes.h:134:25 */
+
+type uint32_t = uint32 /* alltypes.h:139:25 */
+
+type uint64_t = uint32 /* alltypes.h:144:25 */
+
+type uintmax_t = uint32 /* alltypes.h:154:25 */
+
+type int_fast8_t = int8_t /* stdint.h:22:16 */
+type int_fast64_t = int64_t /* stdint.h:23:17 */
+
+type int_least8_t = int8_t /* stdint.h:25:17 */
+type int_least16_t = int16_t /* stdint.h:26:17 */
+type int_least32_t = int32_t /* stdint.h:27:17 */
+type int_least64_t = int64_t /* stdint.h:28:17 */
+
+type uint_fast8_t = uint8_t /* stdint.h:30:17 */
+type uint_fast64_t = uint64_t /* stdint.h:31:18 */
+
+type uint_least8_t = uint8_t /* stdint.h:33:18 */
+type uint_least16_t = uint16_t /* stdint.h:34:18 */
+type uint_least32_t = uint32_t /* stdint.h:35:18 */
+type uint_least64_t = uint64_t /* stdint.h:36:18 */
+
+type int_fast16_t = int32_t /* stdint.h:1:17 */
+type int_fast32_t = int32_t /* stdint.h:2:17 */
+type uint_fast16_t = uint32_t /* stdint.h:3:18 */
+type uint_fast32_t = uint32_t /* stdint.h:4:18 */
+
+// Upper 6 state bits are a negative integer offset to bound-check next byte
+// equivalent to: ( (b-0x80) | (b+offset) ) & ~0x3f
+
+// Interval [a,b). Either a must be 80 or b must be c0, lower 3 bits clear.
+
+// Arbitrary encoding for representing code units instead of characters.
+
+// Get inline definition of MB_CUR_MAX.
+
+type lconv = struct {
+ decimal_point uintptr
+ thousands_sep uintptr
+ grouping uintptr
+ int_curr_symbol uintptr
+ currency_symbol uintptr
+ mon_decimal_point uintptr
+ mon_thousands_sep uintptr
+ mon_grouping uintptr
+ positive_sign uintptr
+ negative_sign uintptr
+ int_frac_digits int8
+ frac_digits int8
+ p_cs_precedes int8
+ p_sep_by_space int8
+ n_cs_precedes int8
+ n_sep_by_space int8
+ p_sign_posn int8
+ n_sign_posn int8
+ int_p_cs_precedes int8
+ int_p_sep_by_space int8
+ int_n_cs_precedes int8
+ int_n_sep_by_space int8
+ int_p_sign_posn int8
+ int_n_sign_posn int8
+ _ [2]byte
+} /* locale.h:24:1 */
+
+type _G_fpos64_t = struct {
+ _ [0]uint64
+ __opaque [16]int8
+} /* stdio.h:54:9 */
+
+type fpos_t = _G_fpos64_t /* stdio.h:58:3 */
+
+// Support signed or unsigned plain-char
+
+// Implementation choices...
+
+// Arbitrary numbers...
+
+// POSIX/SUS requirements follow. These numbers come directly
+// from SUS and have nothing to do with the host system.
+
+type __locale_map = struct {
+ __map uintptr
+ map_size size_t
+ name [24]int8
+ next uintptr
+} /* alltypes.h:351:9 */
+
+type tls_module = struct {
+ next uintptr
+ image uintptr
+ len size_t
+ size size_t
+ align size_t
+ offset size_t
+} /* libc.h:14:1 */
+
+type __libc = struct {
+ can_do_threads int8
+ threaded int8
+ secure int8
+ need_locks int8
+ threads_minus_1 int32
+ auxv uintptr
+ tls_head uintptr
+ tls_size size_t
+ tls_align size_t
+ tls_cnt size_t
+ page_size size_t
+ global_locale struct{ cat [6]uintptr }
+} /* libc.h:20:1 */
+
+type time_t = int32 /* alltypes.h:93:16 */
+
+type clockid_t = int32 /* alltypes.h:222:13 */
+
+type timespec = struct {
+ tv_sec time_t
+ tv_nsec int32
+} /* alltypes.h:237:1 */
+
+type __pthread = struct {
+ self uintptr
+ dtv uintptr
+ prev uintptr
+ next uintptr
+ sysinfo uintptr_t
+ canary uintptr_t
+ canary2 uintptr_t
+ tid int32
+ errno_val int32
+ detach_state int32
+ cancel int32
+ canceldisable uint8
+ cancelasync uint8
+ tsd_used uint8 /* unsigned char tsd_used: 1, unsigned char dlerror_flag: 1 */
+ _ [1]byte
+ map_base uintptr
+ map_size size_t
+ stack uintptr
+ stack_size size_t
+ guard_size size_t
+ result uintptr
+ cancelbuf uintptr
+ tsd uintptr
+ robust_list struct {
+ head uintptr
+ off int32
+ _ [4]byte
+ pending uintptr
+ }
+ timer_id int32
+ _ [4]byte
+ locale locale_t
+ killlock [1]int32
+ _ [4]byte
+ dlerror_buf uintptr
+ stdio_locks uintptr
+ canary_at_end uintptr_t
+ _ [4]byte
+ dtv_copy uintptr
+} /* alltypes.h:281:9 */
+
+type pthread_t = uintptr /* alltypes.h:281:26 */
+
+type pthread_once_t = int32 /* alltypes.h:287:13 */
+
+type pthread_key_t = uint32 /* alltypes.h:292:18 */
+
+type pthread_spinlock_t = int32 /* alltypes.h:297:13 */
+
+type pthread_mutexattr_t = struct{ __attr uint32 } /* alltypes.h:302:37 */
+
+type pthread_condattr_t = struct{ __attr uint32 } /* alltypes.h:307:37 */
+
+type pthread_barrierattr_t = struct{ __attr uint32 } /* alltypes.h:312:37 */
+
+type pthread_rwlockattr_t = struct{ __attr [2]uint32 } /* alltypes.h:317:40 */
+
+type __sigset_t = struct{ __bits [32]uint32 } /* alltypes.h:357:9 */
+
+type sigset_t = __sigset_t /* alltypes.h:357:71 */
+
+type pthread_attr_t = struct{ __u struct{ __i [9]int32 } } /* alltypes.h:380:147 */
+
+type pthread_mutex_t = struct {
+ __u struct {
+ _ [0]uint64
+ __i [6]int32
+ _ [24]byte
+ }
+} /* alltypes.h:385:157 */
+
+type pthread_cond_t = struct {
+ __u struct {
+ _ [0]uint64
+ __i [12]int32
+ }
+} /* alltypes.h:395:112 */
+
+type pthread_rwlock_t = struct {
+ __u struct {
+ _ [0]uint64
+ __i [8]int32
+ _ [32]byte
+ }
+} /* alltypes.h:405:139 */
+
+type pthread_barrier_t = struct {
+ __u struct {
+ _ [0]uint64
+ __i [5]int32
+ _ [20]byte
+ }
+} /* alltypes.h:410:137 */
+
+type sched_param = struct {
+ sched_priority int32
+ __reserved1 int32
+ __reserved2 [2]struct {
+ __reserved1 time_t
+ __reserved2 int32
+ }
+ __reserved3 int32
+} /* sched.h:19:1 */
+
+type timer_t = uintptr /* alltypes.h:217:14 */
+
+type clock_t = int32 /* alltypes.h:227:14 */
+
+type itimerspec = struct {
+ it_interval struct {
+ tv_sec time_t
+ tv_nsec int32
+ }
+ it_value struct {
+ tv_sec time_t
+ tv_nsec int32
+ }
+} /* time.h:80:1 */
+
+type sigevent = struct {
+ sigev_value struct {
+ _ [0]uint64
+ sival_int int32
+ _ [4]byte
+ }
+ sigev_signo int32
+ sigev_notify int32
+ sigev_notify_function uintptr
+ sigev_notify_attributes uintptr
+ __pad [44]int8
+ _ [4]byte
+} /* time.h:107:1 */
+
+type __ptcb = struct {
+ __f uintptr
+ __x uintptr
+ __next uintptr
+} /* alltypes.h:281:9 */
+
+type sigaltstack = struct {
+ ss_sp uintptr
+ ss_flags int32
+ _ [4]byte
+ ss_size size_t
+} /* signal.h:44:9 */
+
+type stack_t = sigaltstack /* signal.h:44:28 */
+
+type greg_t = uint32 /* signal.h:10:23 */
+type gregset_t = [34]uint32 /* signal.h:11:23 */
+
+type fpregset_t = struct {
+ vregs [32]float64
+ fpsr uint32
+ fpcr uint32
+} /* signal.h:17:3 */
+type sigcontext = struct {
+ fault_address uint32
+ regs [31]uint32
+ sp uint32
+ pc uint32
+ pstate uint32
+ _ [4]byte
+ __reserved [256]float64
+} /* signal.h:18:9 */
+
+type mcontext_t = sigcontext /* signal.h:23:3 */
+
+type _aarch64_ctx = struct {
+ magic uint32
+ size uint32
+} /* signal.h:29:1 */
+
+type fpsimd_context = struct {
+ head struct {
+ magic uint32
+ size uint32
+ }
+ fpsr uint32
+ fpcr uint32
+ vregs [32]float64
+} /* signal.h:33:1 */
+
+type esr_context = struct {
+ head struct {
+ magic uint32
+ size uint32
+ }
+ esr uint32
+} /* signal.h:39:1 */
+
+type extra_context = struct {
+ head struct {
+ magic uint32
+ size uint32
+ }
+ datap uint32
+ size uint32
+ __reserved [3]uint32
+} /* signal.h:43:1 */
+
+type sve_context = struct {
+ head struct {
+ magic uint32
+ size uint32
+ }
+ vl uint16
+ __reserved [3]uint16
+} /* signal.h:49:1 */
+
+type __ucontext = struct {
+ uc_flags uint32
+ _ [4]byte
+ uc_link uintptr
+ uc_stack stack_t
+ uc_sigmask sigset_t
+ uc_mcontext mcontext_t
+} /* signal.h:99:9 */
+
+type ucontext_t = __ucontext /* signal.h:105:3 */
+
+type sigval = struct {
+ _ [0]uint64
+ sival_int int32
+ _ [4]byte
+} /* time.h:107:1 */
+
+type siginfo_t = struct {
+ si_signo int32
+ si_errno int32
+ si_code int32
+ _ [4]byte
+ __si_fields struct {
+ _ [0]uint64
+ __pad [116]int8
+ _ [4]byte
+ }
+} /* signal.h:145:3 */
+
+type sigaction = struct {
+ __sa_handler struct{ sa_handler uintptr }
+ sa_mask sigset_t
+ sa_flags int32
+ _ [4]byte
+ sa_restorer uintptr
+} /* signal.h:167:1 */
+
+type sig_t = uintptr /* signal.h:251:14 */
+
+type sig_atomic_t = int32 /* signal.h:269:13 */
+
+type mode_t = uint32 /* alltypes.h:160:18 */
+
+type syscall_arg_t = int32 /* syscall.h:22:14 */
+
+func a_ll(tls *TLS, p uintptr) int32 { /* atomic_arch.h:2:19: */
+ var v int32
+ panic(`arch\aarch64\atomic_arch.h:5:2: assembler statements not supported`)
+ return v
+}
+
+func a_sc(tls *TLS, p uintptr, v int32) int32 { /* atomic_arch.h:10:19: */
+ var r int32
+ panic(`arch\aarch64\atomic_arch.h:13:2: assembler statements not supported`)
+ return BoolInt32(!(r != 0))
+}
+
+func a_barrier(tls *TLS) { /* atomic_arch.h:18:20: */
+ panic(`arch\aarch64\atomic_arch.h:20:2: assembler statements not supported`)
+}
+
+func a_ll_p(tls *TLS, p uintptr) uintptr { /* atomic_arch.h:38:20: */
+ var v uintptr
+ panic(`arch\aarch64\atomic_arch.h:41:2: assembler statements not supported`)
+ return v
+}
+
+func a_sc_p(tls *TLS, p uintptr, v uintptr) int32 { /* atomic_arch.h:46:19: */
+ var r int32
+ panic(`arch\aarch64\atomic_arch.h:49:2: assembler statements not supported`)
+ return BoolInt32(!(r != 0))
+}
+
+func a_ctz_64(tls *TLS, x uint64_t) int32 { /* atomic_arch.h:68:19: */
+ panic(`arch\aarch64\atomic_arch.h:70:2: assembler statements not supported`)
+ return int32(x)
+}
+
+func a_fetch_add(tls *TLS, p uintptr, v int32) int32 { /* atomic.h:46:19: */
+ var old int32
+
+ for __ccgo := true; __ccgo; __ccgo = !(a_sc(tls, p, int32(uint32(old)+uint32(v))) != 0) {
+ old = a_ll(tls, p)
+ }
+
+ return old
+}
+
+func a_fetch_and(tls *TLS, p uintptr, v int32) int32 { /* atomic.h:59:19: */
+ var old int32
+
+ for __ccgo := true; __ccgo; __ccgo = !(a_sc(tls, p, old&v) != 0) {
+ old = a_ll(tls, p)
+ }
+
+ return old
+}
+
+func a_fetch_or(tls *TLS, p uintptr, v int32) int32 { /* atomic.h:72:19: */
+ var old int32
+
+ for __ccgo := true; __ccgo; __ccgo = !(a_sc(tls, p, old|v) != 0) {
+ old = a_ll(tls, p)
+ }
+
+ return old
+}
+
+func a_and(tls *TLS, p uintptr, v int32) { /* atomic.h:151:20: */
+ a_fetch_and(tls, p, v)
+}
+
+func a_or(tls *TLS, p uintptr, v int32) { /* atomic.h:159:20: */
+ a_fetch_or(tls, p, v)
+}
+
+func a_or_64(tls *TLS, p uintptr, v uint64_t) { /* atomic.h:220:20: */
+ bp := tls.Alloc(8)
+ defer tls.Free(8)
+
+ *(*struct {
+ v uint64_t
+ _ [4]byte
+ })(unsafe.Pointer(bp)) = func() (r struct {
+ v uint64_t
+ _ [4]byte
+ }) {
+ *(*uint64_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&r)) + 0)) = v
+ return r
+ }()
+ if *(*uint32_t)(unsafe.Pointer(bp)) != 0 {
+ a_or(tls, p, int32(*(*uint32_t)(unsafe.Pointer(bp))))
+ }
+ if *(*uint32_t)(unsafe.Pointer(bp + 1*4)) != 0 {
+ a_or(tls, p+uintptr(1)*4, int32(*(*uint32_t)(unsafe.Pointer(bp + 1*4))))
+ }
+}
+
+func a_ctz_32(tls *TLS, x uint32_t) int32 { /* atomic.h:256:19: */
+ return int32(_sdebruijn32[x&-x*uint32_t(0x076be629)>>27])
+}
+
+var _sdebruijn32 = [32]int8{
+ int8(0), int8(1), int8(23), int8(2), int8(29), int8(24), int8(19), int8(3), int8(30), int8(27), int8(25), int8(11), int8(20), int8(8), int8(4), int8(13),
+ int8(31), int8(22), int8(28), int8(18), int8(26), int8(10), int8(7), int8(12), int8(21), int8(17), int8(9), int8(6), int8(16), int8(5), int8(15), int8(14),
+} /* atomic.h:261:20 */
+
+type __timer = struct {
+ timerid int32
+ _ [4]byte
+ thread pthread_t
+} /* pthread_impl.h:64:1 */
+
+func __pthread_self(tls *TLS) uintptr { /* pthread_arch.h:1:30: */
+ var self uintptr
+ panic(`arch\aarch64\pthread_arch.h:4:2: assembler statements not supported`)
+ return self - uintptr(uint64(unsafe.Sizeof(__pthread{})))
+}
+
+func Xwcrtomb(tls *TLS, s uintptr, wc wchar_t, st uintptr) size_t { /* wcrtomb.c:6:8: */
+ if !(s != 0) {
+ return uint64(1)
+ }
+ if uint32(wc) < uint32(0x80) {
+ *(*int8)(unsafe.Pointer(s)) = int8(wc)
+ return uint64(1)
+ } else if func() int32 {
+ if !!(int32(*(*uintptr)(unsafe.Pointer((*__pthread)(unsafe.Pointer(__pthread_self(tls))).locale))) != 0) {
+ return 4
+ }
+ return 1
+ }() == 1 {
+ if !(uint32(wc)-uint32(0xdf80) < uint32(0x80)) {
+ *(*int32)(unsafe.Pointer(X___errno_location(tls))) = 84
+ return Uint64FromInt32(-1)
+ }
+ *(*int8)(unsafe.Pointer(s)) = int8(wc)
+ return uint64(1)
+ } else if uint32(wc) < uint32(0x800) {
+ *(*int8)(unsafe.Pointer(PostIncUintptr(&s, 1))) = int8(0xc0 | int32(wc)>>6)
+ *(*int8)(unsafe.Pointer(s)) = int8(0x80 | int32(wc)&0x3f)
+ return uint64(2)
+ } else if uint32(wc) < uint32(0xd800) || uint32(wc)-uint32(0xe000) < uint32(0x2000) {
+ *(*int8)(unsafe.Pointer(PostIncUintptr(&s, 1))) = int8(0xe0 | int32(wc)>>12)
+ *(*int8)(unsafe.Pointer(PostIncUintptr(&s, 1))) = int8(0x80 | int32(wc)>>6&0x3f)
+ *(*int8)(unsafe.Pointer(s)) = int8(0x80 | int32(wc)&0x3f)
+ return uint64(3)
+ } else if uint32(wc)-uint32(0x10000) < uint32(0x100000) {
+ *(*int8)(unsafe.Pointer(PostIncUintptr(&s, 1))) = int8(0xf0 | int32(wc)>>18)
+ *(*int8)(unsafe.Pointer(PostIncUintptr(&s, 1))) = int8(0x80 | int32(wc)>>12&0x3f)
+ *(*int8)(unsafe.Pointer(PostIncUintptr(&s, 1))) = int8(0x80 | int32(wc)>>6&0x3f)
+ *(*int8)(unsafe.Pointer(s)) = int8(0x80 | int32(wc)&0x3f)
+ return uint64(4)
+ }
+ *(*int32)(unsafe.Pointer(X___errno_location(tls))) = 84
+ return Uint64FromInt32(-1)
+}
+
+func Xwcsrtombs(tls *TLS, s uintptr, ws uintptr, n size_t, st uintptr) size_t { /* wcsrtombs.c:3:8: */
+ bp := tls.Alloc(4)
+ defer tls.Free(4)
+
+ var ws2 uintptr
+ // var buf [4]int8 at bp, 4
+
+ var N size_t = n
+ var l size_t
+ if !(s != 0) {
+ n = uint64(0)
+ ws2 = *(*uintptr)(unsafe.Pointer(ws))
+ for ; *(*wchar_t)(unsafe.Pointer(ws2)) != 0; ws2 += 2 {
+ if uint32(*(*wchar_t)(unsafe.Pointer(ws2))) >= 0x80 {
+ l = Xwcrtomb(tls, bp, *(*wchar_t)(unsafe.Pointer(ws2)), uintptr(0))
+ if !(l+uint64(1) != 0) {
+ return Uint64FromInt32(-1)
+ }
+ n = n + l
+ } else {
+ n++
+ }
+ }
+ return n
+ }
+ for n >= uint64(4) {
+ if uint32(*(*wchar_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(ws)))))-1 >= 0x7f {
+ if !(int32(*(*wchar_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(ws))))) != 0) {
+ *(*int8)(unsafe.Pointer(s)) = int8(0)
+ *(*uintptr)(unsafe.Pointer(ws)) = uintptr(0)
+ return N - n
+ }
+ l = Xwcrtomb(tls, s, *(*wchar_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(ws)))), uintptr(0))
+ if !(l+uint64(1) != 0) {
+ return Uint64FromInt32(-1)
+ }
+ s += uintptr(l)
+ n = n - l
+ } else {
+ *(*int8)(unsafe.Pointer(PostIncUintptr(&s, 1))) = int8(*(*wchar_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(ws)))))
+ n--
+ }
+ *(*uintptr)(unsafe.Pointer(ws)) += 2
+ }
+ for n != 0 {
+ if uint32(*(*wchar_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(ws)))))-1 >= 0x7f {
+ if !(int32(*(*wchar_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(ws))))) != 0) {
+ *(*int8)(unsafe.Pointer(s)) = int8(0)
+ *(*uintptr)(unsafe.Pointer(ws)) = uintptr(0)
+ return N - n
+ }
+ l = Xwcrtomb(tls, bp, *(*wchar_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(ws)))), uintptr(0))
+ if !(l+uint64(1) != 0) {
+ return Uint64FromInt32(-1)
+ }
+ if l > n {
+ return N - n
+ }
+ Xwcrtomb(tls, s, *(*wchar_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(ws)))), uintptr(0))
+ s += uintptr(l)
+ n = n - l
+ } else {
+ *(*int8)(unsafe.Pointer(PostIncUintptr(&s, 1))) = int8(*(*wchar_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(ws)))))
+ n--
+ }
+ *(*uintptr)(unsafe.Pointer(ws)) += 2
+ }
+ return N
+}
+
+func Xwcstombs(tls *TLS, s uintptr, ws uintptr, n size_t) size_t { /* wcstombs.c:4:8: */
+ bp := tls.Alloc(8)
+ defer tls.Free(8)
+ *(*uintptr)(unsafe.Pointer(bp)) = ws
+
+ //TODO return wcsrtombs(s, &(const wchar_t *){ws}, n, 0);
+ return Xwcsrtombs(tls, s, bp, n, uintptr(0))
+}
+
+func Xbsearch(tls *TLS, key uintptr, base uintptr, nel size_t, width size_t, cmp uintptr) uintptr { /* bsearch.c:3:6: */
+ var try uintptr
+ var sign int32
+ for nel > uint64(0) {
+ try = base + uintptr(width*(nel/uint64(2)))
+ sign = (*struct {
+ f func(*TLS, uintptr, uintptr) int32
+ })(unsafe.Pointer(&struct{ uintptr }{cmp})).f(tls, key, try)
+ if sign < 0 {
+ nel = nel / uint64(2)
+ } else if sign > 0 {
+ base = try + uintptr(width)
+ nel = nel - (nel/uint64(2) + uint64(1))
+ } else {
+ return try
+ }
+ }
+ return uintptr(0)
+}
+
+// Support signed or unsigned plain-char
+
+// Implementation choices...
+
+// Arbitrary numbers...
+
+// POSIX/SUS requirements follow. These numbers come directly
+// from SUS and have nothing to do with the host system.
+
+func X__strchrnul(tls *TLS, s uintptr, c int32) uintptr { /* strchrnul.c:10:6: */
+ c = int32(uint8(c))
+ if !(c != 0) {
+ return s + uintptr(Xstrlen(tls, s))
+ }
+ var w uintptr
+ for ; uint64(s)%uint64(unsafe.Sizeof(size_t(0))) != 0; s++ {
+ if !(int32(*(*int8)(unsafe.Pointer(s))) != 0) || int32(*(*uint8)(unsafe.Pointer(s))) == c {
+ return s
+ }
+ }
+ var k size_t = Uint64(Uint64FromInt32(-1)) / uint64(255) * size_t(c)
+ for w = s; !((*(*uint64)(unsafe.Pointer(w))-Uint64(Uint64FromInt32(-1))/uint64(255)) & ^*(*uint64)(unsafe.Pointer(w)) & (Uint64(Uint64FromInt32(-1))/uint64(255)*uint64(255/2+1)) != 0) && !((*(*uint64)(unsafe.Pointer(w))^k-Uint64(Uint64FromInt32(-1))/uint64(255)) & ^(*(*uint64)(unsafe.Pointer(w))^k) & (Uint64(Uint64FromInt32(-1))/uint64(255)*uint64(255/2+1)) != 0); w += 8 {
+ }
+ s = w
+ for ; *(*int8)(unsafe.Pointer(s)) != 0 && int32(*(*uint8)(unsafe.Pointer(s))) != c; s++ {
+ }
+ return s
+}
+
+func Xstrdup(tls *TLS, s uintptr) uintptr { /* strdup.c:4:6: */
+ var l size_t = Xstrlen(tls, s)
+ var d uintptr = Xmalloc(tls, l+uint64(1))
+ if !(d != 0) {
+ return uintptr(0)
+ }
+ return Xmemcpy(tls, d, s, l+uint64(1))
+}
diff --git a/vendor/modernc.org/libc/pthread/capi_windows_arm64.go b/vendor/modernc.org/libc/pthread/capi_windows_arm64.go
new file mode 100644
index 00000000..f97f0bdf
--- /dev/null
+++ b/vendor/modernc.org/libc/pthread/capi_windows_arm64.go
@@ -0,0 +1,9 @@
+// Code generated by 'ccgo pthread\gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o pthread\pthread_windows_arm64.go -pkgname pthread', DO NOT EDIT.
+
+package pthread
+
+var CAPI = map[string]struct{}{
+ "daylight": {},
+ "timezone": {},
+ "tzname": {},
+}
diff --git a/vendor/modernc.org/libc/pthread/pthread_windows_arm64.go b/vendor/modernc.org/libc/pthread/pthread_windows_arm64.go
new file mode 100644
index 00000000..02a89dfb
--- /dev/null
+++ b/vendor/modernc.org/libc/pthread/pthread_windows_arm64.go
@@ -0,0 +1,1050 @@
+// Code generated by 'ccgo pthread\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o pthread\pthread_windows_arm64.go -pkgname pthread', DO NOT EDIT.
+
+package pthread
+
+import (
+ "math"
+ "reflect"
+ "sync/atomic"
+ "unsafe"
+)
+
+var _ = math.Pi
+var _ reflect.Kind
+var _ atomic.Value
+var _ unsafe.Pointer
+
+const (
+ CHAR_BIT = 8
+ CHAR_MAX = 127
+ CHAR_MIN = -128
+ CLK_TCK = 1000
+ CLOCKS_PER_SEC = 1000
+ CLOCK_MONOTONIC = 1
+ CLOCK_PROCESS_CPUTIME_ID = 2
+ CLOCK_REALTIME = 0
+ CLOCK_REALTIME_COARSE = 4
+ CLOCK_THREAD_CPUTIME_ID = 3
+ DUMMYSTRUCTNAME = 0
+ DUMMYSTRUCTNAME1 = 0
+ DUMMYSTRUCTNAME2 = 0
+ DUMMYSTRUCTNAME3 = 0
+ DUMMYSTRUCTNAME4 = 0
+ DUMMYSTRUCTNAME5 = 0
+ DUMMYUNIONNAME = 0
+ DUMMYUNIONNAME1 = 0
+ DUMMYUNIONNAME2 = 0
+ DUMMYUNIONNAME3 = 0
+ DUMMYUNIONNAME4 = 0
+ DUMMYUNIONNAME5 = 0
+ DUMMYUNIONNAME6 = 0
+ DUMMYUNIONNAME7 = 0
+ DUMMYUNIONNAME8 = 0
+ DUMMYUNIONNAME9 = 0
+ E2BIG = 7
+ EACCES = 13
+ EADDRINUSE = 100
+ EADDRNOTAVAIL = 101
+ EAFNOSUPPORT = 102
+ EAGAIN = 11
+ EALREADY = 103
+ EBADF = 9
+ EBADMSG = 104
+ EBUSY = 16
+ ECANCELED = 105
+ ECHILD = 10
+ ECONNABORTED = 106
+ ECONNREFUSED = 107
+ ECONNRESET = 108
+ EDEADLK = 36
+ EDEADLOCK = 36
+ EDESTADDRREQ = 109
+ EDOM = 33
+ EEXIST = 17
+ EFAULT = 14
+ EFBIG = 27
+ EHOSTUNREACH = 110
+ EIDRM = 111
+ EILSEQ = 42
+ EINPROGRESS = 112
+ EINTR = 4
+ EINVAL = 22
+ EIO = 5
+ EISCONN = 113
+ EISDIR = 21
+ ELOOP = 114
+ EMFILE = 24
+ EMLINK = 31
+ EMSGSIZE = 115
+ ENAMETOOLONG = 38
+ ENETDOWN = 116
+ ENETRESET = 117
+ ENETUNREACH = 118
+ ENFILE = 23
+ ENOBUFS = 119
+ ENODATA = 120
+ ENODEV = 19
+ ENOENT = 2
+ ENOEXEC = 8
+ ENOFILE = 2
+ ENOLCK = 39
+ ENOLINK = 121
+ ENOMEM = 12
+ ENOMSG = 122
+ ENOPROTOOPT = 123
+ ENOSPC = 28
+ ENOSR = 124
+ ENOSTR = 125
+ ENOSYS = 40
+ ENOTCONN = 126
+ ENOTDIR = 20
+ ENOTEMPTY = 41
+ ENOTRECOVERABLE = 127
+ ENOTSOCK = 128
+ ENOTSUP = 129
+ ENOTTY = 25
+ ENXIO = 6
+ EOPNOTSUPP = 130
+ EOVERFLOW = 132
+ EOWNERDEAD = 133
+ EPERM = 1
+ EPIPE = 32
+ EPROTO = 134
+ EPROTONOSUPPORT = 135
+ EPROTOTYPE = 136
+ ERANGE = 34
+ EROFS = 30
+ ESPIPE = 29
+ ESRCH = 3
+ ETIME = 137
+ ETIMEDOUT = 138
+ ETXTBSY = 139
+ EWOULDBLOCK = 140
+ EXDEV = 18
+ GENERIC_ERRORCHECK_INITIALIZER = -2
+ GENERIC_INITIALIZER = -1
+ GENERIC_NORMAL_INITIALIZER = -1
+ GENERIC_RECURSIVE_INITIALIZER = -3
+ INT_MAX = 2147483647
+ INT_MIN = -2147483648
+ LLONG_MAX = 9223372036854775807
+ LLONG_MIN = -9223372036854775808
+ LONG_LONG_MAX = 9223372036854775807
+ LONG_LONG_MIN = -9223372036854775808
+ LONG_MAX = 2147483647
+ LONG_MIN = -2147483648
+ MAX_READ_LOCKS = 2147483646
+ MB_LEN_MAX = 1
+ MINGW_DDK_H = 0
+ MINGW_HAS_DDK_H = 1
+ MINGW_HAS_SECURE_API = 1
+ MINGW_SDK_INIT = 0
+ NSIG = 23
+ OLD_P_OVERLAY = 2
+ PTHREAD_BARRIER_SERIAL_THREAD = 1
+ PTHREAD_CANCEL_ASYNCHRONOUS = 0x02
+ PTHREAD_CANCEL_DEFERRED = 0
+ PTHREAD_CANCEL_DISABLE = 0
+ PTHREAD_CANCEL_ENABLE = 0x01
+ PTHREAD_CREATE_DETACHED = 0x04
+ PTHREAD_CREATE_JOINABLE = 0
+ PTHREAD_DEFAULT_ATTR = 1
+ PTHREAD_DESTRUCTOR_ITERATIONS = 256
+ PTHREAD_EXPLICIT_SCHED = 0
+ PTHREAD_INHERIT_SCHED = 0x08
+ PTHREAD_KEYS_MAX = 1048576
+ PTHREAD_MUTEX_ADAPTIVE_NP = 0
+ PTHREAD_MUTEX_DEFAULT = 0
+ PTHREAD_MUTEX_ERRORCHECK = 1
+ PTHREAD_MUTEX_ERRORCHECK_NP = 1
+ PTHREAD_MUTEX_FAST_NP = 0
+ PTHREAD_MUTEX_NORMAL = 0
+ PTHREAD_MUTEX_PRIVATE = 0
+ PTHREAD_MUTEX_RECURSIVE = 2
+ PTHREAD_MUTEX_RECURSIVE_NP = 2
+ PTHREAD_MUTEX_SHARED = 1
+ PTHREAD_MUTEX_TIMED_NP = 0
+ PTHREAD_ONCE_INIT = 0
+ PTHREAD_PRIO_INHERIT = 8
+ PTHREAD_PRIO_MULT = 32
+ PTHREAD_PRIO_NONE = 0
+ PTHREAD_PRIO_PROTECT = 16
+ PTHREAD_PROCESS_PRIVATE = 0
+ PTHREAD_PROCESS_SHARED = 1
+ PTHREAD_SCOPE_PROCESS = 0
+ PTHREAD_SCOPE_SYSTEM = 0x10
+ PTHREAD_THREADS_MAX = 2019
+ P_DETACH = 4
+ P_NOWAIT = 1
+ P_NOWAITO = 3
+ P_OVERLAY = 2
+ P_WAIT = 0
+ RWLS_PER_THREAD = 8
+ SCHAR_MAX = 127
+ SCHAR_MIN = -128
+ SCHED_FIFO = 1
+ SCHED_MAX = 2
+ SCHED_MIN = 0
+ SCHED_OTHER = 0
+ SCHED_RR = 2
+ SEM_NSEMS_MAX = 1024
+ SHRT_MAX = 32767
+ SHRT_MIN = -32768
+ SIGABRT = 22
+ SIGABRT2 = 22
+ SIGABRT_COMPAT = 6
+ SIGBREAK = 21
+ SIGFPE = 8
+ SIGILL = 4
+ SIGINT = 2
+ SIGSEGV = 11
+ SIGTERM = 15
+ SIG_BLOCK = 0
+ SIG_SETMASK = 2
+ SIG_UNBLOCK = 1
+ STRUNCATE = 80
+ TIMER_ABSTIME = 1
+ TIME_UTC = 1
+ UCHAR_MAX = 255
+ UINT_MAX = 4294967295
+ ULLONG_MAX = 18446744073709551615
+ ULONG_LONG_MAX = 18446744073709551615
+ ULONG_MAX = 4294967295
+ UNALIGNED = 0
+ USE___UUIDOF = 0
+ USHRT_MAX = 65535
+ WAIT_CHILD = 0
+ WAIT_GRANDCHILD = 1
+ WIN32 = 1
+ WIN64 = 1
+ WINNT = 1
+ WINPTHREAD_API = 0
+ WIN_PTHREADS_H = 0
+ WIN_PTHREADS_PTHREAD_COMPAT_H = 0
+ WIN_PTHREADS_SIGNAL_H = 0
+ WIN_PTHREADS_TIME_H = 0
+ WIN_PTHREADS_UNISTD_H = 0
+ X_AGLOBAL = 0
+ X_ANONYMOUS_STRUCT = 0
+ X_ANONYMOUS_UNION = 0
+ X_ARGMAX = 100
+ X_ARM64_ = 1
+ X_CLOCK_T_DEFINED = 0
+ X_CONST_RETURN = 0
+ X_CRTNOALIAS = 0
+ X_CRTRESTRICT = 0
+ X_CRT_ALTERNATIVE_IMPORTED = 0
+ X_CRT_ERRNO_DEFINED = 0
+ X_CRT_GETPID_DEFINED = 0
+ X_CRT_MANAGED_HEAP_DEPRECATE = 0
+ X_CRT_PACKING = 8
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
+ X_CRT_SYSTEM_DEFINED = 0
+ X_CRT_TERMINATE_DEFINED = 0
+ X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0
+ X_CRT_WSYSTEM_DEFINED = 0
+ X_DEV_T_DEFINED = 0
+ X_DLL = 0
+ X_ERRCODE_DEFINED = 0
+ X_FILE_OFFSET_BITS = 64
+ X_FILE_OFFSET_BITS_SET_OFFT = 0
+ X_GCC_LIMITS_H_ = 0
+ X_GTHREAD_USE_MUTEX_INIT_FUNC = 1
+ X_INC_CORECRT = 0
+ X_INC_CORECRT_STARTUP = 0
+ X_INC_CRTDEFS = 0
+ X_INC_CRTDEFS_MACRO = 0
+ X_INC_ERRNO = 0
+ X_INC_MINGW_SECAPI = 0
+ X_INC_PROCESS = 0
+ X_INC_SIGNAL = 0
+ X_INC_TYPES = 0
+ X_INC_VADEFS = 0
+ X_INC_WTIME_INL = 0
+ X_INC_WTIME_S_INL = 0
+ X_INC__MINGW_H = 0
+ X_INO_T_DEFINED = 0
+ X_INT128_DEFINED = 0
+ X_INTPTR_T_DEFINED = 0
+ X_MODE_T_ = 0
+ X_MT = 0
+ X_M_ARM64 = 1
+ X_OFF64_T_DEFINED = 0
+ X_OFF_T_ = 0
+ X_OFF_T_DEFINED = 0
+ X_OLD_P_OVERLAY = 2
+ X_PGLOBAL = 0
+ X_PID_T_ = 0
+ X_POSIX_BARRIERS = 200112
+ X_POSIX_CLOCK_SELECTION = 200112
+ X_POSIX_CPUTIME = 200809
+ X_POSIX_MONOTONIC_CLOCK = 200809
+ X_POSIX_READER_WRITER_LOCKS = 200112
+ X_POSIX_SEMAPHORES = 200112
+ X_POSIX_SEM_NSEMS_MAX = 256
+ X_POSIX_SPIN_LOCKS = 200112
+ X_POSIX_THREADS = 200112
+ X_POSIX_THREAD_CPUTIME = 200809
+ X_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 256
+ X_POSIX_THREAD_KEYS_MAX = 1048576
+ X_POSIX_TIMEOUTS = 200112
+ X_POSIX_TIMERS = 200809
+ X_PTRDIFF_T = 0
+ X_PTRDIFF_T_ = 0
+ X_PTRDIFF_T_DEFINED = 0
+ X_P_DETACH = 4
+ X_P_NOWAIT = 1
+ X_P_NOWAITO = 3
+ X_P_OVERLAY = 2
+ X_P_WAIT = 0
+ X_RSIZE_T_DEFINED = 0
+ X_SECURECRT_ERRCODE_VALUES_DEFINED = 0
+ X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD
+ X_SIGSET_T_ = 0
+ X_SIG_ATOMIC_T_DEFINED = 0
+ X_SIZE_T = 0
+ X_SIZE_T_DEFINED = 0
+ X_SPAWNV_DEFINED = 0
+ X_SSIZE_T_DEFINED = 0
+ X_TAGLC_ID_DEFINED = 0
+ X_THREADLOCALEINFO = 0
+ X_TIME32_T_DEFINED = 0
+ X_TIME64_T_DEFINED = 0
+ X_TIMEB_DEFINED = 0
+ X_TIMEB_H_ = 0
+ X_TIMEB_H_S = 0
+ X_TIMESPEC_DEFINED = 0
+ X_TIMEVAL_DEFINED = 0
+ X_TIMEZONE_DEFINED = 0
+ X_TIME_H_ = 0
+ X_TIME_T_DEFINED = 0
+ X_TM_DEFINED = 0
+ X_UCRT = 0
+ X_UINTPTR_T_DEFINED = 0
+ X_VA_LIST_DEFINED = 0
+ X_W64 = 0
+ X_WAIT_CHILD = 0
+ X_WAIT_GRANDCHILD = 1
+ X_WCHAR_T = 0
+ X_WCHAR_T_DEFINED = 0
+ X_WCTYPE_T_DEFINED = 0
+ X_WEXEC_DEFINED = 0
+ X_WIN32 = 1
+ X_WIN32_WINNT = 0x601
+ X_WIN64 = 1
+ X_WINT_T = 0
+ X_WSPAWN_DEFINED = 0
+ X_WTIME_DEFINED = 0
+)
+
+type Ptrdiff_t = int64 /* <builtin>:3:26 */
+
+type Size_t = uint64 /* <builtin>:9:23 */
+
+type Wchar_t = uint16 /* <builtin>:15:24 */
+
+type X__int128_t = struct {
+ Flo int64
+ Fhi int64
+} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
+type X__uint128_t = struct {
+ Flo uint64
+ Fhi uint64
+} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
+
+type X__builtin_va_list = uintptr /* <builtin>:46:14 */
+type X__float128 = float64 /* <builtin>:47:21 */
+
+type Va_list = X__builtin_va_list /* <builtin>:50:27 */
+
+// ===---- __stddef_max_align_t.h - Definition of max_align_t for modules ---===
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===-----------------------------------------------------------------------===
+
+// Define 'max_align_t' to match the GCC definition.
+type Max_align_t = struct {
+ F__clang_max_align_nonce1 int64
+ F__clang_max_align_nonce2 float64
+} /* __stddef_max_align_t.h:24:3 */
+
+// Some C libraries expect to see a wint_t here. Others (notably MinGW) will use
+// __WINT_TYPE__ directly; accommodate both by requiring __need_wint_t
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// This macro holds an monotonic increasing value, which indicates
+// a specific fix/patch is present on trunk. This value isn't related to
+// minor/major version-macros. It is increased on demand, if a big
+// fix was applied to trunk. This macro gets just increased on trunk. For
+// other branches its value won't be modified.
+
+// mingw.org's version macros: these make gcc to define
+// MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
+// and the __mingwthr_key_dtor() function from the MinGW
+// CRT in its private gthr-win32.h header.
+
+// Set VC specific compiler target macros.
+
+// MS does not prefix symbols by underscores for 64-bit.
+// As we have to support older gcc version, which are using underscores
+// as symbol prefix for x64, we have to check here for the user label
+// prefix defined by gcc.
+
+// Special case nameless struct/union.
+
+// MinGW-w64 has some additional C99 printf/scanf feature support.
+// So we add some helper macros to ease recognition of them.
+
+// If _FORTIFY_SOURCE is enabled, some inline functions may use
+// __builtin_va_arg_pack(). GCC may report an error if the address
+// of such a function is used. Set _FORTIFY_VA_ARG=0 in this case.
+
+// Enable workaround for ABI incompatibility on affected platforms
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
+// Templates won't work in C, will break if secure API is not enabled, disabled
+
+// https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
+// fallback on default implementation if we can't know the size of the destination
+
+// Include _cygwin.h if we're building a Cygwin application.
+
+// Target specific macro replacement for type "long". In the Windows API,
+// the type long is always 32 bit, even if the target is 64 bit (LLP64).
+// On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right
+// sized definitions and declarations, all usage of type long in the Windows
+// headers have to be replaced by the below defined macro __LONG32.
+
+// C/C++ specific language defines.
+
+// Note the extern. This is needed to work around GCC's
+// limitations in handling dllimport attribute.
+
+// Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
+// variadiac macro facility, because variadic macros cause syntax
+// errors with --traditional-cpp.
+
+// High byte is the major version, low byte is the minor.
+
+// Allow both 0x1400 and 0xE00 to identify UCRT
+
+// ===-------- vadefs.h ---------------------------------------------------===
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===-----------------------------------------------------------------------===
+
+// Only include this if we are aiming for MSVC compatibility.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// for backward compatibility
+
+type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
+
+type Ssize_t = int64 /* corecrt.h:45:35 */
+
+type Rsize_t = Size_t /* corecrt.h:52:16 */
+
+type Intptr_t = int64 /* corecrt.h:62:35 */
+
+type Uintptr_t = uint64 /* corecrt.h:75:44 */
+
+type Wint_t = uint16 /* corecrt.h:106:24 */
+type Wctype_t = uint16 /* corecrt.h:107:24 */
+
+type Errno_t = int32 /* corecrt.h:113:13 */
+
+type X__time32_t = int32 /* corecrt.h:118:14 */
+
+type X__time64_t = int64 /* corecrt.h:123:35 */
+
+type Time_t = X__time64_t /* corecrt.h:138:20 */
+
+type Threadlocaleinfostruct = struct {
+ F_locale_pctype uintptr
+ F_locale_mb_cur_max int32
+ F_locale_lc_codepage uint32
+} /* corecrt.h:430:1 */
+
+type Pthreadlocinfo = uintptr /* corecrt.h:432:39 */
+type Pthreadmbcinfo = uintptr /* corecrt.h:433:36 */
+
+type Localeinfo_struct = struct {
+ Flocinfo Pthreadlocinfo
+ Fmbcinfo Pthreadmbcinfo
+} /* corecrt.h:436:9 */
+
+type X_locale_tstruct = Localeinfo_struct /* corecrt.h:439:3 */
+type X_locale_t = uintptr /* corecrt.h:439:19 */
+
+type TagLC_ID = struct {
+ FwLanguage uint16
+ FwCountry uint16
+ FwCodePage uint16
+} /* corecrt.h:443:9 */
+
+type LC_ID = TagLC_ID /* corecrt.h:447:3 */
+type LPLC_ID = uintptr /* corecrt.h:447:9 */
+
+type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:482:3 */
+
+// Posix thread extensions.
+
+// Extension defined as by report VC 10+ defines error-numbers.
+
+// Defined as WSAETIMEDOUT.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+type X_ino_t = uint16 /* types.h:43:24 */
+type Ino_t = uint16 /* types.h:45:24 */
+
+type X_dev_t = uint32 /* types.h:51:22 */
+type Dev_t = uint32 /* types.h:53:22 */
+
+type X_pid_t = int64 /* types.h:63:17 */
+
+type Pid_t = X_pid_t /* types.h:68:16 */
+
+type X_mode_t = uint16 /* types.h:74:24 */
+
+type Mode_t = X_mode_t /* types.h:77:17 */
+
+type X_off_t = int32 /* _mingw_off_t.h:5:16 */
+type Off32_t = int32 /* _mingw_off_t.h:7:16 */
+
+type X_off64_t = int64 /* _mingw_off_t.h:13:39 */
+type Off64_t = int64 /* _mingw_off_t.h:15:39 */
+
+type Off_t = Off64_t /* _mingw_off_t.h:24:17 */
+
+type Useconds_t = uint32 /* types.h:84:22 */
+
+type Timespec = struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+} /* types.h:89:1 */
+
+type Itimerspec = struct {
+ Fit_interval struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+ }
+ Fit_value struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+ }
+} /* types.h:94:1 */
+
+type X_sigset_t = uint64 /* types.h:104:28 */
+
+type X_PVFV = uintptr /* corecrt_startup.h:20:14 */
+type X_PIFV = uintptr /* corecrt_startup.h:21:13 */
+type X_PVFI = uintptr /* corecrt_startup.h:22:14 */
+
+type X_onexit_table_t1 = struct {
+ F_first uintptr
+ F_last uintptr
+ F_end uintptr
+} /* corecrt_startup.h:24:9 */
+
+type X_onexit_table_t = X_onexit_table_t1 /* corecrt_startup.h:28:3 */
+
+type X_onexit_t = uintptr /* corecrt_startup.h:30:13 */
+
+// Includes a definition of _pid_t and pid_t
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+type X_beginthread_proc_type = uintptr /* process.h:32:16 */
+type X_beginthreadex_proc_type = uintptr /* process.h:33:20 */
+
+type X_tls_callback_type = uintptr /* process.h:64:16 */
+
+//===---- limits.h - Standard header for integer sizes --------------------===* *
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+// \*===----------------------------------------------------------------------===
+
+// The system's limits.h may, in turn, try to #include_next GCC's limits.h.
+// Avert this #include_next madness.
+
+// System headers include a number of constants from POSIX in <limits.h>.
+// Include it if we're hosted.
+
+// Many system headers try to "help us out" by defining these. No really, we
+// know how big each datatype is.
+
+// C90/99 5.2.4.2.1
+
+// C2x 5.2.4.2.1
+// FIXME: This is using the placeholder dates Clang produces for these macros
+// in C2x mode; switch to the correct values once they've been published.
+
+// C99 5.2.4.2.1: Added long long.
+// C++11 18.3.3.2: same contents as the Standard C Library header <limits.h>.
+//
+
+// LONG_LONG_MIN/LONG_LONG_MAX/ULONG_LONG_MAX are a GNU extension. It's too bad
+// that we don't have something like #pragma poison that could be used to
+// deprecate a macro - the code should just use LLONG_MAX and friends.
+//
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+//
+// Copyright (c) 2013-2016 mingw-w64 project
+//
+// Permission is hereby granted, free of charge, to any person obtaining a
+// copy of this software and associated documentation files (the "Software"),
+// to deal in the Software without restriction, including without limitation
+// the rights to use, copy, modify, merge, publish, distribute, sublicense,
+// and/or sell copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+// DEALINGS IN THE SOFTWARE.
+
+// Windows has rudimentary signals support.
+
+type Sig_atomic_t = int32 /* signal.h:18:15 */
+
+type X__p_sig_fn_t = uintptr /* signal.h:48:16 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// Adding timespec definition.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+type X__timeb32 = struct {
+ Ftime X__time32_t
+ Fmillitm uint16
+ Ftimezone int16
+ Fdstflag int16
+ F__ccgo_pad1 [2]byte
+} /* timeb.h:53:3 */
+
+type Timeb = struct {
+ Ftime Time_t
+ Fmillitm uint16
+ Ftimezone int16
+ Fdstflag int16
+ F__ccgo_pad1 [2]byte
+} /* timeb.h:61:3 */
+
+type X__timeb64 = struct {
+ Ftime X__time64_t
+ Fmillitm uint16
+ Ftimezone int16
+ Fdstflag int16
+ F__ccgo_pad1 [2]byte
+} /* timeb.h:69:3 */
+
+type X_timespec32 = struct {
+ Ftv_sec X__time32_t
+ Ftv_nsec int32
+} /* timeb.h:89:1 */
+
+type X_timespec64 = struct {
+ Ftv_sec X__time64_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+} /* timeb.h:94:1 */
+
+type Clock_t = int32 /* time.h:63:16 */
+
+type Tm = struct {
+ Ftm_sec int32
+ Ftm_min int32
+ Ftm_hour int32
+ Ftm_mday int32
+ Ftm_mon int32
+ Ftm_year int32
+ Ftm_wday int32
+ Ftm_yday int32
+ Ftm_isdst int32
+} /* time.h:100:3 */
+
+var Xdaylight int32 /* time.h:275:22: */
+var Xtimezone int32 /* time.h:276:23: */
+var Xtzname [2]uintptr /* time.h:277:23: */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+type Timeval = struct {
+ Ftv_sec int32
+ Ftv_usec int32
+} /* _timeval.h:10:1 */
+
+type Timezone = struct {
+ Ftz_minuteswest int32
+ Ftz_dsttime int32
+} /* time.h:285:1 */
+
+// POSIX 2008 says clock_gettime and timespec are defined in time.h header,
+// but other systems - like Linux, Solaris, etc - tend to declare such
+// recent extensions only if the following guards are met.
+//
+// Copyright (c) 2011-2016 mingw-w64 project
+//
+// Permission is hereby granted, free of charge, to any person obtaining a
+// copy of this software and associated documentation files (the "Software"),
+// to deal in the Software without restriction, including without limitation
+// the rights to use, copy, modify, merge, publish, distribute, sublicense,
+// and/or sell copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+// DEALINGS IN THE SOFTWARE.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// Posix timers are supported
+
+// Monotonic clocks are available.
+
+// CPU-time clocks are available.
+
+// Clock support in threads are available.
+
+type Clockid_t = int32 /* pthread_time.h:49:13 */
+
+// maximum number of times a read lock may be obtained
+
+// No fork() in windows - so ignore this
+
+// unsupported stuff:
+
+type Pthread_once_t = int32 /* pthread.h:181:14 */
+type Pthread_mutexattr_t = uint32 /* pthread.h:182:18 */
+type Pthread_key_t = uint32 /* pthread.h:183:18 */
+type Pthread_barrierattr_t = uintptr /* pthread.h:184:14 */
+type Pthread_condattr_t = int32 /* pthread.h:185:13 */
+type Pthread_rwlockattr_t = int32 /* pthread.h:186:13 */
+
+//
+// struct _pthread_v;
+//
+// typedef struct pthread_t {
+// struct _pthread_v *p;
+// int x;
+// } pthread_t;
+
+type Pthread_t = Uintptr_t /* pthread.h:197:19 */
+
+type X_pthread_cleanup1 = struct {
+ Ffunc uintptr
+ Farg uintptr
+ Fnext uintptr
+} /* pthread.h:199:9 */
+
+type X_pthread_cleanup = X_pthread_cleanup1 /* pthread.h:199:33 */
+
+// Note that if async cancelling is used, then there is a race here
+
+// Some POSIX realtime extensions, mostly stubbed
+
+type Sched_param = struct{ Fsched_priority int32 } /* pthread.h:226:1 */
+
+type Pthread_attr_t1 = struct {
+ Fp_state uint32
+ F__ccgo_pad1 [4]byte
+ Fstack uintptr
+ Fs_size Size_t
+ Fparam struct{ Fsched_priority int32 }
+ F__ccgo_pad2 [4]byte
+} /* pthread.h:238:9 */
+
+type Pthread_attr_t = Pthread_attr_t1 /* pthread.h:238:31 */
+
+// synchronization objects
+type Pthread_spinlock_t = Intptr_t /* pthread.h:255:18 */
+type Pthread_mutex_t = Intptr_t /* pthread.h:256:18 */
+type Pthread_cond_t = Intptr_t /* pthread.h:257:18 */
+type Pthread_rwlock_t = Intptr_t /* pthread.h:258:18 */
+type Pthread_barrier_t = uintptr /* pthread.h:259:14 */
+
+//
+// Copyright (c) 2011-2016 mingw-w64 project
+//
+// Permission is hereby granted, free of charge, to any person obtaining a
+// copy of this software and associated documentation files (the "Software"),
+// to deal in the Software without restriction, including without limitation
+// the rights to use, copy, modify, merge, publish, distribute, sublicense,
+// and/or sell copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+// DEALINGS IN THE SOFTWARE.
+
+// Set defines described by the POSIX Threads Extension (1003.1c-1995)
+// _SC_THREADS
+// Basic support for POSIX threads is available. The functions
+//
+// pthread_atfork(),
+// pthread_attr_destroy(),
+// pthread_attr_getdetachstate(),
+// pthread_attr_getschedparam(),
+// pthread_attr_init(),
+// pthread_attr_setdetachstate(),
+// pthread_attr_setschedparam(),
+// pthread_cancel(),
+// pthread_cleanup_push(),
+// pthread_cleanup_pop(),
+// pthread_cond_broadcast(),
+// pthread_cond_destroy(),
+// pthread_cond_init(),
+// pthread_cond_signal(),
+// pthread_cond_timedwait(),
+// pthread_cond_wait(),
+// pthread_condattr_destroy(),
+// pthread_condattr_init(),
+// pthread_create(),
+// pthread_detach(),
+// pthread_equal(),
+// pthread_exit(),
+// pthread_getspecific(),
+// pthread_join(,
+// pthread_key_create(),
+// pthread_key_delete(),
+// pthread_mutex_destroy(),
+// pthread_mutex_init(),
+// pthread_mutex_lock(),
+// pthread_mutex_trylock(),
+// pthread_mutex_unlock(),
+// pthread_mutexattr_destroy(),
+// pthread_mutexattr_init(),
+// pthread_once(),
+// pthread_rwlock_destroy(),
+// pthread_rwlock_init(),
+// pthread_rwlock_rdlock(),
+// pthread_rwlock_tryrdlock(),
+// pthread_rwlock_trywrlock(),
+// pthread_rwlock_unlock(),
+// pthread_rwlock_wrlock(),
+// pthread_rwlockattr_destroy(),
+// pthread_rwlockattr_init(),
+// pthread_self(),
+// pthread_setcancelstate(),
+// pthread_setcanceltype(),
+// pthread_setspecific(),
+// pthread_testcancel()
+//
+// are present.
+
+// _SC_READER_WRITER_LOCKS
+// This option implies the _POSIX_THREADS option. Conversely, under
+// POSIX 1003.1-2001 the _POSIX_THREADS option implies this option.
+//
+// The functions
+// pthread_rwlock_destroy(),
+// pthread_rwlock_init(),
+// pthread_rwlock_rdlock(),
+// pthread_rwlock_tryrdlock(),
+// pthread_rwlock_trywrlock(),
+// pthread_rwlock_unlock(),
+// pthread_rwlock_wrlock(),
+// pthread_rwlockattr_destroy(),
+// pthread_rwlockattr_init()
+//
+// are present.
+
+// _SC_SPIN_LOCKS
+// This option implies the _POSIX_THREADS and _POSIX_THREAD_SAFE_FUNCTIONS
+// options. The functions
+//
+// pthread_spin_destroy(),
+// pthread_spin_init(),
+// pthread_spin_lock(),
+// pthread_spin_trylock(),
+// pthread_spin_unlock()
+//
+// are present.
+
+// _SC_BARRIERS
+// This option implies the _POSIX_THREADS and _POSIX_THREAD_SAFE_FUNCTIONS
+// options. The functions
+//
+// pthread_barrier_destroy(),
+// pthread_barrier_init(),
+// pthread_barrier_wait(),
+// pthread_barrierattr_destroy(),
+// pthread_barrierattr_init()
+//
+// are present.
+
+// _SC_TIMEOUTS
+// The functions
+//
+// mq_timedreceive(), - not supported
+// mq_timedsend(), - not supported
+// posix_trace_timedgetnext_event(), - not supported
+// pthread_mutex_timedlock(),
+// pthread_rwlock_timedrdlock(),
+// pthread_rwlock_timedwrlock(),
+// sem_timedwait(),
+//
+// are present.
+
+// _SC_TIMERS - not supported
+// The functions
+//
+// clock_getres(),
+// clock_gettime(),
+// clock_settime(),
+// nanosleep(),
+// timer_create(),
+// timer_delete(),
+// timer_gettime(),
+// timer_getoverrun(),
+// timer_settime()
+//
+// are present.
+// #undef _POSIX_TIMERS
+
+// _SC_CLOCK_SELECTION
+// This option implies the _POSIX_TIMERS option. The functions
+//
+// pthread_condattr_getclock(),
+// pthread_condattr_setclock(),
+// clock_nanosleep()
+//
+// are present.
+
+// _SC_SEMAPHORES
+// The include file <semaphore.h> is present. The functions
+//
+// sem_close(),
+// sem_destroy(),
+// sem_getvalue(),
+// sem_init(),
+// sem_open(),
+// sem_post(),
+// sem_trywait(),
+// sem_unlink(),
+// sem_wait()
+//
+// are present.
+
+// Wrap cancellation points.
+
+// We deal here with a gcc issue for posix threading on Windows.
+// We would need to change here gcc's gthr-posix.h header, but this
+// got rejected. So we deal it within this header.
+
+var _ int8 /* gen.c:2:13: */
diff --git a/vendor/modernc.org/libc/signal/capi_windows_arm64.go b/vendor/modernc.org/libc/signal/capi_windows_arm64.go
new file mode 100644
index 00000000..b422dfb8
--- /dev/null
+++ b/vendor/modernc.org/libc/signal/capi_windows_arm64.go
@@ -0,0 +1,5 @@
+// Code generated by 'ccgo signal\gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o signal\signal_windows_arm64.go -pkgname signal', DO NOT EDIT.
+
+package signal
+
+var CAPI = map[string]struct{}{}
diff --git a/vendor/modernc.org/libc/signal/signal_windows_arm64.go b/vendor/modernc.org/libc/signal/signal_windows_arm64.go
new file mode 100644
index 00000000..cc037392
--- /dev/null
+++ b/vendor/modernc.org/libc/signal/signal_windows_arm64.go
@@ -0,0 +1,313 @@
+// Code generated by 'ccgo signal\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o signal\signal_windows_arm64.go -pkgname signal', DO NOT EDIT.
+
+package signal
+
+import (
+ "math"
+ "reflect"
+ "sync/atomic"
+ "unsafe"
+)
+
+var _ = math.Pi
+var _ reflect.Kind
+var _ atomic.Value
+var _ unsafe.Pointer
+
+const (
+ DUMMYSTRUCTNAME = 0
+ DUMMYSTRUCTNAME1 = 0
+ DUMMYSTRUCTNAME2 = 0
+ DUMMYSTRUCTNAME3 = 0
+ DUMMYSTRUCTNAME4 = 0
+ DUMMYSTRUCTNAME5 = 0
+ DUMMYUNIONNAME = 0
+ DUMMYUNIONNAME1 = 0
+ DUMMYUNIONNAME2 = 0
+ DUMMYUNIONNAME3 = 0
+ DUMMYUNIONNAME4 = 0
+ DUMMYUNIONNAME5 = 0
+ DUMMYUNIONNAME6 = 0
+ DUMMYUNIONNAME7 = 0
+ DUMMYUNIONNAME8 = 0
+ DUMMYUNIONNAME9 = 0
+ MINGW_DDK_H = 0
+ MINGW_HAS_DDK_H = 1
+ MINGW_HAS_SECURE_API = 1
+ MINGW_SDK_INIT = 0
+ NSIG = 23
+ SIGABRT = 22
+ SIGABRT2 = 22
+ SIGABRT_COMPAT = 6
+ SIGBREAK = 21
+ SIGFPE = 8
+ SIGILL = 4
+ SIGINT = 2
+ SIGSEGV = 11
+ SIGTERM = 15
+ UNALIGNED = 0
+ USE___UUIDOF = 0
+ WIN32 = 1
+ WIN64 = 1
+ WINNT = 1
+ WIN_PTHREADS_SIGNAL_H = 0
+ X_AGLOBAL = 0
+ X_ANONYMOUS_STRUCT = 0
+ X_ANONYMOUS_UNION = 0
+ X_ARGMAX = 100
+ X_ARM64_ = 1
+ X_CONST_RETURN = 0
+ X_CRTNOALIAS = 0
+ X_CRTRESTRICT = 0
+ X_CRT_ALTERNATIVE_IMPORTED = 0
+ X_CRT_MANAGED_HEAP_DEPRECATE = 0
+ X_CRT_PACKING = 8
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
+ X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0
+ X_DLL = 0
+ X_ERRCODE_DEFINED = 0
+ X_FILE_OFFSET_BITS = 64
+ X_INC_CORECRT = 0
+ X_INC_CRTDEFS = 0
+ X_INC_CRTDEFS_MACRO = 0
+ X_INC_MINGW_SECAPI = 0
+ X_INC_SIGNAL = 0
+ X_INC_VADEFS = 0
+ X_INC__MINGW_H = 0
+ X_INT128_DEFINED = 0
+ X_INTPTR_T_DEFINED = 0
+ X_MT = 0
+ X_M_ARM64 = 1
+ X_PGLOBAL = 0
+ X_PTRDIFF_T_ = 0
+ X_PTRDIFF_T_DEFINED = 0
+ X_RSIZE_T_DEFINED = 0
+ X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD
+ X_SIG_ATOMIC_T_DEFINED = 0
+ X_SIZE_T_DEFINED = 0
+ X_SSIZE_T_DEFINED = 0
+ X_TAGLC_ID_DEFINED = 0
+ X_THREADLOCALEINFO = 0
+ X_TIME32_T_DEFINED = 0
+ X_TIME64_T_DEFINED = 0
+ X_TIME_T_DEFINED = 0
+ X_UCRT = 0
+ X_UINTPTR_T_DEFINED = 0
+ X_VA_LIST_DEFINED = 0
+ X_W64 = 0
+ X_WCHAR_T_DEFINED = 0
+ X_WCTYPE_T_DEFINED = 0
+ X_WIN32 = 1
+ X_WIN32_WINNT = 0x601
+ X_WIN64 = 1
+ X_WINT_T = 0
+)
+
+type Ptrdiff_t = int64 /* <builtin>:3:26 */
+
+type Size_t = uint64 /* <builtin>:9:23 */
+
+type Wchar_t = uint16 /* <builtin>:15:24 */
+
+type X__int128_t = struct {
+ Flo int64
+ Fhi int64
+} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
+type X__uint128_t = struct {
+ Flo uint64
+ Fhi uint64
+} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
+
+type X__builtin_va_list = uintptr /* <builtin>:46:14 */
+type X__float128 = float64 /* <builtin>:47:21 */
+
+type Va_list = X__builtin_va_list /* <builtin>:50:27 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// This macro holds an monotonic increasing value, which indicates
+// a specific fix/patch is present on trunk. This value isn't related to
+// minor/major version-macros. It is increased on demand, if a big
+// fix was applied to trunk. This macro gets just increased on trunk. For
+// other branches its value won't be modified.
+
+// mingw.org's version macros: these make gcc to define
+// MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
+// and the __mingwthr_key_dtor() function from the MinGW
+// CRT in its private gthr-win32.h header.
+
+// Set VC specific compiler target macros.
+
+// MS does not prefix symbols by underscores for 64-bit.
+// As we have to support older gcc version, which are using underscores
+// as symbol prefix for x64, we have to check here for the user label
+// prefix defined by gcc.
+
+// Special case nameless struct/union.
+
+// MinGW-w64 has some additional C99 printf/scanf feature support.
+// So we add some helper macros to ease recognition of them.
+
+// If _FORTIFY_SOURCE is enabled, some inline functions may use
+// __builtin_va_arg_pack(). GCC may report an error if the address
+// of such a function is used. Set _FORTIFY_VA_ARG=0 in this case.
+
+// Enable workaround for ABI incompatibility on affected platforms
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
+// Templates won't work in C, will break if secure API is not enabled, disabled
+
+// https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
+// fallback on default implementation if we can't know the size of the destination
+
+// Include _cygwin.h if we're building a Cygwin application.
+
+// Target specific macro replacement for type "long". In the Windows API,
+// the type long is always 32 bit, even if the target is 64 bit (LLP64).
+// On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right
+// sized definitions and declarations, all usage of type long in the Windows
+// headers have to be replaced by the below defined macro __LONG32.
+
+// C/C++ specific language defines.
+
+// Note the extern. This is needed to work around GCC's
+// limitations in handling dllimport attribute.
+
+// Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
+// variadiac macro facility, because variadic macros cause syntax
+// errors with --traditional-cpp.
+
+// High byte is the major version, low byte is the minor.
+
+// Allow both 0x1400 and 0xE00 to identify UCRT
+
+// ===-------- vadefs.h ---------------------------------------------------===
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===-----------------------------------------------------------------------===
+
+// Only include this if we are aiming for MSVC compatibility.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// for backward compatibility
+
+type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
+
+type Ssize_t = int64 /* corecrt.h:45:35 */
+
+type Rsize_t = Size_t /* corecrt.h:52:16 */
+
+type Intptr_t = int64 /* corecrt.h:62:35 */
+
+type Uintptr_t = uint64 /* corecrt.h:75:44 */
+
+type Wint_t = uint16 /* corecrt.h:106:24 */
+type Wctype_t = uint16 /* corecrt.h:107:24 */
+
+type Errno_t = int32 /* corecrt.h:113:13 */
+
+type X__time32_t = int32 /* corecrt.h:118:14 */
+
+type X__time64_t = int64 /* corecrt.h:123:35 */
+
+type Time_t = X__time64_t /* corecrt.h:138:20 */
+
+type Threadlocaleinfostruct = struct {
+ F_locale_pctype uintptr
+ F_locale_mb_cur_max int32
+ F_locale_lc_codepage uint32
+} /* corecrt.h:430:1 */
+
+type Pthreadlocinfo = uintptr /* corecrt.h:432:39 */
+type Pthreadmbcinfo = uintptr /* corecrt.h:433:36 */
+
+type Localeinfo_struct = struct {
+ Flocinfo Pthreadlocinfo
+ Fmbcinfo Pthreadmbcinfo
+} /* corecrt.h:436:9 */
+
+type X_locale_tstruct = Localeinfo_struct /* corecrt.h:439:3 */
+type X_locale_t = uintptr /* corecrt.h:439:19 */
+
+type TagLC_ID = struct {
+ FwLanguage uint16
+ FwCountry uint16
+ FwCodePage uint16
+} /* corecrt.h:443:9 */
+
+type LC_ID = TagLC_ID /* corecrt.h:447:3 */
+type LPLC_ID = uintptr /* corecrt.h:447:9 */
+
+type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:482:3 */
+
+//
+// Copyright (c) 2013-2016 mingw-w64 project
+//
+// Permission is hereby granted, free of charge, to any person obtaining a
+// copy of this software and associated documentation files (the "Software"),
+// to deal in the Software without restriction, including without limitation
+// the rights to use, copy, modify, merge, publish, distribute, sublicense,
+// and/or sell copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+// DEALINGS IN THE SOFTWARE.
+
+// Windows has rudimentary signals support.
+
+type Sig_atomic_t = int32 /* signal.h:18:15 */
+
+type X__p_sig_fn_t = uintptr /* signal.h:48:16 */
+
+var _ int8 /* gen.c:2:13: */
diff --git a/vendor/modernc.org/libc/stdio/capi_windows_arm64.go b/vendor/modernc.org/libc/stdio/capi_windows_arm64.go
new file mode 100644
index 00000000..d8977aaa
--- /dev/null
+++ b/vendor/modernc.org/libc/stdio/capi_windows_arm64.go
@@ -0,0 +1,5 @@
+// Code generated by 'ccgo stdio\gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdio\stdio_windows_arm64.go -pkgname stdio', DO NOT EDIT.
+
+package stdio
+
+var CAPI = map[string]struct{}{}
diff --git a/vendor/modernc.org/libc/stdio/stdio_windows_arm64.go b/vendor/modernc.org/libc/stdio/stdio_windows_arm64.go
new file mode 100644
index 00000000..c69105e3
--- /dev/null
+++ b/vendor/modernc.org/libc/stdio/stdio_windows_arm64.go
@@ -0,0 +1,348 @@
+// Code generated by 'ccgo stdio\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdio\stdio_windows_arm64.go -pkgname stdio', DO NOT EDIT.
+
+package stdio
+
+import (
+ "math"
+ "reflect"
+ "sync/atomic"
+ "unsafe"
+)
+
+var _ = math.Pi
+var _ reflect.Kind
+var _ atomic.Value
+var _ unsafe.Pointer
+
+const (
+ BUFSIZ = 512
+ DUMMYSTRUCTNAME = 0
+ DUMMYSTRUCTNAME1 = 0
+ DUMMYSTRUCTNAME2 = 0
+ DUMMYSTRUCTNAME3 = 0
+ DUMMYSTRUCTNAME4 = 0
+ DUMMYSTRUCTNAME5 = 0
+ DUMMYUNIONNAME = 0
+ DUMMYUNIONNAME1 = 0
+ DUMMYUNIONNAME2 = 0
+ DUMMYUNIONNAME3 = 0
+ DUMMYUNIONNAME4 = 0
+ DUMMYUNIONNAME5 = 0
+ DUMMYUNIONNAME6 = 0
+ DUMMYUNIONNAME7 = 0
+ DUMMYUNIONNAME8 = 0
+ DUMMYUNIONNAME9 = 0
+ EOF = -1
+ FILENAME_MAX = 260
+ FOPEN_MAX = 20
+ MINGW_DDK_H = 0
+ MINGW_HAS_DDK_H = 1
+ MINGW_HAS_SECURE_API = 1
+ MINGW_SDK_INIT = 0
+ SEEK_CUR = 1
+ SEEK_END = 2
+ SEEK_SET = 0
+ STDERR_FILENO = 2
+ STDIN_FILENO = 0
+ STDOUT_FILENO = 1
+ SYS_OPEN = 20
+ TMP_MAX = 32767
+ TMP_MAX_S = 32767
+ UNALIGNED = 0
+ USE___UUIDOF = 0
+ WIN32 = 1
+ WIN64 = 1
+ WINNT = 1
+ X_AGLOBAL = 0
+ X_ANONYMOUS_STRUCT = 0
+ X_ANONYMOUS_UNION = 0
+ X_ARGMAX = 100
+ X_ARM64_ = 1
+ X_CONST_RETURN = 0
+ X_CRTNOALIAS = 0
+ X_CRTRESTRICT = 0
+ X_CRT_ALTERNATIVE_IMPORTED = 0
+ X_CRT_DIRECTORY_DEFINED = 0
+ X_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS = 4
+ X_CRT_INTERNAL_LOCAL_SCANF_OPTIONS = 2
+ X_CRT_INTERNAL_PRINTF_LEGACY_MSVCRT_COMPATIBILITY = 0x0008
+ X_CRT_INTERNAL_PRINTF_LEGACY_THREE_DIGIT_EXPONENTS = 0x0010
+ X_CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION = 0x0001
+ X_CRT_INTERNAL_PRINTF_LEGACY_WIDE_SPECIFIERS = 0x0004
+ X_CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR = 0x0002
+ X_CRT_INTERNAL_SCANF_LEGACY_MSVCRT_COMPATIBILITY = 0x0004
+ X_CRT_INTERNAL_SCANF_LEGACY_WIDE_SPECIFIERS = 0x0002
+ X_CRT_INTERNAL_SCANF_SECURECRT = 0x0001
+ X_CRT_MANAGED_HEAP_DEPRECATE = 0
+ X_CRT_PACKING = 8
+ X_CRT_PERROR_DEFINED = 0
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
+ X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0
+ X_CRT_WPERROR_DEFINED = 0
+ X_DLL = 0
+ X_ERRCODE_DEFINED = 0
+ X_FILE_DEFINED = 0
+ X_FILE_OFFSET_BITS = 64
+ X_FILE_OFFSET_BITS_SET_FSEEKO = 0
+ X_FILE_OFFSET_BITS_SET_FTELLO = 0
+ X_FILE_OFFSET_BITS_SET_OFFT = 0
+ X_FPOS_T_DEFINED = 0
+ X_INC_CORECRT = 0
+ X_INC_CRTDEFS_MACRO = 0
+ X_INC_MINGW_SECAPI = 0
+ X_INC_STDIO = 0
+ X_INC_STDIO_S = 0
+ X_INC_SWPRINTF_INL = 0
+ X_INC_VADEFS = 0
+ X_INC__MINGW_H = 0
+ X_INT128_DEFINED = 0
+ X_INTPTR_T_DEFINED = 0
+ X_IOB_ENTRIES = 20
+ X_IOFBF = 0x0000
+ X_IOLBF = 0x0040
+ X_IONBF = 0x0004
+ X_MT = 0
+ X_M_ARM64 = 1
+ X_NFILE = 512
+ X_NSTREAM_ = 512
+ X_OFF64_T_DEFINED = 0
+ X_OFF_T_ = 0
+ X_OFF_T_DEFINED = 0
+ X_OLD_P_OVERLAY = 2
+ X_PGLOBAL = 0
+ X_PTRDIFF_T_ = 0
+ X_PTRDIFF_T_DEFINED = 0
+ X_P_DETACH = 4
+ X_P_NOWAIT = 1
+ X_P_NOWAITO = 3
+ X_P_OVERLAY = 2
+ X_P_WAIT = 0
+ X_P_tmpdir = "\\"
+ X_RSIZE_T_DEFINED = 0
+ X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD
+ X_SIZE_T_DEFINED = 0
+ X_SPAWNV_DEFINED = 0
+ X_SSIZE_T_DEFINED = 0
+ X_STDIO_CONFIG_DEFINED = 0
+ X_STDIO_DEFINED = 0
+ X_STDIO_S_DEFINED = 0
+ X_STDSTREAM_DEFINED = 0
+ X_SYS_OPEN = 20
+ X_TAGLC_ID_DEFINED = 0
+ X_THREADLOCALEINFO = 0
+ X_TIME32_T_DEFINED = 0
+ X_TIME64_T_DEFINED = 0
+ X_TIME_T_DEFINED = 0
+ X_TWO_DIGIT_EXPONENT = 0x1
+ X_UCRT = 0
+ X_UINTPTR_T_DEFINED = 0
+ X_VA_LIST_DEFINED = 0
+ X_W64 = 0
+ X_WAIT_CHILD = 0
+ X_WAIT_GRANDCHILD = 1
+ X_WCHAR_T_DEFINED = 0
+ X_WCTYPE_T_DEFINED = 0
+ X_WIN32 = 1
+ X_WIN32_WINNT = 0x601
+ X_WIN64 = 1
+ X_WINT_T = 0
+ X_WSPAWN_DEFINED = 0
+ X_WSTDIO_DEFINED = 0
+ X_WSTDIO_S_DEFINED = 0
+)
+
+type Ptrdiff_t = int64 /* <builtin>:3:26 */
+
+type Size_t = uint64 /* <builtin>:9:23 */
+
+type Wchar_t = uint16 /* <builtin>:15:24 */
+
+type X__int128_t = struct {
+ Flo int64
+ Fhi int64
+} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
+type X__uint128_t = struct {
+ Flo uint64
+ Fhi uint64
+} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
+
+type X__builtin_va_list = uintptr /* <builtin>:46:14 */
+type X__float128 = float64 /* <builtin>:47:21 */
+
+type Va_list = X__builtin_va_list /* <builtin>:50:27 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the Wine project.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// This macro holds an monotonic increasing value, which indicates
+// a specific fix/patch is present on trunk. This value isn't related to
+// minor/major version-macros. It is increased on demand, if a big
+// fix was applied to trunk. This macro gets just increased on trunk. For
+// other branches its value won't be modified.
+
+// mingw.org's version macros: these make gcc to define
+// MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
+// and the __mingwthr_key_dtor() function from the MinGW
+// CRT in its private gthr-win32.h header.
+
+// Set VC specific compiler target macros.
+
+// MS does not prefix symbols by underscores for 64-bit.
+// As we have to support older gcc version, which are using underscores
+// as symbol prefix for x64, we have to check here for the user label
+// prefix defined by gcc.
+
+// Special case nameless struct/union.
+
+// MinGW-w64 has some additional C99 printf/scanf feature support.
+// So we add some helper macros to ease recognition of them.
+
+// If _FORTIFY_SOURCE is enabled, some inline functions may use
+// __builtin_va_arg_pack(). GCC may report an error if the address
+// of such a function is used. Set _FORTIFY_VA_ARG=0 in this case.
+
+// Enable workaround for ABI incompatibility on affected platforms
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
+// Templates won't work in C, will break if secure API is not enabled, disabled
+
+// https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
+// fallback on default implementation if we can't know the size of the destination
+
+// Include _cygwin.h if we're building a Cygwin application.
+
+// Target specific macro replacement for type "long". In the Windows API,
+// the type long is always 32 bit, even if the target is 64 bit (LLP64).
+// On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right
+// sized definitions and declarations, all usage of type long in the Windows
+// headers have to be replaced by the below defined macro __LONG32.
+
+// C/C++ specific language defines.
+
+// Note the extern. This is needed to work around GCC's
+// limitations in handling dllimport attribute.
+
+// Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
+// variadiac macro facility, because variadic macros cause syntax
+// errors with --traditional-cpp.
+
+// High byte is the major version, low byte is the minor.
+
+// Allow both 0x1400 and 0xE00 to identify UCRT
+
+// ===-------- vadefs.h ---------------------------------------------------===
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===-----------------------------------------------------------------------===
+
+// Only include this if we are aiming for MSVC compatibility.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// for backward compatibility
+
+type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
+
+type Ssize_t = int64 /* corecrt.h:45:35 */
+
+type Rsize_t = Size_t /* corecrt.h:52:16 */
+
+type Intptr_t = int64 /* corecrt.h:62:35 */
+
+type Uintptr_t = uint64 /* corecrt.h:75:44 */
+
+type Wint_t = uint16 /* corecrt.h:106:24 */
+type Wctype_t = uint16 /* corecrt.h:107:24 */
+
+type Errno_t = int32 /* corecrt.h:113:13 */
+
+type X__time32_t = int32 /* corecrt.h:118:14 */
+
+type X__time64_t = int64 /* corecrt.h:123:35 */
+
+type Time_t = X__time64_t /* corecrt.h:138:20 */
+
+type Threadlocaleinfostruct = struct {
+ F_locale_pctype uintptr
+ F_locale_mb_cur_max int32
+ F_locale_lc_codepage uint32
+} /* corecrt.h:430:1 */
+
+type Pthreadlocinfo = uintptr /* corecrt.h:432:39 */
+type Pthreadmbcinfo = uintptr /* corecrt.h:433:36 */
+
+type Localeinfo_struct = struct {
+ Flocinfo Pthreadlocinfo
+ Fmbcinfo Pthreadmbcinfo
+} /* corecrt.h:436:9 */
+
+type X_locale_tstruct = Localeinfo_struct /* corecrt.h:439:3 */
+type X_locale_t = uintptr /* corecrt.h:439:19 */
+
+type TagLC_ID = struct {
+ FwLanguage uint16
+ FwCountry uint16
+ FwCodePage uint16
+} /* corecrt.h:443:9 */
+
+type LC_ID = TagLC_ID /* corecrt.h:447:3 */
+type LPLC_ID = uintptr /* corecrt.h:447:9 */
+
+type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:482:3 */
+
+type X_iobuf = struct{ F_Placeholder uintptr } /* stdio.h:33:3 */
+
+type FILE = X_iobuf /* stdio.h:47:25 */
+
+type X_off_t = int32 /* _mingw_off_t.h:5:16 */
+type Off32_t = int32 /* _mingw_off_t.h:7:16 */
+
+type X_off64_t = int64 /* _mingw_off_t.h:13:39 */
+type Off64_t = int64 /* _mingw_off_t.h:15:39 */
+
+type Off_t = Off64_t /* _mingw_off_t.h:24:17 */
+
+type Fpos_t = int64 /* stdio.h:115:37 */
+
+var _ int8 /* gen.c:2:13: */
diff --git a/vendor/modernc.org/libc/stdlib/capi_windows_arm64.go b/vendor/modernc.org/libc/stdlib/capi_windows_arm64.go
new file mode 100644
index 00000000..5edcb679
--- /dev/null
+++ b/vendor/modernc.org/libc/stdlib/capi_windows_arm64.go
@@ -0,0 +1,5 @@
+// Code generated by 'ccgo stdlib\gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib\stdlib_windows_arm64.go -pkgname stdlib', DO NOT EDIT.
+
+package stdlib
+
+var CAPI = map[string]struct{}{}
diff --git a/vendor/modernc.org/libc/stdlib/stdlib_windows_arm64.go b/vendor/modernc.org/libc/stdlib/stdlib_windows_arm64.go
new file mode 100644
index 00000000..29439b34
--- /dev/null
+++ b/vendor/modernc.org/libc/stdlib/stdlib_windows_arm64.go
@@ -0,0 +1,459 @@
+// Code generated by 'ccgo stdlib\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib\stdlib_windows_arm64.go -pkgname stdlib', DO NOT EDIT.
+
+package stdlib
+
+import (
+ "math"
+ "reflect"
+ "sync/atomic"
+ "unsafe"
+)
+
+var _ = math.Pi
+var _ reflect.Kind
+var _ atomic.Value
+var _ unsafe.Pointer
+
+const (
+ CHAR_BIT = 8
+ CHAR_MAX = 127
+ CHAR_MIN = -128
+ DUMMYSTRUCTNAME = 0
+ DUMMYSTRUCTNAME1 = 0
+ DUMMYSTRUCTNAME2 = 0
+ DUMMYSTRUCTNAME3 = 0
+ DUMMYSTRUCTNAME4 = 0
+ DUMMYSTRUCTNAME5 = 0
+ DUMMYUNIONNAME = 0
+ DUMMYUNIONNAME1 = 0
+ DUMMYUNIONNAME2 = 0
+ DUMMYUNIONNAME3 = 0
+ DUMMYUNIONNAME4 = 0
+ DUMMYUNIONNAME5 = 0
+ DUMMYUNIONNAME6 = 0
+ DUMMYUNIONNAME7 = 0
+ DUMMYUNIONNAME8 = 0
+ DUMMYUNIONNAME9 = 0
+ EXIT_FAILURE = 1
+ EXIT_SUCCESS = 0
+ INT_MAX = 2147483647
+ INT_MIN = -2147483648
+ LLONG_MAX = 9223372036854775807
+ LLONG_MIN = -9223372036854775808
+ LONG_LONG_MAX = 9223372036854775807
+ LONG_LONG_MIN = -9223372036854775808
+ LONG_MAX = 2147483647
+ LONG_MIN = -2147483648
+ MB_LEN_MAX = 1
+ MINGW_DDK_H = 0
+ MINGW_HAS_DDK_H = 1
+ MINGW_HAS_SECURE_API = 1
+ MINGW_SDK_INIT = 0
+ RAND_MAX = 0x7fff
+ SCHAR_MAX = 127
+ SCHAR_MIN = -128
+ SHRT_MAX = 32767
+ SHRT_MIN = -32768
+ UCHAR_MAX = 255
+ UINT_MAX = 4294967295
+ ULLONG_MAX = 18446744073709551615
+ ULONG_LONG_MAX = 18446744073709551615
+ ULONG_MAX = 4294967295
+ UNALIGNED = 0
+ USE___UUIDOF = 0
+ USHRT_MAX = 65535
+ WIN32 = 1
+ WIN64 = 1
+ WINNT = 1
+ X_AGLOBAL = 0
+ X_ALLOCA_S_HEAP_MARKER = 0xDDDD
+ X_ALLOCA_S_MARKER_SIZE = 16
+ X_ALLOCA_S_STACK_MARKER = 0xCCCC
+ X_ALLOCA_S_THRESHOLD = 1024
+ X_ANONYMOUS_STRUCT = 0
+ X_ANONYMOUS_UNION = 0
+ X_ARGMAX = 100
+ X_ARM64_ = 1
+ X_CALL_REPORTFAULT = 0x2
+ X_CONST_RETURN = 0
+ X_CRTNOALIAS = 0
+ X_CRTRESTRICT = 0
+ X_CRT_ABS_DEFINED = 0
+ X_CRT_ALGO_DEFINED = 0
+ X_CRT_ALLOCATION_DEFINED = 0
+ X_CRT_ALTERNATIVE_IMPORTED = 0
+ X_CRT_ATOF_DEFINED = 0
+ X_CRT_DOUBLE_DEC = 0
+ X_CRT_ERRNO_DEFINED = 0
+ X_CRT_MANAGED_HEAP_DEPRECATE = 0
+ X_CRT_PACKING = 8
+ X_CRT_PERROR_DEFINED = 0
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
+ X_CRT_SWAB_DEFINED = 0
+ X_CRT_SYSTEM_DEFINED = 0
+ X_CRT_TERMINATE_DEFINED = 0
+ X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0
+ X_CRT_WPERROR_DEFINED = 0
+ X_CRT_WSYSTEM_DEFINED = 0
+ X_CVTBUFSIZE = 349
+ X_DIV_T_DEFINED = 0
+ X_DLL = 0
+ X_ERRCODE_DEFINED = 0
+ X_FILE_OFFSET_BITS = 64
+ X_FREEA_INLINE = 0
+ X_FREEENTRY = 0
+ X_GCC_LIMITS_H_ = 0
+ X_HEAPBADBEGIN = -3
+ X_HEAPBADNODE = -4
+ X_HEAPBADPTR = -6
+ X_HEAPEMPTY = -1
+ X_HEAPEND = -5
+ X_HEAPINFO_DEFINED = 0
+ X_HEAPOK = -2
+ X_HEAP_MAXREQ = 0xFFFFFFFFFFFFFFE0
+ X_INC_CORECRT = 0
+ X_INC_CORECRT_WSTDLIB = 0
+ X_INC_CRTDEFS = 0
+ X_INC_CRTDEFS_MACRO = 0
+ X_INC_MINGW_SECAPI = 0
+ X_INC_STDLIB = 0
+ X_INC_STDLIB_S = 0
+ X_INC_VADEFS = 0
+ X_INC__MINGW_H = 0
+ X_INT128_DEFINED = 0
+ X_INTPTR_T_DEFINED = 0
+ X_MALLOC_H_ = 0
+ X_MAX_DIR = 256
+ X_MAX_DRIVE = 3
+ X_MAX_ENV = 32767
+ X_MAX_EXT = 256
+ X_MAX_FNAME = 256
+ X_MAX_PATH = 260
+ X_MAX_WAIT_MALLOC_CRT = 60000
+ X_MT = 0
+ X_M_ARM64 = 1
+ X_ONEXIT_T_DEFINED = 0
+ X_OUT_TO_DEFAULT = 0
+ X_OUT_TO_MSGBOX = 2
+ X_OUT_TO_STDERR = 1
+ X_PGLOBAL = 0
+ X_PTRDIFF_T_ = 0
+ X_PTRDIFF_T_DEFINED = 0
+ X_QSORT_S_DEFINED = 0
+ X_REPORT_ERRMODE = 3
+ X_RSIZE_T_DEFINED = 0
+ X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD
+ X_SIZE_T_DEFINED = 0
+ X_SSIZE_T_DEFINED = 0
+ X_TAGLC_ID_DEFINED = 0
+ X_THREADLOCALEINFO = 0
+ X_TIME32_T_DEFINED = 0
+ X_TIME64_T_DEFINED = 0
+ X_TIME_T_DEFINED = 0
+ X_UCRT = 0
+ X_UINTPTR_T_DEFINED = 0
+ X_USEDENTRY = 1
+ X_VA_LIST_DEFINED = 0
+ X_W64 = 0
+ X_WCHAR_T_DEFINED = 0
+ X_WCTYPE_T_DEFINED = 0
+ X_WIN32 = 1
+ X_WIN32_WINNT = 0x601
+ X_WIN64 = 1
+ X_WINT_T = 0
+ X_WRITE_ABORT_MSG = 0x1
+ X_WSTDLIBP_DEFINED = 0
+ X_WSTDLIB_DEFINED = 0
+)
+
+type Ptrdiff_t = int64 /* <builtin>:3:26 */
+
+type Size_t = uint64 /* <builtin>:9:23 */
+
+type Wchar_t = uint16 /* <builtin>:15:24 */
+
+type X__int128_t = struct {
+ Flo int64
+ Fhi int64
+} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
+type X__uint128_t = struct {
+ Flo uint64
+ Fhi uint64
+} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
+
+type X__builtin_va_list = uintptr /* <builtin>:46:14 */
+type X__float128 = float64 /* <builtin>:47:21 */
+
+type Va_list = X__builtin_va_list /* <builtin>:50:27 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// This macro holds an monotonic increasing value, which indicates
+// a specific fix/patch is present on trunk. This value isn't related to
+// minor/major version-macros. It is increased on demand, if a big
+// fix was applied to trunk. This macro gets just increased on trunk. For
+// other branches its value won't be modified.
+
+// mingw.org's version macros: these make gcc to define
+// MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
+// and the __mingwthr_key_dtor() function from the MinGW
+// CRT in its private gthr-win32.h header.
+
+// Set VC specific compiler target macros.
+
+// MS does not prefix symbols by underscores for 64-bit.
+// As we have to support older gcc version, which are using underscores
+// as symbol prefix for x64, we have to check here for the user label
+// prefix defined by gcc.
+
+// Special case nameless struct/union.
+
+// MinGW-w64 has some additional C99 printf/scanf feature support.
+// So we add some helper macros to ease recognition of them.
+
+// If _FORTIFY_SOURCE is enabled, some inline functions may use
+// __builtin_va_arg_pack(). GCC may report an error if the address
+// of such a function is used. Set _FORTIFY_VA_ARG=0 in this case.
+
+// Enable workaround for ABI incompatibility on affected platforms
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
+// Templates won't work in C, will break if secure API is not enabled, disabled
+
+// https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
+// fallback on default implementation if we can't know the size of the destination
+
+// Include _cygwin.h if we're building a Cygwin application.
+
+// Target specific macro replacement for type "long". In the Windows API,
+// the type long is always 32 bit, even if the target is 64 bit (LLP64).
+// On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right
+// sized definitions and declarations, all usage of type long in the Windows
+// headers have to be replaced by the below defined macro __LONG32.
+
+// C/C++ specific language defines.
+
+// Note the extern. This is needed to work around GCC's
+// limitations in handling dllimport attribute.
+
+// Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
+// variadiac macro facility, because variadic macros cause syntax
+// errors with --traditional-cpp.
+
+// High byte is the major version, low byte is the minor.
+
+// Allow both 0x1400 and 0xE00 to identify UCRT
+
+// ===-------- vadefs.h ---------------------------------------------------===
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===-----------------------------------------------------------------------===
+
+// Only include this if we are aiming for MSVC compatibility.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// for backward compatibility
+
+type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
+
+type Ssize_t = int64 /* corecrt.h:45:35 */
+
+type Rsize_t = Size_t /* corecrt.h:52:16 */
+
+type Intptr_t = int64 /* corecrt.h:62:35 */
+
+type Uintptr_t = uint64 /* corecrt.h:75:44 */
+
+type Wint_t = uint16 /* corecrt.h:106:24 */
+type Wctype_t = uint16 /* corecrt.h:107:24 */
+
+type Errno_t = int32 /* corecrt.h:113:13 */
+
+type X__time32_t = int32 /* corecrt.h:118:14 */
+
+type X__time64_t = int64 /* corecrt.h:123:35 */
+
+type Time_t = X__time64_t /* corecrt.h:138:20 */
+
+type Threadlocaleinfostruct = struct {
+ F_locale_pctype uintptr
+ F_locale_mb_cur_max int32
+ F_locale_lc_codepage uint32
+} /* corecrt.h:430:1 */
+
+type Pthreadlocinfo = uintptr /* corecrt.h:432:39 */
+type Pthreadmbcinfo = uintptr /* corecrt.h:433:36 */
+
+type Localeinfo_struct = struct {
+ Flocinfo Pthreadlocinfo
+ Fmbcinfo Pthreadmbcinfo
+} /* corecrt.h:436:9 */
+
+type X_locale_tstruct = Localeinfo_struct /* corecrt.h:439:3 */
+type X_locale_t = uintptr /* corecrt.h:439:19 */
+
+type TagLC_ID = struct {
+ FwLanguage uint16
+ FwCountry uint16
+ FwCodePage uint16
+} /* corecrt.h:443:9 */
+
+type LC_ID = TagLC_ID /* corecrt.h:447:3 */
+type LPLC_ID = uintptr /* corecrt.h:447:9 */
+
+type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:482:3 */
+
+//===---- limits.h - Standard header for integer sizes --------------------===* *
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+// \*===----------------------------------------------------------------------===
+
+// The system's limits.h may, in turn, try to #include_next GCC's limits.h.
+// Avert this #include_next madness.
+
+// System headers include a number of constants from POSIX in <limits.h>.
+// Include it if we're hosted.
+
+// Many system headers try to "help us out" by defining these. No really, we
+// know how big each datatype is.
+
+// C90/99 5.2.4.2.1
+
+// C2x 5.2.4.2.1
+// FIXME: This is using the placeholder dates Clang produces for these macros
+// in C2x mode; switch to the correct values once they've been published.
+
+// C99 5.2.4.2.1: Added long long.
+// C++11 18.3.3.2: same contents as the Standard C Library header <limits.h>.
+//
+
+// LONG_LONG_MIN/LONG_LONG_MAX/ULONG_LONG_MAX are a GNU extension. It's too bad
+// that we don't have something like #pragma poison that could be used to
+// deprecate a macro - the code should just use LLONG_MAX and friends.
+//
+
+type X_onexit_t = uintptr /* stdlib.h:50:15 */
+
+type X_div_t = struct {
+ Fquot int32
+ Frem int32
+} /* stdlib.h:60:11 */
+
+type Div_t = X_div_t /* stdlib.h:63:5 */
+
+type X_ldiv_t = struct {
+ Fquot int32
+ Frem int32
+} /* stdlib.h:65:11 */
+
+type Ldiv_t = X_ldiv_t /* stdlib.h:68:5 */
+
+type X_LDOUBLE = struct{ Fld [10]uint8 } /* stdlib.h:77:5 */
+
+type X_CRT_DOUBLE = struct{ Fx float64 } /* stdlib.h:84:5 */
+
+type X_CRT_FLOAT = struct{ Ff float32 } /* stdlib.h:88:5 */
+
+type X_LONGDOUBLE = struct{ Fx float64 } /* stdlib.h:95:5 */
+
+type X_LDBL12 = struct{ Fld12 [12]uint8 } /* stdlib.h:102:5 */
+
+type X_purecall_handler = uintptr /* stdlib.h:143:16 */
+
+type X_invalid_parameter_handler = uintptr /* stdlib.h:148:16 */
+
+type Lldiv_t = struct {
+ Fquot int64
+ Frem int64
+} /* stdlib.h:724:61 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// Return codes for _heapwalk()
+
+// Values for _heapinfo.useflag
+
+// The structure used to walk through the heap with _heapwalk.
+type X_heapinfo = struct {
+ F_pentry uintptr
+ F_size Size_t
+ F_useflag int32
+ F__ccgo_pad1 [4]byte
+} /* malloc.h:46:11 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// Return codes for _heapwalk()
+
+// Values for _heapinfo.useflag
+
+// The structure used to walk through the heap with _heapwalk.
+type X_HEAPINFO = X_heapinfo /* malloc.h:50:5 */
+
+var _ int8 /* gen.c:2:13: */
diff --git a/vendor/modernc.org/libc/sys/stat/capi_windows_arm64.go b/vendor/modernc.org/libc/sys/stat/capi_windows_arm64.go
new file mode 100644
index 00000000..2e7d0f68
--- /dev/null
+++ b/vendor/modernc.org/libc/sys/stat/capi_windows_arm64.go
@@ -0,0 +1,5 @@
+// Code generated by 'ccgo sys\stat\gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o sys\stat\stat_windows_arm64.go -pkgname stat', DO NOT EDIT.
+
+package stat
+
+var CAPI = map[string]struct{}{}
diff --git a/vendor/modernc.org/libc/sys/stat/stat_windows_arm64.go b/vendor/modernc.org/libc/sys/stat/stat_windows_arm64.go
new file mode 100644
index 00000000..43fc12e4
--- /dev/null
+++ b/vendor/modernc.org/libc/sys/stat/stat_windows_arm64.go
@@ -0,0 +1,559 @@
+// Code generated by 'ccgo sys\stat\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o sys\stat\stat_windows_arm64.go -pkgname stat', DO NOT EDIT.
+
+package stat
+
+import (
+ "math"
+ "reflect"
+ "sync/atomic"
+ "unsafe"
+)
+
+var _ = math.Pi
+var _ reflect.Kind
+var _ atomic.Value
+var _ unsafe.Pointer
+
+const (
+ DUMMYSTRUCTNAME = 0
+ DUMMYSTRUCTNAME1 = 0
+ DUMMYSTRUCTNAME2 = 0
+ DUMMYSTRUCTNAME3 = 0
+ DUMMYSTRUCTNAME4 = 0
+ DUMMYSTRUCTNAME5 = 0
+ DUMMYUNIONNAME = 0
+ DUMMYUNIONNAME1 = 0
+ DUMMYUNIONNAME2 = 0
+ DUMMYUNIONNAME3 = 0
+ DUMMYUNIONNAME4 = 0
+ DUMMYUNIONNAME5 = 0
+ DUMMYUNIONNAME6 = 0
+ DUMMYUNIONNAME7 = 0
+ DUMMYUNIONNAME8 = 0
+ DUMMYUNIONNAME9 = 0
+ F_OK = 0
+ MINGW_DDK_H = 0
+ MINGW_HAS_DDK_H = 1
+ MINGW_HAS_SECURE_API = 1
+ MINGW_SDK_INIT = 0
+ R_OK = 4
+ S_IEXEC = 64
+ S_IFBLK = 12288
+ S_IFCHR = 8192
+ S_IFDIR = 16384
+ S_IFIFO = 4096
+ S_IFMT = 61440
+ S_IFREG = 32768
+ S_IREAD = 256
+ S_IRGRP = 32
+ S_IROTH = 4
+ S_IRUSR = 256
+ S_IRWXG = 56
+ S_IRWXO = 7
+ S_IRWXU = 448
+ S_IWGRP = 16
+ S_IWOTH = 2
+ S_IWRITE = 128
+ S_IWUSR = 128
+ S_IXGRP = 8
+ S_IXOTH = 1
+ S_IXUSR = 64
+ UNALIGNED = 0
+ USE___UUIDOF = 0
+ WIN32 = 1
+ WIN64 = 1
+ WINNT = 1
+ W_OK = 2
+ X_OK = 1
+ X_AGLOBAL = 0
+ X_ANONYMOUS_STRUCT = 0
+ X_ANONYMOUS_UNION = 0
+ X_ARGMAX = 100
+ X_ARM64_ = 1
+ X_A_ARCH = 0x20
+ X_A_HIDDEN = 0x02
+ X_A_NORMAL = 0x00
+ X_A_RDONLY = 0x01
+ X_A_SUBDIR = 0x10
+ X_A_SYSTEM = 0x04
+ X_CONST_RETURN = 0
+ X_CRTNOALIAS = 0
+ X_CRTRESTRICT = 0
+ X_CRT_ALTERNATIVE_IMPORTED = 0
+ X_CRT_DIRECTORY_DEFINED = 0
+ X_CRT_MANAGED_HEAP_DEPRECATE = 0
+ X_CRT_MEMORY_DEFINED = 0
+ X_CRT_PACKING = 8
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
+ X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0
+ X_DEV_T_DEFINED = 0
+ X_DLL = 0
+ X_ERRCODE_DEFINED = 0
+ X_FILE_OFFSET_BITS = 64
+ X_FILE_OFFSET_BITS_SET_LSEEK = 0
+ X_FILE_OFFSET_BITS_SET_OFFT = 0
+ X_FINDDATA_T_DEFINED = 0
+ X_FSIZE_T_DEFINED = 0
+ X_INC_CORECRT = 0
+ X_INC_CRTDEFS = 0
+ X_INC_CRTDEFS_MACRO = 0
+ X_INC_MINGW_SECAPI = 0
+ X_INC_STAT = 0
+ X_INC_STRING = 0
+ X_INC_STRING_S = 0
+ X_INC_TYPES = 0
+ X_INC_VADEFS = 0
+ X_INC__MINGW_H = 0
+ X_INO_T_DEFINED = 0
+ X_INT128_DEFINED = 0
+ X_INTPTR_T_DEFINED = 0
+ X_IO_H_ = 0
+ X_MODE_T_ = 0
+ X_MT = 0
+ X_M_ARM64 = 1
+ X_NLSCMPERROR = 2147483647
+ X_NLSCMP_DEFINED = 0
+ X_OFF64_T_DEFINED = 0
+ X_OFF_T_ = 0
+ X_OFF_T_DEFINED = 0
+ X_PGLOBAL = 0
+ X_PID_T_ = 0
+ X_PTRDIFF_T_ = 0
+ X_PTRDIFF_T_DEFINED = 0
+ X_RSIZE_T_DEFINED = 0
+ X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD
+ X_SIGSET_T_ = 0
+ X_SIZE_T_DEFINED = 0
+ X_SSIZE_T_DEFINED = 0
+ X_STAT_DEFINED = 0
+ X_S_IEXEC = 0x0040
+ X_S_IFBLK = 0x3000
+ X_S_IFCHR = 0x2000
+ X_S_IFDIR = 0x4000
+ X_S_IFIFO = 0x1000
+ X_S_IFMT = 0xF000
+ X_S_IFREG = 0x8000
+ X_S_IREAD = 0x0100
+ X_S_IRUSR = 256
+ X_S_IRWXU = 448
+ X_S_IWRITE = 0x0080
+ X_S_IWUSR = 128
+ X_S_IXUSR = 64
+ X_TAGLC_ID_DEFINED = 0
+ X_THREADLOCALEINFO = 0
+ X_TIME32_T_DEFINED = 0
+ X_TIME64_T_DEFINED = 0
+ X_TIMESPEC_DEFINED = 0
+ X_TIME_T_DEFINED = 0
+ X_UCRT = 0
+ X_UINTPTR_T_DEFINED = 0
+ X_VA_LIST_DEFINED = 0
+ X_W64 = 0
+ X_WCHAR_T_DEFINED = 0
+ X_WCTYPE_T_DEFINED = 0
+ X_WConst_return = 0
+ X_WFINDDATA_T_DEFINED = 0
+ X_WIN32 = 1
+ X_WIN32_WINNT = 0x601
+ X_WIN64 = 1
+ X_WINT_T = 0
+ X_WIO_DEFINED = 0
+ X_WSTAT_DEFINED = 0
+ X_WSTRING_DEFINED = 0
+ X_WSTRING_S_DEFINED = 0
+)
+
+type Ptrdiff_t = int64 /* <builtin>:3:26 */
+
+type Size_t = uint64 /* <builtin>:9:23 */
+
+type Wchar_t = uint16 /* <builtin>:15:24 */
+
+type X__int128_t = struct {
+ Flo int64
+ Fhi int64
+} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
+type X__uint128_t = struct {
+ Flo uint64
+ Fhi uint64
+} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
+
+type X__builtin_va_list = uintptr /* <builtin>:46:14 */
+type X__float128 = float64 /* <builtin>:47:21 */
+
+type Va_list = X__builtin_va_list /* <builtin>:50:27 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// This macro holds an monotonic increasing value, which indicates
+// a specific fix/patch is present on trunk. This value isn't related to
+// minor/major version-macros. It is increased on demand, if a big
+// fix was applied to trunk. This macro gets just increased on trunk. For
+// other branches its value won't be modified.
+
+// mingw.org's version macros: these make gcc to define
+// MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
+// and the __mingwthr_key_dtor() function from the MinGW
+// CRT in its private gthr-win32.h header.
+
+// Set VC specific compiler target macros.
+
+// MS does not prefix symbols by underscores for 64-bit.
+// As we have to support older gcc version, which are using underscores
+// as symbol prefix for x64, we have to check here for the user label
+// prefix defined by gcc.
+
+// Special case nameless struct/union.
+
+// MinGW-w64 has some additional C99 printf/scanf feature support.
+// So we add some helper macros to ease recognition of them.
+
+// If _FORTIFY_SOURCE is enabled, some inline functions may use
+// __builtin_va_arg_pack(). GCC may report an error if the address
+// of such a function is used. Set _FORTIFY_VA_ARG=0 in this case.
+
+// Enable workaround for ABI incompatibility on affected platforms
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
+// Templates won't work in C, will break if secure API is not enabled, disabled
+
+// https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
+// fallback on default implementation if we can't know the size of the destination
+
+// Include _cygwin.h if we're building a Cygwin application.
+
+// Target specific macro replacement for type "long". In the Windows API,
+// the type long is always 32 bit, even if the target is 64 bit (LLP64).
+// On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right
+// sized definitions and declarations, all usage of type long in the Windows
+// headers have to be replaced by the below defined macro __LONG32.
+
+// C/C++ specific language defines.
+
+// Note the extern. This is needed to work around GCC's
+// limitations in handling dllimport attribute.
+
+// Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
+// variadiac macro facility, because variadic macros cause syntax
+// errors with --traditional-cpp.
+
+// High byte is the major version, low byte is the minor.
+
+// Allow both 0x1400 and 0xE00 to identify UCRT
+
+// ===-------- vadefs.h ---------------------------------------------------===
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===-----------------------------------------------------------------------===
+
+// Only include this if we are aiming for MSVC compatibility.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// for backward compatibility
+
+type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
+
+type Ssize_t = int64 /* corecrt.h:45:35 */
+
+type Rsize_t = Size_t /* corecrt.h:52:16 */
+
+type Intptr_t = int64 /* corecrt.h:62:35 */
+
+type Uintptr_t = uint64 /* corecrt.h:75:44 */
+
+type Wint_t = uint16 /* corecrt.h:106:24 */
+type Wctype_t = uint16 /* corecrt.h:107:24 */
+
+type Errno_t = int32 /* corecrt.h:113:13 */
+
+type X__time32_t = int32 /* corecrt.h:118:14 */
+
+type X__time64_t = int64 /* corecrt.h:123:35 */
+
+type Time_t = X__time64_t /* corecrt.h:138:20 */
+
+type Threadlocaleinfostruct = struct {
+ F_locale_pctype uintptr
+ F_locale_mb_cur_max int32
+ F_locale_lc_codepage uint32
+} /* corecrt.h:430:1 */
+
+type Pthreadlocinfo = uintptr /* corecrt.h:432:39 */
+type Pthreadmbcinfo = uintptr /* corecrt.h:433:36 */
+
+type Localeinfo_struct = struct {
+ Flocinfo Pthreadlocinfo
+ Fmbcinfo Pthreadmbcinfo
+} /* corecrt.h:436:9 */
+
+type X_locale_tstruct = Localeinfo_struct /* corecrt.h:439:3 */
+type X_locale_t = uintptr /* corecrt.h:439:19 */
+
+type TagLC_ID = struct {
+ FwLanguage uint16
+ FwCountry uint16
+ FwCodePage uint16
+} /* corecrt.h:443:9 */
+
+type LC_ID = TagLC_ID /* corecrt.h:447:3 */
+type LPLC_ID = uintptr /* corecrt.h:447:9 */
+
+type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:482:3 */
+type X_fsize_t = uint32 /* io.h:29:25 */
+
+type X_finddata32_t = struct {
+ Fattrib uint32
+ Ftime_create X__time32_t
+ Ftime_access X__time32_t
+ Ftime_write X__time32_t
+ Fsize X_fsize_t
+ Fname [260]int8
+} /* io.h:35:3 */
+
+type X_finddata32i64_t = struct {
+ Fattrib uint32
+ Ftime_create X__time32_t
+ Ftime_access X__time32_t
+ Ftime_write X__time32_t
+ Fsize int64
+ Fname [260]int8
+ F__ccgo_pad1 [4]byte
+} /* io.h:44:3 */
+
+type X_finddata64i32_t = struct {
+ Fattrib uint32
+ F__ccgo_pad1 [4]byte
+ Ftime_create X__time64_t
+ Ftime_access X__time64_t
+ Ftime_write X__time64_t
+ Fsize X_fsize_t
+ Fname [260]int8
+} /* io.h:53:3 */
+
+type X__finddata64_t = struct {
+ Fattrib uint32
+ F__ccgo_pad1 [4]byte
+ Ftime_create X__time64_t
+ Ftime_access X__time64_t
+ Ftime_write X__time64_t
+ Fsize int64
+ Fname [260]int8
+ F__ccgo_pad2 [4]byte
+} /* io.h:62:3 */
+
+type X_wfinddata32_t = struct {
+ Fattrib uint32
+ Ftime_create X__time32_t
+ Ftime_access X__time32_t
+ Ftime_write X__time32_t
+ Fsize X_fsize_t
+ Fname [260]Wchar_t
+} /* io.h:94:3 */
+
+type X_wfinddata32i64_t = struct {
+ Fattrib uint32
+ Ftime_create X__time32_t
+ Ftime_access X__time32_t
+ Ftime_write X__time32_t
+ Fsize int64
+ Fname [260]Wchar_t
+} /* io.h:103:3 */
+
+type X_wfinddata64i32_t = struct {
+ Fattrib uint32
+ F__ccgo_pad1 [4]byte
+ Ftime_create X__time64_t
+ Ftime_access X__time64_t
+ Ftime_write X__time64_t
+ Fsize X_fsize_t
+ Fname [260]Wchar_t
+ F__ccgo_pad2 [4]byte
+} /* io.h:112:3 */
+
+type X_wfinddata64_t = struct {
+ Fattrib uint32
+ F__ccgo_pad1 [4]byte
+ Ftime_create X__time64_t
+ Ftime_access X__time64_t
+ Ftime_write X__time64_t
+ Fsize int64
+ Fname [260]Wchar_t
+} /* io.h:121:3 */
+
+type X_off_t = int32 /* _mingw_off_t.h:5:16 */
+type Off32_t = int32 /* _mingw_off_t.h:7:16 */
+
+type X_off64_t = int64 /* _mingw_off_t.h:13:39 */
+type Off64_t = int64 /* _mingw_off_t.h:15:39 */
+
+type Off_t = Off64_t /* _mingw_off_t.h:24:17 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+type X_ino_t = uint16 /* types.h:43:24 */
+type Ino_t = uint16 /* types.h:45:24 */
+
+type X_dev_t = uint32 /* types.h:51:22 */
+type Dev_t = uint32 /* types.h:53:22 */
+
+type X_pid_t = int64 /* types.h:63:17 */
+
+type Pid_t = X_pid_t /* types.h:68:16 */
+
+type X_mode_t = uint16 /* types.h:74:24 */
+
+type Mode_t = X_mode_t /* types.h:77:17 */
+
+type Useconds_t = uint32 /* types.h:84:22 */
+
+type Timespec = struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+} /* types.h:89:1 */
+
+type Itimerspec = struct {
+ Fit_interval struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+ }
+ Fit_value struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+ }
+} /* types.h:94:1 */
+
+type X_sigset_t = uint64 /* types.h:104:28 */
+
+type X_stat32 = struct {
+ Fst_dev X_dev_t
+ Fst_ino X_ino_t
+ Fst_mode uint16
+ Fst_nlink int16
+ Fst_uid int16
+ Fst_gid int16
+ F__ccgo_pad1 [2]byte
+ Fst_rdev X_dev_t
+ Fst_size X_off_t
+ Fst_atime X__time32_t
+ Fst_mtime X__time32_t
+ Fst_ctime X__time32_t
+} /* _mingw_stat64.h:25:3 */
+
+type Stat = struct {
+ Fst_dev X_dev_t
+ Fst_ino X_ino_t
+ Fst_mode uint16
+ Fst_nlink int16
+ Fst_uid int16
+ Fst_gid int16
+ F__ccgo_pad1 [2]byte
+ Fst_rdev X_dev_t
+ Fst_size X_off_t
+ Fst_atime Time_t
+ Fst_mtime Time_t
+ Fst_ctime Time_t
+} /* _mingw_stat64.h:40:3 */
+
+type X_stat32i64 = struct {
+ Fst_dev X_dev_t
+ Fst_ino X_ino_t
+ Fst_mode uint16
+ Fst_nlink int16
+ Fst_uid int16
+ Fst_gid int16
+ F__ccgo_pad1 [2]byte
+ Fst_rdev X_dev_t
+ F__ccgo_pad2 [4]byte
+ Fst_size int64
+ Fst_atime X__time32_t
+ Fst_mtime X__time32_t
+ Fst_ctime X__time32_t
+ F__ccgo_pad3 [4]byte
+} /* _mingw_stat64.h:55:3 */
+
+type X_stat64i32 = struct {
+ Fst_dev X_dev_t
+ Fst_ino X_ino_t
+ Fst_mode uint16
+ Fst_nlink int16
+ Fst_uid int16
+ Fst_gid int16
+ F__ccgo_pad1 [2]byte
+ Fst_rdev X_dev_t
+ Fst_size X_off_t
+ Fst_atime X__time64_t
+ Fst_mtime X__time64_t
+ Fst_ctime X__time64_t
+} /* _mingw_stat64.h:69:3 */
+
+type X_stat64 = struct {
+ Fst_dev X_dev_t
+ Fst_ino X_ino_t
+ Fst_mode uint16
+ Fst_nlink int16
+ Fst_uid int16
+ Fst_gid int16
+ F__ccgo_pad1 [2]byte
+ Fst_rdev X_dev_t
+ F__ccgo_pad2 [4]byte
+ Fst_size int64
+ Fst_atime X__time64_t
+ Fst_mtime X__time64_t
+ Fst_ctime X__time64_t
+} /* _mingw_stat64.h:83:3 */
+
+var _ int8 /* gen.c:2:13: */
diff --git a/vendor/modernc.org/libc/sys/types/capi_windows_arm64.go b/vendor/modernc.org/libc/sys/types/capi_windows_arm64.go
new file mode 100644
index 00000000..c1c68b89
--- /dev/null
+++ b/vendor/modernc.org/libc/sys/types/capi_windows_arm64.go
@@ -0,0 +1,5 @@
+// Code generated by 'ccgo sys\types\gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o sys\types\types_windows_arm64.go -pkgname types', DO NOT EDIT.
+
+package types
+
+var CAPI = map[string]struct{}{}
diff --git a/vendor/modernc.org/libc/sys/types/types_windows_arm64.go b/vendor/modernc.org/libc/sys/types/types_windows_arm64.go
new file mode 100644
index 00000000..880e51b1
--- /dev/null
+++ b/vendor/modernc.org/libc/sys/types/types_windows_arm64.go
@@ -0,0 +1,329 @@
+// Code generated by 'ccgo sys\types\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o sys\types\types_windows_arm64.go -pkgname types', DO NOT EDIT.
+
+package types
+
+import (
+ "math"
+ "reflect"
+ "sync/atomic"
+ "unsafe"
+)
+
+var _ = math.Pi
+var _ reflect.Kind
+var _ atomic.Value
+var _ unsafe.Pointer
+
+const (
+ DUMMYSTRUCTNAME = 0
+ DUMMYSTRUCTNAME1 = 0
+ DUMMYSTRUCTNAME2 = 0
+ DUMMYSTRUCTNAME3 = 0
+ DUMMYSTRUCTNAME4 = 0
+ DUMMYSTRUCTNAME5 = 0
+ DUMMYUNIONNAME = 0
+ DUMMYUNIONNAME1 = 0
+ DUMMYUNIONNAME2 = 0
+ DUMMYUNIONNAME3 = 0
+ DUMMYUNIONNAME4 = 0
+ DUMMYUNIONNAME5 = 0
+ DUMMYUNIONNAME6 = 0
+ DUMMYUNIONNAME7 = 0
+ DUMMYUNIONNAME8 = 0
+ DUMMYUNIONNAME9 = 0
+ MINGW_DDK_H = 0
+ MINGW_HAS_DDK_H = 1
+ MINGW_HAS_SECURE_API = 1
+ MINGW_SDK_INIT = 0
+ UNALIGNED = 0
+ USE___UUIDOF = 0
+ WIN32 = 1
+ WIN64 = 1
+ WINNT = 1
+ X_AGLOBAL = 0
+ X_ANONYMOUS_STRUCT = 0
+ X_ANONYMOUS_UNION = 0
+ X_ARGMAX = 100
+ X_ARM64_ = 1
+ X_CONST_RETURN = 0
+ X_CRTNOALIAS = 0
+ X_CRTRESTRICT = 0
+ X_CRT_ALTERNATIVE_IMPORTED = 0
+ X_CRT_MANAGED_HEAP_DEPRECATE = 0
+ X_CRT_PACKING = 8
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
+ X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0
+ X_DEV_T_DEFINED = 0
+ X_DLL = 0
+ X_ERRCODE_DEFINED = 0
+ X_FILE_OFFSET_BITS = 64
+ X_FILE_OFFSET_BITS_SET_OFFT = 0
+ X_INC_CORECRT = 0
+ X_INC_CRTDEFS = 0
+ X_INC_CRTDEFS_MACRO = 0
+ X_INC_MINGW_SECAPI = 0
+ X_INC_TYPES = 0
+ X_INC_VADEFS = 0
+ X_INC__MINGW_H = 0
+ X_INO_T_DEFINED = 0
+ X_INT128_DEFINED = 0
+ X_INTPTR_T_DEFINED = 0
+ X_MODE_T_ = 0
+ X_MT = 0
+ X_M_ARM64 = 1
+ X_OFF64_T_DEFINED = 0
+ X_OFF_T_ = 0
+ X_OFF_T_DEFINED = 0
+ X_PGLOBAL = 0
+ X_PID_T_ = 0
+ X_PTRDIFF_T_ = 0
+ X_PTRDIFF_T_DEFINED = 0
+ X_RSIZE_T_DEFINED = 0
+ X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD
+ X_SIGSET_T_ = 0
+ X_SIZE_T_DEFINED = 0
+ X_SSIZE_T_DEFINED = 0
+ X_TAGLC_ID_DEFINED = 0
+ X_THREADLOCALEINFO = 0
+ X_TIME32_T_DEFINED = 0
+ X_TIME64_T_DEFINED = 0
+ X_TIMESPEC_DEFINED = 0
+ X_TIME_T_DEFINED = 0
+ X_UCRT = 0
+ X_UINTPTR_T_DEFINED = 0
+ X_VA_LIST_DEFINED = 0
+ X_W64 = 0
+ X_WCHAR_T_DEFINED = 0
+ X_WCTYPE_T_DEFINED = 0
+ X_WIN32 = 1
+ X_WIN32_WINNT = 0x601
+ X_WIN64 = 1
+ X_WINT_T = 0
+)
+
+type Ptrdiff_t = int64 /* <builtin>:3:26 */
+
+type Size_t = uint64 /* <builtin>:9:23 */
+
+type Wchar_t = uint16 /* <builtin>:15:24 */
+
+type X__int128_t = struct {
+ Flo int64
+ Fhi int64
+} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
+type X__uint128_t = struct {
+ Flo uint64
+ Fhi uint64
+} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
+
+type X__builtin_va_list = uintptr /* <builtin>:46:14 */
+type X__float128 = float64 /* <builtin>:47:21 */
+
+type Va_list = X__builtin_va_list /* <builtin>:50:27 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// This macro holds an monotonic increasing value, which indicates
+// a specific fix/patch is present on trunk. This value isn't related to
+// minor/major version-macros. It is increased on demand, if a big
+// fix was applied to trunk. This macro gets just increased on trunk. For
+// other branches its value won't be modified.
+
+// mingw.org's version macros: these make gcc to define
+// MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
+// and the __mingwthr_key_dtor() function from the MinGW
+// CRT in its private gthr-win32.h header.
+
+// Set VC specific compiler target macros.
+
+// MS does not prefix symbols by underscores for 64-bit.
+// As we have to support older gcc version, which are using underscores
+// as symbol prefix for x64, we have to check here for the user label
+// prefix defined by gcc.
+
+// Special case nameless struct/union.
+
+// MinGW-w64 has some additional C99 printf/scanf feature support.
+// So we add some helper macros to ease recognition of them.
+
+// If _FORTIFY_SOURCE is enabled, some inline functions may use
+// __builtin_va_arg_pack(). GCC may report an error if the address
+// of such a function is used. Set _FORTIFY_VA_ARG=0 in this case.
+
+// Enable workaround for ABI incompatibility on affected platforms
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
+// Templates won't work in C, will break if secure API is not enabled, disabled
+
+// https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
+// fallback on default implementation if we can't know the size of the destination
+
+// Include _cygwin.h if we're building a Cygwin application.
+
+// Target specific macro replacement for type "long". In the Windows API,
+// the type long is always 32 bit, even if the target is 64 bit (LLP64).
+// On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right
+// sized definitions and declarations, all usage of type long in the Windows
+// headers have to be replaced by the below defined macro __LONG32.
+
+// C/C++ specific language defines.
+
+// Note the extern. This is needed to work around GCC's
+// limitations in handling dllimport attribute.
+
+// Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
+// variadiac macro facility, because variadic macros cause syntax
+// errors with --traditional-cpp.
+
+// High byte is the major version, low byte is the minor.
+
+// Allow both 0x1400 and 0xE00 to identify UCRT
+
+// ===-------- vadefs.h ---------------------------------------------------===
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===-----------------------------------------------------------------------===
+
+// Only include this if we are aiming for MSVC compatibility.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// for backward compatibility
+
+type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
+
+type Ssize_t = int64 /* corecrt.h:45:35 */
+
+type Rsize_t = Size_t /* corecrt.h:52:16 */
+
+type Intptr_t = int64 /* corecrt.h:62:35 */
+
+type Uintptr_t = uint64 /* corecrt.h:75:44 */
+
+type Wint_t = uint16 /* corecrt.h:106:24 */
+type Wctype_t = uint16 /* corecrt.h:107:24 */
+
+type Errno_t = int32 /* corecrt.h:113:13 */
+
+type X__time32_t = int32 /* corecrt.h:118:14 */
+
+type X__time64_t = int64 /* corecrt.h:123:35 */
+
+type Time_t = X__time64_t /* corecrt.h:138:20 */
+
+type Threadlocaleinfostruct = struct {
+ F_locale_pctype uintptr
+ F_locale_mb_cur_max int32
+ F_locale_lc_codepage uint32
+} /* corecrt.h:430:1 */
+
+type Pthreadlocinfo = uintptr /* corecrt.h:432:39 */
+type Pthreadmbcinfo = uintptr /* corecrt.h:433:36 */
+
+type Localeinfo_struct = struct {
+ Flocinfo Pthreadlocinfo
+ Fmbcinfo Pthreadmbcinfo
+} /* corecrt.h:436:9 */
+
+type X_locale_tstruct = Localeinfo_struct /* corecrt.h:439:3 */
+type X_locale_t = uintptr /* corecrt.h:439:19 */
+
+type TagLC_ID = struct {
+ FwLanguage uint16
+ FwCountry uint16
+ FwCodePage uint16
+} /* corecrt.h:443:9 */
+
+type LC_ID = TagLC_ID /* corecrt.h:447:3 */
+type LPLC_ID = uintptr /* corecrt.h:447:9 */
+
+type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:482:3 */
+
+type X_ino_t = uint16 /* types.h:43:24 */
+type Ino_t = uint16 /* types.h:45:24 */
+
+type X_dev_t = uint32 /* types.h:51:22 */
+type Dev_t = uint32 /* types.h:53:22 */
+
+type X_pid_t = int64 /* types.h:63:17 */
+
+type Pid_t = X_pid_t /* types.h:68:16 */
+
+type X_mode_t = uint16 /* types.h:74:24 */
+
+type Mode_t = X_mode_t /* types.h:77:17 */
+
+type X_off_t = int32 /* _mingw_off_t.h:5:16 */
+type Off32_t = int32 /* _mingw_off_t.h:7:16 */
+
+type X_off64_t = int64 /* _mingw_off_t.h:13:39 */
+type Off64_t = int64 /* _mingw_off_t.h:15:39 */
+
+type Off_t = Off64_t /* _mingw_off_t.h:24:17 */
+
+type Useconds_t = uint32 /* types.h:84:22 */
+
+type Timespec = struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+} /* types.h:89:1 */
+
+type Itimerspec = struct {
+ Fit_interval struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+ }
+ Fit_value struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+ }
+} /* types.h:94:1 */
+
+type X_sigset_t = uint64 /* types.h:104:28 */
+
+var _ int8 /* gen.c:2:13: */
diff --git a/vendor/modernc.org/libc/time/capi_windows_arm64.go b/vendor/modernc.org/libc/time/capi_windows_arm64.go
new file mode 100644
index 00000000..2e03d868
--- /dev/null
+++ b/vendor/modernc.org/libc/time/capi_windows_arm64.go
@@ -0,0 +1,9 @@
+// Code generated by 'ccgo time\gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o time\time_windows_arm64.go -pkgname time', DO NOT EDIT.
+
+package time
+
+var CAPI = map[string]struct{}{
+ "daylight": {},
+ "timezone": {},
+ "tzname": {},
+}
diff --git a/vendor/modernc.org/libc/time/time_windows_arm64.go b/vendor/modernc.org/libc/time/time_windows_arm64.go
new file mode 100644
index 00000000..e06dfc2a
--- /dev/null
+++ b/vendor/modernc.org/libc/time/time_windows_arm64.go
@@ -0,0 +1,437 @@
+// Code generated by 'ccgo time\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o time\time_windows_arm64.go -pkgname time', DO NOT EDIT.
+
+package time
+
+import (
+ "math"
+ "reflect"
+ "sync/atomic"
+ "unsafe"
+)
+
+var _ = math.Pi
+var _ reflect.Kind
+var _ atomic.Value
+var _ unsafe.Pointer
+
+const (
+ CLK_TCK = 1000
+ CLOCKS_PER_SEC = 1000
+ CLOCK_MONOTONIC = 1
+ CLOCK_PROCESS_CPUTIME_ID = 2
+ CLOCK_REALTIME = 0
+ CLOCK_REALTIME_COARSE = 4
+ CLOCK_THREAD_CPUTIME_ID = 3
+ DUMMYSTRUCTNAME = 0
+ DUMMYSTRUCTNAME1 = 0
+ DUMMYSTRUCTNAME2 = 0
+ DUMMYSTRUCTNAME3 = 0
+ DUMMYSTRUCTNAME4 = 0
+ DUMMYSTRUCTNAME5 = 0
+ DUMMYUNIONNAME = 0
+ DUMMYUNIONNAME1 = 0
+ DUMMYUNIONNAME2 = 0
+ DUMMYUNIONNAME3 = 0
+ DUMMYUNIONNAME4 = 0
+ DUMMYUNIONNAME5 = 0
+ DUMMYUNIONNAME6 = 0
+ DUMMYUNIONNAME7 = 0
+ DUMMYUNIONNAME8 = 0
+ DUMMYUNIONNAME9 = 0
+ MINGW_DDK_H = 0
+ MINGW_HAS_DDK_H = 1
+ MINGW_HAS_SECURE_API = 1
+ MINGW_SDK_INIT = 0
+ TIMER_ABSTIME = 1
+ TIME_UTC = 1
+ UNALIGNED = 0
+ USE___UUIDOF = 0
+ WIN32 = 1
+ WIN64 = 1
+ WINNT = 1
+ WINPTHREAD_API = 0
+ WIN_PTHREADS_TIME_H = 0
+ X_AGLOBAL = 0
+ X_ANONYMOUS_STRUCT = 0
+ X_ANONYMOUS_UNION = 0
+ X_ARGMAX = 100
+ X_ARM64_ = 1
+ X_CLOCK_T_DEFINED = 0
+ X_CONST_RETURN = 0
+ X_CRTNOALIAS = 0
+ X_CRTRESTRICT = 0
+ X_CRT_ALTERNATIVE_IMPORTED = 0
+ X_CRT_MANAGED_HEAP_DEPRECATE = 0
+ X_CRT_PACKING = 8
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
+ X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0
+ X_DLL = 0
+ X_ERRCODE_DEFINED = 0
+ X_FILE_OFFSET_BITS = 64
+ X_INC_CORECRT = 0
+ X_INC_CRTDEFS = 0
+ X_INC_CRTDEFS_MACRO = 0
+ X_INC_MINGW_SECAPI = 0
+ X_INC_VADEFS = 0
+ X_INC_WTIME_INL = 0
+ X_INC_WTIME_S_INL = 0
+ X_INC__MINGW_H = 0
+ X_INT128_DEFINED = 0
+ X_INTPTR_T_DEFINED = 0
+ X_MT = 0
+ X_M_ARM64 = 1
+ X_PGLOBAL = 0
+ X_POSIX_CPUTIME = 200809
+ X_POSIX_MONOTONIC_CLOCK = 200809
+ X_POSIX_THREAD_CPUTIME = 200809
+ X_POSIX_TIMERS = 200809
+ X_PTRDIFF_T_ = 0
+ X_PTRDIFF_T_DEFINED = 0
+ X_RSIZE_T_DEFINED = 0
+ X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD
+ X_SIZE_T_DEFINED = 0
+ X_SSIZE_T_DEFINED = 0
+ X_TAGLC_ID_DEFINED = 0
+ X_THREADLOCALEINFO = 0
+ X_TIME32_T_DEFINED = 0
+ X_TIME64_T_DEFINED = 0
+ X_TIMEB_DEFINED = 0
+ X_TIMEB_H_ = 0
+ X_TIMEB_H_S = 0
+ X_TIMESPEC_DEFINED = 0
+ X_TIMEVAL_DEFINED = 0
+ X_TIMEZONE_DEFINED = 0
+ X_TIME_H_ = 0
+ X_TIME_T_DEFINED = 0
+ X_TM_DEFINED = 0
+ X_UCRT = 0
+ X_UINTPTR_T_DEFINED = 0
+ X_VA_LIST_DEFINED = 0
+ X_W64 = 0
+ X_WCHAR_T_DEFINED = 0
+ X_WCTYPE_T_DEFINED = 0
+ X_WIN32 = 1
+ X_WIN32_WINNT = 0x601
+ X_WIN64 = 1
+ X_WINT_T = 0
+ X_WTIME_DEFINED = 0
+)
+
+type Ptrdiff_t = int64 /* <builtin>:3:26 */
+
+type Size_t = uint64 /* <builtin>:9:23 */
+
+type Wchar_t = uint16 /* <builtin>:15:24 */
+
+type X__int128_t = struct {
+ Flo int64
+ Fhi int64
+} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
+type X__uint128_t = struct {
+ Flo uint64
+ Fhi uint64
+} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
+
+type X__builtin_va_list = uintptr /* <builtin>:46:14 */
+type X__float128 = float64 /* <builtin>:47:21 */
+
+type Va_list = X__builtin_va_list /* <builtin>:50:27 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// This macro holds an monotonic increasing value, which indicates
+// a specific fix/patch is present on trunk. This value isn't related to
+// minor/major version-macros. It is increased on demand, if a big
+// fix was applied to trunk. This macro gets just increased on trunk. For
+// other branches its value won't be modified.
+
+// mingw.org's version macros: these make gcc to define
+// MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
+// and the __mingwthr_key_dtor() function from the MinGW
+// CRT in its private gthr-win32.h header.
+
+// Set VC specific compiler target macros.
+
+// MS does not prefix symbols by underscores for 64-bit.
+// As we have to support older gcc version, which are using underscores
+// as symbol prefix for x64, we have to check here for the user label
+// prefix defined by gcc.
+
+// Special case nameless struct/union.
+
+// MinGW-w64 has some additional C99 printf/scanf feature support.
+// So we add some helper macros to ease recognition of them.
+
+// If _FORTIFY_SOURCE is enabled, some inline functions may use
+// __builtin_va_arg_pack(). GCC may report an error if the address
+// of such a function is used. Set _FORTIFY_VA_ARG=0 in this case.
+
+// Enable workaround for ABI incompatibility on affected platforms
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
+// Templates won't work in C, will break if secure API is not enabled, disabled
+
+// https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
+// fallback on default implementation if we can't know the size of the destination
+
+// Include _cygwin.h if we're building a Cygwin application.
+
+// Target specific macro replacement for type "long". In the Windows API,
+// the type long is always 32 bit, even if the target is 64 bit (LLP64).
+// On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right
+// sized definitions and declarations, all usage of type long in the Windows
+// headers have to be replaced by the below defined macro __LONG32.
+
+// C/C++ specific language defines.
+
+// Note the extern. This is needed to work around GCC's
+// limitations in handling dllimport attribute.
+
+// Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
+// variadiac macro facility, because variadic macros cause syntax
+// errors with --traditional-cpp.
+
+// High byte is the major version, low byte is the minor.
+
+// Allow both 0x1400 and 0xE00 to identify UCRT
+
+// ===-------- vadefs.h ---------------------------------------------------===
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===-----------------------------------------------------------------------===
+
+// Only include this if we are aiming for MSVC compatibility.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// for backward compatibility
+
+type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
+
+type Ssize_t = int64 /* corecrt.h:45:35 */
+
+type Rsize_t = Size_t /* corecrt.h:52:16 */
+
+type Intptr_t = int64 /* corecrt.h:62:35 */
+
+type Uintptr_t = uint64 /* corecrt.h:75:44 */
+
+type Wint_t = uint16 /* corecrt.h:106:24 */
+type Wctype_t = uint16 /* corecrt.h:107:24 */
+
+type Errno_t = int32 /* corecrt.h:113:13 */
+
+type X__time32_t = int32 /* corecrt.h:118:14 */
+
+type X__time64_t = int64 /* corecrt.h:123:35 */
+
+type Time_t = X__time64_t /* corecrt.h:138:20 */
+
+type Threadlocaleinfostruct = struct {
+ F_locale_pctype uintptr
+ F_locale_mb_cur_max int32
+ F_locale_lc_codepage uint32
+} /* corecrt.h:430:1 */
+
+type Pthreadlocinfo = uintptr /* corecrt.h:432:39 */
+type Pthreadmbcinfo = uintptr /* corecrt.h:433:36 */
+
+type Localeinfo_struct = struct {
+ Flocinfo Pthreadlocinfo
+ Fmbcinfo Pthreadmbcinfo
+} /* corecrt.h:436:9 */
+
+type X_locale_tstruct = Localeinfo_struct /* corecrt.h:439:3 */
+type X_locale_t = uintptr /* corecrt.h:439:19 */
+
+type TagLC_ID = struct {
+ FwLanguage uint16
+ FwCountry uint16
+ FwCodePage uint16
+} /* corecrt.h:443:9 */
+
+type LC_ID = TagLC_ID /* corecrt.h:447:3 */
+type LPLC_ID = uintptr /* corecrt.h:447:9 */
+
+type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:482:3 */
+
+// Adding timespec definition.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+type X__timeb32 = struct {
+ Ftime X__time32_t
+ Fmillitm uint16
+ Ftimezone int16
+ Fdstflag int16
+ F__ccgo_pad1 [2]byte
+} /* timeb.h:53:3 */
+
+type Timeb = struct {
+ Ftime Time_t
+ Fmillitm uint16
+ Ftimezone int16
+ Fdstflag int16
+ F__ccgo_pad1 [2]byte
+} /* timeb.h:61:3 */
+
+type X__timeb64 = struct {
+ Ftime X__time64_t
+ Fmillitm uint16
+ Ftimezone int16
+ Fdstflag int16
+ F__ccgo_pad1 [2]byte
+} /* timeb.h:69:3 */
+
+type X_timespec32 = struct {
+ Ftv_sec X__time32_t
+ Ftv_nsec int32
+} /* timeb.h:89:1 */
+
+type X_timespec64 = struct {
+ Ftv_sec X__time64_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+} /* timeb.h:94:1 */
+
+type Timespec = struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+} /* timeb.h:101:1 */
+
+type Itimerspec = struct {
+ Fit_interval struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+ }
+ Fit_value struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+ }
+} /* timeb.h:106:1 */
+
+type Clock_t = int32 /* time.h:63:16 */
+
+type Tm = struct {
+ Ftm_sec int32
+ Ftm_min int32
+ Ftm_hour int32
+ Ftm_mday int32
+ Ftm_mon int32
+ Ftm_year int32
+ Ftm_wday int32
+ Ftm_yday int32
+ Ftm_isdst int32
+} /* time.h:100:3 */
+
+var Xdaylight int32 /* time.h:275:22: */
+var Xtimezone int32 /* time.h:276:23: */
+var Xtzname [2]uintptr /* time.h:277:23: */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+type Timeval = struct {
+ Ftv_sec int32
+ Ftv_usec int32
+} /* _timeval.h:10:1 */
+
+type Timezone = struct {
+ Ftz_minuteswest int32
+ Ftz_dsttime int32
+} /* time.h:285:1 */
+
+// POSIX 2008 says clock_gettime and timespec are defined in time.h header,
+// but other systems - like Linux, Solaris, etc - tend to declare such
+// recent extensions only if the following guards are met.
+//
+// Copyright (c) 2011-2016 mingw-w64 project
+//
+// Permission is hereby granted, free of charge, to any person obtaining a
+// copy of this software and associated documentation files (the "Software"),
+// to deal in the Software without restriction, including without limitation
+// the rights to use, copy, modify, merge, publish, distribute, sublicense,
+// and/or sell copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+// DEALINGS IN THE SOFTWARE.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// Posix timers are supported
+
+// Monotonic clocks are available.
+
+// CPU-time clocks are available.
+
+// Clock support in threads are available.
+
+type Clockid_t = int32 /* pthread_time.h:49:13 */
+
+var _ int8 /* gen.c:2:13: */
diff --git a/vendor/modernc.org/libc/unistd/capi_windows_arm64.go b/vendor/modernc.org/libc/unistd/capi_windows_arm64.go
new file mode 100644
index 00000000..6156925e
--- /dev/null
+++ b/vendor/modernc.org/libc/unistd/capi_windows_arm64.go
@@ -0,0 +1,5 @@
+// Code generated by 'ccgo unistd\gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o unistd\unistd_windows_arm64.go -pkgname unistd', DO NOT EDIT.
+
+package unistd
+
+var CAPI = map[string]struct{}{}
diff --git a/vendor/modernc.org/libc/unistd/unistd_windows_arm64.go b/vendor/modernc.org/libc/unistd/unistd_windows_arm64.go
new file mode 100644
index 00000000..6464baa1
--- /dev/null
+++ b/vendor/modernc.org/libc/unistd/unistd_windows_arm64.go
@@ -0,0 +1,682 @@
+// Code generated by 'ccgo unistd\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o unistd\unistd_windows_arm64.go -pkgname unistd', DO NOT EDIT.
+
+package unistd
+
+import (
+ "math"
+ "reflect"
+ "sync/atomic"
+ "unsafe"
+)
+
+var _ = math.Pi
+var _ reflect.Kind
+var _ atomic.Value
+var _ unsafe.Pointer
+
+const (
+ DUMMYSTRUCTNAME = 0
+ DUMMYSTRUCTNAME1 = 0
+ DUMMYSTRUCTNAME2 = 0
+ DUMMYSTRUCTNAME3 = 0
+ DUMMYSTRUCTNAME4 = 0
+ DUMMYSTRUCTNAME5 = 0
+ DUMMYUNIONNAME = 0
+ DUMMYUNIONNAME1 = 0
+ DUMMYUNIONNAME2 = 0
+ DUMMYUNIONNAME3 = 0
+ DUMMYUNIONNAME4 = 0
+ DUMMYUNIONNAME5 = 0
+ DUMMYUNIONNAME6 = 0
+ DUMMYUNIONNAME7 = 0
+ DUMMYUNIONNAME8 = 0
+ DUMMYUNIONNAME9 = 0
+ FTRUNCATE_DEFINED = 0
+ F_OK = 0
+ MINGW_DDK_H = 0
+ MINGW_HAS_DDK_H = 1
+ MINGW_HAS_SECURE_API = 1
+ MINGW_SDK_INIT = 0
+ OLD_P_OVERLAY = 2
+ P_DETACH = 4
+ P_NOWAIT = 1
+ P_NOWAITO = 3
+ P_OVERLAY = 2
+ P_WAIT = 0
+ R_OK = 4
+ SEEK_CUR = 1
+ SEEK_END = 2
+ SEEK_SET = 0
+ STDERR_FILENO = 2
+ STDIN_FILENO = 0
+ STDOUT_FILENO = 1
+ UNALIGNED = 0
+ USE___UUIDOF = 0
+ WAIT_CHILD = 0
+ WAIT_GRANDCHILD = 1
+ WIN32 = 1
+ WIN64 = 1
+ WINNT = 1
+ WIN_PTHREADS_UNISTD_H = 0
+ W_OK = 2
+ X_OK = 1
+ X_AGLOBAL = 0
+ X_ANONYMOUS_STRUCT = 0
+ X_ANONYMOUS_UNION = 0
+ X_ARGMAX = 100
+ X_ARM64_ = 1
+ X_A_ARCH = 0x20
+ X_A_HIDDEN = 0x02
+ X_A_NORMAL = 0x00
+ X_A_RDONLY = 0x01
+ X_A_SUBDIR = 0x10
+ X_A_SYSTEM = 0x04
+ X_CONST_RETURN = 0
+ X_CRTNOALIAS = 0
+ X_CRTRESTRICT = 0
+ X_CRT_ALTERNATIVE_IMPORTED = 0
+ X_CRT_DIRECTORY_DEFINED = 0
+ X_CRT_GETPID_DEFINED = 0
+ X_CRT_MANAGED_HEAP_DEPRECATE = 0
+ X_CRT_MEMORY_DEFINED = 0
+ X_CRT_PACKING = 8
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
+ X_CRT_SWAB_DEFINED = 0
+ X_CRT_SYSTEM_DEFINED = 0
+ X_CRT_TERMINATE_DEFINED = 0
+ X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0
+ X_CRT_WSYSTEM_DEFINED = 0
+ X_DEV_T_DEFINED = 0
+ X_DLL = 0
+ X_ERRCODE_DEFINED = 0
+ X_FILE_OFFSET_BITS = 64
+ X_FILE_OFFSET_BITS_SET_FTRUNCATE = 0
+ X_FILE_OFFSET_BITS_SET_LSEEK = 0
+ X_FILE_OFFSET_BITS_SET_OFFT = 0
+ X_FINDDATA_T_DEFINED = 0
+ X_FSIZE_T_DEFINED = 0
+ X_INC_CORECRT = 0
+ X_INC_CORECRT_STARTUP = 0
+ X_INC_CRTDEFS = 0
+ X_INC_CRTDEFS_MACRO = 0
+ X_INC_MINGW_SECAPI = 0
+ X_INC_PROCESS = 0
+ X_INC_STRING = 0
+ X_INC_STRING_S = 0
+ X_INC_TYPES = 0
+ X_INC_VADEFS = 0
+ X_INC__MINGW_H = 0
+ X_INO_T_DEFINED = 0
+ X_INT128_DEFINED = 0
+ X_INTPTR_T_DEFINED = 0
+ X_IO_H_ = 0
+ X_MODE_T_ = 0
+ X_MT = 0
+ X_M_ARM64 = 1
+ X_NLSCMPERROR = 2147483647
+ X_NLSCMP_DEFINED = 0
+ X_OFF64_T_DEFINED = 0
+ X_OFF_T_ = 0
+ X_OFF_T_DEFINED = 0
+ X_OLD_P_OVERLAY = 2
+ X_PGLOBAL = 0
+ X_PID_T_ = 0
+ X_POSIX_BARRIERS = 200112
+ X_POSIX_CLOCK_SELECTION = 200112
+ X_POSIX_READER_WRITER_LOCKS = 200112
+ X_POSIX_SEMAPHORES = 200112
+ X_POSIX_SPIN_LOCKS = 200112
+ X_POSIX_THREADS = 200112
+ X_POSIX_TIMEOUTS = 200112
+ X_PTRDIFF_T_ = 0
+ X_PTRDIFF_T_DEFINED = 0
+ X_P_DETACH = 4
+ X_P_NOWAIT = 1
+ X_P_NOWAITO = 3
+ X_P_OVERLAY = 2
+ X_P_WAIT = 0
+ X_RSIZE_T_DEFINED = 0
+ X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD
+ X_SIGSET_T_ = 0
+ X_SIZE_T_DEFINED = 0
+ X_SPAWNV_DEFINED = 0
+ X_SSIZE_T_DEFINED = 0
+ X_TAGLC_ID_DEFINED = 0
+ X_THREADLOCALEINFO = 0
+ X_TIME32_T_DEFINED = 0
+ X_TIME64_T_DEFINED = 0
+ X_TIMESPEC_DEFINED = 0
+ X_TIME_T_DEFINED = 0
+ X_UCRT = 0
+ X_UINTPTR_T_DEFINED = 0
+ X_UNISTD_H = 0
+ X_VA_LIST_DEFINED = 0
+ X_W64 = 0
+ X_WAIT_CHILD = 0
+ X_WAIT_GRANDCHILD = 1
+ X_WCHAR_T_DEFINED = 0
+ X_WCTYPE_T_DEFINED = 0
+ X_WConst_return = 0
+ X_WEXEC_DEFINED = 0
+ X_WFINDDATA_T_DEFINED = 0
+ X_WIN32 = 1
+ X_WIN32_WINNT = 0x601
+ X_WIN64 = 1
+ X_WINT_T = 0
+ X_WIO_DEFINED = 0
+ X_WSPAWN_DEFINED = 0
+ X_WSTRING_DEFINED = 0
+ X_WSTRING_S_DEFINED = 0
+)
+
+type Ptrdiff_t = int64 /* <builtin>:3:26 */
+
+type Size_t = uint64 /* <builtin>:9:23 */
+
+type Wchar_t = uint16 /* <builtin>:15:24 */
+
+type X__int128_t = struct {
+ Flo int64
+ Fhi int64
+} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
+type X__uint128_t = struct {
+ Flo uint64
+ Fhi uint64
+} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
+
+type X__builtin_va_list = uintptr /* <builtin>:46:14 */
+type X__float128 = float64 /* <builtin>:47:21 */
+
+type Va_list = X__builtin_va_list /* <builtin>:50:27 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// This macro holds an monotonic increasing value, which indicates
+// a specific fix/patch is present on trunk. This value isn't related to
+// minor/major version-macros. It is increased on demand, if a big
+// fix was applied to trunk. This macro gets just increased on trunk. For
+// other branches its value won't be modified.
+
+// mingw.org's version macros: these make gcc to define
+// MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
+// and the __mingwthr_key_dtor() function from the MinGW
+// CRT in its private gthr-win32.h header.
+
+// Set VC specific compiler target macros.
+
+// MS does not prefix symbols by underscores for 64-bit.
+// As we have to support older gcc version, which are using underscores
+// as symbol prefix for x64, we have to check here for the user label
+// prefix defined by gcc.
+
+// Special case nameless struct/union.
+
+// MinGW-w64 has some additional C99 printf/scanf feature support.
+// So we add some helper macros to ease recognition of them.
+
+// If _FORTIFY_SOURCE is enabled, some inline functions may use
+// __builtin_va_arg_pack(). GCC may report an error if the address
+// of such a function is used. Set _FORTIFY_VA_ARG=0 in this case.
+
+// Enable workaround for ABI incompatibility on affected platforms
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
+// Templates won't work in C, will break if secure API is not enabled, disabled
+
+// https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
+// fallback on default implementation if we can't know the size of the destination
+
+// Include _cygwin.h if we're building a Cygwin application.
+
+// Target specific macro replacement for type "long". In the Windows API,
+// the type long is always 32 bit, even if the target is 64 bit (LLP64).
+// On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right
+// sized definitions and declarations, all usage of type long in the Windows
+// headers have to be replaced by the below defined macro __LONG32.
+
+// C/C++ specific language defines.
+
+// Note the extern. This is needed to work around GCC's
+// limitations in handling dllimport attribute.
+
+// Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
+// variadiac macro facility, because variadic macros cause syntax
+// errors with --traditional-cpp.
+
+// High byte is the major version, low byte is the minor.
+
+// Allow both 0x1400 and 0xE00 to identify UCRT
+
+// ===-------- vadefs.h ---------------------------------------------------===
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===-----------------------------------------------------------------------===
+
+// Only include this if we are aiming for MSVC compatibility.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// for backward compatibility
+
+type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
+
+type Ssize_t = int64 /* corecrt.h:45:35 */
+
+type Rsize_t = Size_t /* corecrt.h:52:16 */
+
+type Intptr_t = int64 /* corecrt.h:62:35 */
+
+type Uintptr_t = uint64 /* corecrt.h:75:44 */
+
+type Wint_t = uint16 /* corecrt.h:106:24 */
+type Wctype_t = uint16 /* corecrt.h:107:24 */
+
+type Errno_t = int32 /* corecrt.h:113:13 */
+
+type X__time32_t = int32 /* corecrt.h:118:14 */
+
+type X__time64_t = int64 /* corecrt.h:123:35 */
+
+type Time_t = X__time64_t /* corecrt.h:138:20 */
+
+type Threadlocaleinfostruct = struct {
+ F_locale_pctype uintptr
+ F_locale_mb_cur_max int32
+ F_locale_lc_codepage uint32
+} /* corecrt.h:430:1 */
+
+type Pthreadlocinfo = uintptr /* corecrt.h:432:39 */
+type Pthreadmbcinfo = uintptr /* corecrt.h:433:36 */
+
+type Localeinfo_struct = struct {
+ Flocinfo Pthreadlocinfo
+ Fmbcinfo Pthreadmbcinfo
+} /* corecrt.h:436:9 */
+
+type X_locale_tstruct = Localeinfo_struct /* corecrt.h:439:3 */
+type X_locale_t = uintptr /* corecrt.h:439:19 */
+
+type TagLC_ID = struct {
+ FwLanguage uint16
+ FwCountry uint16
+ FwCodePage uint16
+} /* corecrt.h:443:9 */
+
+type LC_ID = TagLC_ID /* corecrt.h:447:3 */
+type LPLC_ID = uintptr /* corecrt.h:447:9 */
+
+type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:482:3 */
+type X_fsize_t = uint32 /* io.h:29:25 */
+
+type X_finddata32_t = struct {
+ Fattrib uint32
+ Ftime_create X__time32_t
+ Ftime_access X__time32_t
+ Ftime_write X__time32_t
+ Fsize X_fsize_t
+ Fname [260]int8
+} /* io.h:35:3 */
+
+type X_finddata32i64_t = struct {
+ Fattrib uint32
+ Ftime_create X__time32_t
+ Ftime_access X__time32_t
+ Ftime_write X__time32_t
+ Fsize int64
+ Fname [260]int8
+ F__ccgo_pad1 [4]byte
+} /* io.h:44:3 */
+
+type X_finddata64i32_t = struct {
+ Fattrib uint32
+ F__ccgo_pad1 [4]byte
+ Ftime_create X__time64_t
+ Ftime_access X__time64_t
+ Ftime_write X__time64_t
+ Fsize X_fsize_t
+ Fname [260]int8
+} /* io.h:53:3 */
+
+type X__finddata64_t = struct {
+ Fattrib uint32
+ F__ccgo_pad1 [4]byte
+ Ftime_create X__time64_t
+ Ftime_access X__time64_t
+ Ftime_write X__time64_t
+ Fsize int64
+ Fname [260]int8
+ F__ccgo_pad2 [4]byte
+} /* io.h:62:3 */
+
+type X_wfinddata32_t = struct {
+ Fattrib uint32
+ Ftime_create X__time32_t
+ Ftime_access X__time32_t
+ Ftime_write X__time32_t
+ Fsize X_fsize_t
+ Fname [260]Wchar_t
+} /* io.h:94:3 */
+
+type X_wfinddata32i64_t = struct {
+ Fattrib uint32
+ Ftime_create X__time32_t
+ Ftime_access X__time32_t
+ Ftime_write X__time32_t
+ Fsize int64
+ Fname [260]Wchar_t
+} /* io.h:103:3 */
+
+type X_wfinddata64i32_t = struct {
+ Fattrib uint32
+ F__ccgo_pad1 [4]byte
+ Ftime_create X__time64_t
+ Ftime_access X__time64_t
+ Ftime_write X__time64_t
+ Fsize X_fsize_t
+ Fname [260]Wchar_t
+ F__ccgo_pad2 [4]byte
+} /* io.h:112:3 */
+
+type X_wfinddata64_t = struct {
+ Fattrib uint32
+ F__ccgo_pad1 [4]byte
+ Ftime_create X__time64_t
+ Ftime_access X__time64_t
+ Ftime_write X__time64_t
+ Fsize int64
+ Fname [260]Wchar_t
+} /* io.h:121:3 */
+
+type X_off_t = int32 /* _mingw_off_t.h:5:16 */
+type Off32_t = int32 /* _mingw_off_t.h:7:16 */
+
+type X_off64_t = int64 /* _mingw_off_t.h:13:39 */
+type Off64_t = int64 /* _mingw_off_t.h:15:39 */
+
+type Off_t = Off64_t /* _mingw_off_t.h:24:17 */
+
+type X_PVFV = uintptr /* corecrt_startup.h:20:14 */
+type X_PIFV = uintptr /* corecrt_startup.h:21:13 */
+type X_PVFI = uintptr /* corecrt_startup.h:22:14 */
+
+type X_onexit_table_t1 = struct {
+ F_first uintptr
+ F_last uintptr
+ F_end uintptr
+} /* corecrt_startup.h:24:9 */
+
+type X_onexit_table_t = X_onexit_table_t1 /* corecrt_startup.h:28:3 */
+
+type X_onexit_t = uintptr /* corecrt_startup.h:30:13 */
+
+// Includes a definition of _pid_t and pid_t
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+type X_ino_t = uint16 /* types.h:43:24 */
+type Ino_t = uint16 /* types.h:45:24 */
+
+type X_dev_t = uint32 /* types.h:51:22 */
+type Dev_t = uint32 /* types.h:53:22 */
+
+type X_pid_t = int64 /* types.h:63:17 */
+
+type Pid_t = X_pid_t /* types.h:68:16 */
+
+type X_mode_t = uint16 /* types.h:74:24 */
+
+type Mode_t = X_mode_t /* types.h:77:17 */
+
+type Useconds_t = uint32 /* types.h:84:22 */
+
+type Timespec = struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+} /* types.h:89:1 */
+
+type Itimerspec = struct {
+ Fit_interval struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+ }
+ Fit_value struct {
+ Ftv_sec Time_t
+ Ftv_nsec int32
+ F__ccgo_pad1 [4]byte
+ }
+} /* types.h:94:1 */
+
+type X_sigset_t = uint64 /* types.h:104:28 */
+
+type X_beginthread_proc_type = uintptr /* process.h:32:16 */
+type X_beginthreadex_proc_type = uintptr /* process.h:33:20 */
+
+type X_tls_callback_type = uintptr /* process.h:64:16 */
+
+//
+// Copyright (c) 2011-2016 mingw-w64 project
+//
+// Permission is hereby granted, free of charge, to any person obtaining a
+// copy of this software and associated documentation files (the "Software"),
+// to deal in the Software without restriction, including without limitation
+// the rights to use, copy, modify, merge, publish, distribute, sublicense,
+// and/or sell copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+// DEALINGS IN THE SOFTWARE.
+
+// Set defines described by the POSIX Threads Extension (1003.1c-1995)
+// _SC_THREADS
+// Basic support for POSIX threads is available. The functions
+//
+// pthread_atfork(),
+// pthread_attr_destroy(),
+// pthread_attr_getdetachstate(),
+// pthread_attr_getschedparam(),
+// pthread_attr_init(),
+// pthread_attr_setdetachstate(),
+// pthread_attr_setschedparam(),
+// pthread_cancel(),
+// pthread_cleanup_push(),
+// pthread_cleanup_pop(),
+// pthread_cond_broadcast(),
+// pthread_cond_destroy(),
+// pthread_cond_init(),
+// pthread_cond_signal(),
+// pthread_cond_timedwait(),
+// pthread_cond_wait(),
+// pthread_condattr_destroy(),
+// pthread_condattr_init(),
+// pthread_create(),
+// pthread_detach(),
+// pthread_equal(),
+// pthread_exit(),
+// pthread_getspecific(),
+// pthread_join(,
+// pthread_key_create(),
+// pthread_key_delete(),
+// pthread_mutex_destroy(),
+// pthread_mutex_init(),
+// pthread_mutex_lock(),
+// pthread_mutex_trylock(),
+// pthread_mutex_unlock(),
+// pthread_mutexattr_destroy(),
+// pthread_mutexattr_init(),
+// pthread_once(),
+// pthread_rwlock_destroy(),
+// pthread_rwlock_init(),
+// pthread_rwlock_rdlock(),
+// pthread_rwlock_tryrdlock(),
+// pthread_rwlock_trywrlock(),
+// pthread_rwlock_unlock(),
+// pthread_rwlock_wrlock(),
+// pthread_rwlockattr_destroy(),
+// pthread_rwlockattr_init(),
+// pthread_self(),
+// pthread_setcancelstate(),
+// pthread_setcanceltype(),
+// pthread_setspecific(),
+// pthread_testcancel()
+//
+// are present.
+
+// _SC_READER_WRITER_LOCKS
+// This option implies the _POSIX_THREADS option. Conversely, under
+// POSIX 1003.1-2001 the _POSIX_THREADS option implies this option.
+//
+// The functions
+// pthread_rwlock_destroy(),
+// pthread_rwlock_init(),
+// pthread_rwlock_rdlock(),
+// pthread_rwlock_tryrdlock(),
+// pthread_rwlock_trywrlock(),
+// pthread_rwlock_unlock(),
+// pthread_rwlock_wrlock(),
+// pthread_rwlockattr_destroy(),
+// pthread_rwlockattr_init()
+//
+// are present.
+
+// _SC_SPIN_LOCKS
+// This option implies the _POSIX_THREADS and _POSIX_THREAD_SAFE_FUNCTIONS
+// options. The functions
+//
+// pthread_spin_destroy(),
+// pthread_spin_init(),
+// pthread_spin_lock(),
+// pthread_spin_trylock(),
+// pthread_spin_unlock()
+//
+// are present.
+
+// _SC_BARRIERS
+// This option implies the _POSIX_THREADS and _POSIX_THREAD_SAFE_FUNCTIONS
+// options. The functions
+//
+// pthread_barrier_destroy(),
+// pthread_barrier_init(),
+// pthread_barrier_wait(),
+// pthread_barrierattr_destroy(),
+// pthread_barrierattr_init()
+//
+// are present.
+
+// _SC_TIMEOUTS
+// The functions
+//
+// mq_timedreceive(), - not supported
+// mq_timedsend(), - not supported
+// posix_trace_timedgetnext_event(), - not supported
+// pthread_mutex_timedlock(),
+// pthread_rwlock_timedrdlock(),
+// pthread_rwlock_timedwrlock(),
+// sem_timedwait(),
+//
+// are present.
+
+// _SC_TIMERS - not supported
+// The functions
+//
+// clock_getres(),
+// clock_gettime(),
+// clock_settime(),
+// nanosleep(),
+// timer_create(),
+// timer_delete(),
+// timer_gettime(),
+// timer_getoverrun(),
+// timer_settime()
+//
+// are present.
+// #undef _POSIX_TIMERS
+
+// _SC_CLOCK_SELECTION
+// This option implies the _POSIX_TIMERS option. The functions
+//
+// pthread_condattr_getclock(),
+// pthread_condattr_setclock(),
+// clock_nanosleep()
+//
+// are present.
+
+// _SC_SEMAPHORES
+// The include file <semaphore.h> is present. The functions
+//
+// sem_close(),
+// sem_destroy(),
+// sem_getvalue(),
+// sem_init(),
+// sem_open(),
+// sem_post(),
+// sem_trywait(),
+// sem_unlink(),
+// sem_wait()
+//
+// are present.
+
+var _ int8 /* gen.c:2:13: */
diff --git a/vendor/modernc.org/libc/utime/capi_windows_arm64.go b/vendor/modernc.org/libc/utime/capi_windows_arm64.go
new file mode 100644
index 00000000..d4b8c791
--- /dev/null
+++ b/vendor/modernc.org/libc/utime/capi_windows_arm64.go
@@ -0,0 +1,5 @@
+// Code generated by 'ccgo utime\gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o utime\utime_windows_arm64.go -pkgname utime', DO NOT EDIT.
+
+package utime
+
+var CAPI = map[string]struct{}{}
diff --git a/vendor/modernc.org/libc/utime/utime_windows_arm64.go b/vendor/modernc.org/libc/utime/utime_windows_arm64.go
new file mode 100644
index 00000000..43b59c1f
--- /dev/null
+++ b/vendor/modernc.org/libc/utime/utime_windows_arm64.go
@@ -0,0 +1,304 @@
+// Code generated by 'ccgo utime\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o utime\utime_windows_arm64.go -pkgname utime', DO NOT EDIT.
+
+package utime
+
+import (
+ "math"
+ "reflect"
+ "sync/atomic"
+ "unsafe"
+)
+
+var _ = math.Pi
+var _ reflect.Kind
+var _ atomic.Value
+var _ unsafe.Pointer
+
+const (
+ DUMMYSTRUCTNAME = 0
+ DUMMYSTRUCTNAME1 = 0
+ DUMMYSTRUCTNAME2 = 0
+ DUMMYSTRUCTNAME3 = 0
+ DUMMYSTRUCTNAME4 = 0
+ DUMMYSTRUCTNAME5 = 0
+ DUMMYUNIONNAME = 0
+ DUMMYUNIONNAME1 = 0
+ DUMMYUNIONNAME2 = 0
+ DUMMYUNIONNAME3 = 0
+ DUMMYUNIONNAME4 = 0
+ DUMMYUNIONNAME5 = 0
+ DUMMYUNIONNAME6 = 0
+ DUMMYUNIONNAME7 = 0
+ DUMMYUNIONNAME8 = 0
+ DUMMYUNIONNAME9 = 0
+ MINGW_DDK_H = 0
+ MINGW_HAS_DDK_H = 1
+ MINGW_HAS_SECURE_API = 1
+ MINGW_SDK_INIT = 0
+ UNALIGNED = 0
+ USE___UUIDOF = 0
+ WIN32 = 1
+ WIN64 = 1
+ WINNT = 1
+ X_AGLOBAL = 0
+ X_ANONYMOUS_STRUCT = 0
+ X_ANONYMOUS_UNION = 0
+ X_ARGMAX = 100
+ X_ARM64_ = 1
+ X_CONST_RETURN = 0
+ X_CRTNOALIAS = 0
+ X_CRTRESTRICT = 0
+ X_CRT_ALTERNATIVE_IMPORTED = 0
+ X_CRT_MANAGED_HEAP_DEPRECATE = 0
+ X_CRT_PACKING = 8
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
+ X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0
+ X_DLL = 0
+ X_ERRCODE_DEFINED = 0
+ X_FILE_OFFSET_BITS = 64
+ X_INC_CORECRT = 0
+ X_INC_CRTDEFS = 0
+ X_INC_CRTDEFS_MACRO = 0
+ X_INC_MINGW_SECAPI = 0
+ X_INC_UTIME = 0
+ X_INC_VADEFS = 0
+ X_INC__MINGW_H = 0
+ X_INT128_DEFINED = 0
+ X_INTPTR_T_DEFINED = 0
+ X_MT = 0
+ X_M_ARM64 = 1
+ X_PGLOBAL = 0
+ X_PTRDIFF_T_ = 0
+ X_PTRDIFF_T_DEFINED = 0
+ X_RSIZE_T_DEFINED = 0
+ X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD
+ X_SIZE_T_DEFINED = 0
+ X_SSIZE_T_DEFINED = 0
+ X_TAGLC_ID_DEFINED = 0
+ X_THREADLOCALEINFO = 0
+ X_TIME32_T_DEFINED = 0
+ X_TIME64_T_DEFINED = 0
+ X_TIME_T_DEFINED = 0
+ X_UCRT = 0
+ X_UINTPTR_T_DEFINED = 0
+ X_UTIMBUF_DEFINED = 0
+ X_VA_LIST_DEFINED = 0
+ X_W64 = 0
+ X_WCHAR_T_DEFINED = 0
+ X_WCTYPE_T_DEFINED = 0
+ X_WIN32 = 1
+ X_WIN32_WINNT = 0x601
+ X_WIN64 = 1
+ X_WINT_T = 0
+)
+
+type Ptrdiff_t = int64 /* <builtin>:3:26 */
+
+type Size_t = uint64 /* <builtin>:9:23 */
+
+type Wchar_t = uint16 /* <builtin>:15:24 */
+
+type X__int128_t = struct {
+ Flo int64
+ Fhi int64
+} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
+type X__uint128_t = struct {
+ Flo uint64
+ Fhi uint64
+} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
+
+type X__builtin_va_list = uintptr /* <builtin>:46:14 */
+type X__float128 = float64 /* <builtin>:47:21 */
+
+type Va_list = X__builtin_va_list /* <builtin>:50:27 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// This macro holds an monotonic increasing value, which indicates
+// a specific fix/patch is present on trunk. This value isn't related to
+// minor/major version-macros. It is increased on demand, if a big
+// fix was applied to trunk. This macro gets just increased on trunk. For
+// other branches its value won't be modified.
+
+// mingw.org's version macros: these make gcc to define
+// MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
+// and the __mingwthr_key_dtor() function from the MinGW
+// CRT in its private gthr-win32.h header.
+
+// Set VC specific compiler target macros.
+
+// MS does not prefix symbols by underscores for 64-bit.
+// As we have to support older gcc version, which are using underscores
+// as symbol prefix for x64, we have to check here for the user label
+// prefix defined by gcc.
+
+// Special case nameless struct/union.
+
+// MinGW-w64 has some additional C99 printf/scanf feature support.
+// So we add some helper macros to ease recognition of them.
+
+// If _FORTIFY_SOURCE is enabled, some inline functions may use
+// __builtin_va_arg_pack(). GCC may report an error if the address
+// of such a function is used. Set _FORTIFY_VA_ARG=0 in this case.
+
+// Enable workaround for ABI incompatibility on affected platforms
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
+// Templates won't work in C, will break if secure API is not enabled, disabled
+
+// https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
+// fallback on default implementation if we can't know the size of the destination
+
+// Include _cygwin.h if we're building a Cygwin application.
+
+// Target specific macro replacement for type "long". In the Windows API,
+// the type long is always 32 bit, even if the target is 64 bit (LLP64).
+// On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right
+// sized definitions and declarations, all usage of type long in the Windows
+// headers have to be replaced by the below defined macro __LONG32.
+
+// C/C++ specific language defines.
+
+// Note the extern. This is needed to work around GCC's
+// limitations in handling dllimport attribute.
+
+// Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
+// variadiac macro facility, because variadic macros cause syntax
+// errors with --traditional-cpp.
+
+// High byte is the major version, low byte is the minor.
+
+// Allow both 0x1400 and 0xE00 to identify UCRT
+
+// ===-------- vadefs.h ---------------------------------------------------===
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===-----------------------------------------------------------------------===
+
+// Only include this if we are aiming for MSVC compatibility.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// for backward compatibility
+
+type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
+
+type Ssize_t = int64 /* corecrt.h:45:35 */
+
+type Rsize_t = Size_t /* corecrt.h:52:16 */
+
+type Intptr_t = int64 /* corecrt.h:62:35 */
+
+type Uintptr_t = uint64 /* corecrt.h:75:44 */
+
+type Wint_t = uint16 /* corecrt.h:106:24 */
+type Wctype_t = uint16 /* corecrt.h:107:24 */
+
+type Errno_t = int32 /* corecrt.h:113:13 */
+
+type X__time32_t = int32 /* corecrt.h:118:14 */
+
+type X__time64_t = int64 /* corecrt.h:123:35 */
+
+type Time_t = X__time64_t /* corecrt.h:138:20 */
+
+type Threadlocaleinfostruct = struct {
+ F_locale_pctype uintptr
+ F_locale_mb_cur_max int32
+ F_locale_lc_codepage uint32
+} /* corecrt.h:430:1 */
+
+type Pthreadlocinfo = uintptr /* corecrt.h:432:39 */
+type Pthreadmbcinfo = uintptr /* corecrt.h:433:36 */
+
+type Localeinfo_struct = struct {
+ Flocinfo Pthreadlocinfo
+ Fmbcinfo Pthreadmbcinfo
+} /* corecrt.h:436:9 */
+
+type X_locale_tstruct = Localeinfo_struct /* corecrt.h:439:3 */
+type X_locale_t = uintptr /* corecrt.h:439:19 */
+
+type TagLC_ID = struct {
+ FwLanguage uint16
+ FwCountry uint16
+ FwCodePage uint16
+} /* corecrt.h:443:9 */
+
+type LC_ID = TagLC_ID /* corecrt.h:447:3 */
+type LPLC_ID = uintptr /* corecrt.h:447:9 */
+
+type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:482:3 */
+
+type X_utimbuf = struct {
+ Factime Time_t
+ Fmodtime Time_t
+} /* utime.h:58:3 */
+
+type X__utimbuf32 = struct {
+ Factime X__time32_t
+ Fmodtime X__time32_t
+} /* utime.h:63:3 */
+
+type X__utimbuf64 = struct {
+ Factime X__time64_t
+ Fmodtime X__time64_t
+} /* utime.h:68:3 */
+
+type Utimbuf = struct {
+ Factime Time_t
+ Fmodtime Time_t
+} /* utime.h:74:3 */
+
+type Utimbuf32 = struct {
+ Factime X__time32_t
+ Fmodtime X__time32_t
+} /* utime.h:79:3 */
+
+var _ int8 /* gen.c:2:13: */
diff --git a/vendor/modernc.org/libc/wctype/capi_windows_arm64.go b/vendor/modernc.org/libc/wctype/capi_windows_arm64.go
new file mode 100644
index 00000000..3dbabc2f
--- /dev/null
+++ b/vendor/modernc.org/libc/wctype/capi_windows_arm64.go
@@ -0,0 +1,5 @@
+// Code generated by 'ccgo wctype\gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o wctype\wctype_windows_arm64.go -pkgname wctype', DO NOT EDIT.
+
+package wctype
+
+var CAPI = map[string]struct{}{}
diff --git a/vendor/modernc.org/libc/wctype/wctype_windows_arm64.go b/vendor/modernc.org/libc/wctype/wctype_windows_arm64.go
new file mode 100644
index 00000000..4be88f26
--- /dev/null
+++ b/vendor/modernc.org/libc/wctype/wctype_windows_arm64.go
@@ -0,0 +1,290 @@
+// Code generated by 'ccgo wctype\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o wctype\wctype_windows_arm64.go -pkgname wctype', DO NOT EDIT.
+
+package wctype
+
+import (
+ "math"
+ "reflect"
+ "sync/atomic"
+ "unsafe"
+)
+
+var _ = math.Pi
+var _ reflect.Kind
+var _ atomic.Value
+var _ unsafe.Pointer
+
+const (
+ DUMMYSTRUCTNAME = 0
+ DUMMYSTRUCTNAME1 = 0
+ DUMMYSTRUCTNAME2 = 0
+ DUMMYSTRUCTNAME3 = 0
+ DUMMYSTRUCTNAME4 = 0
+ DUMMYSTRUCTNAME5 = 0
+ DUMMYUNIONNAME = 0
+ DUMMYUNIONNAME1 = 0
+ DUMMYUNIONNAME2 = 0
+ DUMMYUNIONNAME3 = 0
+ DUMMYUNIONNAME4 = 0
+ DUMMYUNIONNAME5 = 0
+ DUMMYUNIONNAME6 = 0
+ DUMMYUNIONNAME7 = 0
+ DUMMYUNIONNAME8 = 0
+ DUMMYUNIONNAME9 = 0
+ MINGW_DDK_H = 0
+ MINGW_HAS_DDK_H = 1
+ MINGW_HAS_SECURE_API = 1
+ MINGW_SDK_INIT = 0
+ UNALIGNED = 0
+ USE___UUIDOF = 0
+ WIN32 = 1
+ WIN64 = 1
+ WINNT = 1
+ X_AGLOBAL = 0
+ X_ALPHA = 259
+ X_ANONYMOUS_STRUCT = 0
+ X_ANONYMOUS_UNION = 0
+ X_ARGMAX = 100
+ X_ARM64_ = 1
+ X_BLANK = 0x40
+ X_CONST_RETURN = 0
+ X_CONTROL = 0x20
+ X_CRTNOALIAS = 0
+ X_CRTRESTRICT = 0
+ X_CRT_ALTERNATIVE_IMPORTED = 0
+ X_CRT_CTYPEDATA_DEFINED = 0
+ X_CRT_MANAGED_HEAP_DEPRECATE = 0
+ X_CRT_PACKING = 8
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0
+ X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
+ X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0
+ X_CRT_WCTYPEDATA_DEFINED = 0
+ X_DIGIT = 0x4
+ X_DLL = 0
+ X_ERRCODE_DEFINED = 0
+ X_FILE_OFFSET_BITS = 64
+ X_HEX = 0x80
+ X_INC_CORECRT = 0
+ X_INC_CRTDEFS = 0
+ X_INC_CRTDEFS_MACRO = 0
+ X_INC_MINGW_SECAPI = 0
+ X_INC_VADEFS = 0
+ X_INC_WCTYPE = 0
+ X_INC__MINGW_H = 0
+ X_INT128_DEFINED = 0
+ X_INTPTR_T_DEFINED = 0
+ X_LEADBYTE = 0x8000
+ X_LOWER = 0x2
+ X_MT = 0
+ X_M_ARM64 = 1
+ X_PGLOBAL = 0
+ X_PTRDIFF_T_ = 0
+ X_PTRDIFF_T_DEFINED = 0
+ X_PUNCT = 0x10
+ X_RSIZE_T_DEFINED = 0
+ X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD
+ X_SIZE_T_DEFINED = 0
+ X_SPACE = 0x8
+ X_SSIZE_T_DEFINED = 0
+ X_TAGLC_ID_DEFINED = 0
+ X_THREADLOCALEINFO = 0
+ X_TIME32_T_DEFINED = 0
+ X_TIME64_T_DEFINED = 0
+ X_TIME_T_DEFINED = 0
+ X_UCRT = 0
+ X_UINTPTR_T_DEFINED = 0
+ X_UPPER = 0x1
+ X_VA_LIST_DEFINED = 0
+ X_W64 = 0
+ X_WCHAR_T_DEFINED = 0
+ X_WCTYPE_DEFINED = 0
+ X_WCTYPE_INLINE_DEFINED = 0
+ X_WCTYPE_T_DEFINED = 0
+ X_WIN32 = 1
+ X_WIN32_WINNT = 0x601
+ X_WIN64 = 1
+ X_WINT_T = 0
+)
+
+type Ptrdiff_t = int64 /* <builtin>:3:26 */
+
+type Size_t = uint64 /* <builtin>:9:23 */
+
+type Wchar_t = uint16 /* <builtin>:15:24 */
+
+type X__int128_t = struct {
+ Flo int64
+ Fhi int64
+} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
+type X__uint128_t = struct {
+ Flo uint64
+ Fhi uint64
+} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
+
+type X__builtin_va_list = uintptr /* <builtin>:46:14 */
+type X__float128 = float64 /* <builtin>:47:21 */
+
+type Va_list = X__builtin_va_list /* <builtin>:50:27 */
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// This macro holds an monotonic increasing value, which indicates
+// a specific fix/patch is present on trunk. This value isn't related to
+// minor/major version-macros. It is increased on demand, if a big
+// fix was applied to trunk. This macro gets just increased on trunk. For
+// other branches its value won't be modified.
+
+// mingw.org's version macros: these make gcc to define
+// MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
+// and the __mingwthr_key_dtor() function from the MinGW
+// CRT in its private gthr-win32.h header.
+
+// Set VC specific compiler target macros.
+
+// MS does not prefix symbols by underscores for 64-bit.
+// As we have to support older gcc version, which are using underscores
+// as symbol prefix for x64, we have to check here for the user label
+// prefix defined by gcc.
+
+// Special case nameless struct/union.
+
+// MinGW-w64 has some additional C99 printf/scanf feature support.
+// So we add some helper macros to ease recognition of them.
+
+// If _FORTIFY_SOURCE is enabled, some inline functions may use
+// __builtin_va_arg_pack(). GCC may report an error if the address
+// of such a function is used. Set _FORTIFY_VA_ARG=0 in this case.
+
+// Enable workaround for ABI incompatibility on affected platforms
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
+// Templates won't work in C, will break if secure API is not enabled, disabled
+
+// https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
+// fallback on default implementation if we can't know the size of the destination
+
+// Include _cygwin.h if we're building a Cygwin application.
+
+// Target specific macro replacement for type "long". In the Windows API,
+// the type long is always 32 bit, even if the target is 64 bit (LLP64).
+// On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right
+// sized definitions and declarations, all usage of type long in the Windows
+// headers have to be replaced by the below defined macro __LONG32.
+
+// C/C++ specific language defines.
+
+// Note the extern. This is needed to work around GCC's
+// limitations in handling dllimport attribute.
+
+// Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
+// variadiac macro facility, because variadic macros cause syntax
+// errors with --traditional-cpp.
+
+// High byte is the major version, low byte is the minor.
+
+// Allow both 0x1400 and 0xE00 to identify UCRT
+
+// ===-------- vadefs.h ---------------------------------------------------===
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===-----------------------------------------------------------------------===
+
+// Only include this if we are aiming for MSVC compatibility.
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// *
+// This file has no copyright assigned and is placed in the Public Domain.
+// This file is part of the mingw-w64 runtime package.
+// No warranty is given; refer to the file DISCLAIMER.PD within this package.
+
+// for backward compatibility
+
+type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
+
+type Ssize_t = int64 /* corecrt.h:45:35 */
+
+type Rsize_t = Size_t /* corecrt.h:52:16 */
+
+type Intptr_t = int64 /* corecrt.h:62:35 */
+
+type Uintptr_t = uint64 /* corecrt.h:75:44 */
+
+type Wint_t = uint16 /* corecrt.h:106:24 */
+type Wctype_t = uint16 /* corecrt.h:107:24 */
+
+type Errno_t = int32 /* corecrt.h:113:13 */
+
+type X__time32_t = int32 /* corecrt.h:118:14 */
+
+type X__time64_t = int64 /* corecrt.h:123:35 */
+
+type Time_t = X__time64_t /* corecrt.h:138:20 */
+
+type Threadlocaleinfostruct = struct {
+ F_locale_pctype uintptr
+ F_locale_mb_cur_max int32
+ F_locale_lc_codepage uint32
+} /* corecrt.h:430:1 */
+
+type Pthreadlocinfo = uintptr /* corecrt.h:432:39 */
+type Pthreadmbcinfo = uintptr /* corecrt.h:433:36 */
+
+type Localeinfo_struct = struct {
+ Flocinfo Pthreadlocinfo
+ Fmbcinfo Pthreadmbcinfo
+} /* corecrt.h:436:9 */
+
+type X_locale_tstruct = Localeinfo_struct /* corecrt.h:439:3 */
+type X_locale_t = uintptr /* corecrt.h:439:19 */
+
+type TagLC_ID = struct {
+ FwLanguage uint16
+ FwCountry uint16
+ FwCodePage uint16
+} /* corecrt.h:443:9 */
+
+type LC_ID = TagLC_ID /* corecrt.h:447:3 */
+type LPLC_ID = uintptr /* corecrt.h:447:9 */
+
+type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:482:3 */
+
+type Wctrans_t = Wchar_t /* wctype.h:176:19 */
+
+var _ int8 /* gen.c:2:13: */