From 9353f1a77b9ede99cbe1994703785a8b47d0df13 Mon Sep 17 00:00:00 2001 From: Jan Mercl <0xjnml@gmail.com> Date: Wed, 27 Oct 2021 13:32:38 +0200 Subject: [PATCH] linux/386: regenerate --- go.mod | 8 +- go.sum | 18 +- internal/mptest/main_linux_386.go | 391 +- internal/testfixture/testfixture_linux_386.go | 3876 ++++--- lib/sqlite_linux_386.go | 8252 ++++++++------- lib/sqlite_linux_amd64.go | 2 - libtest/sqlite_linux_386.go | 9042 +++++++++-------- libtest/sqlite_linux_amd64.go | 2 - speedtest1/main_linux_386.go | 420 +- 9 files changed, 12375 insertions(+), 9636 deletions(-) diff --git a/go.mod b/go.mod index 53c36ba..a60c48c 100644 --- a/go.mod +++ b/go.mod @@ -5,9 +5,9 @@ go 1.15 require ( github.com/mattn/go-sqlite3 v1.14.8 golang.org/x/sys v0.0.0-20211007075335-d3039528d8ac - modernc.org/ccgo/v3 v3.12.39 - modernc.org/libc v1.11.40 + modernc.org/ccgo/v3 v3.12.46 + modernc.org/libc v1.11.44 modernc.org/mathutil v1.4.1 - modernc.org/tcl v1.8.1 - modernc.org/z v1.2.7 + modernc.org/tcl v1.8.2 + modernc.org/z v1.2.8 ) diff --git a/go.sum b/go.sum index 93cb2d3..59e1313 100644 --- a/go.sum +++ b/go.sum @@ -74,8 +74,9 @@ modernc.org/ccgo/v3 v3.12.25/go.mod h1:UaLyWI26TwyIT4+ZFNjkyTbsPsY3plAEB6E7L/vZV modernc.org/ccgo/v3 v3.12.29/go.mod h1:FXVjG7YLf9FetsS2OOYcwNhcdOLGt8S9bQ48+OP75cE= modernc.org/ccgo/v3 v3.12.36/go.mod h1:uP3/Fiezp/Ga8onfvMLpREq+KUjUmYMxXPO8tETHtA8= modernc.org/ccgo/v3 v3.12.38/go.mod h1:93O0G7baRST1vNj4wnZ49b1kLxt0xCW5Hsa2qRaZPqc= -modernc.org/ccgo/v3 v3.12.39 h1:a5VerUVWhtfhVTiLDKIcebmVzXY1U9PeUrKJ71unE9w= -modernc.org/ccgo/v3 v3.12.39/go.mod h1:0r9ejJghrz/33dA6cF6m6m6Glk1uWs0pwagU5T4wOf8= +modernc.org/ccgo/v3 v3.12.43/go.mod h1:k+DqGXd3o7W+inNujK15S5ZYuPoWYLpF5PYougCmthU= +modernc.org/ccgo/v3 v3.12.46 h1:a0ShJzPDI0Q3Ze5M0fxqM7/cOTetWneDZqN92FY4RpI= +modernc.org/ccgo/v3 v3.12.46/go.mod h1:UZe6EvMSqOxaJ4sznY7b23/k13R8XNlyWsO5bAmSgOE= modernc.org/httpfs v1.0.6 h1:AAgIpFZRXuYnkjftxTAZwMIiwEqAfk8aVB2/oA6nAeM= modernc.org/httpfs v1.0.6/go.mod h1:7dosgurJGp0sPaRanU53W4xZYKh14wfzX420oZADeHM= modernc.org/libc v1.9.8/go.mod h1:U1eq8YWr/Kc1RWCMFUWEdkTg8OTcfLw2kY8EDwl039w= @@ -96,8 +97,9 @@ modernc.org/libc v1.11.31/go.mod h1:FpBncUkEAtopRNJj8aRo29qUiyx5AvAlAxzlx9GNaVM= modernc.org/libc v1.11.34/go.mod h1:+Tzc4hnb1iaX/SKAutJmfzES6awxfU1BPvrrJO0pYLg= modernc.org/libc v1.11.37/go.mod h1:dCQebOwoO1046yTrfUE5nX1f3YpGZQKNcITUYWlrAWo= modernc.org/libc v1.11.39/go.mod h1:mV8lJMo2S5A31uD0k1cMu7vrJbSA3J3waQJxpV4iqx8= -modernc.org/libc v1.11.40 h1:kzLVEt6LvBF9KrFgHDVzd597oqgRcBfMN8x5OidNN90= -modernc.org/libc v1.11.40/go.mod h1:yzrLDU+sSjLE+D4bIhS7q1L5UwXDOw99PLSX0BlZvSQ= +modernc.org/libc v1.11.42/go.mod h1:yzrLDU+sSjLE+D4bIhS7q1L5UwXDOw99PLSX0BlZvSQ= +modernc.org/libc v1.11.44 h1:66pBX2D0Z98W89cKB8IUHX5bSQuZ8AxS+oh/zRXdxZw= +modernc.org/libc v1.11.44/go.mod h1:KFq33jsma7F5WXiYelU8quMJasCCTnHK0mkri4yPHgA= modernc.org/mathutil v1.1.1/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= modernc.org/mathutil v1.2.2/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= modernc.org/mathutil v1.4.0/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= @@ -110,9 +112,9 @@ modernc.org/opt v0.1.1 h1:/0RX92k9vwVeDXj+Xn23DKp2VJubL7k8qNffND6qn3A= modernc.org/opt v0.1.1/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0= modernc.org/strutil v1.1.1 h1:xv+J1BXY3Opl2ALrBwyfEikFAj8pmqcpnfmuwUwcozs= modernc.org/strutil v1.1.1/go.mod h1:DE+MQQ/hjKBZS2zNInV5hhcipt5rLPWkmpbGeW5mmdw= -modernc.org/tcl v1.8.1 h1:siVlE4O6t06k8CFftpJyb5T76O1uWzDus5hWScEF1F4= -modernc.org/tcl v1.8.1/go.mod h1:7SlzI6/UneYHe4xn3QCyvbHnj6A//hDZVkAWSGHnowg= +modernc.org/tcl v1.8.2 h1:2IIui445QtTt0Yfrgb6iBnoJc3BL34pxSJKxjKiQdIY= +modernc.org/tcl v1.8.2/go.mod h1:6qWd2lvIKrQHnwZth5pWtFg2WGfbR2DmBRyAFJxv8dk= modernc.org/token v1.0.0 h1:a0jaWiNMDhDUtqOj09wvjWWAqd3q7WpBulmL9H2egsk= modernc.org/token v1.0.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= -modernc.org/z v1.2.7 h1:N0BrQ6wWlEkF+jj1phyav9guASZcWb5j+TuwHcWLWzY= -modernc.org/z v1.2.7/go.mod h1:+L7Vxulgf/QRxha9syRObResxBwvPEDs53Cy43g47Ls= +modernc.org/z v1.2.8 h1:ZlY3J/5vaLG9Z7+OVOy7mfyVaVP7lmOaTOH2ZFFlTTM= +modernc.org/z v1.2.8/go.mod h1:4BiXj2tH0eKPfU4fZD/k/zaB1xa50EG0jjIFGlENH5M= diff --git a/internal/mptest/main_linux_386.go b/internal/mptest/main_linux_386.go index e944d2f..f714f7d 100644 --- a/internal/mptest/main_linux_386.go +++ b/internal/mptest/main_linux_386.go @@ -699,6 +699,8 @@ const ( X_ASSERT_H = 1 X_ATFILE_SOURCE = 1 X_BITS_BYTESWAP_H = 1 + X_BITS_ENDIANNESS_H = 1 + X_BITS_ENDIAN_H = 1 X_BITS_ERRNO_H = 1 X_BITS_FLOATN_COMMON_H = 0 X_BITS_FLOATN_H = 0 @@ -707,6 +709,7 @@ const ( X_BITS_PTHREADTYPES_COMMON_H = 1 X_BITS_STDINT_INTN_H = 1 X_BITS_STDIO_LIM_H = 1 + X_BITS_TIME64_H = 1 X_BITS_TYPESIZES_H = 1 X_BITS_TYPES_H = 1 X_BITS_TYPES_LOCALE_T_H = 1 @@ -725,6 +728,7 @@ const ( X_GCC_WCHAR_T = 0 X_GETOPT_CORE_H = 1 X_GETOPT_POSIX_H = 1 + X_ILP32 = 1 X_IOFBF = 0 X_IOLBF = 1 X_IONBF = 2 @@ -802,6 +806,7 @@ const ( X_POSIX_V7_ILP32_OFFBIG = 1 X_POSIX_VDISABLE = 0 X_POSIX_VERSION = 200809 + X_RWLOCK_INTERNAL_H = 0 X_SIZET_ = 0 X_SIZE_T = 0 X_SIZE_T_ = 0 @@ -820,6 +825,7 @@ const ( X_SYS_SELECT_H = 1 X_SYS_SIZE_T_H = 0 X_SYS_TYPES_H = 1 + X_THREAD_MUTEX_INTERNAL_H = 1 X_THREAD_SHARED_TYPES_H = 1 X_T_SIZE = 0 X_T_SIZE_ = 0 @@ -858,7 +864,7 @@ const ( // the `_SC_*' symbols for the NAME argument to `sysconf'; // and the `_CS_*' symbols for the NAME argument to `confstr'. // `sysconf', `pathconf', and `confstr' NAME values. Generic version. -// Copyright (C) 1993-2018 Free Software Foundation, Inc. +// Copyright (C) 1993-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -873,7 +879,7 @@ const ( // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Values for the NAME argument to `pathconf' and `fpathconf'. const ( /* confname.h:24:1: */ @@ -1222,16 +1228,11 @@ const ( /* confname.h:71:1: */ _SC_THREAD_ROBUST_PRIO_PROTECT = 248 ) -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // XPG requires a few symbols from being defined. // Definitions of flag bits for `waitpid' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -1246,7 +1247,7 @@ const ( /* confname.h:71:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Bits in the third argument to `waitpid'. @@ -1263,7 +1264,7 @@ const ( /* waitflags.h:52:1: */ P_PGID = 2 ) -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -1278,11 +1279,11 @@ const ( /* waitflags.h:52:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -1297,7 +1298,7 @@ const ( /* waitflags.h:52:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -1310,7 +1311,7 @@ const ( /* waitflags.h:52:1: */ // error message with the error text for ERRNUM and abort. // (This is a GNU extension.) -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -1325,11 +1326,11 @@ const ( /* waitflags.h:52:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard 7.4: Character handling -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -1344,10 +1345,10 @@ const ( /* waitflags.h:52:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -1362,7 +1363,7 @@ const ( /* waitflags.h:52:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -1374,7 +1375,8 @@ const ( /* waitflags.h:52:1: */ // endian). We define the bit value interpretations here dependent on the // machine's byte order. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Endian macros for string.h functions +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3502,7 +3504,7 @@ type _G_fpos_t = struct { } /* __fpos_t.h:10:9 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3517,7 +3519,7 @@ type _G_fpos_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -3581,7 +3583,7 @@ type fpos_t = _G_fpos64_t /* stdio.h:86:20 */ // If we are compiling with optimizing read this file. It contains // several optimizing inline functions and macros. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3596,11 +3598,11 @@ type fpos_t = _G_fpos64_t /* stdio.h:86:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 2.10 Symbolic Constants -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3615,7 +3617,7 @@ type fpos_t = _G_fpos64_t /* stdio.h:86:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // These may be used to determine what facilities are present at compile time. // Their values can be obtained at run time from `sysconf'. @@ -3741,7 +3743,7 @@ type fpos_t = _G_fpos64_t /* stdio.h:86:20 */ // // Define POSIX options for Linux. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3756,13 +3758,16 @@ type fpos_t = _G_fpos64_t /* stdio.h:86:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; see the file COPYING.LIB. If -// not, see . +// not, see . // Job control is supported. // Processes have a saved set-user-ID and a saved set-group-ID. -// Priority scheduling is supported. +// Priority scheduling is not supported with the correct semantics, +// but GNU/Linux applications expect that the corresponding interfaces +// are available, even though the semantics do not meet the POSIX +// requirements. See glibc bug 14829. // Synchronizing file data is supported. @@ -3865,7 +3870,7 @@ type fpos_t = _G_fpos64_t /* stdio.h:86:20 */ // Typed memory objects are not available. // Get the environment definitions from Unix98. -// Copyright (C) 1999-2018 Free Software Foundation, Inc. +// Copyright (C) 1999-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3880,7 +3885,7 @@ type fpos_t = _G_fpos64_t /* stdio.h:86:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Determine the wordsize from the preprocessor defines. @@ -3924,7 +3929,7 @@ type fpos_t = _G_fpos64_t /* stdio.h:86:20 */ // All functions that are not declared anywhere else. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3939,11 +3944,11 @@ type fpos_t = _G_fpos64_t /* stdio.h:86:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -3975,15 +3980,6 @@ type fpos_t = _G_fpos64_t /* stdio.h:86:20 */ // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -4018,11 +4014,6 @@ type fpos_t = _G_fpos64_t /* stdio.h:86:20 */ // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // The Single Unix specification says that some more types are @@ -4039,16 +4030,11 @@ type intptr_t = int32 /* unistd.h:267:20 */ type socklen_t = uint32 /* unistd.h:274:21 */ -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // XPG requires a few symbols from being defined. // Definitions of flag bits for `waitpid' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4063,7 +4049,7 @@ type socklen_t = uint32 /* unistd.h:274:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Bits in the third argument to `waitpid'. @@ -4076,7 +4062,7 @@ type socklen_t = uint32 /* unistd.h:274:21 */ type idtype_t = uint32 /* waitflags.h:57:3 */ // Definitions of status bits for `wait' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4091,7 +4077,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Everything extant so far uses these same bits. @@ -4118,7 +4104,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // _FloatN API tests for enablement. // Macros to control TS 18661-3 glibc features on x86. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4133,9 +4119,9 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4150,7 +4136,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Defined to 1 if the current compiler invocation provides a // floating-point type with the IEEE 754 binary128 format, and this @@ -4194,7 +4180,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // Macros to control TS 18661-3 glibc features where the same // definitions are appropriate for all platforms. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4209,9 +4195,9 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4226,10 +4212,10 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Properties of long double type. ldbl-96 version. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4244,7 +4230,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // long double is distinct from double, so there is nothing to // define here. @@ -4313,7 +4299,7 @@ type lldiv_t = struct { rem int64 } /* stdlib.h:80:5 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4328,11 +4314,11 @@ type lldiv_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 2.6 Primitive System Data Types -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4347,10 +4333,10 @@ type lldiv_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4365,7 +4351,7 @@ type lldiv_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -4394,7 +4380,7 @@ type caddr_t = uintptr /* types.h:115:19 */ type key_t = int32 /* types.h:121:17 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4409,7 +4395,7 @@ type key_t = int32 /* types.h:121:17 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -4417,7 +4403,7 @@ type key_t = int32 /* types.h:121:17 */ type clock_t = int32 /* clock_t.h:7:19 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4432,7 +4418,7 @@ type clock_t = int32 /* clock_t.h:7:19 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -4440,7 +4426,7 @@ type clock_t = int32 /* clock_t.h:7:19 */ type clockid_t = int32 /* clockid_t.h:7:21 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4455,7 +4441,7 @@ type clockid_t = int32 /* clockid_t.h:7:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -4463,7 +4449,7 @@ type clockid_t = int32 /* clockid_t.h:7:21 */ type time_t = int32 /* time_t.h:7:18 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4478,14 +4464,14 @@ type time_t = int32 /* time_t.h:7:18 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // Timer ID returned by `timer_create'. type timer_t = uintptr /* timer_t.h:7:19 */ -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -4517,15 +4503,6 @@ type timer_t = uintptr /* timer_t.h:7:19 */ // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -4560,11 +4537,6 @@ type timer_t = uintptr /* timer_t.h:7:19 */ // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Old compatibility names for C types. @@ -4575,7 +4547,7 @@ type uint = uint32 /* types.h:150:22 */ // These size-specific names are used by some of the inet code. // Define intN_t types. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4590,10 +4562,10 @@ type uint = uint32 /* types.h:150:22 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4608,7 +4580,7 @@ type uint = uint32 /* types.h:150:22 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -4617,14 +4589,13 @@ type int16_t = int16 /* stdint-intn.h:25:19 */ type int32_t = int32 /* stdint-intn.h:26:19 */ type int64_t = int64 /* stdint-intn.h:27:19 */ -// For GCC 2.7 and later, we can use specific type-size attributes. +// These were defined by ISO C without the first `_'. +type u_int8_t = uint8 /* types.h:158:19 */ +type u_int16_t = uint16 /* types.h:159:20 */ +type u_int32_t = uint32 /* types.h:160:20 */ +type u_int64_t = uint64 /* types.h:161:20 */ -type u_int8_t = uint32 /* types.h:177:1 */ -type u_int16_t = uint32 /* types.h:178:1 */ -type u_int32_t = uint32 /* types.h:179:1 */ -type u_int64_t = uint32 /* types.h:180:1 */ - -type register_t = int32 /* types.h:182:13 */ +type register_t = int32 /* types.h:164:13 */ // A set of signals to be blocked, unblocked, or waited for. type sigset_t = struct{ __val [32]uint32 } /* sigset_t.h:7:20 */ @@ -4632,7 +4603,7 @@ type sigset_t = struct{ __val [32]uint32 } /* sigset_t.h:7:20 */ // Get definition of timer specification structures. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4647,7 +4618,7 @@ type sigset_t = struct{ __val [32]uint32 } /* sigset_t.h:7:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -4661,7 +4632,27 @@ type timeval = struct { // NB: Include guard matches what uses. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// Never include this file directly; use instead. + +// Endian macros for string.h functions +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4678,14 +4669,12 @@ type timeval = struct { // License along with the GNU C Library; if not, see // . -// Never include this file directly; use instead. - // POSIX.1b structure for a time value. This is like a `struct timeval' but // has nanoseconds instead of microseconds. type timespec = struct { tv_sec int32 tv_nsec int32 -} /* struct_timespec.h:9:1 */ +} /* struct_timespec.h:10:1 */ type suseconds_t = int32 /* select.h:43:23 */ @@ -4702,16 +4691,16 @@ type fd_mask = int32 /* select.h:77:19 */ // Define some inlines helping to catch common problems. -type blksize_t = int32 /* types.h:202:21 */ +type blksize_t = int32 /* types.h:185:21 */ // Types from the Large File Support interface. -type blkcnt_t = int64 /* types.h:222:22 */ // Type to count number of disk blocks. -type fsblkcnt_t = uint64 /* types.h:226:24 */ // Type to count file system blocks. -type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inodes. +type blkcnt_t = int64 /* types.h:205:22 */ // Type to count number of disk blocks. +type fsblkcnt_t = uint64 /* types.h:209:24 */ // Type to count file system blocks. +type fsfilcnt_t = uint64 /* types.h:213:24 */ // Type to count file system inodes. // Now add the thread types. // Declaration of common pthread types for all architectures. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4726,11 +4715,11 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // For internal mutex and condition variable definitions. // Common threading primitives definitions for both POSIX and C11. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4745,7 +4734,7 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Arch-specific definitions. Each architecture must define the following // macros to define the expected sizes of pthread data types: @@ -4760,36 +4749,6 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // __SIZEOF_PTHREAD_BARRIER_T - size of pthread_barrier_t. // __SIZEOF_PTHREAD_BARRIERATTR_T - size of pthread_barrierattr_t. // -// Also, the following macros must be define for internal pthread_mutex_t -// struct definitions (struct __pthread_mutex_s): -// -// __PTHREAD_COMPAT_PADDING_MID - any additional members after 'kind' -// and before '__spin' (for 64 bits) or -// '__nusers' (for 32 bits). -// __PTHREAD_COMPAT_PADDING_END - any additional members at the end of -// the internal structure. -// __PTHREAD_MUTEX_LOCK_ELISION - 1 if the architecture supports lock -// elision or 0 otherwise. -// __PTHREAD_MUTEX_NUSERS_AFTER_KIND - control where to put __nusers. The -// preferred value for new architectures -// is 0. -// __PTHREAD_MUTEX_USE_UNION - control whether internal __spins and -// __list will be place inside a union for -// linuxthreads compatibility. -// The preferred value for new architectures -// is 0. -// -// For a new port the preferred values for the required defines are: -// -// #define __PTHREAD_COMPAT_PADDING_MID -// #define __PTHREAD_COMPAT_PADDING_END -// #define __PTHREAD_MUTEX_LOCK_ELISION 0 -// #define __PTHREAD_MUTEX_NUSERS_AFTER_KIND 0 -// #define __PTHREAD_MUTEX_USE_UNION 0 -// -// __PTHREAD_MUTEX_LOCK_ELISION can be set to 1 if the hardware plans to -// eventually support lock elision using transactional memory. -// // The additional macro defines any constraint for the lock alignment // inside the thread structures: // @@ -4798,11 +4757,53 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // Same idea but for the once locking primitive: // // __ONCE_ALIGNMENT - for pthread_once_t/once_flag definition. + +// Copyright (C) 2002-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. // -// And finally the internal pthread_rwlock_t (struct __pthread_rwlock_arch_t) -// must be defined. +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. // -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// Determine the wordsize from the preprocessor defines. + +// Extra attributes for the cleanup functions. + +// Common definition of pthread_mutex_t. + +type __pthread_internal_list = struct { + __prev uintptr + __next uintptr +} /* thread-shared-types.h:49:9 */ + +type __pthread_internal_slist = struct{ __next uintptr } /* thread-shared-types.h:55:9 */ + +// Arch-specific mutex definitions. A generic implementation is provided +// by sysdeps/nptl/bits/struct_mutex.h. If required, an architecture +// can override it by defining: +// +// 1. struct __pthread_mutex_s (used on both pthread_mutex_t and mtx_t +// definition). It should contains at least the internal members +// defined in the generic version. +// +// 2. __LOCK_ALIGNMENT for any extra attribute for internal lock used with +// atomic operations. +// +// 3. The macro __PTHREAD_MUTEX_INITIALIZER used for static initialization. +// It should initialize the mutex internal flag. + +// x86 internal mutex struct definitions. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4819,32 +4820,6 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // License along with the GNU C Library; if not, see // . -// Determine the wordsize from the preprocessor defines. - -// Definitions for internal mutex struct. - -type __pthread_rwlock_arch_t = struct { - __readers uint32 - __writers uint32 - __wrphase_futex uint32 - __writers_futex uint32 - __pad3 uint32 - __pad4 uint32 - __flags uint8 - __shared uint8 - __rwelision int8 - __pad2 uint8 - __cur_writer int32 -} /* pthreadtypes-arch.h:65:1 */ - -// Extra attributes for the cleanup functions. - -// Common definition of pthread_mutex_t. - -type __pthread_internal_slist = struct{ __next uintptr } /* thread-shared-types.h:88:9 */ - -// Lock elision support. - type __pthread_mutex_s = struct { __lock int32 __count uint32 @@ -4858,7 +4833,51 @@ type __pthread_mutex_s = struct { __eelision int16 } } -} /* thread-shared-types.h:118:1 */ +} /* struct_mutex.h:22:1 */ + +// Arch-sepecific read-write lock definitions. A generic implementation is +// provided by struct_rwlock.h. If required, an architecture can override it +// by defining: +// +// 1. struct __pthread_rwlock_arch_t (used on pthread_rwlock_t definition). +// It should contain at least the internal members defined in the +// generic version. +// +// 2. The macro __PTHREAD_RWLOCK_INITIALIZER used for static initialization. +// It should initialize the rwlock internal type. + +// x86 internal rwlock struct definitions. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. +// +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +type __pthread_rwlock_arch_t = struct { + __readers uint32 + __writers uint32 + __wrphase_futex uint32 + __writers_futex uint32 + __pad3 uint32 + __pad4 uint32 + __flags uint8 + __shared uint8 + __rwelision int8 + __pad2 uint8 + __cur_writer int32 +} /* struct_rwlock.h:23:1 */ // Common definition of pthread_cond_t. @@ -4870,7 +4889,7 @@ type __pthread_cond_s = struct { __g1_orig_size uint32 __wrefs uint32 __g_signals [2]uint32 -} /* thread-shared-types.h:171:1 */ +} /* thread-shared-types.h:92:1 */ // Thread identifiers. The structure of the attribute type is not // exposed on purpose. @@ -4958,7 +4977,7 @@ type drand48_data = struct { // POSIX.1-2008 extended locale interface (see locale.h). // Definition of locale_t. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4973,10 +4992,10 @@ type drand48_data = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Definition of struct __locale_struct and __locale_t. -// Copyright (C) 1997-2018 Free Software Foundation, Inc. +// Copyright (C) 1997-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // Contributed by Ulrich Drepper , 1997. // @@ -4992,7 +5011,7 @@ type drand48_data = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX.1-2008: the locale_t type, representing a locale context // (implementation-namespace version). This type should be treated diff --git a/internal/testfixture/testfixture_linux_386.go b/internal/testfixture/testfixture_linux_386.go index 9b94990..8cdd78d 100644 --- a/internal/testfixture/testfixture_linux_386.go +++ b/internal/testfixture/testfixture_linux_386.go @@ -556,6 +556,7 @@ const ( X_ASSERT_H = 1 X_ATFILE_SOURCE = 1 X_BITS_STDIO_LIM_H = 1 + X_BITS_TIME64_H = 1 X_BITS_TYPESIZES_H = 1 X_BITS_TYPES_H = 1 X_BITS_TYPES_LOCALE_T_H = 1 @@ -568,6 +569,7 @@ const ( X_FTS5_H = 0 X_GCC_SIZE_T = 0 X_HAVE_SQLITE_CONFIG_H = 1 + X_ILP32 = 1 X_IOFBF = 0 X_IOLBF = 1 X_IONBF = 2 @@ -721,7 +723,7 @@ const ( TCL_PARSE_QUOTE_EXTRA = 1 TCL_PARSE_SUCCESS = 0 TCL_PARSE_SYNTAX = 8 - TCL_PATCH_LEVEL = "8.6.9" + TCL_PATCH_LEVEL = "8.6.11" TCL_READABLE = 2 TCL_REG_ADVANCED = 000003 TCL_REG_ADVF = 000002 @@ -738,7 +740,7 @@ const ( TCL_REG_NOTEOL = 0002 TCL_REG_QUOTE = 000004 TCL_RELEASE_LEVEL = 2 - TCL_RELEASE_SERIAL = 9 + TCL_RELEASE_SERIAL = 11 TCL_RESULT_SIZE = 200 TCL_RETURN = 2 TCL_SERVICE_ALL = 1 @@ -836,6 +838,8 @@ const ( WUNTRACED = 2 X_ALLOCA_H = 1 X_BITS_BYTESWAP_H = 1 + X_BITS_ENDIANNESS_H = 1 + X_BITS_ENDIAN_H = 1 X_BITS_FLOATN_COMMON_H = 0 X_BITS_FLOATN_H = 0 X_BITS_PTHREADTYPES_ARCH_H = 1 @@ -845,10 +849,12 @@ const ( X_CTYPE_H = 1 X_ENDIAN_H = 1 X_GCC_WCHAR_T = 0 + X_RWLOCK_INTERNAL_H = 0 X_STDLIB_H = 1 X_STRUCT_TIMESPEC = 1 X_SYS_SELECT_H = 1 X_SYS_TYPES_H = 1 + X_THREAD_MUTEX_INTERNAL_H = 1 X_THREAD_SHARED_TYPES_H = 1 X_T_WCHAR = 0 X_T_WCHAR_ = 0 @@ -1747,7 +1753,7 @@ const ( EP_xIsSelect = 0x000800 EXCLUSIVE_LOCK = 4 EXPRDUP_REDUCE = 0x0001 - GCC_VERSION = 8003000 + GCC_VERSION = 10002001 HAVE_DLFCN_H = 1 HAVE_FCHOWN = 1 HAVE_FDATASYNC = 1 @@ -2757,6 +2763,7 @@ const ( X_GNU_SOURCE = 0 X_INTTYPES_H = 1 X_ISOC11_SOURCE = 1 + X_ISOC2X_SOURCE = 1 X_ISOC95_SOURCE = 1 X_ISOC99_SOURCE = 1 X_LARGEFILE64_SOURCE = 1 @@ -2832,6 +2839,7 @@ const ( CLONE_NEWUTS = 0x04000000 CLONE_PARENT = 0x00008000 CLONE_PARENT_SETTID = 0x00100000 + CLONE_PIDFD = 0x00001000 CLONE_PTRACE = 0x00002000 CLONE_SETTLS = 0x00080000 CLONE_SIGHAND = 0x00000800 @@ -2897,6 +2905,7 @@ const ( WRITECRASH_NAME = "writecrash" AT_EMPTY_PATH = 0x1000 AT_NO_AUTOMOUNT = 0x800 + AT_RECURSIVE = 0x8000 AT_STATX_DONT_SYNC = 0x4000 AT_STATX_FORCE_SYNC = 0x2000 AT_STATX_SYNC_AS_STAT = 0x0000 @@ -2927,6 +2936,7 @@ const ( F_OFD_GETLK = 36 F_OFD_SETLK = 37 F_OFD_SETLKW = 38 + F_SEAL_FUTURE_WRITE = 0x0010 F_SEAL_GROW = 0x0004 F_SEAL_SEAL = 0x0001 F_SEAL_SHRINK = 0x0002 @@ -2957,31 +2967,42 @@ const ( SPLICE_F_MORE = 4 SPLICE_F_MOVE = 1 SPLICE_F_NONBLOCK = 2 - STATX_ALL = 0x0fff - STATX_ATIME = 0x0020 - STATX_ATTR_APPEND = 0x0020 - STATX_ATTR_AUTOMOUNT = 0x1000 - STATX_ATTR_COMPRESSED = 0x0004 - STATX_ATTR_ENCRYPTED = 0x0800 - STATX_ATTR_IMMUTABLE = 0x0010 - STATX_ATTR_NODUMP = 0x0040 - STATX_BASIC_STATS = 0x07ff - STATX_BLOCKS = 0x0400 - STATX_BTIME = 0x0800 - STATX_CTIME = 0x0080 - STATX_GID = 0x0010 - STATX_INO = 0x0100 - STATX_MODE = 0x0002 - STATX_MTIME = 0x0040 - STATX_NLINK = 0x0004 - STATX_SIZE = 0x0200 - STATX_TYPE = 0x0001 - STATX_UID = 0x0008 + STATX_ALL = 0x00000fff + STATX_ATIME = 0x00000020 + STATX_ATTR_APPEND = 0x00000020 + STATX_ATTR_AUTOMOUNT = 0x00001000 + STATX_ATTR_COMPRESSED = 0x00000004 + STATX_ATTR_DAX = 0x00200000 + STATX_ATTR_ENCRYPTED = 0x00000800 + STATX_ATTR_IMMUTABLE = 0x00000010 + STATX_ATTR_MOUNT_ROOT = 0x00002000 + STATX_ATTR_NODUMP = 0x00000040 + STATX_ATTR_VERITY = 0x00100000 + STATX_BASIC_STATS = 0x000007ff + STATX_BLOCKS = 0x00000400 + STATX_BTIME = 0x00000800 + STATX_CTIME = 0x00000080 + STATX_GID = 0x00000010 + STATX_INO = 0x00000100 + STATX_MNT_ID = 0x00001000 + STATX_MODE = 0x00000002 + STATX_MTIME = 0x00000040 + STATX_NLINK = 0x00000004 + STATX_SIZE = 0x00000200 + STATX_TYPE = 0x00000001 + STATX_UID = 0x00000008 STATX__RESERVED = 0x80000000 SYNC_FILE_RANGE_WAIT_AFTER = 4 SYNC_FILE_RANGE_WAIT_BEFORE = 1 SYNC_FILE_RANGE_WRITE = 2 + SYNC_FILE_RANGE_WRITE_AND_WAIT = 7 + X_ASM_GENERIC_INT_LL64_H = 0 + X_ASM_GENERIC_TYPES_H = 0 + X_ASM_X86_POSIX_TYPES_32_H = 0 X_FALLOC_H_ = 0 + X_LINUX_POSIX_TYPES_H = 0 + X_LINUX_STAT_H = 0 + X_LINUX_TYPES_H = 0 X_POSIX_FD_SETSIZE = 20 X_POSIX_HIWAT = 512 X_POSIX_QLIMIT = 1 @@ -3044,6 +3065,7 @@ const ( MSG_Prepare = 2 MSG_Reset = 4 MSG_Step = 3 + MADV_COLD = 20 MADV_DODUMP = 17 MADV_DOFORK = 11 MADV_DONTDUMP = 16 @@ -3056,6 +3078,7 @@ const ( MADV_MERGEABLE = 12 MADV_NOHUGEPAGE = 15 MADV_NORMAL = 0 + MADV_PAGEOUT = 21 MADV_RANDOM = 1 MADV_REMOVE = 9 MADV_SEQUENTIAL = 2 @@ -3145,7 +3168,7 @@ const ( // the `_SC_*' symbols for the NAME argument to `sysconf'; // and the `_CS_*' symbols for the NAME argument to `confstr'. // `sysconf', `pathconf', and `confstr' NAME values. Generic version. -// Copyright (C) 1993-2018 Free Software Foundation, Inc. +// Copyright (C) 1993-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3160,7 +3183,7 @@ const ( // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Values for the NAME argument to `pathconf' and `fpathconf'. const ( /* confname.h:24:1: */ @@ -3573,7 +3596,7 @@ const ( /* resource.h:187:1: */ // Convenience macros for operations on timevals. // NOTE: `timercmp' does not work for >= or <=. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3588,9 +3611,9 @@ const ( /* resource.h:187:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3605,11 +3628,11 @@ const ( /* resource.h:187:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Get the system-dependent definitions of structures and bit values. // Bit values & structures for resource limits. Linux version. -// Copyright (C) 1994-2018 Free Software Foundation, Inc. +// Copyright (C) 1994-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3624,10 +3647,10 @@ const ( /* resource.h:187:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3642,7 +3665,7 @@ const ( /* resource.h:187:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -3717,7 +3740,7 @@ const ( /* resource.h:31:1: */ // POSIX names to access some of the members. // sigevent constants. Linux version. -// Copyright (C) 1997-2018 Free Software Foundation, Inc. +// Copyright (C) 1997-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3732,7 +3755,7 @@ const ( /* resource.h:31:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // `sigev_notify' values. const ( /* sigevent-consts.h:27:1: */ @@ -3744,15 +3767,18 @@ const ( /* sigevent-consts.h:27:1: */ ) // `si_code' values for SIGSEGV signal. -const ( /* siginfo-consts.h:110:1: */ - SEGV_MAPERR = 1 // Address not mapped to object. - SEGV_ACCERR = 2 // Invalid permissions for mapped object. - SEGV_BNDERR = 3 // Bounds checking failure. - SEGV_PKUERR = 4 +const ( /* siginfo-consts.h:119:1: */ + SEGV_MAPERR = 1 // Address not mapped to object. + SEGV_ACCERR = 2 // Invalid permissions for mapped object. + SEGV_BNDERR = 3 // Bounds checking failure. + SEGV_PKUERR = 4 // Protection key checking failure. + SEGV_ACCADI = 5 // ADI not enabled for mapped object. + SEGV_ADIDERR = 6 // Disrupting MCD error. + SEGV_ADIPERR = 7 ) // `si_code' values for SIGBUS signal. -const ( /* siginfo-consts.h:123:1: */ +const ( /* siginfo-consts.h:138:1: */ BUS_ADRALN = 1 // Invalid address alignment. BUS_ADRERR = 2 // Non-existant physical address. BUS_OBJERR = 3 // Object specific hardware error. @@ -3761,7 +3787,7 @@ const ( /* siginfo-consts.h:123:1: */ ) // `si_code' values for SIGCHLD signal. -const ( /* siginfo-consts.h:151:1: */ +const ( /* siginfo-consts.h:172:1: */ CLD_EXITED = 1 // Child has exited. CLD_KILLED = 2 // Child was killed. CLD_DUMPED = 3 // Child terminated abnormally. @@ -3771,7 +3797,7 @@ const ( /* siginfo-consts.h:151:1: */ ) // `si_code' values for SIGPOLL signal. -const ( /* siginfo-consts.h:168:1: */ +const ( /* siginfo-consts.h:189:1: */ POLL_IN = 1 // Data input available. POLL_OUT = 2 // Output buffers available. POLL_MSG = 3 // Input message available. @@ -3783,7 +3809,7 @@ const ( /* siginfo-consts.h:168:1: */ // X/Open requires some more fields with fixed names. // siginfo constants. Linux version. -// Copyright (C) 1997-2018 Free Software Foundation, Inc. +// Copyright (C) 1997-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3798,7 +3824,7 @@ const ( /* siginfo-consts.h:168:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Most of these constants are uniform across all architectures, but there // is one exception. @@ -3807,43 +3833,48 @@ const ( /* siginfo-consts.h:168:1: */ // Values for `si_code'. Positive values are reserved for kernel-generated // signals. const ( /* siginfo-consts.h:35:1: */ - SI_ASYNCNL = -60 // Sent by asynch name lookup completion. - SI_TKILL = -6 // Sent by tkill. - SI_SIGIO = -5 // Sent by queued SIGIO. - SI_ASYNCIO = -4 // Sent by AIO completion. - SI_MESGQ = -3 // Sent by real time mesq state change. - SI_TIMER = -2 // Sent by timer expiration. - SI_QUEUE = -1 // Sent by sigqueue. - SI_USER = 0 // Sent by kill, sigsend. + SI_ASYNCNL = -60 // Sent by asynch name lookup completion. + SI_DETHREAD = -7 // Sent by execve killing subsidiary + // threads. + SI_TKILL = -6 // Sent by tkill. + SI_SIGIO = -5 // Sent by queued SIGIO. + SI_ASYNCIO = -4 // Sent by AIO completion. + SI_MESGQ = -3 // Sent by real time mesq state change. + SI_TIMER = -2 // Sent by timer expiration. + SI_QUEUE = -1 // Sent by sigqueue. + SI_USER = 0 // Sent by kill, sigsend. SI_KERNEL = 128 ) // `si_code' values for SIGILL signal. -const ( /* siginfo-consts.h:68:1: */ - ILL_ILLOPC = 1 // Illegal opcode. - ILL_ILLOPN = 2 // Illegal operand. - ILL_ILLADR = 3 // Illegal addressing mode. - ILL_ILLTRP = 4 // Illegal trap. - ILL_PRVOPC = 5 // Privileged opcode. - ILL_PRVREG = 6 // Privileged register. - ILL_COPROC = 7 // Coprocessor error. - ILL_BADSTK = 8 +const ( /* siginfo-consts.h:71:1: */ + ILL_ILLOPC = 1 // Illegal opcode. + ILL_ILLOPN = 2 // Illegal operand. + ILL_ILLADR = 3 // Illegal addressing mode. + ILL_ILLTRP = 4 // Illegal trap. + ILL_PRVOPC = 5 // Privileged opcode. + ILL_PRVREG = 6 // Privileged register. + ILL_COPROC = 7 // Coprocessor error. + ILL_BADSTK = 8 // Internal stack error. + ILL_BADIADDR = 9 ) // `si_code' values for SIGFPE signal. -const ( /* siginfo-consts.h:89:1: */ - FPE_INTDIV = 1 // Integer divide by zero. - FPE_INTOVF = 2 // Integer overflow. - FPE_FLTDIV = 3 // Floating point divide by zero. - FPE_FLTOVF = 4 // Floating point overflow. - FPE_FLTUND = 5 // Floating point underflow. - FPE_FLTRES = 6 // Floating point inexact result. - FPE_FLTINV = 7 // Floating point invalid operation. - FPE_FLTSUB = 8 +const ( /* siginfo-consts.h:94:1: */ + FPE_INTDIV = 1 // Integer divide by zero. + FPE_INTOVF = 2 // Integer overflow. + FPE_FLTDIV = 3 // Floating point divide by zero. + FPE_FLTOVF = 4 // Floating point overflow. + FPE_FLTUND = 5 // Floating point underflow. + FPE_FLTRES = 6 // Floating point inexact result. + FPE_FLTINV = 7 // Floating point invalid operation. + FPE_FLTSUB = 8 // Subscript out of range. + FPE_FLTUNK = 14 // Undiagnosed floating-point exception. + FPE_CONDTRAP = 15 ) // sigstack, sigaltstack definitions. -// Copyright (C) 1998-2018 Free Software Foundation, Inc. +// Copyright (C) 1998-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3858,14 +3889,14 @@ const ( /* siginfo-consts.h:89:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Minimum stack size for a signal handler. // System default stack size. // ss_flags values for stack_t. Linux version. -// Copyright (C) 1998-2018 Free Software Foundation, Inc. +// Copyright (C) 1998-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3880,7 +3911,7 @@ const ( /* siginfo-consts.h:89:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Possible values for `ss_flags'. const ( /* ss_flags.h:27:1: */ @@ -3888,16 +3919,11 @@ const ( /* ss_flags.h:27:1: */ SS_DISABLE = 2 ) -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // XPG requires a few symbols from being defined. // Definitions of flag bits for `waitpid' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3912,7 +3938,7 @@ const ( /* ss_flags.h:27:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Bits in the third argument to `waitpid'. @@ -3932,7 +3958,7 @@ const ( /* waitflags.h:52:1: */ // If we are compiling with optimizing read this file. It contains // several optimizing inline functions and macros. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3947,11 +3973,11 @@ const ( /* waitflags.h:52:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard 7.4: Character handling -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3966,10 +3992,10 @@ const ( /* waitflags.h:52:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3984,7 +4010,7 @@ const ( /* waitflags.h:52:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -3996,7 +4022,8 @@ const ( /* waitflags.h:52:1: */ // endian). We define the bit value interpretations here dependent on the // machine's byte order. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Endian macros for string.h functions +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4056,43 +4083,39 @@ const ( /* dirent.h:97:1: */ ) // Read-write lock types. -const ( /* pthread.h:115:1: */ +const ( /* pthread.h:100:1: */ PTHREAD_RWLOCK_PREFER_READER_NP = 0 PTHREAD_RWLOCK_PREFER_WRITER_NP = 1 PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP = 2 PTHREAD_RWLOCK_DEFAULT_NP = 0 ) -// Define __PTHREAD_RWLOCK_INT_FLAGS_SHARED to 1 if pthread_rwlock_t -// has the shared field. All 64-bit architectures have the shared field -// in pthread_rwlock_t. - // Read-write lock initializers. // Scheduler inheritance. -const ( /* pthread.h:156:1: */ +const ( /* pthread.h:120:1: */ PTHREAD_INHERIT_SCHED = 0 PTHREAD_EXPLICIT_SCHED = 1 ) // Scope handling. -const ( /* pthread.h:166:1: */ +const ( /* pthread.h:130:1: */ PTHREAD_SCOPE_SYSTEM = 0 PTHREAD_SCOPE_PROCESS = 1 ) // Process shared or private flag. -const ( /* pthread.h:176:1: */ +const ( /* pthread.h:140:1: */ PTHREAD_PROCESS_PRIVATE = 0 PTHREAD_PROCESS_SHARED = 1 ) // Cancellation -const ( /* pthread.h:200:1: */ +const ( /* pthread.h:164:1: */ PTHREAD_CANCEL_ENABLE = 0 PTHREAD_CANCEL_DISABLE = 1 ) -const ( /* pthread.h:207:1: */ +const ( /* pthread.h:171:1: */ PTHREAD_CANCEL_DEFERRED = 0 PTHREAD_CANCEL_ASYNCHRONOUS = 1 ) @@ -4136,7 +4159,7 @@ const ( /* pthread.h:77:1: */ ) // Values for the first argument to `getitimer' and `setitimer'. -const ( /* time.h:88:1: */ +const ( /* time.h:89:1: */ // Timers run in real time. ITIMER_REAL = 0 // Timers run only when the process is executing. @@ -4266,7 +4289,7 @@ type sqlite32 = struct { FmTrace u8 FnoSharedCache u8 FnSqlExec u8 - _ [3]byte + F__ccgo_pad1 [3]byte FnextPagesize int32 Fmagic u32 FnChange int32 @@ -4277,9 +4300,9 @@ type sqlite32 = struct { FnewTnum Pgno FiDb u8 Fbusy u8 - _ [2]byte + F__ccgo_pad1 [2]byte ForphanTrigger uint8 /* unsigned orphanTrigger: 1, unsigned imposterTable: 1, unsigned reopenMemdb: 1 */ - _ [3]byte + F__ccgo_pad2 [3]byte FazInit uintptr } FnVdbeActive int32 @@ -5879,16 +5902,16 @@ type sqlite3_value1 = struct { // [sqlite3_context_db_handle()], [sqlite3_get_auxdata()], // and/or [sqlite3_set_auxdata()]. type sqlite3_context1 = struct { - FpOut uintptr - FpFunc uintptr - FpMem uintptr - FpVdbe uintptr - FiOp int32 - FisError int32 - FskipFlag u8 - Fargc u8 - _ [2]byte - Fargv [1]uintptr + FpOut uintptr + FpFunc uintptr + FpMem uintptr + FpVdbe uintptr + FiOp int32 + FisError int32 + FskipFlag u8 + Fargc u8 + F__ccgo_pad1 [2]byte + Fargv [1]uintptr } /* sqlite3.h:249:9 */ // CAPI3REF: Constants Defining Special Destructor Behavior @@ -6081,7 +6104,7 @@ type sqlite3_index_constraint = struct { FiColumn int32 Fop uint8 Fusable uint8 - _ [2]byte + F__ccgo_pad1 [2]byte FiTermOffset int32 } /* sqlite3.h:6785:9 */ @@ -6186,9 +6209,9 @@ type sqlite3_index_constraint = struct { // sqlite3_libversion_number() returns a value greater than or equal to // 3009000. type sqlite3_index_orderby = struct { - FiColumn int32 - Fdesc uint8 - _ [3]byte + FiColumn int32 + Fdesc uint8 + F__ccgo_pad1 [3]byte } /* sqlite3.h:6785:9 */ // CAPI3REF: Virtual Table Indexing Information @@ -6292,9 +6315,9 @@ type sqlite3_index_orderby = struct { // sqlite3_libversion_number() returns a value greater than or equal to // 3009000. type sqlite3_index_constraint_usage = struct { - FargvIndex int32 - Fomit uint8 - _ [3]byte + FargvIndex int32 + Fomit uint8 + F__ccgo_pad1 [3]byte } /* sqlite3.h:6785:9 */ // CAPI3REF: Mutex Methods Object @@ -6459,7 +6482,7 @@ type sqlite3_str1 = struct { FnChar u32 FaccError u8 FprintfFlags u8 - _ [2]byte + F__ccgo_pad1 [2]byte } /* sqlite3.h:7882:9 */ // CAPI3REF: Custom Page Cache Object @@ -7148,7 +7171,7 @@ type sqlite3expert = sqlite3expert1 /* sqlite3expert.h:17:30 */ // POSIX.1-2008 extended locale interface (see locale.h). // Definition of locale_t. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7163,10 +7186,10 @@ type sqlite3expert = sqlite3expert1 /* sqlite3expert.h:17:30 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Definition of struct __locale_struct and __locale_t. -// Copyright (C) 1997-2018 Free Software Foundation, Inc. +// Copyright (C) 1997-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // Contributed by Ulrich Drepper , 1997. // @@ -7182,7 +7205,7 @@ type sqlite3expert = sqlite3expert1 /* sqlite3expert.h:17:30 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX.1-2008: the locale_t type, representing a locale context // (implementation-namespace version). This type should be treated @@ -7211,7 +7234,7 @@ type _G_fpos_t = struct { } /* __fpos_t.h:10:9 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7226,7 +7249,7 @@ type _G_fpos_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -9251,7 +9274,7 @@ func sqlite3_expert_destroy(tls *libc.TLS, p uintptr) { /* sqlite3expert.c:1948: // // New code should just directly be written to use stdarg.h conventions. -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -9359,21 +9382,21 @@ type Tcl_WideUInt = uint64 /* tcl.h:416:36 */ // or some other strange platform. type stat = struct { - Fst_dev uint64 - F__pad1 uint16 - _ [2]byte - F__st_ino uint32 - Fst_mode uint32 - Fst_nlink uint32 - Fst_uid uint32 - Fst_gid uint32 - Fst_rdev uint64 - F__pad2 uint16 - _ [2]byte - Fst_size int64 - Fst_blksize int32 - Fst_blocks int64 - Fst_atim struct { + Fst_dev uint64 + F__pad1 uint16 + F__ccgo_pad1 [2]byte + F__st_ino uint32 + Fst_mode uint32 + Fst_nlink uint32 + Fst_uid uint32 + Fst_gid uint32 + Fst_rdev uint64 + F__pad2 uint16 + F__ccgo_pad2 [2]byte + Fst_size int64 + Fst_blksize int32 + Fst_blocks int64 + Fst_atim struct { Ftv_sec int32 Ftv_nsec int32 } @@ -9602,7 +9625,7 @@ type Tcl_SavedResult1 = struct { FappendAvl int32 FappendUsed int32 FresultSpace [201]int8 - _ [3]byte + F__ccgo_pad1 [3]byte } /* tcl.h:864:9 */ //---------------------------------------------------------------------------- @@ -10483,13 +10506,13 @@ type Tcl_ArgvInfo = struct { type TclPlatStubs1 = struct { Fmagic int32 Fhooks uintptr -} /* tclDecls.h:1821:11 */ +} /* tclDecls.h:1840:11 */ type TclStubHooks = struct { FtclPlatStubs uintptr FtclIntStubs uintptr FtclIntPlatStubs uintptr -} /* tclDecls.h:1824:3 */ +} /* tclDecls.h:1843:3 */ type TclStubs1 = struct { Fmagic int32 @@ -11125,9 +11148,28 @@ type TclStubs1 = struct { Ftcl_FindSymbol uintptr Ftcl_FSUnloadFile uintptr Ftcl_ZlibStreamSetCompressionDictionary uintptr -} /* tclDecls.h:1826:9 */ + Freserved631 uintptr + Freserved632 uintptr + Freserved633 uintptr + Freserved634 uintptr + Freserved635 uintptr + Freserved636 uintptr + Freserved637 uintptr + Freserved638 uintptr + Freserved639 uintptr + Freserved640 uintptr + Freserved641 uintptr + Freserved642 uintptr + Freserved643 uintptr + Freserved644 uintptr + Freserved645 uintptr + Freserved646 uintptr + Freserved647 uintptr + Freserved648 uintptr + FtclUnusedStubEntry uintptr +} /* tclDecls.h:1845:9 */ -type TclStubs = TclStubs1 /* tclDecls.h:2485:3 */ +type TclStubs = TclStubs1 /* tclDecls.h:2523:3 */ // !END!: Do not edit above this line. @@ -11408,7 +11450,7 @@ func TestExpert_Init(tls *libc.TLS, interp uintptr) int32 { /* test_expert.c:202 // SQLITE_ENABLE_FTS3 macro. But to avoid confusion we also all // the SQLITE_ENABLE_FTS4 macro to serve as an alisse for SQLITE_ENABLE_FTS3. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -11423,11 +11465,11 @@ func TestExpert_Init(tls *libc.TLS, interp uintptr) int32 { /* test_expert.c:202 // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -11442,7 +11484,7 @@ func TestExpert_Init(tls *libc.TLS, interp uintptr) int32 { /* test_expert.c:202 // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -11576,7 +11618,7 @@ func xTokenizeCb(tls *libc.TLS, pCtx uintptr, tflags int32, zToken uintptr, nTok rc = tcl.XTcl_EvalObjEx(tls, (*F5tFunction)(unsafe.Pointer(p)).Finterp, pEval, 0) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pEval - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -11611,7 +11653,7 @@ func xQueryPhraseCb(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr) int rc = tcl.XTcl_EvalObjEx(tls, (*F5tFunction)(unsafe.Pointer(p)).Finterp, pEval, 0) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pEval - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -11630,7 +11672,7 @@ func xSetAuxdataDestructor(tls *libc.TLS, p uintptr) { /* fts5_tcl.c:207:13: */ var pData uintptr = p for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*F5tAuxData)(unsafe.Pointer(pData)).FpObj - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -11688,7 +11730,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv case 0: { var nCol int32 - nCol = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 8 /* &.xColumnCount */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts) + nCol = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxColumnCount})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts) if rc == SQLITE_OK { tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewIntObj(tls, nCol)) } @@ -11699,7 +11743,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv { // var nRow sqlite3_int64 at bp+264, 8 - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 12 /* &.xRowCount */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, bp+264 /* &nRow */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxRowCount})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, bp+264 /* &nRow */) if rc == SQLITE_OK { tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewWideIntObj(tls, *(*sqlite3_int64)(unsafe.Pointer(bp + 264 /* nRow */)))) } @@ -11715,7 +11761,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv if tcl.XTcl_GetIntFromObj(tls, interp, *(*uintptr)(unsafe.Pointer(objv + 2*4)), bp+272 /* &iCol */) != 0 { return TCL_ERROR } - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 16 /* &.xColumnTotalSize */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 272 /* iCol */)), bp+276 /* &nSize */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxColumnTotalSize})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 272 /* iCol */)), bp+276 /* &nSize */) if rc == SQLITE_OK { tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewWideIntObj(tls, *(*sqlite3_int64)(unsafe.Pointer(bp + 276 /* nSize */)))) } @@ -11731,7 +11779,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv (*F5tFunction)(unsafe.Pointer(bp + 288 /* &ctx */)).Finterp = interp (*F5tFunction)(unsafe.Pointer(bp + 288 /* &ctx */)).FpScript = *(*uintptr)(unsafe.Pointer(objv + 3*4)) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 20 /* &.xTokenize */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, zText, *(*int32)(unsafe.Pointer(bp + 284 /* nText */)), bp+288 /* &ctx */, *(*uintptr)(unsafe.Pointer(&struct { + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxTokenize})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, zText, *(*int32)(unsafe.Pointer(bp + 284 /* nText */)), bp+288 /* &ctx */, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 }{xTokenizeCb}))) if rc == SQLITE_OK { @@ -11743,7 +11793,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv case 4: { var nPhrase int32 - nPhrase = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 24 /* &.xPhraseCount */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts) + nPhrase = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxPhraseCount})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts) if rc == SQLITE_OK { tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewIntObj(tls, nPhrase)) } @@ -11758,7 +11810,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv if tcl.XTcl_GetIntFromObj(tls, interp, *(*uintptr)(unsafe.Pointer(objv + 2*4)), bp+296 /* &iPhrase */) != 0 { return TCL_ERROR } - sz = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 28 /* &.xPhraseSize */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 296 /* iPhrase */))) + sz = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxPhraseSize})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 296 /* iPhrase */))) if rc == SQLITE_OK { tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewIntObj(tls, sz)) } @@ -11769,7 +11823,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv { // var nInst int32 at bp+300, 4 - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 32 /* &.xInstCount */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, bp+300 /* &nInst */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxInstCount})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, bp+300 /* &nInst */) if rc == SQLITE_OK { tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewIntObj(tls, *(*int32)(unsafe.Pointer(bp + 300 /* nInst */)))) } @@ -11789,7 +11845,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv if tcl.XTcl_GetIntFromObj(tls, interp, *(*uintptr)(unsafe.Pointer(objv + 2*4)), bp+304 /* &iIdx */) != 0 { return TCL_ERROR } - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 36 /* &.xInst */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 304 /* iIdx */)), bp+308 /* &ip */, bp+312 /* &ic */, bp+316 /* &io */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxInst})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 304 /* iIdx */)), bp+308 /* &ip */, bp+312 /* &ic */, bp+316 /* &io */) if rc == SQLITE_OK { var pList uintptr = tcl.XTcl_NewObj(tls) tcl.XTcl_ListObjAppendElement(tls, interp, pList, tcl.XTcl_NewIntObj(tls, *(*int32)(unsafe.Pointer(bp + 308 /* ip */)))) @@ -11802,7 +11860,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv } case 8: { - var iRowid sqlite3_int64 = (*(*func(*libc.TLS, uintptr) sqlite3_int64)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 40 /* &.xRowid */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts) + var iRowid sqlite3_int64 = (*struct { + f func(*libc.TLS, uintptr) sqlite3_int64 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxRowid})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts) tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewWideIntObj(tls, iRowid)) break @@ -11816,7 +11876,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv if tcl.XTcl_GetIntFromObj(tls, interp, *(*uintptr)(unsafe.Pointer(objv + 2*4)), bp+320 /* &iCol */) != 0 { return TCL_ERROR } - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 44 /* &.xColumnText */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 320 /* iCol */)), bp+324 /* &z */, bp+328 /* &n */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxColumnText})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 320 /* iCol */)), bp+324 /* &z */, bp+328 /* &n */) if rc == SQLITE_OK { tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewStringObj(tls, *(*uintptr)(unsafe.Pointer(bp + 324 /* z */)), *(*int32)(unsafe.Pointer(bp + 328 /* n */)))) } @@ -11831,7 +11893,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv if tcl.XTcl_GetIntFromObj(tls, interp, *(*uintptr)(unsafe.Pointer(objv + 2*4)), bp+332 /* &iCol */) != 0 { return TCL_ERROR } - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 48 /* &.xColumnSize */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 332 /* iCol */)), bp+336 /* &n */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxColumnSize})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 332 /* iCol */)), bp+336 /* &n */) if rc == SQLITE_OK { tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewIntObj(tls, *(*int32)(unsafe.Pointer(bp + 336 /* n */)))) } @@ -11849,7 +11913,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv } (*F5tFunction)(unsafe.Pointer(bp + 344 /* &ctx */)).Finterp = interp (*F5tFunction)(unsafe.Pointer(bp + 344 /* &ctx */)).FpScript = *(*uintptr)(unsafe.Pointer(objv + 3*4)) - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 52 /* &.xQueryPhrase */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 340 /* iPhrase */)), bp+344 /* &ctx */, *(*uintptr)(unsafe.Pointer(&struct { + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxQueryPhrase})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 340 /* iPhrase */)), bp+344 /* &ctx */, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr) int32 }{xQueryPhraseCb}))) if rc == SQLITE_OK { @@ -11867,7 +11933,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv } (*F5tAuxData)(unsafe.Pointer(pData)).FpObj = *(*uintptr)(unsafe.Pointer(objv + 2*4)) (*Tcl_Obj)(unsafe.Pointer((*F5tAuxData)(unsafe.Pointer(pData)).FpObj)).FrefCount++ - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 56 /* &.xSetAuxdata */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, pData, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{xSetAuxdataDestructor}))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxSetAuxdata})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, pData, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{xSetAuxdataDestructor}))) break } @@ -11879,7 +11947,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv if tcl.XTcl_GetBooleanFromObj(tls, interp, *(*uintptr)(unsafe.Pointer(objv + 2*4)), bp+352 /* &bClear */) != 0 { return TCL_ERROR } - pData = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 60 /* &.xGetAuxdata */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 352 /* bClear */))) + pData = (*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxGetAuxdata})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 352 /* bClear */))) if pData == uintptr(0) { tcl.XTcl_ResetResult(tls, interp) } else { @@ -11903,7 +11973,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv if tcl.XTcl_GetIntFromObj(tls, interp, *(*uintptr)(unsafe.Pointer(objv + 2*4)), bp+356 /* &iVal */) != 0 { return TCL_ERROR } - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 56 /* &.xSetAuxdata */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, (uintptr(0) + uintptr(*(*int32)(unsafe.Pointer(bp + 356 /* iVal */)))), uintptr(0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxSetAuxdata})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, (uintptr(0) + uintptr(*(*int32)(unsafe.Pointer(bp + 356 /* iVal */)))), uintptr(0)) break } @@ -11915,7 +11987,9 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv if tcl.XTcl_GetBooleanFromObj(tls, interp, *(*uintptr)(unsafe.Pointer(objv + 2*4)), bp+360 /* &bClear */) != 0 { return TCL_ERROR } - iVal = ((int32((*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 60 /* &.xGetAuxdata */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 360 /* bClear */)))) - int32(uintptr(0))) / 1) + iVal = ((int32((*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxGetAuxdata})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 360 /* bClear */)))) - int32(uintptr(0))) / 1) tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewIntObj(tls, iVal)) break @@ -11940,12 +12014,16 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv zColvar = tcl.XTcl_GetString(tls, *(*uintptr)(unsafe.Pointer(objv + 3*4))) zOffvar = tcl.XTcl_GetString(tls, *(*uintptr)(unsafe.Pointer(objv + 4*4))) - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 64 /* &.xPhraseFirst */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 364 /* iPhrase */)), bp+368 /* &iter */, bp+376 /* &iCol */, bp+380 /* &iOff */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxPhraseFirst})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 364 /* iPhrase */)), bp+368 /* &iter */, bp+376 /* &iCol */, bp+380 /* &iOff */) if rc != SQLITE_OK { tcl.XTcl_AppendResult(tls, interp, libc.VaList(bp+16, sqlite3.Xsqlite3ErrName(tls, rc), 0)) return TCL_ERROR } - for ; *(*int32)(unsafe.Pointer(bp + 376 /* iCol */)) >= 0; (*(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr))(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 68 /* &.xPhraseNext */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, bp+368 /* &iter */, bp+376 /* &iCol */, bp+380 /* &iOff */) { + for ; *(*int32)(unsafe.Pointer(bp + 376 /* iCol */)) >= 0; (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxPhraseNext})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, bp+368 /* &iter */, bp+376 /* &iCol */, bp+380 /* &iOff */) { tcl.XTcl_SetVar2Ex(tls, interp, zColvar, uintptr(0), tcl.XTcl_NewIntObj(tls, *(*int32)(unsafe.Pointer(bp + 376 /* iCol */))), 0) tcl.XTcl_SetVar2Ex(tls, interp, zOffvar, uintptr(0), tcl.XTcl_NewIntObj(tls, *(*int32)(unsafe.Pointer(bp + 380 /* iOff */))), 0) rc = tcl.XTcl_EvalObjEx(tls, interp, pScript, 0) @@ -11979,12 +12057,16 @@ func xF5tApi(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv } zColvar = tcl.XTcl_GetString(tls, *(*uintptr)(unsafe.Pointer(objv + 3*4))) - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 72 /* &.xPhraseFirstColumn */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 384 /* iPhrase */)), bp+388 /* &iter */, bp+396 /* &iCol */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxPhraseFirstColumn})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, *(*int32)(unsafe.Pointer(bp + 384 /* iPhrase */)), bp+388 /* &iter */, bp+396 /* &iCol */) if rc != SQLITE_OK { tcl.XTcl_SetResult(tls, interp, sqlite3.Xsqlite3ErrName(tls, rc), uintptr(1)) return TCL_ERROR } - for ; *(*int32)(unsafe.Pointer(bp + 396 /* iCol */)) >= 0; (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer(((*F5tApi)(unsafe.Pointer(p)).FpApi + 76 /* &.xPhraseNextColumn */))))(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, bp+388 /* &iter */, bp+396 /* &iCol */) { + for ; *(*int32)(unsafe.Pointer(bp + 396 /* iCol */)) >= 0; (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*F5tApi)(unsafe.Pointer(p)).FpApi)).FxPhraseNextColumn})).f(tls, (*F5tApi)(unsafe.Pointer(p)).FpFts, bp+388 /* &iter */, bp+396 /* &iCol */) { tcl.XTcl_SetVar2Ex(tls, interp, zColvar, uintptr(0), tcl.XTcl_NewIntObj(tls, *(*int32)(unsafe.Pointer(bp + 396 /* iCol */))), 0) rc = tcl.XTcl_EvalObjEx(tls, interp, pScript, 0) if rc == TCL_CONTINUE { @@ -12025,7 +12107,9 @@ func xF5tFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, nVal bp := tls.Alloc(100) defer tls.Free(100) - var p uintptr = (*(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer((pApi + 4 /* &.xUserData */))))(tls, pFts) + var p uintptr = (*struct { + f func(*libc.TLS, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxUserData})).f(tls, pFts) var pEval uintptr // Script to evaluate var i int32 var rc int32 @@ -12070,7 +12154,7 @@ func xF5tFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, nVal rc = tcl.XTcl_EvalObjEx(tls, (*F5tFunction)(unsafe.Pointer(p)).Finterp, pEval, TCL_GLOBAL_ONLY) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pEval - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -12120,7 +12204,7 @@ func xF5tDestroy(tls *libc.TLS, pCtx uintptr) { /* fts5_tcl.c:600:13: */ var p uintptr = pCtx for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*F5tFunction)(unsafe.Pointer(p)).FpScript - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -12156,7 +12240,9 @@ func f5tCreateFunction(tls *libc.TLS, clientData uintptr, interp uintptr, objc i (*F5tFunction)(unsafe.Pointer(pCtx)).FpScript = pScript (*Tcl_Obj)(unsafe.Pointer(pScript)).FrefCount++ - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, fts5_extension_function, uintptr) int32)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 28 /* pApi */)) + 12 /* &.xCreateFunction */))))(tls, + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, fts5_extension_function, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*fts5_api)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 28 /* pApi */)))).FxCreateFunction})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 28 /* pApi */)), zName, pCtx, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) }{xF5tFunction})), *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{xF5tDestroy}))) @@ -12239,13 +12325,17 @@ func f5tTokenize(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, } zText = tcl.XTcl_GetStringFromObj(tls, *(*uintptr)(unsafe.Pointer(objv + uintptr((objc-1))*4)), bp+112 /* &nText */) - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 100 /* pApi */)) + 8 /* &.xFindTokenizer */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 100 /* pApi */)), *(*uintptr)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 108 /* azArg */)))), bp+116 /* &pUserdata */, bp+120 /* &tokenizer */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*fts5_api)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 100 /* pApi */)))).FxFindTokenizer})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 100 /* pApi */)), *(*uintptr)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 108 /* azArg */)))), bp+116 /* &pUserdata */, bp+120 /* &tokenizer */) if rc != SQLITE_OK { tcl.XTcl_AppendResult(tls, interp, libc.VaList(bp+40, ts+2508 /* "no such tokenize..." */, *(*uintptr)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 108 /* azArg */)))), 0)) return TCL_ERROR } - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((bp + 120 /* &tokenizer */ /* &.xCreate */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 116 /* pUserdata */)), (*(*uintptr)(unsafe.Pointer(bp + 108 /* azArg */)) + 1*4), (*(*int32)(unsafe.Pointer(bp + 104 /* nArg */)) - 1), bp+132 /* &pTok */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*fts5_tokenizer)(unsafe.Pointer(bp + 120 /* &tokenizer */)).FxCreate})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 116 /* pUserdata */)), (*(*uintptr)(unsafe.Pointer(bp + 108 /* azArg */)) + 1*4), (*(*int32)(unsafe.Pointer(bp + 104 /* nArg */)) - 1), bp+132 /* &pTok */) if rc != SQLITE_OK { tcl.XTcl_AppendResult(tls, interp, libc.VaList(bp+64, ts+2528 /* "error in tokeniz..." */, 0)) return TCL_ERROR @@ -12256,16 +12346,18 @@ func f5tTokenize(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, (*F5tTokenizeCtx)(unsafe.Pointer(bp + 136 /* &ctx */)).FbSubst = (libc.Bool32(objc == 5)) (*F5tTokenizeCtx)(unsafe.Pointer(bp + 136 /* &ctx */)).FpRet = pRet (*F5tTokenizeCtx)(unsafe.Pointer(bp + 136 /* &ctx */)).FzInput = zText - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer((bp + 120 /* &tokenizer */ + 8 /* &.xTokenize */))))(tls, + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*fts5_tokenizer)(unsafe.Pointer(bp + 120 /* &tokenizer */)).FxTokenize})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 132 /* pTok */)), bp+136 /* &ctx */, FTS5_TOKENIZE_DOCUMENT, zText, *(*int32)(unsafe.Pointer(bp + 112 /* nText */)), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 }{xTokenizeCb2}))) - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((bp + 120 /* &tokenizer */ + 4 /* &.xDelete */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 132 /* pTok */))) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*fts5_tokenizer)(unsafe.Pointer(bp + 120 /* &tokenizer */)).FxDelete})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 132 /* pTok */))) if rc != SQLITE_OK { tcl.XTcl_AppendResult(tls, interp, libc.VaList(bp+80, ts+2557 /* "error in tokeniz..." */, 0)) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pRet - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -12276,7 +12368,7 @@ func f5tTokenize(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, tcl.XTcl_SetObjResult(tls, interp, pRet) for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = pRet - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -12330,7 +12422,7 @@ func f5tTokenizerCreate(tls *libc.TLS, pCtx uintptr, azArg uintptr, nArg int32, } for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pEval - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -12353,7 +12445,7 @@ func f5tTokenizerDelete(tls *libc.TLS, p uintptr) { /* fts5_tcl.c:821:13: */ var pInst uintptr = p for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*F5tTokenizerInstance)(unsafe.Pointer(pInst)).FpScript - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -12400,7 +12492,7 @@ func f5tTokenizerTokenize(tls *libc.TLS, p uintptr, pCtx uintptr, flags int32, p rc = tcl.XTcl_EvalObjEx(tls, (*F5tTokenizerInstance)(unsafe.Pointer(pInst)).Finterp, pEval, TCL_GLOBAL_ONLY) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pEval - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -12473,7 +12565,9 @@ __6: __7: ; - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32)(unsafe.Pointer((p + 4 /* &.xToken */))))(tls, (*F5tTokenizerContext)(unsafe.Pointer(p)).FpCtx, tflags, zToken, *(*int32)(unsafe.Pointer(bp + 20 /* nToken */)), *(*int32)(unsafe.Pointer(bp + 24 /* iStart */)), *(*int32)(unsafe.Pointer(bp + 28 /* iEnd */))) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*F5tTokenizerContext)(unsafe.Pointer(p)).FxToken})).f(tls, (*F5tTokenizerContext)(unsafe.Pointer(p)).FpCtx, tflags, zToken, *(*int32)(unsafe.Pointer(bp + 20 /* nToken */)), *(*int32)(unsafe.Pointer(bp + 24 /* iStart */)), *(*int32)(unsafe.Pointer(bp + 28 /* iEnd */))) tcl.XTcl_SetResult(tls, interp, sqlite3.Xsqlite3ErrName(tls, rc), uintptr(1)) if rc == SQLITE_OK { return TCL_OK @@ -12489,7 +12583,7 @@ func f5tDelTokenizer(tls *libc.TLS, pCtx uintptr) { /* fts5_tcl.c:936:13: */ var pMod uintptr = pCtx for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*F5tTokenizerModule)(unsafe.Pointer(pMod)).FpScript - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -12549,7 +12643,9 @@ func f5tCreateTokenizer(tls *libc.TLS, clientData ClientData, interp uintptr, ob (*F5tTokenizerModule)(unsafe.Pointer(pMod)).FpScript = pScript (*F5tTokenizerModule)(unsafe.Pointer(pMod)).FpContext = pContext (*Tcl_Obj)(unsafe.Pointer(pScript)).FrefCount++ - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 20 /* pApi */)) + 4 /* &.xCreateTokenizer */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 20 /* pApi */)), zName, pMod, bp+24 /* &t */, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{f5tDelTokenizer}))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*fts5_api)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 20 /* pApi */)))).FxCreateTokenizer})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 20 /* pApi */)), zName, pMod, bp+24 /* &t */, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{f5tDelTokenizer}))) if rc != SQLITE_OK { tcl.XTcl_AppendResult(tls, interp, libc.VaList(bp, ts+2724 /* "error in fts5_ap..." */, 0)) return TCL_ERROR @@ -12783,7 +12879,9 @@ func fts5MatchinfoIter(tls *libc.TLS, pApi uintptr, pFts uintptr, p uintptr, x u var rc int32 = SQLITE_OK var f int8 for i = 0; libc.AssignInt8(&f, *(*int8)(unsafe.Pointer((*Fts5MatchinfoCtx)(unsafe.Pointer(p)).FzArg + uintptr(i)))) != 0; i++ { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int8, uintptr) int32)(unsafe.Pointer(&x)))(tls, pApi, pFts, p, f, ((*Fts5MatchinfoCtx)(unsafe.Pointer(p)).FaRet + uintptr(n)*4)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int8, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{x})).f(tls, pApi, pFts, p, f, ((*Fts5MatchinfoCtx)(unsafe.Pointer(p)).FaRet + uintptr(n)*4)) if rc != SQLITE_OK { break } @@ -12805,7 +12903,11 @@ func fts5MatchinfoXCb(tls *libc.TLS, pApi uintptr, pFts uintptr, pUserData uintp var aOut uintptr = pUserData var iPrev int32 = -1 - for (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 64 /* &.xPhraseFirst */))))(tls, pFts, 0, bp /* &iter */, bp+8 /* &iCol */, bp+12 /* &iOff */); *(*int32)(unsafe.Pointer(bp + 8 /* iCol */)) >= 0; (*(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr))(unsafe.Pointer((pApi + 68 /* &.xPhraseNext */))))(tls, pFts, bp /* &iter */, bp+8 /* &iCol */, bp+12 /* &iOff */) { + for (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseFirst})).f(tls, pFts, 0, bp /* &iter */, bp+8 /* &iCol */, bp+12 /* &iOff */); *(*int32)(unsafe.Pointer(bp + 8 /* iCol */)) >= 0; (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseNext})).f(tls, pFts, bp /* &iter */, bp+8 /* &iCol */, bp+12 /* &iOff */) { *(*u32)(unsafe.Pointer(aOut + uintptr(((*(*int32)(unsafe.Pointer(bp + 8 /* iCol */))*3)+1))*4))++ if *(*int32)(unsafe.Pointer(bp + 8 /* iCol */)) != iPrev { *(*u32)(unsafe.Pointer(aOut + uintptr(((*(*int32)(unsafe.Pointer(bp + 8 /* iCol */))*3)+2))*4))++ @@ -12835,7 +12937,9 @@ func fts5MatchinfoGlobalCb(tls *libc.TLS, pApi uintptr, pFts uintptr, p uintptr, var i int32 for i = 0; (i < (*Fts5MatchinfoCtx)(unsafe.Pointer(p)).FnPhrase) && (rc == SQLITE_OK); i++ { var pPtr uintptr = (aOut + uintptr(((i*(*Fts5MatchinfoCtx)(unsafe.Pointer(p)).FnCol)*3))*4) - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 52 /* &.xQueryPhrase */))))(tls, pFts, i, pPtr, *(*uintptr)(unsafe.Pointer(&struct { + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxQueryPhrase})).f(tls, pFts, i, pPtr, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr) int32 }{fts5MatchinfoXCb}))) } @@ -12847,7 +12951,9 @@ func fts5MatchinfoGlobalCb(tls *libc.TLS, pApi uintptr, pFts uintptr, p uintptr, { // var nRow sqlite3_int64 at bp, 8 - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 12 /* &.xRowCount */))))(tls, pFts, bp /* &nRow */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxRowCount})).f(tls, pFts, bp /* &nRow */) *(*u32)(unsafe.Pointer(aOut)) = u32(*(*sqlite3_int64)(unsafe.Pointer(bp /* nRow */))) break @@ -12856,7 +12962,9 @@ func fts5MatchinfoGlobalCb(tls *libc.TLS, pApi uintptr, pFts uintptr, p uintptr, case 'a': { *(*sqlite3_int64)(unsafe.Pointer(bp + 8 /* nRow */)) = int64(0) - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 12 /* &.xRowCount */))))(tls, pFts, bp+8 /* &nRow */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxRowCount})).f(tls, pFts, bp+8 /* &nRow */) if *(*sqlite3_int64)(unsafe.Pointer(bp + 8 /* nRow */)) == int64(0) { libc.Xmemset(tls, aOut, 0, (uint32(unsafe.Sizeof(u32(0))) * uint32((*Fts5MatchinfoCtx)(unsafe.Pointer(p)).FnCol))) } else { @@ -12864,7 +12972,9 @@ func fts5MatchinfoGlobalCb(tls *libc.TLS, pApi uintptr, pFts uintptr, p uintptr, for i = 0; (rc == SQLITE_OK) && (i < (*Fts5MatchinfoCtx)(unsafe.Pointer(p)).FnCol); i++ { // var nToken sqlite3_int64 at bp+16, 8 - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pApi + 16 /* &.xColumnTotalSize */))))(tls, pFts, i, bp+16 /* &nToken */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnTotalSize})).f(tls, pFts, i, bp+16 /* &nToken */) if rc == SQLITE_OK { *(*u32)(unsafe.Pointer(aOut + uintptr(i)*4)) = (u32(((int64(2) * *(*sqlite3_int64)(unsafe.Pointer(bp + 16 /* nToken */))) + *(*sqlite3_int64)(unsafe.Pointer(bp + 8 /* nRow */))) / (int64(2) * *(*sqlite3_int64)(unsafe.Pointer(bp + 8 /* nRow */))))) } @@ -12899,7 +13009,11 @@ func fts5MatchinfoLocalCb(tls *libc.TLS, pApi uintptr, pFts uintptr, p uintptr, // var iCol int32 at bp+8, 4 - for (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 72 /* &.xPhraseFirstColumn */))))(tls, pFts, iPhrase, bp /* &iter */, bp+8 /* &iCol */); *(*int32)(unsafe.Pointer(bp + 8 /* iCol */)) >= 0; (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pApi + 76 /* &.xPhraseNextColumn */))))(tls, pFts, bp /* &iter */, bp+8 /* &iCol */) { + for (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseFirstColumn})).f(tls, pFts, iPhrase, bp /* &iter */, bp+8 /* &iCol */); *(*int32)(unsafe.Pointer(bp + 8 /* iCol */)) >= 0; (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseNextColumn})).f(tls, pFts, bp /* &iter */, bp+8 /* &iCol */) { *(*u32)(unsafe.Pointer(aOut + uintptr(((iPhrase*(((*Fts5MatchinfoCtx)(unsafe.Pointer(p)).FnCol+31)/32))+(*(*int32)(unsafe.Pointer(bp + 8 /* iCol */))/32)))*4)) |= (u32(u32(1)) << (*(*int32)(unsafe.Pointer(bp + 8 /* iCol */)) % 32)) } } @@ -12931,7 +13045,11 @@ func fts5MatchinfoLocalCb(tls *libc.TLS, pApi uintptr, pFts uintptr, p uintptr, // var iCol int32 at bp+20, 4 - for (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 64 /* &.xPhraseFirst */))))(tls, pFts, iPhrase, bp+12 /* &iter */, bp+20 /* &iCol */, bp+24 /* &iOff */); *(*int32)(unsafe.Pointer(bp + 24 /* iOff */)) >= 0; (*(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr))(unsafe.Pointer((pApi + 68 /* &.xPhraseNext */))))(tls, pFts, bp+12 /* &iter */, bp+20 /* &iCol */, bp+24 /* &iOff */) { + for (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseFirst})).f(tls, pFts, iPhrase, bp+12 /* &iter */, bp+20 /* &iCol */, bp+24 /* &iOff */); *(*int32)(unsafe.Pointer(bp + 24 /* iOff */)) >= 0; (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseNext})).f(tls, pFts, bp+12 /* &iter */, bp+20 /* &iCol */, bp+24 /* &iOff */) { *(*u32)(unsafe.Pointer(aOut + uintptr((nMul*(*(*int32)(unsafe.Pointer(bp + 20 /* iCol */))+(iPhrase*(*Fts5MatchinfoCtx)(unsafe.Pointer(p)).FnCol))))*4))++ } } @@ -12945,7 +13063,9 @@ func fts5MatchinfoLocalCb(tls *libc.TLS, pApi uintptr, pFts uintptr, p uintptr, for i = 0; (rc == SQLITE_OK) && (i < (*Fts5MatchinfoCtx)(unsafe.Pointer(p)).FnCol); i++ { // var nToken int32 at bp+28, 4 - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pApi + 48 /* &.xColumnSize */))))(tls, pFts, i, bp+28 /* &nToken */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnSize})).f(tls, pFts, i, bp+28 /* &nToken */) *(*u32)(unsafe.Pointer(aOut + uintptr(i)*4)) = u32(*(*int32)(unsafe.Pointer(bp + 28 /* nToken */))) } break @@ -12958,7 +13078,9 @@ func fts5MatchinfoLocalCb(tls *libc.TLS, pApi uintptr, pFts uintptr, p uintptr, libc.Xmemset(tls, aOut, 0, (uint32(unsafe.Sizeof(u32(0))) * uint32((*Fts5MatchinfoCtx)(unsafe.Pointer(p)).FnCol))) - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 32 /* &.xInstCount */))))(tls, pFts, bp+32 /* &nInst */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInstCount})).f(tls, pFts, bp+32 /* &nInst */) for i = 0; (rc == SQLITE_OK) && (i < *(*int32)(unsafe.Pointer(bp + 32 /* nInst */))); i++ { // var iPhrase int32 at bp+36, 4 @@ -12970,9 +13092,13 @@ func fts5MatchinfoLocalCb(tls *libc.TLS, pApi uintptr, pFts uintptr, p uintptr, var nSeq u32 = u32(1) var j int32 - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 36 /* &.xInst */))))(tls, pFts, i, bp+36 /* &iPhrase */, bp+40 /* &iCol */, bp+44 /* &iOff */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInst})).f(tls, pFts, i, bp+36 /* &iPhrase */, bp+40 /* &iCol */, bp+44 /* &iOff */) iNextPhrase = (*(*int32)(unsafe.Pointer(bp + 36 /* iPhrase */)) + 1) - iNextOff = (*(*int32)(unsafe.Pointer(bp + 44 /* iOff */)) + (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pApi + 28 /* &.xPhraseSize */))))(tls, pFts, 0)) + iNextOff = (*(*int32)(unsafe.Pointer(bp + 44 /* iOff */)) + (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseSize})).f(tls, pFts, 0)) for j = (i + 1); (rc == SQLITE_OK) && (j < *(*int32)(unsafe.Pointer(bp + 32 /* nInst */))); j++ { // var ip int32 at bp+48, 4 @@ -12980,14 +13106,18 @@ func fts5MatchinfoLocalCb(tls *libc.TLS, pApi uintptr, pFts uintptr, p uintptr, // var io int32 at bp+56, 4 - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 36 /* &.xInst */))))(tls, pFts, j, bp+48 /* &ip */, bp+52 /* &ic */, bp+56 /* &io */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInst})).f(tls, pFts, j, bp+48 /* &ip */, bp+52 /* &ic */, bp+56 /* &io */) if (*(*int32)(unsafe.Pointer(bp + 52 /* ic */)) != *(*int32)(unsafe.Pointer(bp + 40 /* iCol */))) || (*(*int32)(unsafe.Pointer(bp + 56 /* io */)) > iNextOff) { break } if (*(*int32)(unsafe.Pointer(bp + 48 /* ip */)) == iNextPhrase) && (*(*int32)(unsafe.Pointer(bp + 56 /* io */)) == iNextOff) { nSeq++ iNextPhrase = (*(*int32)(unsafe.Pointer(bp + 48 /* ip */)) + 1) - iNextOff = (*(*int32)(unsafe.Pointer(bp + 56 /* io */)) + (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pApi + 28 /* &.xPhraseSize */))))(tls, pFts, *(*int32)(unsafe.Pointer(bp + 48 /* ip */)))) + iNextOff = (*(*int32)(unsafe.Pointer(bp + 56 /* io */)) + (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseSize})).f(tls, pFts, *(*int32)(unsafe.Pointer(bp + 48 /* ip */)))) } } @@ -13015,8 +13145,12 @@ func fts5MatchinfoNew(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, z var nByte sqlite3_int64 var rc int32 - nCol = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pApi + 8 /* &.xColumnCount */))))(tls, pFts) - nPhrase = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pApi + 24 /* &.xPhraseCount */))))(tls, pFts) + nCol = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnCount})).f(tls, pFts) + nPhrase = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseCount})).f(tls, pFts) nInt = 0 for i = 0; *(*int8)(unsafe.Pointer(zArg + uintptr(i))) != 0; i++ { @@ -13070,13 +13204,17 @@ func fts5MatchinfoFunc(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, zArg = ts + 3024 /* "pcx" */ } - p = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer((pApi + 60 /* &.xGetAuxdata */))))(tls, pFts, 0) + p = (*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxGetAuxdata})).f(tls, pFts, 0) if (p == uintptr(0)) || (sqlite3.Xsqlite3_stricmp(tls, zArg, (*Fts5MatchinfoCtx)(unsafe.Pointer(p)).FzArg) != 0) { p = fts5MatchinfoNew(tls, pApi, pFts, pCtx, zArg) if p == uintptr(0) { rc = SQLITE_NOMEM } else { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 56 /* &.xSetAuxdata */))))(tls, pFts, p, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{sqlite3.Xsqlite3_free}))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxSetAuxdata})).f(tls, pFts, p, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{sqlite3.Xsqlite3_free}))) } } @@ -13120,14 +13258,16 @@ func sqlite3Fts5TestRegisterMatchinfo(tls *libc.TLS, db uintptr) int32 { /* fts5 } // Register the implementation of matchinfo() - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, fts5_extension_function, uintptr) int32)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp /* pApi */)) + 12 /* &.xCreateFunction */))))(tls, *(*uintptr)(unsafe.Pointer(bp /* pApi */)), ts+3028 /* "matchinfo" */, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, fts5_extension_function, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*fts5_api)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pApi */)))).FxCreateFunction})).f(tls, *(*uintptr)(unsafe.Pointer(bp /* pApi */)), ts+3028 /* "matchinfo" */, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) }{fts5MatchinfoFunc})), uintptr(0)) return rc } -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -13142,11 +13282,11 @@ func sqlite3Fts5TestRegisterMatchinfo(tls *libc.TLS, db uintptr) int32 { /* fts5 // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -13161,7 +13301,7 @@ func sqlite3Fts5TestRegisterMatchinfo(tls *libc.TLS, db uintptr) int32 { /* fts5 // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -13180,7 +13320,7 @@ type Fts5tokTable1 = struct { FpTok uintptr } /* fts5_test_tok.c:47:9 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -13195,11 +13335,11 @@ type Fts5tokTable1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -13214,7 +13354,7 @@ type Fts5tokTable1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -13363,7 +13503,9 @@ func fts5tokConnectMethod(tls *libc.TLS, db uintptr, pCtx uintptr, argc int32, a zModule = *(*uintptr)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* azDequote */)))) } - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 8 /* &.xFindTokenizer */))))(tls, pApi, zModule, bp+4 /* &pTokCtx */, (pTab + 12 /* &.tok */)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*fts5_api)(unsafe.Pointer(pApi)).FxFindTokenizer})).f(tls, pApi, zModule, bp+4 /* &pTokCtx */, (pTab + 12 /* &.tok */)) if rc == SQLITE_OK { var azArg uintptr = func() uintptr { if nDequote > 1 { @@ -13377,7 +13519,9 @@ func fts5tokConnectMethod(tls *libc.TLS, db uintptr, pCtx uintptr, argc int32, a } else { nArg = 0 } - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pTab + 12 /* &.tok */ /* &.xCreate */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 4 /* pTokCtx */)), azArg, nArg, (pTab + 24 /* &.pTok */)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5tokTable)(unsafe.Pointer(pTab)).Ftok.FxCreate})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 4 /* pTokCtx */)), azArg, nArg, (pTab + 24 /* &.pTok */)) } } @@ -13397,7 +13541,7 @@ func fts5tokConnectMethod(tls *libc.TLS, db uintptr, pCtx uintptr, argc int32, a func fts5tokDisconnectMethod(tls *libc.TLS, pVtab uintptr) int32 { /* fts5_test_tok.c:235:12: */ var pTab uintptr = pVtab if (*Fts5tokTable)(unsafe.Pointer(pTab)).FpTok != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pTab + 12 /* &.tok */ + 4 /* &.xDelete */))))(tls, (*Fts5tokTable)(unsafe.Pointer(pTab)).FpTok) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Fts5tokTable)(unsafe.Pointer(pTab)).Ftok.FxDelete})).f(tls, (*Fts5tokTable)(unsafe.Pointer(pTab)).FpTok) } sqlite3.Xsqlite3_free(tls, pTab) return SQLITE_OK @@ -13528,7 +13672,9 @@ func fts5tokFilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, idxStr ui libc.Xmemcpy(tls, (*Fts5tokCursor)(unsafe.Pointer(pCsr)).FzInput, zByte, uint32(nByte)) } *(*int8)(unsafe.Pointer((*Fts5tokCursor)(unsafe.Pointer(pCsr)).FzInput + uintptr(nByte))) = int8(0) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer((pTab + 12 /* &.tok */ + 8 /* &.xTokenize */))))(tls, + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5tokTable)(unsafe.Pointer(pTab)).Ftok.FxTokenize})).f(tls, (*Fts5tokTable)(unsafe.Pointer(pTab)).FpTok, pCsr, 0, zByte, nByte, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 }{fts5tokCb}))) @@ -13617,7 +13763,7 @@ type sqlite3_api_routines = sqlite3_api_routines1 /* sqlite3.h:1216:37 */ // is also defined in the file "loadext.c". type sqlite3_loadext_entry = uintptr /* sqlite3ext.h:346:13 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -13632,11 +13778,11 @@ type sqlite3_loadext_entry = uintptr /* sqlite3ext.h:346:13 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -13651,7 +13797,7 @@ type sqlite3_loadext_entry = uintptr /* sqlite3ext.h:346:13 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -13734,14 +13880,18 @@ var apnd_io_methods = sqlite3_io_methods{ // Close an apnd-file. func apndClose(tls *libc.TLS, pFile uintptr) int32 { /* appendvfs.c:227:12: */ pFile = ((pFile) + uintptr(1)*20) - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 4 /* &.xClose */))))(tls, pFile) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxClose})).f(tls, pFile) } // Read data from an apnd-file. func apndRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst sqlite_int64) int32 { /* appendvfs.c:235:12: */ var paf uintptr = pFile pFile = ((pFile) + uintptr(1)*20) - return (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 8 /* &.xRead */))))(tls, pFile, zBuf, iAmt, ((*ApndFile)(unsafe.Pointer(paf)).FiPgOne + iOfst)) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxRead})).f(tls, pFile, zBuf, iAmt, ((*ApndFile)(unsafe.Pointer(paf)).FiPgOne + iOfst)) } // Add the append-mark onto what should become the end of the file. @@ -13763,7 +13913,9 @@ func apndWriteMark(tls *libc.TLS, paf uintptr, pFile uintptr, iWriteEnd sqlite_i iPgOne >>= 8 } iWriteEnd = iWriteEnd + ((*ApndFile)(unsafe.Pointer(paf)).FiPgOne) - if SQLITE_OK == (libc.AssignInt32(&rc, (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 12 /* &.xWrite */))))(tls, pFile, bp /* &a[0] */, (APND_MARK_PREFIX_SZ+APND_MARK_FOS_SZ), iWriteEnd))) { + if SQLITE_OK == (libc.AssignInt32(&rc, (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxWrite})).f(tls, pFile, bp /* &a[0] */, (APND_MARK_PREFIX_SZ+APND_MARK_FOS_SZ), iWriteEnd))) { (*ApndFile)(unsafe.Pointer(paf)).FiMark = iWriteEnd } return rc @@ -13784,7 +13936,9 @@ func apndWrite(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst sql return rc } } - return (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 12 /* &.xWrite */))))(tls, pFile, zBuf, iAmt, ((*ApndFile)(unsafe.Pointer(paf)).FiPgOne + iOfst)) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxWrite})).f(tls, pFile, zBuf, iAmt, ((*ApndFile)(unsafe.Pointer(paf)).FiPgOne + iOfst)) } // Truncate an apnd-file. @@ -13796,13 +13950,17 @@ func apndTruncate(tls *libc.TLS, pFile uintptr, size sqlite_int64) int32 { /* ap return SQLITE_IOERR } // Truncate underlying file just past append mark - return (*(*func(*libc.TLS, uintptr, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 16 /* &.xTruncate */))))(tls, pFile, ((*ApndFile)(unsafe.Pointer(paf)).FiMark + (int64(APND_MARK_PREFIX_SZ + APND_MARK_FOS_SZ)))) + return (*struct { + f func(*libc.TLS, uintptr, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxTruncate})).f(tls, pFile, ((*ApndFile)(unsafe.Pointer(paf)).FiMark + (int64(APND_MARK_PREFIX_SZ + APND_MARK_FOS_SZ)))) } // Sync an apnd-file. func apndSync(tls *libc.TLS, pFile uintptr, flags int32) int32 { /* appendvfs.c:310:12: */ pFile = ((pFile) + uintptr(1)*20) - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 20 /* &.xSync */))))(tls, pFile, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxSync})).f(tls, pFile, flags) } // Return the current file-size of an apnd-file. @@ -13821,19 +13979,25 @@ func apndFileSize(tls *libc.TLS, pFile uintptr, pSize uintptr) int32 { /* append // Lock an apnd-file. func apndLock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* appendvfs.c:328:12: */ pFile = ((pFile) + uintptr(1)*20) - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 28 /* &.xLock */))))(tls, pFile, eLock) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxLock})).f(tls, pFile, eLock) } // Unlock an apnd-file. func apndUnlock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* appendvfs.c:336:12: */ pFile = ((pFile) + uintptr(1)*20) - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 32 /* &.xUnlock */))))(tls, pFile, eLock) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxUnlock})).f(tls, pFile, eLock) } // Check if another file-handle holds a RESERVED lock on an apnd-file. func apndCheckReservedLock(tls *libc.TLS, pFile uintptr, pResOut uintptr) int32 { /* appendvfs.c:344:12: */ pFile = ((pFile) + uintptr(1)*20) - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 36 /* &.xCheckReservedLock */))))(tls, pFile, pResOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxCheckReservedLock})).f(tls, pFile, pResOut) } // File control method. For custom operations on an apnd-file. @@ -13847,7 +14011,9 @@ func apndFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int32 if op == SQLITE_FCNTL_SIZE_HINT { *(*sqlite3_int64)(unsafe.Pointer(pArg)) += ((*ApndFile)(unsafe.Pointer(paf)).FiPgOne) } - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 40 /* &.xFileControl */))))(tls, pFile, op, pArg) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxFileControl})).f(tls, pFile, op, pArg) if (rc == SQLITE_OK) && (op == SQLITE_FCNTL_VFSNAME) { *(*uintptr)(unsafe.Pointer(pArg)) = sqlite3.Xsqlite3_mprintf(tls, ts+3135 /* "apnd(%lld)/%z" */, libc.VaList(bp, (*ApndFile)(unsafe.Pointer(paf)).FiPgOne, *(*uintptr)(unsafe.Pointer(pArg)))) } @@ -13857,37 +14023,47 @@ func apndFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int32 // Return the sector-size in bytes for an apnd-file. func apndSectorSize(tls *libc.TLS, pFile uintptr) int32 { /* appendvfs.c:367:12: */ pFile = ((pFile) + uintptr(1)*20) - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 44 /* &.xSectorSize */))))(tls, pFile) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxSectorSize})).f(tls, pFile) } // Return the device characteristic flags supported by an apnd-file. func apndDeviceCharacteristics(tls *libc.TLS, pFile uintptr) int32 { /* appendvfs.c:375:12: */ pFile = ((pFile) + uintptr(1)*20) - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 48 /* &.xDeviceCharacteristics */))))(tls, pFile) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxDeviceCharacteristics})).f(tls, pFile) } // Create a shared memory file mapping func apndShmMap(tls *libc.TLS, pFile uintptr, iPg int32, pgsz int32, bExtend int32, pp uintptr) int32 { /* appendvfs.c:381:12: */ pFile = ((pFile) + uintptr(1)*20) - return (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 52 /* &.xShmMap */))))(tls, pFile, iPg, pgsz, bExtend, libc.AtomicLoadUintptr(&pp)) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxShmMap})).f(tls, pFile, iPg, pgsz, bExtend, pp) } // Perform locking on a shared-memory segment func apndShmLock(tls *libc.TLS, pFile uintptr, offset int32, n int32, flags int32) int32 { /* appendvfs.c:393:12: */ pFile = ((pFile) + uintptr(1)*20) - return (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 56 /* &.xShmLock */))))(tls, pFile, offset, n, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxShmLock})).f(tls, pFile, offset, n, flags) } // Memory barrier operation on shared memory func apndShmBarrier(tls *libc.TLS, pFile uintptr) { /* appendvfs.c:399:13: */ pFile = ((pFile) + uintptr(1)*20) - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 60 /* &.xShmBarrier */))))(tls, pFile) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxShmBarrier})).f(tls, pFile) } // Unmap a shared memory segment func apndShmUnmap(tls *libc.TLS, pFile uintptr, deleteFlag int32) int32 { /* appendvfs.c:405:12: */ pFile = ((pFile) + uintptr(1)*20) - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 64 /* &.xShmUnmap */))))(tls, pFile, deleteFlag) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxShmUnmap})).f(tls, pFile, deleteFlag) } // Fetch a page of a memory-mapped file @@ -13897,14 +14073,18 @@ func apndFetch(tls *libc.TLS, pFile uintptr, iOfst sqlite3_int64, iAmt int32, pp return SQLITE_IOERR // Cannot read what is not yet there. } pFile = ((pFile) + uintptr(1)*20) - return (*(*func(*libc.TLS, uintptr, sqlite3_int64, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 68 /* &.xFetch */))))(tls, pFile, (iOfst + (*ApndFile)(unsafe.Pointer(p)).FiPgOne), iAmt, pp) + return (*struct { + f func(*libc.TLS, uintptr, sqlite3_int64, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxFetch})).f(tls, pFile, (iOfst + (*ApndFile)(unsafe.Pointer(p)).FiPgOne), iAmt, pp) } // Release a memory-mapped page func apndUnfetch(tls *libc.TLS, pFile uintptr, iOfst sqlite3_int64, pPage uintptr) int32 { /* appendvfs.c:426:12: */ var p uintptr = pFile pFile = ((pFile) + uintptr(1)*20) - return (*(*func(*libc.TLS, uintptr, sqlite3_int64, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 72 /* &.xUnfetch */))))(tls, pFile, (iOfst + (*ApndFile)(unsafe.Pointer(p)).FiPgOne), pPage) + return (*struct { + f func(*libc.TLS, uintptr, sqlite3_int64, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxUnfetch})).f(tls, pFile, (iOfst + (*ApndFile)(unsafe.Pointer(p)).FiPgOne), pPage) } // Try to read the append-mark off the end of a file. Return the @@ -13927,7 +14107,9 @@ func apndReadMark(tls *libc.TLS, sz sqlite3_int64, pFile uintptr) sqlite3_int64 if (int64(APND_MARK_PREFIX_SZ + APND_MARK_FOS_SZ)) != (sz & int64(0x1ff)) { return int64(-1) } - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 8 /* &.xRead */))))(tls, pFile, bp /* &a[0] */, (APND_MARK_PREFIX_SZ + APND_MARK_FOS_SZ), (sz - (int64(APND_MARK_PREFIX_SZ + APND_MARK_FOS_SZ)))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxRead})).f(tls, pFile, bp /* &a[0] */, (APND_MARK_PREFIX_SZ + APND_MARK_FOS_SZ), (sz - (int64(APND_MARK_PREFIX_SZ + APND_MARK_FOS_SZ)))) if rc != 0 { return int64(-1) } @@ -13964,7 +14146,9 @@ func apndIsAppendvfsDatabase(tls *libc.TLS, sz sqlite3_int64, pFile uintptr) int // If file has the correct end-marker, the expected odd size, and the // SQLite DB type marker where the end-marker puts it, then it // is an appendvfs database. - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 8 /* &.xRead */))))(tls, pFile, bp /* &zHdr[0] */, int32(unsafe.Sizeof([16]int8{})), iMark) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxRead})).f(tls, pFile, bp /* &zHdr[0] */, int32(unsafe.Sizeof([16]int8{})), iMark) if (((SQLITE_OK == rc) && (libc.Xmemcmp(tls, bp /* &zHdr[0] */, uintptr(unsafe.Pointer(&apvfsSqliteHdr)), uint32(unsafe.Sizeof([16]int8{}))) == 0)) && ((sz & int64(0x1ff)) == (int64(APND_MARK_PREFIX_SZ + APND_MARK_FOS_SZ)))) && @@ -13985,7 +14169,9 @@ func apndIsOrdinaryDatabaseFile(tls *libc.TLS, sz sqlite3_int64, pFile uintptr) if (((apndIsAppendvfsDatabase(tls, sz, pFile) != 0) || // rule 2 ((sz & int64(0x1ff)) != int64(0))) || - (SQLITE_OK != (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 8 /* &.xRead */))))(tls, pFile, bp /* &zHdr[0] */, int32(unsafe.Sizeof([16]int8{})), int64(0)))) || + (SQLITE_OK != (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxRead})).f(tls, pFile, bp /* &zHdr[0] */, int32(unsafe.Sizeof([16]int8{})), int64(0)))) || (libc.Xmemcmp(tls, bp /* &zHdr[0] */, uintptr(unsafe.Pointer(&apvfsSqliteHdr)), uint32(unsafe.Sizeof([16]int8{}))) != 0) { return 0 } else { @@ -14008,17 +14194,25 @@ func apndOpen(tls *libc.TLS, pApndVfs uintptr, zName uintptr, pFile uintptr, fla // The appendvfs is not to be used for transient or temporary databases. // Just use the base VFS open to initialize the given file object and // open the underlying file. (Appendvfs is then unused for this file.) - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pBaseVfs + 24 /* &.xOpen */))))(tls, pBaseVfs, zName, pFile, flags, pOutFlags) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pBaseVfs)).FxOpen})).f(tls, pBaseVfs, zName, pFile, flags, pOutFlags) } libc.Xmemset(tls, pApndFile, 0, uint32(unsafe.Sizeof(ApndFile{}))) (*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods = uintptr(unsafe.Pointer(&apnd_io_methods)) (*ApndFile)(unsafe.Pointer(pApndFile)).FiMark = int64(-1) // Append mark not yet written - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pBaseVfs + 24 /* &.xOpen */))))(tls, pBaseVfs, zName, pBaseFile, flags, pOutFlags) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pBaseVfs)).FxOpen})).f(tls, pBaseVfs, zName, pBaseFile, flags, pOutFlags) if rc == SQLITE_OK { - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pBaseFile)).FpMethods + 24 /* &.xFileSize */))))(tls, pBaseFile, bp /* &sz */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pBaseFile)).FpMethods)).FxFileSize})).f(tls, pBaseFile, bp /* &sz */) if rc != 0 { - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pBaseFile)).FpMethods + 4 /* &.xClose */))))(tls, pBaseFile) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pBaseFile)).FpMethods)).FxClose})).f(tls, pBaseFile) } } if rc != 0 { @@ -14037,7 +14231,9 @@ func apndOpen(tls *libc.TLS, pApndVfs uintptr, zName uintptr, pFile uintptr, fla return SQLITE_OK } if (flags & SQLITE_OPEN_CREATE) == 0 { - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pBaseFile)).FpMethods + 4 /* &.xClose */))))(tls, pBaseFile) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pBaseFile)).FpMethods)).FxClose})).f(tls, pBaseFile) rc = SQLITE_CANTOPEN (*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods = uintptr(0) } else { @@ -14055,64 +14251,94 @@ func apndOpen(tls *libc.TLS, pApndVfs uintptr, zName uintptr, pFile uintptr, fla // leaving the appendee as it was before it gained an appendvfs. // For now, this code deletes the underlying file too. func apndDelete(tls *libc.TLS, pVfs uintptr, zPath uintptr, dirSync int32) int32 { /* appendvfs.c:574:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 28 /* &.xDelete */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath, dirSync) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDelete})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath, dirSync) } // All other VFS methods are pass-thrus. func apndAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResOut uintptr) int32 { /* appendvfs.c:581:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 32 /* &.xAccess */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath, flags, pResOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxAccess})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath, flags, pResOut) } func apndFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zOut uintptr) int32 { /* appendvfs.c:589:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 36 /* &.xFullPathname */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath, nOut, zOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxFullPathname})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath, nOut, zOut) } func apndDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* appendvfs.c:597:13: */ - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 40 /* &.xDlOpen */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlOpen})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath) } func apndDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zErrMsg uintptr) { /* appendvfs.c:600:13: */ - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 44 /* &.xDlError */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zErrMsg) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlError})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zErrMsg) } func apndDlSym(tls *libc.TLS, pVfs uintptr, p uintptr, zSym uintptr) uintptr { /* appendvfs.c:603:13: */ - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 48 /* &.xDlSym */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, p, zSym) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlSym})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, p, zSym) } func apndDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* appendvfs.c:606:13: */ - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 52 /* &.xDlClose */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, pHandle) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlClose})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, pHandle) } func apndRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* appendvfs.c:609:12: */ - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 56 /* &.xRandomness */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zBufOut) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxRandomness})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zBufOut) } func apndSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* appendvfs.c:612:12: */ - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 60 /* &.xSleep */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nMicro) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxSleep})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nMicro) } func apndCurrentTime(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) int32 { /* appendvfs.c:615:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 64 /* &.xCurrentTime */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, pTimeOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxCurrentTime})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, pTimeOut) } func apndGetLastError(tls *libc.TLS, pVfs uintptr, a int32, b uintptr) int32 { /* appendvfs.c:618:12: */ - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 68 /* &.xGetLastError */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, a, b) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxGetLastError})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, a, b) } func apndCurrentTimeInt64(tls *libc.TLS, pVfs uintptr, p uintptr) int32 { /* appendvfs.c:621:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 72 /* &.xCurrentTimeInt64 */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, p) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxCurrentTimeInt64})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, p) } func apndSetSystemCall(tls *libc.TLS, pVfs uintptr, zName uintptr, pCall sqlite3_syscall_ptr) int32 { /* appendvfs.c:624:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 76 /* &.xSetSystemCall */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName, pCall) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxSetSystemCall})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName, pCall) } func apndGetSystemCall(tls *libc.TLS, pVfs uintptr, zName uintptr) sqlite3_syscall_ptr { /* appendvfs.c:631:28: */ - return (*(*func(*libc.TLS, uintptr, uintptr) sqlite3_syscall_ptr)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 80 /* &.xGetSystemCall */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) sqlite3_syscall_ptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxGetSystemCall})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName) } func apndNextSystemCall(tls *libc.TLS, pVfs uintptr, zName uintptr) uintptr { /* appendvfs.c:637:19: */ - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 84 /* &.xNextSystemCall */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxNextSystemCall})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName) } // This routine is called when the extension is loaded. @@ -14138,16 +14364,11 @@ func sqlite3_appendvfs_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi ui return rc } -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // XPG requires a few symbols from being defined. // Definitions of flag bits for `waitpid' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14162,7 +14383,7 @@ func sqlite3_appendvfs_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi ui // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Bits in the third argument to `waitpid'. @@ -14175,7 +14396,7 @@ func sqlite3_appendvfs_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi ui type idtype_t = uint32 /* waitflags.h:57:3 */ // Definitions of status bits for `wait' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14190,7 +14411,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Everything extant so far uses these same bits. @@ -14217,7 +14438,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // _FloatN API tests for enablement. // Macros to control TS 18661-3 glibc features on x86. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14232,9 +14453,9 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14249,7 +14470,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Defined to 1 if the current compiler invocation provides a // floating-point type with the IEEE 754 binary128 format, and this @@ -14293,7 +14514,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // Macros to control TS 18661-3 glibc features where the same // definitions are appropriate for all platforms. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14308,9 +14529,9 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14325,10 +14546,10 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Properties of long double type. ldbl-96 version. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14343,7 +14564,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // long double is distinct from double, so there is nothing to // define here. @@ -14443,7 +14664,7 @@ type caddr_t = uintptr /* types.h:115:19 */ type key_t = int32 /* types.h:121:17 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14458,7 +14679,7 @@ type key_t = int32 /* types.h:121:17 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -14466,7 +14687,7 @@ type key_t = int32 /* types.h:121:17 */ type clock_t = int32 /* clock_t.h:7:19 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14481,7 +14702,7 @@ type clock_t = int32 /* clock_t.h:7:19 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -14489,7 +14710,7 @@ type clock_t = int32 /* clock_t.h:7:19 */ type clockid_t = int32 /* clockid_t.h:7:21 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14504,7 +14725,7 @@ type clockid_t = int32 /* clockid_t.h:7:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -14512,7 +14733,7 @@ type clockid_t = int32 /* clockid_t.h:7:21 */ type time_t = int32 /* time_t.h:7:18 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14527,14 +14748,14 @@ type time_t = int32 /* time_t.h:7:18 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // Timer ID returned by `timer_create'. type timer_t = uintptr /* timer_t.h:7:19 */ -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -14566,15 +14787,6 @@ type timer_t = uintptr /* timer_t.h:7:19 */ // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -14609,11 +14821,6 @@ type timer_t = uintptr /* timer_t.h:7:19 */ // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Old compatibility names for C types. @@ -14624,7 +14831,7 @@ type uint = uint32 /* types.h:150:22 */ // These size-specific names are used by some of the inet code. // Define intN_t types. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14639,10 +14846,10 @@ type uint = uint32 /* types.h:150:22 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14657,7 +14864,7 @@ type uint = uint32 /* types.h:150:22 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -14666,14 +14873,13 @@ type int16_t = int16 /* stdint-intn.h:25:19 */ type int32_t = int32 /* stdint-intn.h:26:19 */ type int64_t = int64 /* stdint-intn.h:27:19 */ -// For GCC 2.7 and later, we can use specific type-size attributes. +// These were defined by ISO C without the first `_'. +type u_int8_t = uint8 /* types.h:158:19 */ +type u_int16_t = uint16 /* types.h:159:20 */ +type u_int32_t = uint32 /* types.h:160:20 */ +type u_int64_t = uint64 /* types.h:161:20 */ -type u_int8_t = uint32 /* types.h:177:1 */ -type u_int16_t = uint32 /* types.h:178:1 */ -type u_int32_t = uint32 /* types.h:179:1 */ -type u_int64_t = uint32 /* types.h:180:1 */ - -type register_t = int32 /* types.h:182:13 */ +type register_t = int32 /* types.h:164:13 */ // A set of signals to be blocked, unblocked, or waited for. type sigset_t = struct{ F__val [32]uint32 } /* sigset_t.h:7:20 */ @@ -14681,7 +14887,7 @@ type sigset_t = struct{ F__val [32]uint32 } /* sigset_t.h:7:20 */ // Get definition of timer specification structures. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14696,7 +14902,7 @@ type sigset_t = struct{ F__val [32]uint32 } /* sigset_t.h:7:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -14710,7 +14916,27 @@ type timeval = struct { // NB: Include guard matches what uses. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// Never include this file directly; use instead. + +// Endian macros for string.h functions +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14727,14 +14953,12 @@ type timeval = struct { // License along with the GNU C Library; if not, see // . -// Never include this file directly; use instead. - // POSIX.1b structure for a time value. This is like a `struct timeval' but // has nanoseconds instead of microseconds. type timespec = struct { Ftv_sec int32 Ftv_nsec int32 -} /* struct_timespec.h:9:1 */ +} /* struct_timespec.h:10:1 */ type suseconds_t = int32 /* select.h:43:23 */ @@ -14751,16 +14975,16 @@ type fd_mask = int32 /* select.h:77:19 */ // Define some inlines helping to catch common problems. -type blksize_t = int32 /* types.h:202:21 */ +type blksize_t = int32 /* types.h:185:21 */ // Types from the Large File Support interface. -type blkcnt_t = int64 /* types.h:222:22 */ // Type to count number of disk blocks. -type fsblkcnt_t = uint64 /* types.h:226:24 */ // Type to count file system blocks. -type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inodes. +type blkcnt_t = int64 /* types.h:205:22 */ // Type to count number of disk blocks. +type fsblkcnt_t = uint64 /* types.h:209:24 */ // Type to count file system blocks. +type fsfilcnt_t = uint64 /* types.h:213:24 */ // Type to count file system inodes. // Now add the thread types. // Declaration of common pthread types for all architectures. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14775,11 +14999,11 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // For internal mutex and condition variable definitions. // Common threading primitives definitions for both POSIX and C11. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14794,7 +15018,7 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Arch-specific definitions. Each architecture must define the following // macros to define the expected sizes of pthread data types: @@ -14809,36 +15033,6 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // __SIZEOF_PTHREAD_BARRIER_T - size of pthread_barrier_t. // __SIZEOF_PTHREAD_BARRIERATTR_T - size of pthread_barrierattr_t. // -// Also, the following macros must be define for internal pthread_mutex_t -// struct definitions (struct __pthread_mutex_s): -// -// __PTHREAD_COMPAT_PADDING_MID - any additional members after 'kind' -// and before '__spin' (for 64 bits) or -// '__nusers' (for 32 bits). -// __PTHREAD_COMPAT_PADDING_END - any additional members at the end of -// the internal structure. -// __PTHREAD_MUTEX_LOCK_ELISION - 1 if the architecture supports lock -// elision or 0 otherwise. -// __PTHREAD_MUTEX_NUSERS_AFTER_KIND - control where to put __nusers. The -// preferred value for new architectures -// is 0. -// __PTHREAD_MUTEX_USE_UNION - control whether internal __spins and -// __list will be place inside a union for -// linuxthreads compatibility. -// The preferred value for new architectures -// is 0. -// -// For a new port the preferred values for the required defines are: -// -// #define __PTHREAD_COMPAT_PADDING_MID -// #define __PTHREAD_COMPAT_PADDING_END -// #define __PTHREAD_MUTEX_LOCK_ELISION 0 -// #define __PTHREAD_MUTEX_NUSERS_AFTER_KIND 0 -// #define __PTHREAD_MUTEX_USE_UNION 0 -// -// __PTHREAD_MUTEX_LOCK_ELISION can be set to 1 if the hardware plans to -// eventually support lock elision using transactional memory. -// // The additional macro defines any constraint for the lock alignment // inside the thread structures: // @@ -14847,11 +15041,53 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // Same idea but for the once locking primitive: // // __ONCE_ALIGNMENT - for pthread_once_t/once_flag definition. + +// Copyright (C) 2002-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. // -// And finally the internal pthread_rwlock_t (struct __pthread_rwlock_arch_t) -// must be defined. +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. // -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// Determine the wordsize from the preprocessor defines. + +// Extra attributes for the cleanup functions. + +// Common definition of pthread_mutex_t. + +type __pthread_internal_list = struct { + F__prev uintptr + F__next uintptr +} /* thread-shared-types.h:49:9 */ + +type __pthread_internal_slist = struct{ F__next uintptr } /* thread-shared-types.h:55:9 */ + +// Arch-specific mutex definitions. A generic implementation is provided +// by sysdeps/nptl/bits/struct_mutex.h. If required, an architecture +// can override it by defining: +// +// 1. struct __pthread_mutex_s (used on both pthread_mutex_t and mtx_t +// definition). It should contains at least the internal members +// defined in the generic version. +// +// 2. __LOCK_ALIGNMENT for any extra attribute for internal lock used with +// atomic operations. +// +// 3. The macro __PTHREAD_MUTEX_INITIALIZER used for static initialization. +// It should initialize the mutex internal flag. + +// x86 internal mutex struct definitions. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -14868,32 +15104,6 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // License along with the GNU C Library; if not, see // . -// Determine the wordsize from the preprocessor defines. - -// Definitions for internal mutex struct. - -type __pthread_rwlock_arch_t = struct { - F__readers uint32 - F__writers uint32 - F__wrphase_futex uint32 - F__writers_futex uint32 - F__pad3 uint32 - F__pad4 uint32 - F__flags uint8 - F__shared uint8 - F__rwelision int8 - F__pad2 uint8 - F__cur_writer int32 -} /* pthreadtypes-arch.h:65:1 */ - -// Extra attributes for the cleanup functions. - -// Common definition of pthread_mutex_t. - -type __pthread_internal_slist = struct{ F__next uintptr } /* thread-shared-types.h:88:9 */ - -// Lock elision support. - type __pthread_mutex_s = struct { F__lock int32 F__count uint32 @@ -14907,7 +15117,51 @@ type __pthread_mutex_s = struct { F__eelision int16 } } -} /* thread-shared-types.h:118:1 */ +} /* struct_mutex.h:22:1 */ + +// Arch-sepecific read-write lock definitions. A generic implementation is +// provided by struct_rwlock.h. If required, an architecture can override it +// by defining: +// +// 1. struct __pthread_rwlock_arch_t (used on pthread_rwlock_t definition). +// It should contain at least the internal members defined in the +// generic version. +// +// 2. The macro __PTHREAD_RWLOCK_INITIALIZER used for static initialization. +// It should initialize the rwlock internal type. + +// x86 internal rwlock struct definitions. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. +// +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +type __pthread_rwlock_arch_t = struct { + F__readers uint32 + F__writers uint32 + F__wrphase_futex uint32 + F__writers_futex uint32 + F__pad3 uint32 + F__pad4 uint32 + F__flags uint8 + F__shared uint8 + F__rwelision int8 + F__pad2 uint8 + F__cur_writer int32 +} /* struct_rwlock.h:23:1 */ // Common definition of pthread_cond_t. @@ -14919,7 +15173,7 @@ type __pthread_cond_s = struct { F__g1_orig_size uint32 F__wrefs uint32 F__g_signals [2]uint32 -} /* thread-shared-types.h:171:1 */ +} /* thread-shared-types.h:92:1 */ // Thread identifiers. The structure of the attribute type is not // exposed on purpose. @@ -15045,14 +15299,14 @@ type amatch_cursor1 = struct { type amatch_cursor = amatch_cursor1 /* amatch.c:173:30 */ type amatch_rule1 = struct { - FpNext uintptr - FzFrom uintptr - FrCost amatch_cost - FiLang amatch_langid - FnFrom amatch_len - FnTo amatch_len - FzTo [4]int8 - _ [2]byte + FpNext uintptr + FzFrom uintptr + FrCost amatch_cost + FiLang amatch_langid + FnFrom amatch_len + FnTo amatch_len + FzTo [4]int8 + F__ccgo_pad1 [2]byte } /* amatch.c:172:9 */ type amatch_rule = amatch_rule1 /* amatch.c:174:28 */ @@ -16344,12 +16598,12 @@ type carray_bind = carray_bind1 /* carray.c:78:28 */ // serve as the underlying representation of a cursor that scans // over rows of the result type carray_cursor1 = struct { - Fbase sqlite3_vtab_cursor - FiRowid sqlite3_int64 - FpPtr uintptr - FiCnt sqlite3_int64 - FeType uint8 - _ [3]byte + Fbase sqlite3_vtab_cursor + FiRowid sqlite3_int64 + FpPtr uintptr + FiCnt sqlite3_int64 + FeType uint8 + F__ccgo_pad1 [3]byte } /* carray.c:91:9 */ // carray_cursor is a subclass of sqlite3_vtab_cursor which will @@ -16649,7 +16903,7 @@ var carrayModule = sqlite3_module{ // xCreate func carrayBindDel(tls *libc.TLS, pPtr uintptr) { /* carray.c:391:13: */ var p uintptr = pPtr if (*carray_bind)(unsafe.Pointer(p)).FxDel != (uintptr(0)) { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((p + 12 /* &.xDel */))))(tls, (*carray_bind)(unsafe.Pointer(p)).FaData) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*carray_bind)(unsafe.Pointer(p)).FxDel})).f(tls, (*carray_bind)(unsafe.Pointer(p)).FaData) } sqlite3.Xsqlite3_free(tls, p) } @@ -16662,7 +16916,7 @@ func sqlite3_carray_bind(tls *libc.TLS, pStmt uintptr, idx int32, aData uintptr, pNew = sqlite3.Xsqlite3_malloc64(tls, uint64(unsafe.Sizeof(carray_bind{}))) if pNew == uintptr(0) { if (xDestroy != (uintptr(0))) && (xDestroy != (libc.UintptrFromInt32(-1))) { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDestroy)))(tls, aData) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDestroy})).f(tls, aData) } return SQLITE_NOMEM } @@ -16765,7 +17019,7 @@ func sqlite3_carray_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp return rc } -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -16780,11 +17034,11 @@ func sqlite3_carray_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -16799,7 +17053,7 @@ func sqlite3_carray_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -16943,7 +17197,9 @@ func cksmClose(tls *libc.TLS, pFile uintptr) int32 { /* cksumvfs.c:397:12: */ (*CksmFile)(unsafe.Pointer(p)).FpPartner = uintptr(0) } pFile = ((pFile) + uintptr(1)*16) - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 4 /* &.xClose */))))(tls, pFile) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxClose})).f(tls, pFile) } // Set the computeCkSm and verifyCksm flags, if they need to be @@ -16966,7 +17222,9 @@ func cksmRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst sqli var rc int32 var p uintptr = pFile pFile = ((pFile) + uintptr(1)*16) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 8 /* &.xRead */))))(tls, pFile, zBuf, iAmt, iOfst) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxRead})).f(tls, pFile, zBuf, iAmt, iOfst) if rc == SQLITE_OK { if ((iOfst == int64(0)) && (iAmt >= 100)) && ((libc.Xmemcmp(tls, zBuf, ts+3149 /* "SQLite format 3" */, uint32(16)) == 0) || (libc.Xmemcmp(tls, zBuf, ts+3966 /* "ZV-" */, uint32(3)) == 0)) { var d uintptr = zBuf @@ -17014,44 +17272,58 @@ func cksmWrite(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst sql !(int32((*CksmFile)(unsafe.Pointer(p)).FinCkpt) != 0) { cksmCompute(tls, zBuf, (iAmt - 8), (((zBuf) + uintptr(iAmt)) - uintptr(8))) } - return (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 12 /* &.xWrite */))))(tls, pFile, zBuf, iAmt, iOfst) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxWrite})).f(tls, pFile, zBuf, iAmt, iOfst) } // Truncate a cksm-file. func cksmTruncate(tls *libc.TLS, pFile uintptr, size sqlite_int64) int32 { /* cksumvfs.c:502:12: */ pFile = ((pFile) + uintptr(1)*16) - return (*(*func(*libc.TLS, uintptr, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 16 /* &.xTruncate */))))(tls, pFile, size) + return (*struct { + f func(*libc.TLS, uintptr, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxTruncate})).f(tls, pFile, size) } // Sync a cksm-file. func cksmSync(tls *libc.TLS, pFile uintptr, flags int32) int32 { /* cksumvfs.c:510:12: */ pFile = ((pFile) + uintptr(1)*16) - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 20 /* &.xSync */))))(tls, pFile, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxSync})).f(tls, pFile, flags) } // Return the current file-size of a cksm-file. func cksmFileSize(tls *libc.TLS, pFile uintptr, pSize uintptr) int32 { /* cksumvfs.c:518:12: */ var p uintptr = pFile pFile = ((p) + uintptr(1)*16) - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 24 /* &.xFileSize */))))(tls, pFile, pSize) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxFileSize})).f(tls, pFile, pSize) } // Lock a cksm-file. func cksmLock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* cksumvfs.c:527:12: */ pFile = ((pFile) + uintptr(1)*16) - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 28 /* &.xLock */))))(tls, pFile, eLock) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxLock})).f(tls, pFile, eLock) } // Unlock a cksm-file. func cksmUnlock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* cksumvfs.c:535:12: */ pFile = ((pFile) + uintptr(1)*16) - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 32 /* &.xUnlock */))))(tls, pFile, eLock) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxUnlock})).f(tls, pFile, eLock) } // Check if another file-handle holds a RESERVED lock on a cksm-file. func cksmCheckReservedLock(tls *libc.TLS, pFile uintptr, pResOut uintptr) int32 { /* cksumvfs.c:543:12: */ pFile = ((pFile) + uintptr(1)*16) - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 36 /* &.xCheckReservedLock */))))(tls, pFile, pResOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxCheckReservedLock})).f(tls, pFile, pResOut) } // File control method. For custom operations on a cksm-file. @@ -17105,7 +17377,9 @@ func cksmFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int32 *(*uintptr)(unsafe.Pointer(ppFile)) = p return SQLITE_OK } - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 40 /* &.xFileControl */))))(tls, pFile, op, pArg) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxFileControl})).f(tls, pFile, op, pArg) if (rc == SQLITE_OK) && (op == SQLITE_FCNTL_VFSNAME) { *(*uintptr)(unsafe.Pointer(pArg)) = sqlite3.Xsqlite3_mprintf(tls, ts+4052 /* "cksm/%z" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(pArg)))) } @@ -17115,37 +17389,47 @@ func cksmFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int32 // Return the sector-size in bytes for a cksm-file. func cksmSectorSize(tls *libc.TLS, pFile uintptr) int32 { /* cksumvfs.c:605:12: */ pFile = ((pFile) + uintptr(1)*16) - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 44 /* &.xSectorSize */))))(tls, pFile) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxSectorSize})).f(tls, pFile) } // Return the device characteristic flags supported by a cksm-file. func cksmDeviceCharacteristics(tls *libc.TLS, pFile uintptr) int32 { /* cksumvfs.c:613:12: */ pFile = ((pFile) + uintptr(1)*16) - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 48 /* &.xDeviceCharacteristics */))))(tls, pFile) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxDeviceCharacteristics})).f(tls, pFile) } // Create a shared memory file mapping func cksmShmMap(tls *libc.TLS, pFile uintptr, iPg int32, pgsz int32, bExtend int32, pp uintptr) int32 { /* cksumvfs.c:619:12: */ pFile = ((pFile) + uintptr(1)*16) - return (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 52 /* &.xShmMap */))))(tls, pFile, iPg, pgsz, bExtend, libc.AtomicLoadUintptr(&pp)) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxShmMap})).f(tls, pFile, iPg, pgsz, bExtend, pp) } // Perform locking on a shared-memory segment func cksmShmLock(tls *libc.TLS, pFile uintptr, offset int32, n int32, flags int32) int32 { /* cksumvfs.c:631:12: */ pFile = ((pFile) + uintptr(1)*16) - return (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 56 /* &.xShmLock */))))(tls, pFile, offset, n, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxShmLock})).f(tls, pFile, offset, n, flags) } // Memory barrier operation on shared memory func cksmShmBarrier(tls *libc.TLS, pFile uintptr) { /* cksumvfs.c:637:13: */ pFile = ((pFile) + uintptr(1)*16) - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 60 /* &.xShmBarrier */))))(tls, pFile) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxShmBarrier})).f(tls, pFile) } // Unmap a shared memory segment func cksmShmUnmap(tls *libc.TLS, pFile uintptr, deleteFlag int32) int32 { /* cksumvfs.c:643:12: */ pFile = ((pFile) + uintptr(1)*16) - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 64 /* &.xShmUnmap */))))(tls, pFile, deleteFlag) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxShmUnmap})).f(tls, pFile, deleteFlag) } // Fetch a page of a memory-mapped file @@ -17157,7 +17441,9 @@ func cksmFetch(tls *libc.TLS, pFile uintptr, iOfst sqlite3_int64, iAmt int32, pp } pFile = ((pFile) + uintptr(1)*16) if ((*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FiVersion > 2) && ((*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxFetch != 0) { - return (*(*func(*libc.TLS, uintptr, sqlite3_int64, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 68 /* &.xFetch */))))(tls, pFile, iOfst, iAmt, pp) + return (*struct { + f func(*libc.TLS, uintptr, sqlite3_int64, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxFetch})).f(tls, pFile, iOfst, iAmt, pp) } *(*uintptr)(unsafe.Pointer(pp)) = uintptr(0) return SQLITE_OK @@ -17167,7 +17453,9 @@ func cksmFetch(tls *libc.TLS, pFile uintptr, iOfst sqlite3_int64, iAmt int32, pp func cksmUnfetch(tls *libc.TLS, pFile uintptr, iOfst sqlite3_int64, pPage uintptr) int32 { /* cksumvfs.c:669:12: */ pFile = ((pFile) + uintptr(1)*16) if ((*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FiVersion > 2) && ((*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxUnfetch != 0) { - return (*(*func(*libc.TLS, uintptr, sqlite3_int64, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods + 72 /* &.xUnfetch */))))(tls, pFile, iOfst, pPage) + return (*struct { + f func(*libc.TLS, uintptr, sqlite3_int64, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods)).FxUnfetch})).f(tls, pFile, iOfst, pPage) } return SQLITE_OK } @@ -17187,14 +17475,18 @@ func cksmOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pFile uintptr, flags i if !((flags & (SQLITE_OPEN_MAIN_DB | SQLITE_OPEN_WAL)) == 0) { goto __1 } - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSubVfs + 24 /* &.xOpen */))))(tls, pSubVfs, zName, pFile, flags, pOutFlags) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pSubVfs)).FxOpen})).f(tls, pSubVfs, zName, pFile, flags, pOutFlags) __1: ; p = pFile libc.Xmemset(tls, p, 0, uint32(unsafe.Sizeof(CksmFile{}))) pSubFile = ((pFile) + uintptr(1)*16) (*sqlite3_file)(unsafe.Pointer(pFile)).FpMethods = uintptr(unsafe.Pointer(&cksm_io_methods)) - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSubVfs + 24 /* &.xOpen */))))(tls, pSubVfs, zName, pSubFile, flags, pOutFlags) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pSubVfs)).FxOpen})).f(tls, pSubVfs, zName, pSubFile, flags, pOutFlags) if !(rc != 0) { goto __2 } @@ -17205,7 +17497,9 @@ __2: goto __3 } *(*uintptr)(unsafe.Pointer(bp /* pDb */)) = sqlite3.Xsqlite3_database_file_object(tls, zName) - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pDb */)))).FpMethods + 40 /* &.xFileControl */))))(tls, *(*uintptr)(unsafe.Pointer(bp /* pDb */)), SQLITE_FCNTL_CKSM_FILE, bp /* &pDb */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pDb */)))).FpMethods)).FxFileControl})).f(tls, *(*uintptr)(unsafe.Pointer(bp /* pDb */)), SQLITE_FCNTL_CKSM_FILE, bp /* &pDb */) (*CksmFile)(unsafe.Pointer(p)).FpPartner = *(*uintptr)(unsafe.Pointer(bp /* pDb */)) @@ -17231,47 +17525,69 @@ __5: // All other VFS methods are pass-thrus. func cksmDelete(tls *libc.TLS, pVfs uintptr, zPath uintptr, dirSync int32) int32 { /* cksumvfs.c:723:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 28 /* &.xDelete */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath, dirSync) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDelete})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath, dirSync) } func cksmAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResOut uintptr) int32 { /* cksumvfs.c:726:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 32 /* &.xAccess */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath, flags, pResOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxAccess})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath, flags, pResOut) } func cksmFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zOut uintptr) int32 { /* cksumvfs.c:734:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 36 /* &.xFullPathname */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath, nOut, zOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxFullPathname})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath, nOut, zOut) } func cksmDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* cksumvfs.c:742:13: */ - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 40 /* &.xDlOpen */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlOpen})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath) } func cksmDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zErrMsg uintptr) { /* cksumvfs.c:745:13: */ - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 44 /* &.xDlError */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zErrMsg) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlError})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zErrMsg) } func cksmDlSym(tls *libc.TLS, pVfs uintptr, p uintptr, zSym uintptr) uintptr { /* cksumvfs.c:748:13: */ - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 48 /* &.xDlSym */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, p, zSym) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlSym})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, p, zSym) } func cksmDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* cksumvfs.c:751:13: */ - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 52 /* &.xDlClose */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, pHandle) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlClose})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, pHandle) } func cksmRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* cksumvfs.c:754:12: */ - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 56 /* &.xRandomness */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zBufOut) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxRandomness})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zBufOut) } func cksmSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* cksumvfs.c:757:12: */ - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 60 /* &.xSleep */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nMicro) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxSleep})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nMicro) } func cksmCurrentTime(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) int32 { /* cksumvfs.c:760:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 64 /* &.xCurrentTime */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, pTimeOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxCurrentTime})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, pTimeOut) } func cksmGetLastError(tls *libc.TLS, pVfs uintptr, a int32, b uintptr) int32 { /* cksumvfs.c:763:12: */ - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 68 /* &.xGetLastError */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, a, b) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxGetLastError})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, a, b) } func cksmCurrentTimeInt64(tls *libc.TLS, pVfs uintptr, p uintptr) int32 { /* cksumvfs.c:766:12: */ @@ -17282,26 +17598,36 @@ func cksmCurrentTimeInt64(tls *libc.TLS, pVfs uintptr, p uintptr) int32 { /* cks var rc int32 if (*sqlite3_vfs)(unsafe.Pointer(pOrig)).FxCurrentTimeInt64 != 0 { - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pOrig + 72 /* &.xCurrentTimeInt64 */))))(tls, pOrig, p) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrig)).FxCurrentTimeInt64})).f(tls, pOrig, p) } else { // var r float64 at bp, 8 - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pOrig + 64 /* &.xCurrentTime */))))(tls, pOrig, bp /* &r */) - *(*sqlite3_int64)(unsafe.Pointer(p)) = (sqlite3_int64(*(*float64)(unsafe.Pointer(bp /* r */)) * 86400000.0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrig)).FxCurrentTime})).f(tls, pOrig, bp /* &r */) + *(*sqlite3_int64)(unsafe.Pointer(p)) = (libc.Int64FromFloat64(*(*float64)(unsafe.Pointer(bp /* r */)) * 86400000.0)) } return rc } func cksmSetSystemCall(tls *libc.TLS, pVfs uintptr, zName uintptr, pCall sqlite3_syscall_ptr) int32 { /* cksumvfs.c:779:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 76 /* &.xSetSystemCall */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName, pCall) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxSetSystemCall})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName, pCall) } func cksmGetSystemCall(tls *libc.TLS, pVfs uintptr, zName uintptr) sqlite3_syscall_ptr { /* cksumvfs.c:786:28: */ - return (*(*func(*libc.TLS, uintptr, uintptr) sqlite3_syscall_ptr)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 80 /* &.xGetSystemCall */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) sqlite3_syscall_ptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxGetSystemCall})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName) } func cksmNextSystemCall(tls *libc.TLS, pVfs uintptr, zName uintptr) uintptr { /* cksumvfs.c:792:19: */ - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 84 /* &.xNextSystemCall */))))(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxNextSystemCall})).f(tls, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName) } // Register the verify_checksum() SQL function. @@ -17591,7 +17917,7 @@ func closureAvlDestroy(tls *libc.TLS, p uintptr, xDestroy uintptr) { /* closure. if p != 0 { closureAvlDestroy(tls, (*closure_avl)(unsafe.Pointer(p)).FpBefore, xDestroy) closureAvlDestroy(tls, (*closure_avl)(unsafe.Pointer(p)).FpAfter, xDestroy) - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDestroy)))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDestroy})).f(tls, p) } } @@ -19258,7 +19584,7 @@ func sqlite3_csv_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintptr) } // Floating-point inline functions for stdlib.h. -// Copyright (C) 2012-2018 Free Software Foundation, Inc. +// Copyright (C) 2012-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -19273,7 +19599,7 @@ func sqlite3_csv_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintptr) // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Define some macros helping to catch buffer overflows. @@ -19292,7 +19618,7 @@ type Decimal1 = struct { } /* decimal.c:32:9 */ // Floating-point inline functions for stdlib.h. -// Copyright (C) 2012-2018 Free Software Foundation, Inc. +// Copyright (C) 2012-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -19307,7 +19633,7 @@ type Decimal1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Define some macros helping to catch buffer overflows. @@ -20451,7 +20777,7 @@ func sqlite3_explain_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uint return rc } -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20466,11 +20792,11 @@ func sqlite3_explain_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uint // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 6.5 File Control Operations -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20485,13 +20811,13 @@ func sqlite3_explain_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uint // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // This must be early so can define types winningly. // Get __mode_t, __dev_t and __off_t . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20506,14 +20832,14 @@ func sqlite3_explain_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uint // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // Get the definitions of O_*, F_*, FD_*: all the // numbers and flag bits for `open', `fcntl', et al. // O_*, F_*, FD_* bit values for Linux/x86. -// Copyright (C) 2001-2018 Free Software Foundation, Inc. +// Copyright (C) 2001-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20528,7 +20854,7 @@ func sqlite3_explain_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uint // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . type flock = struct { Fl_type int16 @@ -20540,7 +20866,7 @@ type flock = struct { // Define some inlines helping to catch common problems. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20555,11 +20881,11 @@ type flock = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 2.10 Symbolic Constants -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20574,7 +20900,7 @@ type flock = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // These may be used to determine what facilities are present at compile time. // Their values can be obtained at run time from `sysconf'. @@ -20700,7 +21026,7 @@ type flock = struct { // // Define POSIX options for Linux. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20715,13 +21041,16 @@ type flock = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; see the file COPYING.LIB. If -// not, see . +// not, see . // Job control is supported. // Processes have a saved set-user-ID and a saved set-group-ID. -// Priority scheduling is supported. +// Priority scheduling is not supported with the correct semantics, +// but GNU/Linux applications expect that the corresponding interfaces +// are available, even though the semantics do not meet the POSIX +// requirements. See glibc bug 14829. // Synchronizing file data is supported. @@ -20824,7 +21153,7 @@ type flock = struct { // Typed memory objects are not available. // Get the environment definitions from Unix98. -// Copyright (C) 1999-2018 Free Software Foundation, Inc. +// Copyright (C) 1999-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20839,7 +21168,7 @@ type flock = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Determine the wordsize from the preprocessor defines. @@ -20883,7 +21212,7 @@ type flock = struct { // All functions that are not declared anywhere else. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20898,11 +21227,11 @@ type flock = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -20934,15 +21263,6 @@ type flock = struct { // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -20977,11 +21297,6 @@ type flock = struct { // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // The Single Unix specification says that some more types are @@ -20995,7 +21310,9 @@ type socklen_t = uint32 /* unistd.h:274:21 */ // Define some macros helping to catch buffer overflows. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// System-specific extensions. +// System-specific extensions of , Linux version. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21010,11 +21327,28 @@ type socklen_t = uint32 /* unistd.h:274:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . + +// Copyright (C) 1991-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . // POSIX Standard: 5.1.2 Directory Operations -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21029,10 +21363,10 @@ type socklen_t = uint32 /* unistd.h:274:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21047,7 +21381,7 @@ type socklen_t = uint32 /* unistd.h:274:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -21066,7 +21400,7 @@ type socklen_t = uint32 /* unistd.h:274:21 */ // member that gives the type of the file. // -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21081,18 +21415,18 @@ type socklen_t = uint32 /* unistd.h:274:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . type dirent = struct { - Fd_ino uint64 - Fd_off int64 - Fd_reclen uint16 - Fd_type uint8 - Fd_name [256]int8 - _ [1]byte + Fd_ino uint64 + Fd_off int64 + Fd_reclen uint16 + Fd_type uint8 + Fd_name [256]int8 + F__ccgo_pad1 [1]byte } /* dirent.h:22:1 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21107,9 +21441,9 @@ type dirent = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21124,10 +21458,10 @@ type dirent = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21142,12 +21476,12 @@ type dirent = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // `fd_set' type and related macros, and `select'/`pselect' declarations. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21162,7 +21496,7 @@ type dirent = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX 1003.1g: 6.2 Select from File Descriptor Sets @@ -21184,12 +21518,12 @@ type itimerval = struct { Ftv_sec int32 Ftv_usec int32 } -} /* time.h:104:1 */ +} /* time.h:105:1 */ // Convenience macros for operations on timevals. // NOTE: `timercmp' does not work for >= or <=. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21204,11 +21538,11 @@ type itimerval = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.23 Date and time -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21223,9 +21557,9 @@ type itimerval = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -21257,15 +21591,6 @@ type itimerval = struct { // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -21300,17 +21625,12 @@ type itimerval = struct { // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // This defines CLOCKS_PER_SEC, which is the number of processor clock // ticks per second, and possibly a number of other constants. // System-dependent timing definitions. Linux version. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21325,12 +21645,12 @@ type itimerval = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21345,7 +21665,7 @@ type itimerval = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -21374,7 +21694,7 @@ type itimerval = struct { // may also need to be defined by other headers. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21389,7 +21709,7 @@ type itimerval = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -21411,7 +21731,7 @@ type tm = struct { // NB: Include guard matches what uses. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21426,7 +21746,7 @@ type tm = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -21771,21 +22091,21 @@ type fsdir_cursor1 = struct { FzBase uintptr FnBase int32 FsStat struct { - Fst_dev uint64 - F__pad1 uint16 - _ [2]byte - F__st_ino uint32 - Fst_mode uint32 - Fst_nlink uint32 - Fst_uid uint32 - Fst_gid uint32 - Fst_rdev uint64 - F__pad2 uint16 - _ [2]byte - Fst_size int64 - Fst_blksize int32 - Fst_blocks int64 - Fst_atim struct { + Fst_dev uint64 + F__pad1 uint16 + F__ccgo_pad1 [2]byte + F__st_ino uint32 + Fst_mode uint32 + Fst_nlink uint32 + Fst_uid uint32 + Fst_gid uint32 + Fst_rdev uint64 + F__pad2 uint16 + F__ccgo_pad2 [2]byte + Fst_size int64 + Fst_blksize int32 + Fst_blocks int64 + Fst_atim struct { Ftv_sec int32 Ftv_nsec int32 } @@ -22280,27 +22600,27 @@ type fuzzer_cursor1 = struct { type fuzzer_cursor = fuzzer_cursor1 /* fuzzer.c:163:30 */ type fuzzer_rule1 = struct { - FpNext uintptr - FzFrom uintptr - FrCost fuzzer_cost - FnFrom fuzzer_len - FnTo fuzzer_len - _ [2]byte - FiRuleset fuzzer_ruleid - FzTo [4]int8 + FpNext uintptr + FzFrom uintptr + FrCost fuzzer_cost + FnFrom fuzzer_len + FnTo fuzzer_len + F__ccgo_pad1 [2]byte + FiRuleset fuzzer_ruleid + FzTo [4]int8 } /* fuzzer.c:162:9 */ type fuzzer_rule = fuzzer_rule1 /* fuzzer.c:164:28 */ type fuzzer_stem1 = struct { - FzBasis uintptr - FpRule uintptr - FpNext uintptr - FpHash uintptr - FrBaseCost fuzzer_cost - FrCostX fuzzer_cost - FnBasis fuzzer_len - Fn fuzzer_len - _ [2]byte + FzBasis uintptr + FpRule uintptr + FpNext uintptr + FpHash uintptr + FrBaseCost fuzzer_cost + FrCostX fuzzer_cost + FnBasis fuzzer_len + Fn fuzzer_len + F__ccgo_pad1 [2]byte } /* fuzzer.c:163:9 */ type fuzzer_stem = fuzzer_stem1 /* fuzzer.c:166:28 */ @@ -23482,7 +23802,9 @@ func sqlite3_mmap_warm(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* mmapwa for 1 != 0 { // var pMap uintptr at bp+72, 4 - rc = (*(*func(*libc.TLS, uintptr, sqlite3_int64, int32, uintptr) int32)(unsafe.Pointer((p + 68 /* &.xFetch */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 68 /* pFd */)), (sqlite3_int64(pgsz) * iPg), pgsz, bp+72 /* &pMap */) + rc = (*struct { + f func(*libc.TLS, uintptr, sqlite3_int64, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer(p)).FxFetch})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 68 /* pFd */)), (sqlite3_int64(pgsz) * iPg), pgsz, bp+72 /* &pMap */) if (rc != SQLITE_OK) || (*(*uintptr)(unsafe.Pointer(bp + 72 /* pMap */)) == uintptr(0)) { break } @@ -23490,7 +23812,9 @@ func sqlite3_mmap_warm(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* mmapwa nTotal = nTotal + (int32(*(*uint8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 72 /* pMap */)))))) nTotal = nTotal + (int32(*(*uint8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 72 /* pMap */)) + uintptr((pgsz - 1)))))) - rc = (*(*func(*libc.TLS, uintptr, sqlite3_int64, uintptr) int32)(unsafe.Pointer((p + 72 /* &.xUnfetch */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 68 /* pFd */)), (sqlite3_int64(pgsz) * iPg), *(*uintptr)(unsafe.Pointer(bp + 72 /* pMap */))) + rc = (*struct { + f func(*libc.TLS, uintptr, sqlite3_int64, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer(p)).FxUnfetch})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 68 /* pFd */)), (sqlite3_int64(pgsz) * iPg), *(*uintptr)(unsafe.Pointer(bp + 72 /* pMap */))) if rc != SQLITE_OK { break } @@ -24400,7 +24724,7 @@ func sqlite3_normalize(tls *libc.TLS, zSql uintptr) uintptr { /* normalize.c:555 // line and show the result on standard output. // Floating-point inline functions for stdlib.h. -// Copyright (C) 2012-2018 Free Software Foundation, Inc. +// Copyright (C) 2012-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -24415,7 +24739,7 @@ func sqlite3_normalize(tls *libc.TLS, zSql uintptr) uintptr { /* normalize.c:555 // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Define some macros helping to catch buffer overflows. @@ -24430,7 +24754,7 @@ type Percentile1 = struct { } /* percentile.c:71:9 */ // Floating-point inline functions for stdlib.h. -// Copyright (C) 2012-2018 Free Software Foundation, Inc. +// Copyright (C) 2012-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -24445,7 +24769,7 @@ type Percentile1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Define some macros helping to catch buffer overflows. @@ -24606,7 +24930,7 @@ func sqlite3_percentile_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi u return rc } -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -24621,11 +24945,11 @@ func sqlite3_percentile_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi u // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -24640,7 +24964,7 @@ func sqlite3_percentile_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi u // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -24657,7 +24981,7 @@ func sqlite3_percentile_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi u // underlying representation of the virtual table type prefixes_vtab1 = struct{ Fbase sqlite3_vtab } /* prefixes.c:33:9 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -24672,11 +24996,11 @@ type prefixes_vtab1 = struct{ Fbase sqlite3_vtab } /* prefixes.c:33:9 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -24691,7 +25015,7 @@ type prefixes_vtab1 = struct{ Fbase sqlite3_vtab } /* prefixes.c:33:9 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -25194,7 +25518,9 @@ __8: goto __9 } cPrev = c - c = int32((*(*func(*libc.TLS, uintptr) uint32)(unsafe.Pointer((pRe + 24 /* &.xNextChar */))))(tls, bp+216 /* &in */)) + c = int32((*struct { + f func(*libc.TLS, uintptr) uint32 + })(unsafe.Pointer(&struct{ uintptr }{(*ReCompiled)(unsafe.Pointer(pRe)).FxNextChar})).f(tls, bp+216 /* &in */)) pThis = pNext pNext = (bp /* &aStateSet */ + uintptr(iSwap)*8) iSwap = (uint32(1) - iSwap) @@ -25594,7 +25920,9 @@ func re_subcompile_string(tls *libc.TLS, p uintptr) uintptr { /* regexp.c:477:19 var iStart int32 var c uint32 var zErr uintptr - for (libc.AssignUint32(&c, (*(*func(*libc.TLS, uintptr) uint32)(unsafe.Pointer((p + 24 /* &.xNextChar */))))(tls, (p /* &.sIn */)))) != uint32(0) { + for (libc.AssignUint32(&c, (*struct { + f func(*libc.TLS, uintptr) uint32 + })(unsafe.Pointer(&struct{ uintptr }{(*ReCompiled)(unsafe.Pointer(p)).FxNextChar})).f(tls, (p /* &.sIn */)))) != uint32(0) { iStart = int32((*ReCompiled)(unsafe.Pointer(p)).FnState) switch c { case uint32('|'): @@ -25719,7 +26047,9 @@ func re_subcompile_string(tls *libc.TLS, p uintptr) uintptr { /* regexp.c:477:19 } else { re_append(tls, p, RE_OP_CC_INC, 0) } - for (libc.AssignUint32(&c, (*(*func(*libc.TLS, uintptr) uint32)(unsafe.Pointer((p + 24 /* &.xNextChar */))))(tls, (p /* &.sIn */)))) != uint32(0) { + for (libc.AssignUint32(&c, (*struct { + f func(*libc.TLS, uintptr) uint32 + })(unsafe.Pointer(&struct{ uintptr }{(*ReCompiled)(unsafe.Pointer(p)).FxNextChar})).f(tls, (p /* &.sIn */)))) != uint32(0) { if (c == uint32('[')) && (int32(rePeek(tls, p)) == ':') { return ts + 6261 /* "POSIX character ..." */ } @@ -25729,7 +26059,9 @@ func re_subcompile_string(tls *libc.TLS, p uintptr) uintptr { /* regexp.c:477:19 if int32(rePeek(tls, p)) == '-' { re_append(tls, p, RE_OP_CC_RANGE, int32(c)) (*ReCompiled)(unsafe.Pointer(p)).FsIn.Fi++ - c = (*(*func(*libc.TLS, uintptr) uint32)(unsafe.Pointer((p + 24 /* &.xNextChar */))))(tls, (p /* &.sIn */)) + c = (*struct { + f func(*libc.TLS, uintptr) uint32 + })(unsafe.Pointer(&struct{ uintptr }{(*ReCompiled)(unsafe.Pointer(p)).FxNextChar})).f(tls, (p /* &.sIn */)) if c == uint32('\\') { c = re_esc_char(tls, p) } @@ -25978,7 +26310,7 @@ func sqlite3_regexp_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // This case when the file is being statically linked into the // application -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -25993,11 +26325,11 @@ func sqlite3_regexp_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -26012,7 +26344,7 @@ func sqlite3_regexp_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // These are defined by the user (or the compiler) // to specify the desired environment: @@ -26020,6 +26352,7 @@ func sqlite3_regexp_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // __STRICT_ANSI__ ISO Standard C. // _ISOC99_SOURCE Extensions to ISO C89 from ISO C99. // _ISOC11_SOURCE Extensions to ISO C99 from ISO C11. +// _ISOC2X_SOURCE Extensions to ISO C99 from ISO C2X. // __STDC_WANT_LIB_EXT2__ // Extensions to ISO C99 from TR 27431-2:2010. // __STDC_WANT_IEC_60559_BFP_EXT__ @@ -26140,6 +26473,8 @@ func sqlite3_regexp_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // If nothing (other than _GNU_SOURCE and _DEFAULT_SOURCE) is defined, // define _DEFAULT_SOURCE. +// This is to enable the ISO C2X extension. + // This is to enable the ISO C11 extension. // This is to enable the ISO C99 extension. @@ -26162,9 +26497,22 @@ func sqlite3_regexp_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // compatibility with various implementations of , this test // must consider only the value of __cplusplus when compiling C++. +// GNU formerly extended the scanf functions with modified format +// specifiers %as, %aS, and %a[...] that allocate a buffer for the +// input using malloc. This extension conflicts with ISO C99, which +// defines %a as a standalone format specifier that reads a floating- +// point number; moreover, POSIX.1-2008 provides the same feature +// using the modifier letter 'm' instead (%ms, %mS, %m[...]). +// +// We now follow C99 unless GNU extensions are active and the compiler +// is specifically in C89 or C++98 mode (strict or not). For +// instance, with GCC, -std=gnu11 will have C99-compliant scanf with +// or without -D_GNU_SOURCE, but -std=c89 -D_GNU_SOURCE will have the +// old extension. + // Get definitions of __STDC_* predefined macros, if the compiler has // not preincluded this header automatically. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -26179,7 +26527,7 @@ func sqlite3_regexp_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // This macro indicates that the installed library is the GNU C Library. // For historic reasons the value now is 6 and this will stay from now @@ -26192,7 +26540,7 @@ func sqlite3_regexp_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // these macros to test for features in specific releases. // This is here only because every header file already includes this one. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -26207,7 +26555,7 @@ func sqlite3_regexp_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // We are almost always included from features.h. @@ -26322,7 +26670,7 @@ func sqlite3_regexp_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // semantics. // // clang++ identifies itself as gcc-4.2, but has support for GNU inlining -// semantics, that can be checked fot by using the __GNUC_STDC_INLINE_ and +// semantics, that can be checked for by using the __GNUC_STDC_INLINE_ and // __GNUC_GNU_INLINE__ macro definitions. // GCC 4.3 and above allow passing all anonymous arguments of an @@ -26343,10 +26691,14 @@ func sqlite3_regexp_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // argument to strncpy and strncat, as the char array is not necessarily // a NUL-terminated string. +// Undefine (also defined in libc-symbols.h). +// Copies attributes from the declaration or type referenced by +// the argument. + // Determine the wordsize from the preprocessor defines. // Properties of long double type. ldbl-96 version. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -26361,7 +26713,7 @@ func sqlite3_regexp_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // long double is distinct from double, so there is nothing to // define here. @@ -30714,7 +31066,7 @@ func sqlite3_totype_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp } // Floating-point inline functions for stdlib.h. -// Copyright (C) 2012-2018 Free Software Foundation, Inc. +// Copyright (C) 2012-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -30729,7 +31081,7 @@ func sqlite3_totype_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintp // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Define some macros helping to catch buffer overflows. @@ -30751,7 +31103,7 @@ type UnionCsr1 = struct { } /* unionvtab.c:181:9 */ // Floating-point inline functions for stdlib.h. -// Copyright (C) 2012-2018 Free Software Foundation, Inc. +// Copyright (C) 2012-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -30766,7 +31118,7 @@ type UnionCsr1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Define some macros helping to catch buffer overflows. @@ -32133,11 +32485,6 @@ func sqlite3_wholenumber_init(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi return rc } -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Offset of member MEMBER in a struct of type TYPE. @@ -32149,7 +32496,7 @@ type max_align_t = struct { F__max_align_ll int64 F__max_align_ld float64 F__max_align_f128 float64 -} /* stddef.h:437:3 */ +} /* stddef.h:426:3 */ type z_size_t = size_t /* zconf.h:248:21 */ @@ -32194,7 +32541,7 @@ type voidpc = uintptr /* zconf.h:408:23 */ type voidpf = uintptr /* zconf.h:409:23 */ type voidp = uintptr /* zconf.h:410:23 */ -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -32229,7 +32576,7 @@ type voidp = uintptr /* zconf.h:410:23 */ // If fixincludes fixes it, then the fixed version is installed // instead of this text. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -32244,12 +32591,12 @@ type voidp = uintptr /* zconf.h:410:23 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.10/5.2.4.2.1 Sizes of integer types // Handle feature test macros at the start of a header. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -32264,7 +32611,7 @@ type voidp = uintptr /* zconf.h:410:23 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // This header is internal to glibc and should not be included outside // of glibc headers. Headers including it must define @@ -32274,7 +32621,7 @@ type voidp = uintptr /* zconf.h:410:23 */ // header is included, not when the first system header is // included. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -32289,16 +32636,20 @@ type voidp = uintptr /* zconf.h:410:23 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO/IEC TR 24731-2:2010 defines the __STDC_WANT_LIB_EXT2__ // macro. // ISO/IEC TS 18661-1:2014 defines the __STDC_WANT_IEC_60559_BFP_EXT__ -// macro. +// macro. Most but not all symbols enabled by that macro in TS +// 18661-1 are enabled unconditionally in C2X; the symbols in Annex F +// still require that macro in C2X. // ISO/IEC TS 18661-4:2015 defines the -// __STDC_WANT_IEC_60559_FUNCS_EXT__ macro. +// __STDC_WANT_IEC_60559_FUNCS_EXT__ macro. Other than the reduction +// functions, the symbols from this TS are enabled unconditionally in +// C2X. // ISO/IEC TS 18661-3:2015 defines the // __STDC_WANT_IEC_60559_TYPES_EXT__ macro. @@ -32325,7 +32676,7 @@ type voidp = uintptr /* zconf.h:410:23 */ // __STDC_WANT_IEC_60559_BFP_EXT__ is used to enable this feature. // POSIX adds things to . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -32340,7 +32691,7 @@ type voidp = uintptr /* zconf.h:410:23 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 2.9.2 Minimum Values Added to // @@ -32416,7 +32767,7 @@ type voidp = uintptr /* zconf.h:410:23 */ // Get the implementation-specific values for the above. // Minimum guaranteed maximum values for system limits. Linux version. -// Copyright (C) 1993-2018 Free Software Foundation, Inc. +// Copyright (C) 1993-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -32431,7 +32782,7 @@ type voidp = uintptr /* zconf.h:410:23 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; see the file COPYING.LIB. If -// not, see . +// not, see . // The kernel header pollutes the namespace with the NR_OPEN symbol // and defines LINK_MAX although filesystems have different maxima. A @@ -32480,7 +32831,7 @@ type voidp = uintptr /* zconf.h:410:23 */ // This value is a guaranteed minimum maximum. // The current maximum can be got from `sysconf'. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -32495,7 +32846,7 @@ type voidp = uintptr /* zconf.h:410:23 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; include instead. @@ -32527,7 +32878,7 @@ type voidp = uintptr /* zconf.h:410:23 */ // This value is defined like this in regex.h. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -32584,6 +32935,25 @@ type z_crc_t = uint32 /* zconf.h:429:17 */ // Define some macros helping to catch buffer overflows. +// System-specific extensions. +// System-specific extensions of , Linux version. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + // MVS linker does not support external names larger than 8 bytes // @@ -32917,7 +33287,7 @@ type ZipfileCDS1 = struct { FnComment u16 FiDiskStart u16 FiInternalAttr u16 - _ [2]byte + F__ccgo_pad1 [2]byte FiExternalAttr u32 FiOffset u32 FzFile uintptr @@ -32966,7 +33336,7 @@ type ZipfileLFH1 = struct { FiCompression u16 FmTime u16 FmDate u16 - _ [2]byte + F__ccgo_pad1 [2]byte Fcrc32 u32 FszCompressed u32 FszUncompressed u32 @@ -33003,17 +33373,17 @@ type ZipfileEntry = ZipfileEntry1 /* zipfile.c:251:29 */ // Cursor type for zipfile tables. type ZipfileCsr1 = struct { - Fbase sqlite3_vtab_cursor - FiId i64 - FbEof u8 - FbNoop u8 - _ [2]byte - FpFile uintptr - FiNextOff i64 - Feocd ZipfileEOCD - FpFreeEntry uintptr - FpCurrent uintptr - FpCsrNext uintptr + Fbase sqlite3_vtab_cursor + FiId i64 + FbEof u8 + FbNoop u8 + F__ccgo_pad1 [2]byte + FpFile uintptr + FiNextOff i64 + Feocd ZipfileEOCD + FpFreeEntry uintptr + FpCurrent uintptr + FpCsrNext uintptr } /* zipfile.c:264:9 */ // Cursor type for zipfile tables. @@ -33428,7 +33798,7 @@ func zipfileMtime(tls *libc.TLS, pCDS uintptr) u32 { /* zipfile.c:722:12: */ X2 = ((306001 * (M + 1)) / 10000) A = (Y / 100) B = ((2 - A) + (A / 4)) - JDsec = ((((i64(((float64(((X1 + X2) + D) + B)) - 1524.5) * float64(86400))) + (i64(hr * 3600))) + (i64(min * 60))) + i64(sec)) + JDsec = ((((libc.Int64FromFloat64(((float64(((X1 + X2) + D) + B)) - 1524.5) * float64(86400))) + (i64(hr * 3600))) + (i64(min * 60))) + i64(sec)) return (u32(JDsec - (int64(24405875) * int64(8640)))) } @@ -33450,14 +33820,14 @@ func zipfileMtimeToDos(tls *libc.TLS, pCds uintptr, mUnixTime u32) { /* zipfile. var min int32 var sec int32 - A = (int32((float64(JD) - 1867216.25) / 36524.25)) + A = (libc.Int32FromFloat64((float64(JD) - 1867216.25) / 36524.25)) A = (int32(((JD + int64(1)) + i64(A)) - (i64(A / 4)))) B = (A + 1524) - C = (int32((float64(B) - 122.1) / 365.25)) + C = (libc.Int32FromFloat64((float64(B) - 122.1) / 365.25)) D = ((36525 * (C & 32767)) / 100) - E = (int32((float64(B - D)) / 30.6001)) + E = (libc.Int32FromFloat64((float64(B - D)) / 30.6001)) - day = ((B - D) - (int32(30.6001 * float64(E)))) + day = ((B - D) - (libc.Int32FromFloat64(30.6001 * float64(E)))) mon = func() int32 { if E < 14 { return (E - 1) @@ -34305,13 +34675,17 @@ func zipfileTime(tls *libc.TLS) u32 { /* zipfile.c:1486:12: */ if ((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FiVersion >= 2) && ((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxCurrentTimeInt64 != 0) { // var ms i64 at bp, 8 - (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pVfs + 72 /* &.xCurrentTimeInt64 */))))(tls, pVfs, bp /* &ms */) + (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxCurrentTimeInt64})).f(tls, pVfs, bp /* &ms */) ret = (u32((*(*i64)(unsafe.Pointer(bp /* ms */)) / int64(1000)) - (int64(24405875) * int64(8640)))) } else { // var day float64 at bp+8, 8 - (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pVfs + 64 /* &.xCurrentTime */))))(tls, pVfs, bp+8 /* &day */) - ret = (u32((*(*float64)(unsafe.Pointer(bp + 8 /* day */)) - 2440587.5) * float64(86400))) + (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxCurrentTime})).f(tls, pVfs, bp+8 /* &day */) + ret = (libc.Uint32FromFloat64((*(*float64)(unsafe.Pointer(bp + 8 /* day */)) - 2440587.5) * float64(86400))) } return ret } @@ -35390,7 +35764,7 @@ func test_rbu_delta(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pScript - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -35882,7 +36256,7 @@ func test_tcl_integer(tls *libc.TLS, interp uintptr, zVar uintptr) int32 { /* te pObj = tcl.XTcl_ObjGetVar2(tls, interp, pName, uintptr(0), TCL_GLOBAL_ONLY) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pName - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -35928,7 +36302,7 @@ func test_table_filter(tls *libc.TLS, pCtx uintptr, zTbl uintptr) int32 { /* tes } for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pEval - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -36081,7 +36455,7 @@ func test_session_cmd(tls *libc.TLS, clientData uintptr, interp uintptr, objc in if (*TestSession)(unsafe.Pointer(p)).FpFilterScript != 0 { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*TestSession)(unsafe.Pointer(p)).FpFilterScript - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -36177,7 +36551,7 @@ func test_session_del(tls *libc.TLS, clientData uintptr) { /* test_session.c:390 if (*TestSession)(unsafe.Pointer(p)).FpFilterScript != 0 { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*TestSession)(unsafe.Pointer(p)).FpFilterScript - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -36320,7 +36694,7 @@ func test_filter_handler(tls *libc.TLS, pCtx uintptr, zTab uintptr) int32 { /* t for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pEval - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -36514,7 +36888,7 @@ func test_conflict_handler(tls *libc.TLS, pCtx uintptr, eConf int32, pIter uintp for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pEval - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -37314,7 +37688,7 @@ func TestSession_Init(tls *libc.TLS, interp uintptr) int32 { /* test_session.c:1 // directory as this file for additional information. // Used to get the current process ID -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37329,11 +37703,11 @@ func TestSession_Init(tls *libc.TLS, interp uintptr) int32 { /* test_session.c:1 // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.14 Signal handling -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37348,10 +37722,10 @@ func TestSession_Init(tls *libc.TLS, interp uintptr) int32 { /* test_session.c:1 // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37366,12 +37740,12 @@ func TestSession_Init(tls *libc.TLS, interp uintptr) int32 { /* test_session.c:1 // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // Signal number definitions. Linux version. -// Copyright (C) 1995-2018 Free Software Foundation, Inc. +// Copyright (C) 1995-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37386,10 +37760,10 @@ func TestSession_Init(tls *libc.TLS, interp uintptr) int32 { /* test_session.c:1 // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Signal number constants. Generic template. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37404,7 +37778,7 @@ func TestSession_Init(tls *libc.TLS, interp uintptr) int32 { /* test_session.c:1 // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Fake signal functions. @@ -37443,7 +37817,7 @@ func TestSession_Init(tls *libc.TLS, interp uintptr) int32 { /* test_session.c:1 // most Linux systems. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37458,7 +37832,7 @@ func TestSession_Init(tls *libc.TLS, interp uintptr) int32 { /* test_session.c:1 // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -37472,7 +37846,7 @@ type sig_atomic_t = int32 /* sig_atomic_t.h:8:24 */ // Determine the wordsize from the preprocessor defines. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37487,12 +37861,12 @@ type sig_atomic_t = int32 /* sig_atomic_t.h:8:24 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // Define __sigval_t. -// Copyright (C) 1997-2018 Free Software Foundation, Inc. +// Copyright (C) 1997-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37507,7 +37881,7 @@ type sig_atomic_t = int32 /* sig_atomic_t.h:8:24 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Type for data associated with a signal. type sigval = struct{ Fsival_int int32 } /* __sigval_t.h:24:1 */ @@ -37526,7 +37900,7 @@ type siginfo_t = struct { // These are all considered GNU extensions. // Define __sigval_t. -// Copyright (C) 1997-2018 Free Software Foundation, Inc. +// Copyright (C) 1997-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37541,7 +37915,7 @@ type siginfo_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // To avoid sigval_t (not a standard type name) having C++ name // mangling depending on whether the selected standard includes union @@ -37555,7 +37929,7 @@ type sigval_t = sigval /* sigval_t.h:16:20 */ // Determine the wordsize from the preprocessor defines. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37570,12 +37944,12 @@ type sigval_t = sigval /* sigval_t.h:16:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // Define __sigval_t. -// Copyright (C) 1997-2018 Free Software Foundation, Inc. +// Copyright (C) 1997-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37590,7 +37964,7 @@ type sigval_t = sigval /* sigval_t.h:16:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Forward declaration. @@ -37603,7 +37977,7 @@ type sig_t = uintptr /* signal.h:190:24 */ // Get the system-specific definitions of `struct sigaction' // and the `SA_*' and `SIG_*'. constants. // The proper definitions for Linux's sigaction. -// Copyright (C) 1993-2018 Free Software Foundation, Inc. +// Copyright (C) 1993-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37618,7 +37992,7 @@ type sig_t = uintptr /* signal.h:190:24 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Structure describing the action to be taken when a signal arrives. type sigaction = struct { @@ -37629,7 +38003,7 @@ type sigaction = struct { } /* sigaction.h:27:1 */ // Get machine-dependent `struct sigcontext' and signal subcodes. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37644,10 +38018,10 @@ type sigaction = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37662,7 +38036,7 @@ type sigaction = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -37791,7 +38165,7 @@ type _xstate = struct { Fymmh struct{ Fymmh_space [64]uint32 } } /* sigcontext.h:189:1 */ -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -37823,15 +38197,6 @@ type _xstate = struct { // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -37866,15 +38231,10 @@ type _xstate = struct { // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Define stack_t. Linux version. -// Copyright (C) 1998-2018 Free Software Foundation, Inc. +// Copyright (C) 1998-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37889,9 +38249,9 @@ type _xstate = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -37923,15 +38283,6 @@ type _xstate = struct { // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -37966,11 +38317,6 @@ type _xstate = struct { // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Structure describing a signal stack. @@ -37981,7 +38327,7 @@ type stack_t = struct { } /* stack_t.h:31:5 */ // This will define `ucontext_t' and `mcontext_t'. -// Copyright (C) 2001-2018 Free Software Foundation, Inc. +// Copyright (C) 2001-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -37996,9 +38342,9 @@ type stack_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -38013,10 +38359,10 @@ type stack_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -38031,12 +38377,12 @@ type stack_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // Define stack_t. Linux version. -// Copyright (C) 1998-2018 Free Software Foundation, Inc. +// Copyright (C) 1998-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -38051,7 +38397,7 @@ type stack_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Type for general register. type greg_t = int32 /* ucontext.h:156:13 */ @@ -38121,7 +38467,7 @@ type ucontext_t1 = struct { type ucontext_t = ucontext_t1 /* ucontext.h:256:5 */ // Define struct sigstack. -// Copyright (C) 1998-2018 Free Software Foundation, Inc. +// Copyright (C) 1998-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -38136,7 +38482,7 @@ type ucontext_t = ucontext_t1 /* ucontext.h:256:5 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Structure describing a signal stack (obsolete). type sigstack = struct { @@ -38146,6 +38492,25 @@ type sigstack = struct { // Define some macros helping to catch buffer overflows. +// System-specific extensions. +// System-specific extensions of , Linux version. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + // Windows needs to know which symbols to export. Unix does not. // BUILD_sqlite should be undefined for Unix. @@ -38538,7 +38903,7 @@ func DbDeleteCmd(tls *libc.TLS, db uintptr) { /* tclsqlite.c:524:27: */ for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*SqlFunc)(unsafe.Pointer(pFunc)).FpScript - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38573,7 +38938,7 @@ func DbDeleteCmd(tls *libc.TLS, db uintptr) { /* tclsqlite.c:524:27: */ if (*SqliteDb)(unsafe.Pointer(pDb)).FpUpdateHook != 0 { for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = (*SqliteDb)(unsafe.Pointer(pDb)).FpUpdateHook - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38581,7 +38946,7 @@ func DbDeleteCmd(tls *libc.TLS, db uintptr) { /* tclsqlite.c:524:27: */ if (*SqliteDb)(unsafe.Pointer(pDb)).FpPreUpdateHook != 0 { for ok2 := true; ok2; ok2 = 0 != 0 { var _objPtr uintptr = (*SqliteDb)(unsafe.Pointer(pDb)).FpPreUpdateHook - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38589,7 +38954,7 @@ func DbDeleteCmd(tls *libc.TLS, db uintptr) { /* tclsqlite.c:524:27: */ if (*SqliteDb)(unsafe.Pointer(pDb)).FpRollbackHook != 0 { for ok3 := true; ok3; ok3 = 0 != 0 { var _objPtr uintptr = (*SqliteDb)(unsafe.Pointer(pDb)).FpRollbackHook - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38597,7 +38962,7 @@ func DbDeleteCmd(tls *libc.TLS, db uintptr) { /* tclsqlite.c:524:27: */ if (*SqliteDb)(unsafe.Pointer(pDb)).FpWalHook != 0 { for ok4 := true; ok4; ok4 = 0 != 0 { var _objPtr uintptr = (*SqliteDb)(unsafe.Pointer(pDb)).FpWalHook - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38605,7 +38970,7 @@ func DbDeleteCmd(tls *libc.TLS, db uintptr) { /* tclsqlite.c:524:27: */ if (*SqliteDb)(unsafe.Pointer(pDb)).FpCollateNeeded != 0 { for ok5 := true; ok5; ok5 = 0 != 0 { var _objPtr uintptr = (*SqliteDb)(unsafe.Pointer(pDb)).FpCollateNeeded - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38683,7 +39048,7 @@ func DbTraceV2Handler(tls *libc.TLS, type1 uint32, cd uintptr, pd uintptr, xd ui tcl.XTcl_EvalObjEx(tls, (*SqliteDb)(unsafe.Pointer(pDb)).Finterp, pCmd, TCL_EVAL_DIRECT) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pCmd - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38705,7 +39070,7 @@ func DbTraceV2Handler(tls *libc.TLS, type1 uint32, cd uintptr, pd uintptr, xd ui tcl.XTcl_EvalObjEx(tls, (*SqliteDb)(unsafe.Pointer(pDb)).Finterp, pCmd, TCL_EVAL_DIRECT) for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = pCmd - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38724,7 +39089,7 @@ func DbTraceV2Handler(tls *libc.TLS, type1 uint32, cd uintptr, pd uintptr, xd ui tcl.XTcl_EvalObjEx(tls, (*SqliteDb)(unsafe.Pointer(pDb)).Finterp, pCmd, TCL_EVAL_DIRECT) for ok2 := true; ok2; ok2 = 0 != 0 { var _objPtr uintptr = pCmd - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38743,7 +39108,7 @@ func DbTraceV2Handler(tls *libc.TLS, type1 uint32, cd uintptr, pd uintptr, xd ui tcl.XTcl_EvalObjEx(tls, (*SqliteDb)(unsafe.Pointer(pDb)).Finterp, pCmd, TCL_EVAL_DIRECT) for ok3 := true; ok3; ok3 = 0 != 0 { var _objPtr uintptr = pCmd - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38819,7 +39184,7 @@ func DbWalHandler(tls *libc.TLS, clientData uintptr, db uintptr, zDb uintptr, nE } for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = p - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38849,7 +39214,7 @@ func DbUnlockNotify(tls *libc.TLS, apArg uintptr, nArg int32) { /* tclsqlite.c:7 tcl.XTcl_EvalObjEx(tls, (*SqliteDb)(unsafe.Pointer(pDb)).Finterp, (*SqliteDb)(unsafe.Pointer(pDb)).FpUnlockNotify, flags) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*SqliteDb)(unsafe.Pointer(pDb)).FpUnlockNotify - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38872,7 +39237,7 @@ func DbPreUpdateHandler(tls *libc.TLS, p uintptr, db uintptr, op int32, zDb uint tcl.XTcl_EvalObjEx(tls, (*SqliteDb)(unsafe.Pointer(pDb)).Finterp, pCmd, TCL_EVAL_DIRECT) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pCmd - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38893,7 +39258,7 @@ func DbUpdateHandler(tls *libc.TLS, p uintptr, op int32, zDb uintptr, zTbl uintp tcl.XTcl_EvalObjEx(tls, (*SqliteDb)(unsafe.Pointer(pDb)).Finterp, pCmd, TCL_EVAL_DIRECT) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pCmd - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38909,7 +39274,7 @@ func tclCollateNeeded(tls *libc.TLS, pCtx uintptr, db uintptr, enc int32, zName tcl.XTcl_EvalObjEx(tls, (*SqliteDb)(unsafe.Pointer(pDb)).Finterp, pScript, 0) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pScript - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38928,7 +39293,7 @@ func tclSqlCollate(tls *libc.TLS, pCtx uintptr, nA int32, zA uintptr, nB int32, tcl.XTcl_EvalObjEx(tls, (*SqlCollate)(unsafe.Pointer(p)).Finterp, pCmd, TCL_EVAL_DIRECT) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pCmd - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -38956,7 +39321,7 @@ func tclSqlFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* t rc = tcl.XTcl_EvalObjEx(tls, (*SqlFunc)(unsafe.Pointer(p)).Finterp, pCmd, 0) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pCmd - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -39032,7 +39397,7 @@ func tclSqlFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* t if rc != 0 { for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = pCmd - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -39049,7 +39414,7 @@ func tclSqlFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* t rc = tcl.XTcl_EvalObjEx(tls, (*SqlFunc)(unsafe.Pointer(p)).Finterp, pCmd, TCL_EVAL_DIRECT) for ok2 := true; ok2; ok2 = 0 != 0 { var _objPtr uintptr = pCmd - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -39544,7 +39909,7 @@ func dbPrepareAndBind(tls *libc.TLS, pDb uintptr, zIn uintptr, pzOut uintptr, pp rx = tcl.XTcl_EvalObjEx(tls, interp, pCmd, TCL_EVAL_DIRECT) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pCmd - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -39626,7 +39991,7 @@ func dbReleaseStmt(tls *libc.TLS, pDb uintptr, pPreStmt uintptr, discard int32) for i = 0; i < (*SqlPreparedStmt)(unsafe.Pointer(pPreStmt)).FnParm; i++ { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = *(*uintptr)(unsafe.Pointer((*SqlPreparedStmt)(unsafe.Pointer(pPreStmt)).FapParm + uintptr(i)*4)) - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -39699,7 +40064,7 @@ func dbReleaseColumnNames(tls *libc.TLS, p uintptr) { /* tclsqlite.c:1541:13: */ for i = 0; i < (*DbEvalContext)(unsafe.Pointer(p)).FnCol; i++ { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = *(*uintptr)(unsafe.Pointer((*DbEvalContext)(unsafe.Pointer(p)).FapColName + uintptr(i)*4)) - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -39767,7 +40132,7 @@ func dbEvalRowInfo(tls *libc.TLS, p uintptr, pnCol uintptr, papColName uintptr) tcl.XTcl_ObjSetVar2(tls, interp, (*DbEvalContext)(unsafe.Pointer(p)).FpArray, pStar, pColList, 0) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pStar - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -39867,7 +40232,7 @@ func dbEvalFinalize(tls *libc.TLS, p uintptr) { /* tclsqlite.c:1710:13: */ if (*DbEvalContext)(unsafe.Pointer(p)).FpArray != 0 { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*DbEvalContext)(unsafe.Pointer(p)).FpArray - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -39875,7 +40240,7 @@ func dbEvalFinalize(tls *libc.TLS, p uintptr) { /* tclsqlite.c:1710:13: */ } for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = (*DbEvalContext)(unsafe.Pointer(p)).FpSql - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -39998,7 +40363,7 @@ func DbEvalNextCmd(tls *libc.TLS, data uintptr, interp uintptr, result int32) in for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pScript - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -40027,7 +40392,7 @@ func DbHookCmd(tls *libc.TLS, interp uintptr, pDb uintptr, pArg uintptr, ppHook if pArg != 0 { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = *(*uintptr)(unsafe.Pointer(ppHook)) - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -41043,7 +41408,7 @@ __101: } __103: _objPtr = (*SqliteDb)(unsafe.Pointer(pDb)).FpCollateNeeded - if !(libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1) { + if !(libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1) { goto __106 } tcl.XTclFreeObj(tls, _objPtr) @@ -41760,7 +42125,7 @@ __204: ; __205: _objPtr1 = pRet - if !(libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr1))).FrefCount, 1) <= 1) { + if !(libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr1)).FrefCount, 1) <= 1) { goto __208 } tcl.XTclFreeObj(tls, _objPtr1) @@ -41929,7 +42294,7 @@ __229: } __231: _objPtr2 = (*SqlFunc)(unsafe.Pointer(pFunc)).FpScript - if !(libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr2))).FrefCount, 1) <= 1) { + if !(libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr2)).FrefCount, 1) <= 1) { goto __234 } tcl.XTclFreeObj(tls, _objPtr2) @@ -42539,7 +42904,7 @@ __320: } __325: _objPtr3 = pError - if !(libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr3))).FrefCount, 1) <= 1) { + if !(libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr3)).FrefCount, 1) <= 1) { goto __328 } tcl.XTclFreeObj(tls, _objPtr3) @@ -42559,7 +42924,7 @@ __323: tcl.XTcl_SetObjResult(tls, interp, pError) __329: _objPtr4 = pError - if !(libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr4))).FrefCount, 1) <= 1) { + if !(libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr4)).FrefCount, 1) <= 1) { goto __332 } tcl.XTclFreeObj(tls, _objPtr4) @@ -42754,7 +43119,7 @@ __353: } __356: _objPtr5 = (*SqliteDb)(unsafe.Pointer(pDb)).FpUnlockNotify - if !(libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr5))).FrefCount, 1) <= 1) { + if !(libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr5)).FrefCount, 1) <= 1) { goto __359 } tcl.XTclFreeObj(tls, _objPtr5) @@ -43509,7 +43874,7 @@ type sqlite3_str = sqlite3_str1 /* sqlite3.h:7882:28 */ // Unsigned. // Define uintN_t types. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -43524,10 +43889,10 @@ type sqlite3_str = sqlite3_str1 /* sqlite3.h:7882:28 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -43542,7 +43907,7 @@ type sqlite3_str = sqlite3_str1 /* sqlite3.h:7882:28 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -43756,11 +44121,11 @@ type ino64_t = uint64 /* types.h:54:19 */ // fd_set for select and pselect. type fd_set1 = struct{ Ffds_bits [32]int32 } /* select.h:70:5 */ // Type to count file system inodes. -type blkcnt64_t = int64 /* types.h:236:22 */ // Type to count number of disk blocks. -type fsblkcnt64_t = uint64 /* types.h:237:24 */ // Type to count file system blocks. -type fsfilcnt64_t = uint64 /* types.h:238:24 */ +type blkcnt64_t = int64 /* types.h:219:22 */ // Type to count number of disk blocks. +type fsblkcnt64_t = uint64 /* types.h:220:24 */ // Type to count file system blocks. +type fsfilcnt64_t = uint64 /* types.h:221:24 */ -type comparison_fn_t = uintptr /* stdlib.h:808:23 */ // 2-byte unsigned integer +type comparison_fn_t = uintptr /* stdlib.h:811:23 */ // 2-byte unsigned integer type i16 = int16_t /* sqliteInt.h:795:20 */ // 1-byte unsigned integer type i8 = int8_t /* sqliteInt.h:797:19 */ // 1-byte signed integer @@ -43875,7 +44240,7 @@ type BusyHandler = BusyHandler1 /* sqliteInt.h:1037:28 */ type AggInfo1 = struct { FdirectMode u8 FuseSortingIdx u8 - _ [2]byte + F__ccgo_pad1 [2]byte FsortingIdx int32 FsortingIdxPTab int32 FnSortingColumn int32 @@ -43953,47 +44318,47 @@ type AutoincInfo1 = struct { type AutoincInfo = AutoincInfo1 /* sqliteInt.h:1135:28 */ type CollSeq1 = struct { - FzName uintptr - Fenc u8 - _ [3]byte - FpUser uintptr - FxCmp uintptr - FxDel uintptr + FzName uintptr + Fenc u8 + F__ccgo_pad1 [3]byte + FpUser uintptr + FxCmp uintptr + FxDel uintptr } /* sqlite3.h:249:9 */ type CollSeq = CollSeq1 /* sqliteInt.h:1137:24 */ type Column1 = struct { - FzName uintptr - FpDflt uintptr - FzColl uintptr - FnotNull u8 - Faffinity int8 - FszEst u8 - FhName u8 - FcolFlags u16 - _ [2]byte + FzName uintptr + FpDflt uintptr + FzColl uintptr + FnotNull u8 + Faffinity int8 + FszEst u8 + FhName u8 + FcolFlags u16 + F__ccgo_pad1 [2]byte } /* sqlite3.h:249:9 */ type Column = Column1 /* sqliteInt.h:1138:23 */ type Cte1 = struct { - FzName uintptr - FpCols uintptr - FpSelect uintptr - FzCteErr uintptr - FpUse uintptr - FeM10d u8 - _ [3]byte + FzName uintptr + FpCols uintptr + FpSelect uintptr + FzCteErr uintptr + FpUse uintptr + FeM10d u8 + F__ccgo_pad1 [3]byte } /* sqlite3.h:249:9 */ type Cte = Cte1 /* sqliteInt.h:1139:20 */ type CteUse1 = struct { - FnUse int32 - FaddrM9e int32 - FregRtn int32 - FiCur int32 - FnRowEst LogEst - FeM10d u8 - _ [1]byte + FnUse int32 + FaddrM9e int32 + FregRtn int32 + FiCur int32 + FnRowEst LogEst + FeM10d u8 + F__ccgo_pad1 [1]byte } /* sqlite3.h:249:9 */ type CteUse = CteUse1 /* sqliteInt.h:1140:23 */ @@ -44002,20 +44367,20 @@ type Db1 = struct { FpBt uintptr Fsafety_level u8 FbSyncSet u8 - _ [2]byte + F__ccgo_pad1 [2]byte FpSchema uintptr } /* sqlite3.h:249:9 */ type Db = Db1 /* sqliteInt.h:1141:19 */ type DbFixer1 = struct { - FpParse uintptr - Fw Walker - FpSchema uintptr - FbTemp u8 - _ [3]byte - FzDb uintptr - FzType uintptr - FpName uintptr + FpParse uintptr + Fw Walker + FpSchema uintptr + FbTemp u8 + F__ccgo_pad1 [3]byte + FzDb uintptr + FzType uintptr + FpName uintptr } /* sqliteInt.h:1142:9 */ type DbFixer = DbFixer1 /* sqliteInt.h:1142:24 */ @@ -44038,7 +44403,7 @@ type Expr1 = struct { Fop u8 FaffExpr int8 Fop2 u8 - _ [1]byte + F__ccgo_pad1 [1]byte Fflags u32 Fu struct{ FzToken uintptr } FpLeft uintptr @@ -44061,13 +44426,13 @@ type ExprList1 = struct { FnExpr int32 FnAlloc int32 Fa [1]struct { - FpExpr uintptr - FzEName uintptr - FsortFlags u8 - _ [3]byte - FeEName uint8 /* unsigned eEName: 2, unsigned done: 1, unsigned reusable: 1, unsigned bSorterRef: 1, unsigned bNulls: 1 */ - _ [3]byte - Fu struct { + FpExpr uintptr + FzEName uintptr + FsortFlags u8 + F__ccgo_pad1 [3]byte + FeEName uint8 /* unsigned eEName: 2, unsigned done: 1, unsigned reusable: 1, unsigned bSorterRef: 1, unsigned bNulls: 1 */ + F__ccgo_pad2 [3]byte + Fu struct { _ [0]uint32 Fx struct { FiOrderByCol u16 @@ -44079,17 +44444,17 @@ type ExprList1 = struct { type ExprList = ExprList1 /* sqliteInt.h:1145:25 */ type FKey1 = struct { - FpFrom uintptr - FpNextFrom uintptr - FzTo uintptr - FpNextTo uintptr - FpPrevTo uintptr - FnCol int32 - FisDeferred u8 - FaAction [2]u8 - _ [1]byte - FapTrigger [2]uintptr - FaCol [1]struct { + FpFrom uintptr + FpNextFrom uintptr + FzTo uintptr + FpNextTo uintptr + FpPrevTo uintptr + FnCol int32 + FisDeferred u8 + FaAction [2]u8 + F__ccgo_pad1 [1]byte + FapTrigger [2]uintptr + FaCol [1]struct { FiFrom int32 FzCol uintptr } @@ -44104,17 +44469,17 @@ type FuncDestructor1 = struct { type FuncDestructor = FuncDestructor1 /* sqliteInt.h:1147:31 */ type FuncDef1 = struct { - FnArg i8 - _ [3]byte - FfuncFlags u32 - FpUserData uintptr - FpNext uintptr - FxSFunc uintptr - FxFinalize uintptr - FxValue uintptr - FxInverse uintptr - FzName uintptr - Fu struct{ FpHash uintptr } + FnArg i8 + F__ccgo_pad1 [3]byte + FfuncFlags u32 + FpUserData uintptr + FpNext uintptr + FxSFunc uintptr + FxFinalize uintptr + FxValue uintptr + FxInverse uintptr + FzName uintptr + Fu struct{ FpHash uintptr } } /* sqlite3.h:249:9 */ type FuncDef = FuncDef1 /* sqliteInt.h:1148:24 */ @@ -44144,9 +44509,9 @@ type Index1 = struct { FnKeyCol u16 FnColumn u16 FonError u8 - _ [1]byte + F__ccgo_pad1 [1]byte FidxType uint16 /* unsigned idxType: 2, unsigned bUnordered: 1, unsigned uniqNotNull: 1, unsigned isResized: 1, unsigned isCovering: 1, unsigned noSkipScan: 1, unsigned hasStat1: 1, unsigned bNoQuery: 1, unsigned bAscKeyBug: 1, unsigned bHasVCol: 1 */ - _ [2]byte + F__ccgo_pad2 [2]byte FnSample int32 FnSampleCol int32 FaAvgEq uintptr @@ -44167,33 +44532,33 @@ type IndexSample1 = struct { type IndexSample = IndexSample1 /* sqliteInt.h:1152:28 */ type KeyInfo1 = struct { - FnRef u32 - Fenc u8 - _ [1]byte - FnKeyField u16 - FnAllField u16 - _ [2]byte - Fdb uintptr - FaSortFlags uintptr - FaColl [1]uintptr + FnRef u32 + Fenc u8 + F__ccgo_pad1 [1]byte + FnKeyField u16 + FnAllField u16 + F__ccgo_pad2 [2]byte + Fdb uintptr + FaSortFlags uintptr + FaColl [1]uintptr } /* sqlite3.h:249:9 */ type KeyInfo = KeyInfo1 /* sqliteInt.h:1154:24 */ type Lookaside1 = struct { - FbDisable u32 - Fsz u16 - FszTrue u16 - FbMalloced u8 - _ [3]byte - FnSlot u32 - FanStat [3]u32 - FpInit uintptr - FpFree uintptr - FpSmallInit uintptr - FpSmallFree uintptr - FpMiddle uintptr - FpStart uintptr - FpEnd uintptr + FbDisable u32 + Fsz u16 + FszTrue u16 + FbMalloced u8 + F__ccgo_pad1 [3]byte + FnSlot u32 + FanStat [3]u32 + FpInit uintptr + FpFree uintptr + FpSmallInit uintptr + FpSmallFree uintptr + FpMiddle uintptr + FpStart uintptr + FpEnd uintptr } /* sqlite3.h:249:9 */ type Lookaside = Lookaside1 /* sqliteInt.h:1155:26 */ @@ -44237,7 +44602,7 @@ type Parse1 = struct { FokConstFactor u8 FdisableLookaside u8 FdisableVtab u8 - _ [2]byte + F__ccgo_pad1 [2]byte FnRangeReg int32 FiRangeReg int32 FnErr int32 @@ -44277,7 +44642,7 @@ type Parse1 = struct { FiPkSortOrder u8 Fexplain u8 FeParseMode u8 - _ [3]byte + F__ccgo_pad2 [3]byte FnVtabLock int32 FnHeight int32 FaddrExplain int32 @@ -44350,7 +44715,7 @@ type Savepoint1 = struct { type Savepoint = Savepoint1 /* sqliteInt.h:1166:26 */ type Select1 = struct { Fop u8 - _ [1]byte + F__ccgo_pad1 [1]byte FnSelectRow LogEst FselFlags u32 FiLimit int32 @@ -44373,14 +44738,14 @@ type Select1 = struct { type Select = Select1 /* sqliteInt.h:1167:23 */ type SelectDest1 = struct { - FeDest u8 - _ [3]byte - FiSDParm int32 - FiSDParm2 int32 - FiSdst int32 - FnSdst int32 - FzAffSdst uintptr - FpOrderBy uintptr + FeDest u8 + F__ccgo_pad1 [3]byte + FiSDParm int32 + FiSDParm2 int32 + FiSdst int32 + FnSdst int32 + FzAffSdst uintptr + FpOrderBy uintptr } /* sqliteInt.h:1169:9 */ type SelectDest = SelectDest1 /* sqliteInt.h:1169:27 */ @@ -44395,11 +44760,11 @@ type SrcItem1 = struct { FregReturn int32 FregResult int32 Ffg struct { - _ [0]uint32 - Fjointype u8 - _ [3]byte - FnotIndexed uint16 /* unsigned notIndexed: 1, unsigned isIndexedBy: 1, unsigned isTabFunc: 1, unsigned isCorrelated: 1, unsigned viaCoroutine: 1, unsigned isRecursive: 1, unsigned fromDDL: 1, unsigned isCte: 1, unsigned notCte: 1 */ - _ [2]byte + F__ccgo_pad1 [0]uint32 + Fjointype u8 + F__ccgo_pad2 [3]byte + FnotIndexed uint16 /* unsigned notIndexed: 1, unsigned isIndexedBy: 1, unsigned isTabFunc: 1, unsigned isCorrelated: 1, unsigned viaCoroutine: 1, unsigned isRecursive: 1, unsigned fromDDL: 1, unsigned isCte: 1, unsigned notCte: 1 */ + F__ccgo_pad3 [2]byte } FiCursor int32 FpOn uintptr @@ -44435,7 +44800,7 @@ type Table1 = struct { FnRowLogEst LogEst FszTabRow LogEst FkeyConf u8 - _ [1]byte + F__ccgo_pad1 [1]byte FaddColOffset int32 FnModuleArg int32 FazModuleArg uintptr @@ -44453,18 +44818,18 @@ type Token1 = struct { type Token = Token1 /* sqliteInt.h:1175:22 */ type Trigger1 = struct { - FzName uintptr - Ftable uintptr - Fop u8 - Ftr_tm u8 - FbReturning u8 - _ [1]byte - FpWhen uintptr - FpColumns uintptr - FpSchema uintptr - FpTabSchema uintptr - Fstep_list uintptr - FpNext uintptr + FzName uintptr + Ftable uintptr + Fop u8 + Ftr_tm u8 + FbReturning u8 + F__ccgo_pad1 [1]byte + FpWhen uintptr + FpColumns uintptr + FpSchema uintptr + FpTabSchema uintptr + Fstep_list uintptr + FpNext uintptr } /* sqlite3.h:249:9 */ type Trigger = Trigger1 /* sqliteInt.h:1177:24 */ @@ -44478,33 +44843,33 @@ type TriggerPrg1 = struct { type TriggerPrg = TriggerPrg1 /* sqliteInt.h:1178:27 */ type TriggerStep1 = struct { - Fop u8 - Forconf u8 - _ [2]byte - FpTrig uintptr - FpSelect uintptr - FzTarget uintptr - FpFrom uintptr - FpWhere uintptr - FpExprList uintptr - FpIdList uintptr - FpUpsert uintptr - FzSpan uintptr - FpNext uintptr - FpLast uintptr + Fop u8 + Forconf u8 + F__ccgo_pad1 [2]byte + FpTrig uintptr + FpSelect uintptr + FzTarget uintptr + FpFrom uintptr + FpWhere uintptr + FpExprList uintptr + FpIdList uintptr + FpUpsert uintptr + FzSpan uintptr + FpNext uintptr + FpLast uintptr } /* sqlite3.h:249:9 */ type TriggerStep = TriggerStep1 /* sqliteInt.h:1179:28 */ type UnpackedRecord1 = struct { - FpKeyInfo uintptr - FaMem uintptr - FnField u16 - Fdefault_rc i8 - FerrCode u8 - Fr1 i8 - Fr2 i8 - FeqSeen u8 - _ [1]byte + FpKeyInfo uintptr + FaMem uintptr + FnField u16 + Fdefault_rc i8 + FerrCode u8 + Fr1 i8 + Fr2 i8 + FeqSeen u8 + F__ccgo_pad1 [1]byte } /* sqlite3.h:249:9 */ type UnpackedRecord = UnpackedRecord1 /* sqliteInt.h:1180:31 */ @@ -44515,7 +44880,7 @@ type Upsert1 = struct { FpUpsertWhere uintptr FpNextUpsert uintptr FisDoUpdate u8 - _ [3]byte + F__ccgo_pad1 [3]byte FpToFree uintptr FpUpsertIdx uintptr FpUpsertSrc uintptr @@ -44532,7 +44897,7 @@ type VTable1 = struct { FnRef int32 FbConstraint u8 FeVtabRisk u8 - _ [2]byte + F__ccgo_pad1 [2]byte FiSavepoint int32 FpNext uintptr } /* sqlite3.h:249:9 */ @@ -44545,7 +44910,7 @@ type Walker1 = struct { FxSelectCallback2 uintptr FwalkerDepth int32 FeCode u16 - _ [2]byte + F__ccgo_pad1 [2]byte Fu struct{ FpNC uintptr } } /* sqliteInt.h:1142:9 */ @@ -44560,7 +44925,7 @@ type Window1 = struct { FeEnd u8 FbImplicitFrame u8 FeExclude u8 - _ [3]byte + F__ccgo_pad1 [3]byte FpStart uintptr FpEnd uintptr FppThis uintptr @@ -44580,7 +44945,7 @@ type Window1 = struct { FregStartRowid int32 FregEndRowid int32 FbExprArgs u8 - _ [3]byte + F__ccgo_pad2 [3]byte } /* sqlite3.h:249:9 */ type Window = Window1 /* sqliteInt.h:1186:23 */ @@ -44708,7 +45073,7 @@ type BtCursor1 = struct { FcurIntKey u8 Fix u16 FaiIdx [19]u16 - _ [2]byte + F__ccgo_pad1 [2]byte FpKeyInfo uintptr FpPage uintptr FapPage [19]uintptr @@ -44726,13 +45091,13 @@ type BtShared1 = struct { FinTransaction u8 Fmax1bytePayload u8 FnReserveWanted u8 - _ [1]byte + F__ccgo_pad1 [1]byte FbtsFlags u16 FmaxLocal u16 FminLocal u16 FmaxLeaf u16 FminLeaf u16 - _ [2]byte + F__ccgo_pad2 [2]byte FpageSize u32 FusableSize u32 FnTransaction int32 @@ -44750,14 +45115,14 @@ type BtShared1 = struct { } /* btree.h:39:9 */ type BtreePayload1 = struct { - FpKey uintptr - FnKey sqlite3_int64 - FpData uintptr - FaMem uintptr - FnMem u16 - _ [2]byte - FnData int32 - FnZero int32 + FpKey uintptr + FnKey sqlite3_int64 + FpData uintptr + FaMem uintptr + FnMem u16 + F__ccgo_pad1 [2]byte + FnData int32 + FnZero int32 } /* btree.h:42:9 */ type BtreePayload = BtreePayload1 /* btree.h:42:29 */ @@ -44778,7 +45143,7 @@ type BtreePayload = BtreePayload1 /* btree.h:42:29 */ // or VDBE. The VDBE implements an abstract machine that runs a // simple program to access and modify the underlying database. // Define ISO C stdio on top of C++ iostreams. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -44793,7 +45158,7 @@ type BtreePayload = BtreePayload1 /* btree.h:42:29 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.19 Input/output @@ -44806,7 +45171,7 @@ type Vdbe1 = struct { FpNext uintptr FpParse uintptr FnVar ynVar - _ [2]byte + F__ccgo_pad1 [2]byte FiVdbeMagic u32 FnMem int32 FnCursor int32 @@ -44836,9 +45201,9 @@ type Vdbe1 = struct { FminWriteFileFormat u8 FprepFlags u8 FdoingRerun u8 - _ [2]byte + F__ccgo_pad2 [2]byte Fexpired uint16 /* bft expired: 2, bft explain: 2, bft changeCntOn: 1, bft runOnlyOnce: 1, bft usesStmtJournal: 1, bft readOnly: 1, bft bIsReader: 1 */ - _ [2]byte + F__ccgo_pad3 [2]byte FbtreeMask yDbMask FlockMask yDbMask FaCounter [7]u32 @@ -44868,7 +45233,7 @@ type Vdbe1 = struct { // or VDBE. The VDBE implements an abstract machine that runs a // simple program to access and modify the underlying database. // Define ISO C stdio on top of C++ iostreams. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -44883,7 +45248,7 @@ type Vdbe1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.19 Input/output @@ -45009,9 +45374,9 @@ type sqlite3InitInfo = struct { FnewTnum Pgno FiDb u8 Fbusy u8 - _ [2]byte + F__ccgo_pad1 [2]byte ForphanTrigger uint8 /* unsigned orphanTrigger: 1, unsigned imposterTable: 1, unsigned reopenMemdb: 1 */ - _ [3]byte + F__ccgo_pad2 [3]byte FazInit uintptr } /* sqlite3.h:249:9 */ @@ -45171,13 +45536,13 @@ type ynVar = i16 /* sqliteInt.h:2622:13 */ // ENAME_SPAN Text of the original result set // expression. type ExprList_item = struct { - FpExpr uintptr - FzEName uintptr - FsortFlags u8 - _ [3]byte - FeEName uint8 /* unsigned eEName: 2, unsigned done: 1, unsigned reusable: 1, unsigned bSorterRef: 1, unsigned bNulls: 1 */ - _ [3]byte - Fu struct { + FpExpr uintptr + FzEName uintptr + FsortFlags u8 + F__ccgo_pad1 [3]byte + FeEName uint8 /* unsigned eEName: 2, unsigned done: 1, unsigned reusable: 1, unsigned bSorterRef: 1, unsigned bNulls: 1 */ + F__ccgo_pad2 [3]byte + Fu struct { _ [0]uint32 Fx struct { FiOrderByCol u16 @@ -45243,7 +45608,7 @@ type Sqlite3Config = struct { FbUseCis u8 FbSmallMalloc u8 FbExtraSchemaChecks u8 - _ [2]byte + F__ccgo_pad1 [2]byte FmxStrlen int32 FneverCorrupt int32 FszLookaside int32 @@ -45339,9 +45704,9 @@ type VdbeCursor1 = struct { FnullRow u8 FdeferredMoveto u8 FisTable u8 - _ [3]byte + F__ccgo_pad1 [3]byte FisEphemeral uint8 /* Bool isEphemeral: 1, Bool useRandomRowid: 1, Bool isOrdered: 1, Bool hasBeenDuped: 1 */ - _ [1]byte + F__ccgo_pad2 [1]byte FseekHit u16 FpBtx uintptr FseqCount i64 @@ -45462,7 +45827,7 @@ type ScanStatus1 = struct { FaddrVisit int32 FiSelectID int32 FnEst LogEst - _ [2]byte + F__ccgo_pad1 [2]byte FzName uintptr } /* vdbeInt.h:350:9 */ @@ -47160,13 +47525,13 @@ func testCreateCollationDel(tls *libc.TLS, pCtx uintptr) { /* test1.c:1721:13: * for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*TestCollationX)(unsafe.Pointer(p)).FpCmp - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = (*TestCollationX)(unsafe.Pointer(p)).FpDel - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -47191,7 +47556,7 @@ func testCreateCollationCmp(tls *libc.TLS, pCtx uintptr, nLeft int32, zLeft uint } for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pScript - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -47287,7 +47652,7 @@ func cf2Destroy(tls *libc.TLS, pUser uintptr) { /* test1.c:1818:13: */ if (*CreateFunctionV2)(unsafe.Pointer(p)).FpFunc != 0 { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*CreateFunctionV2)(unsafe.Pointer(p)).FpFunc - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -47295,7 +47660,7 @@ func cf2Destroy(tls *libc.TLS, pUser uintptr) { /* test1.c:1818:13: */ if (*CreateFunctionV2)(unsafe.Pointer(p)).FpStep != 0 { for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = (*CreateFunctionV2)(unsafe.Pointer(p)).FpStep - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -47303,7 +47668,7 @@ func cf2Destroy(tls *libc.TLS, pUser uintptr) { /* test1.c:1818:13: */ if (*CreateFunctionV2)(unsafe.Pointer(p)).FpFinal != 0 { for ok2 := true; ok2; ok2 = 0 != 0 { var _objPtr uintptr = (*CreateFunctionV2)(unsafe.Pointer(p)).FpFinal - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -47311,7 +47676,7 @@ func cf2Destroy(tls *libc.TLS, pUser uintptr) { /* test1.c:1818:13: */ if (*CreateFunctionV2)(unsafe.Pointer(p)).FpDestroy != 0 { for ok3 := true; ok3; ok3 = 0 != 0 { var _objPtr uintptr = (*CreateFunctionV2)(unsafe.Pointer(p)).FpDestroy - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -47794,7 +48159,9 @@ func vfsCurrentTimeInt64(tls *libc.TLS, clientData uintptr, interp uintptr, objc tcl.XTcl_WrongNumArgs(tls, interp, 1, objv, ts+489 /* "" */) return TCL_ERROR } - (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pVfs + 72 /* &.xCurrentTimeInt64 */))))(tls, pVfs, bp /* &t */) + (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxCurrentTimeInt64})).f(tls, pVfs, bp /* &t */) tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewWideIntObj(tls, *(*i64)(unsafe.Pointer(bp /* t */)))) return TCL_OK } @@ -48058,7 +48425,9 @@ func test_atomic_batch_write(tls *libc.TLS, clientData uintptr, interp uintptr, } rc = sqlite3.Xsqlite3_file_control(tls, *(*uintptr)(unsafe.Pointer(bp + 16 /* db */)), ts+85 /* "main" */, SQLITE_FCNTL_FILE_POINTER, bp+20 /* &pFd */) - dc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 20 /* pFd */)))).FpMethods + 48 /* &.xDeviceCharacteristics */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 20 /* pFd */))) + dc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 20 /* pFd */)))).FpMethods)).FxDeviceCharacteristics})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 20 /* pFd */))) if (dc & SQLITE_IOCAP_BATCH_ATOMIC) != 0 { bRes = 1 } @@ -48444,7 +48813,7 @@ func test_collate_func(tls *libc.TLS, pCtx uintptr, nA int32, zA uintptr, nB int tcl.XTcl_EvalObjEx(tls, i, pX, 0) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pX - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -48780,7 +49149,7 @@ func test_function_utf8(tls *libc.TLS, pCtx uintptr, nArg int32, argv uintptr) { tcl.XTcl_EvalObjEx(tls, interp, pX, 0) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pX - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -48806,7 +49175,7 @@ func test_function_utf16le(tls *libc.TLS, pCtx uintptr, nArg int32, argv uintptr tcl.XTcl_EvalObjEx(tls, interp, pX, 0) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pX - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -48830,7 +49199,7 @@ func test_function_utf16be(tls *libc.TLS, pCtx uintptr, nArg int32, argv uintptr tcl.XTcl_EvalObjEx(tls, interp, pX, 0) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pX - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -50541,7 +50910,7 @@ func test_prepare16(tls *libc.TLS, clientData uintptr, interp uintptr, objc int3 tcl.XTcl_ObjSetVar2(tls, interp, *(*uintptr)(unsafe.Pointer(objv + 4*4)), uintptr(0), pTail, 0) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pTail - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -50617,7 +50986,7 @@ func test_prepare16_v2(tls *libc.TLS, clientData uintptr, interp uintptr, objc i tcl.XTcl_ObjSetVar2(tls, interp, *(*uintptr)(unsafe.Pointer(objv + 4*4)), uintptr(0), pTail, 0) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pTail - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -51091,7 +51460,9 @@ func test_stmt_utf8(tls *libc.TLS, clientData uintptr, interp uintptr, objc int3 if tcl.XTcl_GetIntFromObj(tls, interp, *(*uintptr)(unsafe.Pointer(objv + 2*4)), bp+36 /* &col */) != 0 { return TCL_ERROR } - zRet = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(&xFunc)))(tls, *(*uintptr)(unsafe.Pointer(bp + 32 /* pStmt */)), *(*int32)(unsafe.Pointer(bp + 36 /* col */))) + zRet = (*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{xFunc})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 32 /* pStmt */)), *(*int32)(unsafe.Pointer(bp + 36 /* col */))) if zRet != 0 { tcl.XTcl_SetResult(tls, interp, zRet, uintptr(0)) } @@ -51140,7 +51511,9 @@ func test_stmt_utf16(tls *libc.TLS, clientData uintptr, interp uintptr, objc int return TCL_ERROR } - zName16 = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(&xFunc)))(tls, *(*uintptr)(unsafe.Pointer(bp + 32 /* pStmt */)), *(*int32)(unsafe.Pointer(bp + 36 /* col */))) + zName16 = (*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{xFunc})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 32 /* pStmt */)), *(*int32)(unsafe.Pointer(bp + 36 /* col */))) if zName16 != 0 { var n int32 var z uintptr = zName16 @@ -51183,7 +51556,9 @@ func test_stmt_int(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32 return TCL_ERROR } - tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewIntObj(tls, (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(&xFunc)))(tls, *(*uintptr)(unsafe.Pointer(bp + 32 /* pStmt */)), *(*int32)(unsafe.Pointer(bp + 36 /* col */))))) + tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewIntObj(tls, (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xFunc})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 32 /* pStmt */)), *(*int32)(unsafe.Pointer(bp + 36 /* col */))))) return TCL_OK } @@ -51623,7 +51998,7 @@ func working_64bit_int(tls *libc.TLS, clientData ClientData, interp uintptr, obj working = (libc.Bool32(libc.Xstrcmp(tls, tcl.XTcl_GetString(tls, pTestObj), ts+18148 /* "1234567890000000" */) == 0)) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pTestObj - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -52558,7 +52933,7 @@ func xLogcallback(tls *libc.TLS, unused uintptr, err int32, zMsg uintptr) { /* t tcl.XTcl_EvalObjEx(tls, logcallback.FpInterp, pNew, (TCL_EVAL_GLOBAL | TCL_EVAL_DIRECT)) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pNew - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -52575,7 +52950,7 @@ func test_sqlite3_log(tls *libc.TLS, clientData ClientData, interp uintptr, objc if logcallback.FpObj != 0 { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = logcallback.FpObj - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -52618,7 +52993,9 @@ func runAsObjProc(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, tcl.XTcl_GetString(tls, *(*uintptr)(unsafe.Pointer(objv + 1*4))), uintptr(0))) return TCL_ERROR } - return (*(*func(*libc.TLS, ClientData, uintptr, int32, uintptr) int32)(unsafe.Pointer((bp + 48 /* &cmdInfo */ + 4 /* &.objProc */))))(tls, (*Tcl_CmdInfo)(unsafe.Pointer(bp+48 /* &cmdInfo */)).FobjClientData, interp, (objc - 1), (objv + uintptr(1)*4)) + return (*struct { + f func(*libc.TLS, ClientData, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Tcl_CmdInfo)(unsafe.Pointer(bp + 48 /* &cmdInfo */)).FobjProc})).f(tls, (*Tcl_CmdInfo)(unsafe.Pointer(bp+48 /* &cmdInfo */)).FobjClientData, interp, (objc - 1), (objv + uintptr(1)*4)) } // WARNING: The following function, printExplainQueryPlan() is an exact @@ -52825,7 +53202,7 @@ type rlimit64 = struct { } /* resource.h:148:1 */ // Define struct rusage. -// Copyright (C) 1994-2018 Free Software Foundation, Inc. +// Copyright (C) 1994-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -52840,10 +53217,10 @@ type rlimit64 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -52858,11 +53235,13 @@ type rlimit64 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. -// Structure which says how much of each resource has been used. +// Structure which says how much of each resource has been used. If +// the system does not keep track of a particular value, the struct +// field is always zero. // The purpose of all the unions is to have the kernel-compatible layout // while keeping the API type as 'long int', and among machines where @@ -52891,7 +53270,7 @@ type rusage = struct { F__60 struct{ Fru_nsignals int32 } F__64 struct{ Fru_nvcsw int32 } F__68 struct{ Fru_nivcsw int32 } -} /* struct_rusage.h:31:1 */ +} /* struct_rusage.h:33:1 */ func test_getrusage(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, objv uintptr) int32 { /* test1.c:7209:26: */ bp := tls.Alloc(1144) @@ -53029,7 +53408,9 @@ func tclLoadStaticExtensionCmd(tls *libc.TLS, clientData uintptr, interp uintptr return TCL_ERROR } if aExtension[i].FpInit != 0 { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aExtension)) + uintptr(i)*8 + 4 /* &.pInit */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 64 /* db */)), bp+68 /* &zErrMsg */, uintptr(0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{aExtension[i].FpInit})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 64 /* db */)), bp+68 /* &zErrMsg */, uintptr(0)) } else { rc = SQLITE_OK } @@ -53515,7 +53896,9 @@ func test_write_db(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32 aData = tcl.XTcl_GetByteArrayFromObj(tls, *(*uintptr)(unsafe.Pointer(objv + 3*4)), bp+12 /* &nData */) sqlite3.Xsqlite3_file_control(tls, *(*uintptr)(unsafe.Pointer(bp /* db */)), ts+85 /* "main" */, SQLITE_FCNTL_FILE_POINTER, bp+16 /* &pFile */) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 16 /* pFile */)))).FpMethods + 12 /* &.xWrite */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 16 /* pFile */)), aData, *(*int32)(unsafe.Pointer(bp + 12 /* nData */)), *(*Tcl_WideInt)(unsafe.Pointer(bp + 4 /* iOff */))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 16 /* pFile */)))).FpMethods)).FxWrite})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 16 /* pFile */)), aData, *(*int32)(unsafe.Pointer(bp + 12 /* nData */)), *(*Tcl_WideInt)(unsafe.Pointer(bp + 4 /* iOff */))) tcl.XTcl_SetResult(tls, interp, sqlite3.Xsqlite3ErrName(tls, rc), uintptr(1)) return TCL_OK @@ -54900,7 +55283,7 @@ type MemPage1 = struct { FchildPtrSize u8 Fmax1bytePayload u8 FnOverflow u8 - _ [1]byte + F__ccgo_pad1 [1]byte FmaxLocal u16 FminLocal u16 FcellOffset u16 @@ -55156,11 +55539,11 @@ type MemPage1 = struct { // Forward declarations type MemPage = MemPage1 /* btreeInt.h:232:24 */ type BtLock1 = struct { - FpBtree uintptr - FiTable Pgno - FeLock u8 - _ [3]byte - FpNext uintptr + FpBtree uintptr + FiTable Pgno + FeLock u8 + F__ccgo_pad1 [3]byte + FpNext uintptr } /* btree.h:39:9 */ type BtLock = BtLock1 /* btreeInt.h:233:23 */ @@ -56040,7 +56423,7 @@ var aCmd3 = [14]struct { // c-basic-offset: 4 // fill-column: 78 // End: -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56055,11 +56438,11 @@ var aCmd3 = [14]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.20 General utilities -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56074,11 +56457,11 @@ var aCmd3 = [14]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.21 String handling -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56093,9 +56476,9 @@ var aCmd3 = [14]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56110,27 +56493,10 @@ var aCmd3 = [14]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . - -// Copyright (C) 1992-2018 Free Software Foundation, Inc. -// This file is part of the GNU C Library. -// -// The GNU C Library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License, or (at your option) any later version. -// -// The GNU C Library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with the GNU C Library; if not, see -// . +// . // Definitions for POSIX 1003.1b-1993 (aka POSIX.4) scheduling interface. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56145,9 +56511,9 @@ var aCmd3 = [14]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56162,11 +56528,11 @@ var aCmd3 = [14]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Get type definitions. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56181,11 +56547,11 @@ var aCmd3 = [14]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -56217,15 +56583,6 @@ var aCmd3 = [14]struct { // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -56262,11 +56619,6 @@ var aCmd3 = [14]struct { // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Offset of member MEMBER in a struct of type TYPE. @@ -56276,7 +56628,7 @@ var aCmd3 = [14]struct { // Get system specific constant and data structure definitions. // Definitions of constants and data structure for POSIX 1003.1b-1993 // scheduling interface. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56291,14 +56643,14 @@ var aCmd3 = [14]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Scheduling algorithms. // Cloning flags. // Sched parameter structure. Generic version. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56313,7 +56665,7 @@ var aCmd3 = [14]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Data structure to describe a process' schedulability. type sched_param = struct{ Fsched_priority int32 } /* struct_sched_param.h:23:1 */ @@ -56323,7 +56675,7 @@ type sched_param = struct{ Fsched_priority int32 } /* struct_sched_param.h:23:1 // Data structure to describe CPU mask. type cpu_set_t = struct{ F__bits [32]uint32 } /* cpu-set.h:42:3 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56338,11 +56690,11 @@ type cpu_set_t = struct{ F__bits [32]uint32 } /* cpu-set.h:42:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.23 Date and time -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56357,9 +56709,9 @@ type cpu_set_t = struct{ F__bits [32]uint32 } /* cpu-set.h:42:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -56391,15 +56743,6 @@ type cpu_set_t = struct{ F__bits [32]uint32 } /* cpu-set.h:42:3 */ // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -56436,11 +56779,6 @@ type cpu_set_t = struct{ F__bits [32]uint32 } /* cpu-set.h:42:3 */ // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Offset of member MEMBER in a struct of type TYPE. @@ -56448,7 +56786,7 @@ type cpu_set_t = struct{ F__bits [32]uint32 } /* cpu-set.h:42:3 */ // This defines CLOCKS_PER_SEC, which is the number of processor clock // ticks per second, and possibly a number of other constants. // System-dependent timing definitions. Linux version. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56463,12 +56801,12 @@ type cpu_set_t = struct{ F__bits [32]uint32 } /* cpu-set.h:42:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56483,7 +56821,7 @@ type cpu_set_t = struct{ F__bits [32]uint32 } /* cpu-set.h:42:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -56508,7 +56846,7 @@ type cpu_set_t = struct{ F__bits [32]uint32 } /* cpu-set.h:42:3 */ // Flag to indicate time is absolute. -// Copyright (C) 1995-2018 Free Software Foundation, Inc. +// Copyright (C) 1995-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56523,10 +56861,10 @@ type cpu_set_t = struct{ F__bits [32]uint32 } /* cpu-set.h:42:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -56541,7 +56879,7 @@ type cpu_set_t = struct{ F__bits [32]uint32 } /* cpu-set.h:42:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -56592,7 +56930,7 @@ type _pthread_cleanup_buffer = struct { F__arg uintptr F__canceltype int32 F__prev uintptr -} /* pthread.h:191:1 */ +} /* pthread.h:155:1 */ // No special attributes by default. @@ -56602,7 +56940,7 @@ type __pthread_cleanup_frame = struct { F__cancel_arg uintptr F__do_it int32 F__cancel_type int32 -} /* pthread.h:541:1 */ +} /* pthread.h:516:1 */ // Each thread is controlled by an instance of the following // structure. @@ -56649,7 +56987,7 @@ func test_thread_main(tls *libc.TLS, pArg uintptr) uintptr { /* test4.c:67:13: * sqlite3.Xsqlite3_free(tls, (*Thread)(unsafe.Pointer(p)).FzErr) (*Thread)(unsafe.Pointer(p)).FzErr = uintptr(0) } - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((p + 4 /* &.xOp */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Thread)(unsafe.Pointer(p)).FxOp})).f(tls, p) (*Thread)(unsafe.Pointer(p)).Fcompleted++ for (*Thread)(unsafe.Pointer(p)).Fopnum <= (*Thread)(unsafe.Pointer(p)).Fcompleted { libc2.Xsched_yield(tls) @@ -57270,7 +57608,7 @@ var aCmd4 = [15]struct { // c-basic-offset: 4 // fill-column: 78 // End: -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -57285,11 +57623,11 @@ var aCmd4 = [15]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.20 General utilities -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -57304,7 +57642,7 @@ var aCmd4 = [15]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.21 String handling @@ -57400,9 +57738,9 @@ func name_to_enc(tls *libc.TLS, interp uintptr, pObj uintptr) u8 { /* test5.c:94 } type EncName = struct { - FzName uintptr - Fenc u8 - _ [3]byte + FzName uintptr + Fenc u8 + F__ccgo_pad1 [3]byte } /* test5.c:95:3 */ // Usage: test_translate ?? @@ -57902,22 +58240,28 @@ func cfDeviceCharacteristics(tls *libc.TLS, pFile uintptr) int32 { /* test6.c:54 // Pass-throughs for WAL support. func cfShmLock(tls *libc.TLS, pFile uintptr, ofst int32, n int32, flags int32) int32 { /* test6.c:552:12: */ var pReal uintptr = (*CrashFile)(unsafe.Pointer(pFile)).FpRealFile - return (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods + 56 /* &.xShmLock */))))(tls, pReal, ofst, n, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods)).FxShmLock})).f(tls, pReal, ofst, n, flags) } func cfShmBarrier(tls *libc.TLS, pFile uintptr) { /* test6.c:556:13: */ var pReal uintptr = (*CrashFile)(unsafe.Pointer(pFile)).FpRealFile - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods + 60 /* &.xShmBarrier */))))(tls, pReal) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods)).FxShmBarrier})).f(tls, pReal) } func cfShmUnmap(tls *libc.TLS, pFile uintptr, delFlag int32) int32 { /* test6.c:560:12: */ var pReal uintptr = (*CrashFile)(unsafe.Pointer(pFile)).FpRealFile - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods + 64 /* &.xShmUnmap */))))(tls, pReal, delFlag) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods)).FxShmUnmap})).f(tls, pReal, delFlag) } func cfShmMap(tls *libc.TLS, pFile uintptr, iRegion int32, sz int32, w int32, pp uintptr) int32 { /* test6.c:564:12: */ var pReal uintptr = (*CrashFile)(unsafe.Pointer(pFile)).FpRealFile - return (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods + 52 /* &.xShmMap */))))(tls, pReal, iRegion, sz, w, libc.AtomicLoadUintptr(&pp)) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods)).FxShmMap})).f(tls, pReal, iRegion, sz, w, pp) } var CrashFileVtab = sqlite3_io_methods{ @@ -58005,57 +58349,79 @@ func cfOpen(tls *libc.TLS, pCfVfs uintptr, zName uintptr, pFile uintptr, flags i func cfDelete(tls *libc.TLS, pCfVfs uintptr, zPath uintptr, dirSync int32) int32 { /* test6.c:665:12: */ var pVfs uintptr = (*sqlite3_vfs)(unsafe.Pointer(pCfVfs)).FpAppData - return (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pVfs + 28 /* &.xDelete */))))(tls, pVfs, zPath, dirSync) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDelete})).f(tls, pVfs, zPath, dirSync) } func cfAccess(tls *libc.TLS, pCfVfs uintptr, zPath uintptr, flags int32, pResOut uintptr) int32 { /* test6.c:669:12: */ var pVfs uintptr = (*sqlite3_vfs)(unsafe.Pointer(pCfVfs)).FpAppData - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 32 /* &.xAccess */))))(tls, pVfs, zPath, flags, pResOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxAccess})).f(tls, pVfs, zPath, flags, pResOut) } func cfFullPathname(tls *libc.TLS, pCfVfs uintptr, zPath uintptr, nPathOut int32, zPathOut uintptr) int32 { /* test6.c:678:12: */ var pVfs uintptr = (*sqlite3_vfs)(unsafe.Pointer(pCfVfs)).FpAppData - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 36 /* &.xFullPathname */))))(tls, pVfs, zPath, nPathOut, zPathOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxFullPathname})).f(tls, pVfs, zPath, nPathOut, zPathOut) } func cfDlOpen(tls *libc.TLS, pCfVfs uintptr, zPath uintptr) uintptr { /* test6.c:687:13: */ var pVfs uintptr = (*sqlite3_vfs)(unsafe.Pointer(pCfVfs)).FpAppData - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer((pVfs + 40 /* &.xDlOpen */))))(tls, pVfs, zPath) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDlOpen})).f(tls, pVfs, zPath) } func cfDlError(tls *libc.TLS, pCfVfs uintptr, nByte int32, zErrMsg uintptr) { /* test6.c:691:13: */ var pVfs uintptr = (*sqlite3_vfs)(unsafe.Pointer(pCfVfs)).FpAppData - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer((pVfs + 44 /* &.xDlError */))))(tls, pVfs, nByte, zErrMsg) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDlError})).f(tls, pVfs, nByte, zErrMsg) } func cfDlSym(tls *libc.TLS, pCfVfs uintptr, pH uintptr, zSym uintptr) uintptr { /* test6.c:695:13: */ var pVfs uintptr = (*sqlite3_vfs)(unsafe.Pointer(pCfVfs)).FpAppData - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer((pVfs + 48 /* &.xDlSym */))))(tls, pVfs, pH, zSym) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDlSym})).f(tls, pVfs, pH, zSym) } func cfDlClose(tls *libc.TLS, pCfVfs uintptr, pHandle uintptr) { /* test6.c:699:13: */ var pVfs uintptr = (*sqlite3_vfs)(unsafe.Pointer(pCfVfs)).FpAppData - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pVfs + 52 /* &.xDlClose */))))(tls, pVfs, pHandle) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDlClose})).f(tls, pVfs, pHandle) } func cfRandomness(tls *libc.TLS, pCfVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* test6.c:703:12: */ var pVfs uintptr = (*sqlite3_vfs)(unsafe.Pointer(pCfVfs)).FpAppData - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 56 /* &.xRandomness */))))(tls, pVfs, nByte, zBufOut) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxRandomness})).f(tls, pVfs, nByte, zBufOut) } func cfSleep(tls *libc.TLS, pCfVfs uintptr, nMicro int32) int32 { /* test6.c:707:12: */ var pVfs uintptr = (*sqlite3_vfs)(unsafe.Pointer(pCfVfs)).FpAppData - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pVfs + 60 /* &.xSleep */))))(tls, pVfs, nMicro) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxSleep})).f(tls, pVfs, nMicro) } func cfCurrentTime(tls *libc.TLS, pCfVfs uintptr, pTimeOut uintptr) int32 { /* test6.c:711:12: */ var pVfs uintptr = (*sqlite3_vfs)(unsafe.Pointer(pCfVfs)).FpAppData - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pVfs + 64 /* &.xCurrentTime */))))(tls, pVfs, pTimeOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxCurrentTime})).f(tls, pVfs, pTimeOut) } func cfGetLastError(tls *libc.TLS, pCfVfs uintptr, n int32, z uintptr) int32 { /* test6.c:715:12: */ var pVfs uintptr = (*sqlite3_vfs)(unsafe.Pointer(pCfVfs)).FpAppData - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 68 /* &.xGetLastError */))))(tls, pVfs, n, z) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxGetLastError})).f(tls, pVfs, n, z) } func processDevSymArgs(tls *libc.TLS, interp uintptr, objc int32, objv uintptr, piDeviceChar uintptr, piSectorSize uintptr) int32 { /* test6.c:720:12: */ @@ -58127,7 +58493,7 @@ func processDevSymArgs(tls *libc.TLS, interp uintptr, objc int32, objv uintptr, interp, pFlag, bp+80 /* &aFlag[0] */, int32(unsafe.Sizeof(DeviceFlag{})), ts+26944 /* "no such flag" */, 0, bp+192 /* &iChoice */) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pFlag - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -58479,7 +58845,7 @@ func client_main(tls *libc.TLS, pArg uintptr) uintptr { /* test7.c:95:13: */ sqlite3.Xsqlite3_free(tls, (*Thread1)(unsafe.Pointer(p)).FzErr) (*Thread1)(unsafe.Pointer(p)).FzErr = uintptr(0) } - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((p + 4 /* &.xOp */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Thread1)(unsafe.Pointer(p)).FxOp})).f(tls, p) (*Thread1)(unsafe.Pointer(p)).Fcompleted++ for (*Thread1)(unsafe.Pointer(p)).Fopnum <= (*Thread1)(unsafe.Pointer(p)).Fcompleted { libc2.Xsched_yield(tls) @@ -59068,7 +59434,7 @@ var aCmd6 = [13]struct { // c-basic-offset: 4 // fill-column: 78 // End: -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -59083,11 +59449,11 @@ var aCmd6 = [13]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.20 General utilities -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -59102,7 +59468,7 @@ var aCmd6 = [13]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.21 String handling @@ -59127,7 +59493,7 @@ type echo_vtab1 = struct { // c-basic-offset: 4 // fill-column: 78 // End: -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -59142,11 +59508,11 @@ type echo_vtab1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.20 General utilities -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -59161,7 +59527,7 @@ type echo_vtab1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.21 String handling @@ -60611,7 +60977,7 @@ var aObjCmd2 = [2]struct { // c-basic-offset: 4 // fill-column: 78 // End: -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -60626,11 +60992,11 @@ var aObjCmd2 = [2]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.20 General utilities -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -60645,7 +61011,7 @@ var aObjCmd2 = [2]struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.21 String handling @@ -61163,7 +61529,7 @@ func tclDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* test_bestindex.c:224 var pTab uintptr = pVtab for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*tcl_vtab)(unsafe.Pointer(pTab)).FpCmd - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -61251,7 +61617,7 @@ func tclFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, tcl.XTcl_ListObjAppendElement(tls, interp, pScript, pArg) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pArg - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -61397,7 +61763,7 @@ func tclBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* test_ tcl.XTcl_ListObjAppendElement(tls, uintptr(0), pArg, pElem) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pElem - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -61406,7 +61772,7 @@ func tclBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* test_ tcl.XTcl_ListObjAppendElement(tls, uintptr(0), pScript, pArg) for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = pArg - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -61426,7 +61792,7 @@ func tclBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* test_ tcl.XTcl_ListObjAppendElement(tls, uintptr(0), pArg, pElem) for ok2 := true; ok2; ok2 = 0 != 0 { var _objPtr uintptr = pElem - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -61435,7 +61801,7 @@ func tclBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* test_ tcl.XTcl_ListObjAppendElement(tls, uintptr(0), pScript, pArg) for ok3 := true; ok3; ok3 = 0 != 0 { var _objPtr uintptr = pArg - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -61445,7 +61811,7 @@ func tclBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* test_ rc = tcl.XTcl_EvalObjEx(tls, interp, pScript, TCL_EVAL_GLOBAL) for ok4 := true; ok4; ok4 = 0 != 0 { var _objPtr uintptr = pScript - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -61934,7 +62300,7 @@ func sqlite3BtreeCursorList(tls *libc.TLS, p uintptr) { /* test_btree.c:52:6: */ // c-basic-offset: 4 // fill-column: 78 // End: -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -61949,11 +62315,11 @@ func sqlite3BtreeCursorList(tls *libc.TLS, p uintptr) { /* test_btree.c:52:6: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.20 General utilities -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -61968,7 +62334,7 @@ func sqlite3BtreeCursorList(tls *libc.TLS, p uintptr) { /* test_btree.c:52:6: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.21 String handling @@ -62609,22 +62975,28 @@ func devsymDeviceCharacteristics(tls *libc.TLS, pFile uintptr) int32 { /* test_d // Shared-memory methods are all pass-thrus. func devsymShmLock(tls *libc.TLS, pFile uintptr, ofst int32, n int32, flags int32) int32 { /* test_devsym.c:192:12: */ var p uintptr = pFile - return (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*devsym_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 56 /* &.xShmLock */))))(tls, (*devsym_file)(unsafe.Pointer(p)).FpReal, ofst, n, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*devsym_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmLock})).f(tls, (*devsym_file)(unsafe.Pointer(p)).FpReal, ofst, n, flags) } func devsymShmMap(tls *libc.TLS, pFile uintptr, iRegion int32, szRegion int32, isWrite int32, pp uintptr) int32 { /* test_devsym.c:196:12: */ var p uintptr = pFile - return (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*devsym_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 52 /* &.xShmMap */))))(tls, (*devsym_file)(unsafe.Pointer(p)).FpReal, iRegion, szRegion, isWrite, libc.AtomicLoadUintptr(&pp)) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*devsym_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmMap})).f(tls, (*devsym_file)(unsafe.Pointer(p)).FpReal, iRegion, szRegion, isWrite, pp) } func devsymShmBarrier(tls *libc.TLS, pFile uintptr) { /* test_devsym.c:206:13: */ var p uintptr = pFile - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*devsym_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 60 /* &.xShmBarrier */))))(tls, (*devsym_file)(unsafe.Pointer(p)).FpReal) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*devsym_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmBarrier})).f(tls, (*devsym_file)(unsafe.Pointer(p)).FpReal) } func devsymShmUnmap(tls *libc.TLS, pFile uintptr, delFlag int32) int32 { /* test_devsym.c:210:12: */ var p uintptr = pFile - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*devsym_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 64 /* &.xShmUnmap */))))(tls, (*devsym_file)(unsafe.Pointer(p)).FpReal, delFlag) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*devsym_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmUnmap})).f(tls, (*devsym_file)(unsafe.Pointer(p)).FpReal, delFlag) } // Open an devsym file handle. @@ -62693,7 +63065,9 @@ func devsymSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* test_devs // Return the current time as a Julian Day number in *pTimeOut. func devsymCurrentTime(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) int32 { /* test_devsym.c:344:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((g1.FpVfs + 64 /* &.xCurrentTime */))))(tls, g1.FpVfs, pTimeOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(g1.FpVfs)).FxCurrentTime})).f(tls, g1.FpVfs, pTimeOut) } // Return the sector-size in bytes for an writecrash-file. @@ -62857,36 +63231,55 @@ type stat64 = struct { Fst_ino uint64 } /* stat.h:119:1 */ -// statx-related definitions and declarations. -// Copyright (C) 2018 Free Software Foundation, Inc. -// This file is part of the GNU C Library. +// Timestamp structure for the timestamps in struct statx. // -// The GNU C Library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License, or (at your option) any later version. +// tv_sec holds the number of seconds before (negative) or after (positive) +// 00:00:00 1st January 1970 UTC. // -// The GNU C Library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// tv_nsec holds a number of nanoseconds (0..999,999,999) after the tv_sec time. // -// You should have received a copy of the GNU Lesser General Public -// License along with the GNU C Library; if not, see -// . - -// This interface is based on in Linux. - +// __reserved is held in case we need a yet finer resolution. type statx_timestamp = struct { - Ftv_sec int64 - Ftv_nsec uint32 - F__statx_timestamp_pad1 [1]int32 -} /* statx.h:25:1 */ + Ftv_sec int64 + Ftv_nsec uint32 + F__reserved int32 +} /* stat.h:56:1 */ -// Warning: The kernel may add additional fields to this struct in the -// future. Only use this struct for calling the statx function, not -// for storing data. (Expansion will be controlled by the mask -// argument of the statx function.) +// Structures for the extended file attribute retrieval system call +// (statx()). +// +// The caller passes a mask of what they're specifically interested in as a +// parameter to statx(). What statx() actually got will be indicated in +// st_mask upon return. +// +// For each bit in the mask argument: +// +// - if the datum is not supported: +// +// - the bit will be cleared, and +// +// - the datum will be set to an appropriate fabricated value if one is +// available (eg. CIFS can take a default uid and gid), otherwise +// +// - the field will be cleared; +// +// - otherwise, if explicitly requested: +// +// - the datum will be synchronised to the server if AT_STATX_FORCE_SYNC is +// set or if the datum is considered out of date, and +// +// - the field will be filled in and the bit will be set; +// +// - otherwise, if not requested, but available in approximate form without any +// effort, it will be filled in anyway, and the bit will be set upon return +// (it might not be up to date, however, and no attempt will be made to +// synchronise the internal state first); +// +// - otherwise the field and the bit will be cleared before returning. +// +// Items in STATX_BASIC_STATS may be marked unavailable on return, but they +// will have values installed for compatibility purposes so that stat() and +// co. can be emulated in userspace. type statx = struct { Fstx_mask uint32 Fstx_blksize uint32 @@ -62895,37 +63288,39 @@ type statx = struct { Fstx_uid uint32 Fstx_gid uint32 Fstx_mode uint16 - F__statx_pad1 [1]uint16 + F__spare0 [1]uint16 Fstx_ino uint64 Fstx_size uint64 Fstx_blocks uint64 Fstx_attributes_mask uint64 Fstx_atime struct { - Ftv_sec int64 - Ftv_nsec uint32 - F__statx_timestamp_pad1 [1]int32 + Ftv_sec int64 + Ftv_nsec uint32 + F__reserved int32 } Fstx_btime struct { - Ftv_sec int64 - Ftv_nsec uint32 - F__statx_timestamp_pad1 [1]int32 + Ftv_sec int64 + Ftv_nsec uint32 + F__reserved int32 } Fstx_ctime struct { - Ftv_sec int64 - Ftv_nsec uint32 - F__statx_timestamp_pad1 [1]int32 + Ftv_sec int64 + Ftv_nsec uint32 + F__reserved int32 } Fstx_mtime struct { - Ftv_sec int64 - Ftv_nsec uint32 - F__statx_timestamp_pad1 [1]int32 + Ftv_sec int64 + Ftv_nsec uint32 + F__reserved int32 } Fstx_rdev_major uint32 Fstx_rdev_minor uint32 Fstx_dev_major uint32 Fstx_dev_minor uint32 - F__statx_pad2 [14]uint64 -} /* statx.h:36:1 */ + Fstx_mnt_id uint64 + F__spare2 uint64 + F__spare3 [12]uint64 +} /* stat.h:99:1 */ type flock64 = struct { Fl_type int16 @@ -62937,7 +63332,7 @@ type flock64 = struct { // Include generic Linux declarations. // O_*, F_*, FD_* bit values for Linux. -// Copyright (C) 2001-2018 Free Software Foundation, Inc. +// Copyright (C) 2001-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -62952,7 +63347,7 @@ type flock64 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // This file contains shared definitions between Linux architectures // and is included by to declare them. The various @@ -62968,7 +63363,7 @@ type flock64 = struct { // #include // Define struct iovec. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -62983,9 +63378,9 @@ type flock64 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -63017,15 +63412,6 @@ type flock64 = struct { // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -63062,11 +63448,6 @@ type flock64 = struct { // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Offset of member MEMBER in a struct of type TYPE. @@ -63093,6 +63474,8 @@ type f_owner_ex = struct { // Advise to `posix_fadvise'. // Flags for SYNC_FILE_RANGE. +// SYNC_FILE_RANGE_WRITE_AND_WAIT ensures all pages in the range are +// written to disk before returning. // Flags for SPLICE and VMSPLICE. @@ -63160,18 +63543,18 @@ type f_owner_ex = struct { // File handle structure. type file_handle = struct { - _ [0]uint32 + F__ccgo_pad1 [0]uint32 Fhandle_bytes uint32 Fhandle_type int32 -} /* fcntl-linux.h:350:1 */ +} /* fcntl-linux.h:357:1 */ type dirent64 = struct { - Fd_ino uint64 - Fd_off int64 - Fd_reclen uint16 - Fd_type uint8 - Fd_name [256]int8 - _ [1]byte + Fd_ino uint64 + Fd_off int64 + Fd_reclen uint16 + Fd_type uint8 + Fd_name [256]int8 + F__ccgo_pad1 [1]byte } /* dirent.h:37:1 */ type fs_vtab1 = struct { @@ -64426,7 +64809,7 @@ func test_decode(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.Xsqlite3_result_text(tls, context, tcl.XTcl_GetString(tls, pRet), -1, libc.UintptrFromInt32(-1)) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pRet - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -64477,11 +64860,11 @@ func registerTestFunctions(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pThunk u var i int32 for i = 0; uint32(i) < (uint32(unsafe.Sizeof(aFuncs)) / uint32(unsafe.Sizeof(struct { - FzName uintptr - FnArg int8 - _ [3]byte - FeTextRep uint32 - FxFunc uintptr + FzName uintptr + FnArg int8 + F__ccgo_pad1 [3]byte + FeTextRep uint32 + FxFunc uintptr }{}))); i++ { sqlite3.Xsqlite3_create_function(tls, db, aFuncs[i].FzName, int32(aFuncs[i].FnArg), int32(aFuncs[i].FeTextRep), uintptr(0), aFuncs[i].FxFunc, uintptr(0), uintptr(0)) @@ -64496,11 +64879,11 @@ func registerTestFunctions(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pThunk u } var aFuncs = [20]struct { - FzName uintptr - FnArg int8 - _ [3]byte - FeTextRep uint32 - FxFunc uintptr + FzName uintptr + FnArg int8 + F__ccgo_pad1 [3]byte + FeTextRep uint32 + FxFunc uintptr }{ {FzName: ts + 31427 /* "randstr" */, FnArg: int8(2), FeTextRep: uint32(SQLITE_UTF8), FxFunc: 0}, {FzName: ts + 31435 /* "test_destructor" */, FnArg: int8(1), FeTextRep: uint32(SQLITE_UTF8), FxFunc: 0}, @@ -64888,7 +65271,7 @@ type fd_set3 = struct{ Ffds_bits [32]int32 } /* select.h:70:5 */ // c-basic-offset: 4 // fill-column: 78 // End: -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -64903,11 +65286,11 @@ type fd_set3 = struct{ Ffds_bits [32]int32 } /* select.h:70:5 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.20 General utilities -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -64922,11 +65305,11 @@ type fd_set3 = struct{ Ffds_bits [32]int32 } /* select.h:70:5 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.21 String handling -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -64941,11 +65324,11 @@ type fd_set3 = struct{ Ffds_bits [32]int32 } /* select.h:70:5 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -64960,7 +65343,7 @@ type fd_set3 = struct{ Ffds_bits [32]int32 } /* select.h:70:5 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -65429,7 +65812,9 @@ func wrMemInit(tls *libc.TLS, pAppData uintptr) int32 { /* test_init.c:49:12: */ if wrapped.Fmem_fail != 0 { rc = SQLITE_ERROR } else { - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 52 /* &.mem */ + 20 /* &.xInit */))))(tls, wrapped.Fmem.FpAppData) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmem.FxInit})).f(tls, wrapped.Fmem.FpAppData) } if rc == SQLITE_OK { wrapped.Fmem_init = 1 @@ -65438,28 +65823,34 @@ func wrMemInit(tls *libc.TLS, pAppData uintptr) int32 { /* test_init.c:49:12: */ } func wrMemShutdown(tls *libc.TLS, pAppData uintptr) { /* test_init.c:61:13: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 52 /* &.mem */ + 24 /* &.xShutdown */))))(tls, wrapped.Fmem.FpAppData) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmem.FxShutdown})).f(tls, wrapped.Fmem.FpAppData) wrapped.Fmem_init = 0 } func wrMemMalloc(tls *libc.TLS, n int32) uintptr { /* test_init.c:65:13: */ - return (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 52 /* &.mem */ /* &.xMalloc */))))(tls, n) + return (*struct { + f func(*libc.TLS, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmem.FxMalloc})).f(tls, n) } func wrMemFree(tls *libc.TLS, p uintptr) { /* test_init.c:66:13: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 52 /* &.mem */ + 4 /* &.xFree */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmem.FxFree})).f(tls, p) } func wrMemRealloc(tls *libc.TLS, p uintptr, n int32) uintptr { /* test_init.c:67:13: */ - return (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 52 /* &.mem */ + 8 /* &.xRealloc */))))(tls, p, n) + return (*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmem.FxRealloc})).f(tls, p, n) } func wrMemSize(tls *libc.TLS, p uintptr) int32 { /* test_init.c:68:12: */ - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 52 /* &.mem */ + 12 /* &.xSize */))))(tls, p) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmem.FxSize})).f(tls, p) } func wrMemRoundup(tls *libc.TLS, n int32) int32 { /* test_init.c:69:12: */ - return (*(*func(*libc.TLS, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 52 /* &.mem */ + 16 /* &.xRoundup */))))(tls, n) + return (*struct{ f func(*libc.TLS, int32) int32 })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmem.FxRoundup})).f(tls, n) } func wrMutexInit(tls *libc.TLS) int32 { /* test_init.c:72:12: */ @@ -65467,7 +65858,7 @@ func wrMutexInit(tls *libc.TLS) int32 { /* test_init.c:72:12: */ if wrapped.Fmutex_fail != 0 { rc = SQLITE_ERROR } else { - rc = (*(*func(*libc.TLS) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 84 /* &.mutex */ /* &.xMutexInit */))))(tls) + rc = (*struct{ f func(*libc.TLS) int32 })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmutex.FxMutexInit})).f(tls) } if rc == SQLITE_OK { wrapped.Fmutex_init = 1 @@ -65476,37 +65867,45 @@ func wrMutexInit(tls *libc.TLS) int32 { /* test_init.c:72:12: */ } func wrMutexEnd(tls *libc.TLS) int32 { /* test_init.c:84:12: */ - (*(*func(*libc.TLS) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 84 /* &.mutex */ + 4 /* &.xMutexEnd */))))(tls) + (*struct{ f func(*libc.TLS) int32 })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmutex.FxMutexEnd})).f(tls) wrapped.Fmutex_init = 0 return SQLITE_OK } func wrMutexAlloc(tls *libc.TLS, e int32) uintptr { /* test_init.c:89:22: */ - return (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 84 /* &.mutex */ + 8 /* &.xMutexAlloc */))))(tls, e) + return (*struct { + f func(*libc.TLS, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmutex.FxMutexAlloc})).f(tls, e) } func wrMutexFree(tls *libc.TLS, p uintptr) { /* test_init.c:92:13: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 84 /* &.mutex */ + 12 /* &.xMutexFree */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmutex.FxMutexFree})).f(tls, p) } func wrMutexEnter(tls *libc.TLS, p uintptr) { /* test_init.c:95:13: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 84 /* &.mutex */ + 16 /* &.xMutexEnter */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmutex.FxMutexEnter})).f(tls, p) } func wrMutexTry(tls *libc.TLS, p uintptr) int32 { /* test_init.c:98:12: */ - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 84 /* &.mutex */ + 20 /* &.xMutexTry */))))(tls, p) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmutex.FxMutexTry})).f(tls, p) } func wrMutexLeave(tls *libc.TLS, p uintptr) { /* test_init.c:101:13: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 84 /* &.mutex */ + 24 /* &.xMutexLeave */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmutex.FxMutexLeave})).f(tls, p) } func wrMutexHeld(tls *libc.TLS, p uintptr) int32 { /* test_init.c:104:12: */ - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 84 /* &.mutex */ + 28 /* &.xMutexHeld */))))(tls, p) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmutex.FxMutexHeld})).f(tls, p) } func wrMutexNotheld(tls *libc.TLS, p uintptr) int32 { /* test_init.c:107:12: */ - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) + 84 /* &.mutex */ + 32 /* &.xMutexNotheld */))))(tls, p) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fmutex.FxMutexNotheld})).f(tls, p) } func wrPCacheInit(tls *libc.TLS, pArg uintptr) int32 { /* test_init.c:113:12: */ @@ -65514,7 +65913,9 @@ func wrPCacheInit(tls *libc.TLS, pArg uintptr) int32 { /* test_init.c:113:12: */ if wrapped.Fpcache_fail != 0 { rc = SQLITE_ERROR } else { - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) /* &.pcache */ + 8 /* &.xInit */))))(tls, wrapped.Fpcache.FpArg) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fpcache.FxInit})).f(tls, wrapped.Fpcache.FpArg) } if rc == SQLITE_OK { wrapped.Fpcache_init = 1 @@ -65523,40 +65924,54 @@ func wrPCacheInit(tls *libc.TLS, pArg uintptr) int32 { /* test_init.c:113:12: */ } func wrPCacheShutdown(tls *libc.TLS, pArg uintptr) { /* test_init.c:125:13: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) /* &.pcache */ + 12 /* &.xShutdown */))))(tls, wrapped.Fpcache.FpArg) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fpcache.FxShutdown})).f(tls, wrapped.Fpcache.FpArg) wrapped.Fpcache_init = 0 } func wrPCacheCreate(tls *libc.TLS, a int32, b int32, c int32) uintptr { /* test_init.c:130:23: */ - return (*(*func(*libc.TLS, int32, int32, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) /* &.pcache */ + 16 /* &.xCreate */))))(tls, a, b, c) + return (*struct { + f func(*libc.TLS, int32, int32, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fpcache.FxCreate})).f(tls, a, b, c) } func wrPCacheCachesize(tls *libc.TLS, p uintptr, n int32) { /* test_init.c:133:13: */ - (*(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) /* &.pcache */ + 20 /* &.xCachesize */))))(tls, p, n) + (*struct { + f func(*libc.TLS, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fpcache.FxCachesize})).f(tls, p, n) } func wrPCachePagecount(tls *libc.TLS, p uintptr) int32 { /* test_init.c:136:12: */ - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) /* &.pcache */ + 24 /* &.xPagecount */))))(tls, p) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fpcache.FxPagecount})).f(tls, p) } func wrPCacheFetch(tls *libc.TLS, p uintptr, a uint32, b int32) uintptr { /* test_init.c:139:28: */ - return (*(*func(*libc.TLS, uintptr, uint32, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) /* &.pcache */ + 28 /* &.xFetch */))))(tls, p, a, b) + return (*struct { + f func(*libc.TLS, uintptr, uint32, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fpcache.FxFetch})).f(tls, p, a, b) } func wrPCacheUnpin(tls *libc.TLS, p uintptr, a uintptr, b int32) { /* test_init.c:142:13: */ - (*(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) /* &.pcache */ + 32 /* &.xUnpin */))))(tls, p, a, b) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fpcache.FxUnpin})).f(tls, p, a, b) } func wrPCacheRekey(tls *libc.TLS, p uintptr, a uintptr, b uint32, c uint32) { /* test_init.c:145:13: */ - (*(*func(*libc.TLS, uintptr, uintptr, uint32, uint32))(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) /* &.pcache */ + 36 /* &.xRekey */))))(tls, p, a, b, c) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uint32, uint32) + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fpcache.FxRekey})).f(tls, p, a, b, c) } func wrPCacheTruncate(tls *libc.TLS, p uintptr, a uint32) { /* test_init.c:153:13: */ - (*(*func(*libc.TLS, uintptr, uint32))(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) /* &.pcache */ + 40 /* &.xTruncate */))))(tls, p, a) + (*struct { + f func(*libc.TLS, uintptr, uint32) + })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fpcache.FxTruncate})).f(tls, p, a) } func wrPCacheDestroy(tls *libc.TLS, p uintptr) { /* test_init.c:156:13: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&wrapped)) /* &.pcache */ + 44 /* &.xDestroy */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{wrapped.Fpcache.FxDestroy})).f(tls, p) } func installInitWrappers(tls *libc.TLS) { /* test_init.c:160:13: */ @@ -65768,7 +66183,7 @@ type intarray_cursor = intarray_cursor1 /* test_intarray.c:42:32 */ // Free an sqlite3_intarray object. func intarrayFree(tls *libc.TLS, p uintptr) { /* test_intarray.c:64:13: */ if (*sqlite3_intarray)(unsafe.Pointer(p)).FxFree != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((p + 8 /* &.xFree */))))(tls, (*sqlite3_intarray)(unsafe.Pointer(p)).Fa) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_intarray)(unsafe.Pointer(p)).FxFree})).f(tls, (*sqlite3_intarray)(unsafe.Pointer(p)).Fa) } sqlite3.Xsqlite3_free(tls, p) } @@ -65913,7 +66328,7 @@ func sqlite3_intarray_create(tls *libc.TLS, db uintptr, zName uintptr, ppReturn // array does change or is deallocated undefined behavior will result. func sqlite3_intarray_bind(tls *libc.TLS, pIntArray uintptr, nElements int32, aElements uintptr, xFree uintptr) int32 { /* test_intarray.c:257:16: */ if (*sqlite3_intarray)(unsafe.Pointer(pIntArray)).FxFree != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pIntArray + 8 /* &.xFree */))))(tls, (*sqlite3_intarray)(unsafe.Pointer(pIntArray)).Fa) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_intarray)(unsafe.Pointer(pIntArray)).FxFree})).f(tls, (*sqlite3_intarray)(unsafe.Pointer(pIntArray)).Fa) } (*sqlite3_intarray)(unsafe.Pointer(pIntArray)).Fn = nElements (*sqlite3_intarray)(unsafe.Pointer(pIntArray)).Fa = aElements @@ -66576,7 +66991,9 @@ func jtCheckReservedLock(tls *libc.TLS, pFile uintptr, pResOut uintptr) int32 { // File control method. For custom operations on an jt-file. func jtFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int32 { /* test_journal.c:672:12: */ var p uintptr = pFile - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*jt_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 40 /* &.xFileControl */))))(tls, (*jt_file)(unsafe.Pointer(p)).FpReal, op, pArg) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*jt_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxFileControl})).f(tls, (*jt_file)(unsafe.Pointer(p)).FpReal, op, pArg) } // Return the sector-size in bytes for an jt-file. @@ -66649,24 +67066,32 @@ func jtFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zOut // Open the dynamic library located at zPath and return a handle. func jtDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* test_journal.c:776:13: */ - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer((g2.FpVfs + 40 /* &.xDlOpen */))))(tls, g2.FpVfs, zPath) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(g2.FpVfs)).FxDlOpen})).f(tls, g2.FpVfs, zPath) } // Populate the buffer zErrMsg (size nByte bytes) with a human readable // utf-8 string describing the most recent error encountered associated // with dynamic libraries. func jtDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zErrMsg uintptr) { /* test_journal.c:785:13: */ - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer((g2.FpVfs + 44 /* &.xDlError */))))(tls, g2.FpVfs, nByte, zErrMsg) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(g2.FpVfs)).FxDlError})).f(tls, g2.FpVfs, nByte, zErrMsg) } // Return a pointer to the symbol zSymbol in the dynamic library pHandle. func jtDlSym(tls *libc.TLS, pVfs uintptr, p uintptr, zSym uintptr) uintptr { /* test_journal.c:792:13: */ - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer((g2.FpVfs + 48 /* &.xDlSym */))))(tls, g2.FpVfs, p, zSym) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(g2.FpVfs)).FxDlSym})).f(tls, g2.FpVfs, p, zSym) } // Close the dynamic library handle pHandle. func jtDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* test_journal.c:799:13: */ - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((g2.FpVfs + 52 /* &.xDlClose */))))(tls, g2.FpVfs, pHandle) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(g2.FpVfs)).FxDlClose})).f(tls, g2.FpVfs, pHandle) } // Populate the buffer pointed to by zBufOut with nByte bytes of @@ -66683,16 +67108,22 @@ func jtSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* test_journal. // Return the current time as a Julian Day number in *pTimeOut. func jtCurrentTime(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) int32 { /* test_journal.c:822:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((g2.FpVfs + 64 /* &.xCurrentTime */))))(tls, g2.FpVfs, pTimeOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(g2.FpVfs)).FxCurrentTime})).f(tls, g2.FpVfs, pTimeOut) } // Return the current time as a Julian Day number in *pTimeOut. func jtCurrentTimeInt64(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) int32 { /* test_journal.c:828:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((g2.FpVfs + 72 /* &.xCurrentTimeInt64 */))))(tls, g2.FpVfs, pTimeOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(g2.FpVfs)).FxCurrentTimeInt64})).f(tls, g2.FpVfs, pTimeOut) } func jtGetLastError(tls *libc.TLS, pVfs uintptr, n int32, z uintptr) int32 { /* test_journal.c:832:12: */ - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((g2.FpVfs + 68 /* &.xGetLastError */))))(tls, g2.FpVfs, n, z) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(g2.FpVfs)).FxGetLastError})).f(tls, g2.FpVfs, n, z) } // ************************************************************************* @@ -66731,7 +67162,7 @@ func jt_unregister(tls *libc.TLS) { /* test_journal.c:865:6: */ // c-basic-offset: 4 // fill-column: 78 // End: -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -66746,11 +67177,11 @@ func jt_unregister(tls *libc.TLS) { /* test_journal.c:865:6: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.20 General utilities -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -66765,11 +67196,11 @@ func jt_unregister(tls *libc.TLS) { /* test_journal.c:865:6: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.21 String handling -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -66784,11 +67215,11 @@ func jt_unregister(tls *libc.TLS) { /* test_journal.c:865:6: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -66803,7 +67234,7 @@ func jt_unregister(tls *libc.TLS) { /* test_journal.c:865:6: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -66826,7 +67257,7 @@ type MemFault = struct { FnOkBefore int32 FnOkAfter int32 Fenable u8 - _ [3]byte + F__ccgo_pad1 [3]byte FisInstalled int32 FisBenignMode int32 Fm sqlite3_mem_methods @@ -66839,7 +67270,7 @@ type MemFault = struct { // c-basic-offset: 4 // fill-column: 78 // End: -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -66854,11 +67285,11 @@ type MemFault = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.20 General utilities -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -66873,11 +67304,11 @@ type MemFault = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.21 String handling -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -66892,11 +67323,11 @@ type MemFault = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -66911,7 +67342,7 @@ type MemFault = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -66978,7 +67409,9 @@ func faultsimStep(tls *libc.TLS) int32 { /* test_malloc.c:67:12: */ func faultsimMalloc(tls *libc.TLS, n int32) uintptr { /* test_malloc.c:94:13: */ var p uintptr = uintptr(0) if !(faultsimStep(tls) != 0) { - p = (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&memfault)) + 36 /* &.m */ /* &.xMalloc */))))(tls, n) + p = (*struct { + f func(*libc.TLS, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{memfault.Fm.FxMalloc})).f(tls, n) } return p } @@ -66988,7 +67421,9 @@ func faultsimMalloc(tls *libc.TLS, n int32) uintptr { /* test_malloc.c:94:13: */ func faultsimRealloc(tls *libc.TLS, pOld uintptr, n int32) uintptr { /* test_malloc.c:107:13: */ var p uintptr = uintptr(0) if !(faultsimStep(tls) != 0) { - p = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&memfault)) + 36 /* &.m */ + 8 /* &.xRealloc */))))(tls, pOld, n) + p = (*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{memfault.Fm.FxRealloc})).f(tls, pOld, n) } return p } @@ -68745,7 +69180,9 @@ func md5_cmd(tls *libc.TLS, cd uintptr, interp uintptr, argc int32, argv uintptr MD5Update(tls, bp+48 /* &ctx */, *(*uintptr)(unsafe.Pointer(argv + 1*4)), libc.Xstrlen(tls, *(*uintptr)(unsafe.Pointer(argv + 1*4)))) MD5Final(tls, bp+140 /* &digest[0] */, bp+48 /* &ctx */) converter = cd - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(&converter)))(tls, bp+140 /* &digest[0] */, bp+156 /* &zBuf[0] */) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{converter})).f(tls, bp+140 /* &digest[0] */, bp+156 /* &zBuf[0] */) tcl.XTcl_AppendResult(tls, interp, libc.VaList(bp+32, bp+156 /* &zBuf[0] */, uintptr(0))) return TCL_OK } @@ -68803,7 +69240,9 @@ func md5file_cmd(tls *libc.TLS, cd uintptr, interp uintptr, argc int32, argv uin libc.Xfclose(tls, in) MD5Final(tls, bp+10412 /* &digest[0] */, bp+80 /* &ctx */) converter = cd - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(&converter)))(tls, bp+10412 /* &digest[0] */, bp+172 /* &zBuf[0] */) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{converter})).f(tls, bp+10412 /* &digest[0] */, bp+172 /* &zBuf[0] */) tcl.XTcl_AppendResult(tls, interp, libc.VaList(bp+64, bp+172 /* &zBuf[0] */, uintptr(0))) return TCL_OK } @@ -68923,15 +69362,15 @@ func Md5_Register(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pThunk uintptr) i // Forward declaration of all object types type multiplexGroup1 = struct { - FaReal uintptr - FnReal int32 - FzName uintptr - FnName int32 - Fflags int32 - FszChunk uint32 - FbEnabled uint8 - FbTruncate uint8 - _ [2]byte + FaReal uintptr + FnReal int32 + FzName uintptr + FnName int32 + Fflags int32 + FszChunk uint32 + FbEnabled uint8 + FbTruncate uint8 + F__ccgo_pad1 [2]byte } /* test_multiplex.c:106:9 */ // The following macros redefine the API routines so that they are @@ -69111,7 +69550,9 @@ func multiplexSubOpen(tls *libc.TLS, pGroup uintptr, iChunk int32, rc uintptr, p } else if (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal+uintptr(iChunk)*8)).Fz == uintptr(0) { return uintptr(0) } else { - *(*int32)(unsafe.Pointer(rc)) = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pOrigVfs + 32 /* &.xAccess */))))(tls, pOrigVfs, (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal+uintptr(iChunk)*8)).Fz, + *(*int32)(unsafe.Pointer(rc)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxAccess})).f(tls, pOrigVfs, (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal+uintptr(iChunk)*8)).Fz, SQLITE_ACCESS_EXISTS, bp+16 /* &bExists */) if (*(*int32)(unsafe.Pointer(rc)) != 0) || !(*(*int32)(unsafe.Pointer(bp + 16 /* bExists */)) != 0) { if *(*int32)(unsafe.Pointer(rc)) != 0 { @@ -69128,7 +69569,9 @@ func multiplexSubOpen(tls *libc.TLS, pGroup uintptr, iChunk int32, rc uintptr, p return uintptr(0) } (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal + uintptr(iChunk)*8)).Fp = pSubOpen - *(*int32)(unsafe.Pointer(rc)) = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pOrigVfs + 24 /* &.xOpen */))))(tls, pOrigVfs, (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal+uintptr(iChunk)*8)).Fz, pSubOpen, + *(*int32)(unsafe.Pointer(rc)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxOpen})).f(tls, pOrigVfs, (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal+uintptr(iChunk)*8)).Fz, pSubOpen, flags, pOutFlags) if (*(*int32)(unsafe.Pointer(rc))) != SQLITE_OK { sqlite3.Xsqlite3_log(tls, *(*int32)(unsafe.Pointer(rc)), ts+34844, /* "multiplexor.xOpe..." */ @@ -69158,7 +69601,9 @@ func multiplexSubSize(tls *libc.TLS, pGroup uintptr, iChunk int32, rc uintptr) s if pSub == uintptr(0) { return int64(0) } - *(*int32)(unsafe.Pointer(rc)) = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSub)).FpMethods + 24 /* &.xFileSize */))))(tls, pSub, bp /* &sz */) + *(*int32)(unsafe.Pointer(rc)) = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSub)).FpMethods)).FxFileSize})).f(tls, pSub, bp /* &sz */) return *(*sqlite3_int64)(unsafe.Pointer(bp /* sz */)) } @@ -69218,9 +69663,13 @@ func multiplexFuncInit(tls *libc.TLS, db uintptr, pzErrMsg uintptr, pApi uintptr func multiplexSubClose(tls *libc.TLS, pGroup uintptr, iChunk int32, pOrigVfs uintptr) { /* test_multiplex.c:431:13: */ var pSubOpen uintptr = (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal + uintptr(iChunk)*8)).Fp if pSubOpen != 0 { - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 4 /* &.xClose */))))(tls, pSubOpen) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxClose})).f(tls, pSubOpen) if (pOrigVfs != 0) && ((*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal+uintptr(iChunk)*8)).Fz != 0) { - (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pOrigVfs + 28 /* &.xDelete */))))(tls, pOrigVfs, (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal+uintptr(iChunk)*8)).Fz, 0) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxDelete})).f(tls, pOrigVfs, (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal+uintptr(iChunk)*8)).Fz, 0) } sqlite3.Xsqlite3_free(tls, (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal+uintptr(iChunk)*8)).Fp) } @@ -69319,7 +69768,9 @@ func multiplexOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pConn uintptr, fl if *(*int32)(unsafe.Pointer(bp /* rc */)) == SQLITE_OK { // var sz64 sqlite3_int64 at bp+4, 8 - *(*int32)(unsafe.Pointer(bp /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 24 /* &.xFileSize */))))(tls, pSubOpen, bp+4 /* &sz64 */) + *(*int32)(unsafe.Pointer(bp /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxFileSize})).f(tls, pSubOpen, bp+4 /* &sz64 */) if (*(*int32)(unsafe.Pointer(bp /* rc */)) == SQLITE_OK) && (zName != 0) { // var bExists int32 at bp+12, 4 @@ -69332,10 +69783,14 @@ func multiplexOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pConn uintptr, fl // file-system. var iChunk int32 = 1 for ok := true; ok; ok = ((*(*int32)(unsafe.Pointer(bp /* rc */)) == SQLITE_OK) && (*(*int32)(unsafe.Pointer(bp + 12 /* bExists */)) != 0)) { - *(*int32)(unsafe.Pointer(bp /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pOrigVfs + 32 /* &.xAccess */))))(tls, pOrigVfs, + *(*int32)(unsafe.Pointer(bp /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxAccess})).f(tls, pOrigVfs, (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal+uintptr(iChunk)*8)).Fz, SQLITE_ACCESS_EXISTS, bp+12 /* &bExists */) if (*(*int32)(unsafe.Pointer(bp /* rc */)) == SQLITE_OK) && (*(*int32)(unsafe.Pointer(bp + 12 /* bExists */)) != 0) { - *(*int32)(unsafe.Pointer(bp /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pOrigVfs + 28 /* &.xDelete */))))(tls, pOrigVfs, (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal+uintptr(iChunk)*8)).Fz, 0) + *(*int32)(unsafe.Pointer(bp /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxDelete})).f(tls, pOrigVfs, (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal+uintptr(iChunk)*8)).Fz, 0) if *(*int32)(unsafe.Pointer(bp /* rc */)) == SQLITE_OK { *(*int32)(unsafe.Pointer(bp /* rc */)) = multiplexSubFilename(tls, pGroup, libc.PreIncInt32(&iChunk, 1)) } @@ -69351,7 +69806,9 @@ func multiplexOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pConn uintptr, fl // larger than the chunk size, that means the chunk size is too small. // But we have no way of determining the intended chunk size, so // just disable the multiplexor all togethre. - *(*int32)(unsafe.Pointer(bp /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pOrigVfs + 32 /* &.xAccess */))))(tls, pOrigVfs, (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal+1*8)).Fz, + *(*int32)(unsafe.Pointer(bp /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxAccess})).f(tls, pOrigVfs, (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal+1*8)).Fz, SQLITE_ACCESS_EXISTS, bp+12 /* &bExists */) *(*int32)(unsafe.Pointer(bp + 12 /* bExists */)) = (libc.Bool32(multiplexSubSize(tls, pGroup, 1, bp /* &rc */) > int64(0))) if ((((*(*int32)(unsafe.Pointer(bp /* rc */)) == SQLITE_OK) && (*(*int32)(unsafe.Pointer(bp + 12 /* bExists */)) != 0)) && (*(*sqlite3_int64)(unsafe.Pointer(bp + 4 /* sz64 */)) == (*(*sqlite3_int64)(unsafe.Pointer(bp + 4 /* sz64 */)) & int64(0xffff0000)))) && (*(*sqlite3_int64)(unsafe.Pointer(bp + 4 /* sz64 */)) > int64(0))) && @@ -69387,7 +69844,9 @@ func multiplexDelete(tls *libc.TLS, pVfs uintptr, zName uintptr, syncDir int32) var rc int32 var pOrigVfs uintptr = gMultiplex.FpOrigVfs // Real VFS - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pOrigVfs + 28 /* &.xDelete */))))(tls, pOrigVfs, zName, syncDir) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxDelete})).f(tls, pOrigVfs, zName, syncDir) if rc == SQLITE_OK { // If the main chunk was deleted successfully, also delete any subsequent // chunks - starting with the last (highest numbered). @@ -69402,21 +69861,29 @@ func multiplexDelete(tls *libc.TLS, pVfs uintptr, zName uintptr, syncDir int32) for ok := true; ok; ok = ((rc == SQLITE_OK) && (*(*int32)(unsafe.Pointer(bp /* bExists */)) != 0)) { multiplexFilename(tls, zName, nName, SQLITE_OPEN_MAIN_JOURNAL, libc.PreIncInt32(&iChunk, 1), z) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pOrigVfs + 32 /* &.xAccess */))))(tls, pOrigVfs, z, SQLITE_ACCESS_EXISTS, bp /* &bExists */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxAccess})).f(tls, pOrigVfs, z, SQLITE_ACCESS_EXISTS, bp /* &bExists */) } for (rc == SQLITE_OK) && (iChunk > 1) { multiplexFilename(tls, zName, nName, SQLITE_OPEN_MAIN_JOURNAL, libc.PreDecInt32(&iChunk, 1), z) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pOrigVfs + 28 /* &.xDelete */))))(tls, pOrigVfs, z, syncDir) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxDelete})).f(tls, pOrigVfs, z, syncDir) } if rc == SQLITE_OK { iChunk = 0 for ok1 := true; ok1; ok1 = ((rc == SQLITE_OK) && (*(*int32)(unsafe.Pointer(bp /* bExists */)) != 0)) { multiplexFilename(tls, zName, nName, SQLITE_OPEN_WAL, libc.PreIncInt32(&iChunk, 1), z) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pOrigVfs + 32 /* &.xAccess */))))(tls, pOrigVfs, z, SQLITE_ACCESS_EXISTS, bp /* &bExists */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxAccess})).f(tls, pOrigVfs, z, SQLITE_ACCESS_EXISTS, bp /* &bExists */) } for (rc == SQLITE_OK) && (iChunk > 1) { multiplexFilename(tls, zName, nName, SQLITE_OPEN_WAL, libc.PreDecInt32(&iChunk, 1), z) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pOrigVfs + 28 /* &.xDelete */))))(tls, pOrigVfs, z, syncDir) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxDelete})).f(tls, pOrigVfs, z, syncDir) } } } @@ -69426,44 +69893,64 @@ func multiplexDelete(tls *libc.TLS, pVfs uintptr, zName uintptr, syncDir int32) } func multiplexAccess(tls *libc.TLS, a uintptr, b uintptr, c int32, d uintptr) int32 { /* test_multiplex.c:656:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((gMultiplex.FpOrigVfs + 32 /* &.xAccess */))))(tls, gMultiplex.FpOrigVfs, b, c, d) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gMultiplex.FpOrigVfs)).FxAccess})).f(tls, gMultiplex.FpOrigVfs, b, c, d) } func multiplexFullPathname(tls *libc.TLS, a uintptr, b uintptr, c int32, d uintptr) int32 { /* test_multiplex.c:659:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((gMultiplex.FpOrigVfs + 36 /* &.xFullPathname */))))(tls, gMultiplex.FpOrigVfs, b, c, d) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gMultiplex.FpOrigVfs)).FxFullPathname})).f(tls, gMultiplex.FpOrigVfs, b, c, d) } func multiplexDlOpen(tls *libc.TLS, a uintptr, b uintptr) uintptr { /* test_multiplex.c:662:13: */ - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer((gMultiplex.FpOrigVfs + 40 /* &.xDlOpen */))))(tls, gMultiplex.FpOrigVfs, b) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gMultiplex.FpOrigVfs)).FxDlOpen})).f(tls, gMultiplex.FpOrigVfs, b) } func multiplexDlError(tls *libc.TLS, a uintptr, b int32, c uintptr) { /* test_multiplex.c:665:13: */ - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer((gMultiplex.FpOrigVfs + 44 /* &.xDlError */))))(tls, gMultiplex.FpOrigVfs, b, c) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gMultiplex.FpOrigVfs)).FxDlError})).f(tls, gMultiplex.FpOrigVfs, b, c) } func multiplexDlSym(tls *libc.TLS, a uintptr, b uintptr, c uintptr) uintptr { /* test_multiplex.c:668:13: */ - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer((gMultiplex.FpOrigVfs + 48 /* &.xDlSym */))))(tls, gMultiplex.FpOrigVfs, b, c) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gMultiplex.FpOrigVfs)).FxDlSym})).f(tls, gMultiplex.FpOrigVfs, b, c) } func multiplexDlClose(tls *libc.TLS, a uintptr, b uintptr) { /* test_multiplex.c:671:13: */ - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((gMultiplex.FpOrigVfs + 52 /* &.xDlClose */))))(tls, gMultiplex.FpOrigVfs, b) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gMultiplex.FpOrigVfs)).FxDlClose})).f(tls, gMultiplex.FpOrigVfs, b) } func multiplexRandomness(tls *libc.TLS, a uintptr, b int32, c uintptr) int32 { /* test_multiplex.c:674:12: */ - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((gMultiplex.FpOrigVfs + 56 /* &.xRandomness */))))(tls, gMultiplex.FpOrigVfs, b, c) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gMultiplex.FpOrigVfs)).FxRandomness})).f(tls, gMultiplex.FpOrigVfs, b, c) } func multiplexSleep(tls *libc.TLS, a uintptr, b int32) int32 { /* test_multiplex.c:677:12: */ - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((gMultiplex.FpOrigVfs + 60 /* &.xSleep */))))(tls, gMultiplex.FpOrigVfs, b) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gMultiplex.FpOrigVfs)).FxSleep})).f(tls, gMultiplex.FpOrigVfs, b) } func multiplexCurrentTime(tls *libc.TLS, a uintptr, b uintptr) int32 { /* test_multiplex.c:680:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((gMultiplex.FpOrigVfs + 64 /* &.xCurrentTime */))))(tls, gMultiplex.FpOrigVfs, b) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gMultiplex.FpOrigVfs)).FxCurrentTime})).f(tls, gMultiplex.FpOrigVfs, b) } func multiplexGetLastError(tls *libc.TLS, a uintptr, b int32, c uintptr) int32 { /* test_multiplex.c:683:12: */ if (*sqlite3_vfs)(unsafe.Pointer(gMultiplex.FpOrigVfs)).FxGetLastError != 0 { - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((gMultiplex.FpOrigVfs + 68 /* &.xGetLastError */))))(tls, gMultiplex.FpOrigVfs, b, c) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gMultiplex.FpOrigVfs)).FxGetLastError})).f(tls, gMultiplex.FpOrigVfs, b, c) } else { return 0 } @@ -69471,7 +69958,9 @@ func multiplexGetLastError(tls *libc.TLS, a uintptr, b int32, c uintptr) int32 { } func multiplexCurrentTimeInt64(tls *libc.TLS, a uintptr, b uintptr) int32 { /* test_multiplex.c:690:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((gMultiplex.FpOrigVfs + 72 /* &.xCurrentTimeInt64 */))))(tls, gMultiplex.FpOrigVfs, b) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gMultiplex.FpOrigVfs)).FxCurrentTimeInt64})).f(tls, gMultiplex.FpOrigVfs, b) } //*********************** I/O Method Wrappers ****************************** @@ -69504,7 +69993,9 @@ func multiplexRead(tls *libc.TLS, pConn uintptr, pBuf uintptr, iAmt int32, iOfst if pSubOpen == uintptr(0) { *(*int32)(unsafe.Pointer(bp /* rc */)) = (SQLITE_IOERR | (int32(1) << 8)) } else { - *(*int32)(unsafe.Pointer(bp /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 8 /* &.xRead */))))(tls, pSubOpen, pBuf, iAmt, iOfst) + *(*int32)(unsafe.Pointer(bp /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxRead})).f(tls, pSubOpen, pBuf, iAmt, iOfst) } } else { for iAmt > 0 { @@ -69517,7 +70008,9 @@ func multiplexRead(tls *libc.TLS, pConn uintptr, pBuf uintptr, iAmt int32, iOfst extra = 0 } iAmt = iAmt - (extra) - *(*int32)(unsafe.Pointer(bp /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 8 /* &.xRead */))))(tls, pSubOpen, pBuf, iAmt, + *(*int32)(unsafe.Pointer(bp /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxRead})).f(tls, pSubOpen, pBuf, iAmt, (iOfst % sqlite3_int64((*multiplexGroup)(unsafe.Pointer(pGroup)).FszChunk))) if *(*int32)(unsafe.Pointer(bp /* rc */)) != SQLITE_OK { break @@ -69550,7 +70043,9 @@ func multiplexWrite(tls *libc.TLS, pConn uintptr, pBuf uintptr, iAmt int32, iOfs if pSubOpen == uintptr(0) { *(*int32)(unsafe.Pointer(bp /* rc */)) = (SQLITE_IOERR | (int32(3) << 8)) } else { - *(*int32)(unsafe.Pointer(bp /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 12 /* &.xWrite */))))(tls, pSubOpen, pBuf, iAmt, iOfst) + *(*int32)(unsafe.Pointer(bp /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxWrite})).f(tls, pSubOpen, pBuf, iAmt, iOfst) } } else { for (*(*int32)(unsafe.Pointer(bp /* rc */)) == SQLITE_OK) && (iAmt > 0) { @@ -69562,7 +70057,9 @@ func multiplexWrite(tls *libc.TLS, pConn uintptr, pBuf uintptr, iAmt int32, iOfs extra = 0 } iAmt = iAmt - (extra) - *(*int32)(unsafe.Pointer(bp /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 12 /* &.xWrite */))))(tls, pSubOpen, pBuf, iAmt, + *(*int32)(unsafe.Pointer(bp /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxWrite})).f(tls, pSubOpen, pBuf, iAmt, (iOfst % sqlite3_int64((*multiplexGroup)(unsafe.Pointer(pGroup)).FszChunk))) pBuf = (pBuf + uintptr(iAmt)) iOfst = iOfst + (sqlite3_int64(iAmt)) @@ -69588,7 +70085,9 @@ func multiplexTruncate(tls *libc.TLS, pConn uintptr, size sqlite3_int64) int32 { if pSubOpen == uintptr(0) { *(*int32)(unsafe.Pointer(bp /* rc */)) = (SQLITE_IOERR | (int32(6) << 8)) } else { - *(*int32)(unsafe.Pointer(bp /* rc */)) = (*(*func(*libc.TLS, uintptr, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 16 /* &.xTruncate */))))(tls, pSubOpen, size) + *(*int32)(unsafe.Pointer(bp /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxTruncate})).f(tls, pSubOpen, size) } } else { var i int32 @@ -69602,14 +70101,18 @@ func multiplexTruncate(tls *libc.TLS, pConn uintptr, size sqlite3_int64) int32 { } else { pSubOpen = multiplexSubOpen(tls, pGroup, i, bp /* &rc */, uintptr(0), 0) if pSubOpen != 0 { - *(*int32)(unsafe.Pointer(bp /* rc */)) = (*(*func(*libc.TLS, uintptr, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 16 /* &.xTruncate */))))(tls, pSubOpen, int64(0)) + *(*int32)(unsafe.Pointer(bp /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxTruncate})).f(tls, pSubOpen, int64(0)) } } } if *(*int32)(unsafe.Pointer(bp /* rc */)) == SQLITE_OK { pSubOpen = multiplexSubOpen(tls, pGroup, iBaseGroup, bp /* &rc */, uintptr(0), 0) if pSubOpen != 0 { - *(*int32)(unsafe.Pointer(bp /* rc */)) = (*(*func(*libc.TLS, uintptr, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 16 /* &.xTruncate */))))(tls, pSubOpen, (size % sqlite3_int64((*multiplexGroup)(unsafe.Pointer(pGroup)).FszChunk))) + *(*int32)(unsafe.Pointer(bp /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxTruncate})).f(tls, pSubOpen, (size % sqlite3_int64((*multiplexGroup)(unsafe.Pointer(pGroup)).FszChunk))) } } if *(*int32)(unsafe.Pointer(bp /* rc */)) != 0 { @@ -69628,7 +70131,9 @@ func multiplexSync(tls *libc.TLS, pConn uintptr, flags int32) int32 { /* test_mu for i = 0; i < (*multiplexGroup)(unsafe.Pointer(pGroup)).FnReal; i++ { var pSubOpen uintptr = (*multiplexReal)(unsafe.Pointer((*multiplexGroup)(unsafe.Pointer(pGroup)).FaReal + uintptr(i)*8)).Fp if pSubOpen != 0 { - var rc2 int32 = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 20 /* &.xSync */))))(tls, pSubOpen, flags) + var rc2 int32 = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxSync})).f(tls, pSubOpen, flags) if rc2 != SQLITE_OK { rc = rc2 } @@ -69652,7 +70157,9 @@ func multiplexFileSize(tls *libc.TLS, pConn uintptr, pSize uintptr) int32 { /* t if pSubOpen == uintptr(0) { *(*int32)(unsafe.Pointer(bp /* rc */)) = (SQLITE_IOERR | (int32(7) << 8)) } else { - *(*int32)(unsafe.Pointer(bp /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 24 /* &.xFileSize */))))(tls, pSubOpen, pSize) + *(*int32)(unsafe.Pointer(bp /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxFileSize})).f(tls, pSubOpen, pSize) } } else { *(*sqlite3_int64)(unsafe.Pointer(pSize)) = int64(0) @@ -69677,7 +70184,9 @@ func multiplexLock(tls *libc.TLS, pConn uintptr, lock int32) int32 { /* test_mul var pSubOpen uintptr = multiplexSubOpen(tls, (*multiplexConn)(unsafe.Pointer(p)).FpGroup, 0, bp /* &rc */, uintptr(0), 0) if pSubOpen != 0 { - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 28 /* &.xLock */))))(tls, pSubOpen, lock) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxLock})).f(tls, pSubOpen, lock) } return SQLITE_BUSY } @@ -69692,7 +70201,9 @@ func multiplexUnlock(tls *libc.TLS, pConn uintptr, lock int32) int32 { /* test_m var pSubOpen uintptr = multiplexSubOpen(tls, (*multiplexConn)(unsafe.Pointer(p)).FpGroup, 0, bp /* &rc */, uintptr(0), 0) if pSubOpen != 0 { - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 32 /* &.xUnlock */))))(tls, pSubOpen, lock) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxUnlock})).f(tls, pSubOpen, lock) } return (SQLITE_IOERR | (int32(8) << 8)) } @@ -69707,7 +70218,9 @@ func multiplexCheckReservedLock(tls *libc.TLS, pConn uintptr, pResOut uintptr) i var pSubOpen uintptr = multiplexSubOpen(tls, (*multiplexConn)(unsafe.Pointer(p)).FpGroup, 0, bp /* &rc */, uintptr(0), 0) if pSubOpen != 0 { - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 36 /* &.xCheckReservedLock */))))(tls, pSubOpen, pResOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxCheckReservedLock})).f(tls, pSubOpen, pResOut) } return (SQLITE_IOERR | (int32(14) << 8)) } @@ -69797,7 +70310,9 @@ func multiplexFileControl(tls *libc.TLS, pConn uintptr, op int32, pArg uintptr) default: pSubOpen = multiplexSubOpen(tls, pGroup, 0, bp+8 /* &rc */, uintptr(0), 0) if pSubOpen != 0 { - *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 40 /* &.xFileControl */))))(tls, pSubOpen, op, pArg) + *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxFileControl})).f(tls, pSubOpen, op, pArg) if (op == SQLITE_FCNTL_VFSNAME) && (*(*int32)(unsafe.Pointer(bp + 8 /* rc */)) == SQLITE_OK) { *(*uintptr)(unsafe.Pointer(pArg)) = sqlite3.Xsqlite3_mprintf(tls, ts+34923 /* "multiplex/%z" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(pArg)))) } @@ -69817,7 +70332,9 @@ func multiplexSectorSize(tls *libc.TLS, pConn uintptr) int32 { /* test_multiplex var pSubOpen uintptr = multiplexSubOpen(tls, (*multiplexConn)(unsafe.Pointer(p)).FpGroup, 0, bp /* &rc */, uintptr(0), 0) if (pSubOpen != 0) && ((*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxSectorSize != 0) { - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 44 /* &.xSectorSize */))))(tls, pSubOpen) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxSectorSize})).f(tls, pSubOpen) } return DEFAULT_SECTOR_SIZE } @@ -69832,7 +70349,9 @@ func multiplexDeviceCharacteristics(tls *libc.TLS, pConn uintptr) int32 { /* tes var pSubOpen uintptr = multiplexSubOpen(tls, (*multiplexConn)(unsafe.Pointer(p)).FpGroup, 0, bp /* &rc */, uintptr(0), 0) if pSubOpen != 0 { - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 48 /* &.xDeviceCharacteristics */))))(tls, pSubOpen) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxDeviceCharacteristics})).f(tls, pSubOpen) } return 0 } @@ -69847,7 +70366,9 @@ func multiplexShmMap(tls *libc.TLS, pConn uintptr, iRegion int32, szRegion int32 var pSubOpen uintptr = multiplexSubOpen(tls, (*multiplexConn)(unsafe.Pointer(p)).FpGroup, 0, bp /* &rc */, uintptr(0), 0) if pSubOpen != 0 { - return (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 52 /* &.xShmMap */))))(tls, pSubOpen, iRegion, szRegion, bExtend, libc.AtomicLoadUintptr(&pp)) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxShmMap})).f(tls, pSubOpen, iRegion, szRegion, bExtend, pp) } return SQLITE_IOERR } @@ -69862,7 +70383,9 @@ func multiplexShmLock(tls *libc.TLS, pConn uintptr, ofst int32, n int32, flags i var pSubOpen uintptr = multiplexSubOpen(tls, (*multiplexConn)(unsafe.Pointer(p)).FpGroup, 0, bp /* &rc */, uintptr(0), 0) if pSubOpen != 0 { - return (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 56 /* &.xShmLock */))))(tls, pSubOpen, ofst, n, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxShmLock})).f(tls, pSubOpen, ofst, n, flags) } return SQLITE_BUSY } @@ -69877,7 +70400,7 @@ func multiplexShmBarrier(tls *libc.TLS, pConn uintptr) { /* test_multiplex.c:106 var pSubOpen uintptr = multiplexSubOpen(tls, (*multiplexConn)(unsafe.Pointer(p)).FpGroup, 0, bp /* &rc */, uintptr(0), 0) if pSubOpen != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 60 /* &.xShmBarrier */))))(tls, pSubOpen) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxShmBarrier})).f(tls, pSubOpen) } } @@ -69891,7 +70414,9 @@ func multiplexShmUnmap(tls *libc.TLS, pConn uintptr, deleteFlag int32) int32 { / var pSubOpen uintptr = multiplexSubOpen(tls, (*multiplexConn)(unsafe.Pointer(p)).FpGroup, 0, bp /* &rc */, uintptr(0), 0) if pSubOpen != 0 { - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 64 /* &.xShmUnmap */))))(tls, pSubOpen, deleteFlag) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxShmUnmap})).f(tls, pSubOpen, deleteFlag) } return SQLITE_OK } @@ -70569,12 +71094,16 @@ var g3 = test_mutex_globals{} /* test_mutex.c:54:3 */ // Return true if the countable mutex is currently held func counterMutexHeld(tls *libc.TLS, p uintptr) int32 { /* test_mutex.c:57:12: */ - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&g3)) + 16 /* &.m */ + 28 /* &.xMutexHeld */))))(tls, (*sqlite3_mutex)(unsafe.Pointer(p)).FpReal) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{g3.Fm.FxMutexHeld})).f(tls, (*sqlite3_mutex)(unsafe.Pointer(p)).FpReal) } // Return true if the countable mutex is not currently held func counterMutexNotheld(tls *libc.TLS, p uintptr) int32 { /* test_mutex.c:62:12: */ - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&g3)) + 16 /* &.m */ + 32 /* &.xMutexNotheld */))))(tls, (*sqlite3_mutex)(unsafe.Pointer(p)).FpReal) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{g3.Fm.FxMutexNotheld})).f(tls, (*sqlite3_mutex)(unsafe.Pointer(p)).FpReal) } // Initialize the countable mutex interface @@ -70586,7 +71115,7 @@ func counterMutexInit(tls *libc.TLS) int32 { /* test_mutex.c:71:12: */ if g3.FdisableInit != 0 { return g3.FdisableInit } - rc = (*(*func(*libc.TLS) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&g3)) + 16 /* &.m */ /* &.xMutexInit */))))(tls) + rc = (*struct{ f func(*libc.TLS) int32 })(unsafe.Pointer(&struct{ uintptr }{g3.Fm.FxMutexInit})).f(tls) g3.FisInit = 1 return rc } @@ -70594,7 +71123,7 @@ func counterMutexInit(tls *libc.TLS) int32 { /* test_mutex.c:71:12: */ // Uninitialize the mutex subsystem func counterMutexEnd(tls *libc.TLS) int32 { /* test_mutex.c:82:12: */ g3.FisInit = 0 - return (*(*func(*libc.TLS) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&g3)) + 16 /* &.m */ + 4 /* &.xMutexEnd */))))(tls) + return (*struct{ f func(*libc.TLS) int32 })(unsafe.Pointer(&struct{ uintptr }{g3.Fm.FxMutexEnd})).f(tls) } // Allocate a countable mutex @@ -70602,7 +71131,9 @@ func counterMutexAlloc(tls *libc.TLS, eType int32) uintptr { /* test_mutex.c:90: var pReal uintptr var pRet uintptr = uintptr(0) - pReal = (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&g3)) + 16 /* &.m */ + 8 /* &.xMutexAlloc */))))(tls, eType) + pReal = (*struct { + f func(*libc.TLS, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{g3.Fm.FxMutexAlloc})).f(tls, eType) if !(pReal != 0) { return uintptr(0) } @@ -70623,7 +71154,7 @@ func counterMutexAlloc(tls *libc.TLS, eType int32) uintptr { /* test_mutex.c:90: // Free a countable mutex func counterMutexFree(tls *libc.TLS, p uintptr) { /* test_mutex.c:118:13: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&g3)) + 16 /* &.m */ + 12 /* &.xMutexFree */))))(tls, (*sqlite3_mutex)(unsafe.Pointer(p)).FpReal) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{g3.Fm.FxMutexFree})).f(tls, (*sqlite3_mutex)(unsafe.Pointer(p)).FpReal) if ((*sqlite3_mutex)(unsafe.Pointer(p)).FeType == SQLITE_MUTEX_FAST) || ((*sqlite3_mutex)(unsafe.Pointer(p)).FeType == SQLITE_MUTEX_RECURSIVE) { libc.Xfree(tls, p) } @@ -70633,7 +71164,7 @@ func counterMutexFree(tls *libc.TLS, p uintptr) { /* test_mutex.c:118:13: */ func counterMutexEnter(tls *libc.TLS, p uintptr) { /* test_mutex.c:129:13: */ *(*int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&g3)) + 52 /* &.aCounter */) + uintptr((*sqlite3_mutex)(unsafe.Pointer(p)).FeType)*4))++ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&g3)) + 16 /* &.m */ + 16 /* &.xMutexEnter */))))(tls, (*sqlite3_mutex)(unsafe.Pointer(p)).FpReal) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{g3.Fm.FxMutexEnter})).f(tls, (*sqlite3_mutex)(unsafe.Pointer(p)).FpReal) } // Try to enter a mutex. Return true on success. @@ -70643,13 +71174,15 @@ func counterMutexTry(tls *libc.TLS, p uintptr) int32 { /* test_mutex.c:140:12: * if g3.FdisableTry != 0 { return SQLITE_BUSY } - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&g3)) + 16 /* &.m */ + 20 /* &.xMutexTry */))))(tls, (*sqlite3_mutex)(unsafe.Pointer(p)).FpReal) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{g3.Fm.FxMutexTry})).f(tls, (*sqlite3_mutex)(unsafe.Pointer(p)).FpReal) } // Leave a mutex func counterMutexLeave(tls *libc.TLS, p uintptr) { /* test_mutex.c:151:13: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&g3)) + 16 /* &.m */ + 24 /* &.xMutexLeave */))))(tls, (*sqlite3_mutex)(unsafe.Pointer(p)).FpReal) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{g3.Fm.FxMutexLeave})).f(tls, (*sqlite3_mutex)(unsafe.Pointer(p)).FpReal) } // sqlite3_shutdown @@ -70767,7 +71300,7 @@ func test_read_mutex_counters(tls *libc.TLS, clientData uintptr, interp uintptr, tcl.XTcl_SetObjResult(tls, interp, pRet) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pRet - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -71182,7 +71715,9 @@ func fsClose1(tls *libc.TLS, pFile uintptr) int32 { /* test_onefile.c:375:12: */ if (*fs_real_file)(unsafe.Pointer(pReal)).FpNext != 0 { (*fs_real_file)(unsafe.Pointer((*fs_real_file)(unsafe.Pointer(pReal)).FpNext)).FppThis = (*fs_real_file)(unsafe.Pointer(pReal)).FppThis } - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*fs_real_file)(unsafe.Pointer(pReal)).FpFile)).FpMethods + 4 /* &.xClose */))))(tls, (*fs_real_file)(unsafe.Pointer(pReal)).FpFile) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*fs_real_file)(unsafe.Pointer(pReal)).FpFile)).FpMethods)).FxClose})).f(tls, (*fs_real_file)(unsafe.Pointer(pReal)).FpFile) sqlite3.Xsqlite3_free(tls, pReal) } @@ -71200,7 +71735,9 @@ func fsRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst sqlite (((*fs_file)(unsafe.Pointer(p)).FeType == JOURNAL_FILE) && ((sqlite_int64(iAmt) + iOfst) > sqlite_int64((*fs_real_file)(unsafe.Pointer(pReal)).FnJournal))) { rc = (SQLITE_IOERR | (int32(2) << 8)) } else if (*fs_file)(unsafe.Pointer(p)).FeType == DATABASE_FILE { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pF)).FpMethods + 8 /* &.xRead */))))(tls, pF, zBuf, iAmt, (iOfst + int64(BLOCKSIZE))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pF)).FpMethods)).FxRead})).f(tls, pF, zBuf, iAmt, (iOfst + int64(BLOCKSIZE))) } else { // Journal file. var iRem int32 = iAmt @@ -71215,7 +71752,9 @@ func fsRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst sqlite return (BLOCKSIZE - (iRealOff % BLOCKSIZE)) }() - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pF)).FpMethods + 8 /* &.xRead */))))(tls, pF, ((zBuf) + uintptr(iBuf)), iRealAmt, int64(iRealOff)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pF)).FpMethods)).FxRead})).f(tls, pF, ((zBuf) + uintptr(iBuf)), iRealAmt, int64(iRealOff)) ii = ii + (iRealAmt) iBuf = iBuf + (iRealAmt) iRem = iRem - (iRealAmt) @@ -71236,7 +71775,9 @@ func fsWrite(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst sqlit if ((sqlite_int64(iAmt) + iOfst) + int64(BLOCKSIZE)) > (sqlite_int64((*fs_real_file)(unsafe.Pointer(pReal)).FnBlob - (*fs_real_file)(unsafe.Pointer(pReal)).FnJournal)) { rc = SQLITE_FULL } else { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pF)).FpMethods + 12 /* &.xWrite */))))(tls, pF, zBuf, iAmt, (iOfst + int64(BLOCKSIZE))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pF)).FpMethods)).FxWrite})).f(tls, pF, zBuf, iAmt, (iOfst + int64(BLOCKSIZE))) if rc == SQLITE_OK { (*fs_real_file)(unsafe.Pointer(pReal)).FnDatabase = func() int32 { if (sqlite_int64((*fs_real_file)(unsafe.Pointer(pReal)).FnDatabase)) > (sqlite_int64(iAmt) + iOfst) { @@ -71263,7 +71804,9 @@ func fsWrite(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst sqlit if iRealOff < ((*fs_real_file)(unsafe.Pointer(pReal)).FnDatabase + BLOCKSIZE) { rc = SQLITE_FULL } else { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pF)).FpMethods + 12 /* &.xWrite */))))(tls, pF, ((zBuf) + uintptr(iBuf)), iRealAmt, int64(iRealOff)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pF)).FpMethods)).FxWrite})).f(tls, pF, ((zBuf) + uintptr(iBuf)), iRealAmt, int64(iRealOff)) ii = ii + (iRealAmt) iBuf = iBuf + (iRealAmt) iRem = iRem - (iRealAmt) @@ -71321,10 +71864,14 @@ func fsSync(tls *libc.TLS, pFile uintptr, flags int32) int32 { /* test_onefile.c *(*uint8)(unsafe.Pointer(bp /* &zSize[0] */ + 1)) = (uint8(((*fs_real_file)(unsafe.Pointer(pReal)).FnDatabase & 0x00FF0000) >> 16)) *(*uint8)(unsafe.Pointer(bp /* &zSize[0] */ + 2)) = (uint8(((*fs_real_file)(unsafe.Pointer(pReal)).FnDatabase & 0x0000FF00) >> 8)) *(*uint8)(unsafe.Pointer(bp /* &zSize[0] */ + 3)) = (uint8((*fs_real_file)(unsafe.Pointer(pReal)).FnDatabase & 0x000000FF)) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pRealFile)).FpMethods + 12 /* &.xWrite */))))(tls, pRealFile, bp /* &zSize[0] */, 4, int64(0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pRealFile)).FpMethods)).FxWrite})).f(tls, pRealFile, bp /* &zSize[0] */, 4, int64(0)) } if rc == SQLITE_OK { - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pRealFile)).FpMethods + 20 /* &.xSync */))))(tls, pRealFile, (flags & (libc.CplInt32(SQLITE_SYNC_DATAONLY)))) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pRealFile)).FpMethods)).FxSync})).f(tls, pRealFile, (flags & (libc.CplInt32(SQLITE_SYNC_DATAONLY)))) } return rc @@ -71456,7 +72003,9 @@ __6: (*fs_real_file)(unsafe.Pointer(pReal)).FzName = zName (*fs_real_file)(unsafe.Pointer(pReal)).FpFile = (pReal + 1*32) - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pParent + 24 /* &.xOpen */))))(tls, pParent, zName, (*fs_real_file)(unsafe.Pointer(pReal)).FpFile, real_flags, pOutFlags) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pParent)).FxOpen})).f(tls, pParent, zName, (*fs_real_file)(unsafe.Pointer(pReal)).FpFile, real_flags, pOutFlags) if !(rc != SQLITE_OK) { goto __7 } @@ -71465,7 +72014,9 @@ __7: ; pRealFile = (*fs_real_file)(unsafe.Pointer(pReal)).FpFile - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pRealFile)).FpMethods + 24 /* &.xFileSize */))))(tls, pRealFile, bp /* &size */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pRealFile)).FpMethods)).FxFileSize})).f(tls, pRealFile, bp /* &size */) if !(rc != SQLITE_OK) { goto __8 } @@ -71475,17 +72026,23 @@ __8: if !(*(*sqlite3_int64)(unsafe.Pointer(bp /* size */)) == int64(0)) { goto __9 } - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pRealFile)).FpMethods + 12 /* &.xWrite */))))(tls, pRealFile, ts+35647 /* "\x00" */, 1, (int64(BLOBSIZE - 1))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pRealFile)).FpMethods)).FxWrite})).f(tls, pRealFile, ts+35647 /* "\x00" */, 1, (int64(BLOBSIZE - 1))) (*fs_real_file)(unsafe.Pointer(pReal)).FnBlob = BLOBSIZE goto __10 __9: (*fs_real_file)(unsafe.Pointer(pReal)).FnBlob = int32(*(*sqlite3_int64)(unsafe.Pointer(bp /* size */))) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pRealFile)).FpMethods + 8 /* &.xRead */))))(tls, pRealFile, bp+8 /* &zS[0] */, 4, int64(0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pRealFile)).FpMethods)).FxRead})).f(tls, pRealFile, bp+8 /* &zS[0] */, 4, int64(0)) (*fs_real_file)(unsafe.Pointer(pReal)).FnDatabase = ((((int32(*(*uint8)(unsafe.Pointer(bp + 8 /* &zS[0] */))) << 24) + (int32(*(*uint8)(unsafe.Pointer(bp + 8 /* &zS[0] */ + 1))) << 16)) + (int32(*(*uint8)(unsafe.Pointer(bp + 8 /* &zS[0] */ + 2))) << 8)) + int32(*(*uint8)(unsafe.Pointer(bp + 8 /* &zS[0] */ + 3)))) if !(rc == SQLITE_OK) { goto __11 } - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pRealFile)).FpMethods + 8 /* &.xRead */))))(tls, pRealFile, bp+8 /* &zS[0] */, 4, (int64((*fs_real_file)(unsafe.Pointer(pReal)).FnBlob - 4))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pRealFile)).FpMethods)).FxRead})).f(tls, pRealFile, bp+8 /* &zS[0] */, 4, (int64((*fs_real_file)(unsafe.Pointer(pReal)).FnBlob - 4))) if !((((*(*uint8)(unsafe.Pointer(bp + 8 /* &zS[0] */)) != 0) || (*(*uint8)(unsafe.Pointer(bp + 8 /* &zS[0] */ + 1)) != 0)) || (*(*uint8)(unsafe.Pointer(bp + 8 /* &zS[0] */ + 2)) != 0)) || (*(*uint8)(unsafe.Pointer(bp + 8 /* &zS[0] */ + 3)) != 0)) { goto __12 } @@ -71528,7 +72085,9 @@ __16: if !((*sqlite3_file)(unsafe.Pointer((*fs_real_file)(unsafe.Pointer(pReal)).FpFile)).FpMethods != 0) { goto __18 } - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*fs_real_file)(unsafe.Pointer(pReal)).FpFile)).FpMethods + 4 /* &.xClose */))))(tls, (*fs_real_file)(unsafe.Pointer(pReal)).FpFile) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*fs_real_file)(unsafe.Pointer(pReal)).FpFile)).FpMethods)).FxClose})).f(tls, (*fs_real_file)(unsafe.Pointer(pReal)).FpFile) __18: ; sqlite3.Xsqlite3_free(tls, pReal) @@ -71554,7 +72113,9 @@ func fsDelete(tls *libc.TLS, pVfs uintptr, zPath uintptr, dirSync int32) int32 { } if pReal != 0 { pF = (*fs_real_file)(unsafe.Pointer(pReal)).FpFile - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pF)).FpMethods + 12 /* &.xWrite */))))(tls, pF, ts+35649 /* "\x00\x00\x00\x00" */, 4, (int64((*fs_real_file)(unsafe.Pointer(pReal)).FnBlob - BLOCKSIZE))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pF)).FpMethods)).FxWrite})).f(tls, pF, ts+35649 /* "\x00\x00\x00\x00" */, 4, (int64((*fs_real_file)(unsafe.Pointer(pReal)).FnBlob - BLOCKSIZE))) if rc == SQLITE_OK { (*fs_real_file)(unsafe.Pointer(pReal)).FnJournal = 0 } @@ -71572,7 +72133,9 @@ func fsAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResOut u if flags != SQLITE_ACCESS_EXISTS { var pParent uintptr = (*fs_vfs_t)(unsafe.Pointer(pVfs)).FpParent - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pParent + 32 /* &.xAccess */))))(tls, pParent, zPath, flags, pResOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pParent)).FxAccess})).f(tls, pParent, zPath, flags, pResOut) } if (nName > 8) && (libc.Xstrcmp(tls, ts+33006 /* "-journal" */, (zPath+uintptr((nName-8)))) == 0) { @@ -71593,13 +72156,17 @@ func fsAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResOut u // of at least (FS_MAX_PATHNAME+1) bytes. func fsFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zOut uintptr) int32 { /* test_onefile.c:746:12: */ var pParent uintptr = (*fs_vfs_t)(unsafe.Pointer(pVfs)).FpParent - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pParent + 36 /* &.xFullPathname */))))(tls, pParent, zPath, nOut, zOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pParent)).FxFullPathname})).f(tls, pParent, zPath, nOut, zOut) } // Open the dynamic library located at zPath and return a handle. func fsDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* test_onefile.c:759:13: */ var pParent uintptr = (*fs_vfs_t)(unsafe.Pointer(pVfs)).FpParent - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer((pParent + 40 /* &.xDlOpen */))))(tls, pParent, zPath) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pParent)).FxDlOpen})).f(tls, pParent, zPath) } // Populate the buffer zErrMsg (size nByte bytes) with a human readable @@ -71607,39 +72174,51 @@ func fsDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* test_onef // with dynamic libraries. func fsDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zErrMsg uintptr) { /* test_onefile.c:769:13: */ var pParent uintptr = (*fs_vfs_t)(unsafe.Pointer(pVfs)).FpParent - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer((pParent + 44 /* &.xDlError */))))(tls, pParent, nByte, zErrMsg) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pParent)).FxDlError})).f(tls, pParent, nByte, zErrMsg) } // Return a pointer to the symbol zSymbol in the dynamic library pHandle. func fsDlSym(tls *libc.TLS, pVfs uintptr, pH uintptr, zSym uintptr) uintptr { /* test_onefile.c:777:13: */ var pParent uintptr = (*fs_vfs_t)(unsafe.Pointer(pVfs)).FpParent - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer((pParent + 48 /* &.xDlSym */))))(tls, pParent, pH, zSym) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pParent)).FxDlSym})).f(tls, pParent, pH, zSym) } // Close the dynamic library handle pHandle. func fsDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* test_onefile.c:785:13: */ var pParent uintptr = (*fs_vfs_t)(unsafe.Pointer(pVfs)).FpParent - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pParent + 52 /* &.xDlClose */))))(tls, pParent, pHandle) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pParent)).FxDlClose})).f(tls, pParent, pHandle) } // Populate the buffer pointed to by zBufOut with nByte bytes of // random data. func fsRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* test_onefile.c:794:12: */ var pParent uintptr = (*fs_vfs_t)(unsafe.Pointer(pVfs)).FpParent - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pParent + 56 /* &.xRandomness */))))(tls, pParent, nByte, zBufOut) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pParent)).FxRandomness})).f(tls, pParent, nByte, zBufOut) } // Sleep for nMicro microseconds. Return the number of microseconds // actually slept. func fsSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* test_onefile.c:803:12: */ var pParent uintptr = (*fs_vfs_t)(unsafe.Pointer(pVfs)).FpParent - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pParent + 60 /* &.xSleep */))))(tls, pParent, nMicro) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pParent)).FxSleep})).f(tls, pParent, nMicro) } // Return the current time as a Julian Day number in *pTimeOut. func fsCurrentTime(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) int32 { /* test_onefile.c:811:12: */ var pParent uintptr = (*fs_vfs_t)(unsafe.Pointer(pVfs)).FpParent - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pParent + 64 /* &.xCurrentTime */))))(tls, pParent, pTimeOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pParent)).FxCurrentTime})).f(tls, pParent, pTimeOut) } // This procedure registers the fs vfs with SQLite. If the argument is @@ -71664,7 +72243,7 @@ func SqlitetestOnefile_Init(tls *libc.TLS) int32 { /* test_onefile.c:830:7: */ return fs_register(tls) } -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -71679,11 +72258,11 @@ func SqlitetestOnefile_Init(tls *libc.TLS) int32 { /* test_onefile.c:830:7: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -71698,7 +72277,7 @@ func SqlitetestOnefile_Init(tls *libc.TLS) int32 { /* test_onefile.c:830:7: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -71723,7 +72302,7 @@ type VfslogVfs1 = struct { FaBuf [8192]int8 } /* test_osinst.c:117:9 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -71738,11 +72317,11 @@ type VfslogVfs1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -71757,7 +72336,7 @@ type VfslogVfs1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -71842,7 +72421,9 @@ func vfslogClose(tls *libc.TLS, pFile uintptr) int32 { /* test_osinst.c:256:12: t = vfslog_time(tls) if (*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods != 0 { - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 4 /* &.xClose */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxClose})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal) } t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_CLOSE, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, 0, 0) @@ -71855,7 +72436,9 @@ func vfslogRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst sq var t sqlite3_uint64 var p uintptr = pFile t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 8 /* &.xRead */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, zBuf, iAmt, iOfst) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxRead})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, zBuf, iAmt, iOfst) t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_READ, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, iAmt, int32(iOfst)) return rc @@ -71867,7 +72450,9 @@ func vfslogWrite(tls *libc.TLS, pFile uintptr, z uintptr, iAmt int32, iOfst sqli var t sqlite3_uint64 var p uintptr = pFile t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 12 /* &.xWrite */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, z, iAmt, iOfst) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxWrite})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, z, iAmt, iOfst) t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_WRITE, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, iAmt, int32(iOfst)) return rc @@ -71879,7 +72464,9 @@ func vfslogTruncate(tls *libc.TLS, pFile uintptr, size sqlite_int64) int32 { /* var t sqlite3_uint64 var p uintptr = pFile t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 16 /* &.xTruncate */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, size) + rc = (*struct { + f func(*libc.TLS, uintptr, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxTruncate})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, size) t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_TRUNCATE, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, 0, int32(size)) return rc @@ -71891,7 +72478,9 @@ func vfslogSync(tls *libc.TLS, pFile uintptr, flags int32) int32 { /* test_osins var t sqlite3_uint64 var p uintptr = pFile t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 20 /* &.xSync */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, flags) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxSync})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, flags) t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_SYNC, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, flags, 0) return rc @@ -71903,7 +72492,9 @@ func vfslogFileSize(tls *libc.TLS, pFile uintptr, pSize uintptr) int32 { /* test var t sqlite3_uint64 var p uintptr = pFile t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 24 /* &.xFileSize */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, pSize) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxFileSize})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, pSize) t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_FILESIZE, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, 0, int32(*(*sqlite_int64)(unsafe.Pointer(pSize)))) return rc @@ -71915,7 +72506,9 @@ func vfslogLock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* test_osins var t sqlite3_uint64 var p uintptr = pFile t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 28 /* &.xLock */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, eLock) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxLock})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, eLock) t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_LOCK, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, eLock, 0) return rc @@ -71927,7 +72520,9 @@ func vfslogUnlock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* test_osi var t sqlite3_uint64 var p uintptr = pFile t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 32 /* &.xUnlock */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, eLock) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxUnlock})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, eLock) t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_UNLOCK, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, eLock, 0) return rc @@ -71939,7 +72534,9 @@ func vfslogCheckReservedLock(tls *libc.TLS, pFile uintptr, pResOut uintptr) int3 var t sqlite3_uint64 var p uintptr = pFile t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 36 /* &.xCheckReservedLock */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, pResOut) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxCheckReservedLock})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, pResOut) t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_CHECKRESERVEDLOCK, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, *(*int32)(unsafe.Pointer(pResOut)), 0) return rc @@ -71951,7 +72548,9 @@ func vfslogFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int defer tls.Free(8) var p uintptr = pFile - var rc int32 = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 40 /* &.xFileControl */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, op, pArg) + var rc int32 = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxFileControl})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, op, pArg) if (op == SQLITE_FCNTL_VFSNAME) && (rc == SQLITE_OK) { *(*uintptr)(unsafe.Pointer(pArg)) = sqlite3.Xsqlite3_mprintf(tls, ts+35654 /* "vfslog/%z" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(pArg)))) } @@ -71964,7 +72563,9 @@ func vfslogSectorSize(tls *libc.TLS, pFile uintptr) int32 { /* test_osinst.c:407 var t sqlite3_uint64 var p uintptr = pFile t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 44 /* &.xSectorSize */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxSectorSize})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal) t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_SECTORSIZE, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, 0, 0) return rc @@ -71976,7 +72577,9 @@ func vfslogDeviceCharacteristics(tls *libc.TLS, pFile uintptr) int32 { /* test_o var t sqlite3_uint64 var p uintptr = pFile t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 48 /* &.xDeviceCharacteristics */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxDeviceCharacteristics})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal) t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_DEVCHAR, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, 0, 0) return rc @@ -71987,7 +72590,9 @@ func vfslogShmLock(tls *libc.TLS, pFile uintptr, ofst int32, n int32, flags int3 var t sqlite3_uint64 var p uintptr = pFile t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 56 /* &.xShmLock */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, ofst, n, flags) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmLock})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, ofst, n, flags) t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_SHMLOCK, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, 0, 0) return rc @@ -71998,7 +72603,9 @@ func vfslogShmMap(tls *libc.TLS, pFile uintptr, iRegion int32, szRegion int32, i var t sqlite3_uint64 var p uintptr = pFile t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 52 /* &.xShmMap */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, iRegion, szRegion, isWrite, libc.AtomicLoadUintptr(&pp)) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmMap})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, iRegion, szRegion, isWrite, pp) t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_SHMMAP, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, 0, 0) return rc @@ -72008,7 +72615,7 @@ func vfslogShmBarrier(tls *libc.TLS, pFile uintptr) { /* test_osinst.c:458:13: * var t sqlite3_uint64 var p uintptr = pFile t = vfslog_time(tls) - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 60 /* &.xShmBarrier */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmBarrier})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal) t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_SHMBARRIER, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), SQLITE_OK, 0, 0) } @@ -72018,7 +72625,9 @@ func vfslogShmUnmap(tls *libc.TLS, pFile uintptr, deleteFlag int32) int32 { /* t var t sqlite3_uint64 var p uintptr = pFile t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods + 64 /* &.xShmUnmap */))))(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, deleteFlag) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogFile)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmUnmap})).f(tls, (*VfslogFile)(unsafe.Pointer(p)).FpReal, deleteFlag) t = (vfslog_time(tls) - t) vfslog_call(tls, (*VfslogFile)(unsafe.Pointer(p)).FpVfslog, OS_SHMUNMAP, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, 0, 0) return rc @@ -72037,7 +72646,9 @@ func vfslogOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pFile uintptr, flags (*VfslogFile)(unsafe.Pointer(p)).FiFileId = libc.PreIncInt32(&(*VfslogVfs)(unsafe.Pointer(pLog)).FiNextFileId, 1) t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs + 24 /* &.xOpen */))))(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, zName, (*VfslogFile)(unsafe.Pointer(p)).FpReal, flags, pOutFlags) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs))).FxOpen})).f(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, zName, (*VfslogFile)(unsafe.Pointer(p)).FpReal, flags, pOutFlags) t = (vfslog_time(tls) - t) vfslog_call(tls, pVfs, OS_OPEN, (*VfslogFile)(unsafe.Pointer(p)).FiFileId, int64(t), rc, 0, 0) @@ -72052,7 +72663,9 @@ func vfslogDelete(tls *libc.TLS, pVfs uintptr, zPath uintptr, dirSync int32) int var rc int32 var t sqlite3_uint64 t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs + 28 /* &.xDelete */))))(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, zPath, dirSync) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs))).FxDelete})).f(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, zPath, dirSync) t = (vfslog_time(tls) - t) vfslog_call(tls, pVfs, OS_DELETE, 0, int64(t), rc, dirSync, 0) vfslog_string(tls, pVfs, zPath) @@ -72065,7 +72678,9 @@ func vfslogAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResO var rc int32 var t sqlite3_uint64 t = vfslog_time(tls) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs + 32 /* &.xAccess */))))(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, zPath, flags, pResOut) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs))).FxAccess})).f(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, zPath, flags, pResOut) t = (vfslog_time(tls) - t) vfslog_call(tls, pVfs, OS_ACCESS, 0, int64(t), rc, flags, *(*int32)(unsafe.Pointer(pResOut))) vfslog_string(tls, pVfs, zPath) @@ -72076,54 +72691,74 @@ func vfslogAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResO // to the pathname in zPath. zOut is guaranteed to point to a buffer // of at least (INST_MAX_PATHNAME+1) bytes. func vfslogFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zOut uintptr) int32 { /* test_osinst.c:548:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs + 36 /* &.xFullPathname */))))(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, zPath, nOut, zOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs))).FxFullPathname})).f(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, zPath, nOut, zOut) } // Open the dynamic library located at zPath and return a handle. func vfslogDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* test_osinst.c:560:13: */ - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs + 40 /* &.xDlOpen */))))(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, zPath) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs))).FxDlOpen})).f(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, zPath) } // Populate the buffer zErrMsg (size nByte bytes) with a human readable // utf-8 string describing the most recent error encountered associated // with dynamic libraries. func vfslogDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zErrMsg uintptr) { /* test_osinst.c:569:13: */ - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs + 44 /* &.xDlError */))))(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, nByte, zErrMsg) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs))).FxDlError})).f(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, nByte, zErrMsg) } // Return a pointer to the symbol zSymbol in the dynamic library pHandle. func vfslogDlSym(tls *libc.TLS, pVfs uintptr, p uintptr, zSym uintptr) uintptr { /* test_osinst.c:576:13: */ - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs + 48 /* &.xDlSym */))))(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, p, zSym) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs))).FxDlSym})).f(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, p, zSym) } // Close the dynamic library handle pHandle. func vfslogDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* test_osinst.c:583:13: */ - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs + 52 /* &.xDlClose */))))(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, pHandle) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs))).FxDlClose})).f(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, pHandle) } // Populate the buffer pointed to by zBufOut with nByte bytes of // random data. func vfslogRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* test_osinst.c:591:12: */ - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs + 56 /* &.xRandomness */))))(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, nByte, zBufOut) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs))).FxRandomness})).f(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, nByte, zBufOut) } // Sleep for nMicro microseconds. Return the number of microseconds // actually slept. func vfslogSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* test_osinst.c:599:12: */ - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs + 60 /* &.xSleep */))))(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, nMicro) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs))).FxSleep})).f(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, nMicro) } // Return the current time as a Julian Day number in *pTimeOut. func vfslogCurrentTime(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) int32 { /* test_osinst.c:606:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs + 64 /* &.xCurrentTime */))))(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, pTimeOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs))).FxCurrentTime})).f(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, pTimeOut) } func vfslogGetLastError(tls *libc.TLS, pVfs uintptr, a int32, b uintptr) int32 { /* test_osinst.c:610:12: */ - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs + 68 /* &.xGetLastError */))))(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, a, b) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs))).FxGetLastError})).f(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, a, b) } func vfslogCurrentTimeInt64(tls *libc.TLS, pVfs uintptr, p uintptr) int32 { /* test_osinst.c:613:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs + 72 /* &.xCurrentTimeInt64 */))))(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, p) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs))).FxCurrentTimeInt64})).f(tls, (*VfslogVfs)(unsafe.Pointer(pVfs)).FpVfs, p) } func vfslog_flush(tls *libc.TLS, p uintptr) { /* test_osinst.c:617:13: */ @@ -72137,7 +72772,9 @@ func vfslog_flush(tls *libc.TLS, p uintptr) { /* test_osinst.c:617:13: */ sqlite3.Xsqlite3_diskfull_pending = 0 if (*VfslogVfs)(unsafe.Pointer(p)).FnBuf != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogVfs)(unsafe.Pointer(p)).FpLog)).FpMethods + 12 /* &.xWrite */))))(tls, (*VfslogVfs)(unsafe.Pointer(p)).FpLog, p+112 /* &.aBuf */, (*VfslogVfs)(unsafe.Pointer(p)).FnBuf, (*VfslogVfs)(unsafe.Pointer(p)).FiOffset) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogVfs)(unsafe.Pointer(p)).FpLog)).FpMethods)).FxWrite})).f(tls, (*VfslogVfs)(unsafe.Pointer(p)).FpLog, p+112 /* &.aBuf */, (*VfslogVfs)(unsafe.Pointer(p)).FnBuf, (*VfslogVfs)(unsafe.Pointer(p)).FiOffset) *(*sqlite3_int64)(unsafe.Pointer(p + 100 /* &.iOffset */)) += (sqlite3_int64((*VfslogVfs)(unsafe.Pointer(p)).FnBuf)) (*VfslogVfs)(unsafe.Pointer(p)).FnBuf = 0 } @@ -72193,7 +72830,9 @@ func vfslog_string(tls *libc.TLS, pVfs uintptr, zStr uintptr) { /* test_osinst.c func vfslog_finalize(tls *libc.TLS, p uintptr) { /* test_osinst.c:691:13: */ if (*sqlite3_file)(unsafe.Pointer((*VfslogVfs)(unsafe.Pointer(p)).FpLog)).FpMethods != 0 { vfslog_flush(tls, p) - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogVfs)(unsafe.Pointer(p)).FpLog)).FpMethods + 4 /* &.xClose */))))(tls, (*VfslogVfs)(unsafe.Pointer(p)).FpLog) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogVfs)(unsafe.Pointer(p)).FpLog)).FpMethods)).FxClose})).f(tls, (*VfslogVfs)(unsafe.Pointer(p)).FpLog) } sqlite3.Xsqlite3_free(tls, p) } @@ -72242,11 +72881,17 @@ func sqlite3_vfslog_new(tls *libc.TLS, zVfs uintptr, zParentVfs uintptr, zLog ui libc.Xmemcpy(tls, (*VfslogVfs)(unsafe.Pointer(p)).Fbase.FzName, zVfs, uint32(nVfs)) zFile = ((*VfslogVfs)(unsafe.Pointer(p)).Fbase.FzName + uintptr((nVfs + 1))) - (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pParent + 36 /* &.xFullPathname */))))(tls, pParent, zLog, (*sqlite3_vfs)(unsafe.Pointer(pParent)).FmxPathname, zFile) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pParent)).FxFullPathname})).f(tls, pParent, zLog, (*sqlite3_vfs)(unsafe.Pointer(pParent)).FmxPathname, zFile) *(*int32)(unsafe.Pointer(bp /* flags */)) = ((SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE) | SQLITE_OPEN_SUPER_JOURNAL) - (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pParent + 28 /* &.xDelete */))))(tls, pParent, zFile, 0) - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pParent + 24 /* &.xOpen */))))(tls, pParent, zFile, (*VfslogVfs)(unsafe.Pointer(p)).FpLog, *(*int32)(unsafe.Pointer(bp /* flags */)), bp /* &flags */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pParent)).FxDelete})).f(tls, pParent, zFile, 0) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pParent)).FxOpen})).f(tls, pParent, zFile, (*VfslogVfs)(unsafe.Pointer(p)).FpLog, *(*int32)(unsafe.Pointer(bp /* flags */)), bp /* &flags */) if rc == SQLITE_OK { libc.Xmemcpy(tls, p+112 /* &.aBuf */, ts+35664 /* "sqlite_ostrace1...." */, uint32(20)) (*VfslogVfs)(unsafe.Pointer(p)).FiOffset = int64(0) @@ -72437,14 +73082,20 @@ func vlogConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintp return SQLITE_NOMEM } dequote(tls, zFile) - (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 36 /* &.xFullPathname */))))(tls, pVfs, zFile, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FmxPathname, (*VfslogVtab)(unsafe.Pointer(p)).FzFile) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxFullPathname})).f(tls, pVfs, zFile, (*sqlite3_vfs)(unsafe.Pointer(pVfs)).FmxPathname, (*VfslogVtab)(unsafe.Pointer(p)).FzFile) sqlite3.Xsqlite3_free(tls, zFile) *(*int32)(unsafe.Pointer(bp + 8 /* flags */)) = (SQLITE_OPEN_READWRITE | SQLITE_OPEN_SUPER_JOURNAL) - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 24 /* &.xOpen */))))(tls, pVfs, (*VfslogVtab)(unsafe.Pointer(p)).FzFile, (*VfslogVtab)(unsafe.Pointer(p)).FpFd, *(*int32)(unsafe.Pointer(bp + 8 /* flags */)), bp+8 /* &flags */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxOpen})).f(tls, pVfs, (*VfslogVtab)(unsafe.Pointer(p)).FzFile, (*VfslogVtab)(unsafe.Pointer(p)).FpFd, *(*int32)(unsafe.Pointer(bp + 8 /* flags */)), bp+8 /* &flags */) if rc == SQLITE_OK { - (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogVtab)(unsafe.Pointer(p)).FpFd)).FpMethods + 24 /* &.xFileSize */))))(tls, (*VfslogVtab)(unsafe.Pointer(p)).FpFd, (p + 16 /* &.nByte */)) + (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogVtab)(unsafe.Pointer(p)).FpFd)).FpMethods)).FxFileSize})).f(tls, (*VfslogVtab)(unsafe.Pointer(p)).FpFd, (p + 16 /* &.nByte */)) sqlite3.Xsqlite3_declare_vtab(tls, db, ts+35902 /* "CREATE TABLE xxx..." */) *(*uintptr)(unsafe.Pointer(ppVtab)) = (p /* &.base */) @@ -72466,7 +73117,9 @@ func vlogBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* test func vlogDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* test_osinst.c:924:12: */ var p uintptr = pVtab if (*sqlite3_file)(unsafe.Pointer((*VfslogVtab)(unsafe.Pointer(p)).FpFd)).FpMethods != 0 { - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogVtab)(unsafe.Pointer(p)).FpFd)).FpMethods + 4 /* &.xClose */))))(tls, (*VfslogVtab)(unsafe.Pointer(p)).FpFd) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogVtab)(unsafe.Pointer(p)).FpFd)).FpMethods)).FxClose})).f(tls, (*VfslogVtab)(unsafe.Pointer(p)).FpFd) (*sqlite3_file)(unsafe.Pointer((*VfslogVtab)(unsafe.Pointer(p)).FpFd)).FpMethods = uintptr(0) } sqlite3.Xsqlite3_free(tls, p) @@ -72515,19 +73168,25 @@ func vlogNext(tls *libc.TLS, pCursor uintptr) int32 { /* test_osinst.c:965:12: * nRead = 24 if ((*VfslogCsr)(unsafe.Pointer(pCsr)).FiOffset + sqlite3_int64(nRead)) <= (*VfslogVtab)(unsafe.Pointer(p)).FnByte { var eEvent int32 - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogVtab)(unsafe.Pointer(p)).FpFd)).FpMethods + 8 /* &.xRead */))))(tls, (*VfslogVtab)(unsafe.Pointer(p)).FpFd, pCsr+32 /* &.aBuf */, nRead, (*VfslogCsr)(unsafe.Pointer(pCsr)).FiOffset) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogVtab)(unsafe.Pointer(p)).FpFd)).FpMethods)).FxRead})).f(tls, (*VfslogVtab)(unsafe.Pointer(p)).FpFd, pCsr+32 /* &.aBuf */, nRead, (*VfslogCsr)(unsafe.Pointer(pCsr)).FiOffset) eEvent = int32(get32bits(tls, pCsr+32 /* &.aBuf */)) if (rc == SQLITE_OK) && (((eEvent == OS_OPEN) || (eEvent == OS_DELETE)) || (eEvent == OS_ACCESS)) { // var buf [4]int8 at bp, 4 - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogVtab)(unsafe.Pointer(p)).FpFd)).FpMethods + 8 /* &.xRead */))))(tls, (*VfslogVtab)(unsafe.Pointer(p)).FpFd, bp /* &buf[0] */, 4, ((*VfslogCsr)(unsafe.Pointer(pCsr)).FiOffset + sqlite3_int64(nRead))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogVtab)(unsafe.Pointer(p)).FpFd)).FpMethods)).FxRead})).f(tls, (*VfslogVtab)(unsafe.Pointer(p)).FpFd, bp /* &buf[0] */, 4, ((*VfslogCsr)(unsafe.Pointer(pCsr)).FiOffset + sqlite3_int64(nRead))) nRead = nRead + (4) if rc == SQLITE_OK { var nStr int32 = int32(get32bits(tls, bp /* buf */)) var zStr uintptr = sqlite3.Xsqlite3_malloc(tls, (nStr + 1)) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer((*VfslogVtab)(unsafe.Pointer(p)).FpFd)).FpMethods + 8 /* &.xRead */))))(tls, (*VfslogVtab)(unsafe.Pointer(p)).FpFd, zStr, nStr, ((*VfslogCsr)(unsafe.Pointer(pCsr)).FiOffset + sqlite3_int64(nRead))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer((*VfslogVtab)(unsafe.Pointer(p)).FpFd)).FpMethods)).FxRead})).f(tls, (*VfslogVtab)(unsafe.Pointer(p)).FpFd, zStr, nStr, ((*VfslogCsr)(unsafe.Pointer(pCsr)).FiOffset + sqlite3_int64(nRead))) *(*int8)(unsafe.Pointer(zStr + uintptr(nStr))) = int8(0) nRead = nRead + (nStr) @@ -72744,7 +73403,7 @@ func SqlitetestOsinst_Init(tls *libc.TLS, interp uintptr) int32 { /* test_osinst return TCL_OK } -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -72759,11 +73418,11 @@ func SqlitetestOsinst_Init(tls *libc.TLS, interp uintptr) int32 { /* test_osinst // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -72778,7 +73437,7 @@ func SqlitetestOsinst_Init(tls *libc.TLS, interp uintptr) int32 { /* test_osinst // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -72802,7 +73461,7 @@ type testpcacheGlobalType1 = struct { FhighStress uint32 } /* test_pcache.c:33:9 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -72817,11 +73476,11 @@ type testpcacheGlobalType1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -72836,7 +73495,7 @@ type testpcacheGlobalType1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -73275,6 +73934,25 @@ type quota_FILE = quota_FILE1 /* test_quota.h:145:27 */ // Define some macros helping to catch buffer overflows. +// System-specific extensions. +// System-specific extensions of , Linux version. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + //*********************** Object Definitions ***************************** // Forward declaration of all object types @@ -73292,6 +73970,25 @@ type quotaGroup1 = struct { // Define some macros helping to catch buffer overflows. +// System-specific extensions. +// System-specific extensions of , Linux version. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + //*********************** Object Definitions ***************************** // Forward declaration of all object types @@ -73381,7 +74078,7 @@ func quotaGroupDeref(tls *libc.TLS, pGroup uintptr) { /* test_quota.c:229:13: */ (*quotaGroup)(unsafe.Pointer((*quotaGroup)(unsafe.Pointer(pGroup)).FpNext)).FppPrev = (*quotaGroup)(unsafe.Pointer(pGroup)).FppPrev } if (*quotaGroup)(unsafe.Pointer(pGroup)).FxDestroy != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pGroup + 28 /* &.xDestroy */))))(tls, (*quotaGroup)(unsafe.Pointer(pGroup)).FpArg) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*quotaGroup)(unsafe.Pointer(pGroup)).FxDestroy})).f(tls, (*quotaGroup)(unsafe.Pointer(pGroup)).FpArg) } sqlite3.Xsqlite3_free(tls, pGroup) } @@ -73568,7 +74265,9 @@ func quotaOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pConn uintptr, flags // If the file is not a main database file or a WAL, then use the // normal xOpen method. if (flags & (SQLITE_OPEN_MAIN_DB | SQLITE_OPEN_WAL)) == 0 { - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pOrigVfs + 24 /* &.xOpen */))))(tls, pOrigVfs, zName, pConn, flags, pOutFlags) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxOpen})).f(tls, pOrigVfs, zName, pConn, flags, pOutFlags) } // If the name of the file does not match any quota group, then @@ -73576,17 +74275,23 @@ func quotaOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pConn uintptr, flags quotaEnter(tls) pGroup = quotaGroupFind(tls, zName) if pGroup == uintptr(0) { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pOrigVfs + 24 /* &.xOpen */))))(tls, pOrigVfs, zName, pConn, flags, pOutFlags) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxOpen})).f(tls, pOrigVfs, zName, pConn, flags, pOutFlags) } else { // If we get to this point, it means the file needs to be quota tracked. pQuotaOpen = pConn pSubOpen = quotaSubOpen(tls, pConn) - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pOrigVfs + 24 /* &.xOpen */))))(tls, pOrigVfs, zName, pSubOpen, flags, pOutFlags) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxOpen})).f(tls, pOrigVfs, zName, pSubOpen, flags, pOutFlags) if rc == SQLITE_OK { pFile = quotaFindFile(tls, pGroup, zName, 1) if pFile == uintptr(0) { quotaLeave(tls) - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 4 /* &.xClose */))))(tls, pSubOpen) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxClose})).f(tls, pSubOpen) return SQLITE_NOMEM } (*quotaFile)(unsafe.Pointer(pFile)).FdeleteOnClose = (libc.Bool32((flags & SQLITE_OPEN_DELETEONCLOSE) != 0)) @@ -73615,7 +74320,9 @@ func quotaDelete(tls *libc.TLS, pVfs uintptr, zName uintptr, syncDir int32) int3 var pOrigVfs uintptr = gQuota.FpOrigVfs // Real VFS // Do the actual file delete - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pOrigVfs + 28 /* &.xDelete */))))(tls, pOrigVfs, zName, syncDir) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pOrigVfs)).FxDelete})).f(tls, pOrigVfs, zName, syncDir) // If the file just deleted is a member of a quota group, then remove // it from that quota group. @@ -73648,13 +74355,17 @@ func quotaClose(tls *libc.TLS, pConn uintptr) int32 { /* test_quota.c:528:12: */ var pFile uintptr = (*quotaConn)(unsafe.Pointer(p)).FpFile var pSubOpen uintptr = quotaSubOpen(tls, pConn) var rc int32 - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 4 /* &.xClose */))))(tls, pSubOpen) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxClose})).f(tls, pSubOpen) quotaEnter(tls) (*quotaFile)(unsafe.Pointer(pFile)).FnRef-- if (*quotaFile)(unsafe.Pointer(pFile)).FnRef == 0 { var pGroup uintptr = (*quotaFile)(unsafe.Pointer(pFile)).FpGroup if (*quotaFile)(unsafe.Pointer(pFile)).FdeleteOnClose != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((gQuota.FpOrigVfs + 28 /* &.xDelete */))))(tls, gQuota.FpOrigVfs, (*quotaFile)(unsafe.Pointer(pFile)).FzFilename, 0) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gQuota.FpOrigVfs)).FxDelete})).f(tls, gQuota.FpOrigVfs, (*quotaFile)(unsafe.Pointer(pFile)).FzFilename, 0) quotaRemoveFile(tls, pFile) } quotaGroupDeref(tls, pGroup) @@ -73667,7 +74378,9 @@ func quotaClose(tls *libc.TLS, pConn uintptr) int32 { /* test_quota.c:528:12: */ // further processing. func quotaRead(tls *libc.TLS, pConn uintptr, pBuf uintptr, iAmt int32, iOfst sqlite3_int64) int32 { /* test_quota.c:551:12: */ var pSubOpen uintptr = quotaSubOpen(tls, pConn) - return (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 8 /* &.xRead */))))(tls, pSubOpen, pBuf, iAmt, iOfst) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxRead})).f(tls, pSubOpen, pBuf, iAmt, iOfst) } // Check xWrite requests to see if they expand the file. If they do, @@ -73687,7 +74400,9 @@ func quotaWrite(tls *libc.TLS, pConn uintptr, pBuf uintptr, iAmt int32, iOfst sq szNew = (((*quotaGroup)(unsafe.Pointer(pGroup)).FiSize - (*quotaFile)(unsafe.Pointer(pFile)).FiSize) + iEnd) if (szNew > (*quotaGroup)(unsafe.Pointer(pGroup)).FiLimit) && ((*quotaGroup)(unsafe.Pointer(pGroup)).FiLimit > int64(0)) { if (*quotaGroup)(unsafe.Pointer(pGroup)).FxCallback != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, sqlite3_int64, uintptr))(unsafe.Pointer((pGroup + 20 /* &.xCallback */))))(tls, (*quotaFile)(unsafe.Pointer(pFile)).FzFilename, (pGroup + 4 /* &.iLimit */), szNew, + (*struct { + f func(*libc.TLS, uintptr, uintptr, sqlite3_int64, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*quotaGroup)(unsafe.Pointer(pGroup)).FxCallback})).f(tls, (*quotaFile)(unsafe.Pointer(pFile)).FzFilename, (pGroup + 4 /* &.iLimit */), szNew, (*quotaGroup)(unsafe.Pointer(pGroup)).FpArg) } if (szNew > (*quotaGroup)(unsafe.Pointer(pGroup)).FiLimit) && ((*quotaGroup)(unsafe.Pointer(pGroup)).FiLimit > int64(0)) { @@ -73699,7 +74414,9 @@ func quotaWrite(tls *libc.TLS, pConn uintptr, pBuf uintptr, iAmt int32, iOfst sq (*quotaFile)(unsafe.Pointer(pFile)).FiSize = iEnd quotaLeave(tls) } - return (*(*func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 12 /* &.xWrite */))))(tls, pSubOpen, pBuf, iAmt, iOfst) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxWrite})).f(tls, pSubOpen, pBuf, iAmt, iOfst) } // Pass xTruncate requests thru to the original VFS. If the @@ -73707,7 +74424,9 @@ func quotaWrite(tls *libc.TLS, pConn uintptr, pBuf uintptr, iAmt int32, iOfst sq func quotaTruncate(tls *libc.TLS, pConn uintptr, size sqlite3_int64) int32 { /* test_quota.c:602:12: */ var p uintptr = pConn var pSubOpen uintptr = quotaSubOpen(tls, pConn) - var rc int32 = (*(*func(*libc.TLS, uintptr, sqlite3_int64) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 16 /* &.xTruncate */))))(tls, pSubOpen, size) + var rc int32 = (*struct { + f func(*libc.TLS, uintptr, sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxTruncate})).f(tls, pSubOpen, size) var pFile uintptr = (*quotaConn)(unsafe.Pointer(p)).FpFile var pGroup uintptr if rc == SQLITE_OK { @@ -73724,7 +74443,9 @@ func quotaTruncate(tls *libc.TLS, pConn uintptr, size sqlite3_int64) int32 { /* // Pass xSync requests through to the original VFS without change func quotaSync(tls *libc.TLS, pConn uintptr, flags int32) int32 { /* test_quota.c:621:12: */ var pSubOpen uintptr = quotaSubOpen(tls, pConn) - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 20 /* &.xSync */))))(tls, pSubOpen, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxSync})).f(tls, pSubOpen, flags) } // Pass xFileSize requests through to the original VFS but then @@ -73741,7 +74462,9 @@ func quotaFileSize(tls *libc.TLS, pConn uintptr, pSize uintptr) int32 { /* test_ var rc int32 - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 24 /* &.xFileSize */))))(tls, pSubOpen, bp /* &sz */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxFileSize})).f(tls, pSubOpen, bp /* &sz */) if rc == SQLITE_OK { quotaEnter(tls) pGroup = (*quotaFile)(unsafe.Pointer(pFile)).FpGroup @@ -73757,19 +74480,25 @@ func quotaFileSize(tls *libc.TLS, pConn uintptr, pSize uintptr) int32 { /* test_ // Pass xLock requests through to the original VFS unchanged. func quotaLock(tls *libc.TLS, pConn uintptr, lock int32) int32 { /* test_quota.c:652:12: */ var pSubOpen uintptr = quotaSubOpen(tls, pConn) - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 28 /* &.xLock */))))(tls, pSubOpen, lock) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxLock})).f(tls, pSubOpen, lock) } // Pass xUnlock requests through to the original VFS unchanged. func quotaUnlock(tls *libc.TLS, pConn uintptr, lock int32) int32 { /* test_quota.c:659:12: */ var pSubOpen uintptr = quotaSubOpen(tls, pConn) - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 32 /* &.xUnlock */))))(tls, pSubOpen, lock) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxUnlock})).f(tls, pSubOpen, lock) } // Pass xCheckReservedLock requests through to the original VFS unchanged. func quotaCheckReservedLock(tls *libc.TLS, pConn uintptr, pResOut uintptr) int32 { /* test_quota.c:666:12: */ var pSubOpen uintptr = quotaSubOpen(tls, pConn) - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 36 /* &.xCheckReservedLock */))))(tls, pSubOpen, pResOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxCheckReservedLock})).f(tls, pSubOpen, pResOut) } // Pass xFileControl requests through to the original VFS unchanged. @@ -73778,7 +74507,9 @@ func quotaFileControl(tls *libc.TLS, pConn uintptr, op int32, pArg uintptr) int3 defer tls.Free(8) var pSubOpen uintptr = quotaSubOpen(tls, pConn) - var rc int32 = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 40 /* &.xFileControl */))))(tls, pSubOpen, op, pArg) + var rc int32 = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxFileControl})).f(tls, pSubOpen, op, pArg) if (op == SQLITE_FCNTL_VFSNAME) && (rc == SQLITE_OK) { *(*uintptr)(unsafe.Pointer(pArg)) = sqlite3.Xsqlite3_mprintf(tls, ts+36042 /* "quota/%z" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(pArg)))) } @@ -73788,37 +74519,47 @@ func quotaFileControl(tls *libc.TLS, pConn uintptr, op int32, pArg uintptr) int3 // Pass xSectorSize requests through to the original VFS unchanged. func quotaSectorSize(tls *libc.TLS, pConn uintptr) int32 { /* test_quota.c:686:12: */ var pSubOpen uintptr = quotaSubOpen(tls, pConn) - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 44 /* &.xSectorSize */))))(tls, pSubOpen) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxSectorSize})).f(tls, pSubOpen) } // Pass xDeviceCharacteristics requests through to the original VFS unchanged. func quotaDeviceCharacteristics(tls *libc.TLS, pConn uintptr) int32 { /* test_quota.c:693:12: */ var pSubOpen uintptr = quotaSubOpen(tls, pConn) - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 48 /* &.xDeviceCharacteristics */))))(tls, pSubOpen) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxDeviceCharacteristics})).f(tls, pSubOpen) } // Pass xShmMap requests through to the original VFS unchanged. func quotaShmMap(tls *libc.TLS, pConn uintptr, iRegion int32, szRegion int32, bExtend int32, pp uintptr) int32 { /* test_quota.c:700:12: */ var pSubOpen uintptr = quotaSubOpen(tls, pConn) - return (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 52 /* &.xShmMap */))))(tls, pSubOpen, iRegion, szRegion, bExtend, libc.AtomicLoadUintptr(&pp)) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxShmMap})).f(tls, pSubOpen, iRegion, szRegion, bExtend, pp) } // Pass xShmLock requests through to the original VFS unchanged. func quotaShmLock(tls *libc.TLS, pConn uintptr, ofst int32, n int32, flags int32) int32 { /* test_quota.c:713:12: */ var pSubOpen uintptr = quotaSubOpen(tls, pConn) - return (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 56 /* &.xShmLock */))))(tls, pSubOpen, ofst, n, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxShmLock})).f(tls, pSubOpen, ofst, n, flags) } // Pass xShmBarrier requests through to the original VFS unchanged. func quotaShmBarrier(tls *libc.TLS, pConn uintptr) { /* test_quota.c:725:13: */ var pSubOpen uintptr = quotaSubOpen(tls, pConn) - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 60 /* &.xShmBarrier */))))(tls, pSubOpen) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxShmBarrier})).f(tls, pSubOpen) } // Pass xShmUnmap requests through to the original VFS unchanged. func quotaShmUnmap(tls *libc.TLS, pConn uintptr, deleteFlag int32) int32 { /* test_quota.c:732:12: */ var pSubOpen uintptr = quotaSubOpen(tls, pConn) - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods + 64 /* &.xShmUnmap */))))(tls, pSubOpen, deleteFlag) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pSubOpen)).FpMethods)).FxShmUnmap})).f(tls, pSubOpen, deleteFlag) } //************************* Public Interfaces **************************** @@ -73989,7 +74730,7 @@ func sqlite3_quota_set(tls *libc.TLS, zPattern uintptr, iLimit sqlite3_int64, xC (*quotaGroup)(unsafe.Pointer(pGroup)).FiLimit = iLimit (*quotaGroup)(unsafe.Pointer(pGroup)).FxCallback = xCallback if ((*quotaGroup)(unsafe.Pointer(pGroup)).FxDestroy != 0) && ((*quotaGroup)(unsafe.Pointer(pGroup)).FpArg != pArg) { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pGroup + 28 /* &.xDestroy */))))(tls, (*quotaGroup)(unsafe.Pointer(pGroup)).FpArg) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*quotaGroup)(unsafe.Pointer(pGroup)).FxDestroy})).f(tls, (*quotaGroup)(unsafe.Pointer(pGroup)).FpArg) } (*quotaGroup)(unsafe.Pointer(pGroup)).FpArg = pArg (*quotaGroup)(unsafe.Pointer(pGroup)).FxDestroy = xDestroy @@ -74018,7 +74759,9 @@ func sqlite3_quota_file(tls *libc.TLS, zFilename uintptr) int32 { /* test_quota. rc = SQLITE_NOMEM } else { zFull = ((fd) + uintptr(gQuota.FsThisVfs.FszOsFile)) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((gQuota.FpOrigVfs + 36 /* &.xFullPathname */))))(tls, gQuota.FpOrigVfs, zFilename, + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gQuota.FpOrigVfs)).FxFullPathname})).f(tls, gQuota.FpOrigVfs, zFilename, (gQuota.FsThisVfs.FmxPathname + 1), zFull) } @@ -74027,8 +74770,12 @@ func sqlite3_quota_file(tls *libc.TLS, zFilename uintptr) int32 { /* test_quota. rc = quotaOpen(tls, (uintptr(unsafe.Pointer(&gQuota)) + 4 /* &.sThisVfs */), zFull, fd, (SQLITE_OPEN_READONLY | SQLITE_OPEN_MAIN_DB), bp /* &outFlags */) if rc == SQLITE_OK { - (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(fd)).FpMethods + 24 /* &.xFileSize */))))(tls, fd, bp+4 /* &iSize */) - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(fd)).FpMethods + 4 /* &.xClose */))))(tls, fd) + (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(fd)).FpMethods)).FxFileSize})).f(tls, fd, bp+4 /* &iSize */) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(fd)).FpMethods)).FxClose})).f(tls, fd) } else if rc == SQLITE_CANTOPEN { var pGroup uintptr var pFile uintptr @@ -74067,7 +74814,9 @@ func sqlite3_quota_fopen(tls *libc.TLS, zFilename uintptr, zMode uintptr) uintpt return uintptr(0) __1: ; - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((gQuota.FpOrigVfs + 36 /* &.xFullPathname */))))(tls, gQuota.FpOrigVfs, zFilename, + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gQuota.FpOrigVfs)).FxFullPathname})).f(tls, gQuota.FpOrigVfs, zFilename, (gQuota.FsThisVfs.FmxPathname + 1), zFull) if !(rc != 0) { goto __2 @@ -74154,7 +74903,9 @@ func sqlite3_quota_fwrite(tls *libc.TLS, pBuf uintptr, size size_t, nmemb size_t szNew = (((*quotaGroup)(unsafe.Pointer(pGroup)).FiSize - (*quotaFile)(unsafe.Pointer(pFile)).FiSize) + iEnd) if (szNew > (*quotaGroup)(unsafe.Pointer(pGroup)).FiLimit) && ((*quotaGroup)(unsafe.Pointer(pGroup)).FiLimit > int64(0)) { if (*quotaGroup)(unsafe.Pointer(pGroup)).FxCallback != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, sqlite3_int64, uintptr))(unsafe.Pointer((pGroup + 20 /* &.xCallback */))))(tls, (*quotaFile)(unsafe.Pointer(pFile)).FzFilename, (pGroup + 4 /* &.iLimit */), szNew, + (*struct { + f func(*libc.TLS, uintptr, uintptr, sqlite3_int64, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*quotaGroup)(unsafe.Pointer(pGroup)).FxCallback})).f(tls, (*quotaFile)(unsafe.Pointer(pFile)).FzFilename, (pGroup + 4 /* &.iLimit */), szNew, (*quotaGroup)(unsafe.Pointer(pGroup)).FpArg) } if (szNew > (*quotaGroup)(unsafe.Pointer(pGroup)).FiLimit) && ((*quotaGroup)(unsafe.Pointer(pGroup)).FiLimit > int64(0)) { @@ -74200,7 +74951,9 @@ func sqlite3_quota_fclose(tls *libc.TLS, p uintptr) int32 { /* test_quota.c:1054 if (*quotaFile)(unsafe.Pointer(pFile)).FnRef == 0 { var pGroup uintptr = (*quotaFile)(unsafe.Pointer(pFile)).FpGroup if (*quotaFile)(unsafe.Pointer(pFile)).FdeleteOnClose != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((gQuota.FpOrigVfs + 28 /* &.xDelete */))))(tls, gQuota.FpOrigVfs, (*quotaFile)(unsafe.Pointer(pFile)).FzFilename, 0) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gQuota.FpOrigVfs)).FxDelete})).f(tls, gQuota.FpOrigVfs, (*quotaFile)(unsafe.Pointer(pFile)).FzFilename, 0) quotaRemoveFile(tls, pFile) } quotaGroupDeref(tls, pGroup) @@ -74350,7 +75103,9 @@ func sqlite3_quota_remove(tls *libc.TLS, zFilename uintptr) int32 { /* test_quot if zFull == uintptr(0) { return SQLITE_NOMEM } - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((gQuota.FpOrigVfs + 36 /* &.xFullPathname */))))(tls, gQuota.FpOrigVfs, zFilename, + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gQuota.FpOrigVfs)).FxFullPathname})).f(tls, gQuota.FpOrigVfs, zFilename, (gQuota.FsThisVfs.FmxPathname + 1), zFull) if rc != 0 { sqlite3.Xsqlite3_free(tls, zFull) @@ -74375,7 +75130,9 @@ func sqlite3_quota_remove(tls *libc.TLS, zFilename uintptr) int32 { /* test_quot if (*quotaFile)(unsafe.Pointer(pFile)).FnRef != 0 { (*quotaFile)(unsafe.Pointer(pFile)).FdeleteOnClose = 1 } else { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((gQuota.FpOrigVfs + 28 /* &.xDelete */))))(tls, gQuota.FpOrigVfs, (*quotaFile)(unsafe.Pointer(pFile)).FzFilename, 0) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(gQuota.FpOrigVfs)).FxDelete})).f(tls, gQuota.FpOrigVfs, (*quotaFile)(unsafe.Pointer(pFile)).FzFilename, 0) quotaRemoveFile(tls, pFile) quotaGroupDeref(tls, pGroup) } @@ -74453,13 +75210,13 @@ func tclQuotaCallback(tls *libc.TLS, zFilename uintptr, piLimit uintptr, iSize s for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pEval - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = pVarname - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -74474,7 +75231,7 @@ func tclCallbackDestructor(tls *libc.TLS, pObj uintptr) { /* test_quota.c:1349:1 if p != 0 { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*TclQuotaCallback)(unsafe.Pointer(p)).FpScript - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -75222,7 +75979,7 @@ func circle_query_func(tls *libc.TLS, p uintptr) int32 { /* test_rtree.c:168:12: (*Circle)(unsafe.Pointer(pCircle)).Fcenterx = *(*sqlite3_rtree_dbl)(unsafe.Pointer((*sqlite3_rtree_query_info)(unsafe.Pointer(p)).FaParam)) (*Circle)(unsafe.Pointer(pCircle)).Fcentery = *(*sqlite3_rtree_dbl)(unsafe.Pointer((*sqlite3_rtree_query_info)(unsafe.Pointer(p)).FaParam + 1*8)) (*Circle)(unsafe.Pointer(pCircle)).Fradius = *(*sqlite3_rtree_dbl)(unsafe.Pointer((*sqlite3_rtree_query_info)(unsafe.Pointer(p)).FaParam + 2*8)) - (*Circle)(unsafe.Pointer(pCircle)).FeScoreType = int32(*(*sqlite3_rtree_dbl)(unsafe.Pointer((*sqlite3_rtree_query_info)(unsafe.Pointer(p)).FaParam + 3*8))) + (*Circle)(unsafe.Pointer(pCircle)).FeScoreType = libc.Int32FromFloat64(*(*sqlite3_rtree_dbl)(unsafe.Pointer((*sqlite3_rtree_query_info)(unsafe.Pointer(p)).FaParam + 3*8))) } else { var z uintptr = sqlite3.Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer((*sqlite3_rtree_query_info)(unsafe.Pointer(p)).FapSqlParam))) (*Circle)(unsafe.Pointer(pCircle)).Fcenterx = 0.0 @@ -75237,7 +75994,7 @@ func circle_query_func(tls *libc.TLS, p uintptr) int32 { /* test_rtree.c:168:12: } else if (int32(*(*int8)(unsafe.Pointer(z))) == 'y') && (int32(*(*int8)(unsafe.Pointer(z + 1))) == ':') { (*Circle)(unsafe.Pointer(pCircle)).Fcentery = libc.Xatof(tls, (z + 2)) } else if (int32(*(*int8)(unsafe.Pointer(z))) == 'e') && (int32(*(*int8)(unsafe.Pointer(z + 1))) == ':') { - (*Circle)(unsafe.Pointer(pCircle)).FeScoreType = int32(libc.Xatof(tls, (z + 2))) + (*Circle)(unsafe.Pointer(pCircle)).FeScoreType = libc.Int32FromFloat64(libc.Xatof(tls, (z + 2))) } else if int32(*(*int8)(unsafe.Pointer(z))) == ' ' { z++ continue @@ -75402,7 +76159,7 @@ func bfs_query_func(tls *libc.TLS, p uintptr) int32 { /* test_rtree.c:329:12: */ // // -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -75417,11 +76174,11 @@ func bfs_query_func(tls *libc.TLS, p uintptr) int32 { /* test_rtree.c:329:12: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -75436,7 +76193,7 @@ func bfs_query_func(tls *libc.TLS, p uintptr) int32 { /* test_rtree.c:329:12: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -75482,7 +76239,7 @@ type Cube1 = struct { // // -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -75497,11 +76254,11 @@ type Cube1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -75516,7 +76273,7 @@ type Cube1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -75683,7 +76440,7 @@ type fd_set5 = struct{ Ffds_bits [32]int32 } /* select.h:70:5 */ // fill-column: 78 // End: -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -75698,11 +76455,11 @@ type fd_set5 = struct{ Ffds_bits [32]int32 } /* select.h:70:5 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.20 General utilities -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -75717,11 +76474,11 @@ type fd_set5 = struct{ Ffds_bits [32]int32 } /* select.h:70:5 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.21 String handling -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -75736,11 +76493,11 @@ type fd_set5 = struct{ Ffds_bits [32]int32 } /* select.h:70:5 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -75755,7 +76512,7 @@ type fd_set5 = struct{ Ffds_bits [32]int32 } /* select.h:70:5 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -75781,7 +76538,7 @@ type schema_vtab1 = struct { // fill-column: 78 // End: -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -75796,11 +76553,11 @@ type schema_vtab1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.20 General utilities -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -75815,11 +76572,11 @@ type schema_vtab1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.21 String handling -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -75834,11 +76591,11 @@ type schema_vtab1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -75853,7 +76610,7 @@ type schema_vtab1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -76610,7 +77367,7 @@ func sqlite3_server_stop(tls *libc.TLS) { /* test_server.c:508:6: */ libc2.Xpthread_mutex_unlock(tls, (uintptr(unsafe.Pointer(&g4)) + 24 /* &.serverMutex */)) } -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -76625,11 +77382,11 @@ func sqlite3_server_stop(tls *libc.TLS) { /* test_server.c:508:6: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.2 Diagnostics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -76644,7 +77401,7 @@ func sqlite3_server_stop(tls *libc.TLS) { /* test_server.c:508:6: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // void assert (int expression); // @@ -76685,7 +77442,9 @@ func superlockBusyHandler(tls *libc.TLS, pCtx uintptr, UNUSED int32) int32 { /* if (*SuperlockBusy)(unsafe.Pointer(pBusy)).FxBusy == uintptr(0) { return 0 } - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pBusy /* &.xBusy */))))(tls, (*SuperlockBusy)(unsafe.Pointer(pBusy)).FpBusyArg, libc.PostIncInt32(&(*SuperlockBusy)(unsafe.Pointer(pBusy)).FnBusy, 1)) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SuperlockBusy)(unsafe.Pointer(pBusy)).FxBusy})).f(tls, (*SuperlockBusy)(unsafe.Pointer(pBusy)).FpBusyArg, libc.PostIncInt32(&(*SuperlockBusy)(unsafe.Pointer(pBusy)).FnBusy, 1)) } // This function is used to determine if the main database file for @@ -76727,7 +77486,9 @@ func superlockShmLock(tls *libc.TLS, fd uintptr, idx int32, nByte int32, pBusy u var rc int32 var xShmLock uintptr = (*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(fd)).FpMethods)).FxShmLock for ok := true; ok; ok = ((rc == SQLITE_BUSY) && (superlockBusyHandler(tls, pBusy, 0) != 0)) { - rc = (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(&xShmLock)))(tls, fd, idx, nByte, (SQLITE_SHM_LOCK | SQLITE_SHM_EXCLUSIVE)) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xShmLock})).f(tls, fd, idx, nByte, (SQLITE_SHM_LOCK | SQLITE_SHM_EXCLUSIVE)) } return rc } @@ -76761,11 +77522,13 @@ func superlockWalLock(tls *libc.TLS, db uintptr, pBusy uintptr) int32 { /* test_ // lock that this process is holding to do that, no new read or write // transactions may now be opened. Nor can a checkpoint be run, for the // same reason. - rc = (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* fd */)))).FpMethods + 52 /* &.xShmMap */))))(tls, *(*uintptr)(unsafe.Pointer(bp /* fd */)), 0, (32 * 1024), 1, bp+4 /* &p */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* fd */)))).FpMethods)).FxShmMap})).f(tls, *(*uintptr)(unsafe.Pointer(bp /* fd */)), 0, (32 * 1024), 1, bp+4 /* &p */) if rc != SQLITE_OK { return rc } - libc.Xmemset(tls, libc.AtomicLoadPUintptr(bp+4 /* p */), 0, uint32(32)) + libc.Xmemset(tls, *(*uintptr)(unsafe.Pointer(bp + 4 /* p */)), 0, uint32(32)) // Obtain exclusive locks on all the "read-lock" slots. Once these locks // are held, it is guaranteed that there are no active reader, writer or @@ -76788,8 +77551,12 @@ func sqlite3demo_superunlock(tls *libc.TLS, pLock uintptr) { /* test_superlock.c *(*uintptr)(unsafe.Pointer(bp /* fd */)) = uintptr(0) rc = sqlite3.Xsqlite3_file_control(tls, (*Superlock)(unsafe.Pointer(p)).Fdb, ts+85 /* "main" */, SQLITE_FCNTL_FILE_POINTER, bp /* &fd */) if rc == SQLITE_OK { - (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* fd */)))).FpMethods + 56 /* &.xShmLock */))))(tls, *(*uintptr)(unsafe.Pointer(bp /* fd */)), 2, 1, flags) - (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* fd */)))).FpMethods + 56 /* &.xShmLock */))))(tls, *(*uintptr)(unsafe.Pointer(bp /* fd */)), 3, (SQLITE_SHM_NLOCK - 3), flags) + (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* fd */)))).FpMethods)).FxShmLock})).f(tls, *(*uintptr)(unsafe.Pointer(bp /* fd */)), 2, 1, flags) + (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* fd */)))).FpMethods)).FxShmLock})).f(tls, *(*uintptr)(unsafe.Pointer(bp /* fd */)), 3, (SQLITE_SHM_NLOCK - 3), flags) } } sqlite3.Xsqlite3_close(tls, (*Superlock)(unsafe.Pointer(p)).Fdb) @@ -76918,7 +77685,7 @@ func superlock_busy(tls *libc.TLS, pCtx uintptr, nBusy int32) int32 { /* test_su tcl.XTcl_GetIntFromObj(tls, (*InterpAndScript)(unsafe.Pointer(p)).Finterp, tcl.XTcl_GetObjResult(tls, (*InterpAndScript)(unsafe.Pointer(p)).Finterp), bp /* &iVal */) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pEval - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -76985,7 +77752,7 @@ func SqliteSuperlock_Init(tls *libc.TLS, interp uintptr) int32 { /* test_superlo } // Define error_t. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -77000,7 +77767,7 @@ func SqliteSuperlock_Init(tls *libc.TLS, interp uintptr) int32 { /* test_superlo // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . type error_t = int32 /* error_t.h:22:13 */ @@ -77291,8 +78058,12 @@ func test_syscall_install(tls *libc.TLS, clientData uintptr, interp uintptr, obj return rc } if aSyscall[*(*int32)(unsafe.Pointer(bp + 8 /* iCall */))].FxOrig == uintptr(0) { - aSyscall[*(*int32)(unsafe.Pointer(bp + 8 /* iCall */))].FxOrig = (*(*func(*libc.TLS, uintptr, uintptr) sqlite3_syscall_ptr)(unsafe.Pointer((pVfs + 80 /* &.xGetSystemCall */))))(tls, pVfs, aSyscall[*(*int32)(unsafe.Pointer(bp + 8 /* iCall */))].FzName) - (*(*func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32)(unsafe.Pointer((pVfs + 76 /* &.xSetSystemCall */))))(tls, pVfs, aSyscall[*(*int32)(unsafe.Pointer(bp + 8 /* iCall */))].FzName, aSyscall[*(*int32)(unsafe.Pointer(bp + 8 /* iCall */))].FxTest) + aSyscall[*(*int32)(unsafe.Pointer(bp + 8 /* iCall */))].FxOrig = (*struct { + f func(*libc.TLS, uintptr, uintptr) sqlite3_syscall_ptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxGetSystemCall})).f(tls, pVfs, aSyscall[*(*int32)(unsafe.Pointer(bp + 8 /* iCall */))].FzName) + (*struct { + f func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxSetSystemCall})).f(tls, pVfs, aSyscall[*(*int32)(unsafe.Pointer(bp + 8 /* iCall */))].FzName, aSyscall[*(*int32)(unsafe.Pointer(bp + 8 /* iCall */))].FxTest) } aSyscall[*(*int32)(unsafe.Pointer(bp + 8 /* iCall */))].Fcustom_errno = aSyscall[*(*int32)(unsafe.Pointer(bp + 8 /* iCall */))].Fdefault_errno } @@ -77312,7 +78083,9 @@ func test_syscall_uninstall(tls *libc.TLS, clientData uintptr, interp uintptr, o pVfs = sqlite3.Xsqlite3_vfs_find(tls, uintptr(0)) for i = 0; aSyscall[i].FzName != 0; i++ { if aSyscall[i].FxOrig != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32)(unsafe.Pointer((pVfs + 76 /* &.xSetSystemCall */))))(tls, pVfs, aSyscall[i].FzName, uintptr(0)) + (*struct { + f func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxSetSystemCall})).f(tls, pVfs, aSyscall[i].FzName, uintptr(0)) aSyscall[i].FxOrig = uintptr(0) } } @@ -77334,7 +78107,9 @@ func test_syscall_reset(tls *libc.TLS, clientData uintptr, interp uintptr, objc pVfs = sqlite3.Xsqlite3_vfs_find(tls, uintptr(0)) if objc == 2 { - rc = (*(*func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32)(unsafe.Pointer((pVfs + 76 /* &.xSetSystemCall */))))(tls, pVfs, uintptr(0), uintptr(0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxSetSystemCall})).f(tls, pVfs, uintptr(0), uintptr(0)) for i = 0; aSyscall[i].FzName != 0; i++ { aSyscall[i].FxOrig = uintptr(0) } @@ -77342,7 +78117,9 @@ func test_syscall_reset(tls *libc.TLS, clientData uintptr, interp uintptr, objc // var nFunc int32 at bp, 4 var zFunc uintptr = tcl.XTcl_GetStringFromObj(tls, *(*uintptr)(unsafe.Pointer(objv + 2*4)), bp /* &nFunc */) - rc = (*(*func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32)(unsafe.Pointer((pVfs + 76 /* &.xSetSystemCall */))))(tls, pVfs, tcl.XTcl_GetString(tls, *(*uintptr)(unsafe.Pointer(objv + 2*4))), uintptr(0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxSetSystemCall})).f(tls, pVfs, tcl.XTcl_GetString(tls, *(*uintptr)(unsafe.Pointer(objv + 2*4))), uintptr(0)) for i = 0; (rc == SQLITE_OK) && (aSyscall[i].FzName != 0); i++ { if libc.Xstrlen(tls, aSyscall[i].FzName) != size_t(*(*int32)(unsafe.Pointer(bp /* nFunc */))) { continue @@ -77372,7 +78149,9 @@ func test_syscall_exists(tls *libc.TLS, clientData uintptr, interp uintptr, objc } pVfs = sqlite3.Xsqlite3_vfs_find(tls, uintptr(0)) - x = (*(*func(*libc.TLS, uintptr, uintptr) sqlite3_syscall_ptr)(unsafe.Pointer((pVfs + 80 /* &.xGetSystemCall */))))(tls, pVfs, tcl.XTcl_GetString(tls, *(*uintptr)(unsafe.Pointer(objv + 2*4)))) + x = (*struct { + f func(*libc.TLS, uintptr, uintptr) sqlite3_syscall_ptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxGetSystemCall})).f(tls, pVfs, tcl.XTcl_GetString(tls, *(*uintptr)(unsafe.Pointer(objv + 2*4)))) tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewIntObj(tls, (libc.Bool32((libc.Bool32(x != uintptr(0))) != 0)))) return TCL_OK @@ -77467,14 +78246,18 @@ func test_syscall_list(tls *libc.TLS, clientData uintptr, interp uintptr, objc i pVfs = sqlite3.Xsqlite3_vfs_find(tls, uintptr(0)) pList = tcl.XTcl_NewObj(tls) (*Tcl_Obj)(unsafe.Pointer(pList)).FrefCount++ - for zSys = (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer((pVfs + 84 /* &.xNextSystemCall */))))(tls, pVfs, uintptr(0)); zSys != uintptr(0); zSys = (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer((pVfs + 84 /* &.xNextSystemCall */))))(tls, pVfs, zSys) { + for zSys = (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxNextSystemCall})).f(tls, pVfs, uintptr(0)); zSys != uintptr(0); zSys = (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxNextSystemCall})).f(tls, pVfs, zSys) { tcl.XTcl_ListObjAppendElement(tls, interp, pList, tcl.XTcl_NewStringObj(tls, zSys, -1)) } tcl.XTcl_SetObjResult(tls, interp, pList) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pList - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -77515,16 +78298,22 @@ func test_syscall_pagesize(tls *libc.TLS, clientData uintptr, interp uintptr, ob if *(*int32)(unsafe.Pointer(bp + 16 /* pgsz */)) < 0 { if gSyscall.Forig_getpagesize != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32)(unsafe.Pointer((pVfs + 76 /* &.xSetSystemCall */))))(tls, pVfs, ts+37406 /* "getpagesize" */, gSyscall.Forig_getpagesize) + (*struct { + f func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxSetSystemCall})).f(tls, pVfs, ts+37406 /* "getpagesize" */, gSyscall.Forig_getpagesize) } } else { if (*(*int32)(unsafe.Pointer(bp + 16 /* pgsz */)) < 512) || ((*(*int32)(unsafe.Pointer(bp + 16 /* pgsz */)) & (*(*int32)(unsafe.Pointer(bp + 16 /* pgsz */)) - 1)) != 0) { tcl.XTcl_AppendResult(tls, interp, libc.VaList(bp, ts+37418 /* "pgsz out of rang..." */, 0)) return TCL_ERROR } - gSyscall.Forig_getpagesize = (*(*func(*libc.TLS, uintptr, uintptr) sqlite3_syscall_ptr)(unsafe.Pointer((pVfs + 80 /* &.xGetSystemCall */))))(tls, pVfs, ts+37406 /* "getpagesize" */) + gSyscall.Forig_getpagesize = (*struct { + f func(*libc.TLS, uintptr, uintptr) sqlite3_syscall_ptr + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxGetSystemCall})).f(tls, pVfs, ts+37406 /* "getpagesize" */) gSyscall.Fpgsz = *(*int32)(unsafe.Pointer(bp + 16 /* pgsz */)) - (*(*func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32)(unsafe.Pointer((pVfs + 76 /* &.xSetSystemCall */))))(tls, + (*struct { + f func(*libc.TLS, uintptr, uintptr, sqlite3_syscall_ptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(pVfs)).FxSetSystemCall})).f(tls, pVfs, ts+37406 /* "getpagesize" */, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS) int32 }{ts_getpagesize}))) } @@ -77584,7 +78373,9 @@ func test_syscall(tls *libc.TLS, clientData uintptr, interp uintptr, objc int32, if rc != TCL_OK { return rc } - return (*(*func(*libc.TLS, ClientData, uintptr, int32, uintptr) int32)(unsafe.Pointer((bp + 16 /* &aCmd */ + uintptr(*(*int32)(unsafe.Pointer(bp + 96 /* iCmd */)))*8 + 4 /* &.xCmd */))))(tls, clientData, interp, objc, objv) + return (*struct { + f func(*libc.TLS, ClientData, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SyscallCmd)(unsafe.Pointer(bp + 16 /* &aCmd */ + uintptr(*(*int32)(unsafe.Pointer(bp + 96 /* iCmd */)))*8)).FxCmd})).f(tls, clientData, interp, objc, objv) } type SyscallCmd = struct { @@ -77714,7 +78505,7 @@ func load_testfixture_extensions(tls *libc.TLS, cd ClientData, interp uintptr, o // c-basic-offset: 4 // fill-column: 78 // End: -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -77729,11 +78520,11 @@ func load_testfixture_extensions(tls *libc.TLS, cd ClientData, interp uintptr, o // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.20 General utilities -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -77748,7 +78539,7 @@ func load_testfixture_extensions(tls *libc.TLS, cd ClientData, interp uintptr, o // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.21 String handling @@ -77766,7 +78557,7 @@ type tclvar_vtab1 = struct { // c-basic-offset: 4 // fill-column: 78 // End: -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -77781,11 +78572,11 @@ type tclvar_vtab1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.20 General utilities -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -77800,7 +78591,7 @@ type tclvar_vtab1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.21 String handling @@ -77862,7 +78653,7 @@ func tclvarClose(tls *libc.TLS, cur uintptr) int32 { /* test_tclvar.c:124:12: */ if (*tclvar_cursor)(unsafe.Pointer(pCur)).FpList1 != 0 { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*tclvar_cursor)(unsafe.Pointer(pCur)).FpList1 - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -77870,7 +78661,7 @@ func tclvarClose(tls *libc.TLS, cur uintptr) int32 { /* test_tclvar.c:124:12: */ if (*tclvar_cursor)(unsafe.Pointer(pCur)).FpList2 != 0 { for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = (*tclvar_cursor)(unsafe.Pointer(pCur)).FpList2 - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -77894,7 +78685,7 @@ func next2(tls *libc.TLS, interp uintptr, pCur uintptr, pObj uintptr) int32 { /* tcl.XTcl_EvalObjEx(tls, interp, p, TCL_EVAL_GLOBAL) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = p - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -77908,7 +78699,7 @@ func next2(tls *libc.TLS, interp uintptr, pCur uintptr, pObj uintptr) int32 { /* if (*tclvar_cursor)(unsafe.Pointer(pCur)).Fi2 >= *(*int32)(unsafe.Pointer(bp /* n */)) { for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = (*tclvar_cursor)(unsafe.Pointer(pCur)).FpList2 - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -77991,7 +78782,7 @@ func tclvarFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintp if (*tclvar_cursor)(unsafe.Pointer(pCur)).FpList1 != 0 { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*tclvar_cursor)(unsafe.Pointer(pCur)).FpList1 - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -77999,7 +78790,7 @@ func tclvarFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintp if (*tclvar_cursor)(unsafe.Pointer(pCur)).FpList2 != 0 { for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = (*tclvar_cursor)(unsafe.Pointer(pCur)).FpList2 - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -78012,7 +78803,7 @@ func tclvarFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintp for ok2 := true; ok2; ok2 = 0 != 0 { var _objPtr uintptr = p - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -78311,8 +79102,6 @@ var aObjCmd13 = [1]struct { {FzName: ts + 38368 /* "register_tclvar_..." */, FxProc: 0}, } /* test_tclvar.c:552:5 */ -// Define some macros helping to catch buffer overflows. - // One of these is allocated for each thread created by [sqlthread spawn]. type SqlThread1 = struct { Fparent Tcl_ThreadId @@ -78321,8 +79110,6 @@ type SqlThread1 = struct { FzVarname uintptr } /* test_thread.c:36:9 */ -// Define some macros helping to catch buffer overflows. - // One of these is allocated for each thread created by [sqlthread spawn]. type SqlThread = SqlThread1 /* test_thread.c:36:26 */ @@ -78422,7 +79209,7 @@ func tclScriptThread(tls *libc.TLS, pSqlThread ClientData) { /* test_thread.c:11 postToParent(tls, p, pList) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pList - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -78437,13 +79224,13 @@ func tclScriptThread(tls *libc.TLS, pSqlThread ClientData) { /* test_thread.c:11 tcl.XTcl_Free(tls, p) for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = pList - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } for ok2 := true; ok2; ok2 = 0 != 0 { var _objPtr uintptr = pRes - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -78663,7 +79450,14 @@ func sqlthread_proc(tls *libc.TLS, clientData ClientData, interp uintptr, objc i return TCL_ERROR } - return (*(*func(*libc.TLS, ClientData, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSub + 4 /* &.xProc */))))(tls, clientData, interp, objc, objv) + return (*struct { + f func(*libc.TLS, ClientData, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*struct { + FzName uintptr + FxProc uintptr + FnArg int32 + FzUsage uintptr + })(unsafe.Pointer(pSub)).FxProc})).f(tls, clientData, interp, objc, objv) } /* @@ -79112,7 +79906,7 @@ func tvfsClose(tls *libc.TLS, pFile uintptr) int32 { /* test_vfs.c:317:12: */ if (*TestvfsFd)(unsafe.Pointer(pFd)).FpShmId != 0 { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*TestvfsFd)(unsafe.Pointer(pFd)).FpShmId - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -79443,7 +80237,7 @@ func tvfsOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pFile uintptr, flags i tvfsExecTcl(tls, p, ts+27701 /* "xOpen" */, tcl.XTcl_NewStringObj(tls, (*TestvfsFd)(unsafe.Pointer(pFd)).FzFilename, -1), pArg, uintptr(0), uintptr(0)) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pArg - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -79594,7 +80388,9 @@ func tvfsSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* test_vfs.c: // Return the current time as a Julian Day number in *pTimeOut. func tvfsCurrentTime(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) int32 { /* test_vfs.c:823:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Testvfs)(unsafe.Pointer((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData)).FpParent + 64 /* &.xCurrentTime */))))(tls, (*Testvfs)(unsafe.Pointer((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData)).FpParent, pTimeOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(((*Testvfs)(unsafe.Pointer((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData)).FpParent))).FxCurrentTime})).f(tls, (*Testvfs)(unsafe.Pointer((*sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData)).FpParent, pTimeOut) } func tvfsShmOpen(tls *libc.TLS, pFile uintptr) int32 { /* test_vfs.c:827:12: */ @@ -79669,7 +80465,9 @@ func tvfsShmMap(tls *libc.TLS, pFile uintptr, iPage int32, pgsz int32, isWrite i if (*Testvfs)(unsafe.Pointer(p)).FisFullshm != 0 { var pReal uintptr = (*TestvfsFd)(unsafe.Pointer(pFd)).FpReal - return (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods + 52 /* &.xShmMap */))))(tls, pReal, iPage, pgsz, isWrite, libc.AtomicLoadUintptr(&pp)) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods)).FxShmMap})).f(tls, pReal, iPage, pgsz, isWrite, pp) } if uintptr(0) == (*TestvfsFd)(unsafe.Pointer(pFd)).FpShm { @@ -79690,7 +80488,7 @@ func tvfsShmMap(tls *libc.TLS, pFile uintptr, iPage int32, pgsz int32, isWrite i tvfsResultCode(tls, p, bp /* &rc */) for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = pArg - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -79703,7 +80501,7 @@ func tvfsShmMap(tls *libc.TLS, pFile uintptr, iPage int32, pgsz int32, isWrite i tvfsAllocPage(tls, (*TestvfsFd)(unsafe.Pointer(pFd)).FpShm, iPage, pgsz) } if (*(*int32)(unsafe.Pointer(bp /* rc */)) == SQLITE_OK) || (*(*int32)(unsafe.Pointer(bp /* rc */)) == SQLITE_READONLY) { - *(*uintptr)(unsafe.Pointer(libc.AtomicLoadUintptr(&pp))) = *(*uintptr)(unsafe.Pointer(((*TestvfsFd)(unsafe.Pointer(pFd)).FpShm + 8 /* &.aPage */) + uintptr(iPage)*4)) + *(*uintptr)(unsafe.Pointer(pp)) = *(*uintptr)(unsafe.Pointer(((*TestvfsFd)(unsafe.Pointer(pFd)).FpShm + 8 /* &.aPage */) + uintptr(iPage)*4)) } return *(*int32)(unsafe.Pointer(bp /* rc */)) @@ -79721,7 +80519,9 @@ func tvfsShmLock(tls *libc.TLS, pFile uintptr, ofst int32, n int32, flags int32) if (*Testvfs)(unsafe.Pointer(p)).FisFullshm != 0 { var pReal uintptr = (*TestvfsFd)(unsafe.Pointer(pFd)).FpReal - return (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods + 56 /* &.xShmLock */))))(tls, pReal, ofst, n, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods)).FxShmLock})).f(tls, pReal, ofst, n, flags) } if ((*Testvfs)(unsafe.Pointer(p)).FpScript != 0) && (((*Testvfs)(unsafe.Pointer(p)).Fmask & TESTVFS_SHMLOCK_MASK) != 0) { @@ -79800,7 +80600,7 @@ func tvfsShmBarrier(tls *libc.TLS, pFile uintptr) { /* test_vfs.c:1004:13: */ if (*Testvfs)(unsafe.Pointer(p)).FisFullshm != 0 { var pReal uintptr = (*TestvfsFd)(unsafe.Pointer(pFd)).FpReal - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods + 60 /* &.xShmBarrier */))))(tls, pReal) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods)).FxShmBarrier})).f(tls, pReal) return } } @@ -79817,7 +80617,9 @@ func tvfsShmUnmap(tls *libc.TLS, pFile uintptr, deleteFlag int32) int32 { /* tes if (*Testvfs)(unsafe.Pointer(p)).FisFullshm != 0 { var pReal uintptr = (*TestvfsFd)(unsafe.Pointer(pFd)).FpReal - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods + 64 /* &.xShmUnmap */))))(tls, pReal, deleteFlag) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(pReal)).FpMethods)).FxShmUnmap})).f(tls, pReal, deleteFlag) } if !(pBuffer != 0) { @@ -79903,7 +80705,9 @@ func testvfs_obj_cmd(tls *libc.TLS, cd ClientData, interp uintptr, objc int32, o return TCL_ERROR } zName = tcl.XTcl_Alloc(tls, uint32((*sqlite3_vfs)(unsafe.Pointer((*Testvfs)(unsafe.Pointer(p)).FpParent)).FmxPathname)) - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*Testvfs)(unsafe.Pointer(p)).FpParent + 36 /* &.xFullPathname */))))(tls, + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer((*Testvfs)(unsafe.Pointer(p)).FpParent)).FxFullPathname})).f(tls, (*Testvfs)(unsafe.Pointer(p)).FpParent, tcl.XTcl_GetString(tls, *(*uintptr)(unsafe.Pointer(objv + 2*4))), (*sqlite3_vfs)(unsafe.Pointer((*Testvfs)(unsafe.Pointer(p)).FpParent)).FmxPathname, zName) if rc != SQLITE_OK { @@ -80000,7 +80804,7 @@ func testvfs_obj_cmd(tls *libc.TLS, cd ClientData, interp uintptr, objc int32, o if (*Testvfs)(unsafe.Pointer(p)).FpScript != 0 { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*Testvfs)(unsafe.Pointer(p)).FpScript - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -80210,7 +81014,7 @@ func testvfs_obj_del(tls *libc.TLS, cd ClientData) { /* test_vfs.c:1393:27: */ if (*Testvfs)(unsafe.Pointer(p)).FpScript != 0 { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*Testvfs)(unsafe.Pointer(p)).FpScript - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -80500,7 +81304,9 @@ func test_vfs_shmlock(tls *libc.TLS, clientData uintptr, interp uintptr, objc in if *(*uintptr)(unsafe.Pointer(bp + 44 /* pFd */)) == uintptr(0) { return TCL_ERROR } - rc = (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 44 /* pFd */)))).FpMethods + 56 /* &.xShmLock */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 44 /* pFd */)), *(*int32)(unsafe.Pointer(bp + 36 /* iOffset */)), *(*int32)(unsafe.Pointer(bp + 40 /* n */)), + rc = (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 44 /* pFd */)))).FpMethods)).FxShmLock})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 44 /* pFd */)), *(*int32)(unsafe.Pointer(bp + 36 /* iOffset */)), *(*int32)(unsafe.Pointer(bp + 40 /* n */)), ((func() int32 { if *(*int32)(unsafe.Pointer(bp + 16 /* iArg1 */)) == 0 { return SQLITE_SHM_SHARED @@ -80548,16 +81354,18 @@ func test_vfs_set_readmark(tls *libc.TLS, clientData uintptr, interp uintptr, ob if *(*uintptr)(unsafe.Pointer(bp + 28 /* pFd */)) == uintptr(0) { return TCL_ERROR } - rc = (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 28 /* pFd */)))).FpMethods + 52 /* &.xShmMap */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 28 /* pFd */)), 0, (32 * 1024), 0, bp+32 /* &pShm */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods1)(unsafe.Pointer((*sqlite3_file)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 28 /* pFd */)))).FpMethods)).FxShmMap})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 28 /* pFd */)), 0, (32 * 1024), 0, bp+32 /* &pShm */) if rc != SQLITE_OK { tcl.XTcl_SetObjResult(tls, interp, tcl.XTcl_NewStringObj(tls, sqlite3.Xsqlite3ErrName(tls, rc), -1)) return TCL_ERROR } - if libc.AtomicLoadPUintptr(bp+32 /* pShm */) == uintptr(0) { + if *(*uintptr)(unsafe.Pointer(bp + 32 /* pShm */)) == uintptr(0) { tcl.XTcl_AppendResult(tls, interp, libc.VaList(bp, ts+39382 /* "*-shm is not yet..." */, 0)) return TCL_ERROR } - aShm = libc.AtomicLoadPUintptr(bp + 32 /* pShm */) + aShm = *(*uintptr)(unsafe.Pointer(bp + 32 /* pShm */)) iOff = (((12 * 2) + 1) + *(*int32)(unsafe.Pointer(bp + 20 /* iSlot */))) if objc == 5 { @@ -80641,7 +81449,7 @@ func doTestWindowStep(tls *libc.TLS, bInverse int32, ctx uintptr, nArg int32, ap if (*TestWindowCtx)(unsafe.Pointer(pCtx)).FpVal != 0 { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*TestWindowCtx)(unsafe.Pointer(pCtx)).FpVal - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -80652,7 +81460,7 @@ func doTestWindowStep(tls *libc.TLS, bInverse int32, ctx uintptr, nArg int32, ap } for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = pEval - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -80690,7 +81498,7 @@ func doTestWindowFinalize(tls *libc.TLS, bValue int32, ctx uintptr) { /* test_wi if (*TestWindowCtx)(unsafe.Pointer(pCtx)).FpVal != 0 { for ok := true; ok; ok = 0 != 0 { var _objPtr uintptr = (*TestWindowCtx)(unsafe.Pointer(pCtx)).FpVal - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } @@ -80700,7 +81508,7 @@ func doTestWindowFinalize(tls *libc.TLS, bValue int32, ctx uintptr) { /* test_wi } for ok1 := true; ok1; ok1 = 0 != 0 { var _objPtr uintptr = pEval - if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer((_objPtr))).FrefCount, 1) <= 1 { + if libc.PostDecInt32(&(*Tcl_Obj)(unsafe.Pointer(_objPtr)).FrefCount, 1) <= 1 { tcl.XTclFreeObj(tls, _objPtr) } } diff --git a/lib/sqlite_linux_386.go b/lib/sqlite_linux_386.go index bcb5e2d..1f8c255 100644 --- a/lib/sqlite_linux_386.go +++ b/lib/sqlite_linux_386.go @@ -40,6 +40,7 @@ const ( AT_EMPTY_PATH = 0x1000 AT_FDCWD = -100 AT_NO_AUTOMOUNT = 0x800 + AT_RECURSIVE = 0x8000 AT_REMOVEDIR = 0x200 AT_STATX_DONT_SYNC = 0x4000 AT_STATX_FORCE_SYNC = 0x2000 @@ -570,6 +571,7 @@ const ( F_OFD_SETLKW = 38 F_OK = 0 F_RDLCK = 0 + F_SEAL_FUTURE_WRITE = 0x0010 F_SEAL_GROW = 0x0004 F_SEAL_SEAL = 0x0001 F_SEAL_SHRINK = 0x0002 @@ -593,7 +595,7 @@ const ( F_ULOCK = 0 F_UNLCK = 2 F_WRLCK = 1 - GCC_VERSION = 8003000 + GCC_VERSION = 10002001 GEOPOLY_PI = 3.1415926535897932385 HASHSIZE = 97 HASHTABLE_HASH_1 = 383 @@ -694,6 +696,7 @@ const ( M10d_Any = 1 M10d_No = 2 M10d_Yes = 0 + MADV_COLD = 20 MADV_DODUMP = 17 MADV_DOFORK = 11 MADV_DONTDUMP = 16 @@ -706,6 +709,7 @@ const ( MADV_MERGEABLE = 12 MADV_NOHUGEPAGE = 15 MADV_NORMAL = 0 + MADV_PAGEOUT = 21 MADV_RANDOM = 1 MADV_REMOVE = 9 MADV_SEQUENTIAL = 2 @@ -2239,26 +2243,30 @@ const ( SRT_Table = 14 SRT_Union = 1 SRT_Upfrom = 15 - STATX_ALL = 0x0fff - STATX_ATIME = 0x0020 - STATX_ATTR_APPEND = 0x0020 - STATX_ATTR_AUTOMOUNT = 0x1000 - STATX_ATTR_COMPRESSED = 0x0004 - STATX_ATTR_ENCRYPTED = 0x0800 - STATX_ATTR_IMMUTABLE = 0x0010 - STATX_ATTR_NODUMP = 0x0040 - STATX_BASIC_STATS = 0x07ff - STATX_BLOCKS = 0x0400 - STATX_BTIME = 0x0800 - STATX_CTIME = 0x0080 - STATX_GID = 0x0010 - STATX_INO = 0x0100 - STATX_MODE = 0x0002 - STATX_MTIME = 0x0040 - STATX_NLINK = 0x0004 - STATX_SIZE = 0x0200 - STATX_TYPE = 0x0001 - STATX_UID = 0x0008 + STATX_ALL = 0x00000fff + STATX_ATIME = 0x00000020 + STATX_ATTR_APPEND = 0x00000020 + STATX_ATTR_AUTOMOUNT = 0x00001000 + STATX_ATTR_COMPRESSED = 0x00000004 + STATX_ATTR_DAX = 0x00200000 + STATX_ATTR_ENCRYPTED = 0x00000800 + STATX_ATTR_IMMUTABLE = 0x00000010 + STATX_ATTR_MOUNT_ROOT = 0x00002000 + STATX_ATTR_NODUMP = 0x00000040 + STATX_ATTR_VERITY = 0x00100000 + STATX_BASIC_STATS = 0x000007ff + STATX_BLOCKS = 0x00000400 + STATX_BTIME = 0x00000800 + STATX_CTIME = 0x00000080 + STATX_GID = 0x00000010 + STATX_INO = 0x00000100 + STATX_MNT_ID = 0x00001000 + STATX_MODE = 0x00000002 + STATX_MTIME = 0x00000040 + STATX_NLINK = 0x00000004 + STATX_SIZE = 0x00000200 + STATX_TYPE = 0x00000001 + STATX_UID = 0x00000008 STATX__RESERVED = 0x80000000 STAT_GET_NDLT = 4 STAT_GET_NEQ = 2 @@ -2288,6 +2296,7 @@ const ( SYNC_FILE_RANGE_WAIT_AFTER = 4 SYNC_FILE_RANGE_WAIT_BEFORE = 1 SYNC_FILE_RANGE_WRITE = 2 + SYNC_FILE_RANGE_WRITE_AND_WAIT = 7 S_BLKSIZE = 512 S_IEXEC = 64 S_IFBLK = 24576 @@ -2766,10 +2775,15 @@ const ( X_ANSI_STDDEF_H = 0 X_ASM_GENERIC_ERRNO_BASE_H = 0 X_ASM_GENERIC_ERRNO_H = 0 + X_ASM_GENERIC_INT_LL64_H = 0 X_ASM_GENERIC_IOCTL_H = 0 + X_ASM_GENERIC_TYPES_H = 0 + X_ASM_X86_POSIX_TYPES_32_H = 0 X_ASSERT_H = 1 X_ATFILE_SOURCE = 1 X_BITS_BYTESWAP_H = 1 + X_BITS_ENDIANNESS_H = 1 + X_BITS_ENDIAN_H = 1 X_BITS_ERRNO_H = 1 X_BITS_FLOATN_COMMON_H = 0 X_BITS_FLOATN_H = 0 @@ -2780,6 +2794,7 @@ const ( X_BITS_STAT_H = 1 X_BITS_STDINT_INTN_H = 1 X_BITS_STDIO_LIM_H = 1 + X_BITS_TIME64_H = 1 X_BITS_TIMEX_H = 1 X_BITS_TIME_H = 1 X_BITS_TYPESIZES_H = 1 @@ -2808,6 +2823,7 @@ const ( X_GETOPT_CORE_H = 1 X_GETOPT_POSIX_H = 1 X_GNU_SOURCE = 0 + X_ILP32 = 1 X_IOC_DIRBITS = 2 X_IOC_DIRMASK = 3 X_IOC_DIRSHIFT = 30 @@ -2830,6 +2846,7 @@ const ( X_IO_ERR_SEEN = 0x0020 X_IO_USER_LOCK = 0x8000 X_ISOC11_SOURCE = 1 + X_ISOC2X_SOURCE = 1 X_ISOC95_SOURCE = 1 X_ISOC99_SOURCE = 1 X_LARGEFILE64_SOURCE = 1 @@ -2841,6 +2858,9 @@ const ( X_LFS_ASYNCHRONOUS_IO = 1 X_LFS_LARGEFILE = 1 X_LINUX_IOCTL_H = 0 + X_LINUX_POSIX_TYPES_H = 0 + X_LINUX_STAT_H = 0 + X_LINUX_TYPES_H = 0 X_MATH_H = 1 X_MKNOD_VER = 1 X_MKNOD_VER_LINUX = 1 @@ -2915,6 +2935,7 @@ const ( X_PTRDIFF_T = 0 X_PTRDIFF_T_ = 0 X_PTRDIFF_T_DECLARED = 0 + X_RWLOCK_INTERNAL_H = 0 X_SIZET_ = 0 X_SIZE_T = 0 X_SIZE_T_ = 0 @@ -2950,6 +2971,7 @@ const ( X_SYS_TIME_H = 1 X_SYS_TTYDEFAULTS_H_ = 0 X_SYS_TYPES_H = 1 + X_THREAD_MUTEX_INTERNAL_H = 1 X_THREAD_SHARED_TYPES_H = 1 X_TIME_H = 1 X_T_PTRDIFF = 0 @@ -3059,7 +3081,7 @@ const ( // the `_SC_*' symbols for the NAME argument to `sysconf'; // and the `_CS_*' symbols for the NAME argument to `confstr'. // `sysconf', `pathconf', and `confstr' NAME values. Generic version. -// Copyright (C) 1993-2018 Free Software Foundation, Inc. +// Copyright (C) 1993-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3074,7 +3096,7 @@ const ( // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Values for the NAME argument to `pathconf' and `fpathconf'. const ( /* confname.h:24:1: */ @@ -3463,16 +3485,11 @@ const ( /* fcntl-linux.h:265:1: */ F_OWNER_GID = 2 ) -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // XPG requires a few symbols from being defined. // Definitions of flag bits for `waitpid' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3487,7 +3504,7 @@ const ( /* fcntl-linux.h:265:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Bits in the third argument to `waitpid'. @@ -3565,7 +3582,7 @@ const ( /* dlfcn.h:128:1: */ // // Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. x86 version. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3580,7 +3597,7 @@ const ( /* dlfcn.h:128:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Get the architecture specific values describing the floating-point // evaluation. The following symbols will get defined: @@ -3594,7 +3611,7 @@ const ( /* dlfcn.h:128:1: */ // implemented directly with a hardware multiply-add instructions. // Define FP_FAST_* macros. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3609,7 +3626,7 @@ const ( /* dlfcn.h:128:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l} // builtins are supported. @@ -3645,7 +3662,7 @@ const ( /* math.h:853:1: */ ) // Values for the first argument to `getitimer' and `setitimer'. -const ( /* time.h:88:1: */ +const ( /* time.h:89:1: */ // Timers run in real time. ITIMER_REAL = 0 // Timers run only when the process is executing. @@ -3717,25 +3734,25 @@ type X__float128 = float64 /* :47:21 */ var sqlite3azCompileOpt = [19]uintptr{ // BEGIN CODE GENERATED BY tool/mkctime.tcl - ts, /* "COMPILER=gcc-8.3..." */ - ts + 19, /* "ENABLE_COLUMN_ME..." */ - ts + 42, /* "ENABLE_FTS5" */ - ts + 54, /* "ENABLE_GEOPOLY" */ - ts + 69, /* "ENABLE_JSON1" */ - ts + 82, /* "ENABLE_MEMORY_MA..." */ - ts + 107, /* "ENABLE_OFFSET_SQ..." */ - ts + 130, /* "ENABLE_PREUPDATE..." */ - ts + 152, /* "ENABLE_RBU" */ - ts + 163, /* "ENABLE_RTREE" */ - ts + 176, /* "ENABLE_SESSION" */ - ts + 191, /* "ENABLE_SNAPSHOT" */ - ts + 207, /* "ENABLE_STAT4" */ - ts + 220, /* "ENABLE_UNLOCK_NO..." */ - ts + 241, /* "LIKE_DOESNT_MATC..." */ - ts + 265, /* "MUTEX_NOOP" */ - ts + 276, /* "SOUNDEX" */ - ts + 284, /* "SYSTEM_MALLOC" */ - ts + 298, /* "THREADSAFE=1" */ + ts, /* "COMPILER=gcc-10...." */ + ts + 29, /* "ENABLE_COLUMN_ME..." */ + ts + 52, /* "ENABLE_FTS5" */ + ts + 64, /* "ENABLE_GEOPOLY" */ + ts + 79, /* "ENABLE_JSON1" */ + ts + 92, /* "ENABLE_MEMORY_MA..." */ + ts + 117, /* "ENABLE_OFFSET_SQ..." */ + ts + 140, /* "ENABLE_PREUPDATE..." */ + ts + 162, /* "ENABLE_RBU" */ + ts + 173, /* "ENABLE_RTREE" */ + ts + 186, /* "ENABLE_SESSION" */ + ts + 201, /* "ENABLE_SNAPSHOT" */ + ts + 217, /* "ENABLE_STAT4" */ + ts + 230, /* "ENABLE_UNLOCK_NO..." */ + ts + 251, /* "LIKE_DOESNT_MATC..." */ + ts + 275, /* "MUTEX_NOOP" */ + ts + 286, /* "SOUNDEX" */ + ts + 294, /* "SYSTEM_MALLOC" */ + ts + 308, /* "THREADSAFE=1" */ // END CODE GENERATED BY tool/mkctime.tcl } /* sqlite3.c:72:19 */ @@ -3925,7 +3942,7 @@ func Xsqlite3CompileOptions(tls *libc.TLS, pnOpt uintptr) uintptr { /* sqlite3.c // The makefile makes some minor changes to this file (such as inserting // the version number) and changes its name to "sqlite3.h" as // part of the build process. -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -4051,7 +4068,7 @@ type Va_list = X__gnuc_va_list /* stdarg.h:99:24 */ // of the hash might be different from [SQLITE_SOURCE_ID].)^ // // See also: [sqlite_version()] and [sqlite_source_id()]. -var Xsqlite3_version = *(*[7]int8)(unsafe.Pointer(ts + 311 /* "3.36.0" */)) /* sqlite3.c:1244:23 */ +var Xsqlite3_version = *(*[7]int8)(unsafe.Pointer(ts + 321 /* "3.36.0" */)) /* sqlite3.c:1244:23 */ // CAPI3REF: Database Connection Handle // KEYWORDS: {database connection} {database connections} @@ -4095,7 +4112,7 @@ type sqlite3 = struct { FmTrace U8 FnoSharedCache U8 FnSqlExec U8 - _ [3]byte + F__ccgo_pad1 [3]byte FnextPagesize int32 Fmagic U32 FnChange int32 @@ -4106,9 +4123,9 @@ type sqlite3 = struct { FnewTnum Pgno FiDb U8 Fbusy U8 - _ [2]byte + F__ccgo_pad1 [2]byte ForphanTrigger uint8 /* unsigned orphanTrigger: 1, unsigned imposterTable: 1, unsigned reopenMemdb: 1 */ - _ [3]byte + F__ccgo_pad2 [3]byte FazInit uintptr } FnVdbeActive int32 @@ -5417,16 +5434,16 @@ type Sqlite3_value = sqlite3_value /* sqlite3.c:5368:30 */ // [sqlite3_context_db_handle()], [sqlite3_get_auxdata()], // and/or [sqlite3_set_auxdata()]. type sqlite3_context = struct { - FpOut uintptr - FpFunc uintptr - FpMem uintptr - FpVdbe uintptr - FiOp int32 - FisError int32 - FskipFlag U8 - Fargc U8 - _ [2]byte - Fargv [1]uintptr + FpOut uintptr + FpFunc uintptr + FpMem uintptr + FpVdbe uintptr + FiOp int32 + FisError int32 + FskipFlag U8 + Fargc U8 + F__ccgo_pad1 [2]byte + Fargv [1]uintptr } /* sqlite3.c:1331:9 */ // CAPI3REF: SQL Function Context Object @@ -5631,7 +5648,7 @@ type sqlite3_index_constraint = struct { FiColumn int32 Fop uint8 Fusable uint8 - _ [2]byte + F__ccgo_pad1 [2]byte FiTermOffset int32 } /* sqlite3.c:7867:9 */ @@ -5736,9 +5753,9 @@ type sqlite3_index_constraint = struct { // sqlite3_libversion_number() returns a value greater than or equal to // 3009000. type sqlite3_index_orderby = struct { - FiColumn int32 - Fdesc uint8 - _ [3]byte + FiColumn int32 + Fdesc uint8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:7867:9 */ // CAPI3REF: Virtual Table Indexing Information @@ -5842,9 +5859,9 @@ type sqlite3_index_orderby = struct { // sqlite3_libversion_number() returns a value greater than or equal to // 3009000. type sqlite3_index_constraint_usage = struct { - FargvIndex int32 - Fomit uint8 - _ [3]byte + FargvIndex int32 + Fomit uint8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:7867:9 */ // CAPI3REF: Mutex Methods Object @@ -6009,7 +6026,7 @@ type sqlite3_str = struct { FnChar U32 FaccError U8 FprintfFlags U8 - _ [2]byte + F__ccgo_pad1 [2]byte } /* sqlite3.c:8964:9 */ // CAPI3REF: Dynamic String Object @@ -7883,14 +7900,9 @@ type _ht = struct { // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -7916,7 +7928,7 @@ type _ht = struct { // ISO C Standard: 7.15 Variable arguments // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7931,11 +7943,11 @@ type _ht = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7950,43 +7962,63 @@ type _ht = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Determine the wordsize from the preprocessor defines. +// Bit size of the time_t type at glibc build time, x86-64 and x32 case. +// Copyright (C) 2018-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// For others, time size is word size. + // Convenience types. -type X__u_char = uint8 /* types.h:30:23 */ -type X__u_short = uint16 /* types.h:31:28 */ -type X__u_int = uint32 /* types.h:32:22 */ -type X__u_long = uint32 /* types.h:33:27 */ +type X__u_char = uint8 /* types.h:31:23 */ +type X__u_short = uint16 /* types.h:32:28 */ +type X__u_int = uint32 /* types.h:33:22 */ +type X__u_long = uint32 /* types.h:34:27 */ // Fixed-size types, underlying types depend on word size and compiler. -type X__int8_t = int8 /* types.h:36:21 */ -type X__uint8_t = uint8 /* types.h:37:23 */ -type X__int16_t = int16 /* types.h:38:26 */ -type X__uint16_t = uint16 /* types.h:39:28 */ -type X__int32_t = int32 /* types.h:40:20 */ -type X__uint32_t = uint32 /* types.h:41:22 */ -type X__int64_t = int64 /* types.h:46:44 */ -type X__uint64_t = uint64 /* types.h:47:46 */ +type X__int8_t = int8 /* types.h:37:21 */ +type X__uint8_t = uint8 /* types.h:38:23 */ +type X__int16_t = int16 /* types.h:39:26 */ +type X__uint16_t = uint16 /* types.h:40:28 */ +type X__int32_t = int32 /* types.h:41:20 */ +type X__uint32_t = uint32 /* types.h:42:22 */ +type X__int64_t = int64 /* types.h:47:44 */ +type X__uint64_t = uint64 /* types.h:48:46 */ // Smallest types with at least a given width. -type X__int_least8_t = X__int8_t /* types.h:51:18 */ -type X__uint_least8_t = X__uint8_t /* types.h:52:19 */ -type X__int_least16_t = X__int16_t /* types.h:53:19 */ -type X__uint_least16_t = X__uint16_t /* types.h:54:20 */ -type X__int_least32_t = X__int32_t /* types.h:55:19 */ -type X__uint_least32_t = X__uint32_t /* types.h:56:20 */ -type X__int_least64_t = X__int64_t /* types.h:57:19 */ -type X__uint_least64_t = X__uint64_t /* types.h:58:20 */ +type X__int_least8_t = X__int8_t /* types.h:52:18 */ +type X__uint_least8_t = X__uint8_t /* types.h:53:19 */ +type X__int_least16_t = X__int16_t /* types.h:54:19 */ +type X__uint_least16_t = X__uint16_t /* types.h:55:20 */ +type X__int_least32_t = X__int32_t /* types.h:56:19 */ +type X__uint_least32_t = X__uint32_t /* types.h:57:20 */ +type X__int_least64_t = X__int64_t /* types.h:58:19 */ +type X__uint_least64_t = X__uint64_t /* types.h:59:20 */ // quad_t is also 64 bits. -type X__quad_t = int64 /* types.h:65:37 */ -type X__u_quad_t = uint64 /* types.h:66:46 */ +type X__quad_t = int64 /* types.h:66:37 */ +type X__u_quad_t = uint64 /* types.h:67:46 */ // Largest integral types. -type X__intmax_t = int64 /* types.h:74:37 */ -type X__uintmax_t = uint64 /* types.h:75:46 */ +type X__intmax_t = int64 /* types.h:75:37 */ +type X__uintmax_t = uint64 /* types.h:76:46 */ // The machine-dependent file defines __*_T_TYPE // macros for each of the OS types we define below. The definitions @@ -7998,7 +8030,7 @@ type X__uintmax_t = uint64 /* types.h:75:46 */ // 32 -- "natural" 32-bit type (always int) // 64 -- "natural" 64-bit type (long or long long) // LONG32 -- 32-bit type, traditionally long -// QUAD -- 64-bit type, always long long +// QUAD -- 64-bit type, traditionally long long // WORD -- natural type of __WORDSIZE bits (int or long) // LONGWORD -- type of __WORDSIZE bits, traditionally long // @@ -8020,7 +8052,7 @@ type X__uintmax_t = uint64 /* types.h:75:46 */ // We want __extension__ before typedef's that use nonstandard base types // such as `long long' in C89 mode. // bits/typesizes.h -- underlying types for *_t. Linux/x86-64 version. -// Copyright (C) 2012-2018 Free Software Foundation, Inc. +// Copyright (C) 2012-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8035,7 +8067,7 @@ type X__uintmax_t = uint64 /* types.h:75:46 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // See for the meaning of these macros. This file exists so // that need not vary across different GNU platforms. @@ -8044,79 +8076,8 @@ type X__uintmax_t = uint64 /* types.h:75:46 */ // Number of descriptors that can fit in an `fd_set'. -type X__dev_t = X__u_quad_t /* types.h:143:25 */ // Type of device numbers. -type X__uid_t = uint32 /* types.h:144:25 */ // Type of user identifications. -type X__gid_t = uint32 /* types.h:145:25 */ // Type of group identifications. -type X__ino_t = uint32 /* types.h:146:25 */ // Type of file serial numbers. -type X__ino64_t = X__u_quad_t /* types.h:147:27 */ // Type of file serial numbers (LFS). -type X__mode_t = uint32 /* types.h:148:26 */ // Type of file attribute bitmasks. -type X__nlink_t = uint32 /* types.h:149:27 */ // Type of file link counts. -type X__off_t = int32 /* types.h:150:25 */ // Type of file sizes and offsets. -type X__off64_t = X__quad_t /* types.h:151:27 */ // Type of file sizes and offsets (LFS). -type X__pid_t = int32 /* types.h:152:25 */ // Type of process identifications. -type X__fsid_t = struct{ F__val [2]int32 } /* types.h:153:26 */ // Type of file system IDs. -type X__clock_t = int32 /* types.h:154:27 */ // Type of CPU usage counts. -type X__rlim_t = uint32 /* types.h:155:26 */ // Type for resource measurement. -type X__rlim64_t = X__u_quad_t /* types.h:156:28 */ // Type for resource measurement (LFS). -type X__id_t = uint32 /* types.h:157:24 */ // General type for IDs. -type X__time_t = int32 /* types.h:158:26 */ // Seconds since the Epoch. -type X__useconds_t = uint32 /* types.h:159:30 */ // Count of microseconds. -type X__suseconds_t = int32 /* types.h:160:31 */ // Signed count of microseconds. - -type X__daddr_t = int32 /* types.h:162:27 */ // The type of a disk address. -type X__key_t = int32 /* types.h:163:25 */ // Type of an IPC key. - -// Clock ID used in clock and timer functions. -type X__clockid_t = int32 /* types.h:166:29 */ - -// Timer ID returned by `timer_create'. -type X__timer_t = uintptr /* types.h:169:12 */ - -// Type to represent block size. -type X__blksize_t = int32 /* types.h:172:29 */ - -// Types from the Large File Support interface. - -// Type to count number of disk blocks. -type X__blkcnt_t = int32 /* types.h:177:28 */ -type X__blkcnt64_t = X__quad_t /* types.h:178:30 */ - -// Type to count file system blocks. -type X__fsblkcnt_t = uint32 /* types.h:181:30 */ -type X__fsblkcnt64_t = X__u_quad_t /* types.h:182:32 */ - -// Type to count file system nodes. -type X__fsfilcnt_t = uint32 /* types.h:185:30 */ -type X__fsfilcnt64_t = X__u_quad_t /* types.h:186:32 */ - -// Type of miscellaneous file system fields. -type X__fsword_t = int32 /* types.h:189:28 */ - -type X__ssize_t = int32 /* types.h:191:27 */ // Type of a byte count, or error. - -// Signed long type used in system calls. -type X__syscall_slong_t = int32 /* types.h:194:33 */ -// Unsigned long type used in system calls. -type X__syscall_ulong_t = uint32 /* types.h:196:33 */ - -// These few don't really vary by system, they always correspond -// to one of the other defined types. -type X__loff_t = X__off64_t /* types.h:200:19 */ // Type of file sizes and offsets (LFS). -type X__caddr_t = uintptr /* types.h:201:14 */ - -// Duplicates info from stdint.h but this is used in unistd.h. -type X__intptr_t = int32 /* types.h:204:25 */ - -// Duplicate info from sys/socket.h. -type X__socklen_t = uint32 /* types.h:207:23 */ - -// C99: An integer type that can be accessed as an atomic entity, -// even in the presence of asynchronous interrupts. -// It is not currently necessary for this to be machine-specific. -type X__sig_atomic_t = int32 /* types.h:212:13 */ - -// bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// bits/time64.h -- underlying types for __time64_t. Generic version. +// Copyright (C) 2018-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8131,7 +8092,105 @@ type X__sig_atomic_t = int32 /* types.h:212:13 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . + +// Define __TIME64_T_TYPE so that it is always a 64-bit type. + +// Define a 64-bit time type alongsize the 32-bit one. + +type X__dev_t = X__uint64_t /* types.h:145:25 */ // Type of device numbers. +type X__uid_t = uint32 /* types.h:146:25 */ // Type of user identifications. +type X__gid_t = uint32 /* types.h:147:25 */ // Type of group identifications. +type X__ino_t = uint32 /* types.h:148:25 */ // Type of file serial numbers. +type X__ino64_t = X__uint64_t /* types.h:149:27 */ // Type of file serial numbers (LFS). +type X__mode_t = uint32 /* types.h:150:26 */ // Type of file attribute bitmasks. +type X__nlink_t = uint32 /* types.h:151:27 */ // Type of file link counts. +type X__off_t = int32 /* types.h:152:25 */ // Type of file sizes and offsets. +type X__off64_t = X__int64_t /* types.h:153:27 */ // Type of file sizes and offsets (LFS). +type X__pid_t = int32 /* types.h:154:25 */ // Type of process identifications. +type X__fsid_t = struct{ F__val [2]int32 } /* types.h:155:26 */ // Type of file system IDs. +type X__clock_t = int32 /* types.h:156:27 */ // Type of CPU usage counts. +type X__rlim_t = uint32 /* types.h:157:26 */ // Type for resource measurement. +type X__rlim64_t = X__uint64_t /* types.h:158:28 */ // Type for resource measurement (LFS). +type X__id_t = uint32 /* types.h:159:24 */ // General type for IDs. +type X__time_t = int32 /* types.h:160:26 */ // Seconds since the Epoch. +type X__useconds_t = uint32 /* types.h:161:30 */ // Count of microseconds. +type X__suseconds_t = int32 /* types.h:162:31 */ // Signed count of microseconds. + +type X__daddr_t = int32 /* types.h:164:27 */ // The type of a disk address. +type X__key_t = int32 /* types.h:165:25 */ // Type of an IPC key. + +// Clock ID used in clock and timer functions. +type X__clockid_t = int32 /* types.h:168:29 */ + +// Timer ID returned by `timer_create'. +type X__timer_t = uintptr /* types.h:171:12 */ + +// Type to represent block size. +type X__blksize_t = int32 /* types.h:174:29 */ + +// Types from the Large File Support interface. + +// Type to count number of disk blocks. +type X__blkcnt_t = int32 /* types.h:179:28 */ +type X__blkcnt64_t = X__int64_t /* types.h:180:30 */ + +// Type to count file system blocks. +type X__fsblkcnt_t = uint32 /* types.h:183:30 */ +type X__fsblkcnt64_t = X__uint64_t /* types.h:184:32 */ + +// Type to count file system nodes. +type X__fsfilcnt_t = uint32 /* types.h:187:30 */ +type X__fsfilcnt64_t = X__uint64_t /* types.h:188:32 */ + +// Type of miscellaneous file system fields. +type X__fsword_t = int32 /* types.h:191:28 */ + +type X__ssize_t = int32 /* types.h:193:27 */ // Type of a byte count, or error. + +// Signed long type used in system calls. +type X__syscall_slong_t = int32 /* types.h:196:33 */ +// Unsigned long type used in system calls. +type X__syscall_ulong_t = uint32 /* types.h:198:33 */ + +// These few don't really vary by system, they always correspond +// to one of the other defined types. +type X__loff_t = X__off64_t /* types.h:202:19 */ // Type of file sizes and offsets (LFS). +type X__caddr_t = uintptr /* types.h:203:14 */ + +// Duplicates info from stdint.h but this is used in unistd.h. +type X__intptr_t = int32 /* types.h:206:25 */ + +// Duplicate info from sys/socket.h. +type X__socklen_t = uint32 /* types.h:209:23 */ + +// C99: An integer type that can be accessed as an atomic entity, +// even in the presence of asynchronous interrupts. +// It is not currently necessary for this to be machine-specific. +type X__sig_atomic_t = int32 /* types.h:214:13 */ + +// Seconds since the Epoch, visible to user code when time_t is too +// narrow only for consistency with the old way of widening too-narrow +// types. User code should never use __time64_t. +type X__time64_t = X__int64_t /* types.h:222:28 */ + +// bits/types.h -- definitions of __*_t types underlying *_t types. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . // Never include this file directly; use instead. @@ -8160,7 +8219,7 @@ type _G_fpos_t = struct { type X__fpos_t = _G_fpos_t /* __fpos_t.h:14:3 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8175,7 +8234,7 @@ type X__fpos_t = _G_fpos_t /* __fpos_t.h:14:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8188,7 +8247,7 @@ type _G_fpos64_t = struct { } /* __fpos64_t.h:10:9 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8203,7 +8262,7 @@ type _G_fpos64_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8277,16 +8336,11 @@ type Ssize_t = X__ssize_t /* stdio.h:77:19 */ type Fpos_t = X__fpos64_t /* stdio.h:86:20 */ type Fpos64_t = X__fpos64_t /* stdio.h:89:20 */ -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // XPG requires a few symbols from being defined. // Definitions of flag bits for `waitpid' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8301,7 +8355,7 @@ type Fpos64_t = X__fpos64_t /* stdio.h:89:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Bits in the third argument to `waitpid'. @@ -8314,7 +8368,7 @@ type Fpos64_t = X__fpos64_t /* stdio.h:89:20 */ type Idtype_t = uint32 /* waitflags.h:57:3 */ // Definitions of status bits for `wait' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8329,7 +8383,7 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Everything extant so far uses these same bits. @@ -8356,7 +8410,7 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // _FloatN API tests for enablement. // Macros to control TS 18661-3 glibc features on x86. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8371,9 +8425,9 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8388,7 +8442,7 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Defined to 1 if the current compiler invocation provides a // floating-point type with the IEEE 754 binary128 format, and this @@ -8432,7 +8486,7 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // Macros to control TS 18661-3 glibc features where the same // definitions are appropriate for all platforms. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8447,9 +8501,9 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8464,10 +8518,10 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Properties of long double type. ldbl-96 version. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8482,7 +8536,7 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // long double is distinct from double, so there is nothing to // define here. @@ -8555,7 +8609,7 @@ type Lldiv_t = struct { // use as an additional parameter. These are GNU extensions inspired // by the POSIX.1-2008 extended locale API. // Definition of locale_t. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8570,10 +8624,10 @@ type Lldiv_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Definition of struct __locale_struct and __locale_t. -// Copyright (C) 1997-2018 Free Software Foundation, Inc. +// Copyright (C) 1997-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // Contributed by Ulrich Drepper , 1997. // @@ -8589,7 +8643,7 @@ type Lldiv_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX.1-2008: the locale_t type, representing a locale context // (implementation-namespace version). This type should be treated @@ -8608,7 +8662,7 @@ type X__locale_t = uintptr /* __locale_t.h:42:32 */ type Locale_t = X__locale_t /* locale_t.h:24:20 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8623,11 +8677,11 @@ type Locale_t = X__locale_t /* locale_t.h:24:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 2.6 Primitive System Data Types -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8642,10 +8696,10 @@ type Locale_t = X__locale_t /* locale_t.h:24:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8660,7 +8714,7 @@ type Locale_t = X__locale_t /* locale_t.h:24:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8696,7 +8750,7 @@ type Caddr_t = X__caddr_t /* types.h:115:19 */ type Key_t = X__key_t /* types.h:121:17 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8711,7 +8765,7 @@ type Key_t = X__key_t /* types.h:121:17 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8719,7 +8773,7 @@ type Key_t = X__key_t /* types.h:121:17 */ type Clock_t = X__clock_t /* clock_t.h:7:19 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8734,7 +8788,7 @@ type Clock_t = X__clock_t /* clock_t.h:7:19 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8742,7 +8796,7 @@ type Clock_t = X__clock_t /* clock_t.h:7:19 */ type Clockid_t = X__clockid_t /* clockid_t.h:7:21 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8757,7 +8811,7 @@ type Clockid_t = X__clockid_t /* clockid_t.h:7:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8765,7 +8819,7 @@ type Clockid_t = X__clockid_t /* clockid_t.h:7:21 */ type Time_t = X__time_t /* time_t.h:7:18 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8780,7 +8834,7 @@ type Time_t = X__time_t /* time_t.h:7:18 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8790,7 +8844,7 @@ type Timer_t = X__timer_t /* timer_t.h:7:19 */ type Useconds_t = X__useconds_t /* types.h:134:22 */ type Suseconds_t = X__suseconds_t /* types.h:138:23 */ -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -8822,15 +8876,6 @@ type Suseconds_t = X__suseconds_t /* types.h:138:23 */ // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -8865,11 +8910,6 @@ type Suseconds_t = X__suseconds_t /* types.h:138:23 */ // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Old compatibility names for C types. @@ -8880,7 +8920,7 @@ type Uint = uint32 /* types.h:150:22 */ // These size-specific names are used by some of the inet code. // Define intN_t types. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8895,10 +8935,10 @@ type Uint = uint32 /* types.h:150:22 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8913,7 +8953,7 @@ type Uint = uint32 /* types.h:150:22 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8922,18 +8962,17 @@ type Int16_t = X__int16_t /* stdint-intn.h:25:19 */ type Int32_t = X__int32_t /* stdint-intn.h:26:19 */ type Int64_t = X__int64_t /* stdint-intn.h:27:19 */ -// For GCC 2.7 and later, we can use specific type-size attributes. +// These were defined by ISO C without the first `_'. +type U_int8_t = X__uint8_t /* types.h:158:19 */ +type U_int16_t = X__uint16_t /* types.h:159:20 */ +type U_int32_t = X__uint32_t /* types.h:160:20 */ +type U_int64_t = X__uint64_t /* types.h:161:20 */ -type U_int8_t = uint32 /* types.h:177:1 */ -type U_int16_t = uint32 /* types.h:178:1 */ -type U_int32_t = uint32 /* types.h:179:1 */ -type U_int64_t = uint32 /* types.h:180:1 */ - -type Register_t = int32 /* types.h:182:13 */ +type Register_t = int32 /* types.h:164:13 */ // It also defines `fd_set' and the FD_* macros for `select'. // `fd_set' type and related macros, and `select'/`pselect' declarations. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8948,11 +8987,11 @@ type Register_t = int32 /* types.h:182:13 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX 1003.1g: 6.2 Select from File Descriptor Sets -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8967,11 +9006,11 @@ type Register_t = int32 /* types.h:182:13 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Get definition of needed basic types. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8986,12 +9025,12 @@ type Register_t = int32 /* types.h:182:13 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // Get __FD_* definitions. -// Copyright (C) 1997-2018 Free Software Foundation, Inc. +// Copyright (C) 1997-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -9006,7 +9045,7 @@ type Register_t = int32 /* types.h:182:13 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Determine the wordsize from the preprocessor defines. @@ -9020,7 +9059,7 @@ type Sigset_t = X__sigset_t /* sigset_t.h:7:20 */ // Get definition of timer specification structures. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -9035,7 +9074,7 @@ type Sigset_t = X__sigset_t /* sigset_t.h:7:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -9049,7 +9088,27 @@ type timeval = struct { // NB: Include guard matches what uses. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// Never include this file directly; use instead. + +// Endian macros for string.h functions +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -9066,14 +9125,12 @@ type timeval = struct { // License along with the GNU C Library; if not, see // . -// Never include this file directly; use instead. - // POSIX.1b structure for a time value. This is like a `struct timeval' but // has nanoseconds instead of microseconds. type timespec = struct { Ftv_sec X__time_t Ftv_nsec X__syscall_slong_t -} /* struct_timespec.h:9:1 */ +} /* struct_timespec.h:10:1 */ // The fd_set member is required to be an array of longs. type X__fd_mask = int32 /* select.h:49:18 */ @@ -9091,20 +9148,20 @@ type Fd_mask = X__fd_mask /* select.h:77:19 */ // Define some inlines helping to catch common problems. -type Blksize_t = X__blksize_t /* types.h:202:21 */ +type Blksize_t = X__blksize_t /* types.h:185:21 */ // Types from the Large File Support interface. -type Blkcnt_t = X__blkcnt64_t /* types.h:222:22 */ // Type to count number of disk blocks. -type Fsblkcnt_t = X__fsblkcnt64_t /* types.h:226:24 */ // Type to count file system blocks. -type Fsfilcnt_t = X__fsfilcnt64_t /* types.h:230:24 */ // Type to count file system inodes. +type Blkcnt_t = X__blkcnt64_t /* types.h:205:22 */ // Type to count number of disk blocks. +type Fsblkcnt_t = X__fsblkcnt64_t /* types.h:209:24 */ // Type to count file system blocks. +type Fsfilcnt_t = X__fsfilcnt64_t /* types.h:213:24 */ // Type to count file system inodes. -type Blkcnt64_t = X__blkcnt64_t /* types.h:236:22 */ // Type to count number of disk blocks. -type Fsblkcnt64_t = X__fsblkcnt64_t /* types.h:237:24 */ // Type to count file system blocks. -type Fsfilcnt64_t = X__fsfilcnt64_t /* types.h:238:24 */ // Type to count file system inodes. +type Blkcnt64_t = X__blkcnt64_t /* types.h:219:22 */ // Type to count number of disk blocks. +type Fsblkcnt64_t = X__fsblkcnt64_t /* types.h:220:24 */ // Type to count file system blocks. +type Fsfilcnt64_t = X__fsfilcnt64_t /* types.h:221:24 */ // Type to count file system inodes. // Now add the thread types. // Declaration of common pthread types for all architectures. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -9119,11 +9176,11 @@ type Fsfilcnt64_t = X__fsfilcnt64_t /* types.h:238:24 */ // Type to count file s // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // For internal mutex and condition variable definitions. // Common threading primitives definitions for both POSIX and C11. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -9138,7 +9195,7 @@ type Fsfilcnt64_t = X__fsfilcnt64_t /* types.h:238:24 */ // Type to count file s // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Arch-specific definitions. Each architecture must define the following // macros to define the expected sizes of pthread data types: @@ -9153,35 +9210,95 @@ type Fsfilcnt64_t = X__fsfilcnt64_t /* types.h:238:24 */ // Type to count file s // __SIZEOF_PTHREAD_BARRIER_T - size of pthread_barrier_t. // __SIZEOF_PTHREAD_BARRIERATTR_T - size of pthread_barrierattr_t. // -// Also, the following macros must be define for internal pthread_mutex_t -// struct definitions (struct __pthread_mutex_s): +// The additional macro defines any constraint for the lock alignment +// inside the thread structures: // -// __PTHREAD_COMPAT_PADDING_MID - any additional members after 'kind' -// and before '__spin' (for 64 bits) or -// '__nusers' (for 32 bits). -// __PTHREAD_COMPAT_PADDING_END - any additional members at the end of -// the internal structure. -// __PTHREAD_MUTEX_LOCK_ELISION - 1 if the architecture supports lock -// elision or 0 otherwise. -// __PTHREAD_MUTEX_NUSERS_AFTER_KIND - control where to put __nusers. The -// preferred value for new architectures -// is 0. -// __PTHREAD_MUTEX_USE_UNION - control whether internal __spins and -// __list will be place inside a union for -// linuxthreads compatibility. -// The preferred value for new architectures -// is 0. +// __LOCK_ALIGNMENT - for internal lock/futex usage. // -// For a new port the preferred values for the required defines are: +// Same idea but for the once locking primitive: // -// #define __PTHREAD_COMPAT_PADDING_MID -// #define __PTHREAD_COMPAT_PADDING_END -// #define __PTHREAD_MUTEX_LOCK_ELISION 0 -// #define __PTHREAD_MUTEX_NUSERS_AFTER_KIND 0 -// #define __PTHREAD_MUTEX_USE_UNION 0 +// __ONCE_ALIGNMENT - for pthread_once_t/once_flag definition. + +// Copyright (C) 2002-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. // -// __PTHREAD_MUTEX_LOCK_ELISION can be set to 1 if the hardware plans to -// eventually support lock elision using transactional memory. +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// Determine the wordsize from the preprocessor defines. + +// Extra attributes for the cleanup functions. + +// Common definition of pthread_mutex_t. + +type __pthread_internal_list = struct { + F__prev uintptr + F__next uintptr +} /* thread-shared-types.h:49:9 */ + +// Type to count file system inodes. + +// Now add the thread types. +// Declaration of common pthread types for all architectures. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// For internal mutex and condition variable definitions. +// Common threading primitives definitions for both POSIX and C11. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// Arch-specific definitions. Each architecture must define the following +// macros to define the expected sizes of pthread data types: +// +// __SIZEOF_PTHREAD_ATTR_T - size of pthread_attr_t. +// __SIZEOF_PTHREAD_MUTEX_T - size of pthread_mutex_t. +// __SIZEOF_PTHREAD_MUTEXATTR_T - size of pthread_mutexattr_t. +// __SIZEOF_PTHREAD_COND_T - size of pthread_cond_t. +// __SIZEOF_PTHREAD_CONDATTR_T - size of pthread_condattr_t. +// __SIZEOF_PTHREAD_RWLOCK_T - size of pthread_rwlock_t. +// __SIZEOF_PTHREAD_RWLOCKATTR_T - size of pthread_rwlockattr_t. +// __SIZEOF_PTHREAD_BARRIER_T - size of pthread_barrier_t. +// __SIZEOF_PTHREAD_BARRIERATTR_T - size of pthread_barrierattr_t. // // The additional macro defines any constraint for the lock alignment // inside the thread structures: @@ -9191,11 +9308,52 @@ type Fsfilcnt64_t = X__fsfilcnt64_t /* types.h:238:24 */ // Type to count file s // Same idea but for the once locking primitive: // // __ONCE_ALIGNMENT - for pthread_once_t/once_flag definition. + +// Copyright (C) 2002-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. // -// And finally the internal pthread_rwlock_t (struct __pthread_rwlock_arch_t) -// must be defined. +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. // -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// Determine the wordsize from the preprocessor defines. + +// Extra attributes for the cleanup functions. + +// Common definition of pthread_mutex_t. + +type X__pthread_list_t = __pthread_internal_list /* thread-shared-types.h:53:3 */ + +type __pthread_internal_slist = struct{ F__next uintptr } /* thread-shared-types.h:55:9 */ + +type X__pthread_slist_t = __pthread_internal_slist /* thread-shared-types.h:58:3 */ + +// Arch-specific mutex definitions. A generic implementation is provided +// by sysdeps/nptl/bits/struct_mutex.h. If required, an architecture +// can override it by defining: +// +// 1. struct __pthread_mutex_s (used on both pthread_mutex_t and mtx_t +// definition). It should contains at least the internal members +// defined in the generic version. +// +// 2. __LOCK_ALIGNMENT for any extra attribute for internal lock used with +// atomic operations. +// +// 3. The macro __PTHREAD_MUTEX_INITIALIZER used for static initialization. +// It should initialize the mutex internal flag. + +// x86 internal mutex struct definitions. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -9212,38 +9370,6 @@ type Fsfilcnt64_t = X__fsfilcnt64_t /* types.h:238:24 */ // Type to count file s // License along with the GNU C Library; if not, see // . -// Determine the wordsize from the preprocessor defines. - -// Definitions for internal mutex struct. - -type __pthread_rwlock_arch_t = struct { - F__readers uint32 - F__writers uint32 - F__wrphase_futex uint32 - F__writers_futex uint32 - F__pad3 uint32 - F__pad4 uint32 - F__flags uint8 - F__shared uint8 - F__rwelision int8 - F__pad2 uint8 - F__cur_writer int32 -} /* pthreadtypes-arch.h:65:1 */ - -// Extra attributes for the cleanup functions. - -// Common definition of pthread_mutex_t. - -type __pthread_internal_slist = struct{ F__next uintptr } /* thread-shared-types.h:88:9 */ - -// Extra attributes for the cleanup functions. - -// Common definition of pthread_mutex_t. - -type X__pthread_slist_t = __pthread_internal_slist /* thread-shared-types.h:91:3 */ - -// Lock elision support. - type __pthread_mutex_s = struct { F__lock int32 F__count uint32 @@ -9257,7 +9383,51 @@ type __pthread_mutex_s = struct { F__eelision int16 } } -} /* thread-shared-types.h:118:1 */ +} /* struct_mutex.h:22:1 */ + +// Arch-sepecific read-write lock definitions. A generic implementation is +// provided by struct_rwlock.h. If required, an architecture can override it +// by defining: +// +// 1. struct __pthread_rwlock_arch_t (used on pthread_rwlock_t definition). +// It should contain at least the internal members defined in the +// generic version. +// +// 2. The macro __PTHREAD_RWLOCK_INITIALIZER used for static initialization. +// It should initialize the rwlock internal type. + +// x86 internal rwlock struct definitions. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. +// +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +type __pthread_rwlock_arch_t = struct { + F__readers uint32 + F__writers uint32 + F__wrphase_futex uint32 + F__writers_futex uint32 + F__pad3 uint32 + F__pad4 uint32 + F__flags uint8 + F__shared uint8 + F__rwelision int8 + F__pad2 uint8 + F__cur_writer int32 +} /* struct_rwlock.h:23:1 */ // Common definition of pthread_cond_t. @@ -9269,7 +9439,7 @@ type __pthread_cond_s = struct { F__g1_orig_size uint32 F__wrefs uint32 F__g_signals [2]uint32 -} /* thread-shared-types.h:171:1 */ +} /* thread-shared-types.h:92:1 */ // Thread identifiers. The structure of the attribute type is not // exposed on purpose. @@ -9356,10 +9526,10 @@ type drand48_data = struct { } /* stdlib.h:490:1 */ // Shorthand for type of comparison functions. -type X__compar_fn_t = uintptr /* stdlib.h:805:13 */ +type X__compar_fn_t = uintptr /* stdlib.h:808:13 */ -type Comparison_fn_t = X__compar_fn_t /* stdlib.h:808:23 */ -type X__compar_d_fn_t = uintptr /* stdlib.h:812:13 */ +type Comparison_fn_t = X__compar_fn_t /* stdlib.h:811:23 */ +type X__compar_d_fn_t = uintptr /* stdlib.h:815:13 */ // If this symbol has done its job, get rid of it. @@ -9376,11 +9546,6 @@ type X__compar_d_fn_t = uintptr /* stdlib.h:812:13 */ // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Offset of member MEMBER in a struct of type TYPE. @@ -9392,7 +9557,7 @@ type Max_align_t = struct { F__max_align_ll int64 F__max_align_ld float64 F__max_align_f128 X__float128 -} /* stddef.h:437:3 */ +} /* stddef.h:426:3 */ // Use a macro to replace memcpy() if compiled with SQLITE_INLINE_MEMCPY. // This allows better measurements of where memcpy() is used when running @@ -9570,7 +9735,7 @@ type BusyHandler = BusyHandler1 /* sqlite3.c:14788:28 */ type AggInfo1 = struct { FdirectMode U8 FuseSortingIdx U8 - _ [2]byte + F__ccgo_pad1 [2]byte FsortingIdx int32 FsortingIdxPTab int32 FnSortingColumn int32 @@ -9659,47 +9824,47 @@ type Bitvec1 = struct { type Bitvec = Bitvec1 /* sqlite3.c:14887:23 */ type CollSeq1 = struct { - FzName uintptr - Fenc U8 - _ [3]byte - FpUser uintptr - FxCmp uintptr - FxDel uintptr + FzName uintptr + Fenc U8 + F__ccgo_pad1 [3]byte + FpUser uintptr + FxCmp uintptr + FxDel uintptr } /* sqlite3.c:1331:9 */ type CollSeq = CollSeq1 /* sqlite3.c:14888:24 */ type Column1 = struct { - FzName uintptr - FpDflt uintptr - FzColl uintptr - FnotNull U8 - Faffinity int8 - FszEst U8 - FhName U8 - FcolFlags U16 - _ [2]byte + FzName uintptr + FpDflt uintptr + FzColl uintptr + FnotNull U8 + Faffinity int8 + FszEst U8 + FhName U8 + FcolFlags U16 + F__ccgo_pad1 [2]byte } /* sqlite3.c:1331:9 */ type Column = Column1 /* sqlite3.c:14889:23 */ type Cte1 = struct { - FzName uintptr - FpCols uintptr - FpSelect uintptr - FzCteErr uintptr - FpUse uintptr - FeM10d U8 - _ [3]byte + FzName uintptr + FpCols uintptr + FpSelect uintptr + FzCteErr uintptr + FpUse uintptr + FeM10d U8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:1331:9 */ type Cte = Cte1 /* sqlite3.c:14890:20 */ type CteUse1 = struct { - FnUse int32 - FaddrM9e int32 - FregRtn int32 - FiCur int32 - FnRowEst LogEst - FeM10d U8 - _ [1]byte + FnUse int32 + FaddrM9e int32 + FregRtn int32 + FiCur int32 + FnRowEst LogEst + FeM10d U8 + F__ccgo_pad1 [1]byte } /* sqlite3.c:1331:9 */ type CteUse = CteUse1 /* sqlite3.c:14891:23 */ @@ -9708,20 +9873,20 @@ type Db1 = struct { FpBt uintptr Fsafety_level U8 FbSyncSet U8 - _ [2]byte + F__ccgo_pad1 [2]byte FpSchema uintptr } /* sqlite3.c:1331:9 */ type Db = Db1 /* sqlite3.c:14892:19 */ type DbFixer1 = struct { - FpParse uintptr - Fw Walker - FpSchema uintptr - FbTemp U8 - _ [3]byte - FzDb uintptr - FzType uintptr - FpName uintptr + FpParse uintptr + Fw Walker + FpSchema uintptr + FbTemp U8 + F__ccgo_pad1 [3]byte + FzDb uintptr + FzType uintptr + FpName uintptr } /* sqlite3.c:14893:9 */ type DbFixer = DbFixer1 /* sqlite3.c:14893:24 */ @@ -9744,7 +9909,7 @@ type Expr1 = struct { Fop U8 FaffExpr int8 Fop2 U8 - _ [1]byte + F__ccgo_pad1 [1]byte Fflags U32 Fu struct{ FzToken uintptr } FpLeft uintptr @@ -9767,13 +9932,13 @@ type ExprList1 = struct { FnExpr int32 FnAlloc int32 Fa [1]struct { - FpExpr uintptr - FzEName uintptr - FsortFlags U8 - _ [3]byte - FeEName uint8 /* unsigned eEName: 2, unsigned done: 1, unsigned reusable: 1, unsigned bSorterRef: 1, unsigned bNulls: 1 */ - _ [3]byte - Fu struct { + FpExpr uintptr + FzEName uintptr + FsortFlags U8 + F__ccgo_pad1 [3]byte + FeEName uint8 /* unsigned eEName: 2, unsigned done: 1, unsigned reusable: 1, unsigned bSorterRef: 1, unsigned bNulls: 1 */ + F__ccgo_pad2 [3]byte + Fu struct { _ [0]uint32 Fx struct { FiOrderByCol U16 @@ -9785,17 +9950,17 @@ type ExprList1 = struct { type ExprList = ExprList1 /* sqlite3.c:14896:25 */ type FKey1 = struct { - FpFrom uintptr - FpNextFrom uintptr - FzTo uintptr - FpNextTo uintptr - FpPrevTo uintptr - FnCol int32 - FisDeferred U8 - FaAction [2]U8 - _ [1]byte - FapTrigger [2]uintptr - FaCol [1]struct { + FpFrom uintptr + FpNextFrom uintptr + FzTo uintptr + FpNextTo uintptr + FpPrevTo uintptr + FnCol int32 + FisDeferred U8 + FaAction [2]U8 + F__ccgo_pad1 [1]byte + FapTrigger [2]uintptr + FaCol [1]struct { FiFrom int32 FzCol uintptr } @@ -9810,17 +9975,17 @@ type FuncDestructor1 = struct { type FuncDestructor = FuncDestructor1 /* sqlite3.c:14898:31 */ type FuncDef1 = struct { - FnArg I8 - _ [3]byte - FfuncFlags U32 - FpUserData uintptr - FpNext uintptr - FxSFunc uintptr - FxFinalize uintptr - FxValue uintptr - FxInverse uintptr - FzName uintptr - Fu struct{ FpHash uintptr } + FnArg I8 + F__ccgo_pad1 [3]byte + FfuncFlags U32 + FpUserData uintptr + FpNext uintptr + FxSFunc uintptr + FxFinalize uintptr + FxValue uintptr + FxInverse uintptr + FzName uintptr + Fu struct{ FpHash uintptr } } /* sqlite3.c:1331:9 */ type FuncDef = FuncDef1 /* sqlite3.c:14899:24 */ @@ -9850,9 +10015,9 @@ type Index1 = struct { FnKeyCol U16 FnColumn U16 FonError U8 - _ [1]byte + F__ccgo_pad1 [1]byte FidxType uint16 /* unsigned idxType: 2, unsigned bUnordered: 1, unsigned uniqNotNull: 1, unsigned isResized: 1, unsigned isCovering: 1, unsigned noSkipScan: 1, unsigned hasStat1: 1, unsigned bNoQuery: 1, unsigned bAscKeyBug: 1, unsigned bHasVCol: 1 */ - _ [2]byte + F__ccgo_pad2 [2]byte FnSample int32 FnSampleCol int32 FaAvgEq uintptr @@ -9873,33 +10038,33 @@ type IndexSample1 = struct { type IndexSample = IndexSample1 /* sqlite3.c:14903:28 */ type KeyInfo1 = struct { - FnRef U32 - Fenc U8 - _ [1]byte - FnKeyField U16 - FnAllField U16 - _ [2]byte - Fdb uintptr - FaSortFlags uintptr - FaColl [1]uintptr + FnRef U32 + Fenc U8 + F__ccgo_pad1 [1]byte + FnKeyField U16 + FnAllField U16 + F__ccgo_pad2 [2]byte + Fdb uintptr + FaSortFlags uintptr + FaColl [1]uintptr } /* sqlite3.c:1331:9 */ type KeyInfo = KeyInfo1 /* sqlite3.c:14905:24 */ type Lookaside1 = struct { - FbDisable U32 - Fsz U16 - FszTrue U16 - FbMalloced U8 - _ [3]byte - FnSlot U32 - FanStat [3]U32 - FpInit uintptr - FpFree uintptr - FpSmallInit uintptr - FpSmallFree uintptr - FpMiddle uintptr - FpStart uintptr - FpEnd uintptr + FbDisable U32 + Fsz U16 + FszTrue U16 + FbMalloced U8 + F__ccgo_pad1 [3]byte + FnSlot U32 + FanStat [3]U32 + FpInit uintptr + FpFree uintptr + FpSmallInit uintptr + FpSmallFree uintptr + FpMiddle uintptr + FpStart uintptr + FpEnd uintptr } /* sqlite3.c:1331:9 */ type Lookaside = Lookaside1 /* sqlite3.c:14906:26 */ @@ -9943,7 +10108,7 @@ type Parse1 = struct { FokConstFactor U8 FdisableLookaside U8 FdisableVtab U8 - _ [2]byte + F__ccgo_pad1 [2]byte FnRangeReg int32 FiRangeReg int32 FnErr int32 @@ -9983,7 +10148,7 @@ type Parse1 = struct { FiPkSortOrder U8 Fexplain U8 FeParseMode U8 - _ [3]byte + F__ccgo_pad2 [3]byte FnVtabLock int32 FnHeight int32 FaddrExplain int32 @@ -10076,7 +10241,7 @@ type Savepoint1 = struct { type Savepoint = Savepoint1 /* sqlite3.c:14917:26 */ type Select1 = struct { Fop U8 - _ [1]byte + F__ccgo_pad1 [1]byte FnSelectRow LogEst FselFlags U32 FiLimit int32 @@ -10106,14 +10271,14 @@ type SQLiteThread1 = struct { type SQLiteThread = SQLiteThread1 /* sqlite3.c:14919:29 */ type SelectDest1 = struct { - FeDest U8 - _ [3]byte - FiSDParm int32 - FiSDParm2 int32 - FiSdst int32 - FnSdst int32 - FzAffSdst uintptr - FpOrderBy uintptr + FeDest U8 + F__ccgo_pad1 [3]byte + FiSDParm int32 + FiSDParm2 int32 + FiSdst int32 + FnSdst int32 + FzAffSdst uintptr + FpOrderBy uintptr } /* sqlite3.c:14920:9 */ type SelectDest = SelectDest1 /* sqlite3.c:14920:27 */ @@ -10128,11 +10293,11 @@ type SrcItem1 = struct { FregReturn int32 FregResult int32 Ffg struct { - _ [0]uint32 - Fjointype U8 - _ [3]byte - FnotIndexed uint16 /* unsigned notIndexed: 1, unsigned isIndexedBy: 1, unsigned isTabFunc: 1, unsigned isCorrelated: 1, unsigned viaCoroutine: 1, unsigned isRecursive: 1, unsigned fromDDL: 1, unsigned isCte: 1, unsigned notCte: 1 */ - _ [2]byte + F__ccgo_pad1 [0]uint32 + Fjointype U8 + F__ccgo_pad2 [3]byte + FnotIndexed uint16 /* unsigned notIndexed: 1, unsigned isIndexedBy: 1, unsigned isTabFunc: 1, unsigned isCorrelated: 1, unsigned viaCoroutine: 1, unsigned isRecursive: 1, unsigned fromDDL: 1, unsigned isCte: 1, unsigned notCte: 1 */ + F__ccgo_pad3 [2]byte } FiCursor int32 FpOn uintptr @@ -10168,7 +10333,7 @@ type Table1 = struct { FnRowLogEst LogEst FszTabRow LogEst FkeyConf U8 - _ [1]byte + F__ccgo_pad1 [1]byte FaddColOffset int32 FnModuleArg int32 FazModuleArg uintptr @@ -10183,7 +10348,7 @@ type TableLock1 = struct { FiDb int32 FiTab Pgno FisWriteLock U8 - _ [3]byte + F__ccgo_pad1 [3]byte FzLockName uintptr } /* sqlite3.c:1331:9 */ @@ -10195,18 +10360,18 @@ type Token1 = struct { type Token = Token1 /* sqlite3.c:14926:22 */ type Trigger1 = struct { - FzName uintptr - Ftable uintptr - Fop U8 - Ftr_tm U8 - FbReturning U8 - _ [1]byte - FpWhen uintptr - FpColumns uintptr - FpSchema uintptr - FpTabSchema uintptr - Fstep_list uintptr - FpNext uintptr + FzName uintptr + Ftable uintptr + Fop U8 + Ftr_tm U8 + FbReturning U8 + F__ccgo_pad1 [1]byte + FpWhen uintptr + FpColumns uintptr + FpSchema uintptr + FpTabSchema uintptr + Fstep_list uintptr + FpNext uintptr } /* sqlite3.c:1331:9 */ type Trigger = Trigger1 /* sqlite3.c:14928:24 */ @@ -10220,33 +10385,33 @@ type TriggerPrg1 = struct { type TriggerPrg = TriggerPrg1 /* sqlite3.c:14929:27 */ type TriggerStep1 = struct { - Fop U8 - Forconf U8 - _ [2]byte - FpTrig uintptr - FpSelect uintptr - FzTarget uintptr - FpFrom uintptr - FpWhere uintptr - FpExprList uintptr - FpIdList uintptr - FpUpsert uintptr - FzSpan uintptr - FpNext uintptr - FpLast uintptr + Fop U8 + Forconf U8 + F__ccgo_pad1 [2]byte + FpTrig uintptr + FpSelect uintptr + FzTarget uintptr + FpFrom uintptr + FpWhere uintptr + FpExprList uintptr + FpIdList uintptr + FpUpsert uintptr + FzSpan uintptr + FpNext uintptr + FpLast uintptr } /* sqlite3.c:1331:9 */ type TriggerStep = TriggerStep1 /* sqlite3.c:14930:28 */ type UnpackedRecord1 = struct { - FpKeyInfo uintptr - FaMem uintptr - FnField U16 - Fdefault_rc I8 - FerrCode U8 - Fr1 I8 - Fr2 I8 - FeqSeen U8 - _ [1]byte + FpKeyInfo uintptr + FaMem uintptr + FnField U16 + Fdefault_rc I8 + FerrCode U8 + Fr1 I8 + Fr2 I8 + FeqSeen U8 + F__ccgo_pad1 [1]byte } /* sqlite3.c:1331:9 */ type UnpackedRecord = UnpackedRecord1 /* sqlite3.c:14931:31 */ @@ -10257,7 +10422,7 @@ type Upsert1 = struct { FpUpsertWhere uintptr FpNextUpsert uintptr FisDoUpdate U8 - _ [3]byte + F__ccgo_pad1 [3]byte FpToFree uintptr FpUpsertIdx uintptr FpUpsertSrc uintptr @@ -10274,7 +10439,7 @@ type VTable1 = struct { FnRef int32 FbConstraint U8 FeVtabRisk U8 - _ [2]byte + F__ccgo_pad1 [2]byte FiSavepoint int32 FpNext uintptr } /* sqlite3.c:1331:9 */ @@ -10295,7 +10460,7 @@ type Walker1 = struct { FxSelectCallback2 uintptr FwalkerDepth int32 FeCode U16 - _ [2]byte + F__ccgo_pad1 [2]byte Fu struct{ FpNC uintptr } } /* sqlite3.c:14893:9 */ @@ -10317,7 +10482,7 @@ type WhereInfo1 = struct { FeOnePass U8 FeDistinct U8 FbDeferredSeek uint8 /* unsigned bDeferredSeek: 1, unsigned untestedTerms: 1, unsigned bOrderedInnerLoop: 1, unsigned sorted: 1 */ - _ [1]byte + F__ccgo_pad1 [1]byte FnRowOut LogEst FiTop int32 FiEndWhere int32 @@ -10340,7 +10505,7 @@ type Window1 = struct { FeEnd U8 FbImplicitFrame U8 FeExclude U8 - _ [3]byte + F__ccgo_pad1 [3]byte FpStart uintptr FpEnd uintptr FppThis uintptr @@ -10360,7 +10525,7 @@ type Window1 = struct { FregStartRowid int32 FregEndRowid int32 FbExprArgs U8 - _ [3]byte + F__ccgo_pad2 [3]byte } /* sqlite3.c:1331:9 */ type Window = Window1 /* sqlite3.c:14937:23 */ @@ -10592,7 +10757,7 @@ type BtCursor1 = struct { FcurIntKey U8 Fix U16 FaiIdx [19]U16 - _ [2]byte + F__ccgo_pad1 [2]byte FpKeyInfo uintptr FpPage uintptr FapPage [19]uintptr @@ -10611,13 +10776,13 @@ type BtShared1 = struct { FinTransaction U8 Fmax1bytePayload U8 FnReserveWanted U8 - _ [1]byte + F__ccgo_pad1 [1]byte FbtsFlags U16 FmaxLocal U16 FminLocal U16 FmaxLeaf U16 FminLeaf U16 - _ [2]byte + F__ccgo_pad2 [2]byte FpageSize U32 FusableSize U32 FnTransaction int32 @@ -10636,14 +10801,14 @@ type BtShared1 = struct { type BtShared = BtShared1 /* sqlite3.c:15269:25 */ type BtreePayload1 = struct { - FpKey uintptr - FnKey Sqlite3_int64 - FpData uintptr - FaMem uintptr - FnMem U16 - _ [2]byte - FnData int32 - FnZero int32 + FpKey uintptr + FnKey Sqlite3_int64 + FpData uintptr + FaMem uintptr + FnMem U16 + F__ccgo_pad1 [2]byte + FnData int32 + FnZero int32 } /* sqlite3.c:15270:9 */ type BtreePayload = BtreePayload1 /* sqlite3.c:15270:29 */ @@ -10678,7 +10843,7 @@ type Vdbe1 = struct { FpNext uintptr FpParse uintptr FnVar YnVar - _ [2]byte + F__ccgo_pad1 [2]byte FiVdbeMagic U32 FnMem int32 FnCursor int32 @@ -10708,9 +10873,9 @@ type Vdbe1 = struct { FminWriteFileFormat U8 FprepFlags U8 FdoingRerun U8 - _ [2]byte + F__ccgo_pad2 [2]byte Fexpired uint16 /* bft expired: 2, bft explain: 2, bft changeCntOn: 1, bft runOnlyOnce: 1, bft usesStmtJournal: 1, bft readOnly: 1, bft bIsReader: 1 */ - _ [2]byte + F__ccgo_pad3 [2]byte FbtreeMask YDbMask FlockMask YDbMask FaCounter [7]U32 @@ -10863,20 +11028,20 @@ type RecordCompare = uintptr /* sqlite3.c:16156:13 */ type PgHdr = PgHdr2 /* sqlite3.c:16289:22 */ type PCache2 = struct { - FpDirty uintptr - FpDirtyTail uintptr - FpSynced uintptr - FnRefSum int32 - FszCache int32 - FszSpill int32 - FszPage int32 - FszExtra int32 - FbPurgeable U8 - FeCreate U8 - _ [2]byte - FxStress uintptr - FpStress uintptr - FpCache uintptr + FpDirty uintptr + FpDirtyTail uintptr + FpSynced uintptr + FnRefSum int32 + FszCache int32 + FszSpill int32 + FszPage int32 + FszExtra int32 + FbPurgeable U8 + FeCreate U8 + F__ccgo_pad1 [2]byte + FxStress uintptr + FpStress uintptr + FpCache uintptr } /* sqlite3.c:1331:9 */ type PCache = PCache2 /* sqlite3.c:16290:23 */ @@ -10895,9 +11060,9 @@ type sqlite3InitInfo = struct { FnewTnum Pgno FiDb U8 Fbusy U8 - _ [2]byte + F__ccgo_pad1 [2]byte ForphanTrigger uint8 /* unsigned orphanTrigger: 1, unsigned imposterTable: 1, unsigned reopenMemdb: 1 */ - _ [3]byte + F__ccgo_pad2 [3]byte FazInit uintptr } /* sqlite3.c:1331:9 */ @@ -11057,13 +11222,13 @@ type YnVar = I16 /* sqlite3.c:18212:13 */ // ENAME_SPAN Text of the original result set // expression. type ExprList_item = struct { - FpExpr uintptr - FzEName uintptr - FsortFlags U8 - _ [3]byte - FeEName uint8 /* unsigned eEName: 2, unsigned done: 1, unsigned reusable: 1, unsigned bSorterRef: 1, unsigned bNulls: 1 */ - _ [3]byte - Fu struct { + FpExpr uintptr + FzEName uintptr + FsortFlags U8 + F__ccgo_pad1 [3]byte + FeEName uint8 /* unsigned eEName: 2, unsigned done: 1, unsigned reusable: 1, unsigned bSorterRef: 1, unsigned bNulls: 1 */ + F__ccgo_pad2 [3]byte + Fu struct { _ [0]uint32 Fx struct { FiOrderByCol U16 @@ -11129,7 +11294,7 @@ type Sqlite3Config = struct { FbUseCis U8 FbSmallMalloc U8 FbExtraSchemaChecks U8 - _ [2]byte + F__ccgo_pad1 [2]byte FmxStrlen int32 FneverCorrupt int32 FszLookaside int32 @@ -11536,7 +11701,7 @@ var Xsqlite3WhereTrace U32 = U32(0) /* sqlite3.c:21129:20 */ var Xsqlite3OpcodeProperty = [180]uint8{ /* 0 */ uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x01), uint8(0x01), uint8(0x01), uint8(0x00), uint8(0x10) /* 8 */, uint8(0x00), uint8(0x01), uint8(0x00), uint8(0x01), uint8(0x01), uint8(0x01), uint8(0x03), uint8(0x03) /* 16 */, uint8(0x01), uint8(0x01), uint8(0x03), uint8(0x12), uint8(0x03), uint8(0x01), uint8(0x09), uint8(0x09) /* 24 */, uint8(0x09), uint8(0x09), uint8(0x01), uint8(0x09), uint8(0x09), uint8(0x09), uint8(0x09), uint8(0x09) /* 32 */, uint8(0x09), uint8(0x01), uint8(0x01), uint8(0x01), uint8(0x01), uint8(0x01), uint8(0x01), uint8(0x01) /* 40 */, uint8(0x01), uint8(0x01), uint8(0x23), uint8(0x26), uint8(0x26), uint8(0x0b), uint8(0x01), uint8(0x01) /* 48 */, uint8(0x03), uint8(0x03), uint8(0x03), uint8(0x03), uint8(0x0b), uint8(0x0b), uint8(0x0b), uint8(0x0b) /* 56 */, uint8(0x0b), uint8(0x0b), uint8(0x01), uint8(0x03), uint8(0x01), uint8(0x01), uint8(0x01), uint8(0x00) /* 64 */, uint8(0x00), uint8(0x02), uint8(0x02), uint8(0x08), uint8(0x00), uint8(0x10), uint8(0x10), uint8(0x10) /* 72 */, uint8(0x10), uint8(0x00), uint8(0x10), uint8(0x10), uint8(0x00), uint8(0x00), uint8(0x10), uint8(0x10) /* 80 */, uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x02), uint8(0x02), uint8(0x02), uint8(0x00), uint8(0x00) /* 88 */, uint8(0x12), uint8(0x1e), uint8(0x20), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x10), uint8(0x10) /* 96 */, uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x26), uint8(0x26) /* 104 */, uint8(0x26), uint8(0x26), uint8(0x26), uint8(0x26), uint8(0x26), uint8(0x26), uint8(0x26), uint8(0x26) /* 112 */, uint8(0x00), uint8(0x12), uint8(0x00), uint8(0x00), uint8(0x10), uint8(0x00), uint8(0x00), uint8(0x00) /* 120 */, uint8(0x00), uint8(0x00), uint8(0x10), uint8(0x10), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00) /* 128 */, uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x10), uint8(0x00), uint8(0x00), uint8(0x04), uint8(0x04) /* 136 */, uint8(0x00), uint8(0x00), uint8(0x10), uint8(0x00), uint8(0x10), uint8(0x00), uint8(0x00), uint8(0x10) /* 144 */, uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x06) /* 152 */, uint8(0x10), uint8(0x10), uint8(0x00), uint8(0x04), uint8(0x1a), uint8(0x00), uint8(0x00), uint8(0x00) /* 160 */, uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00) /* 168 */, uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x10), uint8(0x10), uint8(0x00), uint8(0x00) /* 176 */, uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00)} /* sqlite3.c:21138:36 */ // Name of the default collating sequence -var Xsqlite3StrBINARY = *(*[7]int8)(unsafe.Pointer(ts + 318 /* "BINARY" */)) /* sqlite3.c:21143:27 */ +var Xsqlite3StrBINARY = *(*[7]int8)(unsafe.Pointer(ts + 328 /* "BINARY" */)) /* sqlite3.c:21143:27 */ //************* End of global.c ********************************************* //************* Begin file status.c ***************************************** @@ -11605,7 +11770,7 @@ type VdbeSorter1 = struct { FiPrev U8 FnTask U8 FtypeMask U8 - _ [3]byte + F__ccgo_pad1 [3]byte FaTask [1]SortSubtask } /* sqlite3.c:21218:9 */ @@ -11640,9 +11805,9 @@ type VdbeCursor1 = struct { FnullRow U8 FdeferredMoveto U8 FisTable U8 - _ [3]byte + F__ccgo_pad1 [3]byte FisEphemeral uint8 /* Bool isEphemeral: 1, Bool useRandomRowid: 1, Bool isOrdered: 1, Bool hasBeenDuped: 1 */ - _ [1]byte + F__ccgo_pad2 [1]byte FseekHit U16 FpBtx uintptr FseqCount I64 @@ -11763,7 +11928,7 @@ type ScanStatus1 = struct { FaddrVisit int32 FiSelectID int32 FnEst LogEst - _ [2]byte + F__ccgo_pad1 [2]byte FzName uintptr } /* sqlite3.c:21514:9 */ @@ -12022,7 +12187,7 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p if pSchema != uintptr(0) { var p uintptr - *(*int32)(unsafe.Pointer(bp /* nByte */)) += int32((uint32((*(*func(*libc.TLS, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 16 /* &.xRoundup */))))(tls, int32(unsafe.Sizeof(HashElem{})))) * ((((*Schema)(unsafe.Pointer(pSchema)).FtblHash.Fcount + + *(*int32)(unsafe.Pointer(bp /* nByte */)) += int32((uint32((*struct{ f func(*libc.TLS, int32) int32 })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxRoundup})).f(tls, int32(unsafe.Sizeof(HashElem{})))) * ((((*Schema)(unsafe.Pointer(pSchema)).FtblHash.Fcount + (*Schema)(unsafe.Pointer(pSchema)).FtrigHash.Fcount) + (*Schema)(unsafe.Pointer(pSchema)).FidxHash.Fcount) + (*Schema)(unsafe.Pointer(pSchema)).FfkeyHash.Fcount))) @@ -12168,7 +12333,7 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // #include "sqliteInt.h" // #include // #include -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -12183,11 +12348,11 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.23 Date and time -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -12202,9 +12367,9 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -12236,15 +12401,6 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -12281,11 +12437,6 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Offset of member MEMBER in a struct of type TYPE. @@ -12293,7 +12444,7 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // This defines CLOCKS_PER_SEC, which is the number of processor clock // ticks per second, and possibly a number of other constants. // System-dependent timing definitions. Linux version. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -12308,12 +12459,12 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -12328,7 +12479,7 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -12353,7 +12504,7 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // Flag to indicate time is absolute. -// Copyright (C) 1995-2018 Free Software Foundation, Inc. +// Copyright (C) 1995-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -12368,10 +12519,10 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -12386,7 +12537,7 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -12433,7 +12584,7 @@ type timex = struct { // may also need to be defined by other headers. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -12448,7 +12599,7 @@ type timex = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -12470,7 +12621,7 @@ type tm = struct { // NB: Include guard matches what uses. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -12485,7 +12636,7 @@ type tm = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -12509,22 +12660,22 @@ type itimerspec = struct { // A structure for holding a single date and time. type DateTime1 = struct { - FiJD Sqlite3_int64 - FY int32 - FM int32 - FD int32 - Fh int32 - Fm int32 - Ftz int32 - Fs float64 - FvalidJD int8 - FrawS int8 - FvalidYMD int8 - FvalidHMS int8 - FvalidTZ int8 - FtzSet int8 - FisError int8 - _ [1]byte + FiJD Sqlite3_int64 + FY int32 + FM int32 + FD int32 + Fh int32 + Fm int32 + Ftz int32 + Fs float64 + FvalidJD int8 + FrawS int8 + FvalidYMD int8 + FvalidHMS int8 + FvalidTZ int8 + FtzSet int8 + FisError int8 + F__ccgo_pad1 [1]byte } /* sqlite3.c:22238:9 */ // The MSVC CRT on Windows CE may not have a localtime() function. @@ -12680,7 +12831,7 @@ __6: __4: ; zDate++ - if !(getDigits(tls, zDate, ts+325 /* "20b:20e" */, libc.VaList(bp, bp+16 /* &nHr */, bp+20 /* &nMn */)) != 2) { + if !(getDigits(tls, zDate, ts+335 /* "20b:20e" */, libc.VaList(bp, bp+16 /* &nHr */, bp+20 /* &nMn */)) != 2) { goto __9 } return 1 @@ -12717,13 +12868,13 @@ func parseHhMmSs(tls *libc.TLS, zDate uintptr, p uintptr) int32 { /* sqlite3.c:2 // var s int32 at bp+32, 4 var ms float64 = 0.0 - if getDigits(tls, zDate, ts+333 /* "20c:20e" */, libc.VaList(bp, bp+24 /* &h */, bp+28 /* &m */)) != 2 { + if getDigits(tls, zDate, ts+343 /* "20c:20e" */, libc.VaList(bp, bp+24 /* &h */, bp+28 /* &m */)) != 2 { return 1 } zDate += uintptr(5) if int32(*(*int8)(unsafe.Pointer(zDate))) == ':' { zDate++ - if getDigits(tls, zDate, ts+341 /* "20e" */, libc.VaList(bp+16, bp+32 /* &s */)) != 1 { + if getDigits(tls, zDate, ts+351 /* "20e" */, libc.VaList(bp+16, bp+32 /* &s */)) != 1 { return 1 } zDate += uintptr(2) @@ -12801,10 +12952,10 @@ func computeJD(tls *libc.TLS, p uintptr) { /* sqlite3.c:22423:13: */ B = ((2 - A) + (A / 4)) X1 = ((36525 * (Y + 4716)) / 100) X2 = ((306001 * (M + 1)) / 10000) - (*DateTime)(unsafe.Pointer(p)).FiJD = (Sqlite3_int64(((float64(((X1 + X2) + D) + B)) - 1524.5) * float64(86400000))) + (*DateTime)(unsafe.Pointer(p)).FiJD = (libc.Int64FromFloat64(((float64(((X1 + X2) + D) + B)) - 1524.5) * float64(86400000))) (*DateTime)(unsafe.Pointer(p)).FvalidJD = int8(1) if (*DateTime)(unsafe.Pointer(p)).FvalidHMS != 0 { - *(*Sqlite3_int64)(unsafe.Pointer(p /* &.iJD */)) += ((Sqlite3_int64(((*DateTime)(unsafe.Pointer(p)).Fh * 3600000) + ((*DateTime)(unsafe.Pointer(p)).Fm * 60000))) + (Sqlite3_int64((*DateTime)(unsafe.Pointer(p)).Fs * float64(1000)))) + *(*Sqlite3_int64)(unsafe.Pointer(p /* &.iJD */)) += ((Sqlite3_int64(((*DateTime)(unsafe.Pointer(p)).Fh * 3600000) + ((*DateTime)(unsafe.Pointer(p)).Fm * 60000))) + (libc.Int64FromFloat64((*DateTime)(unsafe.Pointer(p)).Fs * float64(1000)))) if (*DateTime)(unsafe.Pointer(p)).FvalidTZ != 0 { *(*Sqlite3_int64)(unsafe.Pointer(p /* &.iJD */)) -= (Sqlite3_int64((*DateTime)(unsafe.Pointer(p)).Ftz * 60000)) (*DateTime)(unsafe.Pointer(p)).FvalidYMD = int8(0) @@ -12842,7 +12993,7 @@ func parseYyyyMmDd(tls *libc.TLS, zDate uintptr, p uintptr) int32 { /* sqlite3.c } else { neg = 0 } - if getDigits(tls, zDate, ts+345 /* "40f-21a-21d" */, libc.VaList(bp, bp+24 /* &Y */, bp+28 /* &M */, bp+32 /* &D */)) != 3 { + if getDigits(tls, zDate, ts+355 /* "40f-21a-21d" */, libc.VaList(bp, bp+24 /* &Y */, bp+28 /* &M */, bp+32 /* &D */)) != 3 { return 1 } zDate += uintptr(10) @@ -12894,7 +13045,7 @@ func setRawDateNumber(tls *libc.TLS, p uintptr, r float64) { /* sqlite3.c:22526: (*DateTime)(unsafe.Pointer(p)).Fs = r (*DateTime)(unsafe.Pointer(p)).FrawS = int8(1) if (r >= 0.0) && (r < 5373484.5) { - (*DateTime)(unsafe.Pointer(p)).FiJD = (Sqlite3_int64((r * 86400000.0) + 0.5)) + (*DateTime)(unsafe.Pointer(p)).FiJD = (libc.Int64FromFloat64((r * 86400000.0) + 0.5)) (*DateTime)(unsafe.Pointer(p)).FvalidJD = int8(1) } } @@ -12923,7 +13074,7 @@ func parseDateOrTime(tls *libc.TLS, context uintptr, zDate uintptr, p uintptr) i return 0 } else if parseHhMmSs(tls, zDate, p) == 0 { return 0 - } else if (Xsqlite3StrICmp(tls, zDate, ts+357 /* "now" */) == 0) && (Xsqlite3NotPureFunc(tls, context) != 0) { + } else if (Xsqlite3StrICmp(tls, zDate, ts+367 /* "now" */) == 0) && (Xsqlite3NotPureFunc(tls, context) != 0) { return setDateTimeToCurrent(tls, context, p) } else if Xsqlite3AtoF(tls, zDate, bp /* &r */, Xsqlite3Strlen30(tls, zDate), uint8(SQLITE_UTF8)) > 0 { setRawDateNumber(tls, p, *(*float64)(unsafe.Pointer(bp /* r */))) @@ -12967,13 +13118,13 @@ func computeYMD(tls *libc.TLS, p uintptr) { /* sqlite3.c:22591:13: */ return } else { Z = (int32(((*DateTime)(unsafe.Pointer(p)).FiJD + int64(43200000)) / int64(86400000))) - A = (int32((float64(Z) - 1867216.25) / 36524.25)) + A = (libc.Int32FromFloat64((float64(Z) - 1867216.25) / 36524.25)) A = (((Z + 1) + A) - (A / 4)) B = (A + 1524) - C = (int32((float64(B) - 122.1) / 365.25)) + C = (libc.Int32FromFloat64((float64(B) - 122.1) / 365.25)) D = ((36525 * (C & 32767)) / 100) - E = (int32((float64(B - D)) / 30.6001)) - X1 = (int32(30.6001 * float64(E))) + E = (libc.Int32FromFloat64((float64(B - D)) / 30.6001)) + X1 = (libc.Int32FromFloat64(30.6001 * float64(E))) (*DateTime)(unsafe.Pointer(p)).FD = ((B - D) - X1) (*DateTime)(unsafe.Pointer(p)).FM = func() int32 { if E < 14 { @@ -13000,7 +13151,7 @@ func computeHMS(tls *libc.TLS, p uintptr) { /* sqlite3.c:22620:13: */ computeJD(tls, p) s = (int32(((*DateTime)(unsafe.Pointer(p)).FiJD + int64(43200000)) % int64(86400000))) (*DateTime)(unsafe.Pointer(p)).Fs = (float64(s) / 1000.0) - s = int32((*DateTime)(unsafe.Pointer(p)).Fs) + s = libc.Int32FromFloat64((*DateTime)(unsafe.Pointer(p)).Fs) *(*float64)(unsafe.Pointer(p + 32 /* &.s */)) -= (float64(s)) (*DateTime)(unsafe.Pointer(p)).Fh = (s / 3600) s = s - ((*DateTime)(unsafe.Pointer(p)).Fh * 3600) @@ -13097,7 +13248,7 @@ func localtimeOffset(tls *libc.TLS, p uintptr, pCtx uintptr, pRc uintptr) Sqlite (*DateTime)(unsafe.Pointer(bp + 44 /* &x */)).Fm = 0 (*DateTime)(unsafe.Pointer(bp + 44 /* &x */)).Fs = 0.0 } else { - var s int32 = (int32((*DateTime)(unsafe.Pointer(bp+44 /* &x */)).Fs + 0.5)) + var s int32 = (libc.Int32FromFloat64((*DateTime)(unsafe.Pointer(bp+44 /* &x */)).Fs + 0.5)) (*DateTime)(unsafe.Pointer(bp + 44 /* &x */)).Fs = float64(s) } (*DateTime)(unsafe.Pointer(bp + 44 /* &x */)).Ftz = 0 @@ -13105,7 +13256,7 @@ func localtimeOffset(tls *libc.TLS, p uintptr, pCtx uintptr, pRc uintptr) Sqlite computeJD(tls, bp+44 /* &x */) *(*Time_t)(unsafe.Pointer(bp + 92 /* t */)) = (Time_t(((*DateTime)(unsafe.Pointer(bp+44 /* &x */)).FiJD / int64(1000)) - (int64(21086676) * int64(10000)))) if osLocaltime(tls, bp+92 /* &t */, bp /* &sLocal */) != 0 { - Xsqlite3_result_error(tls, pCtx, ts+361 /* "local time unava..." */, -1) + Xsqlite3_result_error(tls, pCtx, ts+371 /* "local time unava..." */, -1) *(*int32)(unsafe.Pointer(pRc)) = SQLITE_ERROR return int64(0) } @@ -13133,19 +13284,19 @@ func localtimeOffset(tls *libc.TLS, p uintptr, pCtx uintptr, pRc uintptr) Sqlite // Where NNN is an arbitrary floating-point number and "days" can be one // of several units of time. var aXformType = [6]struct { - FeType U8 - FnName U8 - _ [2]byte - FzName uintptr - FrLimit float64 - FrXform float64 + FeType U8 + FnName U8 + F__ccgo_pad1 [2]byte + FzName uintptr + FrLimit float64 + FrXform float64 }{ - {FnName: U8(6), FzName: ts + 384 /* "second" */, FrLimit: 464269060800.0, FrXform: 1000.0}, - {FnName: U8(6), FzName: ts + 391 /* "minute" */, FrLimit: 7737817680.0, FrXform: 60000.0}, - {FnName: U8(4), FzName: ts + 398 /* "hour" */, FrLimit: 128963628.0, FrXform: 3600000.0}, - {FnName: U8(3), FzName: ts + 403 /* "day" */, FrLimit: 5373485.0, FrXform: 86400000.0}, - {FeType: U8(1), FnName: U8(5), FzName: ts + 407 /* "month" */, FrLimit: 176546.0, FrXform: 2592000000.0}, - {FeType: U8(2), FnName: U8(4), FzName: ts + 413 /* "year" */, FrLimit: 14713.0, FrXform: 31536000000.0}, + {FnName: U8(6), FzName: ts + 394 /* "second" */, FrLimit: 464269060800.0, FrXform: 1000.0}, + {FnName: U8(6), FzName: ts + 401 /* "minute" */, FrLimit: 7737817680.0, FrXform: 60000.0}, + {FnName: U8(4), FzName: ts + 408 /* "hour" */, FrLimit: 128963628.0, FrXform: 3600000.0}, + {FnName: U8(3), FzName: ts + 413 /* "day" */, FrLimit: 5373485.0, FrXform: 86400000.0}, + {FeType: U8(1), FnName: U8(5), FzName: ts + 417 /* "month" */, FrLimit: 176546.0, FrXform: 2592000000.0}, + {FeType: U8(2), FnName: U8(4), FzName: ts + 423 /* "year" */, FrLimit: 14713.0, FrXform: 31536000000.0}, } /* sqlite3.c:22795:3 */ // Process a modifier to a date-time stamp. The modifiers are @@ -13184,7 +13335,7 @@ func parseModifier(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, p uintptr) i // // Assuming the current time value is UTC (a.k.a. GMT), shift it to // show local time. - if (Xsqlite3_stricmp(tls, z, ts+418 /* "localtime" */) == 0) && (Xsqlite3NotPureFunc(tls, pCtx) != 0) { + if (Xsqlite3_stricmp(tls, z, ts+428 /* "localtime" */) == 0) && (Xsqlite3NotPureFunc(tls, pCtx) != 0) { computeJD(tls, p) *(*Sqlite3_int64)(unsafe.Pointer(p /* &.iJD */)) += (localtimeOffset(tls, p, pCtx, bp /* &rc */)) clearYMD_HMS_TZ(tls, p) @@ -13198,16 +13349,16 @@ func parseModifier(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, p uintptr) i // // Treat the current value of p->s as the number of // seconds since 1970. Convert to a real julian day number. - if (Xsqlite3_stricmp(tls, z, ts+428 /* "unixepoch" */) == 0) && ((*DateTime)(unsafe.Pointer(p)).FrawS != 0) { + if (Xsqlite3_stricmp(tls, z, ts+438 /* "unixepoch" */) == 0) && ((*DateTime)(unsafe.Pointer(p)).FrawS != 0) { *(*float64)(unsafe.Pointer(bp + 4 /* r */)) = (((*DateTime)(unsafe.Pointer(p)).Fs * 1000.0) + 210866760000000.0) if (*(*float64)(unsafe.Pointer(bp + 4 /* r */)) >= 0.0) && (*(*float64)(unsafe.Pointer(bp + 4 /* r */)) < 464269060800000.0) { clearYMD_HMS_TZ(tls, p) - (*DateTime)(unsafe.Pointer(p)).FiJD = (Sqlite3_int64(*(*float64)(unsafe.Pointer(bp + 4 /* r */)) + 0.5)) + (*DateTime)(unsafe.Pointer(p)).FiJD = (libc.Int64FromFloat64(*(*float64)(unsafe.Pointer(bp + 4 /* r */)) + 0.5)) (*DateTime)(unsafe.Pointer(p)).FvalidJD = int8(1) (*DateTime)(unsafe.Pointer(p)).FrawS = int8(0) *(*int32)(unsafe.Pointer(bp /* rc */)) = 0 } - } else if (Xsqlite3_stricmp(tls, z, ts+438 /* "utc" */) == 0) && (Xsqlite3NotPureFunc(tls, pCtx) != 0) { + } else if (Xsqlite3_stricmp(tls, z, ts+448 /* "utc" */) == 0) && (Xsqlite3NotPureFunc(tls, pCtx) != 0) { if int32((*DateTime)(unsafe.Pointer(p)).FtzSet) == 0 { var c1 Sqlite3_int64 computeJD(tls, p) @@ -13232,7 +13383,7 @@ func parseModifier(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, p uintptr) i // Move the date to the same time on the next occurrence of // weekday N where 0==Sunday, 1==Monday, and so forth. If the // date is already on the appropriate weekday, this is a no-op. - if ((((Xsqlite3_strnicmp(tls, z, ts+442 /* "weekday " */, 8) == 0) && + if ((((Xsqlite3_strnicmp(tls, z, ts+452 /* "weekday " */, 8) == 0) && (Xsqlite3AtoF(tls, (z+8), bp+4 /* &r */, Xsqlite3Strlen30(tls, (z+8)), uint8(SQLITE_UTF8)) > 0)) && ((float64(libc.AssignInt32(&n, int32(*(*float64)(unsafe.Pointer(bp + 4 /* r */)))))) == *(*float64)(unsafe.Pointer(bp + 4 /* r */)))) && (n >= 0)) && (*(*float64)(unsafe.Pointer(bp + 4 /* r */)) < float64(7)) { var Z Sqlite3_int64 @@ -13257,7 +13408,7 @@ func parseModifier(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, p uintptr) i // // Move the date backwards to the beginning of the current day, // or month or year. - if Xsqlite3_strnicmp(tls, z, ts+451 /* "start of " */, 9) != 0 { + if Xsqlite3_strnicmp(tls, z, ts+461 /* "start of " */, 9) != 0 { break } if (!(int32((*DateTime)(unsafe.Pointer(p)).FvalidJD) != 0) && !(int32((*DateTime)(unsafe.Pointer(p)).FvalidYMD) != 0)) && !(int32((*DateTime)(unsafe.Pointer(p)).FvalidHMS) != 0) { @@ -13271,14 +13422,14 @@ func parseModifier(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, p uintptr) i (*DateTime)(unsafe.Pointer(p)).FrawS = int8(0) (*DateTime)(unsafe.Pointer(p)).FvalidTZ = int8(0) (*DateTime)(unsafe.Pointer(p)).FvalidJD = int8(0) - if Xsqlite3_stricmp(tls, z, ts+407 /* "month" */) == 0 { + if Xsqlite3_stricmp(tls, z, ts+417 /* "month" */) == 0 { (*DateTime)(unsafe.Pointer(p)).FD = 1 *(*int32)(unsafe.Pointer(bp /* rc */)) = 0 - } else if Xsqlite3_stricmp(tls, z, ts+413 /* "year" */) == 0 { + } else if Xsqlite3_stricmp(tls, z, ts+423 /* "year" */) == 0 { (*DateTime)(unsafe.Pointer(p)).FM = 1 (*DateTime)(unsafe.Pointer(p)).FD = 1 *(*int32)(unsafe.Pointer(bp /* rc */)) = 0 - } else if Xsqlite3_stricmp(tls, z, ts+403 /* "day" */) == 0 { + } else if Xsqlite3_stricmp(tls, z, ts+413 /* "day" */) == 0 { *(*int32)(unsafe.Pointer(bp /* rc */)) = 0 } break @@ -13367,12 +13518,12 @@ func parseModifier(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, p uintptr) i rRounder = +0.5 } for i = 0; i < (int32(uint32(unsafe.Sizeof(aXformType)) / uint32(unsafe.Sizeof(struct { - FeType U8 - FnName U8 - _ [2]byte - FzName uintptr - FrLimit float64 - FrXform float64 + FeType U8 + FnName U8 + F__ccgo_pad1 [2]byte + FzName uintptr + FrLimit float64 + FrXform float64 }{})))); i++ { if (((int32(aXformType[i].FnName) == n) && (Xsqlite3_strnicmp(tls, aXformType[i].FzName, z, n) == 0)) && @@ -13408,7 +13559,7 @@ func parseModifier(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, p uintptr) i } } computeJD(tls, p) - *(*Sqlite3_int64)(unsafe.Pointer(p /* &.iJD */)) += (Sqlite3_int64((*(*float64)(unsafe.Pointer(bp + 4 /* r */)) * aXformType[i].FrXform) + rRounder)) + *(*Sqlite3_int64)(unsafe.Pointer(p /* &.iJD */)) += (libc.Int64FromFloat64((*(*float64)(unsafe.Pointer(bp + 4 /* r */)) * aXformType[i].FrXform) + rRounder)) *(*int32)(unsafe.Pointer(bp /* rc */)) = 0 break } @@ -13499,8 +13650,8 @@ func datetimeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* // var zBuf [100]int8 at bp+96, 100 computeYMD_HMS(tls, bp+48 /* &x */) - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([100]int8{})), bp+96 /* &zBuf[0] */, ts+461, /* "%04d-%02d-%02d %..." */ - libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).FY, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).FM, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).FD, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).Fh, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).Fm, int32((*DateTime)(unsafe.Pointer(bp+48 /* &x */)).Fs))) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([100]int8{})), bp+96 /* &zBuf[0] */, ts+471, /* "%04d-%02d-%02d %..." */ + libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).FY, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).FM, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).FD, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).Fh, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).Fm, libc.Int32FromFloat64((*DateTime)(unsafe.Pointer(bp+48 /* &x */)).Fs))) Xsqlite3_result_text(tls, context, bp+96 /* &zBuf[0] */, -1, libc.UintptrFromInt32(-1)) } } @@ -13518,7 +13669,7 @@ func timeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql // var zBuf [100]int8 at bp+72, 100 computeHMS(tls, bp+24 /* &x */) - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([100]int8{})), bp+72 /* &zBuf[0] */, ts+491 /* "%02d:%02d:%02d" */, libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).Fh, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).Fm, int32((*DateTime)(unsafe.Pointer(bp+24 /* &x */)).Fs))) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([100]int8{})), bp+72 /* &zBuf[0] */, ts+501 /* "%02d:%02d:%02d" */, libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).Fh, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).Fm, libc.Int32FromFloat64((*DateTime)(unsafe.Pointer(bp+24 /* &x */)).Fs))) Xsqlite3_result_text(tls, context, bp+72 /* &zBuf[0] */, -1, libc.UintptrFromInt32(-1)) } } @@ -13536,7 +13687,7 @@ func dateFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql // var zBuf [100]int8 at bp+72, 100 computeYMD(tls, bp+24 /* &x */) - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([100]int8{})), bp+72 /* &zBuf[0] */, ts+506 /* "%04d-%02d-%02d" */, libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).FY, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).FM, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).FD)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([100]int8{})), bp+72 /* &zBuf[0] */, ts+516 /* "%04d-%02d-%02d" */, libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).FY, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).FM, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).FD)) Xsqlite3_result_text(tls, context, bp+72 /* &zBuf[0] */, -1, libc.UintptrFromInt32(-1)) } } @@ -13663,7 +13814,7 @@ __3: i++ switch int32(*(*int8)(unsafe.Pointer(zFmt + uintptr(i)))) { case 'd': - Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+521 /* "%02d" */, libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FD)) + Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+531 /* "%02d" */, libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FD)) j = j + (Size_t(2)) break fallthrough @@ -13673,14 +13824,14 @@ __3: if s > 59.999 { s = 59.999 } - Xsqlite3_snprintf(tls, 7, (z + uintptr(j)), ts+526 /* "%06.3f" */, libc.VaList(bp+8, s)) + Xsqlite3_snprintf(tls, 7, (z + uintptr(j)), ts+536 /* "%06.3f" */, libc.VaList(bp+8, s)) j = j + (Size_t(Xsqlite3Strlen30(tls, (z + uintptr(j))))) break } fallthrough case 'H': - Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+521 /* "%02d" */, libc.VaList(bp+16, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).Fh)) + Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+531 /* "%02d" */, libc.VaList(bp+16, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).Fh)) j = j + (Size_t(2)) break fallthrough @@ -13698,10 +13849,10 @@ __3: if int32(*(*int8)(unsafe.Pointer(zFmt + uintptr(i)))) == 'W' { var wd int32 // 0=Monday, 1=Tuesday, ... 6=Sunday wd = (int32((((*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FiJD + int64(43200000)) / int64(86400000)) % int64(7))) - Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+521 /* "%02d" */, libc.VaList(bp+24, (((nDay+7)-wd)/7))) + Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+531 /* "%02d" */, libc.VaList(bp+24, (((nDay+7)-wd)/7))) j = j + (Size_t(2)) } else { - Xsqlite3_snprintf(tls, 4, (z + uintptr(j)), ts+533 /* "%03d" */, libc.VaList(bp+32, (nDay+1))) + Xsqlite3_snprintf(tls, 4, (z + uintptr(j)), ts+543 /* "%03d" */, libc.VaList(bp+32, (nDay+1))) j = j + (Size_t(3)) } break @@ -13710,19 +13861,19 @@ __3: fallthrough case 'J': { - Xsqlite3_snprintf(tls, 20, (z + uintptr(j)), ts+538 /* "%.16g" */, libc.VaList(bp+40, (float64((*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FiJD)/86400000.0))) + Xsqlite3_snprintf(tls, 20, (z + uintptr(j)), ts+548 /* "%.16g" */, libc.VaList(bp+40, (float64((*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FiJD)/86400000.0))) j = j + (Size_t(Xsqlite3Strlen30(tls, (z + uintptr(j))))) break } fallthrough case 'm': - Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+521 /* "%02d" */, libc.VaList(bp+48, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FM)) + Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+531 /* "%02d" */, libc.VaList(bp+48, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FM)) j = j + (Size_t(2)) break fallthrough case 'M': - Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+521 /* "%02d" */, libc.VaList(bp+56, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).Fm)) + Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+531 /* "%02d" */, libc.VaList(bp+56, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).Fm)) j = j + (Size_t(2)) break fallthrough @@ -13736,7 +13887,7 @@ __3: } fallthrough case 'S': - Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+521 /* "%02d" */, libc.VaList(bp+64, int32((*DateTime)(unsafe.Pointer(bp+80 /* &x */)).Fs))) + Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+531 /* "%02d" */, libc.VaList(bp+64, libc.Int32FromFloat64((*DateTime)(unsafe.Pointer(bp+80 /* &x */)).Fs))) j = j + (Size_t(2)) break fallthrough @@ -13749,7 +13900,7 @@ __3: fallthrough case 'Y': { - Xsqlite3_snprintf(tls, 5, (z + uintptr(j)), ts+544 /* "%04d" */, libc.VaList(bp+72, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FY)) + Xsqlite3_snprintf(tls, 5, (z + uintptr(j)), ts+554 /* "%04d" */, libc.VaList(bp+72, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FY)) j = j + (Size_t(Xsqlite3Strlen30(tls, (z + uintptr(j))))) break @@ -13806,14 +13957,14 @@ func Xsqlite3RegisterDateTimeFunctions(tls *libc.TLS) { /* sqlite3.c:23404:21: * } var aDateTimeFuncs = [8]FuncDef{ - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 549 /* "julianday" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 559 /* "date" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 564 /* "time" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 569 /* "datetime" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 578 /* "strftime" */}, - {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 587 /* "current_time" */}, - {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 600 /* "current_timestam..." */}, - {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 618 /* "current_date" */}} /* sqlite3.c:23405:18 */ + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 559 /* "julianday" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 569 /* "date" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 574 /* "time" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 579 /* "datetime" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 588 /* "strftime" */}, + {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 597 /* "current_time" */}, + {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 610 /* "current_timestam..." */}, + {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 628 /* "current_date" */}} /* sqlite3.c:23405:18 */ //************* End of date.c *********************************************** //************* Begin file os.c ********************************************* @@ -13867,50 +14018,68 @@ var aDateTimeFuncs = [8]FuncDef{ // C++ instead of plain old C. func Xsqlite3OsClose(tls *libc.TLS, pId uintptr) { /* sqlite3.c:23507:21: */ if (*Sqlite3_file)(unsafe.Pointer(pId)).FpMethods != 0 { - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pId)).FpMethods + 4 /* &.xClose */))))(tls, pId) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pId)).FpMethods)).FxClose})).f(tls, pId) (*Sqlite3_file)(unsafe.Pointer(pId)).FpMethods = uintptr(0) } } func Xsqlite3OsRead(tls *libc.TLS, id uintptr, pBuf uintptr, amt int32, offset I64) int32 { /* sqlite3.c:23513:20: */ - return (*(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 8 /* &.xRead */))))(tls, id, pBuf, amt, offset) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxRead})).f(tls, id, pBuf, amt, offset) } func Xsqlite3OsWrite(tls *libc.TLS, id uintptr, pBuf uintptr, amt int32, offset I64) int32 { /* sqlite3.c:23517:20: */ - return (*(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 12 /* &.xWrite */))))(tls, id, pBuf, amt, offset) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxWrite})).f(tls, id, pBuf, amt, offset) } func Xsqlite3OsTruncate(tls *libc.TLS, id uintptr, size I64) int32 { /* sqlite3.c:23521:20: */ - return (*(*func(*libc.TLS, uintptr, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 16 /* &.xTruncate */))))(tls, id, size) + return (*struct { + f func(*libc.TLS, uintptr, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxTruncate})).f(tls, id, size) } func Xsqlite3OsSync(tls *libc.TLS, id uintptr, flags int32) int32 { /* sqlite3.c:23524:20: */ if flags != 0 { - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 20 /* &.xSync */))))(tls, id, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxSync})).f(tls, id, flags) } return SQLITE_OK } func Xsqlite3OsFileSize(tls *libc.TLS, id uintptr, pSize uintptr) int32 { /* sqlite3.c:23528:20: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 24 /* &.xFileSize */))))(tls, id, pSize) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxFileSize})).f(tls, id, pSize) } func Xsqlite3OsLock(tls *libc.TLS, id uintptr, lockType int32) int32 { /* sqlite3.c:23532:20: */ - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 28 /* &.xLock */))))(tls, id, lockType) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxLock})).f(tls, id, lockType) } func Xsqlite3OsUnlock(tls *libc.TLS, id uintptr, lockType int32) int32 { /* sqlite3.c:23536:20: */ - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 32 /* &.xUnlock */))))(tls, id, lockType) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxUnlock})).f(tls, id, lockType) } func Xsqlite3OsCheckReservedLock(tls *libc.TLS, id uintptr, pResOut uintptr) int32 { /* sqlite3.c:23539:20: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 36 /* &.xCheckReservedLock */))))(tls, id, pResOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxCheckReservedLock})).f(tls, id, pResOut) } // Use sqlite3OsFileControl() when we are doing something that might fail @@ -13923,12 +14092,16 @@ func Xsqlite3OsFileControl(tls *libc.TLS, id uintptr, op int32, pArg uintptr) in if (*Sqlite3_file)(unsafe.Pointer(id)).FpMethods == uintptr(0) { return SQLITE_NOTFOUND } - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 40 /* &.xFileControl */))))(tls, id, op, pArg) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxFileControl})).f(tls, id, op, pArg) } func Xsqlite3OsFileControlHint(tls *libc.TLS, id uintptr, op int32, pArg uintptr) { /* sqlite3.c:23580:21: */ if (*Sqlite3_file)(unsafe.Pointer(id)).FpMethods != 0 { - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 40 /* &.xFileControl */))))(tls, id, op, pArg) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxFileControl})).f(tls, id, op, pArg) } } @@ -13936,41 +14109,55 @@ func Xsqlite3OsSectorSize(tls *libc.TLS, id uintptr) int32 { /* sqlite3.c:23584: var xSectorSize uintptr = (*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxSectorSize return func() int32 { if xSectorSize != 0 { - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(&xSectorSize)))(tls, id) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xSectorSize})).f(tls, id) } return SQLITE_DEFAULT_SECTOR_SIZE }() } func Xsqlite3OsDeviceCharacteristics(tls *libc.TLS, id uintptr) int32 { /* sqlite3.c:23588:20: */ - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 48 /* &.xDeviceCharacteristics */))))(tls, id) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxDeviceCharacteristics})).f(tls, id) } func Xsqlite3OsShmLock(tls *libc.TLS, id uintptr, offset int32, n int32, flags int32) int32 { /* sqlite3.c:23592:20: */ - return (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 56 /* &.xShmLock */))))(tls, id, offset, n, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxShmLock})).f(tls, id, offset, n, flags) } func Xsqlite3OsShmBarrier(tls *libc.TLS, id uintptr) { /* sqlite3.c:23595:21: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 60 /* &.xShmBarrier */))))(tls, id) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxShmBarrier})).f(tls, id) } func Xsqlite3OsShmUnmap(tls *libc.TLS, id uintptr, deleteFlag int32) int32 { /* sqlite3.c:23598:20: */ - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 64 /* &.xShmUnmap */))))(tls, id, deleteFlag) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxShmUnmap})).f(tls, id, deleteFlag) } func Xsqlite3OsShmMap(tls *libc.TLS, id uintptr, iPage int32, pgsz int32, bExtend int32, pp uintptr) int32 { /* sqlite3.c:23601:20: */ - return (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 52 /* &.xShmMap */))))(tls, id, iPage, pgsz, bExtend, libc.AtomicLoadUintptr(&pp)) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxShmMap})).f(tls, id, iPage, pgsz, bExtend, pp) } // The real implementation of xFetch and xUnfetch func Xsqlite3OsFetch(tls *libc.TLS, id uintptr, iOff I64, iAmt int32, pp uintptr) int32 { /* sqlite3.c:23615:20: */ - return (*(*func(*libc.TLS, uintptr, Sqlite3_int64, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 68 /* &.xFetch */))))(tls, id, iOff, iAmt, pp) + return (*struct { + f func(*libc.TLS, uintptr, Sqlite3_int64, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxFetch})).f(tls, id, iOff, iAmt, pp) } func Xsqlite3OsUnfetch(tls *libc.TLS, id uintptr, iOff I64, p uintptr) int32 { /* sqlite3.c:23619:20: */ - return (*(*func(*libc.TLS, uintptr, Sqlite3_int64, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 72 /* &.xUnfetch */))))(tls, id, iOff, p) + return (*struct { + f func(*libc.TLS, uintptr, Sqlite3_int64, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxUnfetch})).f(tls, id, iOff, p) } // The next group of routines are convenience wrappers around the @@ -13982,7 +14169,9 @@ func Xsqlite3OsOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr, pFile uintptr, f // down into the VFS layer. Some SQLITE_OPEN_ flags (for example, // SQLITE_OPEN_FULLMUTEX or SQLITE_OPEN_SHAREDCACHE) are blocked before // reaching the VFS. - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 24 /* &.xOpen */))))(tls, pVfs, zPath, pFile, (flags & 0x1087f7f), pFlagsOut) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxOpen})).f(tls, pVfs, zPath, pFile, (flags & 0x1087f7f), pFlagsOut) return rc } @@ -13990,38 +14179,52 @@ func Xsqlite3OsOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr, pFile uintptr, f func Xsqlite3OsDelete(tls *libc.TLS, pVfs uintptr, zPath uintptr, dirSync int32) int32 { /* sqlite3.c:23654:20: */ if (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDelete != uintptr(0) { - return (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pVfs + 28 /* &.xDelete */))))(tls, pVfs, zPath, dirSync) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDelete})).f(tls, pVfs, zPath, dirSync) } return SQLITE_OK } func Xsqlite3OsAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResOut uintptr) int32 { /* sqlite3.c:23659:20: */ - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 32 /* &.xAccess */))))(tls, pVfs, zPath, flags, pResOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxAccess})).f(tls, pVfs, zPath, flags, pResOut) } func Xsqlite3OsFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nPathOut int32, zPathOut uintptr) int32 { /* sqlite3.c:23668:20: */ *(*int8)(unsafe.Pointer(zPathOut)) = int8(0) - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 36 /* &.xFullPathname */))))(tls, pVfs, zPath, nPathOut, zPathOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxFullPathname})).f(tls, pVfs, zPath, nPathOut, zPathOut) } func Xsqlite3OsDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* sqlite3.c:23679:21: */ // tag-20210611-1 - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer((pVfs + 40 /* &.xDlOpen */))))(tls, pVfs, zPath) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDlOpen})).f(tls, pVfs, zPath) } func Xsqlite3OsDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) { /* sqlite3.c:23684:21: */ - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer((pVfs + 44 /* &.xDlError */))))(tls, pVfs, nByte, zBufOut) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDlError})).f(tls, pVfs, nByte, zBufOut) } func Xsqlite3OsDlSym(tls *libc.TLS, pVfs uintptr, pHdle uintptr, zSym uintptr) uintptr { /* sqlite3.c:23687:21: */ - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer((pVfs + 48 /* &.xDlSym */))))(tls, pVfs, pHdle, zSym) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDlSym})).f(tls, pVfs, pHdle, zSym) } func Xsqlite3OsDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* sqlite3.c:23690:21: */ - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pVfs + 52 /* &.xDlClose */))))(tls, pVfs, pHandle) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDlClose})).f(tls, pVfs, pHandle) } func Xsqlite3OsRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* sqlite3.c:23694:20: */ @@ -14033,19 +14236,25 @@ func Xsqlite3OsRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uint libc.Xmemcpy(tls, zBufOut, (uintptr(unsafe.Pointer(&Xsqlite3Config)) + 268 /* &.iPrngSeed */), uint32(nByte)) return SQLITE_OK } else { - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 56 /* &.xRandomness */))))(tls, pVfs, nByte, zBufOut) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxRandomness})).f(tls, pVfs, nByte, zBufOut) } return int32(0) } func Xsqlite3OsSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* sqlite3.c:23705:20: */ - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pVfs + 60 /* &.xSleep */))))(tls, pVfs, nMicro) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxSleep})).f(tls, pVfs, nMicro) } func Xsqlite3OsGetLastError(tls *libc.TLS, pVfs uintptr) int32 { /* sqlite3.c:23708:20: */ if (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxGetLastError != 0 { - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 68 /* &.xGetLastError */))))(tls, pVfs, 0, uintptr(0)) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxGetLastError})).f(tls, pVfs, 0, uintptr(0)) } return 0 } @@ -14061,12 +14270,16 @@ func Xsqlite3OsCurrentTimeInt64(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) i // will fall back to xCurrentTime() if xCurrentTimeInt64() is // unavailable. if ((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FiVersion >= 2) && ((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxCurrentTimeInt64 != 0) { - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pVfs + 72 /* &.xCurrentTimeInt64 */))))(tls, pVfs, pTimeOut) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxCurrentTimeInt64})).f(tls, pVfs, pTimeOut) } else { // var r float64 at bp, 8 - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pVfs + 64 /* &.xCurrentTime */))))(tls, pVfs, bp /* &r */) - *(*Sqlite3_int64)(unsafe.Pointer(pTimeOut)) = (Sqlite3_int64(*(*float64)(unsafe.Pointer(bp /* r */)) * 86400000.0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxCurrentTime})).f(tls, pVfs, bp /* &r */) + *(*Sqlite3_int64)(unsafe.Pointer(pTimeOut)) = (libc.Int64FromFloat64(*(*float64)(unsafe.Pointer(bp /* r */)) * 86400000.0)) } return rc } @@ -14276,14 +14489,14 @@ func Xsqlite3BenignMallocHooks(tls *libc.TLS, xBenignBegin uintptr, xBenignEnd u func Xsqlite3BeginBenignMalloc(tls *libc.TLS) { /* sqlite3.c:23942:21: */ if sqlite3Hooks.FxBenignBegin != 0 { - (*(*func(*libc.TLS))(unsafe.Pointer((uintptr(unsafe.Pointer(&sqlite3Hooks)) /* &.xBenignBegin */))))(tls) + (*struct{ f func(*libc.TLS) })(unsafe.Pointer(&struct{ uintptr }{sqlite3Hooks.FxBenignBegin})).f(tls) } } func Xsqlite3EndBenignMalloc(tls *libc.TLS) { /* sqlite3.c:23948:21: */ if sqlite3Hooks.FxBenignEnd != 0 { - (*(*func(*libc.TLS))(unsafe.Pointer((uintptr(unsafe.Pointer(&sqlite3Hooks)) + 4 /* &.xBenignEnd */))))(tls) + (*struct{ f func(*libc.TLS) })(unsafe.Pointer(&struct{ uintptr }{sqlite3Hooks.FxBenignEnd})).f(tls) } } @@ -14390,7 +14603,7 @@ func sqlite3MemMalloc(tls *libc.TLS, nByte int32) uintptr { /* sqlite3.c:24148:1 p += 8 } else { - Xsqlite3_log(tls, SQLITE_NOMEM, ts+631 /* "failed to alloca..." */, libc.VaList(bp, nByte)) + Xsqlite3_log(tls, SQLITE_NOMEM, ts+641 /* "failed to alloca..." */, libc.VaList(bp, nByte)) } return p } @@ -14441,7 +14654,7 @@ func sqlite3MemRealloc(tls *libc.TLS, pPrior uintptr, nByte int32) uintptr { /* } else { Xsqlite3_log(tls, SQLITE_NOMEM, - ts+669, /* "failed memory re..." */ + ts+679, /* "failed memory re..." */ libc.VaList(bp, sqlite3MemSize(tls, pPrior), nByte)) } return p @@ -14644,7 +14857,7 @@ func Xsqlite3MutexInit(tls *libc.TLS) int32 { /* sqlite3.c:26333:20: */ (*Sqlite3_mutex_methods)(unsafe.Pointer(pTo)).FxMutexAlloc = (*Sqlite3_mutex_methods)(unsafe.Pointer(pFrom)).FxMutexAlloc } - rc = (*(*func(*libc.TLS) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ /* &.xMutexInit */))))(tls) + rc = (*struct{ f func(*libc.TLS) int32 })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexInit})).f(tls) return rc } @@ -14654,7 +14867,7 @@ func Xsqlite3MutexInit(tls *libc.TLS) int32 { /* sqlite3.c:26333:20: */ func Xsqlite3MutexEnd(tls *libc.TLS) int32 { /* sqlite3.c:26379:20: */ var rc int32 = SQLITE_OK if Xsqlite3Config.Fmutex.FxMutexEnd != 0 { - rc = (*(*func(*libc.TLS) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ + 4 /* &.xMutexEnd */))))(tls) + rc = (*struct{ f func(*libc.TLS) int32 })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexEnd})).f(tls) } return rc @@ -14669,7 +14882,9 @@ func Xsqlite3_mutex_alloc(tls *libc.TLS, id int32) uintptr { /* sqlite3.c:26395: return uintptr(0) } - return (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ + 8 /* &.xMutexAlloc */))))(tls, id) + return (*struct { + f func(*libc.TLS, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexAlloc})).f(tls, id) } func Xsqlite3MutexAlloc(tls *libc.TLS, id int32) uintptr { /* sqlite3.c:26404:30: */ @@ -14677,14 +14892,16 @@ func Xsqlite3MutexAlloc(tls *libc.TLS, id int32) uintptr { /* sqlite3.c:26404:30 return uintptr(0) } - return (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ + 8 /* &.xMutexAlloc */))))(tls, id) + return (*struct { + f func(*libc.TLS, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexAlloc})).f(tls, id) } // Free a dynamic mutex. func Xsqlite3_mutex_free(tls *libc.TLS, p uintptr) { /* sqlite3.c:26416:17: */ if p != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ + 12 /* &.xMutexFree */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexFree})).f(tls, p) } } @@ -14693,7 +14910,7 @@ func Xsqlite3_mutex_free(tls *libc.TLS, p uintptr) { /* sqlite3.c:26416:17: */ func Xsqlite3_mutex_enter(tls *libc.TLS, p uintptr) { /* sqlite3.c:26427:17: */ if p != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ + 16 /* &.xMutexEnter */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexEnter})).f(tls, p) } } @@ -14703,7 +14920,9 @@ func Xsqlite3_mutex_try(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:26438:16: var rc int32 = SQLITE_OK if p != 0 { - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ + 20 /* &.xMutexTry */))))(tls, p) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexTry})).f(tls, p) } return rc } @@ -14715,7 +14934,7 @@ func Xsqlite3_mutex_try(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:26438:16: func Xsqlite3_mutex_leave(tls *libc.TLS, p uintptr) { /* sqlite3.c:26453:17: */ if p != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ + 24 /* &.xMutexLeave */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexLeave})).f(tls, p) } } @@ -14982,7 +15201,9 @@ func Xsqlite3MallocInit(tls *libc.TLS) int32 { /* sqlite3.c:27944:20: */ Xsqlite3Config.FpPage = uintptr(0) Xsqlite3Config.FszPage = 0 } - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 20 /* &.xInit */))))(tls, Xsqlite3Config.Fm.FpAppData) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxInit})).f(tls, Xsqlite3Config.Fm.FpAppData) if rc != SQLITE_OK { libc.Xmemset(tls, uintptr(unsafe.Pointer(&mem0)), 0, uint32(unsafe.Sizeof(mem0))) } @@ -14999,7 +15220,7 @@ func Xsqlite3HeapNearlyFull(tls *libc.TLS) int32 { /* sqlite3.c:27965:20: */ // Deinitialize the memory allocation subsystem. func Xsqlite3MallocEnd(tls *libc.TLS) { /* sqlite3.c:27972:21: */ if Xsqlite3Config.Fm.FxShutdown != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 24 /* &.xShutdown */))))(tls, Xsqlite3Config.Fm.FpAppData) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxShutdown})).f(tls, Xsqlite3Config.Fm.FpAppData) } libc.Xmemset(tls, uintptr(unsafe.Pointer(&mem0)), 0, uint32(unsafe.Sizeof(mem0))) } @@ -15053,7 +15274,7 @@ func mallocWithAlarm(tls *libc.TLS, n int32, pp uintptr) { /* sqlite3.c:28013:13 // mode and specifically when the DMD "Dark Matter Detector" is enabled // or else a crash results. Hence, do not attempt to optimize out the // following xRoundup() call. - nFull = (*(*func(*libc.TLS, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 16 /* &.xRoundup */))))(tls, n) + nFull = (*struct{ f func(*libc.TLS, int32) int32 })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxRoundup})).f(tls, n) Xsqlite3StatusHighwater(tls, SQLITE_STATUS_MALLOC_SIZE, n) if mem0.FalarmThreshold > int64(0) { @@ -15072,10 +15293,14 @@ func mallocWithAlarm(tls *libc.TLS, n int32, pp uintptr) { /* sqlite3.c:28013:13 libc.AtomicStoreNInt32((uintptr(unsafe.Pointer(&mem0)) + 20 /* &.nearlyFull */), int32(0), 0) } } - p = (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ /* &.xMalloc */))))(tls, nFull) + p = (*struct { + f func(*libc.TLS, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxMalloc})).f(tls, nFull) if (p == uintptr(0)) && (mem0.FalarmThreshold > int64(0)) { sqlite3MallocAlarm(tls, nFull) - p = (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ /* &.xMalloc */))))(tls, nFull) + p = (*struct { + f func(*libc.TLS, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxMalloc})).f(tls, nFull) } if p != 0 { nFull = Xsqlite3MallocSize(tls, p) @@ -15105,7 +15330,9 @@ func Xsqlite3Malloc(tls *libc.TLS, n U64) uintptr { /* sqlite3.c:28062:21: */ mallocWithAlarm(tls, int32(n), bp /* &p */) Xsqlite3_mutex_leave(tls, mem0.Fmutex) } else { - *(*uintptr)(unsafe.Pointer(bp /* p */)) = (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ /* &.xMalloc */))))(tls, int32(n)) + *(*uintptr)(unsafe.Pointer(bp /* p */)) = (*struct { + f func(*libc.TLS, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxMalloc})).f(tls, int32(n)) } // IMP: R-11148-40995 return *(*uintptr)(unsafe.Pointer(bp /* p */)) @@ -15140,7 +15367,9 @@ func isLookaside(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:2810 // sqlite3Malloc() or sqlite3_malloc(). func Xsqlite3MallocSize(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:28115:20: */ - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 12 /* &.xSize */))))(tls, p) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxSize})).f(tls, p) } func lookasideMallocSize(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:28119:12: */ @@ -15164,13 +15393,17 @@ func Xsqlite3DbMallocSize(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlit } } } - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 12 /* &.xSize */))))(tls, p) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxSize})).f(tls, p) } func Xsqlite3_msize(tls *libc.TLS, p uintptr) Sqlite3_uint64 { /* sqlite3.c:28155:27: */ if p != 0 { - return uint64((*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 12 /* &.xSize */))))(tls, p)) + return uint64((*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxSize})).f(tls, p)) } return uint64(0) } @@ -15185,10 +15418,10 @@ func Xsqlite3_free(tls *libc.TLS, p uintptr) { /* sqlite3.c:28164:17: */ Xsqlite3_mutex_enter(tls, mem0.Fmutex) Xsqlite3StatusDown(tls, SQLITE_STATUS_MEMORY_USED, Xsqlite3MallocSize(tls, p)) Xsqlite3StatusDown(tls, SQLITE_STATUS_MALLOC_COUNT, 1) - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 4 /* &.xFree */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxFree})).f(tls, p) Xsqlite3_mutex_leave(tls, mem0.Fmutex) } else { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 4 /* &.xFree */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxFree})).f(tls, p) } } @@ -15256,7 +15489,7 @@ func Xsqlite3Realloc(tls *libc.TLS, pOld uintptr, nBytes U64) uintptr { /* sqlit // IMPLEMENTATION-OF: R-46199-30249 SQLite guarantees that the second // argument to xRealloc is always a value returned by a prior call to // xRoundup. - nNew = (*(*func(*libc.TLS, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 16 /* &.xRoundup */))))(tls, int32(nBytes)) + nNew = (*struct{ f func(*libc.TLS, int32) int32 })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxRoundup})).f(tls, int32(nBytes)) if nOld == nNew { pNew = pOld } else if Xsqlite3Config.FbMemstat != 0 { @@ -15271,10 +15504,14 @@ func Xsqlite3Realloc(tls *libc.TLS, pOld uintptr, nBytes U64) uintptr { /* sqlit return uintptr(0) } } - pNew = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 8 /* &.xRealloc */))))(tls, pOld, nNew) + pNew = (*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxRealloc})).f(tls, pOld, nNew) if (pNew == uintptr(0)) && (mem0.FalarmThreshold > int64(0)) { sqlite3MallocAlarm(tls, int32(nBytes)) - pNew = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 8 /* &.xRealloc */))))(tls, pOld, nNew) + pNew = (*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxRealloc})).f(tls, pOld, nNew) } if pNew != 0 { nNew = Xsqlite3MallocSize(tls, pNew) @@ -15282,7 +15519,9 @@ func Xsqlite3Realloc(tls *libc.TLS, pOld uintptr, nBytes U64) uintptr { /* sqlit } Xsqlite3_mutex_leave(tls, mem0.Fmutex) } else { - pNew = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 8 /* &.xRealloc */))))(tls, pOld, nNew) + pNew = (*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxRealloc})).f(tls, pOld, nNew) } // IMP: R-11148-40995 return pNew @@ -15625,8 +15864,8 @@ type Et_info = et_info /* sqlite3.c:28672:3 */ // The following table is searched linearly, so it is good to put the // most frequently used conversion types first. -var aDigits = *(*[33]int8)(unsafe.Pointer(ts + 705 /* "0123456789ABCDEF..." */)) /* sqlite3.c:28685:19 */ -var aPrefix = *(*[7]int8)(unsafe.Pointer(ts + 738 /* "-x0\x00X0" */)) /* sqlite3.c:28686:19 */ +var aDigits = *(*[33]int8)(unsafe.Pointer(ts + 715 /* "0123456789ABCDEF..." */)) /* sqlite3.c:28685:19 */ +var aPrefix = *(*[7]int8)(unsafe.Pointer(ts + 748 /* "-x0\x00X0" */)) /* sqlite3.c:28686:19 */ var fmtinfo = [23]Et_info{ {Ffmttype: int8('d'), Fbase: EtByte(10), Fflags: EtByte(1), Ftype: EtByte(EtDECIMAL)}, {Ffmttype: int8('s'), Fflags: EtByte(4), Ftype: EtByte(EtSTRING)}, @@ -15880,7 +16119,7 @@ __6: if !((libc.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(libc.PreIncUintptr(&fmt, 1)))))) == 0) { goto __11 } - Xsqlite3_str_append(tls, pAccum, ts+745 /* "%" */, 1) + Xsqlite3_str_append(tls, pAccum, ts+755 /* "%" */, 1) goto __5 __11: ; @@ -16463,7 +16702,7 @@ __125: if !(Xsqlite3IsNaN(tls, *(*float64)(unsafe.Pointer(bp + 96 /* realvalue */))) != 0) { goto __127 } - bufpt = ts + 747 /* "NaN" */ + bufpt = ts + 757 /* "NaN" */ length = 3 goto __58 __127: @@ -16523,7 +16762,7 @@ __138: } bufpt = bp + 8 /* &buf[0] */ *(*int8)(unsafe.Pointer(bp + 8 /* &buf[0] */)) = prefix - libc.Xmemcpy(tls, (bp + 8 /* &buf[0] */ + uintptr((libc.Bool32(int32(prefix) != 0)))), ts+751 /* "Inf" */, uint32(4)) + libc.Xmemcpy(tls, (bp + 8 /* &buf[0] */ + uintptr((libc.Bool32(int32(prefix) != 0)))), ts+761 /* "Inf" */, uint32(4)) length = (3 + (libc.Bool32(int32(prefix) != 0))) goto __58 __139: @@ -16880,7 +17119,7 @@ __197: if !(bufpt == uintptr(0)) { goto __198 } - bufpt = ts + 755 /* "" */ + bufpt = ts + 765 /* "" */ goto __199 __198: if !(int32(xtype) == EtDYNSTRING) { @@ -17009,9 +17248,9 @@ __219: } escarg = func() uintptr { if int32(xtype) == EtSQLESCAPE2 { - return ts + 756 /* "NULL" */ + return ts + 766 /* "NULL" */ } - return ts + 761 /* "(NULL)" */ + return ts + 771 /* "(NULL)" */ }() __220: ; @@ -17146,7 +17385,7 @@ __240: goto __244 } Xsqlite3_str_appendall(tls, pAccum, (*SrcItem)(unsafe.Pointer(pItem)).FzDatabase) - Xsqlite3_str_append(tls, pAccum, ts+768 /* "." */, 1) + Xsqlite3_str_append(tls, pAccum, ts+778 /* "." */, 1) __244: ; Xsqlite3_str_appendall(tls, pAccum, (*SrcItem)(unsafe.Pointer(pItem)).FzName) @@ -17161,7 +17400,7 @@ __245: if !((*SrcItem)(unsafe.Pointer(pItem)).FpSelect != 0) { goto __247 } - Xsqlite3_str_appendf(tls, pAccum, ts+770 /* "SUBQUERY %u" */, libc.VaList(bp, (*Select)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pItem)).FpSelect)).FselId)) + Xsqlite3_str_appendf(tls, pAccum, ts+780 /* "SUBQUERY %u" */, libc.VaList(bp, (*Select)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pItem)).FpSelect)).FselId)) __247: ; __246: @@ -17224,7 +17463,7 @@ __5: // End for loop over the format string } -var zOrd = *(*[9]int8)(unsafe.Pointer(ts + 782 /* "thstndrd" */)) /* sqlite3.c:29091:29 */ +var zOrd = *(*[9]int8)(unsafe.Pointer(ts + 792 /* "thstndrd" */)) /* sqlite3.c:29091:29 */ // End of function @@ -17577,7 +17816,9 @@ func renderLogMsg(tls *libc.TLS, iErrCode int32, zFormat uintptr, ap Va_list) { Xsqlite3StrAccumInit(tls, bp /* &acc */, uintptr(0), bp+24 /* &zMsg[0] */, int32(unsafe.Sizeof([210]int8{})), 0) Xsqlite3_str_vappendf(tls, bp /* &acc */, zFormat, ap) - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 236 /* &.xLog */))))(tls, Xsqlite3Config.FpLogArg, iErrCode, + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.FxLog})).f(tls, Xsqlite3Config.FpLogArg, iErrCode, Xsqlite3StrAccumFinish(tls, bp /* &acc */)) } @@ -17805,7 +18046,9 @@ func Xsqlite3ThreadCreate(tls *libc.TLS, ppThread uintptr, xTask uintptr, pIn ui (*SQLiteThread)(unsafe.Pointer(p)).FpIn = pIn } else { (*SQLiteThread)(unsafe.Pointer(p)).FxTask = uintptr(0) - (*SQLiteThread)(unsafe.Pointer(p)).FpResult = (*(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(&xTask)))(tls, pIn) + (*SQLiteThread)(unsafe.Pointer(p)).FpResult = (*struct { + f func(*libc.TLS, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{xTask})).f(tls, pIn) } *(*uintptr)(unsafe.Pointer(ppThread)) = p return SQLITE_OK @@ -17818,7 +18061,9 @@ func Xsqlite3ThreadJoin(tls *libc.TLS, p uintptr, ppOut uintptr) int32 { /* sqli return SQLITE_NOMEM } if (*SQLiteThread)(unsafe.Pointer(p)).FxTask != 0 { - *(*uintptr)(unsafe.Pointer(ppOut)) = (*(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer((p /* &.xTask */))))(tls, (*SQLiteThread)(unsafe.Pointer(p)).FpIn) + *(*uintptr)(unsafe.Pointer(ppOut)) = (*struct { + f func(*libc.TLS, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*SQLiteThread)(unsafe.Pointer(p)).FxTask})).f(tls, (*SQLiteThread)(unsafe.Pointer(p)).FpIn) } else { *(*uintptr)(unsafe.Pointer(ppOut)) = (*SQLiteThread)(unsafe.Pointer(p)).FpResult } @@ -18385,7 +18630,7 @@ func Xsqlite3Utf16ByteLen(tls *libc.TLS, zIn uintptr, nChar int32) int32 { /* sq // #include "sqliteInt.h" // #include // Declarations for math functions. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18400,12 +18645,12 @@ func Xsqlite3Utf16ByteLen(tls *libc.TLS, zIn uintptr, nChar int32) int32 { /* sq // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.12 Mathematics // Handle feature test macros at the start of a header. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18420,7 +18665,7 @@ func Xsqlite3Utf16ByteLen(tls *libc.TLS, zIn uintptr, nChar int32) int32 { /* sq // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // This header is internal to glibc and should not be included outside // of glibc headers. Headers including it must define @@ -18430,7 +18675,7 @@ func Xsqlite3Utf16ByteLen(tls *libc.TLS, zIn uintptr, nChar int32) int32 { /* sq // header is included, not when the first system header is // included. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18445,23 +18690,27 @@ func Xsqlite3Utf16ByteLen(tls *libc.TLS, zIn uintptr, nChar int32) int32 { /* sq // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO/IEC TR 24731-2:2010 defines the __STDC_WANT_LIB_EXT2__ // macro. // ISO/IEC TS 18661-1:2014 defines the __STDC_WANT_IEC_60559_BFP_EXT__ -// macro. +// macro. Most but not all symbols enabled by that macro in TS +// 18661-1 are enabled unconditionally in C2X; the symbols in Annex F +// still require that macro in C2X. // ISO/IEC TS 18661-4:2015 defines the -// __STDC_WANT_IEC_60559_FUNCS_EXT__ macro. +// __STDC_WANT_IEC_60559_FUNCS_EXT__ macro. Other than the reduction +// functions, the symbols from this TS are enabled unconditionally in +// C2X. // ISO/IEC TS 18661-3:2015 defines the // __STDC_WANT_IEC_60559_TYPES_EXT__ macro. // Get definitions of __intmax_t and __uintmax_t. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18476,13 +18725,13 @@ func Xsqlite3Utf16ByteLen(tls *libc.TLS, zIn uintptr, nChar int32) int32 { /* sq // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // Get machine-dependent vector math functions declarations. // Platform-specific SIMD declarations of math functions. -// Copyright (C) 2014-2018 Free Software Foundation, Inc. +// Copyright (C) 2014-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18497,11 +18746,11 @@ func Xsqlite3Utf16ByteLen(tls *libc.TLS, zIn uintptr, nChar int32) int32 { /* sq // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Get default empty definitions for simd declarations. // Empty definitions required for __MATHCALL_VEC unfolding in mathcalls.h. -// Copyright (C) 2014-2018 Free Software Foundation, Inc. +// Copyright (C) 2014-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18516,7 +18765,7 @@ func Xsqlite3Utf16ByteLen(tls *libc.TLS, zIn uintptr, nChar int32) int32 { /* sq // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Needed definitions could be generated with: // for func in $(grep __MATHCALL_VEC math/bits/mathcalls.h | sed -r "s|__MATHCALL_VEC.?\(||; s|,.*||"); do @@ -18528,7 +18777,7 @@ func Xsqlite3Utf16ByteLen(tls *libc.TLS, zIn uintptr, nChar int32) int32 { /* sq // Gather machine dependent type support. // Macros to control TS 18661-3 glibc features on x86. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18543,7 +18792,7 @@ func Xsqlite3Utf16ByteLen(tls *libc.TLS, zIn uintptr, nChar int32) int32 { /* sq // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Value returned on overflow. With IEEE 754 floating point, this is // +Infinity, otherwise the largest representable positive value. @@ -18556,7 +18805,7 @@ func Xsqlite3Utf16ByteLen(tls *libc.TLS, zIn uintptr, nChar int32) int32 { /* sq // Get __GLIBC_FLT_EVAL_METHOD. // Define __GLIBC_FLT_EVAL_METHOD. x86 version. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18571,7 +18820,7 @@ func Xsqlite3Utf16ByteLen(tls *libc.TLS, zIn uintptr, nChar int32) int32 { /* sq // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Define the following typedefs. // @@ -18616,9 +18865,6 @@ type Double_t = float64 /* math.h:156:21 */ // Get machine-dependent inline versions (if there are any). -// Define special entry points to use when the compiler got told to -// only expect finite results. - // An expression whose type has the widest of the evaluation formats // of X and Y (which are of floating-point types). @@ -18647,7 +18893,7 @@ type Double_t = float64 /* math.h:156:21 */ func Xsqlite3FaultSim(tls *libc.TLS, iTest int32) int32 { /* sqlite3.c:31735:20: */ var xCallback uintptr = Xsqlite3Config.FxTestCallback if xCallback != 0 { - return (*(*func(*libc.TLS, int32) int32)(unsafe.Pointer(&xCallback)))(tls, iTest) + return (*struct{ f func(*libc.TLS, int32) int32 })(unsafe.Pointer(&struct{ uintptr }{xCallback})).f(tls, iTest) } return SQLITE_OK } @@ -19435,7 +19681,7 @@ func compare2pow63(tls *libc.TLS, zNum uintptr, incr int32) int32 { /* sqlite3.c var c int32 = 0 var i int32 // 012345678901234567 - var pow63 uintptr = ts + 791 /* "9223372036854775..." */ + var pow63 uintptr = ts + 801 /* "9223372036854775..." */ for i = 0; (c == 0) && (i < 18); i++ { c = ((int32(*(*int8)(unsafe.Pointer(zNum + uintptr((i * incr))))) - int32(*(*int8)(unsafe.Pointer(pow63 + uintptr(i))))) * 10) } @@ -20085,7 +20331,7 @@ func logBadConnection(tls *libc.TLS, zType uintptr) { /* sqlite3.c:33033:13: */ defer tls.Free(8) Xsqlite3_log(tls, SQLITE_MISUSE, - ts+810, /* "API call with %s..." */ + ts+820, /* "API call with %s..." */ libc.VaList(bp, zType)) } @@ -20104,14 +20350,14 @@ func logBadConnection(tls *libc.TLS, zType uintptr) { /* sqlite3.c:33033:13: */ func Xsqlite3SafetyCheckOk(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:33054:20: */ var magic U32 if db == uintptr(0) { - logBadConnection(tls, ts+756 /* "NULL" */) + logBadConnection(tls, ts+766 /* "NULL" */) return 0 } magic = (*Sqlite3)(unsafe.Pointer(db)).Fmagic if magic != SQLITE_MAGIC_OPEN { if Xsqlite3SafetyCheckSickOrOk(tls, db) != 0 { - logBadConnection(tls, ts+855 /* "unopened" */) + logBadConnection(tls, ts+865 /* "unopened" */) } return 0 } else { @@ -20125,7 +20371,7 @@ func Xsqlite3SafetyCheckSickOrOk(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c magic = (*Sqlite3)(unsafe.Pointer(db)).Fmagic if ((magic != U32(SQLITE_MAGIC_SICK)) && (magic != SQLITE_MAGIC_OPEN)) && (magic != SQLITE_MAGIC_BUSY) { - logBadConnection(tls, ts+864 /* "invalid" */) + logBadConnection(tls, ts+874 /* "invalid" */) return 0 } else { return 1 @@ -20653,186 +20899,186 @@ func Xsqlite3OpcodeName(tls *libc.TLS, i int32) uintptr { /* sqlite3.c:33672:27: } var azName = [180]uintptr{ - /* 0 */ ts + 872, /* "Savepoint" */ - /* 1 */ ts + 882, /* "AutoCommit" */ - /* 2 */ ts + 893, /* "Transaction" */ - /* 3 */ ts + 905, /* "SorterNext" */ - /* 4 */ ts + 916, /* "Prev" */ - /* 5 */ ts + 921, /* "Next" */ - /* 6 */ ts + 926, /* "Checkpoint" */ - /* 7 */ ts + 937, /* "JournalMode" */ - /* 8 */ ts + 949, /* "Vacuum" */ - /* 9 */ ts + 956, /* "VFilter" */ - /* 10 */ ts + 964, /* "VUpdate" */ - /* 11 */ ts + 972, /* "Goto" */ - /* 12 */ ts + 977, /* "Gosub" */ - /* 13 */ ts + 983, /* "InitCoroutine" */ - /* 14 */ ts + 997, /* "Yield" */ - /* 15 */ ts + 1003, /* "MustBeInt" */ - /* 16 */ ts + 1013, /* "Jump" */ - /* 17 */ ts + 1018, /* "Once" */ - /* 18 */ ts + 1023, /* "If" */ - /* 19 */ ts + 1026, /* "Not" */ - /* 20 */ ts + 1030, /* "IfNot" */ - /* 21 */ ts + 1036, /* "IfNullRow" */ - /* 22 */ ts + 1046, /* "SeekLT" */ - /* 23 */ ts + 1053, /* "SeekLE" */ - /* 24 */ ts + 1060, /* "SeekGE" */ - /* 25 */ ts + 1067, /* "SeekGT" */ - /* 26 */ ts + 1074, /* "IfNotOpen" */ - /* 27 */ ts + 1084, /* "IfNoHope" */ - /* 28 */ ts + 1093, /* "NoConflict" */ - /* 29 */ ts + 1104, /* "NotFound" */ - /* 30 */ ts + 1113, /* "Found" */ - /* 31 */ ts + 1119, /* "SeekRowid" */ - /* 32 */ ts + 1129, /* "NotExists" */ - /* 33 */ ts + 1139, /* "Last" */ - /* 34 */ ts + 1144, /* "IfSmaller" */ - /* 35 */ ts + 1154, /* "SorterSort" */ - /* 36 */ ts + 1165, /* "Sort" */ - /* 37 */ ts + 1170, /* "Rewind" */ - /* 38 */ ts + 1177, /* "IdxLE" */ - /* 39 */ ts + 1183, /* "IdxGT" */ - /* 40 */ ts + 1189, /* "IdxLT" */ - /* 41 */ ts + 1195, /* "IdxGE" */ - /* 42 */ ts + 1201, /* "RowSetRead" */ - /* 43 */ ts + 1212, /* "Or" */ - /* 44 */ ts + 1215, /* "And" */ - /* 45 */ ts + 1219, /* "RowSetTest" */ - /* 46 */ ts + 1230, /* "Program" */ - /* 47 */ ts + 1238, /* "FkIfZero" */ - /* 48 */ ts + 1247, /* "IfPos" */ - /* 49 */ ts + 1253, /* "IfNotZero" */ - /* 50 */ ts + 1263, /* "IsNull" */ - /* 51 */ ts + 1270, /* "NotNull" */ - /* 52 */ ts + 1278, /* "Ne" */ - /* 53 */ ts + 1281, /* "Eq" */ - /* 54 */ ts + 1284, /* "Gt" */ - /* 55 */ ts + 1287, /* "Le" */ - /* 56 */ ts + 1290, /* "Lt" */ - /* 57 */ ts + 1293, /* "Ge" */ - /* 58 */ ts + 1296, /* "ElseEq" */ - /* 59 */ ts + 1303, /* "DecrJumpZero" */ - /* 60 */ ts + 1316, /* "IncrVacuum" */ - /* 61 */ ts + 1327, /* "VNext" */ - /* 62 */ ts + 1333, /* "Init" */ - /* 63 */ ts + 1338, /* "PureFunc" */ - /* 64 */ ts + 1347, /* "Function" */ - /* 65 */ ts + 1356, /* "Return" */ - /* 66 */ ts + 1363, /* "EndCoroutine" */ - /* 67 */ ts + 1376, /* "HaltIfNull" */ - /* 68 */ ts + 1387, /* "Halt" */ - /* 69 */ ts + 1392, /* "Integer" */ - /* 70 */ ts + 1400, /* "Int64" */ - /* 71 */ ts + 1406, /* "String" */ - /* 72 */ ts + 1413, /* "Null" */ - /* 73 */ ts + 1418, /* "SoftNull" */ - /* 74 */ ts + 1427, /* "Blob" */ - /* 75 */ ts + 1432, /* "Variable" */ - /* 76 */ ts + 1441, /* "Move" */ - /* 77 */ ts + 1446, /* "Copy" */ - /* 78 */ ts + 1451, /* "SCopy" */ - /* 79 */ ts + 1457, /* "IntCopy" */ - /* 80 */ ts + 1465, /* "ChngCntRow" */ - /* 81 */ ts + 1476, /* "ResultRow" */ - /* 82 */ ts + 1486, /* "CollSeq" */ - /* 83 */ ts + 1494, /* "AddImm" */ - /* 84 */ ts + 1501, /* "RealAffinity" */ - /* 85 */ ts + 1514, /* "Cast" */ - /* 86 */ ts + 1519, /* "Permutation" */ - /* 87 */ ts + 1531, /* "Compare" */ - /* 88 */ ts + 1539, /* "IsTrue" */ - /* 89 */ ts + 1546, /* "ZeroOrNull" */ - /* 90 */ ts + 1557, /* "Offset" */ - /* 91 */ ts + 1564, /* "Column" */ - /* 92 */ ts + 1571, /* "Affinity" */ - /* 93 */ ts + 1580, /* "MakeRecord" */ - /* 94 */ ts + 1591, /* "Count" */ - /* 95 */ ts + 1597, /* "ReadCookie" */ - /* 96 */ ts + 1608, /* "SetCookie" */ - /* 97 */ ts + 1618, /* "ReopenIdx" */ - /* 98 */ ts + 1628, /* "OpenRead" */ - /* 99 */ ts + 1637, /* "OpenWrite" */ - /* 100 */ ts + 1647, /* "OpenDup" */ - /* 101 */ ts + 1655, /* "OpenAutoindex" */ - /* 102 */ ts + 1669, /* "BitAnd" */ - /* 103 */ ts + 1676, /* "BitOr" */ - /* 104 */ ts + 1682, /* "ShiftLeft" */ - /* 105 */ ts + 1692, /* "ShiftRight" */ - /* 106 */ ts + 1703, /* "Add" */ - /* 107 */ ts + 1707, /* "Subtract" */ - /* 108 */ ts + 1716, /* "Multiply" */ - /* 109 */ ts + 1725, /* "Divide" */ - /* 110 */ ts + 1732, /* "Remainder" */ - /* 111 */ ts + 1742, /* "Concat" */ - /* 112 */ ts + 1749, /* "OpenEphemeral" */ - /* 113 */ ts + 1763, /* "BitNot" */ - /* 114 */ ts + 1770, /* "SorterOpen" */ - /* 115 */ ts + 1781, /* "SequenceTest" */ - /* 116 */ ts + 1794, /* "String8" */ - /* 117 */ ts + 1802, /* "OpenPseudo" */ - /* 118 */ ts + 1813, /* "Close" */ - /* 119 */ ts + 1819, /* "ColumnsUsed" */ - /* 120 */ ts + 1831, /* "SeekScan" */ - /* 121 */ ts + 1840, /* "SeekHit" */ - /* 122 */ ts + 1848, /* "Sequence" */ - /* 123 */ ts + 1857, /* "NewRowid" */ - /* 124 */ ts + 1866, /* "Insert" */ - /* 125 */ ts + 1873, /* "RowCell" */ - /* 126 */ ts + 1881, /* "Delete" */ - /* 127 */ ts + 1888, /* "ResetCount" */ - /* 128 */ ts + 1899, /* "SorterCompare" */ - /* 129 */ ts + 1913, /* "SorterData" */ - /* 130 */ ts + 1924, /* "RowData" */ - /* 131 */ ts + 1932, /* "Rowid" */ - /* 132 */ ts + 1938, /* "NullRow" */ - /* 133 */ ts + 1946, /* "SeekEnd" */ - /* 134 */ ts + 1954, /* "IdxInsert" */ - /* 135 */ ts + 1964, /* "SorterInsert" */ - /* 136 */ ts + 1977, /* "IdxDelete" */ - /* 137 */ ts + 1987, /* "DeferredSeek" */ - /* 138 */ ts + 2000, /* "IdxRowid" */ - /* 139 */ ts + 2009, /* "FinishSeek" */ - /* 140 */ ts + 2020, /* "Destroy" */ - /* 141 */ ts + 2028, /* "Clear" */ - /* 142 */ ts + 2034, /* "ResetSorter" */ - /* 143 */ ts + 2046, /* "CreateBtree" */ - /* 144 */ ts + 2058, /* "SqlExec" */ - /* 145 */ ts + 2066, /* "ParseSchema" */ - /* 146 */ ts + 2078, /* "LoadAnalysis" */ - /* 147 */ ts + 2091, /* "DropTable" */ - /* 148 */ ts + 2101, /* "DropIndex" */ - /* 149 */ ts + 2111, /* "DropTrigger" */ - /* 150 */ ts + 2123, /* "IntegrityCk" */ - /* 151 */ ts + 2135, /* "RowSetAdd" */ - /* 152 */ ts + 2145, /* "Real" */ - /* 153 */ ts + 2150, /* "Param" */ - /* 154 */ ts + 2156, /* "FkCounter" */ - /* 155 */ ts + 2166, /* "MemMax" */ - /* 156 */ ts + 2173, /* "OffsetLimit" */ - /* 157 */ ts + 2185, /* "AggInverse" */ - /* 158 */ ts + 2196, /* "AggStep" */ - /* 159 */ ts + 2204, /* "AggStep1" */ - /* 160 */ ts + 2213, /* "AggValue" */ - /* 161 */ ts + 2222, /* "AggFinal" */ - /* 162 */ ts + 2231, /* "Expire" */ - /* 163 */ ts + 2238, /* "CursorLock" */ - /* 164 */ ts + 2249, /* "CursorUnlock" */ - /* 165 */ ts + 2262, /* "TableLock" */ - /* 166 */ ts + 2272, /* "VBegin" */ - /* 167 */ ts + 2279, /* "VCreate" */ - /* 168 */ ts + 2287, /* "VDestroy" */ - /* 169 */ ts + 2296, /* "VOpen" */ - /* 170 */ ts + 2302, /* "VColumn" */ - /* 171 */ ts + 2310, /* "VRename" */ - /* 172 */ ts + 2318, /* "Pagecount" */ - /* 173 */ ts + 2328, /* "MaxPgcnt" */ - /* 174 */ ts + 2337, /* "Trace" */ - /* 175 */ ts + 2343, /* "CursorHint" */ - /* 176 */ ts + 2354, /* "ReleaseReg" */ - /* 177 */ ts + 2365, /* "Noop" */ - /* 178 */ ts + 2370, /* "Explain" */ - /* 179 */ ts + 2378, /* "Abortable" */ + /* 0 */ ts + 882, /* "Savepoint" */ + /* 1 */ ts + 892, /* "AutoCommit" */ + /* 2 */ ts + 903, /* "Transaction" */ + /* 3 */ ts + 915, /* "SorterNext" */ + /* 4 */ ts + 926, /* "Prev" */ + /* 5 */ ts + 931, /* "Next" */ + /* 6 */ ts + 936, /* "Checkpoint" */ + /* 7 */ ts + 947, /* "JournalMode" */ + /* 8 */ ts + 959, /* "Vacuum" */ + /* 9 */ ts + 966, /* "VFilter" */ + /* 10 */ ts + 974, /* "VUpdate" */ + /* 11 */ ts + 982, /* "Goto" */ + /* 12 */ ts + 987, /* "Gosub" */ + /* 13 */ ts + 993, /* "InitCoroutine" */ + /* 14 */ ts + 1007, /* "Yield" */ + /* 15 */ ts + 1013, /* "MustBeInt" */ + /* 16 */ ts + 1023, /* "Jump" */ + /* 17 */ ts + 1028, /* "Once" */ + /* 18 */ ts + 1033, /* "If" */ + /* 19 */ ts + 1036, /* "Not" */ + /* 20 */ ts + 1040, /* "IfNot" */ + /* 21 */ ts + 1046, /* "IfNullRow" */ + /* 22 */ ts + 1056, /* "SeekLT" */ + /* 23 */ ts + 1063, /* "SeekLE" */ + /* 24 */ ts + 1070, /* "SeekGE" */ + /* 25 */ ts + 1077, /* "SeekGT" */ + /* 26 */ ts + 1084, /* "IfNotOpen" */ + /* 27 */ ts + 1094, /* "IfNoHope" */ + /* 28 */ ts + 1103, /* "NoConflict" */ + /* 29 */ ts + 1114, /* "NotFound" */ + /* 30 */ ts + 1123, /* "Found" */ + /* 31 */ ts + 1129, /* "SeekRowid" */ + /* 32 */ ts + 1139, /* "NotExists" */ + /* 33 */ ts + 1149, /* "Last" */ + /* 34 */ ts + 1154, /* "IfSmaller" */ + /* 35 */ ts + 1164, /* "SorterSort" */ + /* 36 */ ts + 1175, /* "Sort" */ + /* 37 */ ts + 1180, /* "Rewind" */ + /* 38 */ ts + 1187, /* "IdxLE" */ + /* 39 */ ts + 1193, /* "IdxGT" */ + /* 40 */ ts + 1199, /* "IdxLT" */ + /* 41 */ ts + 1205, /* "IdxGE" */ + /* 42 */ ts + 1211, /* "RowSetRead" */ + /* 43 */ ts + 1222, /* "Or" */ + /* 44 */ ts + 1225, /* "And" */ + /* 45 */ ts + 1229, /* "RowSetTest" */ + /* 46 */ ts + 1240, /* "Program" */ + /* 47 */ ts + 1248, /* "FkIfZero" */ + /* 48 */ ts + 1257, /* "IfPos" */ + /* 49 */ ts + 1263, /* "IfNotZero" */ + /* 50 */ ts + 1273, /* "IsNull" */ + /* 51 */ ts + 1280, /* "NotNull" */ + /* 52 */ ts + 1288, /* "Ne" */ + /* 53 */ ts + 1291, /* "Eq" */ + /* 54 */ ts + 1294, /* "Gt" */ + /* 55 */ ts + 1297, /* "Le" */ + /* 56 */ ts + 1300, /* "Lt" */ + /* 57 */ ts + 1303, /* "Ge" */ + /* 58 */ ts + 1306, /* "ElseEq" */ + /* 59 */ ts + 1313, /* "DecrJumpZero" */ + /* 60 */ ts + 1326, /* "IncrVacuum" */ + /* 61 */ ts + 1337, /* "VNext" */ + /* 62 */ ts + 1343, /* "Init" */ + /* 63 */ ts + 1348, /* "PureFunc" */ + /* 64 */ ts + 1357, /* "Function" */ + /* 65 */ ts + 1366, /* "Return" */ + /* 66 */ ts + 1373, /* "EndCoroutine" */ + /* 67 */ ts + 1386, /* "HaltIfNull" */ + /* 68 */ ts + 1397, /* "Halt" */ + /* 69 */ ts + 1402, /* "Integer" */ + /* 70 */ ts + 1410, /* "Int64" */ + /* 71 */ ts + 1416, /* "String" */ + /* 72 */ ts + 1423, /* "Null" */ + /* 73 */ ts + 1428, /* "SoftNull" */ + /* 74 */ ts + 1437, /* "Blob" */ + /* 75 */ ts + 1442, /* "Variable" */ + /* 76 */ ts + 1451, /* "Move" */ + /* 77 */ ts + 1456, /* "Copy" */ + /* 78 */ ts + 1461, /* "SCopy" */ + /* 79 */ ts + 1467, /* "IntCopy" */ + /* 80 */ ts + 1475, /* "ChngCntRow" */ + /* 81 */ ts + 1486, /* "ResultRow" */ + /* 82 */ ts + 1496, /* "CollSeq" */ + /* 83 */ ts + 1504, /* "AddImm" */ + /* 84 */ ts + 1511, /* "RealAffinity" */ + /* 85 */ ts + 1524, /* "Cast" */ + /* 86 */ ts + 1529, /* "Permutation" */ + /* 87 */ ts + 1541, /* "Compare" */ + /* 88 */ ts + 1549, /* "IsTrue" */ + /* 89 */ ts + 1556, /* "ZeroOrNull" */ + /* 90 */ ts + 1567, /* "Offset" */ + /* 91 */ ts + 1574, /* "Column" */ + /* 92 */ ts + 1581, /* "Affinity" */ + /* 93 */ ts + 1590, /* "MakeRecord" */ + /* 94 */ ts + 1601, /* "Count" */ + /* 95 */ ts + 1607, /* "ReadCookie" */ + /* 96 */ ts + 1618, /* "SetCookie" */ + /* 97 */ ts + 1628, /* "ReopenIdx" */ + /* 98 */ ts + 1638, /* "OpenRead" */ + /* 99 */ ts + 1647, /* "OpenWrite" */ + /* 100 */ ts + 1657, /* "OpenDup" */ + /* 101 */ ts + 1665, /* "OpenAutoindex" */ + /* 102 */ ts + 1679, /* "BitAnd" */ + /* 103 */ ts + 1686, /* "BitOr" */ + /* 104 */ ts + 1692, /* "ShiftLeft" */ + /* 105 */ ts + 1702, /* "ShiftRight" */ + /* 106 */ ts + 1713, /* "Add" */ + /* 107 */ ts + 1717, /* "Subtract" */ + /* 108 */ ts + 1726, /* "Multiply" */ + /* 109 */ ts + 1735, /* "Divide" */ + /* 110 */ ts + 1742, /* "Remainder" */ + /* 111 */ ts + 1752, /* "Concat" */ + /* 112 */ ts + 1759, /* "OpenEphemeral" */ + /* 113 */ ts + 1773, /* "BitNot" */ + /* 114 */ ts + 1780, /* "SorterOpen" */ + /* 115 */ ts + 1791, /* "SequenceTest" */ + /* 116 */ ts + 1804, /* "String8" */ + /* 117 */ ts + 1812, /* "OpenPseudo" */ + /* 118 */ ts + 1823, /* "Close" */ + /* 119 */ ts + 1829, /* "ColumnsUsed" */ + /* 120 */ ts + 1841, /* "SeekScan" */ + /* 121 */ ts + 1850, /* "SeekHit" */ + /* 122 */ ts + 1858, /* "Sequence" */ + /* 123 */ ts + 1867, /* "NewRowid" */ + /* 124 */ ts + 1876, /* "Insert" */ + /* 125 */ ts + 1883, /* "RowCell" */ + /* 126 */ ts + 1891, /* "Delete" */ + /* 127 */ ts + 1898, /* "ResetCount" */ + /* 128 */ ts + 1909, /* "SorterCompare" */ + /* 129 */ ts + 1923, /* "SorterData" */ + /* 130 */ ts + 1934, /* "RowData" */ + /* 131 */ ts + 1942, /* "Rowid" */ + /* 132 */ ts + 1948, /* "NullRow" */ + /* 133 */ ts + 1956, /* "SeekEnd" */ + /* 134 */ ts + 1964, /* "IdxInsert" */ + /* 135 */ ts + 1974, /* "SorterInsert" */ + /* 136 */ ts + 1987, /* "IdxDelete" */ + /* 137 */ ts + 1997, /* "DeferredSeek" */ + /* 138 */ ts + 2010, /* "IdxRowid" */ + /* 139 */ ts + 2019, /* "FinishSeek" */ + /* 140 */ ts + 2030, /* "Destroy" */ + /* 141 */ ts + 2038, /* "Clear" */ + /* 142 */ ts + 2044, /* "ResetSorter" */ + /* 143 */ ts + 2056, /* "CreateBtree" */ + /* 144 */ ts + 2068, /* "SqlExec" */ + /* 145 */ ts + 2076, /* "ParseSchema" */ + /* 146 */ ts + 2088, /* "LoadAnalysis" */ + /* 147 */ ts + 2101, /* "DropTable" */ + /* 148 */ ts + 2111, /* "DropIndex" */ + /* 149 */ ts + 2121, /* "DropTrigger" */ + /* 150 */ ts + 2133, /* "IntegrityCk" */ + /* 151 */ ts + 2145, /* "RowSetAdd" */ + /* 152 */ ts + 2155, /* "Real" */ + /* 153 */ ts + 2160, /* "Param" */ + /* 154 */ ts + 2166, /* "FkCounter" */ + /* 155 */ ts + 2176, /* "MemMax" */ + /* 156 */ ts + 2183, /* "OffsetLimit" */ + /* 157 */ ts + 2195, /* "AggInverse" */ + /* 158 */ ts + 2206, /* "AggStep" */ + /* 159 */ ts + 2214, /* "AggStep1" */ + /* 160 */ ts + 2223, /* "AggValue" */ + /* 161 */ ts + 2232, /* "AggFinal" */ + /* 162 */ ts + 2241, /* "Expire" */ + /* 163 */ ts + 2248, /* "CursorLock" */ + /* 164 */ ts + 2259, /* "CursorUnlock" */ + /* 165 */ ts + 2272, /* "TableLock" */ + /* 166 */ ts + 2282, /* "VBegin" */ + /* 167 */ ts + 2289, /* "VCreate" */ + /* 168 */ ts + 2297, /* "VDestroy" */ + /* 169 */ ts + 2306, /* "VOpen" */ + /* 170 */ ts + 2312, /* "VColumn" */ + /* 171 */ ts + 2320, /* "VRename" */ + /* 172 */ ts + 2328, /* "Pagecount" */ + /* 173 */ ts + 2338, /* "MaxPgcnt" */ + /* 174 */ ts + 2347, /* "Trace" */ + /* 175 */ ts + 2353, /* "CursorHint" */ + /* 176 */ ts + 2364, /* "ReleaseReg" */ + /* 177 */ ts + 2375, /* "Noop" */ + /* 178 */ ts + 2380, /* "Explain" */ + /* 179 */ ts + 2388, /* "Abortable" */ } /* sqlite3.c:33673:20 */ //************* End of opcodes.c ******************************************** @@ -20901,7 +21147,7 @@ var azName = [180]uintptr{ // Use pread() and pwrite() if they are available // standard include files. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20916,11 +21162,11 @@ var azName = [180]uintptr{ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 2.6 Primitive System Data Types -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20935,11 +21181,11 @@ var azName = [180]uintptr{ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 5.6 File Characteristics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20954,10 +21200,10 @@ var azName = [180]uintptr{ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20972,7 +21218,7 @@ var azName = [180]uintptr{ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -20981,7 +21227,7 @@ var azName = [180]uintptr{ // The Single Unix specification says that some more types are // available here. -// Copyright (C) 1999-2018 Free Software Foundation, Inc. +// Copyright (C) 1999-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20996,28 +21242,28 @@ var azName = [180]uintptr{ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Versions of the `struct stat' data structure. // i386 versions of the `xmknod' interface. type stat = struct { - Fst_dev X__dev_t - F__pad1 uint16 - _ [2]byte - F__st_ino X__ino_t - Fst_mode X__mode_t - Fst_nlink X__nlink_t - Fst_uid X__uid_t - Fst_gid X__gid_t - Fst_rdev X__dev_t - F__pad2 uint16 - _ [2]byte - Fst_size X__off64_t - Fst_blksize X__blksize_t - Fst_blocks X__blkcnt64_t - Fst_atim struct { + Fst_dev X__dev_t + F__pad1 uint16 + F__ccgo_pad1 [2]byte + F__st_ino X__ino_t + Fst_mode X__mode_t + Fst_nlink X__nlink_t + Fst_uid X__uid_t + Fst_gid X__gid_t + Fst_rdev X__dev_t + F__pad2 uint16 + F__ccgo_pad2 [2]byte + Fst_size X__off64_t + Fst_blksize X__blksize_t + Fst_blocks X__blkcnt64_t + Fst_atim struct { Ftv_sec X__time_t Ftv_nsec X__syscall_slong_t } @@ -21061,8 +21307,8 @@ type stat64 = struct { Fst_ino X__ino64_t } /* stat.h:119:1 */ -// statx-related definitions and declarations. -// Copyright (C) 2018 Free Software Foundation, Inc. +// statx-related definitions and declarations. Linux version. +// Copyright (C) 2018-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21077,61 +21323,255 @@ type stat64 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // This interface is based on in Linux. -type statx_timestamp = struct { - Ftv_sec X__int64_t - Ftv_nsec X__uint32_t - F__statx_timestamp_pad1 [1]X__int32_t -} /* statx.h:25:1 */ +// Use the Linux kernel header if available. -// Warning: The kernel may add additional fields to this struct in the -// future. Only use this struct for calling the statx function, not -// for storing data. (Expansion will be controlled by the mask -// argument of the statx function.) +// Use "" to work around incorrect macro expansion of the +// __has_include argument (GCC PR 80005). +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note +// int-ll64 is used everywhere now. +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note +// asm-generic/int-ll64.h +// +// Integer declarations for architectures which use "long long" +// for 64-bit types. + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// There seems to be no way of detecting this automatically from user +// space, so 64 bit architectures should override this in their +// bitsperlong.h. In particular, an architecture that supports +// both 32 and 64 bit user space must not rely on CONFIG_64BIT +// to decide it, but rather check a compiler provided macro. + +// __xx is ok: it doesn't pollute the POSIX namespace. Use these in the +// header files exported to user space + +type X__s8 = int8 /* int-ll64.h:20:25 */ +type X__u8 = uint8 /* int-ll64.h:21:23 */ + +type X__s16 = int16 /* int-ll64.h:23:26 */ +type X__u16 = uint16 /* int-ll64.h:24:24 */ + +type X__s32 = int32 /* int-ll64.h:26:24 */ +type X__u32 = uint32 /* int-ll64.h:27:22 */ + +type X__s64 = int64 /* int-ll64.h:30:44 */ +type X__u64 = uint64 /* int-ll64.h:31:42 */ + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// This allows for 1024 file descriptors: if NR_OPEN is ever grown +// beyond that you'll have to change this too. But 1024 fd's seem to be +// enough even for such "real" unices like OSF/1, so hopefully this is +// one limit that doesn't have to be changed [again]. +// +// Note that POSIX wants the FD_CLEAR(fd,fdsetp) defines to be in +// (and thus ) - but this is a more logical +// place for them. Solved by having dummy defines in . + +// This macro may have been defined in . But we always +// use the one here. + +type X__kernel_fd_set = struct{ Ffds_bits [32]uint32 } /* posix_types.h:27:3 */ + +// Type of a signal handler. +type X__kernel_sighandler_t = uintptr /* posix_types.h:30:14 */ + +// Type of a SYSV IPC key. +type X__kernel_key_t = int32 /* posix_types.h:33:13 */ +type X__kernel_mqd_t = int32 /* posix_types.h:34:13 */ + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// This file is generally used by user-level software, so you need to +// be a little careful about namespace pollution etc. Also, we cannot +// assume GCC is being used. + +type X__kernel_mode_t = uint16 /* posix_types_32.h:11:24 */ + +type X__kernel_ipc_pid_t = uint16 /* posix_types_32.h:14:24 */ + +type X__kernel_uid_t = uint16 /* posix_types_32.h:17:24 */ +type X__kernel_gid_t = uint16 /* posix_types_32.h:18:24 */ + +type X__kernel_old_dev_t = uint16 /* posix_types_32.h:21:24 */ + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// This file is generally used by user-level software, so you need to +// be a little careful about namespace pollution etc. +// +// First the types that are often defined in different ways across +// architectures, so that you can override them. + +type X__kernel_long_t = int32 /* posix_types.h:15:15 */ +type X__kernel_ulong_t = uint32 /* posix_types.h:16:23 */ + +type X__kernel_ino_t = X__kernel_ulong_t /* posix_types.h:20:26 */ + +type X__kernel_pid_t = int32 /* posix_types.h:28:14 */ + +type X__kernel_suseconds_t = X__kernel_long_t /* posix_types.h:41:26 */ + +type X__kernel_daddr_t = int32 /* posix_types.h:45:14 */ + +type X__kernel_uid32_t = uint32 /* posix_types.h:49:22 */ +type X__kernel_gid32_t = uint32 /* posix_types.h:50:22 */ + +type X__kernel_old_uid_t = X__kernel_uid_t /* posix_types.h:54:24 */ +type X__kernel_old_gid_t = X__kernel_gid_t /* posix_types.h:55:24 */ + +// Most 32 bit architectures use "unsigned int" size_t, +// and all 64 bit architectures use "unsigned long" size_t. +type X__kernel_size_t = uint32 /* posix_types.h:68:22 */ +type X__kernel_ssize_t = int32 /* posix_types.h:69:14 */ +type X__kernel_ptrdiff_t = int32 /* posix_types.h:70:14 */ + +type X__kernel_fsid_t = struct{ Fval [2]int32 } /* posix_types.h:81:3 */ + +// anything below here should be completely generic +type X__kernel_off_t = X__kernel_long_t /* posix_types.h:87:25 */ +type X__kernel_loff_t = int64 /* posix_types.h:88:19 */ +type X__kernel_old_time_t = X__kernel_long_t /* posix_types.h:89:25 */ +type X__kernel_time_t = X__kernel_long_t /* posix_types.h:90:25 */ +type X__kernel_time64_t = int64 /* posix_types.h:91:19 */ +type X__kernel_clock_t = X__kernel_long_t /* posix_types.h:92:25 */ +type X__kernel_timer_t = int32 /* posix_types.h:93:14 */ +type X__kernel_clockid_t = int32 /* posix_types.h:94:14 */ +type X__kernel_caddr_t = uintptr /* posix_types.h:95:14 */ +type X__kernel_uid16_t = uint16 /* posix_types.h:96:24 */ +type X__kernel_gid16_t = uint16 /* posix_types.h:97:24 */ + +// Below are truly Linux-specific types that should never collide with +// any application/library that wants linux/types.h. + +type X__le16 = X__u16 /* types.h:24:25 */ +type X__be16 = X__u16 /* types.h:25:25 */ +type X__le32 = X__u32 /* types.h:26:25 */ +type X__be32 = X__u32 /* types.h:27:25 */ +type X__le64 = X__u64 /* types.h:28:25 */ +type X__be64 = X__u64 /* types.h:29:25 */ + +type X__sum16 = X__u16 /* types.h:31:25 */ +type X__wsum = X__u32 /* types.h:32:25 */ + +// aligned_u64 should be used in defining kernel<->userspace ABIs to avoid +// common 32/64-bit compat problems. +// 64-bit values align to 4-byte boundaries on x86_32 (and possibly other +// architectures) and to 8-byte boundaries on 64-bit architectures. The new +// aligned_64 type enforces 8-byte alignment so that structs containing +// aligned_64 values have the same alignment on 32-bit and 64-bit architectures. +// No conversions are necessary between 32-bit user-space and a 64-bit kernel. + +type X__poll_t = uint32 /* types.h:47:28 */ + +// Timestamp structure for the timestamps in struct statx. +// +// tv_sec holds the number of seconds before (negative) or after (positive) +// 00:00:00 1st January 1970 UTC. +// +// tv_nsec holds a number of nanoseconds (0..999,999,999) after the tv_sec time. +// +// __reserved is held in case we need a yet finer resolution. +type statx_timestamp = struct { + Ftv_sec X__s64 + Ftv_nsec X__u32 + F__reserved X__s32 +} /* stat.h:56:1 */ + +// Structures for the extended file attribute retrieval system call +// (statx()). +// +// The caller passes a mask of what they're specifically interested in as a +// parameter to statx(). What statx() actually got will be indicated in +// st_mask upon return. +// +// For each bit in the mask argument: +// +// - if the datum is not supported: +// +// - the bit will be cleared, and +// +// - the datum will be set to an appropriate fabricated value if one is +// available (eg. CIFS can take a default uid and gid), otherwise +// +// - the field will be cleared; +// +// - otherwise, if explicitly requested: +// +// - the datum will be synchronised to the server if AT_STATX_FORCE_SYNC is +// set or if the datum is considered out of date, and +// +// - the field will be filled in and the bit will be set; +// +// - otherwise, if not requested, but available in approximate form without any +// effort, it will be filled in anyway, and the bit will be set upon return +// (it might not be up to date, however, and no attempt will be made to +// synchronise the internal state first); +// +// - otherwise the field and the bit will be cleared before returning. +// +// Items in STATX_BASIC_STATS may be marked unavailable on return, but they +// will have values installed for compatibility purposes so that stat() and +// co. can be emulated in userspace. type statx = struct { - Fstx_mask X__uint32_t - Fstx_blksize X__uint32_t - Fstx_attributes X__uint64_t - Fstx_nlink X__uint32_t - Fstx_uid X__uint32_t - Fstx_gid X__uint32_t - Fstx_mode X__uint16_t - F__statx_pad1 [1]X__uint16_t - Fstx_ino X__uint64_t - Fstx_size X__uint64_t - Fstx_blocks X__uint64_t - Fstx_attributes_mask X__uint64_t + Fstx_mask X__u32 + Fstx_blksize X__u32 + Fstx_attributes X__u64 + Fstx_nlink X__u32 + Fstx_uid X__u32 + Fstx_gid X__u32 + Fstx_mode X__u16 + F__spare0 [1]X__u16 + Fstx_ino X__u64 + Fstx_size X__u64 + Fstx_blocks X__u64 + Fstx_attributes_mask X__u64 Fstx_atime struct { - Ftv_sec X__int64_t - Ftv_nsec X__uint32_t - F__statx_timestamp_pad1 [1]X__int32_t + Ftv_sec X__s64 + Ftv_nsec X__u32 + F__reserved X__s32 } Fstx_btime struct { - Ftv_sec X__int64_t - Ftv_nsec X__uint32_t - F__statx_timestamp_pad1 [1]X__int32_t + Ftv_sec X__s64 + Ftv_nsec X__u32 + F__reserved X__s32 } Fstx_ctime struct { - Ftv_sec X__int64_t - Ftv_nsec X__uint32_t - F__statx_timestamp_pad1 [1]X__int32_t + Ftv_sec X__s64 + Ftv_nsec X__u32 + F__reserved X__s32 } Fstx_mtime struct { - Ftv_sec X__int64_t - Ftv_nsec X__uint32_t - F__statx_timestamp_pad1 [1]X__int32_t + Ftv_sec X__s64 + Ftv_nsec X__u32 + F__reserved X__s32 } - Fstx_rdev_major X__uint32_t - Fstx_rdev_minor X__uint32_t - Fstx_dev_major X__uint32_t - Fstx_dev_minor X__uint32_t - F__statx_pad2 [14]X__uint64_t -} /* statx.h:36:1 */ + Fstx_rdev_major X__u32 + Fstx_rdev_minor X__u32 + Fstx_dev_major X__u32 + Fstx_dev_minor X__u32 + Fstx_mnt_id X__u64 + F__spare2 X__u64 + F__spare3 [12]X__u64 +} /* stat.h:99:1 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21146,11 +21586,11 @@ type statx = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 6.5 File Control Operations -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21165,13 +21605,13 @@ type statx = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // This must be early so can define types winningly. // Get __mode_t, __dev_t and __off_t . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21186,14 +21626,14 @@ type statx = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // Get the definitions of O_*, F_*, FD_*: all the // numbers and flag bits for `open', `fcntl', et al. // O_*, F_*, FD_* bit values for Linux/x86. -// Copyright (C) 2001-2018 Free Software Foundation, Inc. +// Copyright (C) 2001-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21208,7 +21648,7 @@ type statx = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . type flock = struct { Fl_type int16 @@ -21228,7 +21668,7 @@ type flock64 = struct { // Include generic Linux declarations. // O_*, F_*, FD_* bit values for Linux. -// Copyright (C) 2001-2018 Free Software Foundation, Inc. +// Copyright (C) 2001-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21243,7 +21683,7 @@ type flock64 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // This file contains shared definitions between Linux architectures // and is included by to declare them. The various @@ -21259,7 +21699,7 @@ type flock64 = struct { // #include // Define struct iovec. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21274,9 +21714,9 @@ type flock64 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -21308,15 +21748,6 @@ type flock64 = struct { // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -21353,11 +21784,6 @@ type flock64 = struct { // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Offset of member MEMBER in a struct of type TYPE. @@ -21384,6 +21810,8 @@ type f_owner_ex = struct { // Advise to `posix_fadvise'. // Flags for SYNC_FILE_RANGE. +// SYNC_FILE_RANGE_WRITE_AND_WAIT ensures all pages in the range are +// written to disk before returning. // Flags for SPLICE and VMSPLICE. @@ -21451,14 +21879,14 @@ type f_owner_ex = struct { // File handle structure. type file_handle = struct { - _ [0]uint32 + F__ccgo_pad1 [0]uint32 Fhandle_bytes uint32 Fhandle_type int32 -} /* fcntl-linux.h:350:1 */ +} /* fcntl-linux.h:357:1 */ // Define some inlines helping to catch common problems. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21473,9 +21901,9 @@ type file_handle = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21490,10 +21918,10 @@ type file_handle = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Get the list of `ioctl' requests and related constants. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21508,7 +21936,7 @@ type file_handle = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Use the definitions from the kernel header files. // SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note @@ -21591,7 +22019,7 @@ type file_handle = struct { // Define some types used by `ioctl' requests. // Structure types for pre-termios terminal ioctls. Linux version. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21606,7 +22034,7 @@ type file_handle = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Get definition of constants for use with `ioctl'. // SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note @@ -21619,16 +22047,16 @@ type winsize = struct { } /* ioctl-types.h:27:1 */ type termio = struct { - Fc_iflag uint16 - Fc_oflag uint16 - Fc_cflag uint16 - Fc_lflag uint16 - Fc_line uint8 - Fc_cc [8]uint8 - _ [1]byte + Fc_iflag uint16 + Fc_oflag uint16 + Fc_cflag uint16 + Fc_lflag uint16 + Fc_line uint8 + Fc_cc [8]uint8 + F__ccgo_pad1 [1]byte } /* ioctl-types.h:36:1 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21643,11 +22071,11 @@ type termio = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 2.10 Symbolic Constants -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21662,7 +22090,7 @@ type termio = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // These may be used to determine what facilities are present at compile time. // Their values can be obtained at run time from `sysconf'. @@ -21788,7 +22216,7 @@ type termio = struct { // // Define POSIX options for Linux. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21803,13 +22231,16 @@ type termio = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; see the file COPYING.LIB. If -// not, see . +// not, see . // Job control is supported. // Processes have a saved set-user-ID and a saved set-group-ID. -// Priority scheduling is supported. +// Priority scheduling is not supported with the correct semantics, +// but GNU/Linux applications expect that the corresponding interfaces +// are available, even though the semantics do not meet the POSIX +// requirements. See glibc bug 14829. // Synchronizing file data is supported. @@ -21912,7 +22343,7 @@ type termio = struct { // Typed memory objects are not available. // Get the environment definitions from Unix98. -// Copyright (C) 1999-2018 Free Software Foundation, Inc. +// Copyright (C) 1999-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21927,7 +22358,7 @@ type termio = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Determine the wordsize from the preprocessor defines. @@ -21971,7 +22402,7 @@ type termio = struct { // All functions that are not declared anywhere else. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21986,11 +22417,11 @@ type termio = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -22022,15 +22453,6 @@ type termio = struct { // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -22067,11 +22489,6 @@ type termio = struct { // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Offset of member MEMBER in a struct of type TYPE. @@ -22083,10 +22500,8 @@ type Intptr_t = X__intptr_t /* unistd.h:267:20 */ type Socklen_t = X__socklen_t /* unistd.h:274:21 */ -// Define some macros helping to catch buffer overflows. - // #include -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -22101,9 +22516,9 @@ type Socklen_t = X__socklen_t /* unistd.h:274:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -22118,10 +22533,10 @@ type Socklen_t = X__socklen_t /* unistd.h:274:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -22136,12 +22551,12 @@ type Socklen_t = X__socklen_t /* unistd.h:274:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // `fd_set' type and related macros, and `select'/`pselect' declarations. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -22156,7 +22571,7 @@ type Socklen_t = X__socklen_t /* unistd.h:274:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX 1003.1g: 6.2 Select from File Descriptor Sets @@ -22169,8 +22584,6 @@ type timezone = struct { Ftz_dsttime int32 } /* time.h:52:1 */ -type X__timezone_ptr_t = uintptr /* time.h:58:25 */ - // Type of the second argument to `getitimer' and // the second and third arguments `setitimer'. type itimerval = struct { @@ -22182,14 +22595,14 @@ type itimerval = struct { Ftv_sec X__time_t Ftv_usec X__suseconds_t } -} /* time.h:104:1 */ +} /* time.h:105:1 */ // Use the nicer parameter type only in GNU mode and not for C++ since the // strict C++ rules prevent the automatic promotion. -type X__itimer_which_t = uint32 /* time.h:115:29 */ +type X__itimer_which_t = uint32 /* time.h:116:29 */ // Define error_t. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -22204,7 +22617,7 @@ type X__itimer_which_t = uint32 /* time.h:115:29 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . type Error_t = int32 /* error_t.h:22:13 */ @@ -22240,13 +22653,13 @@ type Error_t = int32 /* error_t.h:22:13 */ // Forward references type unixShm = struct { - FpShmNode uintptr - FpNext uintptr - FhasMutex U8 - Fid U8 - FsharedMask U16 - FexclMask U16 - _ [2]byte + FpShmNode uintptr + FpNext uintptr + FhasMutex U8 + Fid U8 + FsharedMask U16 + FexclMask U16 + F__ccgo_pad1 [2]byte } /* sqlite3.c:34057:9 */ // Try to determine if gethostuuid() is available based on standard @@ -22308,7 +22721,7 @@ type unixInodeInfo = struct { FnLock int32 FeFileLock uint8 FbProcessLock uint8 - _ [2]byte + F__ccgo_pad1 [2]byte FpUnused uintptr FnRef int32 FpShmNode uintptr @@ -22335,7 +22748,7 @@ type unixFile = struct { FpInode uintptr Fh int32 FeFileLock uint8 - _ [1]byte + F__ccgo_pad1 [1]byte FctrlFlags uint16 FlastErrno int32 FlockingContext uintptr @@ -22440,67 +22853,67 @@ type unix_syscall = struct { // testing and sandboxing. The following array holds the names and pointers // to all overrideable system calls. var aSyscall = [29]unix_syscall{ - {FzName: ts + 2388 /* "open" */, FpCurrent: 0}, + {FzName: ts + 2398 /* "open" */, FpCurrent: 0}, - {FzName: ts + 2393 /* "close" */, FpCurrent: 0}, + {FzName: ts + 2403 /* "close" */, FpCurrent: 0}, - {FzName: ts + 2399 /* "access" */, FpCurrent: 0}, + {FzName: ts + 2409 /* "access" */, FpCurrent: 0}, - {FzName: ts + 2406 /* "getcwd" */, FpCurrent: 0}, + {FzName: ts + 2416 /* "getcwd" */, FpCurrent: 0}, - {FzName: ts + 2413 /* "stat" */, FpCurrent: 0}, + {FzName: ts + 2423 /* "stat" */, FpCurrent: 0}, // The DJGPP compiler environment looks mostly like Unix, but it // lacks the fcntl() system call. So redefine fcntl() to be something // that always succeeds. This means that locking does not occur under // DJGPP. But it is DOS - what did you expect? - {FzName: ts + 2418 /* "fstat" */, FpCurrent: 0}, + {FzName: ts + 2428 /* "fstat" */, FpCurrent: 0}, - {FzName: ts + 2424 /* "ftruncate" */, FpCurrent: 0}, + {FzName: ts + 2434 /* "ftruncate" */, FpCurrent: 0}, - {FzName: ts + 2434 /* "fcntl" */, FpCurrent: 0}, + {FzName: ts + 2444 /* "fcntl" */, FpCurrent: 0}, - {FzName: ts + 2440 /* "read" */, FpCurrent: 0}, + {FzName: ts + 2450 /* "read" */, FpCurrent: 0}, - {FzName: ts + 2445 /* "pread" */}, + {FzName: ts + 2455 /* "pread" */}, - {FzName: ts + 2451 /* "pread64" */}, + {FzName: ts + 2461 /* "pread64" */}, - {FzName: ts + 2459 /* "write" */, FpCurrent: 0}, + {FzName: ts + 2469 /* "write" */, FpCurrent: 0}, - {FzName: ts + 2465 /* "pwrite" */}, + {FzName: ts + 2475 /* "pwrite" */}, - {FzName: ts + 2472 /* "pwrite64" */}, + {FzName: ts + 2482 /* "pwrite64" */}, - {FzName: ts + 2481 /* "fchmod" */, FpCurrent: 0}, + {FzName: ts + 2491 /* "fchmod" */, FpCurrent: 0}, - {FzName: ts + 2488 /* "fallocate" */}, + {FzName: ts + 2498 /* "fallocate" */}, - {FzName: ts + 2498 /* "unlink" */, FpCurrent: 0}, + {FzName: ts + 2508 /* "unlink" */, FpCurrent: 0}, - {FzName: ts + 2505 /* "openDirectory" */, FpCurrent: 0}, + {FzName: ts + 2515 /* "openDirectory" */, FpCurrent: 0}, - {FzName: ts + 2519 /* "mkdir" */, FpCurrent: 0}, + {FzName: ts + 2529 /* "mkdir" */, FpCurrent: 0}, - {FzName: ts + 2525 /* "rmdir" */, FpCurrent: 0}, + {FzName: ts + 2535 /* "rmdir" */, FpCurrent: 0}, - {FzName: ts + 2531 /* "fchown" */, FpCurrent: 0}, + {FzName: ts + 2541 /* "fchown" */, FpCurrent: 0}, - {FzName: ts + 2538 /* "geteuid" */, FpCurrent: 0}, + {FzName: ts + 2548 /* "geteuid" */, FpCurrent: 0}, - {FzName: ts + 2546 /* "mmap" */, FpCurrent: 0}, + {FzName: ts + 2556 /* "mmap" */, FpCurrent: 0}, - {FzName: ts + 2551 /* "munmap" */, FpCurrent: 0}, + {FzName: ts + 2561 /* "munmap" */, FpCurrent: 0}, - {FzName: ts + 2558 /* "mremap" */, FpCurrent: 0}, + {FzName: ts + 2568 /* "mremap" */, FpCurrent: 0}, - {FzName: ts + 2565 /* "getpagesize" */, FpCurrent: 0}, + {FzName: ts + 2575 /* "getpagesize" */, FpCurrent: 0}, - {FzName: ts + 2577 /* "readlink" */, FpCurrent: 0}, + {FzName: ts + 2587 /* "readlink" */, FpCurrent: 0}, - {FzName: ts + 2586 /* "lstat" */, FpCurrent: 0}, + {FzName: ts + 2596 /* "lstat" */, FpCurrent: 0}, - {FzName: ts + 2592 /* "ioctl" */}, + {FzName: ts + 2602 /* "ioctl" */}, } /* sqlite3.c:34446:3 */ // End of the overrideable system calls @@ -22634,9 +23047,9 @@ func robust_open(tls *libc.TLS, z uintptr, f int32, m Mode_t) int32 { /* sqlite3 } (*(*func(*libc.TLS, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 1*12 + 4 /* &.pCurrent */))))(tls, fd) Xsqlite3_log(tls, SQLITE_WARNING, - ts+2598 /* "attempt to open ..." */, libc.VaList(bp, z, fd)) + ts+2608 /* "attempt to open ..." */, libc.VaList(bp, z, fd)) fd = -1 - if (*(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 4 /* &.pCurrent */))))(tls, ts+2641 /* "/dev/null" */, O_RDONLY, int32(m)) < 0 { + if (*(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 4 /* &.pCurrent */))))(tls, ts+2651 /* "/dev/null" */, O_RDONLY, int32(m)) < 0 { break } } @@ -22894,13 +23307,13 @@ func unixLogErrorAtLine(tls *libc.TLS, errcode int32, zFunc uintptr, zPath uintp // the strerror() function to obtain the human-readable error message // equivalent to errno. Otherwise, use strerror_r(). // This is a threadsafe build, but strerror_r() is not available. - zErr = ts + 755 /* "" */ + zErr = ts + 765 /* "" */ if zPath == uintptr(0) { - zPath = ts + 755 /* "" */ + zPath = ts + 765 /* "" */ } Xsqlite3_log(tls, errcode, - ts+2651, /* "os_unix.c:%d: (%..." */ + ts+2661, /* "os_unix.c:%d: (%..." */ libc.VaList(bp, iLine, iErrno, zFunc, zPath, zErr)) return errcode @@ -22919,7 +23332,7 @@ func unixLogErrorAtLine(tls *libc.TLS, errcode int32, zFunc uintptr, zPath uintp // and move on. func robust_close(tls *libc.TLS, pFile uintptr, h int32, lineno int32) { /* sqlite3.c:35345:13: */ if (*(*func(*libc.TLS, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 1*12 + 4 /* &.pCurrent */))))(tls, h) != 0 { - unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(16) << 8)), ts+2393, /* "close" */ + unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(16) << 8)), ts+2403, /* "close" */ func() uintptr { if pFile != 0 { return (*UnixFile)(unsafe.Pointer(pFile)).FzPath @@ -23078,19 +23491,19 @@ func verifyDbFile(tls *libc.TLS, pFile uintptr) { /* sqlite3.c:35532:13: */ rc = (*(*func(*libc.TLS, int32, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 5*12 + 4 /* &.pCurrent */))))(tls, (*UnixFile)(unsafe.Pointer(pFile)).Fh, bp+32 /* &buf */) if rc != 0 { - Xsqlite3_log(tls, SQLITE_WARNING, ts+2682 /* "cannot fstat db ..." */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) + Xsqlite3_log(tls, SQLITE_WARNING, ts+2692 /* "cannot fstat db ..." */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) return } if (*stat)(unsafe.Pointer(bp+32 /* &buf */)).Fst_nlink == X__nlink_t(0) { - Xsqlite3_log(tls, SQLITE_WARNING, ts+2706 /* "file unlinked wh..." */, libc.VaList(bp+8, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) + Xsqlite3_log(tls, SQLITE_WARNING, ts+2716 /* "file unlinked wh..." */, libc.VaList(bp+8, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) return } if (*stat)(unsafe.Pointer(bp+32 /* &buf */)).Fst_nlink > X__nlink_t(1) { - Xsqlite3_log(tls, SQLITE_WARNING, ts+2735 /* "multiple links t..." */, libc.VaList(bp+16, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) + Xsqlite3_log(tls, SQLITE_WARNING, ts+2745 /* "multiple links t..." */, libc.VaList(bp+16, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) return } if fileHasMoved(tls, pFile) != 0 { - Xsqlite3_log(tls, SQLITE_WARNING, ts+2762 /* "file renamed whi..." */, libc.VaList(bp+24, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) + Xsqlite3_log(tls, SQLITE_WARNING, ts+2772 /* "file renamed whi..." */, libc.VaList(bp+24, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) return } } @@ -24204,7 +24617,7 @@ func openDirectory(tls *libc.TLS, zFilename uintptr, pFd uintptr) int32 { /* sql var fd int32 = -1 // var zDirname [513]int8 at bp+8, 513 - Xsqlite3_snprintf(tls, MAX_PATHNAME, bp+8 /* &zDirname[0] */, ts+2790 /* "%s" */, libc.VaList(bp, zFilename)) + Xsqlite3_snprintf(tls, MAX_PATHNAME, bp+8 /* &zDirname[0] */, ts+2800 /* "%s" */, libc.VaList(bp, zFilename)) for ii = int32(libc.Xstrlen(tls, bp+8 /* &zDirname[0] */)); (ii > 0) && (int32(*(*int8)(unsafe.Pointer(bp + 8 /* &zDirname[0] */ + uintptr(ii)))) != '/'); ii-- { } if ii > 0 { @@ -24223,7 +24636,7 @@ func openDirectory(tls *libc.TLS, zFilename uintptr, pFd uintptr) int32 { /* sql if fd >= 0 { return SQLITE_OK } - return unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 37775), ts+2505 /* "openDirectory" */, bp+8 /* &zDirname[0] */, 37775) + return unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 37775), ts+2515 /* "openDirectory" */, bp+8 /* &zDirname[0] */, 37775) } // Make sure all writes to a particular file are committed to disk. @@ -24258,7 +24671,7 @@ func unixSync(tls *libc.TLS, id uintptr, flags int32) int32 { /* sqlite3.c:37793 if rc != 0 { storeLastErrno(tls, pFile, *(*int32)(unsafe.Pointer(libc.X__errno_location(tls)))) - return unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(4) << 8)), ts+2793 /* "full_fsync" */, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, 37816) + return unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(4) << 8)), ts+2803 /* "full_fsync" */, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, 37816) } // Also fsync the directory containing the file if the DIRSYNC flag @@ -24296,7 +24709,7 @@ func unixTruncate(tls *libc.TLS, id uintptr, nByte I64) int32 { /* sqlite3.c:378 rc = robust_ftruncate(tls, (*UnixFile)(unsafe.Pointer(pFile)).Fh, nByte) if rc != 0 { storeLastErrno(tls, pFile, *(*int32)(unsafe.Pointer(libc.X__errno_location(tls)))) - return unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(6) << 8)), ts+2424 /* "ftruncate" */, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, 37861) + return unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(6) << 8)), ts+2434 /* "ftruncate" */, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, 37861) } else { // If the file was just truncated to a size smaller than the currently @@ -24375,7 +24788,7 @@ func fcntlSizeHint(tls *libc.TLS, pFile uintptr, nByte I64) int32 { /* sqlite3.c if iWrite >= nSize { iWrite = (nSize - int64(1)) } - nWrite = seekAndWrite(tls, pFile, iWrite, ts+755 /* "" */, 1) + nWrite = seekAndWrite(tls, pFile, iWrite, ts+765 /* "" */, 1) if nWrite != 1 { return (SQLITE_IOERR | (int32(3) << 8)) } @@ -24388,7 +24801,7 @@ func fcntlSizeHint(tls *libc.TLS, pFile uintptr, nByte I64) int32 { /* sqlite3.c if (*UnixFile)(unsafe.Pointer(pFile)).FszChunk <= 0 { if robust_ftruncate(tls, (*UnixFile)(unsafe.Pointer(pFile)).Fh, nByte) != 0 { storeLastErrno(tls, pFile, *(*int32)(unsafe.Pointer(libc.X__errno_location(tls)))) - return unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(6) << 8)), ts+2424 /* "ftruncate" */, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, 37982) + return unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(6) << 8)), ts+2434 /* "ftruncate" */, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, 37982) } } @@ -24462,7 +24875,7 @@ func unixFileControl(tls *libc.TLS, id uintptr, op int32, pArg uintptr) int32 { } case SQLITE_FCNTL_VFSNAME: { - *(*uintptr)(unsafe.Pointer(pArg)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp, (*Sqlite3_vfs)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pFile)).FpVfs)).FzName)) + *(*uintptr)(unsafe.Pointer(pArg)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp, (*Sqlite3_vfs)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pFile)).FpVfs)).FzName)) return SQLITE_OK } @@ -24748,7 +25161,7 @@ func unixLockSharedMemory(tls *libc.TLS, pDbFd uintptr, pShmNode uintptr) int32 // help detect if a -shm file truncation is legitimate or is the work // or a rogue process. if (rc == SQLITE_OK) && (robust_ftruncate(tls, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FhShm, int64(3)) != 0) { - rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(18) << 8)), ts+2424 /* "ftruncate" */, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FzFilename, 38591) + rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(18) << 8)), ts+2434 /* "ftruncate" */, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FzFilename, 38591) } } } else if int32((*flock)(unsafe.Pointer(bp+8 /* &lock */)).Fl_type) == F_WRLCK { @@ -24854,7 +25267,7 @@ __4: ; libc.Xmemset(tls, pShmNode, 0, (uint32(unsafe.Sizeof(unixShmNode{})) + uint32(nShmFilename))) zShm = libc.AssignPtrUintptr(pShmNode+8 /* &.zFilename */, (pShmNode + 1*68)) - Xsqlite3_snprintf(tls, nShmFilename, zShm, ts+2804 /* "%s-shm" */, libc.VaList(bp, zBasePath)) + Xsqlite3_snprintf(tls, nShmFilename, zShm, ts+2814 /* "%s-shm" */, libc.VaList(bp, zBasePath)) (*unixShmNode)(unsafe.Pointer(pShmNode)).FhShm = -1 (*UnixInodeInfo)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pDbFd)).FpInode)).FpShmNode = pShmNode @@ -24876,7 +25289,7 @@ __5: if !(int32((*UnixInodeInfo)(unsafe.Pointer(pInode)).FbProcessLock) == 0) { goto __7 } - if !(0 == Xsqlite3_uri_boolean(tls, (*UnixFile)(unsafe.Pointer(pDbFd)).FzPath, ts+2811 /* "readonly_shm" */, 0)) { + if !(0 == Xsqlite3_uri_boolean(tls, (*UnixFile)(unsafe.Pointer(pDbFd)).FzPath, ts+2821 /* "readonly_shm" */, 0)) { goto __8 } (*unixShmNode)(unsafe.Pointer(pShmNode)).FhShm = robust_open(tls, zShm, ((O_RDWR | O_CREAT) | 0400000), @@ -24891,7 +25304,7 @@ __8: if !((*unixShmNode)(unsafe.Pointer(pShmNode)).FhShm < 0) { goto __10 } - rc = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 38716), ts+2388 /* "open" */, zShm, 38716) + rc = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 38716), ts+2398 /* "open" */, zShm, 38716) goto shm_open_err __10: ; @@ -25058,11 +25471,11 @@ __11: goto __13 } *(*int32)(unsafe.Pointer(bp + 96 /* x */)) = 0 - if !(seekAndWriteFd(tls, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FhShm, (int64(((iPg*pgsz)+pgsz)-1)), ts+755 /* "" */, 1, bp+96 /* &x */) != 1) { + if !(seekAndWriteFd(tls, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FhShm, (int64(((iPg*pgsz)+pgsz)-1)), ts+765 /* "" */, 1, bp+96 /* &x */) != 1) { goto __14 } zFile = (*UnixShmNode)(unsafe.Pointer(pShmNode)).FzFilename - rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(19) << 8)), ts+2459 /* "write" */, zFile, 38860) + rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(19) << 8)), ts+2469 /* "write" */, zFile, 38860) goto shmpage_out __14: ; @@ -25110,7 +25523,7 @@ __16: if !(pMem == (libc.UintptrFromInt32(-1))) { goto __20 } - rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(21) << 8)), ts+2546 /* "mmap" */, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FzFilename, 38887) + rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(21) << 8)), ts+2556 /* "mmap" */, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FzFilename, 38887) goto shmpage_out __20: ; @@ -25152,10 +25565,10 @@ shmpage_out: if !(int32((*UnixShmNode)(unsafe.Pointer(pShmNode)).FnRegion) > iRegion) { goto __25 } - *(*uintptr)(unsafe.Pointer(libc.AtomicLoadUintptr(&pp))) = *(*uintptr)(unsafe.Pointer((*UnixShmNode)(unsafe.Pointer(pShmNode)).FapRegion + uintptr(iRegion)*4)) + *(*uintptr)(unsafe.Pointer(pp)) = *(*uintptr)(unsafe.Pointer((*UnixShmNode)(unsafe.Pointer(pShmNode)).FapRegion + uintptr(iRegion)*4)) goto __26 __25: - *(*uintptr)(unsafe.Pointer(libc.AtomicLoadUintptr(&pp))) = uintptr(0) + *(*uintptr)(unsafe.Pointer(pp)) = uintptr(0) __26: ; if !(((*UnixShmNode)(unsafe.Pointer(pShmNode)).FisReadonly != 0) && (rc == SQLITE_OK)) { @@ -25369,7 +25782,7 @@ func unixUnmapfile(tls *libc.TLS, pFd uintptr) { /* sqlite3.c:39165:13: */ // continue accessing the database using the xRead() and xWrite() // methods. func unixRemapfile(tls *libc.TLS, pFd uintptr, nNew I64) { /* sqlite3.c:39190:13: */ - var zErr uintptr = ts + 2546 /* "mmap" */ + var zErr uintptr = ts + 2556 /* "mmap" */ var h int32 = (*UnixFile)(unsafe.Pointer(pFd)).Fh // File descriptor open on db file var pOrig uintptr = (*UnixFile)(unsafe.Pointer(pFd)).FpMapRegion // Pointer to current file mapping var nOrig I64 = (*UnixFile)(unsafe.Pointer(pFd)).FmmapSizeActual // Size of pOrig region in bytes @@ -25386,7 +25799,7 @@ func unixRemapfile(tls *libc.TLS, pFd uintptr, nNew I64) { /* sqlite3.c:39190:13 } pNew = (*(*func(*libc.TLS, uintptr, Size_t, Size_t, int32, uintptr) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 24*12 + 4 /* &.pCurrent */))))(tls, pOrig, uint32(nReuse), uint32(nNew), MREMAP_MAYMOVE, 0) - zErr = ts + 2558 /* "mremap" */ + zErr = ts + 2568 /* "mremap" */ // The attempt to extend the existing mapping failed. Free it. if (pNew == (libc.UintptrFromInt32(-1))) || (pNew == uintptr(0)) { @@ -25622,17 +26035,19 @@ func fillInUnixFile(tls *libc.TLS, pVfs uintptr, h int32, pId uintptr, zFilename } return uintptr(0) }(), - ts+2824 /* "psow" */, SQLITE_POWERSAFE_OVERWRITE) != 0 { + ts+2834 /* "psow" */, SQLITE_POWERSAFE_OVERWRITE) != 0 { *(*uint16)(unsafe.Pointer(pNew + 18 /* &.ctrlFlags */)) |= uint16((UNIXFILE_PSOW)) } - if libc.Xstrcmp(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FzName, ts+2829 /* "unix-excl" */) == 0 { + if libc.Xstrcmp(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FzName, ts+2839 /* "unix-excl" */) == 0 { *(*uint16)(unsafe.Pointer(pNew + 18 /* &.ctrlFlags */)) |= uint16((UNIXFILE_EXCL)) } if (ctrlFlags & UNIXFILE_NOLOCK) != 0 { pLockingStyle = uintptr(unsafe.Pointer(&nolockIoMethods)) } else { - pLockingStyle = (**(**func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer((pVfs + 20 /* &.pAppData */))))(tls, zFilename, pNew) + pLockingStyle = (*(**struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData}))).f(tls, zFilename, pNew) } if pLockingStyle == uintptr(unsafe.Pointer(&posixIoMethods)) { @@ -25671,7 +26086,7 @@ func fillInUnixFile(tls *libc.TLS, pVfs uintptr, h int32, pId uintptr, zFilename if zLockFile == uintptr(0) { rc = SQLITE_NOMEM } else { - Xsqlite3_snprintf(tls, nFilename, zLockFile, ts+2839 /* "%s.lock" */, libc.VaList(bp, zFilename)) + Xsqlite3_snprintf(tls, nFilename, zLockFile, ts+2849 /* "%s.lock" */, libc.VaList(bp, zFilename)) } (*UnixFile)(unsafe.Pointer(pNew)).FlockingContext = zLockFile } @@ -25701,10 +26116,10 @@ func unixTempFileDir(tls *libc.TLS) uintptr { /* sqlite3.c:39856:19: */ var zDir uintptr = Xsqlite3_temp_directory if !(int32(azDirs[0]) != 0) { - azDirs[0] = libc.Xgetenv(tls, ts+2847 /* "SQLITE_TMPDIR" */) + azDirs[0] = libc.Xgetenv(tls, ts+2857 /* "SQLITE_TMPDIR" */) } if !(int32(azDirs[1]) != 0) { - azDirs[1] = libc.Xgetenv(tls, ts+2861 /* "TMPDIR" */) + azDirs[1] = libc.Xgetenv(tls, ts+2871 /* "TMPDIR" */) } for 1 != 0 { if (((zDir != uintptr(0)) && @@ -25724,10 +26139,10 @@ func unixTempFileDir(tls *libc.TLS) uintptr { /* sqlite3.c:39856:19: */ var azDirs = [6]uintptr{ uintptr(0), uintptr(0), - ts + 2868, /* "/var/tmp" */ - ts + 2877, /* "/usr/tmp" */ - ts + 2886, /* "/tmp" */ - ts + 768, /* "." */ + ts + 2878, /* "/var/tmp" */ + ts + 2887, /* "/usr/tmp" */ + ts + 2896, /* "/tmp" */ + ts + 778, /* "." */ } /* sqlite3.c:39857:21 */ // Create a temporary file name in zBuf. zBuf must be allocated @@ -25755,7 +26170,7 @@ func unixGetTempname(tls *libc.TLS, nBuf int32, zBuf uintptr) int32 { /* sqlite3 Xsqlite3_randomness(tls, int32(unsafe.Sizeof(U64(0))), bp+24 /* &r */) *(*int8)(unsafe.Pointer(zBuf + uintptr((nBuf - 2)))) = int8(0) - Xsqlite3_snprintf(tls, nBuf, zBuf, ts+2891, /* "%s/etilqs_%llx%c" */ + Xsqlite3_snprintf(tls, nBuf, zBuf, ts+2901, /* "%s/etilqs_%llx%c" */ libc.VaList(bp, zDir, *(*U64)(unsafe.Pointer(bp + 24 /* r */)), 0)) if (int32(*(*int8)(unsafe.Pointer(zBuf + uintptr((nBuf - 2))))) != 0) || ((libc.PostIncInt32(&iLimit, 1)) > 10) { return SQLITE_ERROR @@ -25911,7 +26326,7 @@ func findCreateFileMode(tls *libc.TLS, zPath uintptr, flags int32, pMode uintptr // filename, check for the "modeof" parameter. If present, interpret // its value as a filename and try to copy the mode, uid and gid from // that file. - var z uintptr = Xsqlite3_uri_parameter(tls, zPath, ts+2908 /* "modeof" */) + var z uintptr = Xsqlite3_uri_parameter(tls, zPath, ts+2918 /* "modeof" */) if z != 0 { rc = getFileMode(tls, z, pMode, pUid, pGid) } @@ -26137,7 +26552,7 @@ __15: if !(fd < 0) { goto __19 } - rc2 = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40257), ts+2388 /* "open" */, zName, 40257) + rc2 = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40257), ts+2398 /* "open" */, zName, 40257) if !(rc == SQLITE_OK) { goto __20 } @@ -26248,7 +26663,7 @@ func unixDelete(tls *libc.TLS, NotUsed uintptr, zPath uintptr, dirSync int32) in if (*(*int32)(unsafe.Pointer(libc.X__errno_location(tls)))) == ENOENT { rc = (SQLITE_IOERR | (int32(23) << 8)) } else { - rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(10) << 8)), ts+2498 /* "unlink" */, zPath, 40396) + rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(10) << 8)), ts+2508 /* "unlink" */, zPath, 40396) } return rc } @@ -26258,7 +26673,7 @@ func unixDelete(tls *libc.TLS, NotUsed uintptr, zPath uintptr, dirSync int32) in rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 17*12 + 4 /* &.pCurrent */))))(tls, zPath, bp /* &fd */) if rc == SQLITE_OK { if full_fsync(tls, *(*int32)(unsafe.Pointer(bp /* fd */)), 0, 0) != 0 { - rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(5) << 8)), ts+2915 /* "fsync" */, zPath, 40406) + rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(5) << 8)), ts+2925 /* "fsync" */, zPath, 40406) } robust_close(tls, uintptr(0), *(*int32)(unsafe.Pointer(bp /* fd */)), 40408) } else { @@ -26333,7 +26748,7 @@ func mkFullPathname(tls *libc.TLS, zPath uintptr, zOut uintptr, nOut int32) int3 if int32(*(*int8)(unsafe.Pointer(zPath))) != '/' { if (*(*func(*libc.TLS, uintptr, Size_t) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 3*12 + 4 /* &.pCurrent */))))(tls, zOut, (uint32(nOut-2))) == uintptr(0) { - return unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40485), ts+2406 /* "getcwd" */, zPath, 40485) + return unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40485), ts+2416 /* "getcwd" */, zPath, 40485) } iOff = Xsqlite3Strlen30(tls, zOut) *(*int8)(unsafe.Pointer(zOut + uintptr(libc.PostIncInt32(&iOff, 1)))) = int8('/') @@ -26344,7 +26759,7 @@ func mkFullPathname(tls *libc.TLS, zPath uintptr, zOut uintptr, nOut int32) int3 *(*int8)(unsafe.Pointer(zOut + uintptr(iOff))) = int8(0) return Xsqlite3CantopenError(tls, 40494) } - Xsqlite3_snprintf(tls, (nOut - iOff), (zOut + uintptr(iOff)), ts+2790 /* "%s" */, libc.VaList(bp, zPath)) + Xsqlite3_snprintf(tls, (nOut - iOff), (zOut + uintptr(iOff)), ts+2800 /* "%s" */, libc.VaList(bp, zPath)) // Remove duplicate '/' characters. Except, two // at the beginning // of a pathname is allowed since this is important on windows. @@ -26419,7 +26834,7 @@ func unixFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zO if (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 27*12 + 4 /* &.pCurrent */))))(tls, zIn, bp /* &buf */) != 0 { if (*(*int32)(unsafe.Pointer(libc.X__errno_location(tls)))) != ENOENT { - rc = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40577), ts+2586 /* "lstat" */, zIn, 40577) + rc = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40577), ts+2596 /* "lstat" */, zIn, 40577) } } else { bLink = (libc.Bool32((((*stat)(unsafe.Pointer(bp /* &buf */)).Fst_mode) & X__mode_t(0170000)) == (X__mode_t(0120000)))) @@ -26439,7 +26854,7 @@ func unixFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zO if rc == SQLITE_OK { nByte = (*(*func(*libc.TLS, uintptr, uintptr, Size_t) Ssize_t)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 26*12 + 4 /* &.pCurrent */))))(tls, zIn, zDel, (uint32(nOut - 1))) if nByte < 0 { - rc = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40595), ts+2577 /* "readlink" */, zIn, 40595) + rc = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40595), ts+2587 /* "readlink" */, zIn, 40595) } else { if int32(*(*int8)(unsafe.Pointer(zDel))) != '/' { var n int32 @@ -26507,10 +26922,13 @@ type Dl_serpath = struct { // This is the structure that must be passed (by reference) to `dlinfo' for // the RTLD_DI_SERINFO and RTLD_DI_SERINFOSIZE requests. type Dl_serinfo = struct { - Fdls_size Size_t - Fdls_cnt uint32 - Fdls_serpath [1]Dl_serpath -} /* dlfcn.h:184:3 */ + Fdls_size Size_t + Fdls_cnt uint32 + F__8 struct { + Fdls_serpath [0]Dl_serpath + _ [8]byte + } +} /* dlfcn.h:196:3 */ func unixDlOpen(tls *libc.TLS, NotUsed uintptr, zFilename uintptr) uintptr { /* sqlite3.c:40636:13: */ _ = NotUsed @@ -26531,7 +26949,7 @@ func unixDlError(tls *libc.TLS, NotUsed uintptr, nBuf int32, zBufOut uintptr) { unixEnterMutex(tls) zErr = libc.Xdlerror(tls) if zErr != 0 { - Xsqlite3_snprintf(tls, nBuf, zBufOut, ts+2790 /* "%s" */, libc.VaList(bp, zErr)) + Xsqlite3_snprintf(tls, nBuf, zBufOut, ts+2800 /* "%s" */, libc.VaList(bp, zErr)) } unixLeaveMutex(tls) } @@ -26557,7 +26975,9 @@ func unixDlSym(tls *libc.TLS, NotUsed uintptr, p uintptr, zSym uintptr) uintptr x = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr) uintptr }{libc.Xdlsym})) - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(&x)))(tls, p, zSym) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{x})).f(tls, p, zSym) } func unixDlClose(tls *libc.TLS, NotUsed uintptr, pHandle uintptr) { /* sqlite3.c:40681:13: */ @@ -26588,7 +27008,7 @@ func unixRandomness(tls *libc.TLS, NotUsed uintptr, nBuf int32, zBuf uintptr) in { var fd int32 var got int32 - fd = robust_open(tls, ts+2921 /* "/dev/urandom" */, O_RDONLY, uint32(0)) + fd = robust_open(tls, ts+2931 /* "/dev/urandom" */, O_RDONLY, uint32(0)) if fd < 0 { // var t Time_t at bp, 4 @@ -26885,10 +27305,10 @@ func Xsqlite3_os_init(tls *libc.TLS) int32 { /* sqlite3.c:42038:16: */ } var aVfs = [4]Sqlite3_vfs{ - {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 2934 /* "unix" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, - {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 2939 /* "unix-none" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, - {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 2949 /* "unix-dotfile" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, - {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 2829 /* "unix-excl" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, + {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 2944 /* "unix" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, + {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 2949 /* "unix-none" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, + {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 2959 /* "unix-dotfile" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, + {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 2839 /* "unix-excl" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, } /* sqlite3.c:42091:22 */ // Shutdown the operating system interface. @@ -26980,7 +27400,7 @@ var memdb_g MemFS /* sqlite3.c:48620:3: */ var memdb_vfs = Sqlite3_vfs{ FiVersion: 2, // szOsFile (set when registered) FmxPathname: 1024, // pNext - FzName: ts + 2962, /* "memdb" */ // pAppData (set when registered) + FzName: ts + 2972, /* "memdb" */ // pAppData (set when registered) FxOpen: 0, /* memdbDelete, */ // xDelete FxAccess: 0, // xAccess FxFullPathname: 0, // xFullPathname @@ -27212,7 +27632,7 @@ func memdbFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int3 var rc int32 = SQLITE_NOTFOUND memdbEnter(tls, p) if op == SQLITE_FCNTL_VFSNAME { - *(*uintptr)(unsafe.Pointer(pArg)) = Xsqlite3_mprintf(tls, ts+2968 /* "memdb(%p,%lld)" */, libc.VaList(bp, (*MemStore)(unsafe.Pointer(p)).FaData, (*MemStore)(unsafe.Pointer(p)).Fsz)) + *(*uintptr)(unsafe.Pointer(pArg)) = Xsqlite3_mprintf(tls, ts+2978 /* "memdb(%p,%lld)" */, libc.VaList(bp, (*MemStore)(unsafe.Pointer(p)).FaData, (*MemStore)(unsafe.Pointer(p)).Fsz)) rc = SQLITE_OK } if op == SQLITE_FCNTL_SIZE_LIMIT { @@ -27269,7 +27689,9 @@ func memdbOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pFd uintptr, flags in var p uintptr = uintptr(0) var szName int32 if (flags & SQLITE_OPEN_MAIN_DB) == 0 { - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 24 /* &.xOpen */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName, pFd, flags, pOutFlags) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxOpen})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName, pFd, flags, pOutFlags) } libc.Xmemset(tls, pFile, 0, uint32(unsafe.Sizeof(MemStore{}))) szName = Xsqlite3Strlen30(tls, zName) @@ -27355,50 +27777,66 @@ func memdbFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, z defer tls.Free(8) _ = pVfs - Xsqlite3_snprintf(tls, nOut, zOut, ts+2790 /* "%s" */, libc.VaList(bp, zPath)) + Xsqlite3_snprintf(tls, nOut, zOut, ts+2800 /* "%s" */, libc.VaList(bp, zPath)) return SQLITE_OK } // Open the dynamic library located at zPath and return a handle. func memdbDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* sqlite3.c:49147:13: */ - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 40 /* &.xDlOpen */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlOpen})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath) } // Populate the buffer zErrMsg (size nByte bytes) with a human readable // utf-8 string describing the most recent error encountered associated // with dynamic libraries. func memdbDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zErrMsg uintptr) { /* sqlite3.c:49156:13: */ - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 44 /* &.xDlError */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zErrMsg) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlError})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zErrMsg) } // Return a pointer to the symbol zSymbol in the dynamic library pHandle. func memdbDlSym(tls *libc.TLS, pVfs uintptr, p uintptr, zSym uintptr) uintptr { /* sqlite3.c:49163:13: */ - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 48 /* &.xDlSym */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, p, zSym) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlSym})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, p, zSym) } // Close the dynamic library handle pHandle. func memdbDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* sqlite3.c:49170:13: */ - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 52 /* &.xDlClose */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, pHandle) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlClose})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, pHandle) } // Populate the buffer pointed to by zBufOut with nByte bytes of // random data. func memdbRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* sqlite3.c:49178:12: */ - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 56 /* &.xRandomness */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zBufOut) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxRandomness})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zBufOut) } // Sleep for nMicro microseconds. Return the number of microseconds // actually slept. func memdbSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* sqlite3.c:49186:12: */ - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 60 /* &.xSleep */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nMicro) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxSleep})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nMicro) } func memdbGetLastError(tls *libc.TLS, pVfs uintptr, a int32, b uintptr) int32 { /* sqlite3.c:49199:12: */ - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 68 /* &.xGetLastError */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, a, b) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxGetLastError})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, a, b) } func memdbCurrentTimeInt64(tls *libc.TLS, pVfs uintptr, p uintptr) int32 { /* sqlite3.c:49202:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 72 /* &.xCurrentTimeInt64 */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, p) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxCurrentTimeInt64})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, p) } // Translate a database connection pointer and schema name into a @@ -27472,7 +27910,7 @@ func Xsqlite3_serialize(tls *libc.TLS, db uintptr, zSchema uintptr, piSize uintp return uintptr(0) } szPage = Xsqlite3BtreeGetPageSize(tls, pBt) - zSql = Xsqlite3_mprintf(tls, ts+2983 /* "PRAGMA \"%w\".page..." */, libc.VaList(bp, zSchema)) + zSql = Xsqlite3_mprintf(tls, ts+2993 /* "PRAGMA \"%w\".page..." */, libc.VaList(bp, zSchema)) if zSql != 0 { rc = Xsqlite3_prepare_v2(tls, db, zSql, -1, bp+8 /* &pStmt */, uintptr(0)) } else { @@ -27545,7 +27983,7 @@ __1: goto end_deserialize __2: ; - zSql = Xsqlite3_mprintf(tls, ts+3006 /* "ATTACH x AS %Q" */, libc.VaList(bp, zSchema)) + zSql = Xsqlite3_mprintf(tls, ts+3016 /* "ATTACH x AS %Q" */, libc.VaList(bp, zSchema)) if !(zSql == uintptr(0)) { goto __3 } @@ -28145,7 +28583,9 @@ func pcacheManageDirtyList(tls *libc.TLS, pPage uintptr, addRemove U8) { /* sqli func pcacheUnpin(tls *libc.TLS, p uintptr) { /* sqlite3.c:50041:13: */ if (*PCache)(unsafe.Pointer((*PgHdr)(unsafe.Pointer(p)).FpCache)).FbPurgeable != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 32 /* &.xUnpin */))))(tls, (*PCache)(unsafe.Pointer((*PgHdr)(unsafe.Pointer(p)).FpCache)).FpCache, (*PgHdr)(unsafe.Pointer(p)).FpPage, 0) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxUnpin})).f(tls, (*PCache)(unsafe.Pointer((*PgHdr)(unsafe.Pointer(p)).FpCache)).FpCache, (*PgHdr)(unsafe.Pointer(p)).FpPage, 0) } } @@ -28180,13 +28620,15 @@ func Xsqlite3PcacheInitialize(tls *libc.TLS) int32 { /* sqlite3.c:50072:20: */ Xsqlite3PCacheSetDefault(tls) } - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 8 /* &.xInit */))))(tls, Xsqlite3Config.Fpcache2.FpArg) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxInit})).f(tls, Xsqlite3Config.Fpcache2.FpArg) } func Xsqlite3PcacheShutdown(tls *libc.TLS) { /* sqlite3.c:50082:21: */ if Xsqlite3Config.Fpcache2.FxShutdown != 0 { // IMPLEMENTATION-OF: R-26000-56589 The xShutdown() method may be NULL. - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 12 /* &.xShutdown */))))(tls, Xsqlite3Config.Fpcache2.FpArg) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxShutdown})).f(tls, Xsqlite3Config.Fpcache2.FpArg) } } @@ -28226,15 +28668,19 @@ func Xsqlite3PcacheSetPageSize(tls *libc.TLS, pCache uintptr, szPage int32) int3 if (*PCache)(unsafe.Pointer(pCache)).FszPage != 0 { var pNew uintptr - pNew = (*(*func(*libc.TLS, int32, int32, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 16 /* &.xCreate */))))(tls, + pNew = (*struct { + f func(*libc.TLS, int32, int32, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxCreate})).f(tls, szPage, (int32(uint32((*PCache)(unsafe.Pointer(pCache)).FszExtra) + (((uint32(unsafe.Sizeof(PgHdr{}))) + uint32(7)) & libc.Uint32FromInt32(libc.CplInt32(7))))), int32((*PCache)(unsafe.Pointer(pCache)).FbPurgeable)) if pNew == uintptr(0) { return SQLITE_NOMEM } - (*(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 20 /* &.xCachesize */))))(tls, pNew, numberOfCachePages(tls, pCache)) + (*struct { + f func(*libc.TLS, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxCachesize})).f(tls, pNew, numberOfCachePages(tls, pCache)) if (*PCache)(unsafe.Pointer(pCache)).FpCache != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 44 /* &.xDestroy */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxDestroy})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) } (*PCache)(unsafe.Pointer(pCache)).FpCache = pNew (*PCache)(unsafe.Pointer(pCache)).FszPage = szPage @@ -28277,7 +28723,9 @@ func Xsqlite3PcacheFetch(tls *libc.TLS, pCache uintptr, pgno Pgno, createFlag in // (createFlag==1 AND !(bPurgeable AND pDirty) eCreate = (createFlag & int32((*PCache)(unsafe.Pointer(pCache)).FeCreate)) - pRes = (*(*func(*libc.TLS, uintptr, uint32, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 28 /* &.xFetch */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, pgno, eCreate) + pRes = (*struct { + f func(*libc.TLS, uintptr, uint32, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxFetch})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, pgno, eCreate) return pRes } @@ -28317,14 +28765,18 @@ func Xsqlite3PcacheFetchStress(tls *libc.TLS, pCache uintptr, pgno Pgno, ppPage if pPg != 0 { var rc int32 - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pCache + 36 /* &.xStress */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpStress, pPg) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*PCache)(unsafe.Pointer(pCache)).FxStress})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpStress, pPg) if (rc != SQLITE_OK) && (rc != SQLITE_BUSY) { return rc } } } - *(*uintptr)(unsafe.Pointer(ppPage)) = (*(*func(*libc.TLS, uintptr, uint32, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 28 /* &.xFetch */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, pgno, 2) + *(*uintptr)(unsafe.Pointer(ppPage)) = (*struct { + f func(*libc.TLS, uintptr, uint32, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxFetch})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, pgno, 2) if *(*uintptr)(unsafe.Pointer(ppPage)) == uintptr(0) { return SQLITE_NOMEM } @@ -28402,7 +28854,9 @@ func Xsqlite3PcacheDrop(tls *libc.TLS, p uintptr) { /* sqlite3.c:50349:21: */ pcacheManageDirtyList(tls, p, uint8(PCACHE_DIRTYLIST_REMOVE)) } (*PCache)(unsafe.Pointer((*PgHdr)(unsafe.Pointer(p)).FpCache)).FnRefSum-- - (*(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 32 /* &.xUnpin */))))(tls, (*PCache)(unsafe.Pointer((*PgHdr)(unsafe.Pointer(p)).FpCache)).FpCache, (*PgHdr)(unsafe.Pointer(p)).FpPage, 1) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxUnpin})).f(tls, (*PCache)(unsafe.Pointer((*PgHdr)(unsafe.Pointer(p)).FpCache)).FpCache, (*PgHdr)(unsafe.Pointer(p)).FpPage, 1) } // Make sure the page is marked as dirty. If it isn't dirty already, @@ -28465,7 +28919,9 @@ func Xsqlite3PcacheClearSyncFlags(tls *libc.TLS, pCache uintptr) { /* sqlite3.c: func Xsqlite3PcacheMove(tls *libc.TLS, p uintptr, newPgno Pgno) { /* sqlite3.c:50433:21: */ var pCache uintptr = (*PgHdr)(unsafe.Pointer(p)).FpCache - (*(*func(*libc.TLS, uintptr, uintptr, uint32, uint32))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 36 /* &.xRekey */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, (*PgHdr)(unsafe.Pointer(p)).FpPage, (*PgHdr)(unsafe.Pointer(p)).Fpgno, newPgno) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uint32, uint32) + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxRekey})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, (*PgHdr)(unsafe.Pointer(p)).FpPage, (*PgHdr)(unsafe.Pointer(p)).Fpgno, newPgno) (*PgHdr)(unsafe.Pointer(p)).Fpgno = newPgno if ((int32((*PgHdr)(unsafe.Pointer(p)).Fflags) & PGHDR_DIRTY) != 0) && ((int32((*PgHdr)(unsafe.Pointer(p)).Fflags) & PGHDR_NEED_SYNC) != 0) { pcacheManageDirtyList(tls, p, uint8(PCACHE_DIRTYLIST_FRONT)) @@ -28497,21 +28953,25 @@ func Xsqlite3PcacheTruncate(tls *libc.TLS, pCache uintptr, pgno Pgno) { /* sqlit } if (pgno == Pgno(0)) && ((*PCache)(unsafe.Pointer(pCache)).FnRefSum != 0) { var pPage1 uintptr - pPage1 = (*(*func(*libc.TLS, uintptr, uint32, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 28 /* &.xFetch */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, uint32(1), 0) + pPage1 = (*struct { + f func(*libc.TLS, uintptr, uint32, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxFetch})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, uint32(1), 0) if pPage1 != 0 { // Page 1 is always available in cache, because // pCache->nRefSum>0 libc.Xmemset(tls, (*Sqlite3_pcache_page)(unsafe.Pointer(pPage1)).FpBuf, 0, uint32((*PCache)(unsafe.Pointer(pCache)).FszPage)) pgno = Pgno(1) } } - (*(*func(*libc.TLS, uintptr, uint32))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 40 /* &.xTruncate */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, (pgno + Pgno(1))) + (*struct { + f func(*libc.TLS, uintptr, uint32) + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxTruncate})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, (pgno + Pgno(1))) } } // Close a cache. func Xsqlite3PcacheClose(tls *libc.TLS, pCache uintptr) { /* sqlite3.c:50488:21: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 44 /* &.xDestroy */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxDestroy})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) } // Discard the contents of the cache. @@ -28627,14 +29087,18 @@ func Xsqlite3PcachePageRefcount(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:5 // Return the total number of pages in the cache. func Xsqlite3PcachePagecount(tls *libc.TLS, pCache uintptr) int32 { /* sqlite3.c:50605:20: */ - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 24 /* &.xPagecount */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxPagecount})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) } // Set the suggested cache-size value. func Xsqlite3PcacheSetCachesize(tls *libc.TLS, pCache uintptr, mxPage int32) { /* sqlite3.c:50622:21: */ (*PCache)(unsafe.Pointer(pCache)).FszCache = mxPage - (*(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 20 /* &.xCachesize */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, + (*struct { + f func(*libc.TLS, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxCachesize})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, numberOfCachePages(tls, pCache)) } @@ -28660,7 +29124,7 @@ func Xsqlite3PcacheSetSpillsize(tls *libc.TLS, p uintptr, mxPage int32) int32 { // Free up as much memory as possible from the page cache. func Xsqlite3PcacheShrink(tls *libc.TLS, pCache uintptr) { /* sqlite3.c:50651:21: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 48 /* &.xShrink */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxShrink})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) } // Return the size of the header added by this middleware layer @@ -30327,7 +30791,7 @@ type Wal1 = struct { FsyncHeader U8 FpadToSectorBoundary U8 FbShmUnreliable U8 - _ [1]byte + F__ccgo_pad1 [1]byte Fhdr WalIndexHdr FminFrame U32 FiReCksum U32 @@ -32399,7 +32863,7 @@ func pager_playback_one_page(tls *libc.TLS, pPager uintptr, pOffset uintptr, pDo var pData uintptr pData = (*PgHdr)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 8 /* pPg */)))).FpData libc.Xmemcpy(tls, pData, aData, uint32((*Pager)(unsafe.Pointer(pPager)).FpageSize)) - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pPager + 196 /* &.xReiniter */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* pPg */))) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Pager)(unsafe.Pointer(pPager)).FxReiniter})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* pPg */))) // It used to be that sqlite3PcacheMakeClean(pPg) was called here. But // that call was dangerous and had no detectable benefit since the cache // is normally cleaned by sqlite3PcacheCleanAll() after rollback and so @@ -33020,7 +33484,7 @@ __26: if !((isHot != 0) && (nPlayback != 0)) { goto __27 } - Xsqlite3_log(tls, (SQLITE_NOTICE | (int32(2) << 8)), ts+3021, /* "recovered %d pag..." */ + Xsqlite3_log(tls, (SQLITE_NOTICE | (int32(2) << 8)), ts+3031, /* "recovered %d pag..." */ libc.VaList(bp, nPlayback, (*Pager)(unsafe.Pointer(pPager)).FzJournal)) __27: ; @@ -33132,7 +33596,7 @@ func pagerUndoCallback(tls *libc.TLS, pCtx uintptr, iPg Pgno) int32 { /* sqlite3 } else { rc = readDbPage(tls, pPg) if rc == SQLITE_OK { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pPager + 196 /* &.xReiniter */))))(tls, pPg) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Pager)(unsafe.Pointer(pPager)).FxReiniter})).f(tls, pPg) } Xsqlite3PagerUnrefNotNull(tls, pPg) } @@ -33864,7 +34328,9 @@ func pager_wait_on_lock(tls *libc.TLS, pPager uintptr, locktype int32) int32 { / // may be invoked during, according to the comment above // sqlite3PagerSetBusyhandler(). - for ok := true; ok; ok = ((rc == SQLITE_BUSY) && ((*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pPager + 172 /* &.xBusyHandler */))))(tls, (*Pager)(unsafe.Pointer(pPager)).FpBusyHandlerArg) != 0)) { + for ok := true; ok; ok = ((rc == SQLITE_BUSY) && ((*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Pager)(unsafe.Pointer(pPager)).FxBusyHandler})).f(tls, (*Pager)(unsafe.Pointer(pPager)).FpBusyHandlerArg) != 0)) { rc = pagerLockDb(tls, pPager, locktype) } return rc @@ -34772,7 +35238,7 @@ __15: (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FzJournal = pPtr libc.Xmemcpy(tls, pPtr, zPathname, uint32(nPathname)) pPtr += uintptr(nPathname) - libc.Xmemcpy(tls, pPtr, ts+3048 /* "-journal" */, uint32(8)) + libc.Xmemcpy(tls, pPtr, ts+3058 /* "-journal" */, uint32(8)) pPtr += (uintptr(8 + 1)) goto __19 __18: @@ -34787,7 +35253,7 @@ __19: (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FzWal = pPtr libc.Xmemcpy(tls, pPtr, zPathname, uint32(nPathname)) pPtr += uintptr(nPathname) - libc.Xmemcpy(tls, pPtr, ts+3057 /* "-wal" */, uint32(4)) + libc.Xmemcpy(tls, pPtr, ts+3067 /* "-wal" */, uint32(4)) pPtr += (uintptr(4 + 1)) goto __21 __20: @@ -34846,9 +35312,9 @@ __27: ; __26: ; - (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FnoLock = U8(Xsqlite3_uri_boolean(tls, (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FzFilename, ts+3062 /* "nolock" */, 0)) + (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FnoLock = U8(Xsqlite3_uri_boolean(tls, (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FzFilename, ts+3072 /* "nolock" */, 0)) if !(((iDc & SQLITE_IOCAP_IMMUTABLE) != 0) || - (Xsqlite3_uri_boolean(tls, (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FzFilename, ts+3069 /* "immutable" */, 0) != 0)) { + (Xsqlite3_uri_boolean(tls, (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FzFilename, ts+3079 /* "immutable" */, 0) != 0)) { goto __30 } vfsFlags = vfsFlags | (SQLITE_OPEN_READONLY) @@ -35667,7 +36133,9 @@ func getPageError(tls *libc.TLS, pPager uintptr, pgno Pgno, ppPage uintptr, flag // Dispatch all page fetch requests to the appropriate getter method. func Xsqlite3PagerGet(tls *libc.TLS, pPager uintptr, pgno Pgno, ppPage uintptr, flags int32) int32 { /* sqlite3.c:58297:20: */ - return (*(*func(*libc.TLS, uintptr, Pgno, uintptr, int32) int32)(unsafe.Pointer((pPager + 200 /* &.xGet */))))(tls, pPager, pgno, ppPage, flags) + return (*struct { + f func(*libc.TLS, uintptr, Pgno, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Pager)(unsafe.Pointer(pPager)).FxGet})).f(tls, pPager, pgno, ppPage, flags) } // Acquire a page if it is already in the in-memory cache. Do @@ -38005,13 +38473,13 @@ func walIndexPageRealloc(tls *libc.TLS, pWal uintptr, iPage int32, ppPage uintpt var nByte Sqlite3_int64 = (Sqlite3_int64(uint32(unsafe.Sizeof(uintptr(0))) * (uint32(iPage + 1)))) var apNew uintptr libc.AtomicStoreUintptr(&apNew, uintptr(Xsqlite3Realloc(tls, (*Wal)(unsafe.Pointer(pWal)).FapWiData, uint64(nByte)))) - if !(libc.AtomicLoadUintptr(&apNew) != 0) { - *(*uintptr)(unsafe.Pointer(libc.AtomicLoadUintptr(&ppPage))) = uintptr(0) + if !(apNew != 0) { + *(*uintptr)(unsafe.Pointer(ppPage)) = uintptr(0) return SQLITE_NOMEM } - libc.Xmemset(tls, (libc.AtomicLoadUintptr(&apNew) + uintptr((*Wal)(unsafe.Pointer(pWal)).FnWiData)*4), 0, + libc.Xmemset(tls, (apNew + uintptr((*Wal)(unsafe.Pointer(pWal)).FnWiData)*4), 0, (uint32(unsafe.Sizeof(uintptr(0))) * (uint32((iPage + 1) - (*Wal)(unsafe.Pointer(pWal)).FnWiData)))) - (*Wal)(unsafe.Pointer(pWal)).FapWiData = libc.AtomicLoadUintptr(&apNew) + (*Wal)(unsafe.Pointer(pWal)).FapWiData = apNew (*Wal)(unsafe.Pointer(pWal)).FnWiData = (iPage + 1) } @@ -38038,14 +38506,14 @@ func walIndexPageRealloc(tls *libc.TLS, pWal uintptr, iPage int32, ppPage uintpt } } - *(*uintptr)(unsafe.Pointer(libc.AtomicLoadUintptr(&ppPage))) = *(*uintptr)(unsafe.Pointer((*Wal)(unsafe.Pointer(pWal)).FapWiData + uintptr(iPage)*4)) + *(*uintptr)(unsafe.Pointer(ppPage)) = *(*uintptr)(unsafe.Pointer((*Wal)(unsafe.Pointer(pWal)).FapWiData + uintptr(iPage)*4)) return rc } func walIndexPage(tls *libc.TLS, pWal uintptr, iPage int32, ppPage uintptr) int32 { /* sqlite3.c:60962:12: */ - if ((*Wal)(unsafe.Pointer(pWal)).FnWiData <= iPage) || ((libc.AssignPtrUintptr(libc.AtomicLoadUintptr(&ppPage), *(*uintptr)(unsafe.Pointer((*Wal)(unsafe.Pointer(pWal)).FapWiData + uintptr(iPage)*4)))) == uintptr(0)) { - return walIndexPageRealloc(tls, pWal, iPage, libc.AtomicLoadUintptr(&ppPage)) + if ((*Wal)(unsafe.Pointer(pWal)).FnWiData <= iPage) || ((libc.AssignPtrUintptr(ppPage, *(*uintptr)(unsafe.Pointer((*Wal)(unsafe.Pointer(pWal)).FapWiData + uintptr(iPage)*4)))) == uintptr(0)) { + return walIndexPageRealloc(tls, pWal, iPage, ppPage) } return SQLITE_OK } @@ -38130,9 +38598,9 @@ func walIndexWriteHdr(tls *libc.TLS, pWal uintptr) { /* sqlite3.c:61077:28: */ (*Wal)(unsafe.Pointer(pWal)).Fhdr.FiVersion = U32(WALINDEX_MAX_VERSION) walChecksumBytes(tls, 1, (pWal + 52 /* &.hdr */), nCksum, uintptr(0), pWal+52 /* &.hdr */ +40 /* &.aCksum */) // Possible TSAN false-positive. See tag-20200519-1 - libc.Xmemcpy(tls, (libc.AtomicLoadUintptr(&aHdr) + 1*48), (pWal + 52 /* &.hdr */), uint32(unsafe.Sizeof(WalIndexHdr{}))) + libc.Xmemcpy(tls, (aHdr + 1*48), (pWal + 52 /* &.hdr */), uint32(unsafe.Sizeof(WalIndexHdr{}))) walShmBarrier(tls, pWal) - libc.Xmemcpy(tls, (libc.AtomicLoadUintptr(&aHdr)), (pWal + 52 /* &.hdr */), uint32(unsafe.Sizeof(WalIndexHdr{}))) + libc.Xmemcpy(tls, (aHdr), (pWal + 52 /* &.hdr */), uint32(unsafe.Sizeof(WalIndexHdr{}))) } // This function encodes a single frame header and writes it to a buffer @@ -38694,9 +39162,9 @@ finished: // currently holding locks that exclude all other writers and // checkpointers. Then set the values of read-mark slots 1 through N. libc.AtomicStoreUintptr(&pInfo, uintptr(walCkptInfo(tls, pWal))) - (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfill = U32(0) - (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfillAttempted = (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame - *(*U32)(unsafe.Pointer((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */))) = U32(0) + (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfill = U32(0) + (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfillAttempted = (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame + *(*U32)(unsafe.Pointer((pInfo + 4 /* &.aReadMark */))) = U32(0) i = 1 __22: if !(i < (SQLITE_SHM_NLOCK - 3)) { @@ -38709,10 +39177,10 @@ __22: if !((i == 1) && ((*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame != 0)) { goto __27 } - *(*U32)(unsafe.Pointer((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + uintptr(i)*4)) = (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame + *(*U32)(unsafe.Pointer((pInfo + 4 /* &.aReadMark */) + uintptr(i)*4)) = (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame goto __28 __27: - *(*U32)(unsafe.Pointer((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + uintptr(i)*4)) = READMARK_NOT_USED + *(*U32)(unsafe.Pointer((pInfo + 4 /* &.aReadMark */) + uintptr(i)*4)) = READMARK_NOT_USED __28: ; walUnlockExclusive(tls, pWal, (3 + (i)), 1) @@ -38742,7 +39210,7 @@ __24: goto __30 } Xsqlite3_log(tls, (SQLITE_NOTICE | (int32(1) << 8)), - ts+3079, /* "recovered %d fra..." */ + ts+3089, /* "recovered %d fra..." */ libc.VaList(bp, (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame, (*Wal)(unsafe.Pointer(pWal)).FzWalName)) __30: ; @@ -39102,7 +39570,9 @@ func walIteratorInit(tls *libc.TLS, pWal uintptr, nBackfill U32, pp uintptr) int // lock is successfully obtained or the busy-handler returns 0. func walBusyLock(tls *libc.TLS, pWal uintptr, xBusy uintptr, pBusyArg uintptr, lockIdx int32, n int32) int32 { /* sqlite3.c:62195:12: */ var rc int32 - for ok := true; ok; ok = (((xBusy != 0) && (rc == SQLITE_BUSY)) && ((*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(&xBusy)))(tls, pBusyArg) != 0)) { + for ok := true; ok; ok = (((xBusy != 0) && (rc == SQLITE_BUSY)) && ((*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xBusy})).f(tls, pBusyArg) != 0)) { rc = walLockExclusive(tls, pWal, lockIdx, n) } return rc @@ -39142,11 +39612,11 @@ func walRestartHdr(tls *libc.TLS, pWal uintptr, salt1 U32) { /* sqlite3.c:62240: Xsqlite3Put4byte(tls, (aSalt), (U32(1) + Xsqlite3Get4byte(tls, (aSalt)))) libc.Xmemcpy(tls, ((pWal + 52 /* &.hdr */ + 32 /* &.aSalt */) + 1*4), bp /* &salt1 */, uint32(4)) walIndexWriteHdr(tls, pWal) - libc.AtomicStoreNInt32((libc.AtomicLoadUintptr(&pInfo) /* &.nBackfill */), int32(0), 0) - (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfillAttempted = U32(0) - *(*U32)(unsafe.Pointer((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + 1*4)) = U32(0) + libc.AtomicStoreNInt32((pInfo /* &.nBackfill */), int32(0), 0) + (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfillAttempted = U32(0) + *(*U32)(unsafe.Pointer((pInfo + 4 /* &.aReadMark */) + 1*4)) = U32(0) for i = 2; i < (SQLITE_SHM_NLOCK - 3); i++ { - *(*U32)(unsafe.Pointer((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + uintptr(i)*4)) = READMARK_NOT_USED + *(*U32)(unsafe.Pointer((pInfo + 4 /* &.aReadMark */) + uintptr(i)*4)) = READMARK_NOT_USED } } @@ -39214,7 +39684,7 @@ func walCheckpoint(tls *libc.TLS, pWal uintptr, db uintptr, eMode int32, xBusy u szPage = walPagesize(tls, pWal) libc.AtomicStoreUintptr(&pInfo, uintptr(walCkptInfo(tls, pWal))) - if !((*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfill < (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame) { + if !((*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfill < (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame) { goto __1 } @@ -39232,7 +39702,7 @@ __2: if !(i < (SQLITE_SHM_NLOCK - 3)) { goto __4 } - y = U32(libc.AtomicLoadNUint32(((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + uintptr(i)*4), 0)) + y = U32(libc.AtomicLoadNUint32(((pInfo + 4 /* &.aReadMark */) + uintptr(i)*4), 0)) if !(mxSafeFrame > y) { goto __5 } @@ -39247,7 +39717,7 @@ __2: } return READMARK_NOT_USED }() - libc.AtomicStoreNUint32(((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + uintptr(i)*4), uint32(iMark), 0) + libc.AtomicStoreNUint32(((pInfo + 4 /* &.aReadMark */) + uintptr(i)*4), uint32(iMark), 0) walUnlockExclusive(tls, pWal, (3 + (i)), 1) goto __7 __6: @@ -39274,10 +39744,10 @@ __4: ; // Allocate the iterator - if !((*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfill < mxSafeFrame) { + if !((*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfill < mxSafeFrame) { goto __10 } - rc = walIteratorInit(tls, pWal, (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfill, bp /* &pIter */) + rc = walIteratorInit(tls, pWal, (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfill, bp /* &pIter */) __10: ; @@ -39286,9 +39756,9 @@ __10: ((libc.AssignInt32(&rc, walBusyLock(tls, pWal, xBusy, pBusyArg, (3+(0)), 1))) == SQLITE_OK)) { goto __11 } - nBackfill = (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfill + nBackfill = (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfill - (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfillAttempted = mxSafeFrame + (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfillAttempted = mxSafeFrame // Sync the WAL to disk rc = Xsqlite3OsSync(tls, (*Wal)(unsafe.Pointer(pWal)).FpWalFd, (((sync_flags) >> 2) & 0x03)) @@ -39390,7 +39860,7 @@ __23: if !(rc == SQLITE_OK) { goto __25 } - libc.AtomicStoreNUint32((libc.AtomicLoadUintptr(&pInfo) /* &.nBackfill */), uint32(mxSafeFrame), 0) + libc.AtomicStoreNUint32((pInfo /* &.nBackfill */), uint32(mxSafeFrame), 0) __25: ; __22: @@ -39420,7 +39890,7 @@ __1: goto __27 } - if !((*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfill < (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame) { + if !((*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfill < (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame) { goto __28 } rc = SQLITE_BUSY @@ -39486,7 +39956,7 @@ func walLimitSize(tls *libc.TLS, pWal uintptr, nMax I64) { /* sqlite3.c:62473:13 } Xsqlite3EndBenignMalloc(tls) if rx != 0 { - Xsqlite3_log(tls, rx, ts+3116 /* "cannot limit WAL..." */, libc.VaList(bp, (*Wal)(unsafe.Pointer(pWal)).FzWalName)) + Xsqlite3_log(tls, rx, ts+3126 /* "cannot limit WAL..." */, libc.VaList(bp, (*Wal)(unsafe.Pointer(pWal)).FzWalName)) } } @@ -39593,9 +40063,9 @@ func walIndexTryHdr(tls *libc.TLS, pWal uintptr, pChanged uintptr) int32 { /* sq // shared among multiple processes and not all mutex implementions work // reliably in that environment. libc.AtomicStoreUintptr(&aHdr, uintptr(walIndexHdr(tls, pWal))) - libc.Xmemcpy(tls, bp /* &h1 */, (libc.AtomicLoadUintptr(&aHdr)), uint32(unsafe.Sizeof(WalIndexHdr{}))) // Possible TSAN false-positive + libc.Xmemcpy(tls, bp /* &h1 */, (aHdr), uint32(unsafe.Sizeof(WalIndexHdr{}))) // Possible TSAN false-positive walShmBarrier(tls, pWal) - libc.Xmemcpy(tls, bp+48 /* &h2 */, (libc.AtomicLoadUintptr(&aHdr) + 1*48), uint32(unsafe.Sizeof(WalIndexHdr{}))) + libc.Xmemcpy(tls, bp+48 /* &h2 */, (aHdr + 1*48), uint32(unsafe.Sizeof(WalIndexHdr{}))) if (libc.Xmemcmp(tls, bp /* &h1 */, bp+48 /* &h2 */, uint32(unsafe.Sizeof(WalIndexHdr{}))) != 0) { return 1 // Dirty read @@ -39672,7 +40142,7 @@ func walIndexReadHdr(tls *libc.TLS, pWal uintptr, pChanged uintptr) int32 { /* s // works, but may fail if the wal-index header is corrupt or currently // being modified by another thread or process. badHdr = func() int32 { - if libc.AtomicLoadPUintptr(bp /* page0 */) != 0 { + if *(*uintptr)(unsafe.Pointer(bp /* page0 */)) != 0 { return walIndexTryHdr(tls, pWal, pChanged) } return 1 @@ -40098,7 +40568,7 @@ func walTryBeginRead(tls *libc.TLS, pWal uintptr, pChanged uintptr, useWal int32 } libc.AtomicStoreUintptr(&pInfo, uintptr(walCkptInfo(tls, pWal))) - if (!(useWal != 0) && (U32(libc.AtomicLoadNUint32((libc.AtomicLoadUintptr(&pInfo) /* &.nBackfill */), 0)) == (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame)) && + if (!(useWal != 0) && (U32(libc.AtomicLoadNUint32((pInfo /* &.nBackfill */), 0)) == (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame)) && (((*Wal)(unsafe.Pointer(pWal)).FpSnapshot == uintptr(0)) || ((*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame == U32(0))) { // The WAL has been completely backfilled (or it is empty). // and can be safely ignored. @@ -40139,7 +40609,7 @@ func walTryBeginRead(tls *libc.TLS, pWal uintptr, pChanged uintptr, useWal int32 mxFrame = (*WalIndexHdr)(unsafe.Pointer((*Wal)(unsafe.Pointer(pWal)).FpSnapshot)).FmxFrame } for i = 1; i < (SQLITE_SHM_NLOCK - 3); i++ { - var thisMark U32 = U32(libc.AtomicLoadNUint32(((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + uintptr(i)*4), 0)) + var thisMark U32 = U32(libc.AtomicLoadNUint32(((pInfo + 4 /* &.aReadMark */) + uintptr(i)*4), 0)) if (mxReadMark <= thisMark) && (thisMark <= mxFrame) { mxReadMark = thisMark @@ -40151,7 +40621,7 @@ func walTryBeginRead(tls *libc.TLS, pWal uintptr, pChanged uintptr, useWal int32 for i = 1; i < (SQLITE_SHM_NLOCK - 3); i++ { rc = walLockExclusive(tls, pWal, (3 + (i)), 1) if rc == SQLITE_OK { - libc.AtomicStoreNUint32(((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + uintptr(i)*4), uint32(mxFrame), 0) + libc.AtomicStoreNUint32(((pInfo + 4 /* &.aReadMark */) + uintptr(i)*4), uint32(mxFrame), 0) mxReadMark = mxFrame mxI = i walUnlockExclusive(tls, pWal, (3 + (i)), 1) @@ -40209,9 +40679,9 @@ func walTryBeginRead(tls *libc.TLS, pWal uintptr, pChanged uintptr, useWal int32 // that it can read version A from the database file. However, since // we can guarantee that the checkpointer that set nBackfill could not // see any pages past pWal->hdr.mxFrame, this problem does not come up. - (*Wal)(unsafe.Pointer(pWal)).FminFrame = (U32(libc.AtomicLoadNUint32((libc.AtomicLoadUintptr(&pInfo) /* &.nBackfill */), 0) + 1)) + (*Wal)(unsafe.Pointer(pWal)).FminFrame = (U32(libc.AtomicLoadNUint32((pInfo /* &.nBackfill */), 0) + 1)) walShmBarrier(tls, pWal) - if (U32(libc.AtomicLoadNUint32(((libc.AtomicLoadUintptr(&pInfo)+4 /* &.aReadMark */)+uintptr(mxI)*4), 0)) != mxReadMark) || + if (U32(libc.AtomicLoadNUint32(((pInfo+4 /* &.aReadMark */)+uintptr(mxI)*4), 0)) != mxReadMark) || (libc.Xmemcmp(tls, walIndexHdr(tls, pWal), (pWal+52 /* &.hdr */), uint32(unsafe.Sizeof(WalIndexHdr{}))) != 0) { walUnlockShared(tls, pWal, (3 + (mxI))) return -1 @@ -40259,8 +40729,8 @@ func Xsqlite3WalSnapshotRecover(tls *libc.TLS, pWal uintptr) int32 { /* sqlite3. if (pBuf1 == uintptr(0)) || (pBuf2 == uintptr(0)) { rc = SQLITE_NOMEM } else { - var i U32 = (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfillAttempted - for i = (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfillAttempted; i > U32(libc.AtomicLoadNUint32((libc.AtomicLoadUintptr(&pInfo) /* &.nBackfill */), 0)); i-- { + var i U32 = (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfillAttempted + for i = (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfillAttempted; i > U32(libc.AtomicLoadNUint32((pInfo /* &.nBackfill */), 0)); i-- { // var sLoc WalHashLoc at bp+8, 12 // Hash table location var pgno U32 // Page number in db file @@ -40287,7 +40757,7 @@ func Xsqlite3WalSnapshotRecover(tls *libc.TLS, pWal uintptr) int32 { /* sqlite3. } } - (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfillAttempted = (i - U32(1)) + (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfillAttempted = (i - U32(1)) } } @@ -40367,7 +40837,7 @@ func Xsqlite3WalBeginReadTransaction(tls *libc.TLS, pWal uintptr, pChanged uintp // with *pSnapshot and set *pChanged as appropriate for opening the // snapshot. if !(libc.Xmemcmp(tls, pSnapshot+32 /* &.aSalt */, pWal+52 /* &.hdr */ +32 /* &.aSalt */, uint32(unsafe.Sizeof([2]U32{}))) != 0) && - ((*WalIndexHdr)(unsafe.Pointer(pSnapshot)).FmxFrame >= (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfillAttempted) { + ((*WalIndexHdr)(unsafe.Pointer(pSnapshot)).FmxFrame >= (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfillAttempted) { libc.Xmemcpy(tls, (pWal + 52 /* &.hdr */), pSnapshot, uint32(unsafe.Sizeof(WalIndexHdr{}))) *(*int32)(unsafe.Pointer(pChanged)) = bChanged @@ -40606,7 +41076,9 @@ func Xsqlite3WalUndo(tls *libc.TLS, pWal uintptr, xUndo uintptr, pUndoCtx uintpt // page 1 is never written to the log until the transaction is // committed. As a result, the call to xUndo may not fail. - rc = (*(*func(*libc.TLS, uintptr, Pgno) int32)(unsafe.Pointer(&xUndo)))(tls, pUndoCtx, walFramePgno(tls, pWal, iFrame)) + rc = (*struct { + f func(*libc.TLS, uintptr, Pgno) int32 + })(unsafe.Pointer(&struct{ uintptr }{xUndo})).f(tls, pUndoCtx, walFramePgno(tls, pWal, iFrame)) } if iMax != (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame { walCleanupHash(tls, pWal) @@ -40672,7 +41144,7 @@ func walRestartLog(tls *libc.TLS, pWal uintptr) int32 { /* sqlite3.c:63690:12: * if int32((*Wal)(unsafe.Pointer(pWal)).FreadLock) == 0 { var pInfo uintptr = walCkptInfo(tls, pWal) - if (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfill > U32(0) { + if (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfill > U32(0) { // var salt1 U32 at bp, 4 Xsqlite3_randomness(tls, 4, bp /* &salt1 */) @@ -41582,7 +42054,7 @@ type MemPage1 = struct { FchildPtrSize U8 Fmax1bytePayload U8 FnOverflow U8 - _ [1]byte + F__ccgo_pad1 [1]byte FmaxLocal U16 FminLocal U16 FcellOffset U16 @@ -41846,11 +42318,11 @@ type MemPage1 = struct { // Forward declarations type MemPage = MemPage1 /* sqlite3.c:64658:24 */ type BtLock1 = struct { - FpBtree uintptr - FiTable Pgno - FeLock U8 - _ [3]byte - FpNext uintptr + FpBtree uintptr + FiTable Pgno + FeLock U8 + F__ccgo_pad1 [3]byte + FpNext uintptr } /* sqlite3.c:1331:9 */ type BtLock = BtLock1 /* sqlite3.c:64659:23 */ @@ -42265,7 +42737,7 @@ func Xsqlite3BtreeLeaveCursor(tls *libc.TLS, pCur uintptr) { /* sqlite3.c:65443: // The header string that appears at the beginning of every // SQLite database. -var zMagicHeader = *(*[16]int8)(unsafe.Pointer(ts + 3142 /* "SQLite format 3" */)) /* sqlite3.c:65474:19 */ +var zMagicHeader = *(*[16]int8)(unsafe.Pointer(ts + 3152 /* "SQLite format 3" */)) /* sqlite3.c:65474:19 */ // Set this global variable to 1 to enable tracing using the TRACE // macro. @@ -43196,7 +43668,9 @@ func btreeParseCellPtrIndex(tls *libc.TLS, pPage uintptr, pCell uintptr, pInfo u } func btreeParseCell(tls *libc.TLS, pPage uintptr, iCell int32, pInfo uintptr) { /* sqlite3.c:66752:13: */ - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pPage + 80 /* &.xParseCell */))))(tls, pPage, ((*MemPage)(unsafe.Pointer((pPage))).FaData + uintptr((int32((*MemPage)(unsafe.Pointer((pPage))).FmaskPage) & int32(libc.X__builtin_bswap16(tls, *(*U16)(unsafe.Pointer(((*MemPage)(unsafe.Pointer((pPage))).FaCellIdx + uintptr((2 * (iCell))))))))))), pInfo) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxParseCell})).f(tls, pPage, ((*MemPage)(unsafe.Pointer((pPage))).FaData + uintptr((int32((*MemPage)(unsafe.Pointer((pPage))).FmaskPage) & int32(libc.X__builtin_bswap16(tls, *(*U16)(unsafe.Pointer(((*MemPage)(unsafe.Pointer((pPage))).FaCellIdx + uintptr((2 * (iCell))))))))))), pInfo) } // The following routines are implementations of the MemPage.xCellSize @@ -43277,7 +43751,9 @@ func ptrmapPutOvflPtr(tls *libc.TLS, pPage uintptr, pSrc uintptr, pCell uintptr, return } - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pPage + 80 /* &.xParseCell */))))(tls, pPage, pCell, bp /* &info */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxParseCell})).f(tls, pPage, pCell, bp /* &info */) if U32((*CellInfo)(unsafe.Pointer(bp /* &info */)).FnLocal) < (*CellInfo)(unsafe.Pointer(bp /* &info */)).FnPayload { var ovfl Pgno if (Uptr(((*MemPage)(unsafe.Pointer(pSrc)).FaDataEnd)) >= Uptr((pCell))) && (Uptr(((*MemPage)(unsafe.Pointer(pSrc)).FaDataEnd)) < Uptr((pCell + uintptr((*CellInfo)(unsafe.Pointer(bp /* &info */)).FnLocal)))) { @@ -43460,7 +43936,9 @@ __18: __21: ; - size = int32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((pPage + 76 /* &.xCellSize */))))(tls, pPage, (src + uintptr(pc)))) + size = int32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxCellSize})).f(tls, pPage, (src + uintptr(pc)))) cbrk = cbrk - (size) if !((cbrk < iCellStart) || ((pc + size) > usableSize)) { goto __22 @@ -43950,7 +44428,9 @@ func btreeCellSizeCheck(tls *libc.TLS, pPage uintptr) int32 { /* sqlite3.c:67431 if (pc < iCellFirst) || (pc > iCellLast) { return Xsqlite3CorruptError(tls, 67452) } - sz = int32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((pPage + 76 /* &.xCellSize */))))(tls, pPage, (data + uintptr(pc)))) + sz = int32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxCellSize})).f(tls, pPage, (data + uintptr(pc)))) if (pc + sz) > usableSize { return Xsqlite3CorruptError(tls, 67457) @@ -44305,7 +44785,7 @@ func Xsqlite3BtreeOpen(tls *libc.TLS, pVfs uintptr, zFilename uintptr, db uintpt mutexOpen = uintptr(0) rc = SQLITE_OK isTempDb = (libc.Bool32((zFilename == uintptr(0)) || (int32(*(*int8)(unsafe.Pointer(zFilename))) == 0))) - isMemdb = (libc.Bool32((((zFilename != 0) && (libc.Xstrcmp(tls, zFilename, ts+3158 /* ":memory:" */) == 0)) || + isMemdb = (libc.Bool32((((zFilename != 0) && (libc.Xstrcmp(tls, zFilename, ts+3168 /* ":memory:" */) == 0)) || ((isTempDb != 0) && (Xsqlite3TempInMemory(tls, db) != 0))) || ((vfsFlags & SQLITE_OPEN_MEMORY) != 0))) @@ -44788,7 +45268,7 @@ func Xsqlite3BtreeClose(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:68190:20: Xsqlite3PagerClose(tls, (*BtShared)(unsafe.Pointer(pBt)).FpPager, (*Btree)(unsafe.Pointer(p)).Fdb) if ((*BtShared)(unsafe.Pointer(pBt)).FxFreeSchema != 0) && ((*BtShared)(unsafe.Pointer(pBt)).FpSchema != 0) { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pBt + 56 /* &.xFreeSchema */))))(tls, (*BtShared)(unsafe.Pointer(pBt)).FpSchema) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*BtShared)(unsafe.Pointer(pBt)).FxFreeSchema})).f(tls, (*BtShared)(unsafe.Pointer(pBt)).FpSchema) } Xsqlite3DbFree(tls, uintptr(0), (*BtShared)(unsafe.Pointer(pBt)).FpSchema) freeTempSpace(tls, pBt) @@ -45179,7 +45659,7 @@ __10: // // The original design allowed these amounts to vary, but as of // version 3.6.0, we require them to be fixed. - if !(libc.Xmemcmp(tls, (page1+21), ts+3167 /* "@ " */, uint32(3)) != 0) { + if !(libc.Xmemcmp(tls, (page1+21), ts+3177 /* "@ " */, uint32(3)) != 0) { goto __14 } goto page1_init_failed @@ -45742,7 +46222,9 @@ func modifyPagePointer(tls *libc.TLS, pPage uintptr, iFrom Pgno, iTo Pgno, eType if int32(eType) == PTRMAP_OVERFLOW1 { // var info CellInfo at bp, 20 - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pPage + 80 /* &.xParseCell */))))(tls, pPage, pCell, bp /* &info */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxParseCell})).f(tls, pPage, pCell, bp /* &info */) if U32((*CellInfo)(unsafe.Pointer(bp /* &info */)).FnLocal) < (*CellInfo)(unsafe.Pointer(bp /* &info */)).FnPayload { if (pCell + uintptr((*CellInfo)(unsafe.Pointer(bp /* &info */)).FnSize)) > ((*MemPage)(unsafe.Pointer(pPage)).FaData + uintptr((*BtShared)(unsafe.Pointer((*MemPage)(unsafe.Pointer(pPage)).FpBt)).FusableSize)) { return Xsqlite3CorruptError(tls, 69109) @@ -47548,7 +48030,9 @@ __35: // Size of the pCell cell in bytes // single byte varint and the record fits entirely on the main // b-tree page. - c = (*(*func(*libc.TLS, int32, uintptr, uintptr) int32)(unsafe.Pointer(&xRecordCompare)))(tls, nCell, (pCell + 1), pIdxKey) + c = (*struct { + f func(*libc.TLS, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xRecordCompare})).f(tls, nCell, (pCell + 1), pIdxKey) goto __39 __38: if !(!((int32(*(*U8)(unsafe.Pointer(pCell + 1))) & 0x80) != 0) && @@ -47558,12 +48042,16 @@ __38: // The record-size field is a 2 byte varint and the record // fits entirely on the main b-tree page. - c = (*(*func(*libc.TLS, int32, uintptr, uintptr) int32)(unsafe.Pointer(&xRecordCompare)))(tls, nCell, (pCell + 2), pIdxKey) + c = (*struct { + f func(*libc.TLS, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xRecordCompare})).f(tls, nCell, (pCell + 2), pIdxKey) goto __41 __40: pCellBody = (pCell - uintptr((*MemPage)(unsafe.Pointer(pPage)).FchildPtrSize)) nOverrun = 18 // Size of the overrun padding - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pPage + 80 /* &.xParseCell */))))(tls, pPage, pCellBody, (pCur + 28 /* &.info */)) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxParseCell})).f(tls, pPage, pCellBody, (pCur + 28 /* &.info */)) nCell = int32((*BtCursor)(unsafe.Pointer(pCur)).Finfo.FnKey) // True if key size is 2^32 or more // Invalid key size: 0x80 0x80 0x00 @@ -49227,7 +49715,9 @@ func populateCellCache(tls *libc.TLS, p uintptr, idx int32, N int32) { /* sqlite for N > 0 { if int32(*(*U16)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FszCell + uintptr(idx)*2))) == 0 { - *(*U16)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FszCell + uintptr(idx)*2)) = (*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer(((*CellArray)(unsafe.Pointer(p)).FpRef + 76 /* &.xCellSize */))))(tls, (*CellArray)(unsafe.Pointer(p)).FpRef, *(*uintptr)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FapCell + uintptr(idx)*4))) + *(*U16)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FszCell + uintptr(idx)*2)) = (*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FpRef)).FxCellSize})).f(tls, (*CellArray)(unsafe.Pointer(p)).FpRef, *(*uintptr)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FapCell + uintptr(idx)*4))) } else { } @@ -49239,7 +49729,9 @@ func populateCellCache(tls *libc.TLS, p uintptr, idx int32, N int32) { /* sqlite // Return the size of the Nth element of the cell array func computeCellSize(tls *libc.TLS, p uintptr, N int32) U16 { /* sqlite3.c:72424:28: */ - *(*U16)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FszCell + uintptr(N)*2)) = (*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer(((*CellArray)(unsafe.Pointer(p)).FpRef + 76 /* &.xCellSize */))))(tls, (*CellArray)(unsafe.Pointer(p)).FpRef, *(*uintptr)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FapCell + uintptr(N)*4))) + *(*U16)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FszCell + uintptr(N)*2)) = (*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FpRef)).FxCellSize})).f(tls, (*CellArray)(unsafe.Pointer(p)).FpRef, *(*uintptr)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FapCell + uintptr(N)*4))) return *(*U16)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FszCell + uintptr(N)*2)) } @@ -49666,7 +50158,9 @@ func balance_quick(tls *libc.TLS, pParent uintptr, pPage uintptr, pSpace uintptr var pOut uintptr = (pSpace + 4) *(*uintptr)(unsafe.Pointer(bp + 8 /* pCell */)) = *(*uintptr)(unsafe.Pointer((pPage + 36 /* &.apOvfl */))) - *(*U16)(unsafe.Pointer(bp + 12 /* szCell */)) = (*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((pPage + 76 /* &.xCellSize */))))(tls, pPage, *(*uintptr)(unsafe.Pointer(bp + 8 /* pCell */))) + *(*U16)(unsafe.Pointer(bp + 12 /* szCell */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxCellSize})).f(tls, pPage, *(*uintptr)(unsafe.Pointer(bp + 8 /* pCell */))) var pStop uintptr // var b CellArray at bp+16, 64 @@ -50032,13 +50526,17 @@ __16: } *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4)) = *(*uintptr)(unsafe.Pointer((pParent + 36 /* &.apOvfl */))) *(*Pgno)(unsafe.Pointer(bp + 180 /* pgno */)) = Xsqlite3Get4byte(tls, *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4))) - *(*int32)(unsafe.Pointer(bp + 28 /* &szNew[0] */ + uintptr(i)*4)) = int32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((pParent + 76 /* &.xCellSize */))))(tls, pParent, *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4)))) + *(*int32)(unsafe.Pointer(bp + 28 /* &szNew[0] */ + uintptr(i)*4)) = int32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pParent)).FxCellSize})).f(tls, pParent, *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4)))) (*MemPage)(unsafe.Pointer(pParent)).FnOverflow = U8(0) goto __18 __17: *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4)) = ((*MemPage)(unsafe.Pointer((pParent))).FaData + uintptr((int32((*MemPage)(unsafe.Pointer((pParent))).FmaskPage) & int32(libc.X__builtin_bswap16(tls, *(*U16)(unsafe.Pointer(((*MemPage)(unsafe.Pointer((pParent))).FaCellIdx + uintptr((2 * ((i + nxDiv) - int32((*MemPage)(unsafe.Pointer(pParent)).FnOverflow)))))))))))) *(*Pgno)(unsafe.Pointer(bp + 180 /* pgno */)) = Xsqlite3Get4byte(tls, *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4))) - *(*int32)(unsafe.Pointer(bp + 28 /* &szNew[0] */ + uintptr(i)*4)) = int32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((pParent + 76 /* &.xCellSize */))))(tls, pParent, *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4)))) + *(*int32)(unsafe.Pointer(bp + 28 /* &szNew[0] */ + uintptr(i)*4)) = int32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pParent)).FxCellSize})).f(tls, pParent, *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4)))) // Drop the cell from the parent page. apDiv[i] still points to // the cell within the parent, even though it has been dropped. @@ -50300,7 +50798,9 @@ __46: if !(j < int32((*MemPage)(unsafe.Pointer(p)).FnOverflow)) { goto __48 } - *(*int32)(unsafe.Pointer(bp + 28 /* &szNew */ + uintptr(i)*4)) += (2 + int32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((p + 76 /* &.xCellSize */))))(tls, p, *(*uintptr)(unsafe.Pointer((p + 36 /* &.apOvfl */) + uintptr(j)*4))))) + *(*int32)(unsafe.Pointer(bp + 28 /* &szNew */ + uintptr(i)*4)) += (2 + int32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(p)).FxCellSize})).f(tls, p, *(*uintptr)(unsafe.Pointer((p + 36 /* &.apOvfl */) + uintptr(j)*4))))) goto __47 __47: j++ @@ -50804,7 +51304,9 @@ __118: goto __120 } j-- - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pNew2 + 80 /* &.xParseCell */))))(tls, pNew2, *(*uintptr)(unsafe.Pointer((*CellArray)(unsafe.Pointer(bp+72 /* &b */)).FapCell + uintptr(j)*4)), bp+236 /* &info */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pNew2)).FxParseCell})).f(tls, pNew2, *(*uintptr)(unsafe.Pointer((*CellArray)(unsafe.Pointer(bp+72 /* &b */)).FapCell + uintptr(j)*4)), bp+236 /* &info */) pCell1 = pTemp1 sz2 = (4 + Xsqlite3PutVarint(tls, (pCell1+4), uint64((*CellInfo)(unsafe.Pointer(bp+236 /* &info */)).FnKey))) pTemp1 = uintptr(0) @@ -50825,7 +51327,9 @@ __120: goto __122 } - sz2 = int32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((pParent + 76 /* &.xCellSize */))))(tls, pParent, pCell1)) + sz2 = int32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pParent)).FxCellSize})).f(tls, pParent, pCell1)) __122: ; __121: @@ -51621,7 +52125,9 @@ __25: if !(((*BtShared)(unsafe.Pointer(pBt)).FautoVacuum != 0) && (*(*int32)(unsafe.Pointer(bp + 76 /* szNew */)) > int32((*MemPage)(unsafe.Pointer(pPage)).FmaxLocal))) { goto __26 } - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pPage + 80 /* &.xParseCell */))))(tls, pPage, newCell, bp+52 /* &info */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxParseCell})).f(tls, pPage, newCell, bp+52 /* &info */) if !((*CellInfo)(unsafe.Pointer(bp+52 /* &info */)).FnPayload != U32((*CellInfo)(unsafe.Pointer(bp+52 /* &info */)).FnLocal)) { goto __27 } @@ -51662,7 +52168,9 @@ __31: libc.Xmemcpy(tls, newCell, oldCell, uint32(4)) __32: ; - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pPage + 80 /* &.xParseCell */))))(tls, pPage, oldCell, bp+80 /* &info1 */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxParseCell})).f(tls, pPage, oldCell, bp+80 /* &info1 */) if !(U32((*CellInfo)(unsafe.Pointer(bp+80 /* &info1 */)).FnLocal) != (*CellInfo)(unsafe.Pointer(bp+80 /* &info1 */)).FnPayload) { goto __33 } @@ -52031,7 +52539,9 @@ func Xsqlite3BtreeDelete(tls *libc.TLS, pCur uintptr, flags U8) int32 { /* sqlit if *(*int32)(unsafe.Pointer(bp + 20 /* rc */)) != 0 { return *(*int32)(unsafe.Pointer(bp + 20 /* rc */)) } - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pPage + 80 /* &.xParseCell */))))(tls, pPage, pCell, bp /* &info */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxParseCell})).f(tls, pPage, pCell, bp /* &info */) if U32((*CellInfo)(unsafe.Pointer(bp /* &info */)).FnLocal) != (*CellInfo)(unsafe.Pointer(bp /* &info */)).FnPayload { *(*int32)(unsafe.Pointer(bp + 20 /* rc */)) = clearCellOverflow(tls, pPage, pCell, bp /* &info */) } else { @@ -52069,7 +52579,9 @@ func Xsqlite3BtreeDelete(tls *libc.TLS, pCur uintptr, flags U8) int32 { /* sqlit if pCell < ((*MemPage)(unsafe.Pointer(pLeaf)).FaData + 4) { return Xsqlite3CorruptError(tls, 74681) } - nCell = int32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((pLeaf + 76 /* &.xCellSize */))))(tls, pLeaf, pCell)) + nCell = int32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pLeaf)).FxCellSize})).f(tls, pLeaf, pCell)) pTmp = (*BtShared)(unsafe.Pointer(pBt)).FpTmpSpace @@ -52341,7 +52853,9 @@ __8: ; __7: ; - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp /* pPage */)) + 80 /* &.xParseCell */))))(tls, *(*uintptr)(unsafe.Pointer(bp /* pPage */)), pCell, bp+4 /* &info */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPage */)))).FxParseCell})).f(tls, *(*uintptr)(unsafe.Pointer(bp /* pPage */)), pCell, bp+4 /* &info */) if !(U32((*CellInfo)(unsafe.Pointer(bp+4 /* &info */)).FnLocal) != (*CellInfo)(unsafe.Pointer(bp+4 /* &info */)).FnPayload) { goto __9 } @@ -52694,7 +53208,7 @@ func checkAppendMsg(tls *libc.TLS, pCheck uintptr, zFormat uintptr, va uintptr) (*IntegrityCk)(unsafe.Pointer(pCheck)).FnErr++ ap = va if (*IntegrityCk)(unsafe.Pointer(pCheck)).FerrMsg.FnChar != 0 { - Xsqlite3_str_append(tls, (pCheck + 40 /* &.errMsg */), ts+3171 /* "\n" */, 1) + Xsqlite3_str_append(tls, (pCheck + 40 /* &.errMsg */), ts+3181 /* "\n" */, 1) } if (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx != 0 { Xsqlite3_str_appendf(tls, (pCheck + 40 /* &.errMsg */), (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx, libc.VaList(bp, (*IntegrityCk)(unsafe.Pointer(pCheck)).Fv1, (*IntegrityCk)(unsafe.Pointer(pCheck)).Fv2)) @@ -52730,11 +53244,11 @@ func checkRef(tls *libc.TLS, pCheck uintptr, iPage Pgno) int32 { /* sqlite3.c:75 defer tls.Free(16) if (iPage > (*IntegrityCk)(unsafe.Pointer(pCheck)).FnPage) || (iPage == Pgno(0)) { - checkAppendMsg(tls, pCheck, ts+3173 /* "invalid page num..." */, libc.VaList(bp, iPage)) + checkAppendMsg(tls, pCheck, ts+3183 /* "invalid page num..." */, libc.VaList(bp, iPage)) return 1 } if getPageReferenced(tls, pCheck, iPage) != 0 { - checkAppendMsg(tls, pCheck, ts+3196 /* "2nd reference to..." */, libc.VaList(bp+8, iPage)) + checkAppendMsg(tls, pCheck, ts+3206 /* "2nd reference to..." */, libc.VaList(bp+8, iPage)) return 1 } if libc.AtomicLoadNInt32(((*IntegrityCk)(unsafe.Pointer(pCheck)).Fdb+284 /* &.u1 */ /* &.isInterrupted */), 0) != 0 { @@ -52761,13 +53275,13 @@ func checkPtrmap(tls *libc.TLS, pCheck uintptr, iChild Pgno, eType U8, iParent P if (rc == SQLITE_NOMEM) || (rc == (SQLITE_IOERR | (int32(12) << 8))) { (*IntegrityCk)(unsafe.Pointer(pCheck)).FbOomFault = 1 } - checkAppendMsg(tls, pCheck, ts+3221 /* "Failed to read p..." */, libc.VaList(bp, iChild)) + checkAppendMsg(tls, pCheck, ts+3231 /* "Failed to read p..." */, libc.VaList(bp, iChild)) return } if (int32(*(*U8)(unsafe.Pointer(bp + 48 /* ePtrmapType */))) != int32(eType)) || (*(*Pgno)(unsafe.Pointer(bp + 52 /* iPtrmapParent */)) != iParent) { checkAppendMsg(tls, pCheck, - ts+3250, /* "Bad ptr map entr..." */ + ts+3260, /* "Bad ptr map entr..." */ libc.VaList(bp+8, iChild, int32(eType), iParent, int32(*(*U8)(unsafe.Pointer(bp + 48 /* ePtrmapType */))), *(*Pgno)(unsafe.Pointer(bp + 52 /* iPtrmapParent */)))) } } @@ -52790,7 +53304,7 @@ func checkList(tls *libc.TLS, pCheck uintptr, isFreeList int32, iPage Pgno, N U3 } N-- if Xsqlite3PagerGet(tls, (*IntegrityCk)(unsafe.Pointer(pCheck)).FpPager, iPage, bp+40 /* &pOvflPage */, 0) != 0 { - checkAppendMsg(tls, pCheck, ts+3304 /* "failed to get pa..." */, libc.VaList(bp, iPage)) + checkAppendMsg(tls, pCheck, ts+3314 /* "failed to get pa..." */, libc.VaList(bp, iPage)) break } pOvflData = Xsqlite3PagerGetData(tls, *(*uintptr)(unsafe.Pointer(bp + 40 /* pOvflPage */))) @@ -52801,7 +53315,7 @@ func checkList(tls *libc.TLS, pCheck uintptr, isFreeList int32, iPage Pgno, N U3 } if n > (((*BtShared)(unsafe.Pointer((*IntegrityCk)(unsafe.Pointer(pCheck)).FpBt)).FusableSize / U32(4)) - U32(2)) { checkAppendMsg(tls, pCheck, - ts+3326 /* "freelist leaf co..." */, libc.VaList(bp+8, iPage)) + ts+3336 /* "freelist leaf co..." */, libc.VaList(bp+8, iPage)) N-- } else { for i = 0; i < int32(n); i++ { @@ -52827,12 +53341,12 @@ func checkList(tls *libc.TLS, pCheck uintptr, isFreeList int32, iPage Pgno, N U3 } if (N != 0) && (nErrAtStart == (*IntegrityCk)(unsafe.Pointer(pCheck)).FnErr) { checkAppendMsg(tls, pCheck, - ts+3365, /* "%s is %d but sho..." */ + ts+3375, /* "%s is %d but sho..." */ libc.VaList(bp+16, func() uintptr { if isFreeList != 0 { - return ts + 3391 /* "size" */ + return ts + 3401 /* "size" */ } - return ts + 3396 /* "overflow list le..." */ + return ts + 3406 /* "overflow list le..." */ }(), (expected-N), expected)) } @@ -52976,13 +53490,13 @@ __1: return 0 __2: ; - (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx = ts + 3417 /* "Page %u: " */ + (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx = ts + 3427 /* "Page %u: " */ (*IntegrityCk)(unsafe.Pointer(pCheck)).Fv1 = iPage if !((libc.AssignInt32(&rc, btreeGetPage(tls, pBt, iPage, bp+96 /* &pPage */, 0))) != 0) { goto __3 } checkAppendMsg(tls, pCheck, - ts+3427 /* "unable to get th..." */, libc.VaList(bp, rc)) + ts+3437 /* "unable to get th..." */, libc.VaList(bp, rc)) goto end_of_check __3: ; @@ -52996,7 +53510,7 @@ __3: } // The only possible error from InitPage checkAppendMsg(tls, pCheck, - ts+3465 /* "btreeInitPage() ..." */, libc.VaList(bp+8, rc)) + ts+3475 /* "btreeInitPage() ..." */, libc.VaList(bp+8, rc)) goto end_of_check __4: ; @@ -53004,7 +53518,7 @@ __4: goto __5 } - checkAppendMsg(tls, pCheck, ts+3503 /* "free space corru..." */, libc.VaList(bp+16, rc)) + checkAppendMsg(tls, pCheck, ts+3513 /* "free space corru..." */, libc.VaList(bp+16, rc)) goto end_of_check __5: ; @@ -53012,7 +53526,7 @@ __5: hdr = int32((*MemPage)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)))).FhdrOffset) // Set up for cell analysis - (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx = ts + 3525 /* "On tree page %u ..." */ + (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx = ts + 3535 /* "On tree page %u ..." */ contentOffset = (U32(((((int32(*(*U8)(unsafe.Pointer((data + uintptr((hdr + 5)))))) << 8) | int32(*(*U8)(unsafe.Pointer((data + uintptr((hdr + 5))) + 1)))) - 1) & 0xffff) + 1)) // Enforced by btreeInitPage() @@ -53034,7 +53548,7 @@ __5: if !((*BtShared)(unsafe.Pointer(pBt)).FautoVacuum != 0) { goto __8 } - (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx = ts + 3551 /* "On page %u at ri..." */ + (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx = ts + 3561 /* "On page %u at ri..." */ checkPtrmap(tls, pCheck, uint32(pgno), uint8(PTRMAP_BTREE), iPage) __8: ; @@ -53065,18 +53579,20 @@ __9: if !((pc < contentOffset) || (pc > (usableSize - U32(4)))) { goto __12 } - checkAppendMsg(tls, pCheck, ts+3579, /* "Offset %d out of..." */ + checkAppendMsg(tls, pCheck, ts+3589, /* "Offset %d out of..." */ libc.VaList(bp+24, pc, contentOffset, (usableSize-U32(4)))) doCoverageCheck = 0 goto __10 __12: ; pCell = (data + uintptr(pc)) - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)) + 80 /* &.xParseCell */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)), pCell, bp+108 /* &info */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)))).FxParseCell})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)), pCell, bp+108 /* &info */) if !((pc + U32((*CellInfo)(unsafe.Pointer(bp+108 /* &info */)).FnSize)) > usableSize) { goto __13 } - checkAppendMsg(tls, pCheck, ts+3609 /* "Extends off end ..." */, 0) + checkAppendMsg(tls, pCheck, ts+3619 /* "Extends off end ..." */, 0) doCoverageCheck = 0 goto __10 __13: @@ -53094,7 +53610,7 @@ __13: }() != 0) { goto __15 } - checkAppendMsg(tls, pCheck, ts+3633 /* "Rowid %lld out o..." */, libc.VaList(bp+48, (*CellInfo)(unsafe.Pointer(bp+108 /* &info */)).FnKey)) + checkAppendMsg(tls, pCheck, ts+3643 /* "Rowid %lld out o..." */, libc.VaList(bp+48, (*CellInfo)(unsafe.Pointer(bp+108 /* &info */)).FnKey)) __15: ; *(*I64)(unsafe.Pointer(bp + 100 /* maxKey */)) = (*CellInfo)(unsafe.Pointer(bp + 108 /* &info */)).FnKey @@ -53135,7 +53651,7 @@ __20: if !(d2 != depth) { goto __21 } - checkAppendMsg(tls, pCheck, ts+3657 /* "Child page depth..." */, 0) + checkAppendMsg(tls, pCheck, ts+3667 /* "Child page depth..." */, 0) depth = d2 __21: ; @@ -53173,7 +53689,9 @@ __24: goto __26 } pc = U32(libc.X__builtin_bswap16(tls, *(*U16)(unsafe.Pointer((data + uintptr((cellStart + (i * 2)))))))) - size = U32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)) + 76 /* &.xCellSize */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)), (data + uintptr(pc)))) + size = U32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)))).FxCellSize})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)), (data + uintptr(pc)))) btreeHeapInsert(tls, heap, ((pc << 16) | ((pc + size) - U32(1)))) goto __25 __25: @@ -53233,7 +53751,7 @@ __29: goto __31 } checkAppendMsg(tls, pCheck, - ts+3682 /* "Multiple uses fo..." */, libc.VaList(bp+56, (*(*U32)(unsafe.Pointer(bp + 128 /* x */))>>16), iPage)) + ts+3692 /* "Multiple uses fo..." */, libc.VaList(bp+56, (*(*U32)(unsafe.Pointer(bp + 128 /* x */))>>16), iPage)) goto __30 goto __32 __31: @@ -53253,7 +53771,7 @@ __30: goto __33 } checkAppendMsg(tls, pCheck, - ts+3719, /* "Fragmentation of..." */ + ts+3729, /* "Fragmentation of..." */ libc.VaList(bp+72, nFrag, int32(*(*U8)(unsafe.Pointer(data + uintptr((hdr + 7))))), iPage)) __33: ; @@ -53382,7 +53900,7 @@ __6: if !(bCkFreelist != 0) { goto __7 } - (*IntegrityCk)(unsafe.Pointer(bp + 32 /* &sCheck */)).FzPfx = ts + 3771 /* "Main freelist: " */ + (*IntegrityCk)(unsafe.Pointer(bp + 32 /* &sCheck */)).FzPfx = ts + 3781 /* "Main freelist: " */ checkList(tls, bp+32 /* &sCheck */, 1, Xsqlite3Get4byte(tls, ((*MemPage)(unsafe.Pointer((*BtShared)(unsafe.Pointer(pBt)).FpPage1)).FaData+32)), Xsqlite3Get4byte(tls, ((*MemPage)(unsafe.Pointer((*BtShared)(unsafe.Pointer(pBt)).FpPage1)).FaData+36))) (*IntegrityCk)(unsafe.Pointer(bp + 32 /* &sCheck */)).FzPfx = uintptr(0) @@ -53420,7 +53938,7 @@ __13: goto __15 } checkAppendMsg(tls, bp+32, /* &sCheck */ - ts+3787, /* "max rootpage (%d..." */ + ts+3797, /* "max rootpage (%d..." */ libc.VaList(bp, mx, mxInHdr)) __15: ; @@ -53430,7 +53948,7 @@ __9: goto __16 } checkAppendMsg(tls, bp+32, /* &sCheck */ - ts+3832 /* "incremental_vacu..." */, 0) + ts+3842 /* "incremental_vacu..." */, 0) __16: ; __10: @@ -53480,13 +53998,13 @@ __23: if !((getPageReferenced(tls, bp+32 /* &sCheck */, i) == 0) && ((ptrmapPageno(tls, pBt, i) != i) || !(int32((*BtShared)(unsafe.Pointer(pBt)).FautoVacuum) != 0))) { goto __26 } - checkAppendMsg(tls, bp+32 /* &sCheck */, ts+3887 /* "Page %d is never..." */, libc.VaList(bp+16, i)) + checkAppendMsg(tls, bp+32 /* &sCheck */, ts+3897 /* "Page %d is never..." */, libc.VaList(bp+16, i)) __26: ; if !((getPageReferenced(tls, bp+32 /* &sCheck */, i) != 0) && ((ptrmapPageno(tls, pBt, i) == i) && ((*BtShared)(unsafe.Pointer(pBt)).FautoVacuum != 0))) { goto __27 } - checkAppendMsg(tls, bp+32 /* &sCheck */, ts+3909 /* "Pointer map page..." */, libc.VaList(bp+24, i)) + checkAppendMsg(tls, bp+32 /* &sCheck */, ts+3919 /* "Pointer map page..." */, libc.VaList(bp+24, i)) __27: ; goto __24 @@ -53805,7 +54323,7 @@ func findBtree(tls *libc.TLS, pErrorDb uintptr, pDb uintptr, zDb uintptr) uintpt libc.Xmemset(tls, bp+16 /* &sParse */, 0, uint32(unsafe.Sizeof(Parse{}))) (*Parse)(unsafe.Pointer(bp + 16 /* &sParse */)).Fdb = pDb if Xsqlite3OpenTempDatabase(tls, bp+16 /* &sParse */) != 0 { - Xsqlite3ErrorWithMsg(tls, pErrorDb, (*Parse)(unsafe.Pointer(bp+16 /* &sParse */)).Frc, ts+2790 /* "%s" */, libc.VaList(bp, (*Parse)(unsafe.Pointer(bp+16 /* &sParse */)).FzErrMsg)) + Xsqlite3ErrorWithMsg(tls, pErrorDb, (*Parse)(unsafe.Pointer(bp+16 /* &sParse */)).Frc, ts+2800 /* "%s" */, libc.VaList(bp, (*Parse)(unsafe.Pointer(bp+16 /* &sParse */)).FzErrMsg)) rc = SQLITE_ERROR } Xsqlite3DbFree(tls, pErrorDb, (*Parse)(unsafe.Pointer(bp+16 /* &sParse */)).FzErrMsg) @@ -53816,7 +54334,7 @@ func findBtree(tls *libc.TLS, pErrorDb uintptr, pDb uintptr, zDb uintptr) uintpt } if i < 0 { - Xsqlite3ErrorWithMsg(tls, pErrorDb, SQLITE_ERROR, ts+3943 /* "unknown database..." */, libc.VaList(bp+8, zDb)) + Xsqlite3ErrorWithMsg(tls, pErrorDb, SQLITE_ERROR, ts+3953 /* "unknown database..." */, libc.VaList(bp+8, zDb)) return uintptr(0) } @@ -53837,7 +54355,7 @@ func setDestPgsz(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:76336:12: */ // message in database handle db. func checkReadTransaction(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:76348:12: */ if Xsqlite3BtreeTxnState(tls, p) != SQLITE_TXN_NONE { - Xsqlite3ErrorWithMsg(tls, db, SQLITE_ERROR, ts+3963 /* "destination data..." */, 0) + Xsqlite3ErrorWithMsg(tls, db, SQLITE_ERROR, ts+3973 /* "destination data..." */, 0) return SQLITE_ERROR } return SQLITE_OK @@ -53864,7 +54382,7 @@ func Xsqlite3_backup_init(tls *libc.TLS, pDestDb uintptr, zDestDb uintptr, pSrcD if pSrcDb == pDestDb { Xsqlite3ErrorWithMsg(tls, - pDestDb, SQLITE_ERROR, ts+3994 /* "source and desti..." */, 0) + pDestDb, SQLITE_ERROR, ts+4004 /* "source and desti..." */, 0) p = uintptr(0) } else { // Allocate space for a new sqlite3_backup object... @@ -54478,7 +54996,7 @@ func vdbeMemRenderNum(tls *libc.TLS, sz int32, zBuf uintptr, p uintptr) { /* sql Xsqlite3Int64ToText(tls, *(*I64)(unsafe.Pointer(bp + 8 /* x */)), zBuf) } else { Xsqlite3StrAccumInit(tls, bp+16 /* &acc */, uintptr(0), zBuf, sz, 0) - Xsqlite3_str_appendf(tls, bp+16 /* &acc */, ts+4034, /* "%!.15g" */ + Xsqlite3_str_appendf(tls, bp+16 /* &acc */, ts+4044, /* "%!.15g" */ libc.VaList(bp, func() float64 { if (int32((*Mem)(unsafe.Pointer(p)).Fflags) & MEM_IntReal) != 0 { return float64(*(*I64)(unsafe.Pointer(p /* &.u */))) @@ -54558,7 +55076,7 @@ func Xsqlite3VdbeMemGrow(tls *libc.TLS, pMem uintptr, n int32, bPreserve int32) } if (int32((*Mem)(unsafe.Pointer(pMem)).Fflags) & MEM_Dyn) != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pMem + 36 /* &.xDel */))))(tls, (*Mem)(unsafe.Pointer(pMem)).Fz) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Mem)(unsafe.Pointer(pMem)).FxDel})).f(tls, (*Mem)(unsafe.Pointer(pMem)).Fz) } (*Mem)(unsafe.Pointer(pMem)).Fz = (*Mem)(unsafe.Pointer(pMem)).FzMalloc @@ -54720,7 +55238,7 @@ func Xsqlite3VdbeMemFinalize(tls *libc.TLS, pMem uintptr, pFunc uintptr) int32 { (*Sqlite3_context)(unsafe.Pointer(bp /* &ctx */)).FpOut = bp + 32 /* &t */ (*Sqlite3_context)(unsafe.Pointer(bp /* &ctx */)).FpMem = pMem (*Sqlite3_context)(unsafe.Pointer(bp /* &ctx */)).FpFunc = pFunc - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pFunc + 20 /* &.xFinalize */))))(tls, bp /* &ctx */) // IMP: R-24505-23230 + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*FuncDef)(unsafe.Pointer(pFunc)).FxFinalize})).f(tls, bp /* &ctx */) // IMP: R-24505-23230 if (*Mem)(unsafe.Pointer(pMem)).FszMalloc > 0 { Xsqlite3DbFreeNN(tls, (*Mem)(unsafe.Pointer(pMem)).Fdb, (*Mem)(unsafe.Pointer(pMem)).FzMalloc) @@ -54746,7 +55264,7 @@ func Xsqlite3VdbeMemAggValue(tls *libc.TLS, pAccum uintptr, pOut uintptr, pFunc (*Sqlite3_context)(unsafe.Pointer(bp /* &ctx */)).FpOut = pOut (*Sqlite3_context)(unsafe.Pointer(bp /* &ctx */)).FpMem = pAccum (*Sqlite3_context)(unsafe.Pointer(bp /* &ctx */)).FpFunc = pFunc - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pFunc + 24 /* &.xValue */))))(tls, bp /* &ctx */) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*FuncDef)(unsafe.Pointer(pFunc)).FxValue})).f(tls, bp /* &ctx */) return (*Sqlite3_context)(unsafe.Pointer(bp /* &ctx */)).FisError } @@ -54765,7 +55283,7 @@ func vdbeMemClearExternAndSetNull(tls *libc.TLS, p uintptr) { /* sqlite3.c:77496 } if (int32((*Mem)(unsafe.Pointer(p)).Fflags) & MEM_Dyn) != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((p + 36 /* &.xDel */))))(tls, (*Mem)(unsafe.Pointer(p)).Fz) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Mem)(unsafe.Pointer(p)).FxDel})).f(tls, (*Mem)(unsafe.Pointer(p)).Fz) } (*Mem)(unsafe.Pointer(p)).Fflags = U16(MEM_Null) } @@ -54972,7 +55490,7 @@ func Xsqlite3VdbeMemNumerify(tls *libc.TLS, pMem uintptr) int32 { /* sqlite3.c:7 rc = Xsqlite3AtoF(tls, (*Mem)(unsafe.Pointer(pMem)).Fz, (pMem /* &.u */ /* &.r */), (*Mem)(unsafe.Pointer(pMem)).Fn, (*Mem)(unsafe.Pointer(pMem)).Fenc) if (((rc == 0) || (rc == 1)) && (Xsqlite3Atoi64(tls, (*Mem)(unsafe.Pointer(pMem)).Fz, bp /* &ix */, (*Mem)(unsafe.Pointer(pMem)).Fn, (*Mem)(unsafe.Pointer(pMem)).Fenc) <= 1)) || - (Xsqlite3RealSameAsInt(tls, *(*float64)(unsafe.Pointer(pMem /* &.u */)), libc.AssignPtrInt64(bp /* ix */, I64(*(*float64)(unsafe.Pointer(pMem /* &.u */))))) != 0) { + (Xsqlite3RealSameAsInt(tls, *(*float64)(unsafe.Pointer(pMem /* &.u */)), libc.AssignPtrInt64(bp /* ix */, libc.Int64FromFloat64(*(*float64)(unsafe.Pointer(pMem /* &.u */))))) != 0) { *(*I64)(unsafe.Pointer(pMem /* &.u */)) = *(*Sqlite3_int64)(unsafe.Pointer(bp /* ix */)) (*Mem)(unsafe.Pointer(pMem)).Fflags = (U16((int32((*Mem)(unsafe.Pointer((pMem))).Fflags) & libc.CplInt32((MEM_TypeMask | MEM_Zero))) | MEM_Int)) } else { @@ -55119,7 +55637,7 @@ func Xsqlite3VdbeMemSetPointer(tls *libc.TLS, pMem uintptr, pPtr uintptr, zPType if zPType != 0 { return zPType } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }() (*Mem)(unsafe.Pointer(pMem)).Fz = pPtr (*Mem)(unsafe.Pointer(pMem)).Fflags = (U16(((MEM_Null | MEM_Dyn) | MEM_Subtype) | MEM_Term)) @@ -55626,12 +56144,14 @@ __9: libc.Xmemset(tls, bp+8 /* &ctx */, 0, uint32(unsafe.Sizeof(Sqlite3_context{}))) (*Sqlite3_context)(unsafe.Pointer(bp + 8 /* &ctx */)).FpOut = pVal (*Sqlite3_context)(unsafe.Pointer(bp + 8 /* &ctx */)).FpFunc = pFunc - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer((pFunc + 16 /* &.xSFunc */))))(tls, bp+8 /* &ctx */, nVal, apVal) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*FuncDef)(unsafe.Pointer(pFunc)).FxSFunc})).f(tls, bp+8 /* &ctx */, nVal, apVal) if !((*Sqlite3_context)(unsafe.Pointer(bp+8 /* &ctx */)).FisError != 0) { goto __10 } rc = (*Sqlite3_context)(unsafe.Pointer(bp + 8 /* &ctx */)).FisError - Xsqlite3ErrorMsg(tls, (*ValueNewStat4Ctx)(unsafe.Pointer(pCtx)).FpParse, ts+2790 /* "%s" */, libc.VaList(bp, Xsqlite3_value_text(tls, pVal))) + Xsqlite3ErrorMsg(tls, (*ValueNewStat4Ctx)(unsafe.Pointer(pCtx)).FpParse, ts+2800 /* "%s" */, libc.VaList(bp, Xsqlite3_value_text(tls, pVal))) goto __11 __10: Xsqlite3ValueApplyAffinity(tls, pVal, aff, uint8(SQLITE_UTF8)) @@ -55703,7 +56223,7 @@ func valueFromExpr(tls *libc.TLS, db uintptr, pExpr uintptr, enc U8, affinity U8 zVal = uintptr(0) *(*uintptr)(unsafe.Pointer(bp + 16 /* pVal */)) = uintptr(0) negInt = 1 - zNeg = ts + 755 /* "" */ + zNeg = ts + 765 /* "" */ rc = SQLITE_OK __1: @@ -55752,7 +56272,7 @@ __4: pExpr = (*Expr)(unsafe.Pointer(pExpr)).FpLeft op = int32((*Expr)(unsafe.Pointer(pExpr)).Fop) negInt = -1 - zNeg = ts + 4041 /* "-" */ + zNeg = ts + 4051 /* "-" */ __6: ; @@ -55772,7 +56292,7 @@ __9: Xsqlite3VdbeMemSetInt64(tls, *(*uintptr)(unsafe.Pointer(bp + 16 /* pVal */)), (I64(*(*int32)(unsafe.Pointer(pExpr + 8 /* &.u */))) * I64(negInt))) goto __11 __10: - zVal = Xsqlite3MPrintf(tls, db, ts+4043 /* "%s%s" */, libc.VaList(bp, zNeg, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)))) + zVal = Xsqlite3MPrintf(tls, db, ts+4053 /* "%s%s" */, libc.VaList(bp, zNeg, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)))) if !(zVal == uintptr(0)) { goto __12 } @@ -57217,34 +57737,34 @@ func Xsqlite3VdbeDisplayP4(tls *libc.TLS, db uintptr, pOp uintptr) uintptr { /* var j int32 var pKeyInfo uintptr = *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)) - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4048 /* "k(%d" */, libc.VaList(bp, int32((*KeyInfo)(unsafe.Pointer(pKeyInfo)).FnKeyField))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4058 /* "k(%d" */, libc.VaList(bp, int32((*KeyInfo)(unsafe.Pointer(pKeyInfo)).FnKeyField))) for j = 0; j < int32((*KeyInfo)(unsafe.Pointer(pKeyInfo)).FnKeyField); j++ { var pColl uintptr = *(*uintptr)(unsafe.Pointer((pKeyInfo + 20 /* &.aColl */) + uintptr(j)*4)) var zColl uintptr if pColl != 0 { zColl = (*CollSeq)(unsafe.Pointer(pColl)).FzName } else { - zColl = ts + 755 /* "" */ + zColl = ts + 765 /* "" */ } - if libc.Xstrcmp(tls, zColl, ts+318 /* "BINARY" */) == 0 { - zColl = ts + 4053 /* "B" */ + if libc.Xstrcmp(tls, zColl, ts+328 /* "BINARY" */) == 0 { + zColl = ts + 4063 /* "B" */ } - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4055, /* ",%s%s%s" */ + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4065, /* ",%s%s%s" */ libc.VaList(bp+8, func() uintptr { if (int32(*(*U8)(unsafe.Pointer((*KeyInfo)(unsafe.Pointer(pKeyInfo)).FaSortFlags + uintptr(j)))) & KEYINFO_ORDER_DESC) != 0 { - return ts + 4041 /* "-" */ + return ts + 4051 /* "-" */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), func() uintptr { if (int32(*(*U8)(unsafe.Pointer((*KeyInfo)(unsafe.Pointer(pKeyInfo)).FaSortFlags + uintptr(j)))) & KEYINFO_ORDER_BIGNULL) != 0 { - return ts + 4063 /* "N." */ + return ts + 4073 /* "N." */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), zColl)) } - Xsqlite3_str_append(tls, bp+144 /* &x */, ts+4066 /* ")" */, 1) + Xsqlite3_str_append(tls, bp+144 /* &x */, ts+4076 /* ")" */, 1) break } @@ -57252,7 +57772,7 @@ func Xsqlite3VdbeDisplayP4(tls *libc.TLS, db uintptr, pOp uintptr) uintptr { /* { var pColl uintptr = *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)) - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4068 /* "%.18s-%s" */, libc.VaList(bp+32, (*CollSeq)(unsafe.Pointer(pColl)).FzName, + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4078 /* "%.18s-%s" */, libc.VaList(bp+32, (*CollSeq)(unsafe.Pointer(pColl)).FzName, encnames[(*CollSeq)(unsafe.Pointer(pColl)).Fenc])) break @@ -57260,32 +57780,32 @@ func Xsqlite3VdbeDisplayP4(tls *libc.TLS, db uintptr, pOp uintptr) uintptr { /* case -8: { var pDef uintptr = *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)) - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4077 /* "%s(%d)" */, libc.VaList(bp+48, (*FuncDef)(unsafe.Pointer(pDef)).FzName, int32((*FuncDef)(unsafe.Pointer(pDef)).FnArg))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4087 /* "%s(%d)" */, libc.VaList(bp+48, (*FuncDef)(unsafe.Pointer(pDef)).FzName, int32((*FuncDef)(unsafe.Pointer(pDef)).FnArg))) break } case -16: { var pDef uintptr = (*Sqlite3_context)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))).FpFunc - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4077 /* "%s(%d)" */, libc.VaList(bp+64, (*FuncDef)(unsafe.Pointer(pDef)).FzName, int32((*FuncDef)(unsafe.Pointer(pDef)).FnArg))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4087 /* "%s(%d)" */, libc.VaList(bp+64, (*FuncDef)(unsafe.Pointer(pDef)).FzName, int32((*FuncDef)(unsafe.Pointer(pDef)).FnArg))) break } case -14: { - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4084 /* "%lld" */, libc.VaList(bp+80, *(*I64)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4094 /* "%lld" */, libc.VaList(bp+80, *(*I64)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))))) break } case -3: { - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4089 /* "%d" */, libc.VaList(bp+88, *(*int32)(unsafe.Pointer(pOp + 16 /* &.p4 */)))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4099 /* "%d" */, libc.VaList(bp+88, *(*int32)(unsafe.Pointer(pOp + 16 /* &.p4 */)))) break } case -13: { - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+538 /* "%.16g" */, libc.VaList(bp+96, *(*float64)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+548 /* "%.16g" */, libc.VaList(bp+96, *(*float64)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))))) break } @@ -57295,14 +57815,14 @@ func Xsqlite3VdbeDisplayP4(tls *libc.TLS, db uintptr, pOp uintptr) uintptr { /* if (int32((*Mem)(unsafe.Pointer(pMem)).Fflags) & MEM_Str) != 0 { zP4 = (*Mem)(unsafe.Pointer(pMem)).Fz } else if (int32((*Mem)(unsafe.Pointer(pMem)).Fflags) & (MEM_Int | MEM_IntReal)) != 0 { - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4084 /* "%lld" */, libc.VaList(bp+104, *(*I64)(unsafe.Pointer(pMem /* &.u */)))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4094 /* "%lld" */, libc.VaList(bp+104, *(*I64)(unsafe.Pointer(pMem /* &.u */)))) } else if (int32((*Mem)(unsafe.Pointer(pMem)).Fflags) & MEM_Real) != 0 { - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+538 /* "%.16g" */, libc.VaList(bp+112, *(*float64)(unsafe.Pointer(pMem /* &.u */)))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+548 /* "%.16g" */, libc.VaList(bp+112, *(*float64)(unsafe.Pointer(pMem /* &.u */)))) } else if (int32((*Mem)(unsafe.Pointer(pMem)).Fflags) & MEM_Null) != 0 { - zP4 = ts + 756 /* "NULL" */ + zP4 = ts + 766 /* "NULL" */ } else { - zP4 = ts + 4092 /* "(blob)" */ + zP4 = ts + 4102 /* "(blob)" */ } break @@ -57310,7 +57830,7 @@ func Xsqlite3VdbeDisplayP4(tls *libc.TLS, db uintptr, pOp uintptr) uintptr { /* case -12: { var pVtab uintptr = (*VTable)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))).FpVtab - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4099 /* "vtab:%p" */, libc.VaList(bp+120, pVtab)) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4109 /* "vtab:%p" */, libc.VaList(bp+120, pVtab)) break } @@ -57321,20 +57841,20 @@ func Xsqlite3VdbeDisplayP4(tls *libc.TLS, db uintptr, pOp uintptr) uintptr { /* var n U32 = *(*U32)(unsafe.Pointer(ai)) // The first element of an INTARRAY is always the // count of the number of elements to follow for i = U32(1); i <= n; i++ { - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4107 /* "%c%u" */, libc.VaList(bp+128, func() int32 { + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+4117 /* "%c%u" */, libc.VaList(bp+128, func() int32 { if i == U32(1) { return '[' } return ',' }(), *(*U32)(unsafe.Pointer(ai + uintptr(i)*4)))) } - Xsqlite3_str_append(tls, bp+144 /* &x */, ts+4112 /* "]" */, 1) + Xsqlite3_str_append(tls, bp+144 /* &x */, ts+4122 /* "]" */, 1) break } case -4: { - zP4 = ts + 4114 /* "program" */ + zP4 = ts + 4124 /* "program" */ break } @@ -57366,7 +57886,7 @@ func Xsqlite3VdbeDisplayP4(tls *libc.TLS, db uintptr, pOp uintptr) uintptr { /* return Xsqlite3StrAccumFinish(tls, bp+144 /* &x */) } -var encnames = [4]uintptr{ts + 4122 /* "?" */, ts + 4124 /* "8" */, ts + 4126 /* "16LE" */, ts + 4131 /* "16BE" */} /* sqlite3.c:80570:25 */ +var encnames = [4]uintptr{ts + 4132 /* "?" */, ts + 4134 /* "8" */, ts + 4136 /* "16LE" */, ts + 4141 /* "16BE" */} /* sqlite3.c:80570:25 */ // Declare to the Vdbe that the BTree object at db->aDb[i] is used. // @@ -57897,8 +58417,8 @@ func Xsqlite3VdbeMakeReady(tls *libc.TLS, p uintptr, pParse uintptr) { /* sqlite } var azColName = [12]uintptr{ - ts + 4136 /* "addr" */, ts + 4141 /* "opcode" */, ts + 4148 /* "p1" */, ts + 4151 /* "p2" */, ts + 4154 /* "p3" */, ts + 4157 /* "p4" */, ts + 4160 /* "p5" */, ts + 4163, /* "comment" */ - ts + 4171 /* "id" */, ts + 4174 /* "parent" */, ts + 4181 /* "notused" */, ts + 4189, /* "detail" */ + ts + 4146 /* "addr" */, ts + 4151 /* "opcode" */, ts + 4158 /* "p1" */, ts + 4161 /* "p2" */, ts + 4164 /* "p3" */, ts + 4167 /* "p4" */, ts + 4170 /* "p5" */, ts + 4173, /* "comment" */ + ts + 4181 /* "id" */, ts + 4184 /* "parent" */, ts + 4191 /* "notused" */, ts + 4199, /* "detail" */ } /* sqlite3.c:81298:23 */ // Close a VDBE cursor and release all the resources that cursor @@ -57928,7 +58448,9 @@ func Xsqlite3VdbeFreeCursor(tls *libc.TLS, p uintptr, pCx uintptr) { /* sqlite3. var pModule uintptr = (*Sqlite3_vtab)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(pVCur)).FpVtab)).FpModule (*Sqlite3_vtab)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(pVCur)).FpVtab)).FnRef-- - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pModule + 28 /* &.xClose */))))(tls, pVCur) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule)).FxClose})).f(tls, pVCur) break } @@ -58097,7 +58619,9 @@ func vdbeCommit(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:81537 // If there are any write-transactions at all, invoke the commit hook if (needXcommit != 0) && ((*Sqlite3)(unsafe.Pointer(db)).FxCommitCallback != 0) { - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((db + 224 /* &.xCommitCallback */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpCommitArg) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxCommitCallback})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpCommitArg) if rc != 0 { return (SQLITE_CONSTRAINT | (int32(2) << 8)) } @@ -58146,7 +58670,7 @@ func vdbeCommit(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:81537 // Select a super-journal file name nMainFile = Xsqlite3Strlen30(tls, zMainFile) - zSuper = Xsqlite3MPrintf(tls, db, ts+4196 /* "%.4c%s%.16c" */, libc.VaList(bp, 0, zMainFile, 0)) + zSuper = Xsqlite3MPrintf(tls, db, ts+4206 /* "%.4c%s%.16c" */, libc.VaList(bp, 0, zMainFile, 0)) if zSuper == uintptr(0) { return SQLITE_NOMEM } @@ -58156,16 +58680,16 @@ func vdbeCommit(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:81537 if retryCount != 0 { if retryCount > 100 { - Xsqlite3_log(tls, SQLITE_FULL, ts+4208 /* "MJ delete: %s" */, libc.VaList(bp+24, zSuper)) + Xsqlite3_log(tls, SQLITE_FULL, ts+4218 /* "MJ delete: %s" */, libc.VaList(bp+24, zSuper)) Xsqlite3OsDelete(tls, pVfs, zSuper, 0) break } else if retryCount == 1 { - Xsqlite3_log(tls, SQLITE_FULL, ts+4222 /* "MJ collide: %s" */, libc.VaList(bp+32, zSuper)) + Xsqlite3_log(tls, SQLITE_FULL, ts+4232 /* "MJ collide: %s" */, libc.VaList(bp+32, zSuper)) } } retryCount++ Xsqlite3_randomness(tls, int32(unsafe.Sizeof(U32(0))), bp+56 /* &iRandom */) - Xsqlite3_snprintf(tls, 13, (zSuper + uintptr(nMainFile)), ts+4237, /* "-mj%06X9%02X" */ + Xsqlite3_snprintf(tls, 13, (zSuper + uintptr(nMainFile)), ts+4247, /* "-mj%06X9%02X" */ libc.VaList(bp+40, ((*(*U32)(unsafe.Pointer(bp + 56 /* iRandom */))>>8)&U32(0xffffff)), (*(*U32)(unsafe.Pointer(bp + 56 /* iRandom */))&U32(0xff)))) // The antipenultimate character of the super-journal name must // be "9" to avoid name collisions when using 8+3 filenames. @@ -58359,7 +58883,7 @@ func Xsqlite3VdbeCheckFk(tls *libc.TLS, p uintptr, deferred int32) int32 { /* sq (!(deferred != 0) && ((*Vdbe)(unsafe.Pointer(p)).FnFkConstraint > int64(0))) { (*Vdbe)(unsafe.Pointer(p)).Frc = (SQLITE_CONSTRAINT | (int32(3) << 8)) (*Vdbe)(unsafe.Pointer(p)).FerrorAction = U8(OE_Abort) - Xsqlite3VdbeError(tls, p, ts+4250 /* "FOREIGN KEY cons..." */, 0) + Xsqlite3VdbeError(tls, p, ts+4260 /* "FOREIGN KEY cons..." */, 0) return SQLITE_ERROR } return SQLITE_OK @@ -58641,7 +59165,7 @@ func Xsqlite3VdbeReset(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:82187:20: // called), set the database error in this case as well. Xsqlite3ErrorWithMsg(tls, db, (*Vdbe)(unsafe.Pointer(p)).Frc, func() uintptr { if (*Vdbe)(unsafe.Pointer(p)).FzErrMsg != 0 { - return ts + 2790 /* "%s" */ + return ts + 2800 /* "%s" */ } return uintptr(0) }(), libc.VaList(bp, (*Vdbe)(unsafe.Pointer(p)).FzErrMsg)) @@ -58694,7 +59218,7 @@ func Xsqlite3VdbeDeleteAuxData(tls *libc.TLS, db uintptr, pp uintptr, iOp int32, (((*AuxData)(unsafe.Pointer(pAux)).FiAuxArg > 31) || !((uint32(mask) & (uint32((uint32(1))) << ((*AuxData)(unsafe.Pointer(pAux)).FiAuxArg))) != 0))) { if (*AuxData)(unsafe.Pointer(pAux)).FxDeleteAux != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pAux + 12 /* &.xDeleteAux */))))(tls, (*AuxData)(unsafe.Pointer(pAux)).FpAux) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*AuxData)(unsafe.Pointer(pAux)).FxDeleteAux})).f(tls, (*AuxData)(unsafe.Pointer(pAux)).FpAux) } *(*uintptr)(unsafe.Pointer(pp)) = (*AuxData)(unsafe.Pointer(pAux)).FpNextAux Xsqlite3DbFree(tls, db, pAux) @@ -59236,7 +59760,9 @@ func vdbeCompareMemString(tls *libc.TLS, pMem1 uintptr, pMem2 uintptr, pColl uin if int32((*Mem)(unsafe.Pointer(pMem1)).Fenc) == int32((*CollSeq)(unsafe.Pointer(pColl)).Fenc) { // The strings are already in the correct encoding. Call the // comparison function directly - return (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer((pColl + 12 /* &.xCmp */))))(tls, (*CollSeq)(unsafe.Pointer(pColl)).FpUser, (*Mem)(unsafe.Pointer(pMem1)).Fn, (*Mem)(unsafe.Pointer(pMem1)).Fz, (*Mem)(unsafe.Pointer(pMem2)).Fn, (*Mem)(unsafe.Pointer(pMem2)).Fz) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*CollSeq)(unsafe.Pointer(pColl)).FxCmp})).f(tls, (*CollSeq)(unsafe.Pointer(pColl)).FpUser, (*Mem)(unsafe.Pointer(pMem1)).Fn, (*Mem)(unsafe.Pointer(pMem1)).Fz, (*Mem)(unsafe.Pointer(pMem2)).Fn, (*Mem)(unsafe.Pointer(pMem2)).Fz) } else { var rc int32 var v1 uintptr @@ -59257,7 +59783,9 @@ func vdbeCompareMemString(tls *libc.TLS, pMem1 uintptr, pMem2 uintptr, pColl uin } rc = 0 } else { - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer((pColl + 12 /* &.xCmp */))))(tls, (*CollSeq)(unsafe.Pointer(pColl)).FpUser, (*Mem)(unsafe.Pointer(bp /* &c1 */)).Fn, v1, (*Mem)(unsafe.Pointer(bp+40 /* &c2 */)).Fn, v2) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*CollSeq)(unsafe.Pointer(pColl)).FxCmp})).f(tls, (*CollSeq)(unsafe.Pointer(pColl)).FpUser, (*Mem)(unsafe.Pointer(bp /* &c1 */)).Fn, v1, (*Mem)(unsafe.Pointer(bp+40 /* &c2 */)).Fn, v2) } Xsqlite3VdbeMemRelease(tls, bp /* &c1 */) Xsqlite3VdbeMemRelease(tls, bp+40 /* &c2 */) @@ -60192,13 +60720,13 @@ func Xsqlite3NotPureFunc(tls *libc.TLS, pCtx uintptr) int32 { /* sqlite3.c:84023 var zContext uintptr var zMsg uintptr if (int32((*VdbeOp)(unsafe.Pointer(pOp)).Fp5) & NC_IsCheck) != 0 { - zContext = ts + 4280 /* "a CHECK constrai..." */ + zContext = ts + 4290 /* "a CHECK constrai..." */ } else if (int32((*VdbeOp)(unsafe.Pointer(pOp)).Fp5) & NC_GenCol) != 0 { - zContext = ts + 4299 /* "a generated colu..." */ + zContext = ts + 4309 /* "a generated colu..." */ } else { - zContext = ts + 4318 /* "an index" */ + zContext = ts + 4328 /* "an index" */ } - zMsg = Xsqlite3_mprintf(tls, ts+4327, /* "non-deterministi..." */ + zMsg = Xsqlite3_mprintf(tls, ts+4337, /* "non-deterministi..." */ libc.VaList(bp, (*FuncDef)(unsafe.Pointer((*Sqlite3_context)(unsafe.Pointer(pCtx)).FpFunc)).FzName, zContext)) Xsqlite3_result_error(tls, pCtx, zMsg, -1) Xsqlite3_free(tls, zMsg) @@ -60279,7 +60807,9 @@ func Xsqlite3VdbePreUpdateHook(tls *libc.TLS, v uintptr, pCsr uintptr, op int32, (*PreUpdate)(unsafe.Pointer(bp /* &preupdate */)).FiBlobWrite = iBlobWrite (*Sqlite3)(unsafe.Pointer(db)).FpPreUpdate = bp /* &preupdate */ - (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, Sqlite3_int64, Sqlite3_int64))(unsafe.Pointer((db + 252 /* &.xPreUpdateCallback */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpPreUpdateArg, db, op, zDb, zTbl, iKey1, iKey2) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, Sqlite3_int64, Sqlite3_int64) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxPreUpdateCallback})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpPreUpdateArg, db, op, zDb, zTbl, iKey1, iKey2) (*Sqlite3)(unsafe.Pointer(db)).FpPreUpdate = uintptr(0) Xsqlite3DbFree(tls, db, (*PreUpdate)(unsafe.Pointer(bp /* &preupdate */)).FaRecord) vdbeFreeUnpacked(tls, db, (int32((*PreUpdate)(unsafe.Pointer(bp /* &preupdate */)).Fkeyinfo.FnKeyField) + 1), (*PreUpdate)(unsafe.Pointer(bp /* &preupdate */)).FpUnpacked) @@ -60329,7 +60859,7 @@ func Xsqlite3_expired(tls *libc.TLS, pStmt uintptr) int32 { /* sqlite3.c:84185:1 // invalid). Return false if it is ok. func vdbeSafety(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:84196:12: */ if (*Vdbe)(unsafe.Pointer(p)).Fdb == uintptr(0) { - Xsqlite3_log(tls, SQLITE_MISUSE, ts+4363 /* "API called with ..." */, 0) + Xsqlite3_log(tls, SQLITE_MISUSE, ts+4373 /* "API called with ..." */, 0) return 1 } else { return 0 @@ -60339,7 +60869,7 @@ func vdbeSafety(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:84196:12: */ func vdbeSafetyNotNull(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:84204:12: */ if p == uintptr(0) { - Xsqlite3_log(tls, SQLITE_MISUSE, ts+4408 /* "API called with ..." */, 0) + Xsqlite3_log(tls, SQLITE_MISUSE, ts+4418 /* "API called with ..." */, 0) return 1 } else { return vdbeSafety(tls, p) @@ -60360,10 +60890,14 @@ func invokeProfileCallback(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c: Xsqlite3OsCurrentTimeInt64(tls, (*Sqlite3)(unsafe.Pointer(db)).FpVfs, bp /* &iNow */) *(*Sqlite3_int64)(unsafe.Pointer(bp + 8 /* iElapse */)) = ((*(*Sqlite3_int64)(unsafe.Pointer(bp /* iNow */)) - (*Vdbe)(unsafe.Pointer(p)).FstartTime) * int64(1000000)) if (*Sqlite3)(unsafe.Pointer(db)).FxProfile != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, U64))(unsafe.Pointer((db + 212 /* &.xProfile */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpProfileArg, (*Vdbe)(unsafe.Pointer(p)).FzSql, uint64(*(*Sqlite3_int64)(unsafe.Pointer(bp + 8 /* iElapse */)))) + (*struct { + f func(*libc.TLS, uintptr, uintptr, U64) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxProfile})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpProfileArg, (*Vdbe)(unsafe.Pointer(p)).FzSql, uint64(*(*Sqlite3_int64)(unsafe.Pointer(bp + 8 /* iElapse */)))) } if (int32((*Sqlite3)(unsafe.Pointer(db)).FmTrace) & SQLITE_TRACE_PROFILE) != 0 { - (*(*func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((db + 204 /* &.trace */ /* &.xV2 */))))(tls, uint32(SQLITE_TRACE_PROFILE), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, bp+8 /* &iElapse */) + (*struct { + f func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(db + 204 /* &.trace */))})).f(tls, uint32(SQLITE_TRACE_PROFILE), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, bp+8 /* &iElapse */) } (*Vdbe)(unsafe.Pointer(p)).FstartTime = int64(0) } @@ -60673,7 +61207,7 @@ func invokeValueDestructor(tls *libc.TLS, p uintptr, xDel uintptr, pCtx uintptr) } else if xDel == (libc.UintptrFromInt32(-1)) { // noop } else { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDel)))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDel})).f(tls, p) } Xsqlite3_result_error_toobig(tls, pCtx) return SQLITE_TOOBIG @@ -60809,7 +61343,7 @@ func Xsqlite3_result_error_code(tls *libc.TLS, pCtx uintptr, errCode int32) { /* func Xsqlite3_result_error_toobig(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:84708:17: */ (*Sqlite3_context)(unsafe.Pointer(pCtx)).FisError = SQLITE_TOOBIG - Xsqlite3VdbeMemSetStr(tls, (*Sqlite3_context)(unsafe.Pointer(pCtx)).FpOut, ts+4448 /* "string or blob t..." */, int64(-1), + Xsqlite3VdbeMemSetStr(tls, (*Sqlite3_context)(unsafe.Pointer(pCtx)).FpOut, ts+4458 /* "string or blob t..." */, int64(-1), uint8(SQLITE_UTF8), uintptr(0)) } @@ -60845,7 +61379,9 @@ func doWalCallbacks(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:84742:12: */ nEntry = Xsqlite3PagerWalCallback(tls, Xsqlite3BtreePager(tls, pBt)) Xsqlite3BtreeLeave(tls, pBt) if ((nEntry > 0) && ((*Sqlite3)(unsafe.Pointer(db)).FxWalCallback != 0)) && (rc == SQLITE_OK) { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32) int32)(unsafe.Pointer((db + 260 /* &.xWalCallback */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpWalArg, db, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i)*16)).FzDbSName, nEntry) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxWalCallback})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpWalArg, db, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i)*16)).FzDbSName, nEntry) } } } @@ -61252,7 +61788,7 @@ __6: if !((*AuxData)(unsafe.Pointer(pAuxData)).FxDeleteAux != 0) { goto __10 } - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pAuxData + 12 /* &.xDeleteAux */))))(tls, (*AuxData)(unsafe.Pointer(pAuxData)).FpAux) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*AuxData)(unsafe.Pointer(pAuxData)).FxDeleteAux})).f(tls, (*AuxData)(unsafe.Pointer(pAuxData)).FpAux) __10: ; __7: @@ -61266,7 +61802,7 @@ failed: if !(xDelete != 0) { goto __11 } - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDelete)))(tls, pAux) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDelete})).f(tls, pAux) __11: } @@ -61560,7 +62096,7 @@ func vdbeUnbind(tls *libc.TLS, p uintptr, i int32) int32 { /* sqlite3.c:85487:12 Xsqlite3Error(tls, (*Vdbe)(unsafe.Pointer(p)).Fdb, SQLITE_MISUSE) Xsqlite3_mutex_leave(tls, (*Sqlite3)(unsafe.Pointer((*Vdbe)(unsafe.Pointer(p)).Fdb)).Fmutex) Xsqlite3_log(tls, SQLITE_MISUSE, - ts+4471 /* "bind on a busy p..." */, libc.VaList(bp, (*Vdbe)(unsafe.Pointer(p)).FzSql)) + ts+4481 /* "bind on a busy p..." */, libc.VaList(bp, (*Vdbe)(unsafe.Pointer(p)).FzSql)) return Xsqlite3MisuseError(tls, 85498) } if (i < 1) || (i > int32((*Vdbe)(unsafe.Pointer(p)).FnVar)) { @@ -61615,7 +62151,7 @@ func bindText(tls *libc.TLS, pStmt uintptr, i int32, zData uintptr, nData I64, x } Xsqlite3_mutex_leave(tls, (*Sqlite3)(unsafe.Pointer((*Vdbe)(unsafe.Pointer(p)).Fdb)).Fmutex) } else if (xDel != (uintptr(0))) && (xDel != (libc.UintptrFromInt32(-1))) { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDel)))(tls, zData) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDel})).f(tls, zData) } return rc } @@ -61674,7 +62210,7 @@ func Xsqlite3_bind_pointer(tls *libc.TLS, pStmt uintptr, i int32, pPtr uintptr, Xsqlite3VdbeMemSetPointer(tls, ((*Vdbe)(unsafe.Pointer(p)).FaVar + uintptr((i-1))*40), pPtr, zPTtype, xDestructor) Xsqlite3_mutex_leave(tls, (*Sqlite3)(unsafe.Pointer((*Vdbe)(unsafe.Pointer(p)).Fdb)).Fmutex) } else if xDestructor != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDestructor)))(tls, pPtr) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDestructor})).f(tls, pPtr) } return rc } @@ -62337,7 +62873,7 @@ func Xsqlite3VdbeExpandSql(tls *libc.TLS, p uintptr, zRawSql uintptr) uintptr { var zStart uintptr = zRawSql for (int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zRawSql, 1)))) != '\n') && (*(*int8)(unsafe.Pointer(zRawSql)) != 0) { } - Xsqlite3_str_append(tls, bp+48 /* &out */, ts+4511 /* "-- " */, 3) + Xsqlite3_str_append(tls, bp+48 /* &out */, ts+4521 /* "-- " */, 3) Xsqlite3_str_append(tls, bp+48 /* &out */, zStart, ((int32(zRawSql) - int32(zStart)) / 1)) } @@ -62375,11 +62911,11 @@ func Xsqlite3VdbeExpandSql(tls *libc.TLS, p uintptr, zRawSql uintptr) uintptr { pVar = ((*Vdbe)(unsafe.Pointer(p)).FaVar + uintptr((*(*int32)(unsafe.Pointer(bp + 176 /* idx */))-1))*40) if (int32((*Mem)(unsafe.Pointer(pVar)).Fflags) & MEM_Null) != 0 { - Xsqlite3_str_append(tls, bp+48 /* &out */, ts+756 /* "NULL" */, 4) + Xsqlite3_str_append(tls, bp+48 /* &out */, ts+766 /* "NULL" */, 4) } else if (int32((*Mem)(unsafe.Pointer(pVar)).Fflags) & (MEM_Int | MEM_IntReal)) != 0 { - Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+4084 /* "%lld" */, libc.VaList(bp, *(*I64)(unsafe.Pointer(pVar /* &.u */)))) + Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+4094 /* "%lld" */, libc.VaList(bp, *(*I64)(unsafe.Pointer(pVar /* &.u */)))) } else if (int32((*Mem)(unsafe.Pointer(pVar)).Fflags) & MEM_Real) != 0 { - Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+4034 /* "%!.15g" */, libc.VaList(bp+8, *(*float64)(unsafe.Pointer(pVar /* &.u */)))) + Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+4044 /* "%!.15g" */, libc.VaList(bp+8, *(*float64)(unsafe.Pointer(pVar /* &.u */)))) } else if (int32((*Mem)(unsafe.Pointer(pVar)).Fflags) & MEM_Str) != 0 { var nOut int32 // Number of bytes of the string text to include in output var enc U8 = (*Sqlite3)(unsafe.Pointer(db)).Fenc @@ -62394,21 +62930,21 @@ func Xsqlite3VdbeExpandSql(tls *libc.TLS, p uintptr, zRawSql uintptr) uintptr { pVar = bp + 180 /* &utf8 */ } nOut = (*Mem)(unsafe.Pointer(pVar)).Fn - Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+4515 /* "'%.*q'" */, libc.VaList(bp+16, nOut, (*Mem)(unsafe.Pointer(pVar)).Fz)) + Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+4525 /* "'%.*q'" */, libc.VaList(bp+16, nOut, (*Mem)(unsafe.Pointer(pVar)).Fz)) if int32(enc) != SQLITE_UTF8 { Xsqlite3VdbeMemRelease(tls, bp+180 /* &utf8 */) } } else if (int32((*Mem)(unsafe.Pointer(pVar)).Fflags) & MEM_Zero) != 0 { - Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+4522 /* "zeroblob(%d)" */, libc.VaList(bp+32, *(*int32)(unsafe.Pointer(pVar /* &.u */)))) + Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+4532 /* "zeroblob(%d)" */, libc.VaList(bp+32, *(*int32)(unsafe.Pointer(pVar /* &.u */)))) } else { var nOut int32 // Number of bytes of the blob to include in output - Xsqlite3_str_append(tls, bp+48 /* &out */, ts+4535 /* "x'" */, 2) + Xsqlite3_str_append(tls, bp+48 /* &out */, ts+4545 /* "x'" */, 2) nOut = (*Mem)(unsafe.Pointer(pVar)).Fn for i = 0; i < nOut; i++ { - Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+4538 /* "%02x" */, libc.VaList(bp+40, (int32(*(*int8)(unsafe.Pointer((*Mem)(unsafe.Pointer(pVar)).Fz + uintptr(i))))&0xff))) + Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+4548 /* "%02x" */, libc.VaList(bp+40, (int32(*(*int8)(unsafe.Pointer((*Mem)(unsafe.Pointer(pVar)).Fz + uintptr(i))))&0xff))) } - Xsqlite3_str_append(tls, bp+48 /* &out */, ts+4543 /* "'" */, 1) + Xsqlite3_str_append(tls, bp+48 /* &out */, ts+4553 /* "'" */, 1) } } } @@ -65917,7 +66453,9 @@ __185: } nProgressLimit = nProgressLimit + (U64((*Sqlite3)(unsafe.Pointer(db)).FnProgressOps)) - if !((*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((db + 356 /* &.xProgress */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpProgressArg) != 0) { + if !((*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxProgress})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpProgressArg) != 0) { goto __187 } nProgressLimit = (uint64(0xffffffff) | (U64((uint64(0xffffffff))) << 32)) @@ -66107,19 +66645,19 @@ __190: goto __193 } - Xsqlite3VdbeError(tls, p, ts+4545 /* "%s constraint fa..." */, libc.VaList(bp, azType[(int32((*Op)(unsafe.Pointer(pOp)).Fp5)-1)])) + Xsqlite3VdbeError(tls, p, ts+4555 /* "%s constraint fa..." */, libc.VaList(bp, azType[(int32((*Op)(unsafe.Pointer(pOp)).Fp5)-1)])) if !(*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)) != 0) { goto __195 } - (*Vdbe)(unsafe.Pointer(p)).FzErrMsg = Xsqlite3MPrintf(tls, db, ts+4566 /* "%z: %s" */, libc.VaList(bp+8, (*Vdbe)(unsafe.Pointer(p)).FzErrMsg, *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))) + (*Vdbe)(unsafe.Pointer(p)).FzErrMsg = Xsqlite3MPrintf(tls, db, ts+4576 /* "%z: %s" */, libc.VaList(bp+8, (*Vdbe)(unsafe.Pointer(p)).FzErrMsg, *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))) __195: ; goto __194 __193: - Xsqlite3VdbeError(tls, p, ts+2790 /* "%s" */, libc.VaList(bp+24, *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))) + Xsqlite3VdbeError(tls, p, ts+2800 /* "%s" */, libc.VaList(bp+24, *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))) __194: ; - Xsqlite3_log(tls, (*Op)(unsafe.Pointer(pOp)).Fp1, ts+4573 /* "abort at %d in [..." */, libc.VaList(bp+32, pcx, (*Vdbe)(unsafe.Pointer(p)).FzSql, (*Vdbe)(unsafe.Pointer(p)).FzErrMsg)) + Xsqlite3_log(tls, (*Op)(unsafe.Pointer(pOp)).Fp1, ts+4583 /* "abort at %d in [..." */, libc.VaList(bp+32, pcx, (*Vdbe)(unsafe.Pointer(p)).FzSql, (*Vdbe)(unsafe.Pointer(p)).FzErrMsg)) __192: ; rc = Xsqlite3VdbeHalt(tls, p) @@ -66519,7 +67057,9 @@ __220: if !((int32((*Sqlite3)(unsafe.Pointer(db)).FmTrace) & SQLITE_TRACE_ROW) != 0) { goto __221 } - (*(*func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((db + 204 /* &.trace */ /* &.xV2 */))))(tls, uint32(SQLITE_TRACE_ROW), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, uintptr(0)) + (*struct { + f func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(db + 204 /* &.trace */))})).f(tls, uint32(SQLITE_TRACE_ROW), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, uintptr(0)) __221: ; @@ -68669,7 +69209,7 @@ __74: } // A new savepoint cannot be created if there are active write // statements (i.e. open read/write incremental blob handles). - Xsqlite3VdbeError(tls, p, ts+4597 /* "cannot open save..." */, 0) + Xsqlite3VdbeError(tls, p, ts+4607 /* "cannot open save..." */, 0) rc = SQLITE_BUSY goto __448 __447: @@ -68742,7 +69282,7 @@ __455: if !(!(pSavepoint != 0)) { goto __456 } - Xsqlite3VdbeError(tls, p, ts+4648 /* "no such savepoin..." */, libc.VaList(bp+56, zName)) + Xsqlite3VdbeError(tls, p, ts+4658 /* "no such savepoin..." */, libc.VaList(bp+56, zName)) rc = SQLITE_ERROR goto __457 __456: @@ -68752,7 +69292,7 @@ __456: // It is not possible to release (commit) a savepoint if there are // active write statements. Xsqlite3VdbeError(tls, p, - ts+4670 /* "cannot release s..." */, 0) + ts+4680 /* "cannot release s..." */, 0) rc = SQLITE_BUSY goto __459 __458: @@ -68957,7 +69497,7 @@ __488: // If this instruction implements a COMMIT and other VMs are writing // return an error indicating that the other VMs must complete first. Xsqlite3VdbeError(tls, p, - ts+4724 /* "cannot commit tr..." */, 0) + ts+4734 /* "cannot commit tr..." */, 0) rc = SQLITE_BUSY goto abort_due_to_error goto __491 @@ -69000,13 +69540,13 @@ __486: Xsqlite3VdbeError(tls, p, func() uintptr { if !(desiredAutoCommit != 0) { - return ts + 4779 /* "cannot start a t..." */ + return ts + 4789 /* "cannot start a t..." */ } return func() uintptr { if iRollback != 0 { - return ts + 4827 /* "cannot rollback ..." */ + return ts + 4837 /* "cannot rollback ..." */ } - return ts + 4870 /* "cannot commit - ..." */ + return ts + 4880 /* "cannot commit - ..." */ }() }(), 0) @@ -69124,7 +69664,7 @@ __498: // version is checked to ensure that the schema has not changed since the // SQL statement was prepared. Xsqlite3DbFree(tls, db, (*Vdbe)(unsafe.Pointer(p)).FzErrMsg) - (*Vdbe)(unsafe.Pointer(p)).FzErrMsg = Xsqlite3DbStrDup(tls, db, ts+4911 /* "database schema ..." */) + (*Vdbe)(unsafe.Pointer(p)).FzErrMsg = Xsqlite3DbStrDup(tls, db, ts+4921 /* "database schema ..." */) // If the schema-cookie from the database file matches the cookie // stored with the in-memory representation of the schema, do // not reload the schema from the database file. @@ -69506,7 +70046,7 @@ __84: // Only used when number of columns is zero (*Mem)(unsafe.Pointer(aMem + uintptr((*Op)(unsafe.Pointer(pOp)).Fp3)*40)).Fn = 0 - (*Mem)(unsafe.Pointer(aMem + uintptr((*Op)(unsafe.Pointer(pOp)).Fp3)*40)).Fz = ts + 755 /* "" */ + (*Mem)(unsafe.Pointer(aMem + uintptr((*Op)(unsafe.Pointer(pOp)).Fp3)*40)).Fz = ts + 765 /* "" */ __524: ; pCx1 = *(*uintptr)(unsafe.Pointer((*Vdbe)(unsafe.Pointer(p)).FapCsr + uintptr((*Op)(unsafe.Pointer(pOp)).Fp1)*4)) @@ -70820,7 +71360,9 @@ __639: goto __640 } - (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, Sqlite_int64))(unsafe.Pointer((db + 240 /* &.xUpdateCallback */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpUpdateArg, + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, Sqlite_int64) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxUpdateCallback})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpUpdateArg, func() int32 { if (int32((*Op)(unsafe.Pointer(pOp)).Fp5) & OPFLAG_ISUPDATE) != 0 { return SQLITE_UPDATE @@ -70968,7 +71510,9 @@ __647: if !(((*Sqlite3)(unsafe.Pointer(db)).FxUpdateCallback != 0) && (((*Table)(unsafe.Pointer((pTab1))).FtabFlags & U32(TF_WithoutRowid)) == U32(0))) { goto __649 } - (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, Sqlite_int64))(unsafe.Pointer((db + 240 /* &.xUpdateCallback */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpUpdateArg, SQLITE_DELETE, zDb1, (*Table)(unsafe.Pointer(pTab1)).FzName, + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, Sqlite_int64) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxUpdateCallback})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpUpdateArg, SQLITE_DELETE, zDb1, (*Table)(unsafe.Pointer(pTab1)).FzName, (*VdbeCursor)(unsafe.Pointer(pC11)).FmovetoTarget) __649: @@ -71160,7 +71704,9 @@ __659: pVtab = (*Sqlite3_vtab_cursor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pC15 + 40 /* &.uc */)))).FpVtab pModule = (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FpModule - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pModule + 48 /* &.xRowid */))))(tls, *(*uintptr)(unsafe.Pointer(pC15 + 40 /* &.uc */)), bp+420 /* &v3 */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule)).FxRowid})).f(tls, *(*uintptr)(unsafe.Pointer(pC15 + 40 /* &.uc */)), bp+420 /* &v3 */) Xsqlite3VtabImportErrmsg(tls, p, pVtab) if !(rc != 0) { goto __663 @@ -71461,7 +72007,9 @@ __121: // jump // The Next opcode is only used after SeekGT, SeekGE, Rewind, and Found. // The Prev opcode is only used after SeekLT, SeekLE, and Last. - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pOp + 16 /* &.p4 */ /* &.xAdvance */))))(tls, *(*uintptr)(unsafe.Pointer(pC20 + 40 /* &.uc */)), (*Op)(unsafe.Pointer(pOp)).Fp3) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */))})).f(tls, *(*uintptr)(unsafe.Pointer(pC20 + 40 /* &.uc */)), (*Op)(unsafe.Pointer(pOp)).Fp3) next_tail: (*VdbeCursor)(unsafe.Pointer(pC20)).FcacheStatus = U32(CACHE_STALE) @@ -71636,7 +72184,7 @@ __688: if !((*Op)(unsafe.Pointer(pOp)).Fp5 != 0) { goto __691 } - rc = Xsqlite3ReportError(tls, (SQLITE_CORRUPT | (int32(3) << 8)), 92446, ts+4939 /* "index corruption" */) + rc = Xsqlite3ReportError(tls, (SQLITE_CORRUPT | (int32(3) << 8)), 92446, ts+4949 /* "index corruption" */) goto abort_due_to_error __691: ; @@ -72069,14 +72617,14 @@ __137: goto __720 __719: - zSchema = ts + 4956 /* "sqlite_master" */ + zSchema = ts + 4966 /* "sqlite_master" */ (*InitData)(unsafe.Pointer(bp + 568 /* &initData */)).Fdb = db (*InitData)(unsafe.Pointer(bp + 568 /* &initData */)).FiDb = iDb3 (*InitData)(unsafe.Pointer(bp + 568 /* &initData */)).FpzErrMsg = (p + 120 /* &.zErrMsg */) (*InitData)(unsafe.Pointer(bp + 568 /* &initData */)).FmInitFlags = U32(0) (*InitData)(unsafe.Pointer(bp + 568 /* &initData */)).FmxPage = Xsqlite3BtreeLastPage(tls, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb3)*16)).FpBt) zSql = Xsqlite3MPrintf(tls, db, - ts+4970, /* "SELECT*FROM\"%w\"...." */ + ts+4980, /* "SELECT*FROM\"%w\"...." */ libc.VaList(bp+64, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb3)*16)).FzDbSName, zSchema, *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))) if !(zSql == uintptr(0)) { goto __721 @@ -72409,7 +72957,7 @@ __741: goto __746 } rc = SQLITE_ERROR - Xsqlite3VdbeError(tls, p, ts+5013 /* "too many levels ..." */, 0) + Xsqlite3VdbeError(tls, p, ts+5023 /* "too many levels ..." */, 0) goto abort_due_to_error __746: ; @@ -72841,10 +73389,14 @@ __776: if !((*Op)(unsafe.Pointer(pOp)).Fp1 != 0) { goto __780 } - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(((*Sqlite3_context)(unsafe.Pointer(pCtx1)).FpFunc + 28 /* &.xInverse */))))(tls, pCtx1, int32((*Sqlite3_context)(unsafe.Pointer(pCtx1)).Fargc), pCtx1+28 /* &.argv */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*FuncDef)(unsafe.Pointer((*Sqlite3_context)(unsafe.Pointer(pCtx1)).FpFunc)).FxInverse})).f(tls, pCtx1, int32((*Sqlite3_context)(unsafe.Pointer(pCtx1)).Fargc), pCtx1+28 /* &.argv */) goto __781 __780: - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(((*Sqlite3_context)(unsafe.Pointer(pCtx1)).FpFunc + 16 /* &.xSFunc */))))(tls, pCtx1, int32((*Sqlite3_context)(unsafe.Pointer(pCtx1)).Fargc), pCtx1+28 /* &.argv */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*FuncDef)(unsafe.Pointer((*Sqlite3_context)(unsafe.Pointer(pCtx1)).FpFunc)).FxSFunc})).f(tls, pCtx1, int32((*Sqlite3_context)(unsafe.Pointer(pCtx1)).Fargc), pCtx1+28 /* &.argv */) __781: ; // IMP: R-24505-23230 @@ -72854,7 +73406,7 @@ __781: if !((*Sqlite3_context)(unsafe.Pointer(pCtx1)).FisError > 0) { goto __783 } - Xsqlite3VdbeError(tls, p, ts+2790 /* "%s" */, libc.VaList(bp+88, Xsqlite3_value_text(tls, (*Sqlite3_context)(unsafe.Pointer(pCtx1)).FpOut))) + Xsqlite3VdbeError(tls, p, ts+2800 /* "%s" */, libc.VaList(bp+88, Xsqlite3_value_text(tls, (*Sqlite3_context)(unsafe.Pointer(pCtx1)).FpOut))) rc = (*Sqlite3_context)(unsafe.Pointer(pCtx1)).FisError __783: ; @@ -72932,7 +73484,7 @@ __788: if !(rc != 0) { goto __789 } - Xsqlite3VdbeError(tls, p, ts+2790 /* "%s" */, libc.VaList(bp+96, Xsqlite3_value_text(tls, pMem4))) + Xsqlite3VdbeError(tls, p, ts+2800 /* "%s" */, libc.VaList(bp+96, Xsqlite3_value_text(tls, pMem4))) goto abort_due_to_error __789: ; @@ -73047,12 +73599,12 @@ __798: } rc = SQLITE_ERROR Xsqlite3VdbeError(tls, p, - ts+5050, /* "cannot change %s..." */ + ts+5060, /* "cannot change %s..." */ libc.VaList(bp+104, func() uintptr { if eNew == PAGER_JOURNALMODE_WAL { - return ts + 5102 /* "into" */ + return ts + 5112 /* "into" */ } - return ts + 5107 /* "out of" */ + return ts + 5117 /* "out of" */ }())) goto abort_due_to_error goto __801 @@ -73255,7 +73807,7 @@ __167: goto __816 } z1 = *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)) - Xsqlite3VdbeError(tls, p, ts+5114 /* "database table i..." */, libc.VaList(bp+112, z1)) + Xsqlite3VdbeError(tls, p, ts+5124 /* "database table i..." */, libc.VaList(bp+112, z1)) __816: ; goto abort_due_to_error @@ -73355,7 +73907,9 @@ __171: __822: ; pModule1 = (*Sqlite3_vtab)(unsafe.Pointer(pVtab1)).FpModule - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pModule1 + 24 /* &.xOpen */))))(tls, pVtab1, bp+668 /* &pVCur */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule1)).FxOpen})).f(tls, pVtab1, bp+668 /* &pVCur */) Xsqlite3VtabImportErrmsg(tls, p, pVtab1) if !(rc != 0) { goto __823 @@ -73377,7 +73931,9 @@ __823: goto __825 __824: ; - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pModule1 + 28 /* &.xClose */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 668 /* pVCur */))) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule1)).FxClose})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 668 /* pVCur */))) goto no_mem __825: ; @@ -73432,7 +73988,9 @@ __827: goto __828 __828: ; - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer((pModule2 + 32 /* &.xFilter */))))(tls, pVCur1, iQuery, *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)), nArg, apArg) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule2)).FxFilter})).f(tls, pVCur1, iQuery, *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)), nArg, apArg) Xsqlite3VtabImportErrmsg(tls, p, pVtab2) if !(rc != 0) { goto __829 @@ -73440,7 +73998,9 @@ __828: goto abort_due_to_error __829: ; - res13 = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pModule2 + 40 /* &.xEof */))))(tls, pVCur1) + res13 = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule2)).FxEof})).f(tls, pVCur1) (*VdbeCursor)(unsafe.Pointer(pCur3)).FnullRow = U8(0) if !(res13 != 0) { @@ -73494,12 +74054,14 @@ __832: (*Mem)(unsafe.Pointer(pDest2)).Fflags = (U16((int32((*Mem)(unsafe.Pointer((pDest2))).Fflags) & libc.CplInt32((MEM_TypeMask | MEM_Zero))) | MEM_Null)) __833: ; - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pModule3 + 44 /* &.xColumn */))))(tls, *(*uintptr)(unsafe.Pointer(pCur4 + 40 /* &.uc */)), bp+672 /* &sContext */, (*Op)(unsafe.Pointer(pOp)).Fp2) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule3)).FxColumn})).f(tls, *(*uintptr)(unsafe.Pointer(pCur4 + 40 /* &.uc */)), bp+672 /* &sContext */, (*Op)(unsafe.Pointer(pOp)).Fp2) Xsqlite3VtabImportErrmsg(tls, p, pVtab3) if !((*Sqlite3_context)(unsafe.Pointer(bp+672 /* &sContext */)).FisError > 0) { goto __834 } - Xsqlite3VdbeError(tls, p, ts+2790 /* "%s" */, libc.VaList(bp+120, Xsqlite3_value_text(tls, pDest2))) + Xsqlite3VdbeError(tls, p, ts+2800 /* "%s" */, libc.VaList(bp+120, Xsqlite3_value_text(tls, pDest2))) rc = (*Sqlite3_context)(unsafe.Pointer(bp + 672 /* &sContext */)).FisError __834: ; @@ -73543,7 +74105,9 @@ __837: // xNext(). Instead, if an error occurs, true is returned (indicating that // data is available) and the error code returned when xColumn or // some other method is next invoked on the save virtual table cursor. - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pModule4 + 36 /* &.xNext */))))(tls, *(*uintptr)(unsafe.Pointer(pCur5 + 40 /* &.uc */))) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule4)).FxNext})).f(tls, *(*uintptr)(unsafe.Pointer(pCur5 + 40 /* &.uc */))) Xsqlite3VtabImportErrmsg(tls, p, pVtab4) if !(rc != 0) { goto __838 @@ -73551,7 +74115,9 @@ __837: goto abort_due_to_error __838: ; - res14 = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pModule4 + 40 /* &.xEof */))))(tls, *(*uintptr)(unsafe.Pointer(pCur5 + 40 /* &.uc */))) + res14 = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule4)).FxEof})).f(tls, *(*uintptr)(unsafe.Pointer(pCur5 + 40 /* &.uc */))) if !(!(res14 != 0)) { goto __839 @@ -73581,7 +74147,9 @@ __175: goto abort_due_to_error __840: ; - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_vtab)(unsafe.Pointer(pVtab5)).FpModule + 76 /* &.xRename */))))(tls, pVtab5, (*Mem)(unsafe.Pointer(pName)).Fz) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer((*Sqlite3_vtab)(unsafe.Pointer(pVtab5)).FpModule)).FxRename})).f(tls, pVtab5, (*Mem)(unsafe.Pointer(pName)).Fz) if !(isLegacy == 0) { goto __841 } @@ -73667,7 +74235,9 @@ __847: __848: ; (*Sqlite3)(unsafe.Pointer(db)).FvtabOnConflict = U8((*Op)(unsafe.Pointer(pOp)).Fp5) - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pModule5 + 52 /* &.xUpdate */))))(tls, pVtab6, nArg1, apArg1, bp+704 /* &rowid1 */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule5)).FxUpdate})).f(tls, pVtab6, nArg1, apArg1, bp+704 /* &rowid1 */) (*Sqlite3)(unsafe.Pointer(db)).FvtabOnConflict = vtabOnConflict Xsqlite3VtabImportErrmsg(tls, p, pVtab6) if !((rc == SQLITE_OK) && ((*Op)(unsafe.Pointer(pOp)).Fp1 != 0)) { @@ -73821,7 +74391,9 @@ __857: (*Mem)(unsafe.Pointer(pOut)).Fflags = (U16((int32((*Mem)(unsafe.Pointer((pOut))).Fflags) & libc.CplInt32((MEM_TypeMask | MEM_Zero))) | MEM_Null)) - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(((*Sqlite3_context)(unsafe.Pointer(pCtx2)).FpFunc + 16 /* &.xSFunc */))))(tls, pCtx2, int32((*Sqlite3_context)(unsafe.Pointer(pCtx2)).Fargc), pCtx2+28 /* &.argv */) // IMP: R-24505-23230 + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*FuncDef)(unsafe.Pointer((*Sqlite3_context)(unsafe.Pointer(pCtx2)).FpFunc)).FxSFunc})).f(tls, pCtx2, int32((*Sqlite3_context)(unsafe.Pointer(pCtx2)).Fargc), pCtx2+28 /* &.argv */) // IMP: R-24505-23230 // If the function returned an error, throw an exception if !((*Sqlite3_context)(unsafe.Pointer(pCtx2)).FisError != 0) { @@ -73830,7 +74402,7 @@ __857: if !((*Sqlite3_context)(unsafe.Pointer(pCtx2)).FisError > 0) { goto __862 } - Xsqlite3VdbeError(tls, p, ts+2790 /* "%s" */, libc.VaList(bp+128, Xsqlite3_value_text(tls, pOut))) + Xsqlite3VdbeError(tls, p, ts+2800 /* "%s" */, libc.VaList(bp+128, Xsqlite3_value_text(tls, pOut))) rc = (*Sqlite3_context)(unsafe.Pointer(pCtx2)).FisError __862: ; @@ -73913,19 +74485,25 @@ __182: goto __867 } z2 = Xsqlite3VdbeExpandSql(tls, p, zTrace) - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((db + 204 /* &.trace */ /* &.xLegacy */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, z2) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(db + 204 /* &.trace */))})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, z2) Xsqlite3_free(tls, z2) goto __868 __867: if !((*Sqlite3)(unsafe.Pointer(db)).FnVdbeExec > 1) { goto __869 } - z3 = Xsqlite3MPrintf(tls, db, ts+5143 /* "-- %s" */, libc.VaList(bp+136, zTrace)) - (*(*func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((db + 204 /* &.trace */ /* &.xV2 */))))(tls, uint32(SQLITE_TRACE_STMT), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, z3) + z3 = Xsqlite3MPrintf(tls, db, ts+5153 /* "-- %s" */, libc.VaList(bp+136, zTrace)) + (*struct { + f func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(db + 204 /* &.trace */))})).f(tls, uint32(SQLITE_TRACE_STMT), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, z3) Xsqlite3DbFree(tls, db, z3) goto __870 __869: - (*(*func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((db + 204 /* &.trace */ /* &.xV2 */))))(tls, uint32(SQLITE_TRACE_STMT), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, zTrace) + (*struct { + f func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(db + 204 /* &.trace */))})).f(tls, uint32(SQLITE_TRACE_STMT), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, zTrace) __870: ; __868: @@ -74023,13 +74601,13 @@ __878: if !(((*Vdbe)(unsafe.Pointer(p)).FzErrMsg == uintptr(0)) && (rc != (SQLITE_IOERR | (int32(12) << 8)))) { goto __880 } - Xsqlite3VdbeError(tls, p, ts+2790 /* "%s" */, libc.VaList(bp+144, Xsqlite3ErrStr(tls, rc))) + Xsqlite3VdbeError(tls, p, ts+2800 /* "%s" */, libc.VaList(bp+144, Xsqlite3ErrStr(tls, rc))) __880: ; (*Vdbe)(unsafe.Pointer(p)).Frc = rc Xsqlite3SystemError(tls, db, rc) - Xsqlite3_log(tls, rc, ts+5149, /* "statement aborts..." */ + Xsqlite3_log(tls, rc, ts+5159, /* "statement aborts..." */ libc.VaList(bp+152, ((int32(pOp)-int32(aOp))/20), (*Vdbe)(unsafe.Pointer(p)).FzSql, (*Vdbe)(unsafe.Pointer(p)).FzErrMsg)) Xsqlite3VdbeHalt(tls, p) if !(rc == (SQLITE_IOERR | (int32(12) << 8))) { @@ -74055,7 +74633,9 @@ __883: goto __884 } nProgressLimit = nProgressLimit + (U64((*Sqlite3)(unsafe.Pointer(db)).FnProgressOps)) - if !((*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((db + 356 /* &.xProgress */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpProgressArg) != 0) { + if !((*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxProgress})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpProgressArg) != 0) { goto __885 } nProgressLimit = (uint64(0xffffffff) | (U64((uint64(0xffffffff))) << 32)) @@ -74074,14 +74654,14 @@ __884: // Jump to here if a string or blob larger than SQLITE_MAX_LENGTH // is encountered. too_big: - Xsqlite3VdbeError(tls, p, ts+4448 /* "string or blob t..." */, 0) + Xsqlite3VdbeError(tls, p, ts+4458 /* "string or blob t..." */, 0) rc = SQLITE_TOOBIG goto abort_due_to_error // Jump to here if a malloc() fails. no_mem: Xsqlite3OomFault(tls, db) - Xsqlite3VdbeError(tls, p, ts+5181 /* "out of memory" */, 0) + Xsqlite3VdbeError(tls, p, ts+5191 /* "out of memory" */, 0) rc = SQLITE_NOMEM goto abort_due_to_error @@ -74094,8 +74674,8 @@ abort_due_to_interrupt: return int32(0) } -var azType = [4]uintptr{ts + 5195 /* "NOT NULL" */, ts + 5204 /* "UNIQUE" */, ts + 5211, /* "CHECK" */ - ts + 5217 /* "FOREIGN KEY" */} /* sqlite3.c:87624:25 */ +var azType = [4]uintptr{ts + 5205 /* "NOT NULL" */, ts + 5214 /* "UNIQUE" */, ts + 5221, /* "CHECK" */ + ts + 5227 /* "FOREIGN KEY" */} /* sqlite3.c:87624:25 */ var and_logic = [9]uint8{uint8(0), uint8(0), uint8(0), uint8(0), uint8(1), uint8(2), uint8(0), uint8(2), uint8(2)} /* sqlite3.c:88844:32 */ var or_logic = [9]uint8{uint8(0), uint8(1), uint8(2), uint8(1), uint8(1), uint8(1), uint8(2), uint8(1), uint8(2)} /* sqlite3.c:88847:32 */ var aFlag1 = [2]U16{U16(MEM_Blob), (U16(MEM_Str | MEM_Term))} /* sqlite3.c:89315:24 */ @@ -74121,15 +74701,15 @@ var vfsFlags int32 = ((((SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE) | SQLITE_OP // Valid sqlite3_blob* handles point to Incrblob structures. type Incrblob1 = struct { - FnByte int32 - FiOffset int32 - FiCol U16 - _ [2]byte - FpCsr uintptr - FpStmt uintptr - Fdb uintptr - FzDb uintptr - FpTab uintptr + FnByte int32 + FiOffset int32 + FiCol U16 + F__ccgo_pad1 [2]byte + FpCsr uintptr + FpStmt uintptr + Fdb uintptr + FzDb uintptr + FpTab uintptr } /* sqlite3.c:94829:9 */ //************* End of vdbe.c *********************************************** @@ -74202,16 +74782,16 @@ func blobSeekToRow(tls *libc.TLS, p uintptr, iRow Sqlite3_int64, pzErr uintptr) } if type1 < U32(12) { - zErr = Xsqlite3MPrintf(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb, ts+5229, /* "cannot open valu..." */ + zErr = Xsqlite3MPrintf(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb, ts+5239, /* "cannot open valu..." */ libc.VaList(bp, func() uintptr { if type1 == U32(0) { - return ts + 5258 /* "null" */ + return ts + 5268 /* "null" */ } return func() uintptr { if type1 == U32(7) { - return ts + 5263 /* "real" */ + return ts + 5273 /* "real" */ } - return ts + 5268 /* "integer" */ + return ts + 5278 /* "integer" */ }() }())) rc = SQLITE_ERROR @@ -74231,10 +74811,10 @@ func blobSeekToRow(tls *libc.TLS, p uintptr, iRow Sqlite3_int64, pzErr uintptr) rc = Xsqlite3_finalize(tls, (*Incrblob)(unsafe.Pointer(p)).FpStmt) (*Incrblob)(unsafe.Pointer(p)).FpStmt = uintptr(0) if rc == SQLITE_OK { - zErr = Xsqlite3MPrintf(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb, ts+5276 /* "no such rowid: %..." */, libc.VaList(bp+8, iRow)) + zErr = Xsqlite3MPrintf(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb, ts+5286 /* "no such rowid: %..." */, libc.VaList(bp+8, iRow)) rc = SQLITE_ERROR } else { - zErr = Xsqlite3MPrintf(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb, ts+2790 /* "%s" */, libc.VaList(bp+16, Xsqlite3_errmsg(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb))) + zErr = Xsqlite3MPrintf(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb, ts+2800 /* "%s" */, libc.VaList(bp+16, Xsqlite3_errmsg(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb))) } } @@ -74297,21 +74877,21 @@ __4: goto __5 } pTab = uintptr(0) - Xsqlite3ErrorMsg(tls, bp+48 /* &sParse */, ts+5296 /* "cannot open virt..." */, libc.VaList(bp, zTable)) + Xsqlite3ErrorMsg(tls, bp+48 /* &sParse */, ts+5306 /* "cannot open virt..." */, libc.VaList(bp, zTable)) __5: ; if !((pTab != 0) && !(((*Table)(unsafe.Pointer((pTab))).FtabFlags & U32(TF_WithoutRowid)) == U32(0))) { goto __6 } pTab = uintptr(0) - Xsqlite3ErrorMsg(tls, bp+48 /* &sParse */, ts+5326 /* "cannot open tabl..." */, libc.VaList(bp+8, zTable)) + Xsqlite3ErrorMsg(tls, bp+48 /* &sParse */, ts+5336 /* "cannot open tabl..." */, libc.VaList(bp+8, zTable)) __6: ; if !((pTab != 0) && ((*Table)(unsafe.Pointer(pTab)).FpSelect != 0)) { goto __7 } pTab = uintptr(0) - Xsqlite3ErrorMsg(tls, bp+48 /* &sParse */, ts+5362 /* "cannot open view..." */, libc.VaList(bp+16, zTable)) + Xsqlite3ErrorMsg(tls, bp+48 /* &sParse */, ts+5372 /* "cannot open view..." */, libc.VaList(bp+16, zTable)) __7: ; if !(!(pTab != 0)) { @@ -74356,7 +74936,7 @@ __12: goto __14 } Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */))) - *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */)) = Xsqlite3MPrintf(tls, db, ts+5383 /* "no such column: ..." */, libc.VaList(bp+24, zColumn)) + *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */)) = Xsqlite3MPrintf(tls, db, ts+5393 /* "no such column: ..." */, libc.VaList(bp+24, zColumn)) rc = SQLITE_ERROR Xsqlite3BtreeLeaveAll(tls, db) goto blob_open_out @@ -74385,7 +74965,7 @@ __20: if !((*sColMap)(unsafe.Pointer((pFKey+36 /* &.aCol */)+uintptr(j)*8)).FiFrom == iCol) { goto __23 } - zFault = ts + 5404 /* "foreign key" */ + zFault = ts + 5414 /* "foreign key" */ __23: ; goto __21 @@ -74418,7 +74998,7 @@ __27: if !((int32(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(j1)*2))) == iCol) || (int32(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(j1)*2))) == (-2))) { goto __30 } - zFault = ts + 5416 /* "indexed" */ + zFault = ts + 5426 /* "indexed" */ __30: ; goto __28 @@ -74439,7 +75019,7 @@ __26: goto __31 } Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */))) - *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */)) = Xsqlite3MPrintf(tls, db, ts+5424 /* "cannot open %s c..." */, libc.VaList(bp+32, zFault)) + *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */)) = Xsqlite3MPrintf(tls, db, ts+5434 /* "cannot open %s c..." */, libc.VaList(bp+32, zFault)) rc = SQLITE_ERROR Xsqlite3BtreeLeaveAll(tls, db) goto blob_open_out @@ -74548,7 +75128,7 @@ __38: ; Xsqlite3ErrorWithMsg(tls, db, rc, func() uintptr { if *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */)) != 0 { - return ts + 2790 /* "%s" */ + return ts + 2800 /* "%s" */ } return uintptr(0) }(), libc.VaList(bp+40, *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */)))) @@ -74638,7 +75218,9 @@ func blobReadWrite(tls *libc.TLS, pBlob uintptr, z uintptr, n int32, iOffset int v, *(*uintptr)(unsafe.Pointer((*Vdbe)(unsafe.Pointer(v)).FapCsr)), SQLITE_DELETE, (*Incrblob)(unsafe.Pointer(p)).FzDb, (*Incrblob)(unsafe.Pointer(p)).FpTab, iKey, -1, int32((*Incrblob)(unsafe.Pointer(p)).FiCol)) } - rc = (*(*func(*libc.TLS, uintptr, U32, U32, uintptr) int32)(unsafe.Pointer(&xCall)))(tls, (*Incrblob)(unsafe.Pointer(p)).FpCsr, (uint32(iOffset + (*Incrblob)(unsafe.Pointer(p)).FiOffset)), uint32(n), z) + rc = (*struct { + f func(*libc.TLS, uintptr, U32, U32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xCall})).f(tls, (*Incrblob)(unsafe.Pointer(p)).FpCsr, (uint32(iOffset + (*Incrblob)(unsafe.Pointer(p)).FiOffset)), uint32(n), z) Xsqlite3BtreeLeaveCursor(tls, (*Incrblob)(unsafe.Pointer(p)).FpCsr) if rc == SQLITE_ABORT { Xsqlite3VdbeFinalize(tls, v) @@ -74713,7 +75295,7 @@ func Xsqlite3_blob_reopen(tls *libc.TLS, pBlob uintptr, iRow Sqlite3_int64) int3 if rc != SQLITE_OK { Xsqlite3ErrorWithMsg(tls, db, rc, func() uintptr { if *(*uintptr)(unsafe.Pointer(bp + 8 /* zErr */)) != 0 { - return ts + 2790 /* "%s" */ + return ts + 2800 /* "%s" */ } return uintptr(0) }(), libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErr */)))) @@ -75937,7 +76519,9 @@ func vdbeSorterMerge(tls *libc.TLS, pTask uintptr, p1 uintptr, p2 uintptr) uintp for { var res int32 - res = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr, int32) int32)(unsafe.Pointer((pTask + 32 /* &.xCompare */))))(tls, + res = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SortSubtask)(unsafe.Pointer(pTask)).FxCompare})).f(tls, pTask, bp+4 /* &bCached */, ((p1) + uintptr(1)*8), (*SorterRecord)(unsafe.Pointer(p1)).FnVal, ((p2) + uintptr(1)*8), (*SorterRecord)(unsafe.Pointer(p2)).FnVal) if res <= 0 { @@ -76208,7 +76792,9 @@ func vdbeMergeEngineStep(tls *libc.TLS, pMerger uintptr, pbEof uintptr) int32 { } else if (*PmaReader)(unsafe.Pointer(pReadr2)).FpFd == uintptr(0) { iRes = -1 } else { - iRes = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr, int32) int32)(unsafe.Pointer((pTask + 32 /* &.xCompare */))))(tls, pTask, bp, /* &bCached */ + iRes = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SortSubtask)(unsafe.Pointer(pTask)).FxCompare})).f(tls, pTask, bp, /* &bCached */ (*PmaReader)(unsafe.Pointer(pReadr1)).FaKey, (*PmaReader)(unsafe.Pointer(pReadr1)).FnKey, (*PmaReader)(unsafe.Pointer(pReadr2)).FaKey, (*PmaReader)(unsafe.Pointer(pReadr2)).FnKey) } @@ -76617,7 +77203,9 @@ func vdbeMergeEngineCompare(tls *libc.TLS, pMerger uintptr, iOut int32) { /* sql *(*int32)(unsafe.Pointer(bp /* bCached */)) = 0 var res int32 // from vdbeSortSubtaskMain() - res = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr, int32) int32)(unsafe.Pointer((pTask + 32 /* &.xCompare */))))(tls, + res = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SortSubtask)(unsafe.Pointer(pTask)).FxCompare})).f(tls, pTask, bp /* &bCached */, (*PmaReader)(unsafe.Pointer(p1)).FaKey, (*PmaReader)(unsafe.Pointer(p1)).FnKey, (*PmaReader)(unsafe.Pointer(p2)).FaKey, (*PmaReader)(unsafe.Pointer(p2)).FnKey) if res <= 0 { iRes = i1 @@ -77720,7 +78308,9 @@ func walkExpr(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3. var rc int32 for 1 != 0 { - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pWalker + 4 /* &.xExprCallback */))))(tls, pWalker, pExpr) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Walker)(unsafe.Pointer(pWalker)).FxExprCallback})).f(tls, pWalker, pExpr) if rc != 0 { return (rc & WRC_Abort) } @@ -77904,7 +78494,9 @@ func Xsqlite3WalkSelect(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sq return WRC_Continue } for ok := true; ok; ok = (p != uintptr(0)) { - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pWalker + 8 /* &.xSelectCallback */))))(tls, pWalker, p) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Walker)(unsafe.Pointer(pWalker)).FxSelectCallback})).f(tls, pWalker, p) if rc != 0 { return (rc & WRC_Abort) } @@ -77913,7 +78505,9 @@ func Xsqlite3WalkSelect(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sq return WRC_Abort } if (*Walker)(unsafe.Pointer(pWalker)).FxSelectCallback2 != 0 { - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pWalker + 12 /* &.xSelectCallback2 */))))(tls, pWalker, p) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Walker)(unsafe.Pointer(pWalker)).FxSelectCallback2})).f(tls, pWalker, p) } p = (*Select)(unsafe.Pointer(p)).FpPrior } @@ -78261,7 +78855,7 @@ __5: goto __6 __6: ; - if !((i == (*Sqlite3)(unsafe.Pointer(db)).FnDb) && (Xsqlite3StrICmp(tls, ts+5458 /* "main" */, zDb) == 0)) { + if !((i == (*Sqlite3)(unsafe.Pointer(db)).FnDb) && (Xsqlite3StrICmp(tls, ts+5468 /* "main" */, zDb) == 0)) { goto __8 } // This branch is taken when the main database has been renamed @@ -78464,14 +79058,14 @@ __40: ; goto __39 __38: - if !(((op != TK_DELETE) && (zTab != 0)) && (Xsqlite3StrICmp(tls, ts+5463 /* "new" */, zTab) == 0)) { + if !(((op != TK_DELETE) && (zTab != 0)) && (Xsqlite3StrICmp(tls, ts+5473 /* "new" */, zTab) == 0)) { goto __41 } (*Expr)(unsafe.Pointer(pExpr)).FiTable = 1 pTab = (*Parse)(unsafe.Pointer(pParse)).FpTriggerTab goto __42 __41: - if !(((op != TK_INSERT) && (zTab != 0)) && (Xsqlite3StrICmp(tls, ts+5467 /* "old" */, zTab) == 0)) { + if !(((op != TK_INSERT) && (zTab != 0)) && (Xsqlite3StrICmp(tls, ts+5477 /* "old" */, zTab) == 0)) { goto __43 } (*Expr)(unsafe.Pointer(pExpr)).FiTable = 0 @@ -78488,7 +79082,7 @@ __37: goto __44 } pUpsert = *(*uintptr)(unsafe.Pointer(pNC + 8 /* &.uNC */)) - if !((pUpsert != 0) && (Xsqlite3StrICmp(tls, ts+5471 /* "excluded" */, zTab) == 0)) { + if !((pUpsert != 0) && (Xsqlite3StrICmp(tls, ts+5481 /* "excluded" */, zTab) == 0)) { goto __45 } pTab = (*SrcItem)(unsafe.Pointer(((*Upsert)(unsafe.Pointer(pUpsert)).FpUpsertSrc + 8 /* &.a */))).FpTab @@ -78665,7 +79259,7 @@ __66: if !((((*NameContext)(unsafe.Pointer(pNC)).FncFlags & NC_AllowAgg) == 0) && (((*Expr)(unsafe.Pointer((pOrig))).Fflags & (U32(EP_Agg))) != U32(0))) { goto __70 } - Xsqlite3ErrorMsg(tls, pParse, ts+5480 /* "misuse of aliase..." */, libc.VaList(bp, zAs)) + Xsqlite3ErrorMsg(tls, pParse, ts+5490 /* "misuse of aliase..." */, libc.VaList(bp, zAs)) return WRC_Abort __70: ; @@ -78673,14 +79267,14 @@ __70: ((((*NameContext)(unsafe.Pointer(pNC)).FncFlags & NC_AllowWin) == 0) || (pNC != pTopNC))) { goto __71 } - Xsqlite3ErrorMsg(tls, pParse, ts+5511 /* "misuse of aliase..." */, libc.VaList(bp+8, zAs)) + Xsqlite3ErrorMsg(tls, pParse, ts+5521 /* "misuse of aliase..." */, libc.VaList(bp+8, zAs)) return WRC_Abort __71: ; if !(Xsqlite3ExprVectorSize(tls, pOrig) != 1) { goto __72 } - Xsqlite3ErrorMsg(tls, pParse, ts+5548 /* "row value misuse..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+5558 /* "row value misuse..." */, 0) return WRC_Abort __72: ; @@ -78756,7 +79350,7 @@ __11: // a huge amount of legacy SQL that uses it. So for now, we just // issue a warning. Xsqlite3_log(tls, SQLITE_WARNING, - ts+5566 /* "double-quoted st..." */, libc.VaList(bp+16, zCol)) + ts+5576 /* "double-quoted st..." */, libc.VaList(bp+16, zCol)) (*Expr)(unsafe.Pointer(pExpr)).Fop = U8(TK_STRING) *(*uintptr)(unsafe.Pointer(pExpr + 44 /* &.y */)) = uintptr(0) return WRC_Prune @@ -78777,23 +79371,23 @@ __75: goto __78 } if cnt == 0 { - zErr = ts + 5601 /* "no such column" */ + zErr = ts + 5611 /* "no such column" */ } else { - zErr = ts + 5616 /* "ambiguous column..." */ + zErr = ts + 5626 /* "ambiguous column..." */ } if !(zDb != 0) { goto __79 } - Xsqlite3ErrorMsg(tls, pParse, ts+5638 /* "%s: %s.%s.%s" */, libc.VaList(bp+24, zErr, zDb, zTab, zCol)) + Xsqlite3ErrorMsg(tls, pParse, ts+5648 /* "%s: %s.%s.%s" */, libc.VaList(bp+24, zErr, zDb, zTab, zCol)) goto __80 __79: if !(zTab != 0) { goto __81 } - Xsqlite3ErrorMsg(tls, pParse, ts+5651 /* "%s: %s.%s" */, libc.VaList(bp+56, zErr, zTab, zCol)) + Xsqlite3ErrorMsg(tls, pParse, ts+5661 /* "%s: %s.%s" */, libc.VaList(bp+56, zErr, zTab, zCol)) goto __82 __81: - Xsqlite3ErrorMsg(tls, pParse, ts+5661 /* "%s: %s" */, libc.VaList(bp+80, zErr, zCol)) + Xsqlite3ErrorMsg(tls, pParse, ts+5671 /* "%s: %s" */, libc.VaList(bp+80, zErr, zCol)) __82: ; __80: @@ -78927,15 +79521,15 @@ func notValidImpl(tls *libc.TLS, pParse uintptr, pNC uintptr, zMsg uintptr, pExp bp := tls.Alloc(16) defer tls.Free(16) - var zIn uintptr = ts + 5668 /* "partial index WH..." */ + var zIn uintptr = ts + 5678 /* "partial index WH..." */ if ((*NameContext)(unsafe.Pointer(pNC)).FncFlags & NC_IdxExpr) != 0 { - zIn = ts + 5696 /* "index expression..." */ + zIn = ts + 5706 /* "index expression..." */ } else if ((*NameContext)(unsafe.Pointer(pNC)).FncFlags & NC_IsCheck) != 0 { - zIn = ts + 5714 /* "CHECK constraint..." */ + zIn = ts + 5724 /* "CHECK constraint..." */ } else if ((*NameContext)(unsafe.Pointer(pNC)).FncFlags & NC_GenCol) != 0 { - zIn = ts + 5732 /* "generated column..." */ + zIn = ts + 5742 /* "generated column..." */ } - Xsqlite3ErrorMsg(tls, pParse, ts+5750 /* "%s prohibited in..." */, libc.VaList(bp, zMsg, zIn)) + Xsqlite3ErrorMsg(tls, pParse, ts+5760 /* "%s prohibited in..." */, libc.VaList(bp, zMsg, zIn)) if pExpr != 0 { (*Expr)(unsafe.Pointer(pExpr)).Fop = U8(TK_NULL) } @@ -78957,7 +79551,7 @@ func exprProbability(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:99948:12: */ if *(*float64)(unsafe.Pointer(bp /* r */)) > 1.0 { return -1 } - return (int32(*(*float64)(unsafe.Pointer(bp /* r */)) * 134217728.0)) + return (libc.Int32FromFloat64(*(*float64)(unsafe.Pointer(bp /* r */)) * 134217728.0)) } // This routine is callback for sqlite3WalkExpr(). @@ -79043,10 +79637,10 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s Xsqlite3WalkExpr(tls, pWalker, (*Expr)(unsafe.Pointer(pExpr)).FpLeft) if (0 == Xsqlite3ExprCanBeNull(tls, (*Expr)(unsafe.Pointer(pExpr)).FpLeft)) && !(int32((*Parse)(unsafe.Pointer(pParse)).FeParseMode) >= PARSE_MODE_RENAME) { if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_NOTNULL { - *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)) = ts + 5770 /* "true" */ + *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)) = ts + 5780 /* "true" */ *(*U32)(unsafe.Pointer(pExpr + 4 /* &.flags */)) |= (U32(EP_IsTrue)) } else { - *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)) = ts + 5775 /* "false" */ + *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)) = ts + 5785 /* "false" */ *(*U32)(unsafe.Pointer(pExpr + 4 /* &.flags */)) |= (U32(EP_IsFalse)) } (*Expr)(unsafe.Pointer(pExpr)).Fop = U8(TK_TRUEFALSE) @@ -79099,7 +79693,7 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s var pLeft uintptr = (*Expr)(unsafe.Pointer(pExpr)).FpLeft if ((*NameContext)(unsafe.Pointer((pNC))).FncFlags & (NC_IdxExpr | NC_GenCol)) != 0 { - notValidImpl(tls, pParse, pNC, ts+5781 /* "the \".\" operator" */, uintptr(0)) + notValidImpl(tls, pParse, pNC, ts+5791 /* "the \".\" operator" */, uintptr(0)) } pRight = (*Expr)(unsafe.Pointer(pExpr)).FpRight @@ -79166,7 +79760,7 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s if (*Expr)(unsafe.Pointer(pExpr)).FiTable < 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+5798 /* "second argument ..." */, 0) + ts+5808 /* "second argument ..." */, 0) (*NameContext)(unsafe.Pointer(pNC)).FnNcErr++ } } else { @@ -79191,7 +79785,7 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s var auth int32 = Xsqlite3AuthCheck(tls, pParse, SQLITE_FUNCTION, uintptr(0), (*FuncDef)(unsafe.Pointer(pDef)).FzName, uintptr(0)) if auth != SQLITE_OK { if auth == SQLITE_DENY { - Xsqlite3ErrorMsg(tls, pParse, ts+5869, /* "not authorized t..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+5879, /* "not authorized t..." */ libc.VaList(bp, (*FuncDef)(unsafe.Pointer(pDef)).FzName)) (*NameContext)(unsafe.Pointer(pNC)).FnNcErr++ } @@ -79215,7 +79809,7 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s // in a CHECK constraint. SQLServer, MySQL, and PostgreSQL all // all this. if ((*NameContext)(unsafe.Pointer((pNC))).FncFlags & ((NC_IdxExpr | NC_PartIdx) | NC_GenCol)) != 0 { - notValidImpl(tls, pParse, pNC, ts+5904 /* "non-deterministi..." */, uintptr(0)) + notValidImpl(tls, pParse, pNC, ts+5914 /* "non-deterministi..." */, uintptr(0)) } } else { @@ -79244,30 +79838,30 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s if ((pDef != 0) && ((*FuncDef)(unsafe.Pointer(pDef)).FxValue == uintptr(0))) && (pWin != 0) { Xsqlite3ErrorMsg(tls, pParse, - ts+5932 /* "%.*s() may not b..." */, libc.VaList(bp+8, nId, zId)) + ts+5942 /* "%.*s() may not b..." */, libc.VaList(bp+8, nId, zId)) (*NameContext)(unsafe.Pointer(pNC)).FnNcErr++ } else if (((is_agg != 0) && (((*NameContext)(unsafe.Pointer(pNC)).FncFlags & NC_AllowAgg) == 0)) || (((is_agg != 0) && (((*FuncDef)(unsafe.Pointer(pDef)).FfuncFlags & U32(SQLITE_FUNC_WINDOW)) != 0)) && !(pWin != 0))) || (((is_agg != 0) && (pWin != 0)) && (((*NameContext)(unsafe.Pointer(pNC)).FncFlags & NC_AllowWin) == 0)) { var zType uintptr if (((*FuncDef)(unsafe.Pointer(pDef)).FfuncFlags & U32(SQLITE_FUNC_WINDOW)) != 0) || (pWin != 0) { - zType = ts + 5976 /* "window" */ + zType = ts + 5986 /* "window" */ } else { - zType = ts + 5983 /* "aggregate" */ + zType = ts + 5993 /* "aggregate" */ } - Xsqlite3ErrorMsg(tls, pParse, ts+5993 /* "misuse of %s fun..." */, libc.VaList(bp+24, zType, nId, zId)) + Xsqlite3ErrorMsg(tls, pParse, ts+6003 /* "misuse of %s fun..." */, libc.VaList(bp+24, zType, nId, zId)) (*NameContext)(unsafe.Pointer(pNC)).FnNcErr++ is_agg = 0 } else if (no_such_func != 0) && (int32((*Sqlite3)(unsafe.Pointer((*Parse)(unsafe.Pointer(pParse)).Fdb)).Finit.Fbusy) == 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+6022 /* "no such function..." */, libc.VaList(bp+48, nId, zId)) + Xsqlite3ErrorMsg(tls, pParse, ts+6032 /* "no such function..." */, libc.VaList(bp+48, nId, zId)) (*NameContext)(unsafe.Pointer(pNC)).FnNcErr++ } else if wrong_num_args != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+6045, /* "wrong number of ..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+6055, /* "wrong number of ..." */ libc.VaList(bp+64, nId, zId)) (*NameContext)(unsafe.Pointer(pNC)).FnNcErr++ } else if (is_agg == 0) && (((*Expr)(unsafe.Pointer((pExpr))).Fflags & (U32(EP_WinFunc))) != U32(0)) { Xsqlite3ErrorMsg(tls, pParse, - ts+6090, /* "FILTER may not b..." */ + ts+6100, /* "FILTER may not b..." */ libc.VaList(bp+80, nId, zId)) (*NameContext)(unsafe.Pointer(pNC)).FnNcErr++ } @@ -79342,7 +79936,7 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s var nRef int32 = (*NameContext)(unsafe.Pointer(pNC)).FnRef if ((*NameContext)(unsafe.Pointer((pNC))).FncFlags & (((NC_IsCheck | NC_PartIdx) | NC_IdxExpr) | NC_GenCol)) != 0 { - notValidImpl(tls, pParse, pNC, ts+6139 /* "subqueries" */, pExpr) + notValidImpl(tls, pParse, pNC, ts+6149 /* "subqueries" */, pExpr) } Xsqlite3WalkSelect(tls, pWalker, *(*uintptr)(unsafe.Pointer(pExpr + 20 /* &.x */))) @@ -79359,7 +79953,7 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s { if ((*NameContext)(unsafe.Pointer((pNC))).FncFlags & (((NC_IsCheck | NC_PartIdx) | NC_IdxExpr) | NC_GenCol)) != 0 { - notValidImpl(tls, pParse, pNC, ts+6150 /* "parameters" */, pExpr) + notValidImpl(tls, pParse, pNC, ts+6160 /* "parameters" */, pExpr) } break @@ -79419,7 +80013,7 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s } if nLeft != nRight { - Xsqlite3ErrorMsg(tls, pParse, ts+5548 /* "row value misuse..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+5558 /* "row value misuse..." */, 0) } break @@ -79524,7 +80118,7 @@ func resolveOutOfRangeError(tls *libc.TLS, pParse uintptr, zType uintptr, i int3 Xsqlite3ErrorMsg(tls, pParse, - ts+6161 /* "%r %s BY term ou..." */, libc.VaList(bp, i, zType, mx)) + ts+6171 /* "%r %s BY term ou..." */, libc.VaList(bp, i, zType, mx)) } // Analyze the ORDER BY clause in a compound SELECT statement. Modify @@ -79556,7 +80150,7 @@ func resolveCompoundOrderBy(tls *libc.TLS, pParse uintptr, pSelect uintptr) int3 } db = (*Parse)(unsafe.Pointer(pParse)).Fdb if (*ExprList)(unsafe.Pointer(pOrderBy)).FnExpr > *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 2*4)) { - Xsqlite3ErrorMsg(tls, pParse, ts+6217 /* "too many terms i..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+6227 /* "too many terms i..." */, 0) return 1 } for i = 0; i < (*ExprList)(unsafe.Pointer(pOrderBy)).FnExpr; i++ { @@ -79591,7 +80185,7 @@ func resolveCompoundOrderBy(tls *libc.TLS, pParse uintptr, pSelect uintptr) int3 } if Xsqlite3ExprIsInteger(tls, pE, bp+8 /* &iCol */) != 0 { if (*(*int32)(unsafe.Pointer(bp + 8 /* iCol */)) <= 0) || (*(*int32)(unsafe.Pointer(bp + 8 /* iCol */)) > (*ExprList)(unsafe.Pointer(pEList)).FnExpr) { - resolveOutOfRangeError(tls, pParse, ts+6251 /* "ORDER" */, (i + 1), (*ExprList)(unsafe.Pointer(pEList)).FnExpr) + resolveOutOfRangeError(tls, pParse, ts+6261 /* "ORDER" */, (i + 1), (*ExprList)(unsafe.Pointer(pEList)).FnExpr) return 1 } } else { @@ -79662,7 +80256,7 @@ func resolveCompoundOrderBy(tls *libc.TLS, pParse uintptr, pSelect uintptr) int3 for i = 0; i < (*ExprList)(unsafe.Pointer(pOrderBy)).FnExpr; i++ { if (int32(*(*uint8)(unsafe.Pointer(((pOrderBy + 8 /* &.a */) + uintptr(i)*20) + 12 /* &.done */)) & 0x4 >> 2)) == 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+6257 /* "%r ORDER BY term..." */, libc.VaList(bp, (i+1))) + ts+6267 /* "%r ORDER BY term..." */, libc.VaList(bp, (i+1))) return 1 } } @@ -79690,7 +80284,7 @@ func Xsqlite3ResolveOrderGroupBy(tls *libc.TLS, pParse uintptr, pSelect uintptr, return 0 } if (*ExprList)(unsafe.Pointer(pOrderBy)).FnExpr > *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 2*4)) { - Xsqlite3ErrorMsg(tls, pParse, ts+6318 /* "too many terms i..." */, libc.VaList(bp, zType)) + Xsqlite3ErrorMsg(tls, pParse, ts+6328 /* "too many terms i..." */, libc.VaList(bp, zType)) return 1 } pEList = (*Select)(unsafe.Pointer(pSelect)).FpEList @@ -79979,7 +80573,7 @@ func resolveSelectStep(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sql *(*int32)(unsafe.Pointer(bp /* &sNC */ + 24 /* &.ncFlags */)) |= (NC_UEList) if (*Select)(unsafe.Pointer(p)).FpHaving != 0 { if !(pGroupBy != 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+6349 /* "a GROUP BY claus..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+6359 /* "a GROUP BY claus..." */, 0) return WRC_Abort } if Xsqlite3ResolveExprNames(tls, bp /* &sNC */, (*Select)(unsafe.Pointer(p)).FpHaving) != 0 { @@ -80036,7 +80630,7 @@ func resolveSelectStep(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sql // resolve those symbols on the incorrect ORDER BY for consistency. if (((*Select)(unsafe.Pointer(p)).FpOrderBy != uintptr(0)) && (isCompound <= nCompound)) && // Defer right-most ORDER BY of a compound - (resolveOrderGroupBy(tls, bp /* &sNC */, p, (*Select)(unsafe.Pointer(p)).FpOrderBy, ts+6251 /* "ORDER" */) != 0) { + (resolveOrderGroupBy(tls, bp /* &sNC */, p, (*Select)(unsafe.Pointer(p)).FpOrderBy, ts+6261 /* "ORDER" */) != 0) { return WRC_Abort } if (*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0 { @@ -80049,7 +80643,7 @@ func resolveSelectStep(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sql if pGroupBy != 0 { var pItem uintptr - if (resolveOrderGroupBy(tls, bp /* &sNC */, p, pGroupBy, ts+6393 /* "GROUP" */) != 0) || ((*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0) { + if (resolveOrderGroupBy(tls, bp /* &sNC */, p, pGroupBy, ts+6403 /* "GROUP" */) != 0) || ((*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0) { return WRC_Abort } i = 0 @@ -80061,7 +80655,7 @@ func resolveSelectStep(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sql { if ((*Expr)(unsafe.Pointer(((*ExprList_item)(unsafe.Pointer(pItem)).FpExpr))).Fflags & (U32(EP_Agg))) != U32(0) { Xsqlite3ErrorMsg(tls, pParse, - ts+6399 /* "aggregate functi..." */, 0) + ts+6409 /* "aggregate functi..." */, 0) return WRC_Abort } @@ -80831,7 +81425,7 @@ func codeVectorCompare(tls *libc.TLS, pParse uintptr, pExpr uintptr, dest int32, return } if nLeft != Xsqlite3ExprVectorSize(tls, pRight) { - Xsqlite3ErrorMsg(tls, pParse, ts+5548 /* "row value misuse..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+5558 /* "row value misuse..." */, 0) return } @@ -80907,7 +81501,7 @@ func Xsqlite3ExprCheckHeight(tls *libc.TLS, pParse uintptr, nHeight int32) int32 var mxHeight int32 = *(*int32)(unsafe.Pointer(((*Parse)(unsafe.Pointer(pParse)).Fdb + 108 /* &.aLimit */) + 3*4)) if nHeight > mxHeight { Xsqlite3ErrorMsg(tls, pParse, - ts+6458 /* "Expression tree ..." */, libc.VaList(bp, mxHeight)) + ts+6468 /* "Expression tree ..." */, libc.VaList(bp, mxHeight)) rc = SQLITE_ERROR } return rc @@ -81148,7 +81742,7 @@ func Xsqlite3ExprAnd(tls *libc.TLS, pParse uintptr, pLeft uintptr, pRight uintpt !(int32((*Parse)(unsafe.Pointer(pParse)).FeParseMode) >= PARSE_MODE_RENAME) { Xsqlite3ExprDeferredDelete(tls, pParse, pLeft) Xsqlite3ExprDeferredDelete(tls, pParse, pRight) - return Xsqlite3Expr(tls, db, TK_INTEGER, ts+6506 /* "0" */) + return Xsqlite3Expr(tls, db, TK_INTEGER, ts+6516 /* "0" */) } else { return Xsqlite3PExpr(tls, pParse, TK_AND, pLeft, pRight) } @@ -81170,7 +81764,7 @@ func Xsqlite3ExprFunction(tls *libc.TLS, pParse uintptr, pList uintptr, pToken u return uintptr(0) } if (pList != 0) && ((*ExprList)(unsafe.Pointer(pList)).FnExpr > *(*int32)(unsafe.Pointer(((*Parse)(unsafe.Pointer(pParse)).Fdb + 108 /* &.aLimit */) + 6*4))) { - Xsqlite3ErrorMsg(tls, pParse, ts+6508 /* "too many argumen..." */, libc.VaList(bp, pToken)) + Xsqlite3ErrorMsg(tls, pParse, ts+6518 /* "too many argumen..." */, libc.VaList(bp, pToken)) } *(*uintptr)(unsafe.Pointer(pNew + 20 /* &.x */)) = pList *(*U32)(unsafe.Pointer(pNew + 4 /* &.flags */)) |= (U32(EP_HasFunc)) @@ -81204,7 +81798,7 @@ func Xsqlite3ExprFunctionUsable(tls *libc.TLS, pParse uintptr, pExpr uintptr, pD // is tagged with SQLITE_FUNC_UNSAFE) and // SQLITE_DBCONFIG_TRUSTED_SCHEMA is off (meaning // that the schema is possibly tainted). - Xsqlite3ErrorMsg(tls, pParse, ts+6542 /* "unsafe use of %s..." */, libc.VaList(bp, (*FuncDef)(unsafe.Pointer(pDef)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+6552 /* "unsafe use of %s..." */, libc.VaList(bp, (*FuncDef)(unsafe.Pointer(pDef)).FzName)) } } } @@ -81257,7 +81851,7 @@ func Xsqlite3ExprAssignVarNumber(tls *libc.TLS, pParse uintptr, pExpr uintptr, n } if ((bOk == 0) || (*(*I64)(unsafe.Pointer(bp + 8 /* i */)) < int64(1))) || (*(*I64)(unsafe.Pointer(bp + 8 /* i */)) > I64(*(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 9*4)))) { - Xsqlite3ErrorMsg(tls, pParse, ts+6561, /* "variable number ..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+6571, /* "variable number ..." */ libc.VaList(bp, *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 9*4)))) return } @@ -81284,7 +81878,7 @@ func Xsqlite3ExprAssignVarNumber(tls *libc.TLS, pParse uintptr, pExpr uintptr, n } (*Expr)(unsafe.Pointer(pExpr)).FiColumn = x if int32(x) > *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 9*4)) { - Xsqlite3ErrorMsg(tls, pParse, ts+6604 /* "too many SQL var..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+6614 /* "too many SQL var..." */, 0) } } @@ -81953,7 +82547,7 @@ __2: if !((int32((*Expr)(unsafe.Pointer(pExpr)).Fop) != TK_SELECT) && ((*IdList)(unsafe.Pointer(pColumns)).FnId != (libc.AssignInt32(&n, Xsqlite3ExprVectorSize(tls, pExpr))))) { goto __3 } - Xsqlite3ErrorMsg(tls, pParse, ts+6627, /* "%d columns assig..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+6637, /* "%d columns assig..." */ libc.VaList(bp, (*IdList)(unsafe.Pointer(pColumns)).FnId, n)) goto vector_append_error __3: @@ -82088,7 +82682,7 @@ func Xsqlite3ExprListCheckLength(tls *libc.TLS, pParse uintptr, pEList uintptr, var mx int32 = *(*int32)(unsafe.Pointer(((*Parse)(unsafe.Pointer(pParse)).Fdb + 108 /* &.aLimit */) + 2*4)) if (pEList != 0) && ((*ExprList)(unsafe.Pointer(pEList)).FnExpr > mx) { - Xsqlite3ErrorMsg(tls, pParse, ts+6657 /* "too many columns..." */, libc.VaList(bp, zObject)) + Xsqlite3ErrorMsg(tls, pParse, ts+6667 /* "too many columns..." */, libc.VaList(bp, zObject)) } } @@ -82143,10 +82737,10 @@ func Xsqlite3SelectWalkFail(tls *libc.TLS, pWalker uintptr, NotUsed uintptr) int // "false" EP_IsFalse // anything else 0 func Xsqlite3IsTrueOrFalse(tls *libc.TLS, zIn uintptr) U32 { /* sqlite3.c:103208:20: */ - if Xsqlite3StrICmp(tls, zIn, ts+5770 /* "true" */) == 0 { + if Xsqlite3StrICmp(tls, zIn, ts+5780 /* "true" */) == 0 { return U32(EP_IsTrue) } - if Xsqlite3StrICmp(tls, zIn, ts+5775 /* "false" */) == 0 { + if Xsqlite3StrICmp(tls, zIn, ts+5785 /* "false" */) == 0 { return U32(EP_IsFalse) } return U32(0) @@ -82591,13 +83185,13 @@ func Xsqlite3ExprNeedsNoAffinityChange(tls *libc.TLS, p uintptr, aff int8) int32 // Return TRUE if the given string is a row-id column name. func Xsqlite3IsRowid(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:103650:20: */ - if Xsqlite3StrICmp(tls, z, ts+6680 /* "_ROWID_" */) == 0 { + if Xsqlite3StrICmp(tls, z, ts+6690 /* "_ROWID_" */) == 0 { return 1 } - if Xsqlite3StrICmp(tls, z, ts+6688 /* "ROWID" */) == 0 { + if Xsqlite3StrICmp(tls, z, ts+6698 /* "ROWID" */) == 0 { return 1 } - if Xsqlite3StrICmp(tls, z, ts+6694 /* "OID" */) == 0 { + if Xsqlite3StrICmp(tls, z, ts+6704 /* "OID" */) == 0 { return 1 } return 0 @@ -82825,7 +83419,7 @@ func Xsqlite3FindInIndex(tls *libc.TLS, pParse uintptr, pX uintptr, inFlags U32, Xsqlite3OpenTable(tls, pParse, iTab, iDb, pTab, OP_OpenRead) eType = IN_INDEX_ROWID - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+6698 /* "USING ROWID SEAR..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+6708 /* "USING ROWID SEAR..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) Xsqlite3VdbeJumpHere(tls, v, iAddr) } else { var pIdx uintptr // Iterator variable @@ -82916,7 +83510,7 @@ func Xsqlite3FindInIndex(tls *libc.TLS, pParse uintptr, pX uintptr, inFlags U32, if colUsed == ((Bitmask((uint64(1))) << (nExpr)) - uint64(1)) { // If we reach this point, that means the index pIdx is usable var iAddr int32 = Xsqlite3VdbeAddOp0(tls, v, OP_Once) - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+6745 /* "USING INDEX %s F..." */, libc.VaList(bp+8, (*Index)(unsafe.Pointer(pIdx)).FzName)) + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+6755 /* "USING INDEX %s F..." */, libc.VaList(bp+8, (*Index)(unsafe.Pointer(pIdx)).FzName)) Xsqlite3VdbeAddOp3(tls, v, OP_OpenRead, iTab, int32((*Index)(unsafe.Pointer(pIdx)).Ftnum), iDb) Xsqlite3VdbeSetP4KeyInfo(tls, pParse, pIdx) @@ -83022,7 +83616,7 @@ func Xsqlite3SubselectError(tls *libc.TLS, pParse uintptr, nActual int32, nExpec defer tls.Free(16) if (*Parse)(unsafe.Pointer(pParse)).FnErr == 0 { - var zFmt uintptr = ts + 6776 /* "sub-select retur..." */ + var zFmt uintptr = ts + 6786 /* "sub-select retur..." */ Xsqlite3ErrorMsg(tls, pParse, zFmt, libc.VaList(bp, nActual, nExpect)) } } @@ -83040,7 +83634,7 @@ func Xsqlite3VectorErrorMsg(tls *libc.TLS, pParse uintptr, pExpr uintptr) { /* s if ((*Expr)(unsafe.Pointer(pExpr)).Fflags & U32(EP_xIsSelect)) != 0 { Xsqlite3SubselectError(tls, pParse, (*ExprList)(unsafe.Pointer((*Select)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pExpr + 20 /* &.x */)))).FpEList)).FnExpr, 1) } else { - Xsqlite3ErrorMsg(tls, pParse, ts+5548 /* "row value misuse..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+5558 /* "row value misuse..." */, 0) } } @@ -83093,7 +83687,7 @@ func Xsqlite3CodeRhsOfIN(tls *libc.TLS, pParse uintptr, pExpr uintptr, iTab int3 if ((*Expr)(unsafe.Pointer((pExpr))).Fflags & (U32(EP_Subrtn))) != U32(0) { addrOnce = Xsqlite3VdbeAddOp0(tls, v, OP_Once) if ((*Expr)(unsafe.Pointer((pExpr))).Fflags & (U32(EP_xIsSelect))) != U32(0) { - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+6820 /* "REUSE LIST SUBQU..." */, libc.VaList(bp, (*Select)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pExpr + 20 /* &.x */)))).FselId)) + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+6830 /* "REUSE LIST SUBQU..." */, libc.VaList(bp, (*Select)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pExpr + 20 /* &.x */)))).FselId)) } Xsqlite3VdbeAddOp2(tls, v, OP_Gosub, *(*int32)(unsafe.Pointer(pExpr + 44 /* &.y */ /* &.sub */ + 4 /* &.regReturn */)), *(*int32)(unsafe.Pointer(pExpr + 44 /* &.y */ /* &.sub */ /* &.iAddr */))) @@ -83129,11 +83723,11 @@ func Xsqlite3CodeRhsOfIN(tls *libc.TLS, pParse uintptr, pExpr uintptr, iTab int3 var pSelect uintptr = *(*uintptr)(unsafe.Pointer(pExpr + 20 /* &.x */)) var pEList uintptr = (*Select)(unsafe.Pointer(pSelect)).FpEList - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+6843 /* "%sLIST SUBQUERY ..." */, libc.VaList(bp+8, func() uintptr { + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+6853 /* "%sLIST SUBQUERY ..." */, libc.VaList(bp+8, func() uintptr { if addrOnce != 0 { - return ts + 755 /* "" */ + return ts + 765 /* "" */ } - return ts + 6862 /* "CORRELATED " */ + return ts + 6872 /* "CORRELATED " */ }(), (*Select)(unsafe.Pointer(pSelect)).FselId)) // If the LHS and RHS of the IN operator do not match, that // error will have been caught long before we reach this point. @@ -83279,7 +83873,7 @@ func Xsqlite3CodeSubselect(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { // If this routine has already been coded, then invoke it as a // subroutine. if ((*Expr)(unsafe.Pointer((pExpr))).Fflags & (U32(EP_Subrtn))) != U32(0) { - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+6874 /* "REUSE SUBQUERY %..." */, libc.VaList(bp, (*Select)(unsafe.Pointer(pSel)).FselId)) + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+6884 /* "REUSE SUBQUERY %..." */, libc.VaList(bp, (*Select)(unsafe.Pointer(pSel)).FselId)) Xsqlite3VdbeAddOp2(tls, v, OP_Gosub, *(*int32)(unsafe.Pointer(pExpr + 44 /* &.y */ /* &.sub */ + 4 /* &.regReturn */)), *(*int32)(unsafe.Pointer(pExpr + 44 /* &.y */ /* &.sub */ /* &.iAddr */))) return (*Expr)(unsafe.Pointer(pExpr)).FiTable @@ -83312,11 +83906,11 @@ func Xsqlite3CodeSubselect(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { // // In both cases, the query is augmented with "LIMIT 1". Any // preexisting limit is discarded in place of the new LIMIT 1. - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+6892 /* "%sSCALAR SUBQUER..." */, libc.VaList(bp+8, func() uintptr { + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+6902 /* "%sSCALAR SUBQUER..." */, libc.VaList(bp+8, func() uintptr { if addrOnce != 0 { - return ts + 755 /* "" */ + return ts + 765 /* "" */ } - return ts + 6862 /* "CORRELATED " */ + return ts + 6872 /* "CORRELATED " */ }(), (*Select)(unsafe.Pointer(pSel)).FselId)) if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_SELECT { nReg = (*ExprList)(unsafe.Pointer((*Select)(unsafe.Pointer(pSel)).FpEList)).FnExpr @@ -83340,7 +83934,7 @@ func Xsqlite3CodeSubselect(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { // The subquery already has a limit. If the pre-existing limit is X // then make the new limit X<>0 so that the new limit is either 1 or 0 var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb - pLimit = Xsqlite3Expr(tls, db, TK_INTEGER, ts+6506 /* "0" */) + pLimit = Xsqlite3Expr(tls, db, TK_INTEGER, ts+6516 /* "0" */) if pLimit != 0 { (*Expr)(unsafe.Pointer(pLimit)).FaffExpr = int8(SQLITE_AFF_NUMERIC) pLimit = Xsqlite3PExpr(tls, pParse, TK_NE, @@ -83350,7 +83944,7 @@ func Xsqlite3CodeSubselect(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { (*Expr)(unsafe.Pointer((*Select)(unsafe.Pointer(pSel)).FpLimit)).FpLeft = pLimit } else { // If there is no pre-existing limit add a limit of 1 - pLimit = Xsqlite3Expr(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, TK_INTEGER, ts+6913 /* "1" */) + pLimit = Xsqlite3Expr(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, TK_INTEGER, ts+6923 /* "1" */) (*Select)(unsafe.Pointer(pSel)).FpLimit = Xsqlite3PExpr(tls, pParse, TK_LIMIT, pLimit, uintptr(0)) } (*Select)(unsafe.Pointer(pSel)).FiLimit = 0 @@ -83842,12 +84436,12 @@ func codeInteger(tls *libc.TLS, pParse uintptr, pExpr uintptr, negFlag int32, iM c = Xsqlite3DecOrHexToI64(tls, z, bp+16 /* &value */) if (((c == 3) && !(negFlag != 0)) || (c == 2)) || ((negFlag != 0) && (*(*I64)(unsafe.Pointer(bp + 16 /* value */)) == ((int64(-1)) - (int64(0xffffffff) | (I64((int64(0x7fffffff))) << 32))))) { - if Xsqlite3_strnicmp(tls, z, ts+6915 /* "0x" */, 2) == 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+6918 /* "hex literal too ..." */, libc.VaList(bp, func() uintptr { + if Xsqlite3_strnicmp(tls, z, ts+6925 /* "0x" */, 2) == 0 { + Xsqlite3ErrorMsg(tls, pParse, ts+6928 /* "hex literal too ..." */, libc.VaList(bp, func() uintptr { if negFlag != 0 { - return ts + 4041 /* "-" */ + return ts + 4051 /* "-" */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), z)) } else { codeReal(tls, v, z, negFlag, iMem) @@ -83922,7 +84516,7 @@ func Xsqlite3ExprCodeGetColumnOfTable(tls *libc.TLS, v uintptr, pTab uintptr, iT } else if (int32((*Column)(unsafe.Pointer((libc.AssignUintptr(&pCol, ((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(iCol)*20))))).FcolFlags) & COLFLAG_VIRTUAL) != 0 { var pParse uintptr = Xsqlite3VdbeParser(tls, v) if (int32((*Column)(unsafe.Pointer(pCol)).FcolFlags) & COLFLAG_BUSY) != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+6944 /* "generated column..." */, libc.VaList(bp, (*Column)(unsafe.Pointer(pCol)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+6954 /* "generated column..." */, libc.VaList(bp, (*Column)(unsafe.Pointer(pCol)).FzName)) } else { var savedSelfTab int32 = (*Parse)(unsafe.Pointer(pParse)).FiSelfTab *(*U16)(unsafe.Pointer(pCol + 16 /* &.colFlags */)) |= U16((COLFLAG_BUSY)) @@ -84481,7 +85075,7 @@ __69: if !((int32((*Column)(unsafe.Pointer(pCol1)).FcolFlags) & COLFLAG_BUSY) != 0) { goto __72 } - Xsqlite3ErrorMsg(tls, pParse, ts+6944, /* "generated column..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+6954, /* "generated column..." */ libc.VaList(bp, (*Column)(unsafe.Pointer(pCol1)).FzName)) return 0 __72: @@ -84733,7 +85327,7 @@ __41: goto __87 } - Xsqlite3ErrorMsg(tls, pParse, ts+6974 /* "misuse of aggreg..." */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)))) + Xsqlite3ErrorMsg(tls, pParse, ts+6984 /* "misuse of aggreg..." */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)))) goto __88 __87: return (*AggInfo_func)(unsafe.Pointer((*AggInfo)(unsafe.Pointer(pInfo)).FaFunc + uintptr((*Expr)(unsafe.Pointer(pExpr)).FiAgg)*20)).FiMem @@ -84775,7 +85369,7 @@ __90: if !((pDef == uintptr(0)) || ((*FuncDef)(unsafe.Pointer(pDef)).FxFinalize != uintptr(0))) { goto __91 } - Xsqlite3ErrorMsg(tls, pParse, ts+7000 /* "unknown function..." */, libc.VaList(bp+16, zId)) + Xsqlite3ErrorMsg(tls, pParse, ts+7010 /* "unknown function..." */, libc.VaList(bp+16, zId)) goto __3 __91: ; @@ -84969,7 +85563,7 @@ __122: ((*Expr)(unsafe.Pointer(pExpr)).FiTable != (libc.AssignInt32(&n1, Xsqlite3ExprVectorSize(tls, (*Expr)(unsafe.Pointer(pExpr)).FpLeft))))) { goto __123 } - Xsqlite3ErrorMsg(tls, pParse, ts+6627, /* "%d columns assig..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+6637, /* "%d columns assig..." */ libc.VaList(bp+24, (*Expr)(unsafe.Pointer(pExpr)).FiTable, n1)) __123: ; @@ -85051,7 +85645,7 @@ __124: goto __3 __52: - Xsqlite3ErrorMsg(tls, pParse, ts+5548 /* "row value misuse..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+5558 /* "row value misuse..." */, 0) goto __3 // TK_IF_NULL_ROW Expr nodes are inserted ahead of expressions @@ -85175,7 +85769,7 @@ __55: goto __134 } Xsqlite3ErrorMsg(tls, pParse, - ts+7023 /* "RAISE() may only..." */, 0) + ts+7033 /* "RAISE() may only..." */, 0) return 0 __134: ; @@ -85214,7 +85808,7 @@ __3: return inReg } -var zAff = *(*[8]int8)(unsafe.Pointer(ts + 7073 /* "B\x00C\x00D\x00E" */)) /* sqlite3.c:105169:29 */ +var zAff = *(*[8]int8)(unsafe.Pointer(ts + 7083 /* "B\x00C\x00D\x00E" */)) /* sqlite3.c:105169:29 */ // Generate code that will evaluate expression pExpr just one time // per prepared statement execution. @@ -85498,7 +86092,9 @@ func exprCodeBetween(tls *libc.TLS, pParse uintptr, pExpr uintptr, dest int32, x (*Expr)(unsafe.Pointer(bp + 52 /* &compRight */)).FpRight = (*ExprList_item)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(pExpr + 20 /* &.x */)) + 8 /* &.a */) + 1*20)).FpExpr exprToRegister(tls, pDel, exprCodeVector(tls, pParse, pDel, bp+156 /* ®Free1 */)) if xJump != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, int32, int32))(unsafe.Pointer(&xJump)))(tls, pParse, bp+104 /* &exprAnd */, dest, jumpIfNull) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, int32) + })(unsafe.Pointer(&struct{ uintptr }{xJump})).f(tls, pParse, bp+104 /* &exprAnd */, dest, jumpIfNull) } else { // Mark the expression is being from the ON or USING clause of a join // so that the sqlite3ExprCodeTarget() routine will not attempt to move @@ -87051,11 +87647,11 @@ func isAlterableTable(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 { /* sq bp := tls.Alloc(8) defer tls.Free(8) - if ((0 == Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+7081 /* "sqlite_" */, 7)) || + if ((0 == Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+7091 /* "sqlite_" */, 7)) || (((*Table)(unsafe.Pointer(pTab)).FtabFlags & U32(TF_Eponymous)) != U32(0))) || ((((*Table)(unsafe.Pointer(pTab)).FtabFlags & U32(TF_Shadow)) != U32(0)) && (Xsqlite3ReadOnlyShadowTables(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb) != 0)) { - Xsqlite3ErrorMsg(tls, pParse, ts+7089 /* "table %s may not..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+7099 /* "table %s may not..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) return 1 } return 0 @@ -87073,14 +87669,14 @@ func renameTestSchema(tls *libc.TLS, pParse uintptr, zDb uintptr, bTemp int32, z (*Parse)(unsafe.Pointer(pParse)).FcolNamesSet = U8(1) Xsqlite3NestedParse(tls, pParse, - ts+7117, /* "SELECT 1 FROM \"%..." */ + ts+7127, /* "SELECT 1 FROM \"%..." */ libc.VaList(bp, zDb, zDb, bTemp, zWhen, bNoDQS)) if bTemp == 0 { Xsqlite3NestedParse(tls, pParse, - ts+7292, /* "SELECT 1 FROM te..." */ + ts+7302, /* "SELECT 1 FROM te..." */ libc.VaList(bp+40, zDb, zWhen, bNoDQS)) } } @@ -87096,11 +87692,11 @@ func renameFixQuotes(tls *libc.TLS, pParse uintptr, zDb uintptr, bTemp int32) { Xsqlite3NestedParse(tls, pParse, - ts+7466 /* "UPDATE \"%w\".sqli..." */, libc.VaList(bp, zDb, zDb)) + ts+7476 /* "UPDATE \"%w\".sqli..." */, libc.VaList(bp, zDb, zDb)) if bTemp == 0 { Xsqlite3NestedParse(tls, pParse, - ts+7613 /* "UPDATE temp.sqli..." */, 0) + ts+7623 /* "UPDATE temp.sqli..." */, 0) } } @@ -87174,7 +87770,7 @@ __3: goto __4 } Xsqlite3ErrorMsg(tls, pParse, - ts+7764 /* "there is already..." */, libc.VaList(bp, zName)) + ts+7774 /* "there is already..." */, libc.VaList(bp, zName)) goto exit_rename_table __4: ; @@ -87187,7 +87783,7 @@ __4: goto exit_rename_table __5: ; - if !(SQLITE_OK != Xsqlite3CheckObjectName(tls, pParse, zName, ts+7823 /* "table" */, zName)) { + if !(SQLITE_OK != Xsqlite3CheckObjectName(tls, pParse, zName, ts+7833 /* "table" */, zName)) { goto __6 } goto exit_rename_table @@ -87197,7 +87793,7 @@ __6: if !((*Table)(unsafe.Pointer(pTab)).FpSelect != 0) { goto __7 } - Xsqlite3ErrorMsg(tls, pParse, ts+7829 /* "view %s may not ..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+7839 /* "view %s may not ..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) goto exit_rename_table __7: ; @@ -87250,24 +87846,24 @@ __12: // the schema to use the new table name. Xsqlite3NestedParse(tls, pParse, - ts+7856 /* "UPDATE \"%w\".sqli..." */, libc.VaList(bp+16, zDb, zDb, zTabName, zName, (libc.Bool32(iDb == 1)), zTabName)) + ts+7866 /* "UPDATE \"%w\".sqli..." */, libc.VaList(bp+16, zDb, zDb, zTabName, zName, (libc.Bool32(iDb == 1)), zTabName)) // Update the tbl_name and name columns of the sqlite_schema table // as required. Xsqlite3NestedParse(tls, pParse, - ts+8040, /* "UPDATE %Q.sqlite..." */ + ts+8050, /* "UPDATE %Q.sqlite..." */ libc.VaList(bp+64, zDb, zName, zName, zName, nTabName, zTabName)) // If the sqlite_sequence table exists in this database, then update // it with the new table name. - if !(Xsqlite3FindTable(tls, db, ts+8345 /* "sqlite_sequence" */, zDb) != 0) { + if !(Xsqlite3FindTable(tls, db, ts+8355 /* "sqlite_sequence" */, zDb) != 0) { goto __13 } Xsqlite3NestedParse(tls, pParse, - ts+8361, /* "UPDATE \"%w\".sqli..." */ + ts+8371, /* "UPDATE \"%w\".sqli..." */ libc.VaList(bp+112, zDb, zName, (*Table)(unsafe.Pointer(pTab)).FzName)) __13: ; @@ -87280,7 +87876,7 @@ __13: } Xsqlite3NestedParse(tls, pParse, - ts+8419 /* "UPDATE sqlite_te..." */, libc.VaList(bp+136, zDb, zTabName, zName, zTabName, zDb, zName)) + ts+8429 /* "UPDATE sqlite_te..." */, libc.VaList(bp+136, zDb, zTabName, zName, zTabName, zDb, zName)) __14: ; @@ -87298,7 +87894,7 @@ __15: ; renameReloadSchema(tls, pParse, iDb, uint16(INITFLAG_AlterRename)) - renameTestSchema(tls, pParse, zDb, (libc.Bool32(iDb == 1)), ts+8684 /* "after rename" */, 0) + renameTestSchema(tls, pParse, zDb, (libc.Bool32(iDb == 1)), ts+8694 /* "after rename" */, 0) exit_rename_table: Xsqlite3SrcListDelete(tls, db, pSrc) @@ -87313,7 +87909,7 @@ func sqlite3ErrorIfNotEmpty(tls *libc.TLS, pParse uintptr, zDb uintptr, zTab uin defer tls.Free(24) Xsqlite3NestedParse(tls, pParse, - ts+8697, /* "SELECT raise(ABO..." */ + ts+8707, /* "SELECT raise(ABO..." */ libc.VaList(bp, zErr, zDb, zTab)) } @@ -87361,12 +87957,12 @@ func Xsqlite3AlterFinishAddColumn(tls *libc.TLS, pParse uintptr, pColDef uintptr // If there is a NOT NULL constraint, then the default value for the // column must not be NULL. if (int32((*Column)(unsafe.Pointer(pCol)).FcolFlags) & COLFLAG_PRIMKEY) != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+8735 /* "Cannot add a PRI..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+8745 /* "Cannot add a PRI..." */, 0) return } if (*Table)(unsafe.Pointer(pNew)).FpIndex != 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+8767 /* "Cannot add a UNI..." */, 0) + ts+8777 /* "Cannot add a UNI..." */, 0) return } if (int32((*Column)(unsafe.Pointer(pCol)).FcolFlags) & COLFLAG_GENERATED) == 0 { @@ -87379,11 +87975,11 @@ func Xsqlite3AlterFinishAddColumn(tls *libc.TLS, pParse uintptr, pColDef uintptr } if ((((*Sqlite3)(unsafe.Pointer(db)).Fflags & uint64(SQLITE_ForeignKeys)) != 0) && ((*Table)(unsafe.Pointer(pNew)).FpFKey != 0)) && (pDflt != 0) { sqlite3ErrorIfNotEmpty(tls, pParse, zDb, zTab, - ts+8794 /* "Cannot add a REF..." */) + ts+8804 /* "Cannot add a REF..." */) } if ((*Column)(unsafe.Pointer(pCol)).FnotNull != 0) && !(pDflt != 0) { sqlite3ErrorIfNotEmpty(tls, pParse, zDb, zTab, - ts+8853 /* "Cannot add a NOT..." */) + ts+8863 /* "Cannot add a NOT..." */) } // Ensure the default expression is something that sqlite3ValueFromExpr() @@ -87399,12 +87995,12 @@ func Xsqlite3AlterFinishAddColumn(tls *libc.TLS, pParse uintptr, pColDef uintptr } if !(*(*uintptr)(unsafe.Pointer(bp + 40 /* pVal */)) != 0) { sqlite3ErrorIfNotEmpty(tls, pParse, zDb, zTab, - ts+8906 /* "Cannot add a col..." */) + ts+8916 /* "Cannot add a col..." */) } Xsqlite3ValueFree(tls, *(*uintptr)(unsafe.Pointer(bp + 40 /* pVal */))) } } else if (int32((*Column)(unsafe.Pointer(pCol)).FcolFlags) & COLFLAG_STORED) != 0 { - sqlite3ErrorIfNotEmpty(tls, pParse, zDb, zTab, ts+8952 /* "cannot add a STO..." */) + sqlite3ErrorIfNotEmpty(tls, pParse, zDb, zTab, ts+8962 /* "cannot add a STO..." */) } // Modify the CREATE TABLE statement. @@ -87420,7 +88016,7 @@ func Xsqlite3AlterFinishAddColumn(tls *libc.TLS, pParse uintptr, pColDef uintptr // have to use printf() to translate between these units: Xsqlite3NestedParse(tls, pParse, - ts+8979, /* "UPDATE \"%w\".sqli..." */ + ts+8989, /* "UPDATE \"%w\".sqli..." */ libc.VaList(bp, zDb, (*Table)(unsafe.Pointer(pNew)).FaddColOffset, zCol, (*Table)(unsafe.Pointer(pNew)).FaddColOffset, zTab)) Xsqlite3DbFree(tls, db, zCol) @@ -87491,7 +88087,7 @@ __2: if !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) { goto __3 } - Xsqlite3ErrorMsg(tls, pParse, ts+9125 /* "virtual tables m..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+9135 /* "virtual tables m..." */, 0) goto exit_begin_add_column __3: ; @@ -87500,7 +88096,7 @@ __3: if !((*Table)(unsafe.Pointer(pTab)).FpSelect != 0) { goto __4 } - Xsqlite3ErrorMsg(tls, pParse, ts+9159 /* "Cannot add a col..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+9169 /* "Cannot add a col..." */, 0) goto exit_begin_add_column __4: ; @@ -87535,7 +88131,7 @@ __6: nAlloc = ((((int32((*Table)(unsafe.Pointer(pNew)).FnCol) - 1) / 8) * 8) + 8) (*Table)(unsafe.Pointer(pNew)).FaCol = Xsqlite3DbMallocZero(tls, db, (uint64(uint32(unsafe.Sizeof(Column{})) * uint32(nAlloc)))) - (*Table)(unsafe.Pointer(pNew)).FzName = Xsqlite3MPrintf(tls, db, ts+9189 /* "sqlite_altertab_..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + (*Table)(unsafe.Pointer(pNew)).FzName = Xsqlite3MPrintf(tls, db, ts+9199 /* "sqlite_altertab_..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) if !(!(int32((*Table)(unsafe.Pointer(pNew)).FaCol) != 0) || !(int32((*Table)(unsafe.Pointer(pNew)).FzName) != 0)) { goto __7 } @@ -87582,18 +88178,18 @@ func isRealTable(tls *libc.TLS, pParse uintptr, pTab uintptr, bDrop int32) int32 var zType uintptr = uintptr(0) if (*Table)(unsafe.Pointer(pTab)).FpSelect != 0 { - zType = ts + 9208 /* "view" */ + zType = ts + 9218 /* "view" */ } if (*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0 { - zType = ts + 9213 /* "virtual table" */ + zType = ts + 9223 /* "virtual table" */ } if zType != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+9227, /* "cannot %s %s \"%s..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+9237, /* "cannot %s %s \"%s..." */ libc.VaList(bp, func() uintptr { if bDrop != 0 { - return ts + 9245 /* "drop column from" */ + return ts + 9255 /* "drop column from" */ } - return ts + 9262 /* "rename columns o..." */ + return ts + 9272 /* "rename columns o..." */ }(), zType, (*Table)(unsafe.Pointer(pTab)).FzName)) return 1 @@ -87686,13 +88282,13 @@ __8: if !(iCol == int32((*Table)(unsafe.Pointer(pTab)).FnCol)) { goto __10 } - Xsqlite3ErrorMsg(tls, pParse, ts+5383 /* "no such column: ..." */, libc.VaList(bp, zOld)) + Xsqlite3ErrorMsg(tls, pParse, ts+5393 /* "no such column: ..." */, libc.VaList(bp, zOld)) goto exit_rename_column __10: ; // Ensure the schema contains no double-quoted strings - renameTestSchema(tls, pParse, zDb, (libc.Bool32(iSchema == 1)), ts+755 /* "" */, 0) + renameTestSchema(tls, pParse, zDb, (libc.Bool32(iSchema == 1)), ts+765 /* "" */, 0) renameFixQuotes(tls, pParse, zDb, (libc.Bool32(iSchema == 1))) // Do the rename operation using a recursive UPDATE statement that @@ -87710,19 +88306,19 @@ __11: bQuote = (int32(Xsqlite3CtypeMap[uint8(*(*int8)(unsafe.Pointer((*Token)(unsafe.Pointer(pNew)).Fz)))]) & 0x80) Xsqlite3NestedParse(tls, pParse, - ts+9280, /* "UPDATE \"%w\".sqli..." */ + ts+9290, /* "UPDATE \"%w\".sqli..." */ libc.VaList(bp+8, zDb, zDb, (*Table)(unsafe.Pointer(pTab)).FzName, iCol, zNew, bQuote, (libc.Bool32(iSchema == 1)), (*Table)(unsafe.Pointer(pTab)).FzName)) Xsqlite3NestedParse(tls, pParse, - ts+9498, /* "UPDATE temp.sqli..." */ + ts+9508, /* "UPDATE temp.sqli..." */ libc.VaList(bp+72, zDb, (*Table)(unsafe.Pointer(pTab)).FzName, iCol, zNew, bQuote)) // Drop and reload the database schema. renameReloadSchema(tls, pParse, iSchema, uint16(INITFLAG_AlterRename)) - renameTestSchema(tls, pParse, zDb, (libc.Bool32(iSchema == 1)), ts+8684 /* "after rename" */, 1) + renameTestSchema(tls, pParse, zDb, (libc.Bool32(iSchema == 1)), ts+8694 /* "after rename" */, 1) exit_rename_column: Xsqlite3SrcListDelete(tls, db, pSrc) @@ -88017,12 +88613,12 @@ func renameColumnParseError(tls *libc.TLS, pCtx uintptr, zWhen uintptr, pType ui var zN uintptr = Xsqlite3_value_text(tls, pObject) var zErr uintptr - zErr = Xsqlite3_mprintf(tls, ts+9629, /* "error in %s %s%s..." */ + zErr = Xsqlite3_mprintf(tls, ts+9639, /* "error in %s %s%s..." */ libc.VaList(bp, zT, zN, func() uintptr { if *(*int8)(unsafe.Pointer(zWhen)) != 0 { - return ts + 9652 /* " " */ + return ts + 9662 /* " " */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), zWhen, (*Parse)(unsafe.Pointer(pParse)).FzErrMsg)) Xsqlite3_result_error(tls, pCtx, zErr, -1) @@ -88131,7 +88727,7 @@ func renameEditSql(tls *libc.TLS, pCtx uintptr, pRename uintptr, zSql uintptr, z // ALTER TABLE statement was quoted (bQuote==1), then set zNew to // point to zQuot so that all substitutions are made using the // quoted version of the new column name. - zQuot = Xsqlite3MPrintf(tls, db, ts+9654 /* "\"%w\" " */, libc.VaList(bp, zNew)) + zQuot = Xsqlite3MPrintf(tls, db, ts+9664 /* "\"%w\" " */, libc.VaList(bp, zNew)) if zQuot == uintptr(0) { return SQLITE_NOMEM } else { @@ -88181,12 +88777,12 @@ func renameEditSql(tls *libc.TLS, pCtx uintptr, pRename uintptr, zSql uintptr, z libc.Xmemcpy(tls, zBuf1, (*RenameToken)(unsafe.Pointer(pBest)).Ft.Fz, (*RenameToken)(unsafe.Pointer(pBest)).Ft.Fn) *(*int8)(unsafe.Pointer(zBuf1 + uintptr((*RenameToken)(unsafe.Pointer(pBest)).Ft.Fn))) = int8(0) Xsqlite3Dequote(tls, zBuf1) - Xsqlite3_snprintf(tls, (int32(nSql * int64(2))), zBuf2, ts+9660 /* "%Q%s" */, libc.VaList(bp+8, zBuf1, + Xsqlite3_snprintf(tls, (int32(nSql * int64(2))), zBuf2, ts+9670 /* "%Q%s" */, libc.VaList(bp+8, zBuf1, func() uintptr { if int32(*(*int8)(unsafe.Pointer((*RenameToken)(unsafe.Pointer(pBest)).Ft.Fz + uintptr((*RenameToken)(unsafe.Pointer(pBest)).Ft.Fn)))) == '\'' { - return ts + 9652 /* " " */ + return ts + 9662 /* " " */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }())) zReplace = zBuf2 nReplace = U32(Xsqlite3Strlen30(tls, zReplace)) @@ -88691,7 +89287,7 @@ renameColumnFunc_done: if !((*Parse)(unsafe.Pointer(bp+20 /* &sParse */)).FzErrMsg != 0) { goto __44 } - renameColumnParseError(tls, context, ts+755 /* "" */, *(*uintptr)(unsafe.Pointer(argv + 1*4)), *(*uintptr)(unsafe.Pointer(argv + 2*4)), bp+20 /* &sParse */) + renameColumnParseError(tls, context, ts+765 /* "" */, *(*uintptr)(unsafe.Pointer(argv + 1*4)), *(*uintptr)(unsafe.Pointer(argv + 2*4)), bp+20 /* &sParse */) goto __45 __44: Xsqlite3_result_error_code(tls, context, rc) @@ -88871,7 +89467,7 @@ func renameTableFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr } if rc != SQLITE_OK { if (*Parse)(unsafe.Pointer(bp+48 /* &sParse */)).FzErrMsg != 0 { - renameColumnParseError(tls, context, ts+755 /* "" */, *(*uintptr)(unsafe.Pointer(argv + 1*4)), *(*uintptr)(unsafe.Pointer(argv + 2*4)), bp+48 /* &sParse */) + renameColumnParseError(tls, context, ts+765 /* "" */, *(*uintptr)(unsafe.Pointer(argv + 1*4)), *(*uintptr)(unsafe.Pointer(argv + 2*4)), bp+48 /* &sParse */) } else { Xsqlite3_result_error_code(tls, context, rc) } @@ -89153,7 +89749,7 @@ __6: __4: ; - zNew = Xsqlite3MPrintf(tls, db, ts+9665 /* "%.*s%s" */, libc.VaList(bp, ((int32((*RenameToken)(unsafe.Pointer(pCol)).Ft.Fz)-int32(zSql))/1), zSql, zEnd)) + zNew = Xsqlite3MPrintf(tls, db, ts+9675 /* "%.*s%s" */, libc.VaList(bp, ((int32((*RenameToken)(unsafe.Pointer(pCol)).Ft.Fz)-int32(zSql))/1), zSql, zEnd)) Xsqlite3_result_text(tls, context, zNew, -1, libc.UintptrFromInt32(-1)) Xsqlite3_free(tls, zNew) @@ -89241,7 +89837,7 @@ __5: if !(iCol < 0) { goto __6 } - Xsqlite3ErrorMsg(tls, pParse, ts+5383 /* "no such column: ..." */, libc.VaList(bp, zCol)) + Xsqlite3ErrorMsg(tls, pParse, ts+5393 /* "no such column: ..." */, libc.VaList(bp, zCol)) goto exit_drop_column __6: ; @@ -89251,12 +89847,12 @@ __6: if !((int32((*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(iCol)*20)).FcolFlags) & (COLFLAG_PRIMKEY | COLFLAG_UNIQUE)) != 0) { goto __7 } - Xsqlite3ErrorMsg(tls, pParse, ts+9672, /* "cannot drop %s c..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+9682, /* "cannot drop %s c..." */ libc.VaList(bp+8, func() uintptr { if (int32((*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(iCol)*20)).FcolFlags) & COLFLAG_PRIMKEY) != 0 { - return ts + 9700 /* "PRIMARY KEY" */ + return ts + 9710 /* "PRIMARY KEY" */ } - return ts + 5204 /* "UNIQUE" */ + return ts + 5214 /* "UNIQUE" */ }(), zCol)) goto exit_drop_column @@ -89267,7 +89863,7 @@ __7: if !(int32((*Table)(unsafe.Pointer(pTab)).FnCol) <= 1) { goto __8 } - Xsqlite3ErrorMsg(tls, pParse, ts+9712 /* "cannot drop colu..." */, libc.VaList(bp+24, zCol)) + Xsqlite3ErrorMsg(tls, pParse, ts+9722 /* "cannot drop colu..." */, libc.VaList(bp+24, zCol)) goto exit_drop_column __8: ; @@ -89276,15 +89872,15 @@ __8: iDb = Xsqlite3SchemaToIndex(tls, db, (*Table)(unsafe.Pointer(pTab)).FpSchema) zDb = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16)).FzDbSName - renameTestSchema(tls, pParse, zDb, (libc.Bool32(iDb == 1)), ts+755 /* "" */, 0) + renameTestSchema(tls, pParse, zDb, (libc.Bool32(iDb == 1)), ts+765 /* "" */, 0) renameFixQuotes(tls, pParse, zDb, (libc.Bool32(iDb == 1))) Xsqlite3NestedParse(tls, pParse, - ts+9760 /* "UPDATE \"%w\".sqli..." */, libc.VaList(bp+32, zDb, iDb, iCol, (*Table)(unsafe.Pointer(pTab)).FzName)) + ts+9770 /* "UPDATE \"%w\".sqli..." */, libc.VaList(bp+32, zDb, iDb, iCol, (*Table)(unsafe.Pointer(pTab)).FzName)) // Drop and reload the database schema. renameReloadSchema(tls, pParse, iDb, uint16(INITFLAG_AlterDrop)) - renameTestSchema(tls, pParse, zDb, (libc.Bool32(iDb == 1)), ts+9881 /* "after drop colum..." */, 1) + renameTestSchema(tls, pParse, zDb, (libc.Bool32(iDb == 1)), ts+9891 /* "after drop colum..." */, 1) // Edit rows of table on disk if !(((*Parse)(unsafe.Pointer(pParse)).FnErr == 0) && ((int32((*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(iCol)*20)).FcolFlags) & COLFLAG_VIRTUAL) == 0)) { @@ -89395,11 +89991,11 @@ func Xsqlite3AlterFunctions(tls *libc.TLS) { /* sqlite3.c:109584:21: */ } var aAlterTableFuncs = [5]FuncDef{ - {FnArg: int8(9), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9899 /* "sqlite_rename_co..." */}, - {FnArg: int8(7), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9920 /* "sqlite_rename_ta..." */}, - {FnArg: int8(7), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9940 /* "sqlite_rename_te..." */}, - {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9959 /* "sqlite_drop_colu..." */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9978 /* "sqlite_rename_qu..." */}} /* sqlite3.c:109585:18 */ + {FnArg: int8(9), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9909 /* "sqlite_rename_co..." */}, + {FnArg: int8(7), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9930 /* "sqlite_rename_ta..." */}, + {FnArg: int8(7), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9950 /* "sqlite_rename_te..." */}, + {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9969 /* "sqlite_drop_colu..." */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9988 /* "sqlite_rename_qu..." */}} /* sqlite3.c:109585:18 */ //************* End of alter.c ********************************************** //************* Begin file analyze.c **************************************** @@ -89596,7 +90192,7 @@ func openStatTable(tls *libc.TLS, pParse uintptr, iDb int32, iStatCur int32, zWh // of the new table in register pParse->regRoot. This is important // because the OpenWrite opcode below will be needing it. Xsqlite3NestedParse(tls, pParse, - ts+10001 /* "CREATE TABLE %Q...." */, libc.VaList(bp, (*Db)(unsafe.Pointer(pDb)).FzDbSName, zTab, aTable[i].FzCols)) + ts+10011 /* "CREATE TABLE %Q...." */, libc.VaList(bp, (*Db)(unsafe.Pointer(pDb)).FzDbSName, zTab, aTable[i].FzCols)) *(*U32)(unsafe.Pointer(bp + 76 /* &aRoot[0] */ + uintptr(i)*4)) = U32((*Parse)(unsafe.Pointer(pParse)).FregRoot) *(*U8)(unsafe.Pointer(bp + 72 /* &aCreateTbl[0] */ + uintptr(i))) = U8(OPFLAG_P2ISREG) } @@ -89608,10 +90204,10 @@ func openStatTable(tls *libc.TLS, pParse uintptr, iDb int32, iStatCur int32, zWh Xsqlite3TableLock(tls, pParse, iDb, *(*U32)(unsafe.Pointer(bp + 76 /* &aRoot[0] */ + uintptr(i)*4)), uint8(1), zTab) if zWhere != 0 { Xsqlite3NestedParse(tls, pParse, - ts+10024, /* "DELETE FROM %Q.%..." */ + ts+10034, /* "DELETE FROM %Q.%..." */ libc.VaList(bp+24, (*Db)(unsafe.Pointer(pDb)).FzDbSName, zTab, zWhereType, zWhere)) } else if (*Sqlite3)(unsafe.Pointer(db)).FxPreUpdateCallback != 0 { - Xsqlite3NestedParse(tls, pParse, ts+10054 /* "DELETE FROM %Q.%..." */, libc.VaList(bp+56, (*Db)(unsafe.Pointer(pDb)).FzDbSName, zTab)) + Xsqlite3NestedParse(tls, pParse, ts+10064 /* "DELETE FROM %Q.%..." */, libc.VaList(bp+56, (*Db)(unsafe.Pointer(pDb)).FzDbSName, zTab)) } else { // The sqlite_stat[134] table already exists. Delete all rows. Xsqlite3VdbeAddOp2(tls, v, OP_Clear, int32(*(*U32)(unsafe.Pointer(bp + 76 /* &aRoot[0] */ + uintptr(i)*4))), iDb) @@ -89632,9 +90228,9 @@ var aTable = [3]struct { FzName uintptr FzCols uintptr }{ - {FzName: ts + 10072 /* "sqlite_stat1" */, FzCols: ts + 10085 /* "tbl,idx,stat" */}, - {FzName: ts + 10098 /* "sqlite_stat4" */, FzCols: ts + 10111 /* "tbl,idx,neq,nlt,..." */}, - {FzName: ts + 10139 /* "sqlite_stat3" */}, + {FzName: ts + 10082 /* "sqlite_stat1" */, FzCols: ts + 10095 /* "tbl,idx,stat" */}, + {FzName: ts + 10108 /* "sqlite_stat4" */, FzCols: ts + 10121 /* "tbl,idx,neq,nlt,..." */}, + {FzName: ts + 10149 /* "sqlite_stat3" */}, } /* sqlite3.c:109773:5 */ // Recommended number of samples for sqlite_stat4 @@ -89643,24 +90239,24 @@ var aTable = [3]struct { // share an instance of the following structure to hold their state // information. type StatAccum1 = struct { - Fdb uintptr - FnEst TRowcnt - FnRow TRowcnt - FnLimit int32 - FnCol int32 - FnKeyCol int32 - FnSkipAhead U8 - _ [3]byte - Fcurrent StatSample - FnPSample TRowcnt - FmxSample int32 - FiPrn U32 - FaBest uintptr - FiMin int32 - FnSample int32 - FnMaxEqZero int32 - FiGet int32 - Fa uintptr + Fdb uintptr + FnEst TRowcnt + FnRow TRowcnt + FnLimit int32 + FnCol int32 + FnKeyCol int32 + FnSkipAhead U8 + F__ccgo_pad1 [3]byte + Fcurrent StatSample + FnPSample TRowcnt + FmxSample int32 + FiPrn U32 + FaBest uintptr + FiMin int32 + FnSample int32 + FnMaxEqZero int32 + FiGet int32 + Fa uintptr } /* sqlite3.c:109861:9 */ // Recommended number of samples for sqlite_stat4 @@ -89670,15 +90266,15 @@ type StatAccum1 = struct { // information. type StatAccum = StatAccum1 /* sqlite3.c:109861:26 */ type StatSample1 = struct { - FanEq uintptr - FanDLt uintptr - FanLt uintptr - Fu struct{ FiRowid I64 } - FnRowid U32 - FisPSample U8 - _ [3]byte - FiCol int32 - FiHash U32 + FanEq uintptr + FanDLt uintptr + FanLt uintptr + Fu struct{ FiRowid I64 } + FnRowid U32 + FisPSample U8 + F__ccgo_pad1 [3]byte + FiCol int32 + FiHash U32 } /* sqlite3.c:109861:9 */ type StatSample = StatSample1 /* sqlite3.c:109862:27 */ @@ -89864,7 +90460,7 @@ var statInitFuncdef = FuncDef{ FnArg: int8(4), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 10152 /* "stat_init" */} /* sqlite3.c:110084:22 */ + FzName: ts + 10162 /* "stat_init" */} /* sqlite3.c:110084:22 */ // pNew and pOld are both candidate non-periodic samples selected for // the same column (pNew->iCol==pOld->iCol). Ignoring this column and @@ -90182,7 +90778,7 @@ var statPushFuncdef = FuncDef{ FnArg: (int8(2 + IsStat4)), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 10162 /* "stat_push" */} /* sqlite3.c:110374:22 */ + FzName: ts + 10172 /* "stat_push" */} /* sqlite3.c:110374:22 */ // Implementation of the stat_get(P,J) SQL function. This routine is // used to query statistical information that has been gathered into @@ -90239,7 +90835,7 @@ func statGet(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli return } - Xsqlite3_snprintf(tls, 24, zRet, ts+10172, /* "%llu" */ + Xsqlite3_snprintf(tls, 24, zRet, ts+10182, /* "%llu" */ libc.VaList(bp, func() uint64 { if (*StatAccum)(unsafe.Pointer(p)).FnSkipAhead != 0 { return U64((*StatAccum)(unsafe.Pointer(p)).FnEst) @@ -90250,7 +90846,7 @@ func statGet(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli for i = 0; i < (*StatAccum)(unsafe.Pointer(p)).FnKeyCol; i++ { var nDistinct U64 = (U64(*(*TRowcnt)(unsafe.Pointer((*StatAccum)(unsafe.Pointer(p)).Fcurrent.FanDLt + uintptr(i)*4)) + TRowcnt(1))) var iVal U64 = (((U64((*StatAccum)(unsafe.Pointer(p)).FnRow) + nDistinct) - uint64(1)) / nDistinct) - Xsqlite3_snprintf(tls, 24, z, ts+10177 /* " %llu" */, libc.VaList(bp+8, iVal)) + Xsqlite3_snprintf(tls, 24, z, ts+10187 /* " %llu" */, libc.VaList(bp+8, iVal)) z += uintptr(Xsqlite3Strlen30(tls, z)) } @@ -90299,7 +90895,7 @@ func statGet(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli var i int32 var z uintptr = zRet for i = 0; i < (*StatAccum)(unsafe.Pointer(p)).FnCol; i++ { - Xsqlite3_snprintf(tls, 24, z, ts+10183 /* "%llu " */, libc.VaList(bp+16, U64(*(*TRowcnt)(unsafe.Pointer(aCnt + uintptr(i)*4))))) + Xsqlite3_snprintf(tls, 24, z, ts+10193 /* "%llu " */, libc.VaList(bp+16, U64(*(*TRowcnt)(unsafe.Pointer(aCnt + uintptr(i)*4))))) z += uintptr(Xsqlite3Strlen30(tls, z)) } @@ -90316,7 +90912,7 @@ var statGetFuncdef = FuncDef{ FnArg: (int8(1 + IsStat4)), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 10189 /* "stat_get" */} /* sqlite3.c:110526:22 */ + FzName: ts + 10199 /* "stat_get" */} /* sqlite3.c:110526:22 */ func callStatGet(tls *libc.TLS, pParse uintptr, regStat int32, iParam int32, regOut int32) { /* sqlite3.c:110538:13: */ Xsqlite3VdbeAddOp2(tls, (*Parse)(unsafe.Pointer(pParse)).FpVdbe, OP_Integer, iParam, (regStat + 1)) @@ -90363,7 +90959,7 @@ func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintp // Do not gather statistics on views or virtual tables return } - if Xsqlite3_strlike(tls, ts+10198 /* "sqlite\\_%" */, (*Table)(unsafe.Pointer(pTab)).FzName, uint32('\\')) == 0 { + if Xsqlite3_strlike(tls, ts+10208 /* "sqlite\\_%" */, (*Table)(unsafe.Pointer(pTab)).FzName, uint32('\\')) == 0 { // Do not gather statistics on system tables return } @@ -90381,7 +90977,7 @@ func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintp return } (*Table)(unsafe.Pointer(pStat1)).FzName = (pStat1 + 1*76) - libc.Xmemcpy(tls, (*Table)(unsafe.Pointer(pStat1)).FzName, ts+10072 /* "sqlite_stat1" */, uint32(13)) + libc.Xmemcpy(tls, (*Table)(unsafe.Pointer(pStat1)).FzName, ts+10082 /* "sqlite_stat1" */, uint32(13)) (*Table)(unsafe.Pointer(pStat1)).FnCol = int16(3) (*Table)(unsafe.Pointer(pStat1)).FiPKey = int16(-1) Xsqlite3VdbeAddOp4(tls, (*Parse)(unsafe.Pointer(pParse)).FpVdbe, OP_Noop, 0, 0, 0, pStat1, -17) @@ -90614,7 +91210,7 @@ func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintp // Add the entry to the stat1 table. callStatGet(tls, pParse, regStat, STAT_GET_STAT1, regStat1) - Xsqlite3VdbeAddOp4(tls, v, OP_MakeRecord, regTabname, 3, regTemp, ts+10208 /* "BBB" */, 0) + Xsqlite3VdbeAddOp4(tls, v, OP_MakeRecord, regTabname, 3, regTemp, ts+10218 /* "BBB" */, 0) Xsqlite3VdbeAddOp2(tls, v, OP_NewRowid, iStatCur, regNewRowid) Xsqlite3VdbeAddOp3(tls, v, OP_Insert, iStatCur, regTemp, regNewRowid) Xsqlite3VdbeChangeP4(tls, v, -1, pStat1, -6) @@ -90676,7 +91272,7 @@ func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintp jZeroRows = Xsqlite3VdbeAddOp1(tls, v, OP_IfNot, regStat1) Xsqlite3VdbeAddOp2(tls, v, OP_Null, 0, regIdxname) - Xsqlite3VdbeAddOp4(tls, v, OP_MakeRecord, regTabname, 3, regTemp, ts+10208 /* "BBB" */, 0) + Xsqlite3VdbeAddOp4(tls, v, OP_MakeRecord, regTabname, 3, regTemp, ts+10218 /* "BBB" */, 0) Xsqlite3VdbeAddOp2(tls, v, OP_NewRowid, iStatCur, regNewRowid) Xsqlite3VdbeAddOp3(tls, v, OP_Insert, iStatCur, regTemp, regNewRowid) Xsqlite3VdbeChangeP5(tls, v, uint16(OPFLAG_APPEND)) @@ -90729,9 +91325,9 @@ func analyzeTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintptr) iStatCur = (*Parse)(unsafe.Pointer(pParse)).FnTab *(*int32)(unsafe.Pointer(pParse + 40 /* &.nTab */)) += (3) if pOnlyIdx != 0 { - openStatTable(tls, pParse, iDb, iStatCur, (*Index)(unsafe.Pointer(pOnlyIdx)).FzName, ts+10212 /* "idx" */) + openStatTable(tls, pParse, iDb, iStatCur, (*Index)(unsafe.Pointer(pOnlyIdx)).FzName, ts+10222 /* "idx" */) } else { - openStatTable(tls, pParse, iDb, iStatCur, (*Table)(unsafe.Pointer(pTab)).FzName, ts+10216 /* "tbl" */) + openStatTable(tls, pParse, iDb, iStatCur, (*Table)(unsafe.Pointer(pTab)).FzName, ts+10226 /* "tbl" */) } analyzeOneTable(tls, pParse, pTab, pOnlyIdx, iStatCur, ((*Parse)(unsafe.Pointer(pParse)).FnMem + 1), (*Parse)(unsafe.Pointer(pParse)).FnTab) loadAnalysis(tls, pParse, iDb) @@ -90826,7 +91422,7 @@ func decodeIntArray(tls *libc.TLS, zIntArray uintptr, nOut int32, aOut uintptr, var v TRowcnt if z == uintptr(0) { - z = ts + 755 /* "" */ + z = ts + 765 /* "" */ } for i = 0; (*(*int8)(unsafe.Pointer(z)) != 0) && (i < nOut); i++ { v = TRowcnt(0) @@ -90848,15 +91444,15 @@ func decodeIntArray(tls *libc.TLS, zIntArray uintptr, nOut int32, aOut uintptr, libc.SetBitFieldPtr16Uint32(pIndex+56 /* &.bUnordered */, uint32(0), 2, 0x4) libc.SetBitFieldPtr16Uint32(pIndex+56 /* &.noSkipScan */, uint32(0), 6, 0x40) for *(*int8)(unsafe.Pointer(z)) != 0 { - if Xsqlite3_strglob(tls, ts+10220 /* "unordered*" */, z) == 0 { + if Xsqlite3_strglob(tls, ts+10230 /* "unordered*" */, z) == 0 { libc.SetBitFieldPtr16Uint32(pIndex+56 /* &.bUnordered */, uint32(1), 2, 0x4) - } else if Xsqlite3_strglob(tls, ts+10231 /* "sz=[0-9]*" */, z) == 0 { + } else if Xsqlite3_strglob(tls, ts+10241 /* "sz=[0-9]*" */, z) == 0 { var sz int32 = Xsqlite3Atoi(tls, (z + uintptr(3))) if sz < 2 { sz = 2 } (*Index)(unsafe.Pointer(pIndex)).FszIdxRow = Xsqlite3LogEst(tls, uint64(sz)) - } else if Xsqlite3_strglob(tls, ts+10241 /* "noskipscan*" */, z) == 0 { + } else if Xsqlite3_strglob(tls, ts+10251 /* "noskipscan*" */, z) == 0 { libc.SetBitFieldPtr16Uint32(pIndex+56 /* &.noSkipScan */, uint32(1), 6, 0x40) } for (int32(*(*int8)(unsafe.Pointer(z))) != 0) && (int32(*(*int8)(unsafe.Pointer(z))) != ' ') { @@ -91175,10 +91771,10 @@ func loadStatTbl(tls *libc.TLS, db uintptr, zSql1 uintptr, zSql2 uintptr, zDb ui func loadStat4(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:111438:12: */ var rc int32 = SQLITE_OK // Result codes from subroutines - if Xsqlite3FindTable(tls, db, ts+10098 /* "sqlite_stat4" */, zDb) != 0 { + if Xsqlite3FindTable(tls, db, ts+10108 /* "sqlite_stat4" */, zDb) != 0 { rc = loadStatTbl(tls, db, - ts+10253, /* "SELECT idx,count..." */ - ts+10307, /* "SELECT idx,neq,n..." */ + ts+10263, /* "SELECT idx,count..." */ + ts+10317, /* "SELECT idx,neq,n..." */ zDb) } return rc @@ -91229,9 +91825,9 @@ func Xsqlite3AnalysisLoad(tls *libc.TLS, db uintptr, iDb int32) int32 { /* sqlit // Load new statistics out of the sqlite_stat1 table (*AnalysisInfo)(unsafe.Pointer(bp + 8 /* &sInfo */)).Fdb = db (*AnalysisInfo)(unsafe.Pointer(bp + 8 /* &sInfo */)).FzDatabase = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16)).FzDbSName - if Xsqlite3FindTable(tls, db, ts+10072 /* "sqlite_stat1" */, (*AnalysisInfo)(unsafe.Pointer(bp+8 /* &sInfo */)).FzDatabase) != uintptr(0) { + if Xsqlite3FindTable(tls, db, ts+10082 /* "sqlite_stat1" */, (*AnalysisInfo)(unsafe.Pointer(bp+8 /* &sInfo */)).FzDatabase) != uintptr(0) { zSql = Xsqlite3MPrintf(tls, db, - ts+10359 /* "SELECT tbl,idx,s..." */, libc.VaList(bp, (*AnalysisInfo)(unsafe.Pointer(bp+8 /* &sInfo */)).FzDatabase)) + ts+10369 /* "SELECT tbl,idx,s..." */, libc.VaList(bp, (*AnalysisInfo)(unsafe.Pointer(bp+8 /* &sInfo */)).FzDatabase)) if zSql == uintptr(0) { rc = SQLITE_NOMEM } else { @@ -91323,7 +91919,7 @@ func resolveAttachExpr(tls *libc.TLS, pName uintptr, pExpr uintptr) int32 { /* s // database iDb attached to handle db. func Xsqlite3DbIsNamed(tls *libc.TLS, db uintptr, iDb int32, zName uintptr) int32 { /* sqlite3.c:111595:20: */ return (libc.Bool32((Xsqlite3StrICmp(tls, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, zName) == 0) || - ((iDb == 0) && (Xsqlite3StrICmp(tls, ts+5458 /* "main" */, zName) == 0)))) + ((iDb == 0) && (Xsqlite3StrICmp(tls, ts+5468 /* "main" */, zName) == 0)))) } // An SQL user-function registered to do the work of an ATTACH statement. The @@ -91374,13 +91970,13 @@ func attachFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { / if !(zFile == uintptr(0)) { goto __1 } - zFile = ts + 755 /* "" */ + zFile = ts + 765 /* "" */ __1: ; if !(zName == uintptr(0)) { goto __2 } - zName = ts + 755 /* "" */ + zName = ts + 765 /* "" */ __2: ; @@ -91390,7 +91986,7 @@ __2: // This is not a real ATTACH. Instead, this routine is being called // from sqlite3_deserialize() to close database db->init.iDb and // reopen it as a MemDB - *(*uintptr)(unsafe.Pointer(bp + 28 /* pVfs */)) = Xsqlite3_vfs_find(tls, ts+2962 /* "memdb" */) + *(*uintptr)(unsafe.Pointer(bp + 28 /* pVfs */)) = Xsqlite3_vfs_find(tls, ts+2972 /* "memdb" */) if !(*(*uintptr)(unsafe.Pointer(bp + 28 /* pVfs */)) == uintptr(0)) { goto __5 } @@ -91406,7 +92002,7 @@ __6: ; (*Db)(unsafe.Pointer(pNew)).FpBt = uintptr(0) (*Db)(unsafe.Pointer(pNew)).FpSchema = uintptr(0) - rc = Xsqlite3BtreeOpen(tls, *(*uintptr)(unsafe.Pointer(bp + 28 /* pVfs */)), ts+10400 /* "x\x00" */, db, (pNew + 4 /* &.pBt */), 0, SQLITE_OPEN_MAIN_DB) + rc = Xsqlite3BtreeOpen(tls, *(*uintptr)(unsafe.Pointer(bp + 28 /* pVfs */)), ts+10410 /* "x\x00" */, db, (pNew + 4 /* &.pBt */), 0, SQLITE_OPEN_MAIN_DB) goto __4 __3: // This is a real ATTACH @@ -91419,7 +92015,7 @@ __3: if !((*Sqlite3)(unsafe.Pointer(db)).FnDb >= (*(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 7*4)) + 2)) { goto __7 } - *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+10403, /* "too many attache..." */ + *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+10413, /* "too many attache..." */ libc.VaList(bp, *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 7*4)))) goto attach_error __7: @@ -91433,7 +92029,7 @@ __8: if !(Xsqlite3DbIsNamed(tls, db, i, zName) != 0) { goto __11 } - *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+10440 /* "database %s is a..." */, libc.VaList(bp+8, zName)) + *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+10450 /* "database %s is a..." */, libc.VaList(bp+8, zName)) goto attach_error __11: ; @@ -91504,7 +92100,7 @@ __4: goto __18 } rc = SQLITE_ERROR - *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+10470 /* "database is alre..." */, 0) + *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+10480 /* "database is alre..." */, 0) goto __19 __18: if !(rc == SQLITE_OK) { @@ -91521,7 +92117,7 @@ __21: goto __23 } *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, - ts+10499 /* "attached databas..." */, 0) + ts+10509 /* "attached databas..." */, 0) rc = SQLITE_ERROR __23: ; @@ -91591,13 +92187,13 @@ __29: } Xsqlite3OomFault(tls, db) Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */))) - *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+5181 /* "out of memory" */, 0) + *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+5191 /* "out of memory" */, 0) goto __31 __30: if !(*(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) == uintptr(0)) { goto __32 } - *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+10567 /* "unable to open d..." */, libc.VaList(bp+16, zFile)) + *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+10577 /* "unable to open d..." */, libc.VaList(bp+16, zFile)) __32: ; __31: @@ -91653,7 +92249,7 @@ func detachFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { / if !(zName == uintptr(0)) { goto __1 } - zName = ts + 755 /* "" */ + zName = ts + 765 /* "" */ __1: ; i = 0 @@ -91685,14 +92281,14 @@ __4: if !(i >= (*Sqlite3)(unsafe.Pointer(db)).FnDb) { goto __7 } - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([128]int8{})), bp+24 /* &zErr[0] */, ts+10595 /* "no such database..." */, libc.VaList(bp, zName)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([128]int8{})), bp+24 /* &zErr[0] */, ts+10605 /* "no such database..." */, libc.VaList(bp, zName)) goto detach_error __7: ; if !(i < 2) { goto __8 } - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([128]int8{})), bp+24 /* &zErr[0] */, ts+10616 /* "cannot detach da..." */, libc.VaList(bp+8, zName)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([128]int8{})), bp+24 /* &zErr[0] */, ts+10626 /* "cannot detach da..." */, libc.VaList(bp+8, zName)) goto detach_error __8: ; @@ -91700,7 +92296,7 @@ __8: (Xsqlite3BtreeIsInBackup(tls, (*Db)(unsafe.Pointer(pDb)).FpBt) != 0)) { goto __9 } - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([128]int8{})), bp+24 /* &zErr[0] */, ts+10642 /* "database %s is l..." */, libc.VaList(bp+16, zName)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([128]int8{})), bp+24 /* &zErr[0] */, ts+10652 /* "database %s is l..." */, libc.VaList(bp+16, zName)) goto detach_error __9: ; @@ -91823,7 +92419,7 @@ var detach_func = FuncDef{ FnArg: int8(1), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 10664 /* "sqlite_detach" */} /* sqlite3.c:111944:24 */ + FzName: ts + 10674 /* "sqlite_detach" */} /* sqlite3.c:111944:24 */ // Called by the parser to compile an ATTACH statement. // @@ -91836,7 +92432,7 @@ var attach_func = FuncDef{ FnArg: int8(3), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 10678 /* "sqlite_attach" */} /* sqlite3.c:111964:24 */ + FzName: ts + 10688 /* "sqlite_attach" */} /* sqlite3.c:111964:24 */ // Expression callback used by sqlite3FixAAAA() routines. func fixExprCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:111982:12: */ @@ -91851,7 +92447,7 @@ func fixExprCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:111 if (*Sqlite3)(unsafe.Pointer((*Parse)(unsafe.Pointer((*DbFixer)(unsafe.Pointer(pFix)).FpParse)).Fdb)).Finit.Fbusy != 0 { (*Expr)(unsafe.Pointer(pExpr)).Fop = U8(TK_NULL) } else { - Xsqlite3ErrorMsg(tls, (*DbFixer)(unsafe.Pointer(pFix)).FpParse, ts+10692 /* "%s cannot use va..." */, libc.VaList(bp, (*DbFixer)(unsafe.Pointer(pFix)).FzType)) + Xsqlite3ErrorMsg(tls, (*DbFixer)(unsafe.Pointer(pFix)).FpParse, ts+10702 /* "%s cannot use va..." */, libc.VaList(bp, (*DbFixer)(unsafe.Pointer(pFix)).FzType)) return WRC_Abort } } @@ -91884,7 +92480,7 @@ __1: if (*SrcItem)(unsafe.Pointer(pItem)).FzDatabase != 0 { if iDb != Xsqlite3FindDbName(tls, db, (*SrcItem)(unsafe.Pointer(pItem)).FzDatabase) { Xsqlite3ErrorMsg(tls, (*DbFixer)(unsafe.Pointer(pFix)).FpParse, - ts+10716, /* "%s %T cannot ref..." */ + ts+10726, /* "%s %T cannot ref..." */ libc.VaList(bp, (*DbFixer)(unsafe.Pointer(pFix)).FzType, (*DbFixer)(unsafe.Pointer(pFix)).FpName, (*SrcItem)(unsafe.Pointer(pItem)).FzDatabase)) return WRC_Abort } @@ -92083,7 +92679,7 @@ func Xsqlite3_set_authorizer(tls *libc.TLS, db uintptr, xAuth uintptr, pArg uint // Write an error message into pParse->zErrMsg that explains that the // user-supplied authorization function returned an illegal value. func sqliteAuthBadReturnCode(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:112233:13: */ - Xsqlite3ErrorMsg(tls, pParse, ts+10762 /* "authorizer malfu..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+10772 /* "authorizer malfu..." */, 0) (*Parse)(unsafe.Pointer(pParse)).Frc = SQLITE_ERROR } @@ -92105,13 +92701,15 @@ func Xsqlite3AuthReadCol(tls *libc.TLS, pParse uintptr, zTab uintptr, zCol uintp if (*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy != 0 { return SQLITE_OK } - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((db + 348 /* &.xAuth */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpAuthArg, SQLITE_READ, zTab, zCol, zDb, (*Parse)(unsafe.Pointer(pParse)).FzAuthContext) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxAuth})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpAuthArg, SQLITE_READ, zTab, zCol, zDb, (*Parse)(unsafe.Pointer(pParse)).FzAuthContext) if rc == SQLITE_DENY { - var z uintptr = Xsqlite3_mprintf(tls, ts+10785 /* "%s.%s" */, libc.VaList(bp, zTab, zCol)) + var z uintptr = Xsqlite3_mprintf(tls, ts+10795 /* "%s.%s" */, libc.VaList(bp, zTab, zCol)) if ((*Sqlite3)(unsafe.Pointer(db)).FnDb > 2) || (iDb != 0) { - z = Xsqlite3_mprintf(tls, ts+10791 /* "%s.%z" */, libc.VaList(bp+16, zDb, z)) + z = Xsqlite3_mprintf(tls, ts+10801 /* "%s.%z" */, libc.VaList(bp+16, zDb, z)) } - Xsqlite3ErrorMsg(tls, pParse, ts+10797 /* "access to %z is ..." */, libc.VaList(bp+32, z)) + Xsqlite3ErrorMsg(tls, pParse, ts+10807 /* "access to %z is ..." */, libc.VaList(bp+32, z)) (*Parse)(unsafe.Pointer(pParse)).Frc = SQLITE_AUTH } else if (rc != SQLITE_IGNORE) && (rc != SQLITE_OK) { sqliteAuthBadReturnCode(tls, pParse) @@ -92163,7 +92761,7 @@ func Xsqlite3AuthRead(tls *libc.TLS, pParse uintptr, pExpr uintptr, pSchema uint zCol = (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr((*Table)(unsafe.Pointer(pTab)).FiPKey)*20)).FzName } else { - zCol = ts + 6688 /* "ROWID" */ + zCol = ts + 6698 /* "ROWID" */ } if SQLITE_IGNORE == Xsqlite3AuthReadCol(tls, pParse, (*Table)(unsafe.Pointer(pTab)).FzName, zCol, iDb) { @@ -92193,9 +92791,11 @@ func Xsqlite3AuthCheck(tls *libc.TLS, pParse uintptr, code int32, zArg1 uintptr, // The following testcase() macros show that any of the 3rd through 6th // parameters can be either NULL or a string. - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((db + 348 /* &.xAuth */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpAuthArg, code, zArg1, zArg2, zArg3, (*Parse)(unsafe.Pointer(pParse)).FzAuthContext) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxAuth})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpAuthArg, code, zArg1, zArg2, zArg3, (*Parse)(unsafe.Pointer(pParse)).FzAuthContext) if rc == SQLITE_DENY { - Xsqlite3ErrorMsg(tls, pParse, ts+10824 /* "not authorized" */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+10834 /* "not authorized" */, 0) (*Parse)(unsafe.Pointer(pParse)).Frc = SQLITE_AUTH } else if (rc != SQLITE_OK) && (rc != SQLITE_IGNORE) { rc = SQLITE_DENY @@ -92505,25 +93105,25 @@ func Xsqlite3FindTable(tls *libc.TLS, db uintptr, zName uintptr, zDatabase uintp if i >= (*Sqlite3)(unsafe.Pointer(db)).FnDb { // No match against the official names. But always match "main" // to schema 0 as a legacy fallback. - if Xsqlite3StrICmp(tls, zDatabase, ts+5458 /* "main" */) == 0 { + if Xsqlite3StrICmp(tls, zDatabase, ts+5468 /* "main" */) == 0 { i = 0 } else { return uintptr(0) } } p = Xsqlite3HashFind(tls, ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i)*16)).FpSchema + 8 /* &.tblHash */), zName) - if (p == uintptr(0)) && (Xsqlite3_strnicmp(tls, zName, ts+7081 /* "sqlite_" */, 7) == 0) { + if (p == uintptr(0)) && (Xsqlite3_strnicmp(tls, zName, ts+7091 /* "sqlite_" */, 7) == 0) { if i == 1 { - if ((Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+10839 /* "sqlite_temp_sche..." */ +7)) == 0) || - (Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+10858 /* "sqlite_schema" */ +7)) == 0)) || - (Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+4956 /* "sqlite_master" */ +7)) == 0) { + if ((Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+10849 /* "sqlite_temp_sche..." */ +7)) == 0) || + (Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+10868 /* "sqlite_schema" */ +7)) == 0)) || + (Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+4966 /* "sqlite_master" */ +7)) == 0) { p = Xsqlite3HashFind(tls, ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*16)).FpSchema + 8 /* &.tblHash */), - ts+10872 /* "sqlite_temp_mast..." */) + ts+10882 /* "sqlite_temp_mast..." */) } } else { - if Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+10858 /* "sqlite_schema" */ +7)) == 0 { + if Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+10868 /* "sqlite_schema" */ +7)) == 0 { p = Xsqlite3HashFind(tls, ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i)*16)).FpSchema + 8 /* &.tblHash */), - ts+4956 /* "sqlite_master" */) + ts+4966 /* "sqlite_master" */) } } } @@ -92546,12 +93146,12 @@ func Xsqlite3FindTable(tls *libc.TLS, db uintptr, zName uintptr, zDatabase uintp break } } - if (p == uintptr(0)) && (Xsqlite3_strnicmp(tls, zName, ts+7081 /* "sqlite_" */, 7) == 0) { - if Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+10858 /* "sqlite_schema" */ +7)) == 0 { - p = Xsqlite3HashFind(tls, ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb)).FpSchema + 8 /* &.tblHash */), ts+4956 /* "sqlite_master" */) - } else if Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+10839 /* "sqlite_temp_sche..." */ +7)) == 0 { + if (p == uintptr(0)) && (Xsqlite3_strnicmp(tls, zName, ts+7091 /* "sqlite_" */, 7) == 0) { + if Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+10868 /* "sqlite_schema" */ +7)) == 0 { + p = Xsqlite3HashFind(tls, ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb)).FpSchema + 8 /* &.tblHash */), ts+4966 /* "sqlite_master" */) + } else if Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+10849 /* "sqlite_temp_sche..." */ +7)) == 0 { p = Xsqlite3HashFind(tls, ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*16)).FpSchema + 8 /* &.tblHash */), - ts+10872 /* "sqlite_temp_mast..." */) + ts+10882 /* "sqlite_temp_mast..." */) } } } @@ -92587,7 +93187,7 @@ func Xsqlite3LocateTable(tls *libc.TLS, pParse uintptr, flags U32, zName uintptr // can be an eponymous virtual table. if (int32((*Parse)(unsafe.Pointer(pParse)).FdisableVtab) == 0) && (int32((*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy) == 0) { var pMod uintptr = Xsqlite3HashFind(tls, (db + 372 /* &.aModule */), zName) - if (pMod == uintptr(0)) && (Xsqlite3_strnicmp(tls, zName, ts+10891 /* "pragma_" */, 7) == 0) { + if (pMod == uintptr(0)) && (Xsqlite3_strnicmp(tls, zName, ts+10901 /* "pragma_" */, 7) == 0) { pMod = Xsqlite3PragmaVtabRegister(tls, db, zName) } if (pMod != 0) && (Xsqlite3VtabEponymousTableInit(tls, pParse, pMod) != 0) { @@ -92605,14 +93205,14 @@ func Xsqlite3LocateTable(tls *libc.TLS, pParse uintptr, flags U32, zName uintptr if p == uintptr(0) { var zMsg uintptr if (flags & U32(LOCATE_VIEW)) != 0 { - zMsg = ts + 10899 /* "no such view" */ + zMsg = ts + 10909 /* "no such view" */ } else { - zMsg = ts + 10912 /* "no such table" */ + zMsg = ts + 10922 /* "no such table" */ } if zDbase != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+5651 /* "%s: %s.%s" */, libc.VaList(bp, zMsg, zDbase, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+5661 /* "%s: %s.%s" */, libc.VaList(bp, zMsg, zDbase, zName)) } else { - Xsqlite3ErrorMsg(tls, pParse, ts+5661 /* "%s: %s" */, libc.VaList(bp+24, zMsg, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+5671 /* "%s: %s" */, libc.VaList(bp+24, zMsg, zName)) } } else { @@ -92925,7 +93525,7 @@ func Xsqlite3NameFromToken(tls *libc.TLS, db uintptr, pName uintptr) uintptr { / // writing. The table is opened using cursor 0. func Xsqlite3OpenSchemaTable(tls *libc.TLS, p uintptr, iDb int32) { /* sqlite3.c:113223:21: */ var v uintptr = Xsqlite3GetVdbe(tls, p) - Xsqlite3TableLock(tls, p, iDb, uint32(SCHEMA_ROOT), uint8(1), ts+4956 /* "sqlite_master" */) + Xsqlite3TableLock(tls, p, iDb, uint32(SCHEMA_ROOT), uint8(1), ts+4966 /* "sqlite_master" */) Xsqlite3VdbeAddOp4Int(tls, v, OP_OpenWrite, 0, SCHEMA_ROOT, iDb, 5) if (*Parse)(unsafe.Pointer(p)).FnTab == 0 { (*Parse)(unsafe.Pointer(p)).FnTab = 1 @@ -92952,7 +93552,7 @@ func Xsqlite3FindDbName(tls *libc.TLS, db uintptr, zName uintptr) int32 { /* sql } // "main" is always an acceptable alias for the primary database // even if it has been renamed using SQLITE_DBCONFIG_MAINDBNAME. - if (i == 0) && (0 == Xsqlite3_stricmp(tls, ts+5458 /* "main" */, zName)) { + if (i == 0) && (0 == Xsqlite3_stricmp(tls, ts+5468 /* "main" */, zName)) { goto __3 } @@ -93005,13 +93605,13 @@ func Xsqlite3TwoPartName(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 u if (*Token)(unsafe.Pointer(pName2)).Fn > uint32(0) { if (*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+10926 /* "corrupt database" */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+10936 /* "corrupt database" */, 0) return -1 } *(*uintptr)(unsafe.Pointer(pUnqual)) = pName2 iDb = Xsqlite3FindDb(tls, db, pName1) if iDb < 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+10943 /* "unknown database..." */, libc.VaList(bp, pName1)) + Xsqlite3ErrorMsg(tls, pParse, ts+10953 /* "unknown database..." */, libc.VaList(bp, pName1)) return -1 } } else { @@ -93052,13 +93652,13 @@ func Xsqlite3CheckObjectName(tls *libc.TLS, pParse uintptr, zName uintptr, zType if ((Xsqlite3_stricmp(tls, zType, *(*uintptr)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).Finit.FazInit))) != 0) || (Xsqlite3_stricmp(tls, zName, *(*uintptr)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).Finit.FazInit + 1*4))) != 0)) || (Xsqlite3_stricmp(tls, zTblName, *(*uintptr)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).Finit.FazInit + 2*4))) != 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+755 /* "" */, 0) // corruptSchema() will supply the error + Xsqlite3ErrorMsg(tls, pParse, ts+765 /* "" */, 0) // corruptSchema() will supply the error return SQLITE_ERROR } } else { - if ((int32((*Parse)(unsafe.Pointer(pParse)).Fnested) == 0) && (0 == Xsqlite3_strnicmp(tls, zName, ts+7081 /* "sqlite_" */, 7))) || + if ((int32((*Parse)(unsafe.Pointer(pParse)).Fnested) == 0) && (0 == Xsqlite3_strnicmp(tls, zName, ts+7091 /* "sqlite_" */, 7))) || ((Xsqlite3ReadOnlyShadowTables(tls, db) != 0) && (Xsqlite3ShadowTableName(tls, db, zName) != 0)) { - Xsqlite3ErrorMsg(tls, pParse, ts+10963, /* "object name rese..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+10973, /* "object name rese..." */ libc.VaList(bp, zName)) return SQLITE_ERROR } @@ -93227,9 +93827,9 @@ func Xsqlite3StartTable(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 ui iDb = int32((*Sqlite3)(unsafe.Pointer(db)).Finit.FiDb) zName = Xsqlite3DbStrDup(tls, db, func() uintptr { if (!(0 != 0)) && (iDb == 1) { - return ts + 10872 /* "sqlite_temp_mast..." */ + return ts + 10882 /* "sqlite_temp_mast..." */ } - return ts + 4956 /* "sqlite_master" */ + return ts + 4966 /* "sqlite_master" */ }()) *(*uintptr)(unsafe.Pointer(bp + 16 /* pName */)) = pName1 goto __2 @@ -93247,7 +93847,7 @@ __3: } // If creating a temp table, the name may not be qualified. Unless // the database name is "temp" anyway. - Xsqlite3ErrorMsg(tls, pParse, ts+11005 /* "temporary table ..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+11015 /* "temporary table ..." */, 0) return __4: ; @@ -93275,9 +93875,9 @@ __7: ; if !(Xsqlite3CheckObjectName(tls, pParse, zName, func() uintptr { if isView != 0 { - return ts + 9208 /* "view" */ + return ts + 9218 /* "view" */ } - return ts + 7823 /* "table" */ + return ts + 7833 /* "table" */ }(), zName) != 0) { goto __8 } @@ -93294,9 +93894,9 @@ __9: zDb = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16)).FzDbSName if !(Xsqlite3AuthCheck(tls, pParse, SQLITE_INSERT, func() uintptr { if (!(0 != 0)) && (isTemp == 1) { - return ts + 10872 /* "sqlite_temp_mast..." */ + return ts + 10882 /* "sqlite_temp_mast..." */ } - return ts + 4956 /* "sqlite_master" */ + return ts + 4966 /* "sqlite_master" */ }(), uintptr(0), zDb) != 0) { goto __10 } @@ -93334,7 +93934,7 @@ __13: if !(!(noErr != 0)) { goto __15 } - Xsqlite3ErrorMsg(tls, pParse, ts+11046 /* "table %T already..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 16 /* pName */)))) + Xsqlite3ErrorMsg(tls, pParse, ts+11056 /* "table %T already..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 16 /* pName */)))) goto __16 __15: ; @@ -93348,7 +93948,7 @@ __14: if !(Xsqlite3FindIndex(tls, db, zName, zDb1) != uintptr(0)) { goto __17 } - Xsqlite3ErrorMsg(tls, pParse, ts+11070 /* "there is already..." */, libc.VaList(bp+8, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+11080 /* "there is already..." */, libc.VaList(bp+8, zName)) goto begin_table_error __17: ; @@ -93464,7 +94064,7 @@ var nullRow = [6]int8{int8(6), int8(0), int8(0), int8(0), int8(0), int8(0)} /* s func sqlite3DeleteReturning(tls *libc.TLS, db uintptr, pRet uintptr) { /* sqlite3.c:113716:13: */ var pHash uintptr pHash = ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*16)).FpSchema + 40 /* &.trigHash */) - Xsqlite3HashInsert(tls, pHash, ts+11105 /* "sqlite_returning" */, uintptr(0)) + Xsqlite3HashInsert(tls, pHash, ts+11115 /* "sqlite_returning" */, uintptr(0)) Xsqlite3ExprListDelete(tls, db, (*Returning)(unsafe.Pointer(pRet)).FpReturnEL) Xsqlite3DbFree(tls, db, pRet) } @@ -93488,7 +94088,7 @@ func Xsqlite3AddReturning(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sql var pHash uintptr var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if (*Parse)(unsafe.Pointer(pParse)).FpNewTrigger != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+11122 /* "cannot use RETUR..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+11132 /* "cannot use RETUR..." */, 0) } else { } @@ -93509,7 +94109,7 @@ func Xsqlite3AddReturning(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sql if (*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0 { return } - (*Returning)(unsafe.Pointer(pRet)).FretTrig.FzName = ts + 11105 /* "sqlite_returning" */ + (*Returning)(unsafe.Pointer(pRet)).FretTrig.FzName = ts + 11115 /* "sqlite_returning" */ (*Returning)(unsafe.Pointer(pRet)).FretTrig.Fop = U8(TK_RETURNING) (*Returning)(unsafe.Pointer(pRet)).FretTrig.Ftr_tm = U8(TRIGGER_AFTER) (*Returning)(unsafe.Pointer(pRet)).FretTrig.FbReturning = U8(1) @@ -93521,7 +94121,7 @@ func Xsqlite3AddReturning(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sql (*Returning)(unsafe.Pointer(pRet)).FretTStep.FpExprList = pList pHash = ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*16)).FpSchema + 40 /* &.trigHash */) - if Xsqlite3HashInsert(tls, pHash, ts+11105 /* "sqlite_returning" */, (pRet+8 /* &.retTrig */)) == + if Xsqlite3HashInsert(tls, pHash, ts+11115 /* "sqlite_returning" */, (pRet+8 /* &.retTrig */)) == (pRet + 8 /* &.retTrig */) { Xsqlite3OomFault(tls, db) } @@ -93549,7 +94149,7 @@ func Xsqlite3AddColumn(tls *libc.TLS, pParse uintptr, pName uintptr, pType uintp return } if (int32((*Table)(unsafe.Pointer(p)).FnCol) + 1) > *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 2*4)) { - Xsqlite3ErrorMsg(tls, pParse, ts+11156 /* "too many columns..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(p)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+11166 /* "too many columns..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(p)).FzName)) return } z = Xsqlite3DbMallocRaw(tls, db, (uint64(((*Token)(unsafe.Pointer(pName)).Fn + (*Token)(unsafe.Pointer(pType)).Fn) + uint32(2)))) @@ -93565,7 +94165,7 @@ func Xsqlite3AddColumn(tls *libc.TLS, pParse uintptr, pName uintptr, pType uintp hName = Xsqlite3StrIHash(tls, z) for i = 0; i < int32((*Table)(unsafe.Pointer(p)).FnCol); i++ { if (int32((*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(p)).FaCol+uintptr(i)*20)).FhName) == int32(hName)) && (Xsqlite3StrICmp(tls, z, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(p)).FaCol+uintptr(i)*20)).FzName) == 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+11179 /* "duplicate column..." */, libc.VaList(bp+8, z)) + Xsqlite3ErrorMsg(tls, pParse, ts+11189 /* "duplicate column..." */, libc.VaList(bp+8, z)) Xsqlite3DbFree(tls, db, z) return } @@ -93739,11 +94339,11 @@ func Xsqlite3AddDefaultValue(tls *libc.TLS, pParse uintptr, pExpr uintptr, zStar var isInit int32 = (libc.Bool32(((*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy != 0) && (int32((*Sqlite3)(unsafe.Pointer(db)).Finit.FiDb) != 1))) pCol = ((*Table)(unsafe.Pointer(p)).FaCol + uintptr((int32((*Table)(unsafe.Pointer(p)).FnCol)-1))*20) if !(Xsqlite3ExprIsConstantOrFunction(tls, pExpr, uint8(isInit)) != 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+11205, /* "default value of..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+11215, /* "default value of..." */ libc.VaList(bp, (*Column)(unsafe.Pointer(pCol)).FzName)) } else if (int32((*Column)(unsafe.Pointer(pCol)).FcolFlags) & COLFLAG_GENERATED) != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+11250 /* "cannot use DEFAU..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+11260 /* "cannot use DEFAU..." */, 0) } else { // A copy of pExpr is used instead of the original, as pExpr contains // tokens that point to volatile memory. @@ -93793,7 +94393,7 @@ func makeColumnPartOfPrimaryKey(tls *libc.TLS, pParse uintptr, pCol uintptr) { / if (int32((*Column)(unsafe.Pointer(pCol)).FcolFlags) & COLFLAG_GENERATED) != 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+11291 /* "generated column..." */, 0) + ts+11301 /* "generated column..." */, 0) } } @@ -93838,7 +94438,7 @@ __1: goto __2 } Xsqlite3ErrorMsg(tls, pParse, - ts+11343 /* "table \"%s\" has m..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + ts+11353 /* "table \"%s\" has m..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) goto primary_key_exit __2: ; @@ -93898,7 +94498,7 @@ __4: ; if !((((nTerm == 1) && (pCol != 0)) && - (Xsqlite3StrICmp(tls, Xsqlite3ColumnType(tls, pCol, ts+755 /* "" */), ts+11384 /* "INTEGER" */) == 0)) && + (Xsqlite3StrICmp(tls, Xsqlite3ColumnType(tls, pCol, ts+765 /* "" */), ts+11394 /* "INTEGER" */) == 0)) && (sortOrder != SQLITE_SO_DESC)) { goto __13 } @@ -93926,7 +94526,7 @@ __13: goto __17 } Xsqlite3ErrorMsg(tls, pParse, - ts+11392 /* "AUTOINCREMENT is..." */, 0) + ts+11402 /* "AUTOINCREMENT is..." */, 0) goto __18 __17: Xsqlite3CreateIndex(tls, pParse, uintptr(0), uintptr(0), uintptr(0), pList, onError, uintptr(0), @@ -94030,7 +94630,7 @@ __1: if !(int32((*Parse)(unsafe.Pointer(pParse)).FeParseMode) == PARSE_MODE_DECLARE_VTAB) { goto __2 } - Xsqlite3ErrorMsg(tls, pParse, ts+11448 /* "virtual tables c..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+11458 /* "virtual tables c..." */, 0) goto generated_done __2: ; @@ -94043,13 +94643,13 @@ __3: if !(pType != 0) { goto __4 } - if !(((*Token)(unsafe.Pointer(pType)).Fn == uint32(7)) && (Xsqlite3_strnicmp(tls, ts+11491 /* "virtual" */, (*Token)(unsafe.Pointer(pType)).Fz, 7) == 0)) { + if !(((*Token)(unsafe.Pointer(pType)).Fn == uint32(7)) && (Xsqlite3_strnicmp(tls, ts+11501 /* "virtual" */, (*Token)(unsafe.Pointer(pType)).Fz, 7) == 0)) { goto __5 } // no-op goto __6 __5: - if !(((*Token)(unsafe.Pointer(pType)).Fn == uint32(6)) && (Xsqlite3_strnicmp(tls, ts+11499 /* "stored" */, (*Token)(unsafe.Pointer(pType)).Fz, 6) == 0)) { + if !(((*Token)(unsafe.Pointer(pType)).Fn == uint32(6)) && (Xsqlite3_strnicmp(tls, ts+11509 /* "stored" */, (*Token)(unsafe.Pointer(pType)).Fz, 6) == 0)) { goto __7 } eType = U8(COLFLAG_STORED) @@ -94082,7 +94682,7 @@ __10: goto generated_done generated_error: - Xsqlite3ErrorMsg(tls, pParse, ts+11506, /* "error in generat..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+11516, /* "error in generat..." */ libc.VaList(bp, (*Column)(unsafe.Pointer(pCol)).FzName)) generated_done: Xsqlite3ExprDelete(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, pExpr) @@ -94224,13 +94824,13 @@ __3: ; n = n + (identLength(tls, (*Table)(unsafe.Pointer(p)).FzName)) if n < 50 { - zSep = ts + 755 /* "" */ - zSep2 = ts + 11537 /* "," */ - zEnd = ts + 4066 /* ")" */ + zSep = ts + 765 /* "" */ + zSep2 = ts + 11547 /* "," */ + zEnd = ts + 4076 /* ")" */ } else { - zSep = ts + 11539 /* "\n " */ - zSep2 = ts + 11543 /* ",\n " */ - zEnd = ts + 11548 /* "\n)" */ + zSep = ts + 11549 /* "\n " */ + zSep2 = ts + 11553 /* ",\n " */ + zEnd = ts + 11558 /* "\n)" */ } n = n + (35 + (6 * int32((*Table)(unsafe.Pointer(p)).FnCol))) zStmt = Xsqlite3DbMallocRaw(tls, uintptr(0), uint64(n)) @@ -94238,7 +94838,7 @@ __3: Xsqlite3OomFault(tls, db) return uintptr(0) } - Xsqlite3_snprintf(tls, n, zStmt, ts+11551 /* "CREATE TABLE " */, 0) + Xsqlite3_snprintf(tls, n, zStmt, ts+11561 /* "CREATE TABLE " */, 0) *(*int32)(unsafe.Pointer(bp + 8 /* k */)) = Xsqlite3Strlen30(tls, zStmt) identPut(tls, zStmt, bp+8 /* &k */, (*Table)(unsafe.Pointer(p)).FzName) *(*int8)(unsafe.Pointer(zStmt + uintptr(libc.PostIncInt32(&*(*int32)(unsafe.Pointer(bp + 8 /* k */)), 1)))) = int8('(') @@ -94272,16 +94872,16 @@ __5: goto __6 __6: ; - Xsqlite3_snprintf(tls, (n - *(*int32)(unsafe.Pointer(bp + 8 /* k */))), (zStmt + uintptr(*(*int32)(unsafe.Pointer(bp + 8 /* k */)))), ts+2790 /* "%s" */, libc.VaList(bp, zEnd)) + Xsqlite3_snprintf(tls, (n - *(*int32)(unsafe.Pointer(bp + 8 /* k */))), (zStmt + uintptr(*(*int32)(unsafe.Pointer(bp + 8 /* k */)))), ts+2800 /* "%s" */, libc.VaList(bp, zEnd)) return zStmt } var azType1 = [5]uintptr{ - /* SQLITE_AFF_BLOB */ ts + 755, /* "" */ - /* SQLITE_AFF_TEXT */ ts + 11565, /* " TEXT" */ - /* SQLITE_AFF_NUMERIC */ ts + 11571, /* " NUM" */ - /* SQLITE_AFF_INTEGER */ ts + 11576, /* " INT" */ - /* SQLITE_AFF_REAL */ ts + 11581, /* " REAL" */ + /* SQLITE_AFF_BLOB */ ts + 765, /* "" */ + /* SQLITE_AFF_TEXT */ ts + 11575, /* " TEXT" */ + /* SQLITE_AFF_NUMERIC */ ts + 11581, /* " NUM" */ + /* SQLITE_AFF_INTEGER */ ts + 11586, /* " INT" */ + /* SQLITE_AFF_REAL */ ts + 11591, /* " REAL" */ } /* sqlite3.c:114391:23 */ // Resize an Index object to hold N columns total. Return SQLITE_OK @@ -94642,7 +95242,9 @@ func Xsqlite3IsShadowTableOf(tls *libc.TLS, db uintptr, pTab uintptr, zName uint if (*Sqlite3_module)(unsafe.Pointer((*Module)(unsafe.Pointer(pMod)).FpModule)).FxShadowName == uintptr(0) { return 0 } - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Module)(unsafe.Pointer(pMod)).FpModule + 92 /* &.xShadowName */))))(tls, ((zName + uintptr(nName)) + uintptr(1))) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer((*Module)(unsafe.Pointer(pMod)).FpModule)).FxShadowName})).f(tls, ((zName + uintptr(nName)) + uintptr(1))) } // Return true if zName is a shadow table name in the current database @@ -94718,7 +95320,7 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr // table itself. So mark it read-only. if (*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy != 0 { if pSelect != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+755 /* "" */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+765 /* "" */, 0) return } (*Table)(unsafe.Pointer(p)).Ftnum = (*Sqlite3)(unsafe.Pointer(db)).Finit.FnewTnum @@ -94731,11 +95333,11 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr if (int32(tabOpts) & TF_WithoutRowid) != 0 { if ((*Table)(unsafe.Pointer(p)).FtabFlags & U32(TF_Autoincrement)) != 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+11587 /* "AUTOINCREMENT no..." */, 0) + ts+11597 /* "AUTOINCREMENT no..." */, 0) return } if ((*Table)(unsafe.Pointer(p)).FtabFlags & U32(TF_HasPrimaryKey)) == U32(0) { - Xsqlite3ErrorMsg(tls, pParse, ts+11637 /* "PRIMARY KEY miss..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(p)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+11647 /* "PRIMARY KEY miss..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(p)).FzName)) return } *(*U32)(unsafe.Pointer(p + 36 /* &.tabFlags */)) |= (U32(TF_WithoutRowid | TF_NoVisibleRowid)) @@ -94779,7 +95381,7 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr } } if nNG == 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+11669 /* "must have at lea..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+11679 /* "must have at lea..." */, 0) return } } @@ -94812,12 +95414,12 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr // Initialize zType for the new view or table. if (*Table)(unsafe.Pointer(p)).FpSelect == uintptr(0) { // A regular table - zType = ts + 7823 /* "table" */ - zType2 = ts + 11713 /* "TABLE" */ + zType = ts + 7833 /* "table" */ + zType2 = ts + 11723 /* "TABLE" */ } else { // A view - zType = ts + 9208 /* "view" */ - zType2 = ts + 11719 /* "VIEW" */ + zType = ts + 9218 /* "view" */ + zType2 = ts + 11729 /* "VIEW" */ } // If this is a CREATE TABLE xx AS SELECT ..., execute the SELECT @@ -94898,7 +95500,7 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr n = int32(uint32(n) + ((*Token)(unsafe.Pointer(pEnd2)).Fn)) } zStmt = Xsqlite3MPrintf(tls, db, - ts+11724 /* "CREATE %s %.*s" */, libc.VaList(bp+8, zType2, n, (*Parse)(unsafe.Pointer(pParse)).FsNameToken.Fz)) + ts+11734 /* "CREATE %s %.*s" */, libc.VaList(bp+8, zType2, n, (*Parse)(unsafe.Pointer(pParse)).FsNameToken.Fz)) } // A slot for the record has already been allocated in the @@ -94906,7 +95508,7 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr // the information we've collected. Xsqlite3NestedParse(tls, pParse, - ts+11739, /* "UPDATE %Q.sqlite..." */ + ts+11749, /* "UPDATE %Q.sqlite..." */ libc.VaList(bp+32, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, zType, (*Table)(unsafe.Pointer(p)).FzName, @@ -94924,14 +95526,14 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr if (*Schema)(unsafe.Pointer((*Db)(unsafe.Pointer(pDb)).FpSchema)).FpSeqTab == uintptr(0) { Xsqlite3NestedParse(tls, pParse, - ts+11837, /* "CREATE TABLE %Q...." */ + ts+11847, /* "CREATE TABLE %Q...." */ libc.VaList(bp+88, (*Db)(unsafe.Pointer(pDb)).FzDbSName)) } } // Reparse everything to update our internal data structures Xsqlite3VdbeAddParseSchemaOp(tls, v, iDb, - Xsqlite3MPrintf(tls, db, ts+11879 /* "tbl_name='%q' AN..." */, libc.VaList(bp+96, (*Table)(unsafe.Pointer(p)).FzName)), uint16(0)) + Xsqlite3MPrintf(tls, db, ts+11889 /* "tbl_name='%q' AN..." */, libc.VaList(bp+96, (*Table)(unsafe.Pointer(p)).FzName)), uint16(0)) } // Add the table to the in-memory representation of the database. @@ -94952,7 +95554,7 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr // then record a pointer to this table in the main database structure // so that INSERT can find the table easily. - if libc.Xstrcmp(tls, (*Table)(unsafe.Pointer(p)).FzName, ts+8345 /* "sqlite_sequence" */) == 0 { + if libc.Xstrcmp(tls, (*Table)(unsafe.Pointer(p)).FzName, ts+8355 /* "sqlite_sequence" */) == 0 { (*Schema)(unsafe.Pointer((*Table)(unsafe.Pointer(p)).FpSchema)).FpSeqTab = p } @@ -94989,7 +95591,7 @@ func Xsqlite3CreateView(tls *libc.TLS, pParse uintptr, pBegin uintptr, pName1 ui if !(int32((*Parse)(unsafe.Pointer(pParse)).FnVar) > 0) { goto __1 } - Xsqlite3ErrorMsg(tls, pParse, ts+11913 /* "parameters are n..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+11923 /* "parameters are n..." */, 0) goto create_view_fail __1: ; @@ -95011,7 +95613,7 @@ __2: Xsqlite3TwoPartName(tls, pParse, pName1, pName2, bp /* &pName */) iDb = Xsqlite3SchemaToIndex(tls, db, (*Table)(unsafe.Pointer(p)).FpSchema) - Xsqlite3FixInit(tls, bp+4 /* &sFix */, pParse, iDb, ts+9208 /* "view" */, *(*uintptr)(unsafe.Pointer(bp /* pName */))) + Xsqlite3FixInit(tls, bp+4 /* &sFix */, pParse, iDb, ts+9218 /* "view" */, *(*uintptr)(unsafe.Pointer(bp /* pName */))) if !(Xsqlite3FixSelect(tls, bp+4 /* &sFix */, pSelect) != 0) { goto __3 } @@ -95128,7 +95730,7 @@ func Xsqlite3ViewGetColumnNames(tls *libc.TLS, pParse uintptr, pTable uintptr) i // CREATE TEMP VIEW ex1 AS SELECT a FROM ex1; // SELECT * FROM temp.ex1; if int32((*Table)(unsafe.Pointer(pTable)).FnCol) < 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+11949 /* "view %s is circu..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTable)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+11959 /* "view %s is circu..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTable)).FzName)) return 1 } @@ -95270,7 +95872,7 @@ func destroyRootPage(tls *libc.TLS, pParse uintptr, iTable int32, iDb int32) { / var v uintptr = Xsqlite3GetVdbe(tls, pParse) var r1 int32 = Xsqlite3GetTempReg(tls, pParse) if iTable < 2 { - Xsqlite3ErrorMsg(tls, pParse, ts+11979 /* "corrupt schema" */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+11989 /* "corrupt schema" */, 0) } Xsqlite3VdbeAddOp3(tls, v, OP_Destroy, iTable, r1, iDb) Xsqlite3MayAbort(tls, pParse) @@ -95284,7 +95886,7 @@ func destroyRootPage(tls *libc.TLS, pParse uintptr, iTable int32, iDb int32) { / // token for additional information. Xsqlite3NestedParse(tls, pParse, - ts+11994, /* "UPDATE %Q.sqlite..." */ + ts+12004, /* "UPDATE %Q.sqlite..." */ libc.VaList(bp, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer((*Parse)(unsafe.Pointer(pParse)).Fdb)).FaDb+uintptr(iDb)*16)).FzDbSName, iTable, r1, r1)) Xsqlite3ReleaseTempReg(tls, pParse, r1) } @@ -95348,10 +95950,10 @@ func sqlite3ClearStatTables(tls *libc.TLS, pParse uintptr, iDb int32, zType uint for i = 1; i <= 4; i++ { // var zTab [24]int8 at bp+40, 24 - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([24]int8{})), bp+40 /* &zTab[0] */, ts+12061 /* "sqlite_stat%d" */, libc.VaList(bp, i)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([24]int8{})), bp+40 /* &zTab[0] */, ts+12071 /* "sqlite_stat%d" */, libc.VaList(bp, i)) if Xsqlite3FindTable(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, bp+40 /* &zTab[0] */, zDbName) != 0 { Xsqlite3NestedParse(tls, pParse, - ts+10024, /* "DELETE FROM %Q.%..." */ + ts+10034, /* "DELETE FROM %Q.%..." */ libc.VaList(bp+8, zDbName, bp+40 /* &zTab[0] */, zType, zName)) } } @@ -95391,7 +95993,7 @@ func Xsqlite3CodeDropTable(tls *libc.TLS, pParse uintptr, pTab uintptr, iDb int3 // move as a result of the drop (can happen in auto-vacuum mode). if ((*Table)(unsafe.Pointer(pTab)).FtabFlags & U32(TF_Autoincrement)) != 0 { Xsqlite3NestedParse(tls, pParse, - ts+12075, /* "DELETE FROM %Q.s..." */ + ts+12085, /* "DELETE FROM %Q.s..." */ libc.VaList(bp, (*Db)(unsafe.Pointer(pDb)).FzDbSName, (*Table)(unsafe.Pointer(pTab)).FzName)) } @@ -95403,7 +96005,7 @@ func Xsqlite3CodeDropTable(tls *libc.TLS, pParse uintptr, pTab uintptr, iDb int3 // database. Xsqlite3NestedParse(tls, pParse, - ts+12120, /* "DELETE FROM %Q.s..." */ + ts+12130, /* "DELETE FROM %Q.s..." */ libc.VaList(bp+16, (*Db)(unsafe.Pointer(pDb)).FzDbSName, (*Table)(unsafe.Pointer(pTab)).FzName)) if !(isView != 0) && !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) { destroyTable(tls, pParse, pTab) @@ -95433,11 +96035,11 @@ func Xsqlite3ReadOnlyShadowTables(tls *libc.TLS, db uintptr) int32 { /* sqlite3. // Return true if it is not allowed to drop the given table func tableMayNotBeDropped(tls *libc.TLS, db uintptr, pTab uintptr) int32 { /* sqlite3.c:115607:12: */ - if Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+7081 /* "sqlite_" */, 7) == 0 { - if Xsqlite3_strnicmp(tls, ((*Table)(unsafe.Pointer(pTab)).FzName+uintptr(7)), ts+2413 /* "stat" */, 4) == 0 { + if Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+7091 /* "sqlite_" */, 7) == 0 { + if Xsqlite3_strnicmp(tls, ((*Table)(unsafe.Pointer(pTab)).FzName+uintptr(7)), ts+2423 /* "stat" */, 4) == 0 { return 0 } - if Xsqlite3_strnicmp(tls, ((*Table)(unsafe.Pointer(pTab)).FzName+uintptr(7)), ts+6150 /* "parameters" */, 10) == 0 { + if Xsqlite3_strnicmp(tls, ((*Table)(unsafe.Pointer(pTab)).FzName+uintptr(7)), ts+6160 /* "parameters" */, 10) == 0 { return 0 } return 1 @@ -95518,9 +96120,9 @@ __7: zTab = func() uintptr { if (!(0 != 0)) && (iDb == 1) { - return ts + 10872 /* "sqlite_temp_mast..." */ + return ts + 10882 /* "sqlite_temp_mast..." */ } - return ts + 4956 /* "sqlite_master" */ + return ts + 4966 /* "sqlite_master" */ }() zDb = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16)).FzDbSName zArg2 = uintptr(0) @@ -95580,7 +96182,7 @@ __18: if !(tableMayNotBeDropped(tls, db, pTab) != 0) { goto __19 } - Xsqlite3ErrorMsg(tls, pParse, ts+12187 /* "table %s may not..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+12197 /* "table %s may not..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) goto exit_drop_table __19: ; @@ -95590,14 +96192,14 @@ __19: if !((isView != 0) && ((*Table)(unsafe.Pointer(pTab)).FpSelect == uintptr(0))) { goto __20 } - Xsqlite3ErrorMsg(tls, pParse, ts+12215 /* "use DROP TABLE t..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+12225 /* "use DROP TABLE t..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) goto exit_drop_table __20: ; if !(!(isView != 0) && ((*Table)(unsafe.Pointer(pTab)).FpSelect != 0)) { goto __21 } - Xsqlite3ErrorMsg(tls, pParse, ts+12249 /* "use DROP VIEW to..." */, libc.VaList(bp+16, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+12259 /* "use DROP VIEW to..." */, libc.VaList(bp+16, (*Table)(unsafe.Pointer(pTab)).FzName)) goto exit_drop_table __21: ; @@ -95612,7 +96214,7 @@ __21: if !(!(isView != 0)) { goto __23 } - sqlite3ClearStatTables(tls, pParse, iDb, ts+10216 /* "tbl" */, (*Table)(unsafe.Pointer(pTab)).FzName) + sqlite3ClearStatTables(tls, pParse, iDb, ts+10226 /* "tbl" */, (*Table)(unsafe.Pointer(pTab)).FzName) Xsqlite3FkDropTable(tls, pParse, pName, pTab) __23: ; @@ -95677,7 +96279,7 @@ __4: goto __5 } Xsqlite3ErrorMsg(tls, pParse, - ts+12281, /* "foreign key on %..." */ + ts+12291, /* "foreign key on %..." */ libc.VaList(bp, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(p)).FaCol+uintptr(iCol)*20)).FzName, pTo)) goto fk_end __5: @@ -95690,7 +96292,7 @@ __2: } Xsqlite3ErrorMsg(tls, pParse, - ts+12344 /* "number of column..." */, 0) + ts+12354 /* "number of column..." */, 0) goto fk_end goto __7 __6: @@ -95774,7 +96376,7 @@ __21: goto __23 } Xsqlite3ErrorMsg(tls, pParse, - ts+12438, /* "unknown column \"..." */ + ts+12448, /* "unknown column \"..." */ libc.VaList(bp+16, (*ExprList_item)(unsafe.Pointer((pFromCol+8 /* &.a */)+uintptr(i)*20)).FzEName)) goto fk_end __23: @@ -96024,12 +96626,12 @@ func Xsqlite3HasExplicitNulls(tls *libc.TLS, pParse uintptr, pList uintptr) int3 for i = 0; i < (*ExprList)(unsafe.Pointer(pList)).FnExpr; i++ { if (uint32(int32(*(*uint8)(unsafe.Pointer((pList + 8 /* &.a */) + uintptr(i)*20 + 12 /* &.bNulls */)) & 0x20 >> 5))) != 0 { var sf U8 = (*ExprList_item)(unsafe.Pointer((pList + 8 /* &.a */) + uintptr(i)*20)).FsortFlags - Xsqlite3ErrorMsg(tls, pParse, ts+12484, /* "unsupported use ..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+12494, /* "unsupported use ..." */ libc.VaList(bp, func() uintptr { if (int32(sf) == 0) || (int32(sf) == 3) { - return ts + 12512 /* "FIRST" */ + return ts + 12522 /* "FIRST" */ } - return ts + 12518 /* "LAST" */ + return ts + 12528 /* "LAST" */ }())) return 1 } @@ -96187,7 +96789,7 @@ __9: __8: ; - Xsqlite3FixInit(tls, bp+132 /* &sFix */, pParse, iDb, ts+12523 /* "index" */, *(*uintptr)(unsafe.Pointer(bp + 128 /* pName */))) + Xsqlite3FixInit(tls, bp+132 /* &sFix */, pParse, iDb, ts+12533 /* "index" */, *(*uintptr)(unsafe.Pointer(bp + 128 /* pName */))) if !(Xsqlite3FixSrcList(tls, bp+132 /* &sFix */, pTblName) != 0) { goto __10 } @@ -96208,7 +96810,7 @@ __11: goto __12 } Xsqlite3ErrorMsg(tls, pParse, - ts+12529, /* "cannot create a ..." */ + ts+12539, /* "cannot create a ..." */ libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) goto exit_create_index __12: @@ -96235,26 +96837,26 @@ __6: ; pDb = ((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16) - if !(((Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+7081 /* "sqlite_" */, 7) == 0) && + if !(((Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+7091 /* "sqlite_" */, 7) == 0) && (int32((*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy) == 0)) && (pTblName != uintptr(0))) { goto __15 } - Xsqlite3ErrorMsg(tls, pParse, ts+12579 /* "table %s may not..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+12589 /* "table %s may not..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) goto exit_create_index __15: ; if !((*Table)(unsafe.Pointer(pTab)).FpSelect != 0) { goto __16 } - Xsqlite3ErrorMsg(tls, pParse, ts+12607 /* "views may not be..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+12617 /* "views may not be..." */, 0) goto exit_create_index __16: ; if !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) { goto __17 } - Xsqlite3ErrorMsg(tls, pParse, ts+12632 /* "virtual tables m..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+12642 /* "virtual tables m..." */, 0) goto exit_create_index __17: ; @@ -96281,7 +96883,7 @@ __17: __20: ; - if !(SQLITE_OK != Xsqlite3CheckObjectName(tls, pParse, zName, ts+12523 /* "index" */, (*Table)(unsafe.Pointer(pTab)).FzName)) { + if !(SQLITE_OK != Xsqlite3CheckObjectName(tls, pParse, zName, ts+12533 /* "index" */, (*Table)(unsafe.Pointer(pTab)).FzName)) { goto __21 } goto exit_create_index @@ -96296,7 +96898,7 @@ __21: if !(Xsqlite3FindTable(tls, db, zName, uintptr(0)) != uintptr(0)) { goto __24 } - Xsqlite3ErrorMsg(tls, pParse, ts+12666 /* "there is already..." */, libc.VaList(bp+16, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+12676 /* "there is already..." */, libc.VaList(bp+16, zName)) goto exit_create_index __24: ; @@ -96308,7 +96910,7 @@ __23: if !(!(ifNotExist != 0)) { goto __26 } - Xsqlite3ErrorMsg(tls, pParse, ts+12700 /* "index %s already..." */, libc.VaList(bp+24, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+12710 /* "index %s already..." */, libc.VaList(bp+24, zName)) goto __27 __26: ; @@ -96337,7 +96939,7 @@ __29: goto __30 __30: ; - zName = Xsqlite3MPrintf(tls, db, ts+12724 /* "sqlite_autoindex..." */, libc.VaList(bp+32, (*Table)(unsafe.Pointer(pTab)).FzName, n)) + zName = Xsqlite3MPrintf(tls, db, ts+12734 /* "sqlite_autoindex..." */, libc.VaList(bp+32, (*Table)(unsafe.Pointer(pTab)).FzName, n)) if !(zName == uintptr(0)) { goto __31 } @@ -96366,9 +96968,9 @@ __19: zDb = (*Db)(unsafe.Pointer(pDb)).FzDbSName if !(Xsqlite3AuthCheck(tls, pParse, SQLITE_INSERT, func() uintptr { if (!(0 != 0)) && (iDb == 1) { - return ts + 10872 /* "sqlite_temp_mast..." */ + return ts + 10882 /* "sqlite_temp_mast..." */ } - return ts + 4956 /* "sqlite_master" */ + return ts + 4966 /* "sqlite_master" */ }(), uintptr(0), zDb) != 0) { goto __34 } @@ -96412,7 +97014,7 @@ __39: Xsqlite3ExprListSetSortOrder(tls, pList, sortOrder, -1) goto __38 __37: - Xsqlite3ExprListCheckLength(tls, pParse, pList, ts+12523 /* "index" */) + Xsqlite3ExprListCheckLength(tls, pParse, pList, ts+12533 /* "index" */) if !((*Parse)(unsafe.Pointer(pParse)).FnErr != 0) { goto __40 } @@ -96529,7 +97131,7 @@ __53: goto __56 } Xsqlite3ErrorMsg(tls, pParse, - ts+12747 /* "expressions proh..." */, 0) + ts+12757 /* "expressions proh..." */, 0) goto exit_create_index __56: ; @@ -96758,7 +97360,7 @@ __88: goto __93 } Xsqlite3ErrorMsg(tls, pParse, - ts+12808 /* "conflicting ON C..." */, libc.VaList(bp+48, 0)) + ts+12818 /* "conflicting ON C..." */, libc.VaList(bp+48, 0)) __93: ; if !(int32((*Index)(unsafe.Pointer(pIdx)).FonError) == OE_Default) { @@ -96814,7 +97416,7 @@ __81: if !(Xsqlite3IndexHasDuplicateRootPage(tls, pIndex) != 0) { goto __101 } - Xsqlite3ErrorMsg(tls, pParse, ts+12850 /* "invalid rootpage" */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+12860 /* "invalid rootpage" */, 0) (*Parse)(unsafe.Pointer(pParse)).Frc = Xsqlite3CorruptError(tls, 116514) goto exit_create_index __101: @@ -96872,12 +97474,12 @@ __104: __107: ; // A named index with an explicit CREATE INDEX statement - zStmt = Xsqlite3MPrintf(tls, db, ts+12867, /* "CREATE%s INDEX %..." */ + zStmt = Xsqlite3MPrintf(tls, db, ts+12877, /* "CREATE%s INDEX %..." */ libc.VaList(bp+56, func() uintptr { if onError == OE_None { - return ts + 755 /* "" */ + return ts + 765 /* "" */ } - return ts + 12887 /* " UNIQUE" */ + return ts + 12897 /* " UNIQUE" */ }(), n1, (*Token)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 128 /* pName */)))).Fz)) goto __106 __105: @@ -96889,7 +97491,7 @@ __106: // Add an entry in sqlite_schema for this index Xsqlite3NestedParse(tls, pParse, - ts+12895, /* "INSERT INTO %Q.s..." */ + ts+12905, /* "INSERT INTO %Q.s..." */ libc.VaList(bp+80, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, (*Index)(unsafe.Pointer(pIndex)).FzName, (*Table)(unsafe.Pointer(pTab)).FzName, @@ -96905,7 +97507,7 @@ __106: sqlite3RefillIndex(tls, pParse, pIndex, iMem) Xsqlite3ChangeCookie(tls, pParse, iDb) Xsqlite3VdbeAddParseSchemaOp(tls, v, iDb, - Xsqlite3MPrintf(tls, db, ts+12954 /* "name='%q' AND ty..." */, libc.VaList(bp+120, (*Index)(unsafe.Pointer(pIndex)).FzName)), uint16(0)) + Xsqlite3MPrintf(tls, db, ts+12964 /* "name='%q' AND ty..." */, libc.VaList(bp+120, (*Index)(unsafe.Pointer(pIndex)).FzName)), uint16(0)) Xsqlite3VdbeAddOp2(tls, v, OP_Expire, 0, 1) __108: ; @@ -97089,7 +97691,7 @@ __2: if !(!(ifExists != 0)) { goto __4 } - Xsqlite3ErrorMsg(tls, pParse, ts+12981 /* "no such index: %..." */, libc.VaList(bp, pName+8 /* &.a */)) + Xsqlite3ErrorMsg(tls, pParse, ts+12991 /* "no such index: %..." */, libc.VaList(bp, pName+8 /* &.a */)) goto __5 __4: Xsqlite3CodeVerifyNamedSchema(tls, pParse, (*SrcItem)(unsafe.Pointer((pName + 8 /* &.a */))).FzDatabase) @@ -97104,7 +97706,7 @@ __3: goto __6 } Xsqlite3ErrorMsg(tls, pParse, - ts+12999 /* "index associated..." */, libc.VaList(bp+8, 0)) + ts+13009 /* "index associated..." */, libc.VaList(bp+8, 0)) goto exit_drop_index __6: ; @@ -97115,9 +97717,9 @@ __6: zDb = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16)).FzDbSName zTab = func() uintptr { if (!(0 != 0)) && (iDb == 1) { - return ts + 10872 /* "sqlite_temp_mast..." */ + return ts + 10882 /* "sqlite_temp_mast..." */ } - return ts + 4956 /* "sqlite_master" */ + return ts + 4966 /* "sqlite_master" */ }() if !(Xsqlite3AuthCheck(tls, pParse, SQLITE_DELETE, zTab, uintptr(0), zDb) != 0) { goto __7 @@ -97145,9 +97747,9 @@ __9: } Xsqlite3BeginWriteOperation(tls, pParse, 1, iDb) Xsqlite3NestedParse(tls, pParse, - ts+13072, /* "DELETE FROM %Q.s..." */ + ts+13082, /* "DELETE FROM %Q.s..." */ libc.VaList(bp+16, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, (*Index)(unsafe.Pointer(pIndex)).FzName)) - sqlite3ClearStatTables(tls, pParse, iDb, ts+10212 /* "idx" */, (*Index)(unsafe.Pointer(pIndex)).FzName) + sqlite3ClearStatTables(tls, pParse, iDb, ts+10222 /* "idx" */, (*Index)(unsafe.Pointer(pIndex)).FzName) Xsqlite3ChangeCookie(tls, pParse, iDb) destroyRootPage(tls, pParse, int32((*Index)(unsafe.Pointer(pIndex)).Ftnum), iDb) Xsqlite3VdbeAddOp4(tls, v, OP_DropIndex, iDb, 0, 0, (*Index)(unsafe.Pointer(pIndex)).FzName, 0) @@ -97298,7 +97900,7 @@ func Xsqlite3SrcListEnlarge(tls *libc.TLS, pParse uintptr, pSrc uintptr, nExtra var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if ((*SrcList)(unsafe.Pointer(pSrc)).FnSrc + nExtra) >= SQLITE_MAX_SRCLIST { - Xsqlite3ErrorMsg(tls, pParse, ts+13132, /* "too many FROM cl..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+13142, /* "too many FROM cl..." */ libc.VaList(bp, SQLITE_MAX_SRCLIST)) return uintptr(0) } @@ -97510,12 +98112,12 @@ func Xsqlite3SrcListAppendFromTerm(tls *libc.TLS, pParse uintptr, p uintptr, pTa if !(!(p != 0) && ((pOn != 0) || (pUsing != 0))) { goto __1 } - Xsqlite3ErrorMsg(tls, pParse, ts+13168, /* "a JOIN clause is..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+13178, /* "a JOIN clause is..." */ libc.VaList(bp, func() uintptr { if pOn != 0 { - return ts + 13204 /* "ON" */ + return ts + 13214 /* "ON" */ } - return ts + 13207 /* "USING" */ + return ts + 13217 /* "USING" */ }())) goto append_from_error __1: @@ -97643,7 +98245,7 @@ func Xsqlite3BeginTransaction(tls *libc.TLS, pParse uintptr, type1 int32) { /* s db = (*Parse)(unsafe.Pointer(pParse)).Fdb - if Xsqlite3AuthCheck(tls, pParse, SQLITE_TRANSACTION, ts+13213 /* "BEGIN" */, uintptr(0), uintptr(0)) != 0 { + if Xsqlite3AuthCheck(tls, pParse, SQLITE_TRANSACTION, ts+13223 /* "BEGIN" */, uintptr(0), uintptr(0)) != 0 { return } v = Xsqlite3GetVdbe(tls, pParse) @@ -97679,9 +98281,9 @@ func Xsqlite3EndTransaction(tls *libc.TLS, pParse uintptr, eType int32) { /* sql if Xsqlite3AuthCheck(tls, pParse, SQLITE_TRANSACTION, func() uintptr { if isRollback != 0 { - return ts + 13219 /* "ROLLBACK" */ + return ts + 13229 /* "ROLLBACK" */ } - return ts + 13228 /* "COMMIT" */ + return ts + 13238 /* "COMMIT" */ }(), uintptr(0), uintptr(0)) != 0 { return } @@ -97706,7 +98308,7 @@ func Xsqlite3Savepoint(tls *libc.TLS, pParse uintptr, op int32, pName uintptr) { } } -var az = [3]uintptr{ts + 13213 /* "BEGIN" */, ts + 13235 /* "RELEASE" */, ts + 13219 /* "ROLLBACK" */} /* sqlite3.c:117293:23 */ +var az = [3]uintptr{ts + 13223 /* "BEGIN" */, ts + 13245 /* "RELEASE" */, ts + 13229 /* "ROLLBACK" */} /* sqlite3.c:117293:23 */ // Make sure the TEMP database is open and available for use. Return // the number of errors. Leave any error messages in the pParse structure. @@ -97722,7 +98324,7 @@ func Xsqlite3OpenTempDatabase(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3. rc = Xsqlite3BtreeOpen(tls, (*Sqlite3)(unsafe.Pointer(db)).FpVfs, uintptr(0), db, bp /* &pBt */, 0, flags) if rc != SQLITE_OK { Xsqlite3ErrorMsg(tls, pParse, - ts+13243 /* "unable to open a..." */, 0) + ts+13253 /* "unable to open a..." */, 0) (*Parse)(unsafe.Pointer(pParse)).Frc = rc return 1 } @@ -97865,17 +98467,17 @@ func Xsqlite3UniqueConstraint(tls *libc.TLS, pParse uintptr, onError int32, pIdx Xsqlite3StrAccumInit(tls, bp+8 /* &errMsg */, (*Parse)(unsafe.Pointer(pParse)).Fdb, uintptr(0), 0, *(*int32)(unsafe.Pointer(((*Parse)(unsafe.Pointer(pParse)).Fdb + 108 /* &.aLimit */)))) if (*Index)(unsafe.Pointer(pIdx)).FaColExpr != 0 { - Xsqlite3_str_appendf(tls, bp+8 /* &errMsg */, ts+13313 /* "index '%q'" */, libc.VaList(bp, (*Index)(unsafe.Pointer(pIdx)).FzName)) + Xsqlite3_str_appendf(tls, bp+8 /* &errMsg */, ts+13323 /* "index '%q'" */, libc.VaList(bp, (*Index)(unsafe.Pointer(pIdx)).FzName)) } else { for j = 0; j < int32((*Index)(unsafe.Pointer(pIdx)).FnKeyCol); j++ { var zCol uintptr zCol = (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(j)*2)))*20)).FzName if j != 0 { - Xsqlite3_str_append(tls, bp+8 /* &errMsg */, ts+13324 /* ", " */, 2) + Xsqlite3_str_append(tls, bp+8 /* &errMsg */, ts+13334 /* ", " */, 2) } Xsqlite3_str_appendall(tls, bp+8 /* &errMsg */, (*Table)(unsafe.Pointer(pTab)).FzName) - Xsqlite3_str_append(tls, bp+8 /* &errMsg */, ts+768 /* "." */, 1) + Xsqlite3_str_append(tls, bp+8 /* &errMsg */, ts+778 /* "." */, 1) Xsqlite3_str_appendall(tls, bp+8 /* &errMsg */, zCol) } } @@ -97898,11 +98500,11 @@ func Xsqlite3RowidConstraint(tls *libc.TLS, pParse uintptr, onError int32, pTab var zMsg uintptr var rc int32 if int32((*Table)(unsafe.Pointer(pTab)).FiPKey) >= 0 { - zMsg = Xsqlite3MPrintf(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, ts+10785 /* "%s.%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, + zMsg = Xsqlite3MPrintf(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, ts+10795 /* "%s.%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr((*Table)(unsafe.Pointer(pTab)).FiPKey)*20)).FzName)) rc = (SQLITE_CONSTRAINT | (int32(6) << 8)) } else { - zMsg = Xsqlite3MPrintf(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, ts+13327 /* "%s.rowid" */, libc.VaList(bp+16, (*Table)(unsafe.Pointer(pTab)).FzName)) + zMsg = Xsqlite3MPrintf(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, ts+13337 /* "%s.rowid" */, libc.VaList(bp+16, (*Table)(unsafe.Pointer(pTab)).FzName)) rc = (SQLITE_CONSTRAINT | (int32(10) << 8)) } Xsqlite3HaltConstraint(tls, pParse, rc, onError, zMsg, int8(-7), @@ -98045,7 +98647,7 @@ func Xsqlite3Reindex(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintp sqlite3RefillIndex(tls, pParse, pIndex, -1) return } - Xsqlite3ErrorMsg(tls, pParse, ts+13336 /* "unable to identi..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+13346 /* "unable to identi..." */, 0) } // Return a KeyInfo structure that is appropriate for the given Index. @@ -98155,7 +98757,7 @@ func Xsqlite3WithAdd(tls *libc.TLS, pParse uintptr, pWith uintptr, pCte uintptr) var i int32 for i = 0; i < (*With)(unsafe.Pointer(pWith)).FnCte; i++ { if Xsqlite3StrICmp(tls, zName, (*Cte)(unsafe.Pointer((pWith+12 /* &.a */)+uintptr(i)*24)).FzName) == 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+13382 /* "duplicate WITH t..." */, libc.VaList(bp, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+13392 /* "duplicate WITH t..." */, libc.VaList(bp, zName)) } } } @@ -98216,7 +98818,9 @@ func callCollNeeded(tls *libc.TLS, db uintptr, enc int32, zName uintptr) { /* sq if !(zExternal != 0) { return } - (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer((db + 268 /* &.xCollNeeded */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpCollNeededArg, db, enc, zExternal) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpCollNeededArg, db, enc, zExternal) Xsqlite3DbFree(tls, db, zExternal) } if (*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded16 != 0 { @@ -98225,7 +98829,9 @@ func callCollNeeded(tls *libc.TLS, db uintptr, enc int32, zName uintptr) { /* sq Xsqlite3ValueSetStr(tls, pTmp, -1, zName, uint8(SQLITE_UTF8), uintptr(0)) zExternal = Xsqlite3ValueText(tls, pTmp, uint8(SQLITE_UTF16LE)) if zExternal != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer((db + 272 /* &.xCollNeeded16 */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpCollNeededArg, db, int32((*Sqlite3)(unsafe.Pointer(db)).Fenc), zExternal) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded16})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpCollNeededArg, db, int32((*Sqlite3)(unsafe.Pointer(db)).Fenc), zExternal) } Xsqlite3ValueFree(tls, pTmp) } @@ -98389,7 +98995,7 @@ func Xsqlite3GetCollSeq(tls *libc.TLS, pParse uintptr, enc U8, pColl uintptr, zN } if p == uintptr(0) { - Xsqlite3ErrorMsg(tls, pParse, ts+13412 /* "no such collatio..." */, libc.VaList(bp, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+13422 /* "no such collatio..." */, libc.VaList(bp, zName)) (*Parse)(unsafe.Pointer(pParse)).Frc = (SQLITE_ERROR | (int32(1) << 8)) } return p @@ -98755,11 +99361,11 @@ func Xsqlite3IsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr, viewOk int3 defer tls.Free(16) if tabIsReadOnly(tls, pParse, pTab) != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+13443 /* "table %s may not..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+13453 /* "table %s may not..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) return 1 } if !(viewOk != 0) && ((*Table)(unsafe.Pointer(pTab)).FpSelect != 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+13472 /* "cannot modify %s..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+13482 /* "cannot modify %s..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) return 1 } return 0 @@ -99352,7 +99958,7 @@ __60: } Xsqlite3VdbeAddOp2(tls, v, OP_ChngCntRow, memCnt, 1) Xsqlite3VdbeSetNumCols(tls, v, 1) - Xsqlite3VdbeSetColName(tls, v, 0, COLNAME_NAME, ts+13510 /* "rows deleted" */, uintptr(0)) + Xsqlite3VdbeSetColName(tls, v, 0, COLNAME_NAME, ts+13520 /* "rows deleted" */, uintptr(0)) __61: ; @@ -99497,7 +100103,7 @@ func Xsqlite3GenerateRowDelete(tls *libc.TLS, pParse uintptr, pTab uintptr, pTri } return 0 }()) - if (int32((*Parse)(unsafe.Pointer(pParse)).Fnested) == 0) || (0 == Xsqlite3_stricmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+10072 /* "sqlite_stat1" */)) { + if (int32((*Parse)(unsafe.Pointer(pParse)).Fnested) == 0) || (0 == Xsqlite3_stricmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+10082 /* "sqlite_stat1" */)) { Xsqlite3VdbeAppendP4(tls, v, pTab, -6) } if int32(eMode) != ONEPASS_OFF { @@ -99775,7 +100381,7 @@ func typeofFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { / Xsqlite3_result_text(tls, context, azType2[i], -1, uintptr(0)) } -var azType2 = [5]uintptr{ts + 5268 /* "integer" */, ts + 5263 /* "real" */, ts + 13523 /* "text" */, ts + 13528 /* "blob" */, ts + 5258 /* "null" */} /* sqlite3.c:119398:21 */ +var azType2 = [5]uintptr{ts + 5278 /* "integer" */, ts + 5273 /* "real" */, ts + 13533 /* "text" */, ts + 13538 /* "blob" */, ts + 5268 /* "null" */} /* sqlite3.c:119398:21 */ // Implementation of the length() function func lengthFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119418:13: */ @@ -99839,7 +100445,7 @@ func absFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli // IMP: R-31676-45509 If X is the integer -9223372036854775808 // then abs(X) throws an integer overflow error since there is no // equivalent positive 64-bit two complement value. - Xsqlite3_result_error(tls, context, ts+13533 /* "integer overflow" */, -1) + Xsqlite3_result_error(tls, context, ts+13543 /* "integer overflow" */, -1) return } iVal = -iVal @@ -100170,14 +100776,14 @@ func roundFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq if (*(*float64)(unsafe.Pointer(bp + 16 /* r */)) < -4503599627370496.0) || (*(*float64)(unsafe.Pointer(bp + 16 /* r */)) > +4503599627370496.0) { // The value has no fractional part so there is nothing to round } else if n == 0 { - *(*float64)(unsafe.Pointer(bp + 16 /* r */)) = float64((Sqlite_int64(*(*float64)(unsafe.Pointer(bp + 16 /* r */)) + (func() float64 { + *(*float64)(unsafe.Pointer(bp + 16 /* r */)) = float64((libc.Int64FromFloat64(*(*float64)(unsafe.Pointer(bp + 16 /* r */)) + (func() float64 { if *(*float64)(unsafe.Pointer(bp + 16 /* r */)) < float64(0) { return -0.5 } return +0.5 }())))) } else { - zBuf = Xsqlite3_mprintf(tls, ts+13550 /* "%.*f" */, libc.VaList(bp, n, *(*float64)(unsafe.Pointer(bp + 16 /* r */)))) + zBuf = Xsqlite3_mprintf(tls, ts+13560 /* "%.*f" */, libc.VaList(bp, n, *(*float64)(unsafe.Pointer(bp + 16 /* r */)))) if zBuf == uintptr(0) { Xsqlite3_result_error_nomem(tls, context) return @@ -100627,7 +101233,7 @@ func likeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql nPat = Xsqlite3_value_bytes(tls, *(*uintptr)(unsafe.Pointer(argv))) if nPat > *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 8*4)) { - Xsqlite3_result_error(tls, context, ts+13555 /* "LIKE or GLOB pat..." */, -1) + Xsqlite3_result_error(tls, context, ts+13565 /* "LIKE or GLOB pat..." */, -1) return } if argc == 3 { @@ -100639,7 +101245,7 @@ func likeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql } if Xsqlite3Utf8CharLen(tls, *(*uintptr)(unsafe.Pointer(bp /* zEsc */)), -1) != 1 { Xsqlite3_result_error(tls, context, - ts+13588 /* "ESCAPE expressio..." */, -1) + ts+13598 /* "ESCAPE expressio..." */, -1) return } escape = Xsqlite3Utf8Read(tls, bp /* &zEsc */) @@ -100705,7 +101311,7 @@ func errlogFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s _ = argc _ = context - Xsqlite3_log(tls, Xsqlite3_value_int(tls, *(*uintptr)(unsafe.Pointer(argv))), ts+2790 /* "%s" */, libc.VaList(bp, Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv + 1*4))))) + Xsqlite3_log(tls, Xsqlite3_value_int(tls, *(*uintptr)(unsafe.Pointer(argv))), ts+2800 /* "%s" */, libc.VaList(bp, Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv + 1*4))))) } // Implementation of the sqlite_compileoption_used() function. @@ -100762,10 +101368,10 @@ func quoteFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq // var zBuf [50]int8 at bp+16, 50 r1 = Xsqlite3_value_double(tls, *(*uintptr)(unsafe.Pointer(argv))) - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([50]int8{})), bp+16 /* &zBuf[0] */, ts+4034 /* "%!.15g" */, libc.VaList(bp, r1)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([50]int8{})), bp+16 /* &zBuf[0] */, ts+4044 /* "%!.15g" */, libc.VaList(bp, r1)) Xsqlite3AtoF(tls, bp+16 /* &zBuf[0] */, bp+68 /* &r2 */, 20, uint8(SQLITE_UTF8)) if r1 != *(*float64)(unsafe.Pointer(bp + 68 /* r2 */)) { - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([50]int8{})), bp+16 /* &zBuf[0] */, ts+13633 /* "%!.20e" */, libc.VaList(bp+8, r1)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([50]int8{})), bp+16 /* &zBuf[0] */, ts+13643 /* "%!.20e" */, libc.VaList(bp+8, r1)) } Xsqlite3_result_text(tls, context, bp+16 /* &zBuf[0] */, -1, libc.UintptrFromInt32(-1)) break @@ -100839,7 +101445,7 @@ func quoteFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq default: { - Xsqlite3_result_text(tls, context, ts+756 /* "NULL" */, 4, uintptr(0)) + Xsqlite3_result_text(tls, context, ts+766 /* "NULL" */, 4, uintptr(0)) break } @@ -101150,7 +101756,7 @@ func trimFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql } var lenOne = [1]uint32{uint32(1)} /* sqlite3.c:120648:27 */ -var azOne = [1]uintptr{uintptr(ts + 9652 /* " " */)} /* sqlite3.c:120649:26 */ +var azOne = [1]uintptr{uintptr(ts + 9662 /* " " */)} /* sqlite3.c:120649:26 */ // IMP: R-25361-16150 This function is omitted from SQLite by default. It // is only available if the SQLITE_SOUNDEX compile-time option is used @@ -101171,7 +101777,7 @@ func soundexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* zIn = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv))) if zIn == uintptr(0) { - zIn = ts + 755 /* "" */ + zIn = ts + 765 /* "" */ } for i = 0; (*(*U8)(unsafe.Pointer(zIn + uintptr(i))) != 0) && !((int32(Xsqlite3CtypeMap[*(*U8)(unsafe.Pointer(zIn + uintptr(i)))]) & 0x02) != 0); i++ { } @@ -101197,7 +101803,7 @@ func soundexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* } else { // IMP: R-64894-50321 The string "?000" is returned if the argument // is NULL or contains no ASCII alphabetic characters. - Xsqlite3_result_text(tls, context, ts+13640 /* "?000" */, 4, uintptr(0)) + Xsqlite3_result_text(tls, context, ts+13650 /* "?000" */, 4, uintptr(0)) } } @@ -101225,7 +101831,7 @@ func loadExt(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli // Disallow the load_extension() SQL function unless the SQLITE_LoadExtFunc // flag is set. See the sqlite3_enable_load_extension() API. if ((*Sqlite3)(unsafe.Pointer(db)).Fflags & uint64(SQLITE_LoadExtFunc)) == uint64(0) { - Xsqlite3_result_error(tls, context, ts+10824 /* "not authorized" */, -1) + Xsqlite3_result_error(tls, context, ts+10834 /* "not authorized" */, -1) return } @@ -101243,12 +101849,12 @@ func loadExt(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli // An instance of the following structure holds the context of a // sum() or avg() aggregate computation. type SumCtx1 = struct { - FrSum float64 - FiSum I64 - Fcnt I64 - Foverflow U8 - Fapprox U8 - _ [2]byte + FrSum float64 + FiSum I64 + Fcnt I64 + Foverflow U8 + Fapprox U8 + F__ccgo_pad1 [2]byte } /* sqlite3.c:120823:9 */ // An instance of the following structure holds the context of a @@ -101313,7 +101919,7 @@ func sumFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120889:13: */ p = Xsqlite3_aggregate_context(tls, context, 0) if (p != 0) && ((*SumCtx)(unsafe.Pointer(p)).Fcnt > int64(0)) { if (*SumCtx)(unsafe.Pointer(p)).Foverflow != 0 { - Xsqlite3_result_error(tls, context, ts+13533 /* "integer overflow" */, -1) + Xsqlite3_result_error(tls, context, ts+13543 /* "integer overflow" */, -1) } else if (*SumCtx)(unsafe.Pointer(p)).Fapprox != 0 { Xsqlite3_result_double(tls, context, (*SumCtx)(unsafe.Pointer(p)).FrSum) } else { @@ -101467,7 +102073,7 @@ func groupConcatStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { zSep = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv + 1*4))) nSep = Xsqlite3_value_bytes(tls, *(*uintptr)(unsafe.Pointer(argv + 1*4))) } else { - zSep = ts + 11537 /* "," */ + zSep = ts + 11547 /* "," */ nSep = 1 } if zSep != 0 { @@ -101545,7 +102151,7 @@ func groupConcatValue(tls *libc.TLS, context uintptr) { /* sqlite3.c:121112:13: // of the built-in functions above are part of the global function set. // This routine only deals with those that are not global. func Xsqlite3RegisterPerConnectionBuiltinFunctions(tls *libc.TLS, db uintptr) { /* sqlite3.c:121135:21: */ - var rc int32 = Xsqlite3_overload_function(tls, db, ts+13645 /* "MATCH" */, 2) + var rc int32 = Xsqlite3_overload_function(tls, db, ts+13655 /* "MATCH" */, 2) if rc == SQLITE_NOMEM { Xsqlite3OomFault(tls, db) @@ -101565,14 +102171,14 @@ func Xsqlite3RegisterLikeFunctions(tls *libc.TLS, db uintptr, caseSensitive int3 pInfo = uintptr(unsafe.Pointer(&likeInfoNorm)) flags = SQLITE_FUNC_LIKE } - Xsqlite3CreateFunc(tls, db, ts+13651 /* "like" */, 2, SQLITE_UTF8, pInfo, *(*uintptr)(unsafe.Pointer(&struct { + Xsqlite3CreateFunc(tls, db, ts+13661 /* "like" */, 2, SQLITE_UTF8, pInfo, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{likeFunc})), uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0)) - Xsqlite3CreateFunc(tls, db, ts+13651 /* "like" */, 3, SQLITE_UTF8, pInfo, *(*uintptr)(unsafe.Pointer(&struct { + Xsqlite3CreateFunc(tls, db, ts+13661 /* "like" */, 3, SQLITE_UTF8, pInfo, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{likeFunc})), uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0)) - *(*U32)(unsafe.Pointer(Xsqlite3FindFunction(tls, db, ts+13651 /* "like" */, 2, uint8(SQLITE_UTF8), uint8(0)) + 4 /* &.funcFlags */)) |= (U32(flags)) - *(*U32)(unsafe.Pointer(Xsqlite3FindFunction(tls, db, ts+13651 /* "like" */, 3, uint8(SQLITE_UTF8), uint8(0)) + 4 /* &.funcFlags */)) |= (U32(flags)) + *(*U32)(unsafe.Pointer(Xsqlite3FindFunction(tls, db, ts+13661 /* "like" */, 2, uint8(SQLITE_UTF8), uint8(0)) + 4 /* &.funcFlags */)) |= (U32(flags)) + *(*U32)(unsafe.Pointer(Xsqlite3FindFunction(tls, db, ts+13661 /* "like" */, 3, uint8(SQLITE_UTF8), uint8(0)) + 4 /* &.funcFlags */)) |= (U32(flags)) } // pExpr points to an expression which implements a function. If @@ -101677,76 +102283,76 @@ func Xsqlite3RegisterBuiltinFunctions(tls *libc.TLS) { /* sqlite3.c:121427:21: * var aBuiltinFunc = [68]FuncDef{ //**** Functions only available with SQLITE_TESTCTRL_INTERNAL_FUNCTIONS **** - {FnArg: int8(2), FfuncFlags: (U32(((((SQLITE_UTF8 | SQLITE_FUNC_INTERNAL) | SQLITE_FUNC_TEST) | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_implies_nonnull_row), FxSFunc: 0, FzName: ts + 13656 /* "implies_nonnull_..." */}, - {FnArg: int8(2), FfuncFlags: (U32(((((SQLITE_UTF8 | SQLITE_FUNC_INTERNAL) | SQLITE_FUNC_TEST) | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_expr_compare), FxSFunc: 0, FzName: ts + 13676 /* "expr_compare" */}, - {FnArg: int8(2), FfuncFlags: (U32(((((SQLITE_UTF8 | SQLITE_FUNC_INTERNAL) | SQLITE_FUNC_TEST) | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_expr_implies_expr), FxSFunc: 0, FzName: ts + 13689 /* "expr_implies_exp..." */}, + {FnArg: int8(2), FfuncFlags: (U32(((((SQLITE_UTF8 | SQLITE_FUNC_INTERNAL) | SQLITE_FUNC_TEST) | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_implies_nonnull_row), FxSFunc: 0, FzName: ts + 13666 /* "implies_nonnull_..." */}, + {FnArg: int8(2), FfuncFlags: (U32(((((SQLITE_UTF8 | SQLITE_FUNC_INTERNAL) | SQLITE_FUNC_TEST) | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_expr_compare), FxSFunc: 0, FzName: ts + 13686 /* "expr_compare" */}, + {FnArg: int8(2), FfuncFlags: (U32(((((SQLITE_UTF8 | SQLITE_FUNC_INTERNAL) | SQLITE_FUNC_TEST) | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_expr_implies_expr), FxSFunc: 0, FzName: ts + 13699 /* "expr_implies_exp..." */}, //**** Regular functions **** - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13707 /* "soundex" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_DIRECTONLY) | SQLITE_FUNC_UNSAFE)), FxSFunc: 0, FzName: ts + 13715 /* "load_extension" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_DIRECTONLY) | SQLITE_FUNC_UNSAFE)), FxSFunc: 0, FzName: ts + 13715 /* "load_extension" */}, - {FnArg: int8(1), FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 13730 /* "sqlite_compileop..." */}, - {FnArg: int8(1), FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 13756 /* "sqlite_compileop..." */}, - {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (SQLITE_FUNC_UNLIKELY))), FpUserData: uintptr(INLINEFUNC_unlikely), FxSFunc: 0, FzName: ts + 13781 /* "unlikely" */}, - {FnArg: int8(2), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (SQLITE_FUNC_UNLIKELY))), FpUserData: uintptr(INLINEFUNC_unlikely), FxSFunc: 0, FzName: ts + 13790 /* "likelihood" */}, - {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (SQLITE_FUNC_UNLIKELY))), FpUserData: uintptr(INLINEFUNC_unlikely), FxSFunc: 0, FzName: ts + 13801 /* "likely" */}, - {FnArg: int8(1), FfuncFlags: (U32((((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_OFFSET) | SQLITE_FUNC_TYPEOF)), FxSFunc: 0, FzName: ts + 13808 /* "sqlite_offset" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FxSFunc: 0, FzName: ts + 13822 /* "ltrim" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FxSFunc: 0, FzName: ts + 13822 /* "ltrim" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(2), FxSFunc: 0, FzName: ts + 13828 /* "rtrim" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(2), FxSFunc: 0, FzName: ts + 13828 /* "rtrim" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(3), FxSFunc: 0, FzName: ts + 13834 /* "trim" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(3), FxSFunc: 0, FzName: ts + 13834 /* "trim" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13839 /* "min" */}, - {FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FzName: ts + 13839 /* "min" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (1 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_MINMAX)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FzName: ts + 13839 /* "min" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FxSFunc: 0, FzName: ts + 13843 /* "max" */}, - {FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FzName: ts + 13843 /* "max" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (1 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_MINMAX)), FpUserData: uintptr(1), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FzName: ts + 13843 /* "max" */}, - {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_TYPEOF)), FxSFunc: 0, FzName: ts + 13847 /* "typeof" */}, - {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_LENGTH)), FxSFunc: 0, FzName: ts + 13854 /* "length" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13861 /* "instr" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13867 /* "printf" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13874 /* "unicode" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13882 /* "char" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13887 /* "abs" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13891 /* "round" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13891 /* "round" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13897 /* "upper" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13903 /* "lower" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13909 /* "hex" */}, - {FnArg: int8(2), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FxSFunc: 0, FzName: ts + 13913 /* "ifnull" */}, - {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13920 /* "random" */}, - {FnArg: int8(1), FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13927 /* "randomblob" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13938 /* "nullif" */}, - {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 13945 /* "sqlite_version" */}, - {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 13960 /* "sqlite_source_id" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13977 /* "sqlite_log" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13988 /* "quote" */}, - {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13994 /* "last_insert_rowi..." */}, - {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14012 /* "changes" */}, - {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14020 /* "total_changes" */}, - {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14034 /* "replace" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14042 /* "zeroblob" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14051 /* "substr" */}, - {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14051 /* "substr" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14058 /* "substring" */}, - {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14058 /* "substring" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 14068 /* "sum" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 14072 /* "total" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 14078 /* "avg" */}, - {FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_COUNT)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 14082 /* "count" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 14082 /* "count" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 14088 /* "group_concat" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 14088 /* "group_concat" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13717 /* "soundex" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_DIRECTONLY) | SQLITE_FUNC_UNSAFE)), FxSFunc: 0, FzName: ts + 13725 /* "load_extension" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_DIRECTONLY) | SQLITE_FUNC_UNSAFE)), FxSFunc: 0, FzName: ts + 13725 /* "load_extension" */}, + {FnArg: int8(1), FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 13740 /* "sqlite_compileop..." */}, + {FnArg: int8(1), FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 13766 /* "sqlite_compileop..." */}, + {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (SQLITE_FUNC_UNLIKELY))), FpUserData: uintptr(INLINEFUNC_unlikely), FxSFunc: 0, FzName: ts + 13791 /* "unlikely" */}, + {FnArg: int8(2), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (SQLITE_FUNC_UNLIKELY))), FpUserData: uintptr(INLINEFUNC_unlikely), FxSFunc: 0, FzName: ts + 13800 /* "likelihood" */}, + {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (SQLITE_FUNC_UNLIKELY))), FpUserData: uintptr(INLINEFUNC_unlikely), FxSFunc: 0, FzName: ts + 13811 /* "likely" */}, + {FnArg: int8(1), FfuncFlags: (U32((((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_OFFSET) | SQLITE_FUNC_TYPEOF)), FxSFunc: 0, FzName: ts + 13818 /* "sqlite_offset" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FxSFunc: 0, FzName: ts + 13832 /* "ltrim" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FxSFunc: 0, FzName: ts + 13832 /* "ltrim" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(2), FxSFunc: 0, FzName: ts + 13838 /* "rtrim" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(2), FxSFunc: 0, FzName: ts + 13838 /* "rtrim" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(3), FxSFunc: 0, FzName: ts + 13844 /* "trim" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(3), FxSFunc: 0, FzName: ts + 13844 /* "trim" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13849 /* "min" */}, + {FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FzName: ts + 13849 /* "min" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (1 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_MINMAX)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FzName: ts + 13849 /* "min" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FxSFunc: 0, FzName: ts + 13853 /* "max" */}, + {FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FzName: ts + 13853 /* "max" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (1 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_MINMAX)), FpUserData: uintptr(1), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FzName: ts + 13853 /* "max" */}, + {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_TYPEOF)), FxSFunc: 0, FzName: ts + 13857 /* "typeof" */}, + {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_LENGTH)), FxSFunc: 0, FzName: ts + 13864 /* "length" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13871 /* "instr" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13877 /* "printf" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13884 /* "unicode" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13892 /* "char" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13897 /* "abs" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13901 /* "round" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13901 /* "round" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13907 /* "upper" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13913 /* "lower" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13919 /* "hex" */}, + {FnArg: int8(2), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FxSFunc: 0, FzName: ts + 13923 /* "ifnull" */}, + {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13930 /* "random" */}, + {FnArg: int8(1), FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13937 /* "randomblob" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13948 /* "nullif" */}, + {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 13955 /* "sqlite_version" */}, + {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 13970 /* "sqlite_source_id" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13987 /* "sqlite_log" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 13998 /* "quote" */}, + {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14004 /* "last_insert_rowi..." */}, + {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14022 /* "changes" */}, + {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14030 /* "total_changes" */}, + {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14044 /* "replace" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14052 /* "zeroblob" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14061 /* "substr" */}, + {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14061 /* "substr" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14068 /* "substring" */}, + {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14068 /* "substring" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 14078 /* "sum" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 14082 /* "total" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 14088 /* "avg" */}, + {FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_COUNT)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 14092 /* "count" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 14092 /* "count" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 14098 /* "group_concat" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 14098 /* "group_concat" */}, - {FnArg: int8(2), FfuncFlags: (U32(((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | SQLITE_FUNC_LIKE) | SQLITE_FUNC_CASE)), FpUserData: 0, FxSFunc: 0, FzName: ts + 14101 /* "glob" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | SQLITE_FUNC_LIKE)), FpUserData: 0, FxSFunc: 0, FzName: ts + 13651 /* "like" */}, - {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | SQLITE_FUNC_LIKE)), FpUserData: 0, FxSFunc: 0, FzName: ts + 13651 /* "like" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FzName: ts + 14106 /* "coalesce" */}, - {FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FzName: ts + 14106 /* "coalesce" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14115 /* "sign" */}, - {FnArg: int8(-1), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FxSFunc: 0, FzName: ts + 14106 /* "coalesce" */}, - {FnArg: int8(3), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_iif), FxSFunc: 0, FzName: ts + 14120 /* "iif" */}} /* sqlite3.c:121438:18 */ + {FnArg: int8(2), FfuncFlags: (U32(((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | SQLITE_FUNC_LIKE) | SQLITE_FUNC_CASE)), FpUserData: 0, FxSFunc: 0, FzName: ts + 14111 /* "glob" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | SQLITE_FUNC_LIKE)), FpUserData: 0, FxSFunc: 0, FzName: ts + 13661 /* "like" */}, + {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | SQLITE_FUNC_LIKE)), FpUserData: 0, FxSFunc: 0, FzName: ts + 13661 /* "like" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FzName: ts + 14116 /* "coalesce" */}, + {FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FzName: ts + 14116 /* "coalesce" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14125 /* "sign" */}, + {FnArg: int8(-1), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FxSFunc: 0, FzName: ts + 14116 /* "coalesce" */}, + {FnArg: int8(3), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_iif), FxSFunc: 0, FzName: ts + 14130 /* "iif" */}} /* sqlite3.c:121438:18 */ //************* End of func.c *********************************************** //************* Begin file fkey.c ******************************************* @@ -102032,7 +102638,7 @@ func Xsqlite3FkLocateIndex(tls *libc.TLS, pParse uintptr, pParent uintptr, pFKey if !(pIdx != 0) { if !(int32((*Parse)(unsafe.Pointer(pParse)).FdisableTriggers) != 0) { Xsqlite3ErrorMsg(tls, pParse, - ts+14124, /* "foreign key mism..." */ + ts+14134, /* "foreign key mism..." */ libc.VaList(bp, (*Table)(unsafe.Pointer((*FKey)(unsafe.Pointer(pFKey)).FpFrom)).FzName, (*FKey)(unsafe.Pointer(pFKey)).FzTo)) } Xsqlite3DbFree(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, aiCol) @@ -102928,8 +103534,8 @@ func fkActionTrigger(tls *libc.TLS, pParse uintptr, pTab uintptr, pFKey uintptr, } for i = 0; i < (*FKey)(unsafe.Pointer(pFKey)).FnCol; i++ { - *(*Token)(unsafe.Pointer(bp + 24 /* tOld */)) = Token{Fz: ts + 5467 /* "old" */, Fn: uint32(3)} // Literal "old" token - *(*Token)(unsafe.Pointer(bp + 32 /* tNew */)) = Token{Fz: ts + 5463 /* "new" */, Fn: uint32(3)} // Literal "new" token + *(*Token)(unsafe.Pointer(bp + 24 /* tOld */)) = Token{Fz: ts + 5477 /* "old" */, Fn: uint32(3)} // Literal "old" token + *(*Token)(unsafe.Pointer(bp + 32 /* tNew */)) = Token{Fz: ts + 5473 /* "new" */, Fn: uint32(3)} // Literal "new" token // var tFromCol Token at bp+16, 8 // Name of column in child table // var tToCol Token at bp+8, 8 @@ -103017,7 +103623,7 @@ func fkActionTrigger(tls *libc.TLS, pParse uintptr, pTab uintptr, pFKey uintptr, (*Token)(unsafe.Pointer(bp + 40 /* &tFrom */)).Fz = zFrom (*Token)(unsafe.Pointer(bp + 40 /* &tFrom */)).Fn = uint32(nFrom) - pRaise = Xsqlite3Expr(tls, db, TK_RAISE, ts+4250 /* "FOREIGN KEY cons..." */) + pRaise = Xsqlite3Expr(tls, db, TK_RAISE, ts+4260 /* "FOREIGN KEY cons..." */) if pRaise != 0 { (*Expr)(unsafe.Pointer(pRaise)).FaffExpr = int8(OE_Abort) } @@ -103447,7 +104053,7 @@ func Xsqlite3ComputeGeneratedColumns(tls *libc.TLS, pParse uintptr, iRegStore in } } if pRedo != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+6944 /* "generated column..." */, libc.VaList(bp, (*Column)(unsafe.Pointer(pRedo)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+6954 /* "generated column..." */, libc.VaList(bp, (*Column)(unsafe.Pointer(pRedo)).FzName)) } (*Parse)(unsafe.Pointer(pParse)).FiSelfTab = 0 } @@ -104011,7 +104617,7 @@ __23: goto __24 } Xsqlite3ErrorMsg(tls, pParse, - ts+14169, /* "cannot INSERT in..." */ + ts+14179, /* "cannot INSERT in..." */ libc.VaList(bp, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(j)*20)).FzName)) goto insert_cleanup __24: @@ -104036,7 +104642,7 @@ __20: bIdListInOrder = U8(0) goto __27 __26: - Xsqlite3ErrorMsg(tls, pParse, ts+14210, /* "table %S has no ..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+14220, /* "table %S has no ..." */ libc.VaList(bp+8, pTabList+8 /* &.a */, (*IdList_item)(unsafe.Pointer((*IdList)(unsafe.Pointer(pColumn)).Fa+uintptr(i)*8)).FzName)) (*Parse)(unsafe.Pointer(pParse)).FcheckSchema = U8(1) goto insert_cleanup @@ -104206,7 +104812,7 @@ __42: goto __47 } Xsqlite3ErrorMsg(tls, pParse, - ts+14242, /* "table %S has %d ..." */ + ts+14252, /* "table %S has %d ..." */ libc.VaList(bp+24, pTabList+8 /* &.a */, (int32((*Table)(unsafe.Pointer(pTab)).FnCol)-nHidden), nColumn)) goto insert_cleanup __47: @@ -104216,7 +104822,7 @@ __36: if !((pColumn != uintptr(0)) && (nColumn != (*IdList)(unsafe.Pointer(pColumn)).FnId)) { goto __48 } - Xsqlite3ErrorMsg(tls, pParse, ts+14294 /* "%d values for %d..." */, libc.VaList(bp+48, nColumn, (*IdList)(unsafe.Pointer(pColumn)).FnId)) + Xsqlite3ErrorMsg(tls, pParse, ts+14304 /* "%d values for %d..." */, libc.VaList(bp+48, nColumn, (*IdList)(unsafe.Pointer(pColumn)).FnId)) goto insert_cleanup __48: ; @@ -104272,7 +104878,7 @@ __50: if !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) { goto __56 } - Xsqlite3ErrorMsg(tls, pParse, ts+14319, /* "UPSERT not imple..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+14329, /* "UPSERT not imple..." */ libc.VaList(bp+64, (*Table)(unsafe.Pointer(pTab)).FzName)) goto insert_cleanup __56: @@ -104280,7 +104886,7 @@ __56: if !((*Table)(unsafe.Pointer(pTab)).FpSelect != 0) { goto __57 } - Xsqlite3ErrorMsg(tls, pParse, ts+14365 /* "cannot UPSERT a ..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+14375 /* "cannot UPSERT a ..." */, 0) goto insert_cleanup __57: ; @@ -104760,7 +105366,7 @@ __122: } Xsqlite3VdbeAddOp2(tls, v, OP_ChngCntRow, regRowCount, 1) Xsqlite3VdbeSetNumCols(tls, v, 1) - Xsqlite3VdbeSetColName(tls, v, 0, COLNAME_NAME, ts+14386 /* "rows inserted" */, uintptr(0)) + Xsqlite3VdbeSetColName(tls, v, 0, COLNAME_NAME, ts+14396 /* "rows inserted" */, uintptr(0)) __123: ; @@ -105103,7 +105709,7 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt fallthrough case OE_Fail: { - var zMsg uintptr = Xsqlite3MPrintf(tls, db, ts+10785 /* "%s.%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, + var zMsg uintptr = Xsqlite3MPrintf(tls, db, ts+10795 /* "%s.%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, (*Column)(unsafe.Pointer(pCol)).FzName)) Xsqlite3VdbeAddOp3(tls, v, OP_HaltIfNull, (SQLITE_CONSTRAINT | (int32(5) << 8)), onError, iReg) @@ -106506,7 +107112,7 @@ __1: if !(zSql == uintptr(0)) { goto __2 } - zSql = ts + 755 /* "" */ + zSql = ts + 765 /* "" */ __2: ; @@ -106606,7 +107212,9 @@ __18: *(*uintptr)(unsafe.Pointer(azVals + uintptr(i)*4)) = uintptr(0) __15: ; - if !((*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(&xCallback)))(tls, pArg, nCol, azVals, azCols) != 0) { + if !((*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xCallback})).f(tls, pArg, nCol, azVals, azCols) != 0) { goto __20 } // EVIDENCE-OF: R-38229-40159 If the callback function to @@ -107067,7 +107675,7 @@ __1: if !(pzErrMsg != 0) { goto __3 } - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+10824 /* "not authorized" */, 0) + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+10834 /* "not authorized" */, 0) __3: ; return SQLITE_ERROR @@ -107077,7 +107685,7 @@ __2: if zProc != 0 { zEntry = zProc } else { - zEntry = ts + 14400 /* "sqlite3_extensio..." */ + zEntry = ts + 14410 /* "sqlite3_extensio..." */ } // tag-20210611-1. Some dlopen() implementations will segfault if given @@ -107097,7 +107705,7 @@ __5: if !((ii < (int32(uint32(unsafe.Sizeof(azEndings)) / uint32(unsafe.Sizeof(uintptr(0)))))) && (handle == uintptr(0))) { goto __7 } - zAltFile = Xsqlite3_mprintf(tls, ts+10785 /* "%s.%s" */, libc.VaList(bp, zFile, azEndings[ii])) + zAltFile = Xsqlite3_mprintf(tls, ts+10795 /* "%s.%s" */, libc.VaList(bp, zFile, azEndings[ii])) if !(zAltFile == uintptr(0)) { goto __8 } @@ -107143,7 +107751,7 @@ __9: return SQLITE_NOMEM __11: ; - libc.Xmemcpy(tls, zAltEntry, ts+14423 /* "sqlite3_" */, uint32(8)) + libc.Xmemcpy(tls, zAltEntry, ts+14433 /* "sqlite3_" */, uint32(8)) iFile = (ncFile - 1) __12: if !((iFile >= 0) && !((int32(*(*int8)(unsafe.Pointer(zFile + uintptr(iFile))))) == '/')) { @@ -107157,7 +107765,7 @@ __13: __14: ; iFile++ - if !(Xsqlite3_strnicmp(tls, (zFile+uintptr(iFile)), ts+14432 /* "lib" */, 3) == 0) { + if !(Xsqlite3_strnicmp(tls, (zFile+uintptr(iFile)), ts+14442 /* "lib" */, 3) == 0) { goto __15 } iFile = iFile + (3) @@ -107181,7 +107789,7 @@ __17: goto __18 __18: ; - libc.Xmemcpy(tls, (zAltEntry + uintptr(iEntry)), ts+14436 /* "_init" */, uint32(6)) + libc.Xmemcpy(tls, (zAltEntry + uintptr(iEntry)), ts+14446 /* "_init" */, uint32(6)) zEntry = zAltEntry xInit = Xsqlite3OsDlSym(tls, pVfs, handle, zEntry) __10: @@ -107199,7 +107807,7 @@ __10: } // zErrmsg would be NULL if not so Xsqlite3_snprintf(tls, int32(nMsg), *(*uintptr)(unsafe.Pointer(bp + 56 /* zErrmsg */)), - ts+14442 /* "no entry point [..." */, libc.VaList(bp+16, zEntry, zFile)) + ts+14452 /* "no entry point [..." */, libc.VaList(bp+16, zEntry, zFile)) Xsqlite3OsDlError(tls, pVfs, (int32(nMsg - uint64(1))), *(*uintptr)(unsafe.Pointer(bp + 56 /* zErrmsg */))) __22: ; @@ -107211,7 +107819,9 @@ __21: __20: ; Xsqlite3_free(tls, zAltEntry) - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(&xInit)))(tls, db, bp+56 /* &zErrmsg */, uintptr(unsafe.Pointer(&sqlite3Apis))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xInit})).f(tls, db, bp+56 /* &zErrmsg */, uintptr(unsafe.Pointer(&sqlite3Apis))) if !(rc != 0) { goto __23 } @@ -107224,7 +107834,7 @@ __24: if !(pzErrMsg != 0) { goto __25 } - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+14485 /* "error during ini..." */, libc.VaList(bp+32, *(*uintptr)(unsafe.Pointer(bp + 56 /* zErrmsg */)))) + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+14495 /* "error during ini..." */, libc.VaList(bp+32, *(*uintptr)(unsafe.Pointer(bp + 56 /* zErrmsg */)))) __25: ; Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 56 /* zErrmsg */))) @@ -107264,7 +107874,7 @@ extension_not_found: } // zErrmsg would be NULL if not so Xsqlite3_snprintf(tls, int32(nMsg), *(*uintptr)(unsafe.Pointer(bp + 56 /* zErrmsg */)), - ts+14517 /* "unable to open s..." */, libc.VaList(bp+40, FILENAME_MAX, zFile)) + ts+14527 /* "unable to open s..." */, libc.VaList(bp+40, FILENAME_MAX, zFile)) Xsqlite3OsDlError(tls, pVfs, (int32(nMsg - uint64(1))), *(*uintptr)(unsafe.Pointer(bp + 56 /* zErrmsg */))) __29: ; @@ -107274,7 +107884,7 @@ __28: } var azEndings = [1]uintptr{ - ts + 14554, /* "so" */ + ts + 14564, /* "so" */ } /* sqlite3.c:127457:21 */ func Xsqlite3_load_extension(tls *libc.TLS, db uintptr, zFile uintptr, zProc uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:127590:16: */ @@ -107438,9 +108048,11 @@ func Xsqlite3AutoLoadExtensions(tls *libc.TLS, db uintptr) { /* sqlite3.c:127761 } Xsqlite3_mutex_leave(tls, mutex) *(*uintptr)(unsafe.Pointer(bp + 8 /* zErrmsg */)) = uintptr(0) - if (xInit != 0) && ((libc.AssignInt32(&rc, (*(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(&xInit)))(tls, db, bp+8 /* &zErrmsg */, pThunk))) != 0) { + if (xInit != 0) && ((libc.AssignInt32(&rc, (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xInit})).f(tls, db, bp+8 /* &zErrmsg */, pThunk))) != 0) { Xsqlite3ErrorWithMsg(tls, db, rc, - ts+14557 /* "automatic extens..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErrmsg */)))) + ts+14567 /* "automatic extens..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErrmsg */)))) go1 = 0 } Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErrmsg */))) @@ -107485,61 +108097,61 @@ func Xsqlite3AutoLoadExtensions(tls *libc.TLS, db uintptr) { /* sqlite3.c:127761 // or that return single-column results where the name of the // result column is different from the name of the pragma var pragCName = [51]uintptr{ - /* 0 */ ts + 4171, /* "id" */ // Used by: foreign_key_list - /* 1 */ ts + 14596, /* "seq" */ - /* 2 */ ts + 7823, /* "table" */ - /* 3 */ ts + 14600, /* "from" */ - /* 4 */ ts + 14605, /* "to" */ - /* 5 */ ts + 14608, /* "on_update" */ - /* 6 */ ts + 14618, /* "on_delete" */ - /* 7 */ ts + 14628, /* "match" */ - /* 8 */ ts + 14634, /* "cid" */ // Used by: table_xinfo - /* 9 */ ts + 14638, /* "name" */ - /* 10 */ ts + 14643, /* "type" */ - /* 11 */ ts + 14648, /* "notnull" */ - /* 12 */ ts + 14656, /* "dflt_value" */ - /* 13 */ ts + 14667, /* "pk" */ - /* 14 */ ts + 14670, /* "hidden" */ + /* 0 */ ts + 4181, /* "id" */ // Used by: foreign_key_list + /* 1 */ ts + 14606, /* "seq" */ + /* 2 */ ts + 7833, /* "table" */ + /* 3 */ ts + 14610, /* "from" */ + /* 4 */ ts + 14615, /* "to" */ + /* 5 */ ts + 14618, /* "on_update" */ + /* 6 */ ts + 14628, /* "on_delete" */ + /* 7 */ ts + 14638, /* "match" */ + /* 8 */ ts + 14644, /* "cid" */ // Used by: table_xinfo + /* 9 */ ts + 14648, /* "name" */ + /* 10 */ ts + 14653, /* "type" */ + /* 11 */ ts + 14658, /* "notnull" */ + /* 12 */ ts + 14666, /* "dflt_value" */ + /* 13 */ ts + 14677, /* "pk" */ + /* 14 */ ts + 14680, /* "hidden" */ // table_info reuses 8 - /* 15 */ ts + 14677, /* "seqno" */ // Used by: index_xinfo - /* 16 */ ts + 14634, /* "cid" */ - /* 17 */ ts + 14638, /* "name" */ - /* 18 */ ts + 14683, /* "desc" */ - /* 19 */ ts + 14688, /* "coll" */ - /* 20 */ ts + 14693, /* "key" */ - /* 21 */ ts + 14638, /* "name" */ // Used by: function_list - /* 22 */ ts + 14697, /* "builtin" */ - /* 23 */ ts + 14643, /* "type" */ - /* 24 */ ts + 14705, /* "enc" */ - /* 25 */ ts + 14709, /* "narg" */ - /* 26 */ ts + 14714, /* "flags" */ - /* 27 */ ts + 10216, /* "tbl" */ // Used by: stats - /* 28 */ ts + 10212, /* "idx" */ - /* 29 */ ts + 14720, /* "wdth" */ - /* 30 */ ts + 14725, /* "hght" */ - /* 31 */ ts + 14730, /* "flgs" */ - /* 32 */ ts + 14596, /* "seq" */ // Used by: index_list - /* 33 */ ts + 14638, /* "name" */ - /* 34 */ ts + 14735, /* "unique" */ - /* 35 */ ts + 14742, /* "origin" */ - /* 36 */ ts + 14749, /* "partial" */ - /* 37 */ ts + 7823, /* "table" */ // Used by: foreign_key_check - /* 38 */ ts + 14757, /* "rowid" */ - /* 39 */ ts + 4174, /* "parent" */ - /* 40 */ ts + 14763, /* "fkid" */ + /* 15 */ ts + 14687, /* "seqno" */ // Used by: index_xinfo + /* 16 */ ts + 14644, /* "cid" */ + /* 17 */ ts + 14648, /* "name" */ + /* 18 */ ts + 14693, /* "desc" */ + /* 19 */ ts + 14698, /* "coll" */ + /* 20 */ ts + 14703, /* "key" */ + /* 21 */ ts + 14648, /* "name" */ // Used by: function_list + /* 22 */ ts + 14707, /* "builtin" */ + /* 23 */ ts + 14653, /* "type" */ + /* 24 */ ts + 14715, /* "enc" */ + /* 25 */ ts + 14719, /* "narg" */ + /* 26 */ ts + 14724, /* "flags" */ + /* 27 */ ts + 10226, /* "tbl" */ // Used by: stats + /* 28 */ ts + 10222, /* "idx" */ + /* 29 */ ts + 14730, /* "wdth" */ + /* 30 */ ts + 14735, /* "hght" */ + /* 31 */ ts + 14740, /* "flgs" */ + /* 32 */ ts + 14606, /* "seq" */ // Used by: index_list + /* 33 */ ts + 14648, /* "name" */ + /* 34 */ ts + 14745, /* "unique" */ + /* 35 */ ts + 14752, /* "origin" */ + /* 36 */ ts + 14759, /* "partial" */ + /* 37 */ ts + 7833, /* "table" */ // Used by: foreign_key_check + /* 38 */ ts + 14767, /* "rowid" */ + /* 39 */ ts + 4184, /* "parent" */ + /* 40 */ ts + 14773, /* "fkid" */ // index_info reuses 15 - /* 41 */ ts + 14596, /* "seq" */ // Used by: database_list - /* 42 */ ts + 14638, /* "name" */ - /* 43 */ ts + 14768, /* "file" */ - /* 44 */ ts + 14773, /* "busy" */ // Used by: wal_checkpoint - /* 45 */ ts + 14778, /* "log" */ - /* 46 */ ts + 14782, /* "checkpointed" */ + /* 41 */ ts + 14606, /* "seq" */ // Used by: database_list + /* 42 */ ts + 14648, /* "name" */ + /* 43 */ ts + 14778, /* "file" */ + /* 44 */ ts + 14783, /* "busy" */ // Used by: wal_checkpoint + /* 45 */ ts + 14788, /* "log" */ + /* 46 */ ts + 14792, /* "checkpointed" */ // collation_list reuses 32 - /* 47 */ ts + 14795, /* "database" */ // Used by: lock_status - /* 48 */ ts + 14804, /* "status" */ - /* 49 */ ts + 14811, /* "cache_size" */ // Used by: default_cache_size + /* 47 */ ts + 14805, /* "database" */ // Used by: lock_status + /* 48 */ ts + 14814, /* "status" */ + /* 49 */ ts + 14821, /* "cache_size" */ // Used by: default_cache_size // module_list pragma_list reuses 9 - /* 50 */ ts + 14822, /* "timeout" */ // Used by: busy_timeout + /* 50 */ ts + 14832, /* "timeout" */ // Used by: busy_timeout } /* sqlite3.c:127901:19 */ // Definitions of all built-in pragmas @@ -107555,234 +108167,234 @@ type PragmaName1 = struct { // Definitions of all built-in pragmas type PragmaName = PragmaName1 /* sqlite3.c:127967:3 */ var aPragmaName = [65]PragmaName{ - { /* zName: */ FzName: ts + 14830, /* "analysis_limit" */ + { /* zName: */ FzName: ts + 14840, /* "analysis_limit" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_ANALYSIS_LIMIT), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0)}, - { /* zName: */ FzName: ts + 14845, /* "application_id" */ + { /* zName: */ FzName: ts + 14855, /* "application_id" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_HEADER_VALUE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_NoColumns1 | PragFlg_Result0)), /* iArg: */ FiArg: uint64(BTREE_APPLICATION_ID)}, - { /* zName: */ FzName: ts + 14860, /* "auto_vacuum" */ + { /* zName: */ FzName: ts + 14870, /* "auto_vacuum" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_AUTO_VACUUM), /* ePragFlg: */ FmPragFlg: (U8(((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_SchemaReq) | PragFlg_NoColumns1))}, - { /* zName: */ FzName: ts + 14872, /* "automatic_index" */ + { /* zName: */ FzName: ts + 14882, /* "automatic_index" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_AutoIndex)}, - { /* zName: */ FzName: ts + 14888, /* "busy_timeout" */ + { /* zName: */ FzName: ts + 14898, /* "busy_timeout" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_BUSY_TIMEOUT), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0), /* ColNames: */ FiPragCName: U8(50), FnPragCName: U8(1)}, - { /* zName: */ FzName: ts + 14811, /* "cache_size" */ + { /* zName: */ FzName: ts + 14821, /* "cache_size" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_CACHE_SIZE), /* ePragFlg: */ FmPragFlg: (U8(((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_SchemaReq) | PragFlg_NoColumns1))}, - { /* zName: */ FzName: ts + 14901, /* "cache_spill" */ + { /* zName: */ FzName: ts + 14911, /* "cache_spill" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_CACHE_SPILL), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_Result0 | PragFlg_SchemaReq) | PragFlg_NoColumns1))}, - { /* zName: */ FzName: ts + 14913, /* "case_sensitive_l..." */ + { /* zName: */ FzName: ts + 14923, /* "case_sensitive_l..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_CASE_SENSITIVE_LIKE), /* ePragFlg: */ FmPragFlg: U8(PragFlg_NoColumns)}, - { /* zName: */ FzName: ts + 14933, /* "cell_size_check" */ + { /* zName: */ FzName: ts + 14943, /* "cell_size_check" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_CellSizeCk)}, - { /* zName: */ FzName: ts + 14949, /* "checkpoint_fullf..." */ + { /* zName: */ FzName: ts + 14959, /* "checkpoint_fullf..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_CkptFullFSync)}, - { /* zName: */ FzName: ts + 14970, /* "collation_list" */ + { /* zName: */ FzName: ts + 14980, /* "collation_list" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_COLLATION_LIST), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0), /* ColNames: */ FiPragCName: U8(32), FnPragCName: U8(2)}, - { /* zName: */ FzName: ts + 14985, /* "compile_options" */ + { /* zName: */ FzName: ts + 14995, /* "compile_options" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_COMPILE_OPTIONS), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0)}, - { /* zName: */ FzName: ts + 15001, /* "count_changes" */ + { /* zName: */ FzName: ts + 15011, /* "count_changes" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: (U64((uint64(0x00001))) << 32)}, - { /* zName: */ FzName: ts + 15015, /* "data_version" */ + { /* zName: */ FzName: ts + 15025, /* "data_version" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_HEADER_VALUE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_ReadOnly | PragFlg_Result0)), /* iArg: */ FiArg: uint64(BTREE_DATA_VERSION)}, - { /* zName: */ FzName: ts + 15028, /* "database_list" */ + { /* zName: */ FzName: ts + 15038, /* "database_list" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_DATABASE_LIST), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_NeedSchema | PragFlg_Result0)), /* ColNames: */ FiPragCName: U8(41), FnPragCName: U8(3)}, - { /* zName: */ FzName: ts + 15042, /* "default_cache_si..." */ + { /* zName: */ FzName: ts + 15052, /* "default_cache_si..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_DEFAULT_CACHE_SIZE), /* ePragFlg: */ FmPragFlg: (U8(((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_SchemaReq) | PragFlg_NoColumns1)), /* ColNames: */ FiPragCName: U8(49), FnPragCName: U8(1)}, - { /* zName: */ FzName: ts + 15061, /* "defer_foreign_ke..." */ + { /* zName: */ FzName: ts + 15071, /* "defer_foreign_ke..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_DeferFKs)}, - { /* zName: */ FzName: ts + 15080, /* "empty_result_cal..." */ + { /* zName: */ FzName: ts + 15090, /* "empty_result_cal..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_NullCallback)}, - { /* zName: */ FzName: ts + 15103, /* "encoding" */ + { /* zName: */ FzName: ts + 15113, /* "encoding" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_ENCODING), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1))}, - { /* zName: */ FzName: ts + 15112, /* "foreign_key_chec..." */ + { /* zName: */ FzName: ts + 15122, /* "foreign_key_chec..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FOREIGN_KEY_CHECK), /* ePragFlg: */ FmPragFlg: (U8(((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_Result1) | PragFlg_SchemaOpt)), /* ColNames: */ FiPragCName: U8(37), FnPragCName: U8(4)}, - { /* zName: */ FzName: ts + 15130, /* "foreign_key_list" */ + { /* zName: */ FzName: ts + 15140, /* "foreign_key_list" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FOREIGN_KEY_LIST), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result1) | PragFlg_SchemaOpt)), FnPragCName: U8(8)}, - { /* zName: */ FzName: ts + 15147, /* "foreign_keys" */ + { /* zName: */ FzName: ts + 15157, /* "foreign_keys" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_ForeignKeys)}, - { /* zName: */ FzName: ts + 15160, /* "freelist_count" */ + { /* zName: */ FzName: ts + 15170, /* "freelist_count" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_HEADER_VALUE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_ReadOnly | PragFlg_Result0))}, - { /* zName: */ FzName: ts + 15175, /* "full_column_name..." */ + { /* zName: */ FzName: ts + 15185, /* "full_column_name..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_FullColNames)}, - { /* zName: */ FzName: ts + 15193, /* "fullfsync" */ + { /* zName: */ FzName: ts + 15203, /* "fullfsync" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_FullFSync)}, - { /* zName: */ FzName: ts + 15203, /* "function_list" */ + { /* zName: */ FzName: ts + 15213, /* "function_list" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FUNCTION_LIST), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0), /* ColNames: */ FiPragCName: U8(21), FnPragCName: U8(6)}, - { /* zName: */ FzName: ts + 15217, /* "hard_heap_limit" */ + { /* zName: */ FzName: ts + 15227, /* "hard_heap_limit" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_HARD_HEAP_LIMIT), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0)}, - { /* zName: */ FzName: ts + 15233, /* "ignore_check_con..." */ + { /* zName: */ FzName: ts + 15243, /* "ignore_check_con..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_IgnoreChecks)}, - { /* zName: */ FzName: ts + 15258, /* "incremental_vacu..." */ + { /* zName: */ FzName: ts + 15268, /* "incremental_vacu..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_INCREMENTAL_VACUUM), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_NeedSchema | PragFlg_NoColumns))}, - { /* zName: */ FzName: ts + 15277, /* "index_info" */ + { /* zName: */ FzName: ts + 15287, /* "index_info" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_INDEX_INFO), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result1) | PragFlg_SchemaOpt)), /* ColNames: */ FiPragCName: U8(15), FnPragCName: U8(3)}, - { /* zName: */ FzName: ts + 15288, /* "index_list" */ + { /* zName: */ FzName: ts + 15298, /* "index_list" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_INDEX_LIST), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result1) | PragFlg_SchemaOpt)), /* ColNames: */ FiPragCName: U8(32), FnPragCName: U8(5)}, - { /* zName: */ FzName: ts + 15299, /* "index_xinfo" */ + { /* zName: */ FzName: ts + 15309, /* "index_xinfo" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_INDEX_INFO), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result1) | PragFlg_SchemaOpt)), /* ColNames: */ FiPragCName: U8(15), FnPragCName: U8(6), /* iArg: */ FiArg: uint64(1)}, - { /* zName: */ FzName: ts + 15311, /* "integrity_check" */ + { /* zName: */ FzName: ts + 15321, /* "integrity_check" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_INTEGRITY_CHECK), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_Result1))}, - { /* zName: */ FzName: ts + 15327, /* "journal_mode" */ + { /* zName: */ FzName: ts + 15337, /* "journal_mode" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_JOURNAL_MODE), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_SchemaReq))}, - { /* zName: */ FzName: ts + 15340, /* "journal_size_lim..." */ + { /* zName: */ FzName: ts + 15350, /* "journal_size_lim..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_JOURNAL_SIZE_LIMIT), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_SchemaReq))}, - { /* zName: */ FzName: ts + 15359, /* "legacy_alter_tab..." */ + { /* zName: */ FzName: ts + 15369, /* "legacy_alter_tab..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_LegacyAlter)}, - { /* zName: */ FzName: ts + 15378, /* "locking_mode" */ + { /* zName: */ FzName: ts + 15388, /* "locking_mode" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_LOCKING_MODE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_SchemaReq))}, - { /* zName: */ FzName: ts + 15391, /* "max_page_count" */ + { /* zName: */ FzName: ts + 15401, /* "max_page_count" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_PAGE_COUNT), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_SchemaReq))}, - { /* zName: */ FzName: ts + 15406, /* "mmap_size" */ + { /* zName: */ FzName: ts + 15416, /* "mmap_size" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_MMAP_SIZE)}, - { /* zName: */ FzName: ts + 15416, /* "module_list" */ + { /* zName: */ FzName: ts + 15426, /* "module_list" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_MODULE_LIST), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0), /* ColNames: */ FiPragCName: U8(9), FnPragCName: U8(1)}, - { /* zName: */ FzName: ts + 15428, /* "optimize" */ + { /* zName: */ FzName: ts + 15438, /* "optimize" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_OPTIMIZE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result1 | PragFlg_NeedSchema))}, - { /* zName: */ FzName: ts + 15437, /* "page_count" */ + { /* zName: */ FzName: ts + 15447, /* "page_count" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_PAGE_COUNT), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_SchemaReq))}, - { /* zName: */ FzName: ts + 15448, /* "page_size" */ + { /* zName: */ FzName: ts + 15458, /* "page_size" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_PAGE_SIZE), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_Result0 | PragFlg_SchemaReq) | PragFlg_NoColumns1))}, - { /* zName: */ FzName: ts + 15458, /* "pragma_list" */ + { /* zName: */ FzName: ts + 15468, /* "pragma_list" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_PRAGMA_LIST), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0), /* ColNames: */ FiPragCName: U8(9), FnPragCName: U8(1)}, - { /* zName: */ FzName: ts + 15470, /* "query_only" */ + { /* zName: */ FzName: ts + 15480, /* "query_only" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_QueryOnly)}, - { /* zName: */ FzName: ts + 15481, /* "quick_check" */ + { /* zName: */ FzName: ts + 15491, /* "quick_check" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_INTEGRITY_CHECK), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_Result1))}, - { /* zName: */ FzName: ts + 15493, /* "read_uncommitted" */ + { /* zName: */ FzName: ts + 15503, /* "read_uncommitted" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_ReadUncommit)}, - { /* zName: */ FzName: ts + 15510, /* "recursive_trigge..." */ + { /* zName: */ FzName: ts + 15520, /* "recursive_trigge..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_RecTriggers)}, - { /* zName: */ FzName: ts + 15529, /* "reverse_unordere..." */ + { /* zName: */ FzName: ts + 15539, /* "reverse_unordere..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_ReverseOrder)}, - { /* zName: */ FzName: ts + 15555, /* "schema_version" */ + { /* zName: */ FzName: ts + 15565, /* "schema_version" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_HEADER_VALUE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_NoColumns1 | PragFlg_Result0)), /* iArg: */ FiArg: uint64(BTREE_SCHEMA_VERSION)}, - { /* zName: */ FzName: ts + 15570, /* "secure_delete" */ + { /* zName: */ FzName: ts + 15580, /* "secure_delete" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_SECURE_DELETE), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0)}, - { /* zName: */ FzName: ts + 15584, /* "short_column_nam..." */ + { /* zName: */ FzName: ts + 15594, /* "short_column_nam..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_ShortColNames)}, - { /* zName: */ FzName: ts + 15603, /* "shrink_memory" */ + { /* zName: */ FzName: ts + 15613, /* "shrink_memory" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_SHRINK_MEMORY), /* ePragFlg: */ FmPragFlg: U8(PragFlg_NoColumns)}, - { /* zName: */ FzName: ts + 15617, /* "soft_heap_limit" */ + { /* zName: */ FzName: ts + 15627, /* "soft_heap_limit" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_SOFT_HEAP_LIMIT), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0)}, - { /* zName: */ FzName: ts + 15633, /* "synchronous" */ + { /* zName: */ FzName: ts + 15643, /* "synchronous" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_SYNCHRONOUS), /* ePragFlg: */ FmPragFlg: (U8(((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_SchemaReq) | PragFlg_NoColumns1))}, - { /* zName: */ FzName: ts + 15645, /* "table_info" */ + { /* zName: */ FzName: ts + 15655, /* "table_info" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_TABLE_INFO), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result1) | PragFlg_SchemaOpt)), /* ColNames: */ FiPragCName: U8(8), FnPragCName: U8(6)}, - { /* zName: */ FzName: ts + 15656, /* "table_xinfo" */ + { /* zName: */ FzName: ts + 15666, /* "table_xinfo" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_TABLE_INFO), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result1) | PragFlg_SchemaOpt)), /* ColNames: */ FiPragCName: U8(8), FnPragCName: U8(7), /* iArg: */ FiArg: uint64(1)}, - { /* zName: */ FzName: ts + 15668, /* "temp_store" */ + { /* zName: */ FzName: ts + 15678, /* "temp_store" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_TEMP_STORE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1))}, - { /* zName: */ FzName: ts + 15679, /* "temp_store_direc..." */ + { /* zName: */ FzName: ts + 15689, /* "temp_store_direc..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_TEMP_STORE_DIRECTORY), /* ePragFlg: */ FmPragFlg: U8(PragFlg_NoColumns1)}, - { /* zName: */ FzName: ts + 15700, /* "threads" */ + { /* zName: */ FzName: ts + 15710, /* "threads" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_THREADS), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0)}, - { /* zName: */ FzName: ts + 15708, /* "trusted_schema" */ + { /* zName: */ FzName: ts + 15718, /* "trusted_schema" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_TrustedSchema)}, - { /* zName: */ FzName: ts + 15723, /* "user_version" */ + { /* zName: */ FzName: ts + 15733, /* "user_version" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_HEADER_VALUE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_NoColumns1 | PragFlg_Result0)), /* iArg: */ FiArg: uint64(BTREE_USER_VERSION)}, - { /* zName: */ FzName: ts + 15736, /* "wal_autocheckpoi..." */ + { /* zName: */ FzName: ts + 15746, /* "wal_autocheckpoi..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_WAL_AUTOCHECKPOINT)}, - { /* zName: */ FzName: ts + 15755, /* "wal_checkpoint" */ + { /* zName: */ FzName: ts + 15765, /* "wal_checkpoint" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_WAL_CHECKPOINT), /* ePragFlg: */ FmPragFlg: U8(PragFlg_NeedSchema), /* ColNames: */ FiPragCName: U8(44), FnPragCName: U8(3)}, - { /* zName: */ FzName: ts + 15770, /* "writable_schema" */ + { /* zName: */ FzName: ts + 15780, /* "writable_schema" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: (uint64(SQLITE_WriteSchema | SQLITE_NoSchemaError))}, @@ -107819,7 +108431,7 @@ func getSafetyLevel(tls *libc.TLS, z uintptr, omitFull int32, dflt U8) U8 { /* s return dflt } -var zText = *(*[25]int8)(unsafe.Pointer(ts + 15786 /* "onoffalseyestrue..." */)) /* sqlite3.c:128499:21 */ +var zText = *(*[25]int8)(unsafe.Pointer(ts + 15796 /* "onoffalseyestrue..." */)) /* sqlite3.c:128499:21 */ var iOffset = [8]U8{U8(0), U8(1), U8(2), U8(4), U8(9), U8(12), U8(15), U8(20)} /* sqlite3.c:128500:19 */ var iLength = [8]U8{U8(2), U8(2), U8(3), U8(5), U8(3), U8(4), U8(5), U8(4)} /* sqlite3.c:128501:19 */ var iValue = [8]U8{U8(1), U8(0), U8(0), U8(0), U8(1), U8(1), U8(3), U8(2)} /* sqlite3.c:128502:19 */ @@ -107836,10 +108448,10 @@ func Xsqlite3GetBoolean(tls *libc.TLS, z uintptr, dflt U8) U8 { /* sqlite3.c:128 // Interpret the given string as a locking mode value. func getLockingMode(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:128535:12: */ if z != 0 { - if 0 == Xsqlite3StrICmp(tls, z, ts+15811 /* "exclusive" */) { + if 0 == Xsqlite3StrICmp(tls, z, ts+15821 /* "exclusive" */) { return PAGER_LOCKINGMODE_EXCLUSIVE } - if 0 == Xsqlite3StrICmp(tls, z, ts+15821 /* "normal" */) { + if 0 == Xsqlite3StrICmp(tls, z, ts+15831 /* "normal" */) { return PAGER_LOCKINGMODE_NORMAL } } @@ -107852,13 +108464,13 @@ func getLockingMode(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:128535:12: */ // acceptable, as are their numeric equivalents: 0, 1 and 2 respectively. func getAutoVacuum(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:128550:12: */ var i int32 - if 0 == Xsqlite3StrICmp(tls, z, ts+15828 /* "none" */) { + if 0 == Xsqlite3StrICmp(tls, z, ts+15838 /* "none" */) { return BTREE_AUTOVACUUM_NONE } - if 0 == Xsqlite3StrICmp(tls, z, ts+15833 /* "full" */) { + if 0 == Xsqlite3StrICmp(tls, z, ts+15843 /* "full" */) { return BTREE_AUTOVACUUM_FULL } - if 0 == Xsqlite3StrICmp(tls, z, ts+15838 /* "incremental" */) { + if 0 == Xsqlite3StrICmp(tls, z, ts+15848 /* "incremental" */) { return BTREE_AUTOVACUUM_INCR } i = Xsqlite3Atoi(tls, z) @@ -107876,9 +108488,9 @@ func getAutoVacuum(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:128550:12: */ func getTempStore(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:128566:12: */ if (int32(*(*int8)(unsafe.Pointer(z))) >= '0') && (int32(*(*int8)(unsafe.Pointer(z))) <= '2') { return (int32(*(*int8)(unsafe.Pointer(z))) - '0') - } else if Xsqlite3StrICmp(tls, z, ts+14768 /* "file" */) == 0 { + } else if Xsqlite3StrICmp(tls, z, ts+14778 /* "file" */) == 0 { return 1 - } else if Xsqlite3StrICmp(tls, z, ts+15850 /* "memory" */) == 0 { + } else if Xsqlite3StrICmp(tls, z, ts+15860 /* "memory" */) == 0 { return 2 } else { return 0 @@ -107894,7 +108506,7 @@ func invalidateTempStorage(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:1 if !(int32((*Sqlite3)(unsafe.Pointer(db)).FautoCommit) != 0) || (Xsqlite3BtreeTxnState(tls, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*16)).FpBt) != SQLITE_TXN_NONE) { Xsqlite3ErrorMsg(tls, pParse, - ts+15857 /* "temporary storag..." */, 0) + ts+15867 /* "temporary storag..." */, 0) return SQLITE_ERROR } Xsqlite3BtreeClose(tls, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*16)).FpBt) @@ -107994,19 +108606,19 @@ func actionName(tls *libc.TLS, action U8) uintptr { /* sqlite3.c:128694:19: */ var zName uintptr switch int32(action) { case OE_SetNull: - zName = ts + 15919 /* "SET NULL" */ + zName = ts + 15929 /* "SET NULL" */ break case OE_SetDflt: - zName = ts + 15928 /* "SET DEFAULT" */ + zName = ts + 15938 /* "SET DEFAULT" */ break case OE_Cascade: - zName = ts + 15940 /* "CASCADE" */ + zName = ts + 15950 /* "CASCADE" */ break case OE_Restrict: - zName = ts + 15948 /* "RESTRICT" */ + zName = ts + 15958 /* "RESTRICT" */ break default: - zName = ts + 15957 /* "NO ACTION" */ + zName = ts + 15967 /* "NO ACTION" */ break } return zName @@ -108024,7 +108636,7 @@ func Xsqlite3JournalModename(tls *libc.TLS, eMode int32) uintptr { /* sqlite3.c: } var azModeName = [6]uintptr{ - ts + 15967 /* "delete" */, ts + 15974 /* "persist" */, ts + 15982 /* "off" */, ts + 15986 /* "truncate" */, ts + 15850 /* "memory" */, ts + 15995, /* "wal" */ + ts + 15977 /* "delete" */, ts + 15984 /* "persist" */, ts + 15992 /* "off" */, ts + 15996 /* "truncate" */, ts + 15860 /* "memory" */, ts + 16005, /* "wal" */ } /* sqlite3.c:128715:15 */ // Locate a pragma in the aPragmaName[] array. @@ -108070,13 +108682,13 @@ func pragmaFunclistLine(tls *libc.TLS, v uintptr, p uintptr, isBuiltin int32, sh continue } if (*FuncDef)(unsafe.Pointer(p)).FxValue != uintptr(0) { - zType = ts + 15999 /* "w" */ + zType = ts + 16009 /* "w" */ } else if (*FuncDef)(unsafe.Pointer(p)).FxFinalize != uintptr(0) { - zType = ts + 16001 /* "a" */ + zType = ts + 16011 /* "a" */ } else { - zType = ts + 16003 /* "s" */ + zType = ts + 16013 /* "s" */ } - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16005, /* "sissii" */ + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16015, /* "sissii" */ libc.VaList(bp, (*FuncDef)(unsafe.Pointer(p)).FzName, isBuiltin, zType, azEnc[((*FuncDef)(unsafe.Pointer(p)).FfuncFlags&U32(SQLITE_FUNC_ENCMASK))], int32((*FuncDef)(unsafe.Pointer(p)).FnArg), @@ -108085,7 +108697,7 @@ func pragmaFunclistLine(tls *libc.TLS, v uintptr, p uintptr, isBuiltin int32, sh } var mask U32 = (U32((((SQLITE_DETERMINISTIC | SQLITE_DIRECTONLY) | SQLITE_SUBTYPE) | SQLITE_INNOCUOUS) | SQLITE_FUNC_INTERNAL)) /* sqlite3.c:128765:22 */ -var azEnc = [4]uintptr{uintptr(0), ts + 16012 /* "utf8" */, ts + 16017 /* "utf16le" */, ts + 16025 /* "utf16be" */} /* sqlite3.c:128772:23 */ +var azEnc = [4]uintptr{uintptr(0), ts + 16022 /* "utf8" */, ts + 16027 /* "utf16le" */, ts + 16035 /* "utf16be" */} /* sqlite3.c:128772:23 */ // Helper subroutine for PRAGMA integrity_check: // @@ -108347,7 +108959,7 @@ __4: if !(minusFlag != 0) { goto __5 } - zRight = Xsqlite3MPrintf(tls, db, ts+16033 /* "-%T" */, libc.VaList(bp, pValue)) + zRight = Xsqlite3MPrintf(tls, db, ts+16043 /* "-%T" */, libc.VaList(bp, pValue)) goto __6 __5: zRight = Xsqlite3NameFromToken(tls, db, pValue) @@ -108402,7 +109014,7 @@ __8: if !(*(*uintptr)(unsafe.Pointer(bp + 364 /* &aFcntl[0] */)) != 0) { goto __10 } - Xsqlite3ErrorMsg(tls, pParse, ts+2790 /* "%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 364 /* &aFcntl[0] */)))) + Xsqlite3ErrorMsg(tls, pParse, ts+2800 /* "%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 364 /* &aFcntl[0] */)))) Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 364 /* &aFcntl[0] */))) __10: ; @@ -108974,7 +109586,7 @@ __18: if !(zRight != 0) { goto __62 } - if !(Xsqlite3_stricmp(tls, zRight, ts+16037 /* "fast" */) == 0) { + if !(Xsqlite3_stricmp(tls, zRight, ts+16047 /* "fast" */) == 0) { goto __63 } b = 2 @@ -109063,7 +109675,7 @@ __70: // PRAGMA [schema.]locking_mode // PRAGMA [schema.]locking_mode = (normal|exclusive) __20: - zRet = ts + 15821 /* "normal" */ + zRet = ts + 15831 /* "normal" */ eMode = getLockingMode(tls, zRight) if !(((*Token)(unsafe.Pointer(pId2)).Fn == uint32(0)) && (eMode == -1)) { @@ -109104,7 +109716,7 @@ __77: if !(eMode == PAGER_LOCKINGMODE_EXCLUSIVE) { goto __82 } - zRet = ts + 15811 /* "exclusive" */ + zRet = ts + 15821 /* "exclusive" */ __82: ; returnSingleText(tls, v, zRet) @@ -109469,7 +110081,7 @@ __122: if !((rc != SQLITE_OK) || (*(*int32)(unsafe.Pointer(bp + 412 /* res */)) == 0)) { goto __125 } - Xsqlite3ErrorMsg(tls, pParse, ts+16042 /* "not a writable d..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+16052 /* "not a writable d..." */, 0) goto pragma_out __125: ; @@ -109487,7 +110099,7 @@ __126: if !(*(*int8)(unsafe.Pointer(zRight)) != 0) { goto __127 } - Xsqlite3_temp_directory = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp+16, zRight)) + Xsqlite3_temp_directory = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp+16, zRight)) goto __128 __127: Xsqlite3_temp_directory = uintptr(0) @@ -109515,7 +110127,7 @@ __129: goto __131 } Xsqlite3ErrorMsg(tls, pParse, - ts+16067 /* "Safety level may..." */, 0) + ts+16077 /* "Safety level may..." */, 0) goto __132 __131: if !(iDb != 1) { @@ -109674,13 +110286,13 @@ __153: Xsqlite3VdbeMultiLoad(tls, v, 1, func() uintptr { if (*PragmaName)(unsafe.Pointer(pPragma)).FiArg != 0 { - return ts + 16120 /* "issisii" */ + return ts + 16130 /* "issisii" */ } - return ts + 16128 /* "issisi" */ + return ts + 16138 /* "issisi" */ }(), libc.VaList(bp+24, (i-nHidden), (*Column)(unsafe.Pointer(pCol)).FzName, - Xsqlite3ColumnType(tls, pCol, ts+755 /* "" */), + Xsqlite3ColumnType(tls, pCol, ts+765 /* "" */), func() int32 { if (*Column)(unsafe.Pointer(pCol)).FnotNull != 0 { return 1 @@ -109755,7 +110367,7 @@ __165: goto __167 } cnum = *(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(i1)*2)) - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16135 /* "iisX" */, libc.VaList(bp+80, i1, int32(cnum), + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16145 /* "iisX" */, libc.VaList(bp+80, i1, int32(cnum), func() uintptr { if int32(cnum) < 0 { return uintptr(0) @@ -109765,7 +110377,7 @@ __165: if !((*PragmaName)(unsafe.Pointer(pPragma)).FiArg != 0) { goto __168 } - Xsqlite3VdbeMultiLoad(tls, v, 4, ts+16140, /* "isiX" */ + Xsqlite3VdbeMultiLoad(tls, v, 4, ts+16150, /* "isiX" */ libc.VaList(bp+104, int32(*(*U8)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaSortOrder + uintptr(i1)))), *(*uintptr)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FazColl + uintptr(i1)*4)), (libc.Bool32(i1 < int32((*Index)(unsafe.Pointer(pIdx)).FnKeyCol))))) @@ -109802,8 +110414,8 @@ __171: if !(pIdx1 != 0) { goto __173 } - *(*[3]uintptr)(unsafe.Pointer(bp + 416 /* azOrigin */)) = [3]uintptr{ts + 16145 /* "c" */, ts + 16147 /* "u" */, ts + 14667 /* "pk" */} - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16149, /* "isisi" */ + *(*[3]uintptr)(unsafe.Pointer(bp + 416 /* azOrigin */)) = [3]uintptr{ts + 16155 /* "c" */, ts + 16157 /* "u" */, ts + 14677 /* "pk" */} + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16159, /* "isisi" */ libc.VaList(bp+128, i2, (*Index)(unsafe.Pointer(pIdx1)).FzName, (libc.Bool32(int32((*Index)(unsafe.Pointer((pIdx1))).FonError) != OE_None)), @@ -109837,7 +110449,7 @@ __174: __177: ; - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16155, /* "iss" */ + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16165, /* "iss" */ libc.VaList(bp+168, i3, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i3)*16)).FzDbSName, Xsqlite3BtreeGetFilename(tls, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i3)*16)).FpBt))) @@ -109860,7 +110472,7 @@ __178: goto __180 } pColl = (*HashElem)(unsafe.Pointer(p)).Fdata - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16159 /* "is" */, libc.VaList(bp+192, libc.PostIncInt32(&i4, 1), (*CollSeq)(unsafe.Pointer(pColl)).FzName)) + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16169 /* "is" */, libc.VaList(bp+192, libc.PostIncInt32(&i4, 1), (*CollSeq)(unsafe.Pointer(pColl)).FzName)) goto __179 __179: p = (*HashElem)(unsafe.Pointer(p)).Fnext @@ -109924,7 +110536,7 @@ __190: goto __192 } pMod = (*HashElem)(unsafe.Pointer(j1)).Fdata - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16003 /* "s" */, libc.VaList(bp+208, (*Module)(unsafe.Pointer(pMod)).FzName)) + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16013 /* "s" */, libc.VaList(bp+208, (*Module)(unsafe.Pointer(pMod)).FzName)) goto __191 __191: j1 = (*HashElem)(unsafe.Pointer(j1)).Fnext @@ -109941,7 +110553,7 @@ __193: if !(i6 < (int32(uint32(unsafe.Sizeof(aPragmaName)) / uint32(unsafe.Sizeof(PragmaName{}))))) { goto __195 } - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16003 /* "s" */, libc.VaList(bp+216, aPragmaName[i6].FzName)) + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16013 /* "s" */, libc.VaList(bp+216, aPragmaName[i6].FzName)) goto __194 __194: i6++ @@ -109977,7 +110589,7 @@ __201: if !(j2 < (*FKey)(unsafe.Pointer(pFK)).FnCol) { goto __203 } - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16162, /* "iissssss" */ + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+16172, /* "iissssss" */ libc.VaList(bp+224, i7, j2, (*FKey)(unsafe.Pointer(pFK)).FzTo, @@ -109985,7 +110597,7 @@ __201: (*sColMap)(unsafe.Pointer((pFK+36 /* &.aCol */)+uintptr(j2)*8)).FzCol, actionName(tls, *(*U8)(unsafe.Pointer((pFK + 25 /* &.aAction */) + 1))), // ON UPDATE actionName(tls, *(*U8)(unsafe.Pointer((pFK + 25 /* &.aAction */)))), // ON DELETE - ts+16171 /* "NONE" */)) + ts+16181 /* "NONE" */)) goto __202 __202: j2++ @@ -110178,7 +110790,7 @@ __230: Xsqlite3VdbeAddOp2(tls, v, OP_Null, 0, (regResult + 1)) __231: ; - Xsqlite3VdbeMultiLoad(tls, v, (regResult + 2), ts+16176 /* "siX" */, libc.VaList(bp+288, (*FKey)(unsafe.Pointer(pFK1)).FzTo, (i8-1))) + Xsqlite3VdbeMultiLoad(tls, v, (regResult + 2), ts+16186 /* "siX" */, libc.VaList(bp+288, (*FKey)(unsafe.Pointer(pFK1)).FzTo, (i8-1))) Xsqlite3VdbeAddOp2(tls, v, OP_ResultRow, regResult, 4) Xsqlite3VdbeResolveLabel(tls, v, addrOk) Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 432 /* aiCols */))) @@ -110444,7 +111056,7 @@ __258: Xsqlite3VdbeChangeP5(tls, v, uint16(U8(i9))) addr1 = Xsqlite3VdbeAddOp1(tls, v, OP_IsNull, 2) Xsqlite3VdbeAddOp4(tls, v, OP_String8, 0, 3, 0, - Xsqlite3MPrintf(tls, db, ts+16180 /* "*** in database ..." */, libc.VaList(bp+304, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i9)*16)).FzDbSName)), + Xsqlite3MPrintf(tls, db, ts+16190 /* "*** in database ..." */, libc.VaList(bp+304, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i9)*16)).FzDbSName)), -7) Xsqlite3VdbeAddOp3(tls, v, OP_Concat, 2, 3, 3) integrityCheckResultRow(tls, v) @@ -110534,7 +111146,7 @@ __277: __278: ; jmp2 = Xsqlite3VdbeAddOp1(tls, v, OP_NotNull, 3) - zErr = Xsqlite3MPrintf(tls, db, ts+16204 /* "NULL value in %s..." */, libc.VaList(bp+312, (*Table)(unsafe.Pointer(pTab7)).FzName, + zErr = Xsqlite3MPrintf(tls, db, ts+16214 /* "NULL value in %s..." */, libc.VaList(bp+312, (*Table)(unsafe.Pointer(pTab7)).FzName, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab7)).FaCol+uintptr(j4)*20)).FzName)) Xsqlite3VdbeAddOp4(tls, v, OP_String8, 0, 3, 0, zErr, -7) integrityCheckResultRow(tls, v) @@ -110574,7 +111186,7 @@ __283: SQLITE_JUMPIFNULL) Xsqlite3VdbeResolveLabel(tls, v, addrCkFault) (*Parse)(unsafe.Pointer(pParse)).FiSelfTab = 0 - zErr1 = Xsqlite3MPrintf(tls, db, ts+16224, /* "CHECK constraint..." */ + zErr1 = Xsqlite3MPrintf(tls, db, ts+16234, /* "CHECK constraint..." */ libc.VaList(bp+328, (*Table)(unsafe.Pointer(pTab7)).FzName)) Xsqlite3VdbeAddOp4(tls, v, OP_String8, 0, 3, 0, zErr1, -7) integrityCheckResultRow(tls, v) @@ -110608,9 +111220,9 @@ __288: // Verify that an index entry exists for the current table row jmp21 = Xsqlite3VdbeAddOp4Int(tls, v, OP_Found, (*(*int32)(unsafe.Pointer(bp + 444 /* iIdxCur */)) + j4), ckUniq, r1, int32((*Index)(unsafe.Pointer(pIdx5)).FnColumn)) - Xsqlite3VdbeLoadString(tls, v, 3, ts+16254 /* "row " */) + Xsqlite3VdbeLoadString(tls, v, 3, ts+16264 /* "row " */) Xsqlite3VdbeAddOp3(tls, v, OP_Concat, 7, 3, 3) - Xsqlite3VdbeLoadString(tls, v, 4, ts+16259 /* " missing from in..." */) + Xsqlite3VdbeLoadString(tls, v, 4, ts+16269 /* " missing from in..." */) Xsqlite3VdbeAddOp3(tls, v, OP_Concat, 4, 3, 3) jmp5 = Xsqlite3VdbeLoadString(tls, v, 4, (*Index)(unsafe.Pointer(pIdx5)).FzName) Xsqlite3VdbeAddOp3(tls, v, OP_Concat, 4, 3, 3) @@ -110650,7 +111262,7 @@ __292: Xsqlite3VdbeJumpHere(tls, v, jmp6) Xsqlite3VdbeAddOp4Int(tls, v, OP_IdxGT, (*(*int32)(unsafe.Pointer(bp + 444 /* iIdxCur */)) + j4), uniqOk, r1, int32((*Index)(unsafe.Pointer(pIdx5)).FnKeyCol)) - Xsqlite3VdbeLoadString(tls, v, 3, ts+16280 /* "non-unique entry..." */) + Xsqlite3VdbeLoadString(tls, v, 3, ts+16290 /* "non-unique entry..." */) Xsqlite3VdbeGoto(tls, v, jmp5) Xsqlite3VdbeResolveLabel(tls, v, uniqOk) __289: @@ -110672,7 +111284,7 @@ __284: if !(!(isQuick != 0)) { goto __294 } - Xsqlite3VdbeLoadString(tls, v, 2, ts+16307 /* "wrong # of entri..." */) + Xsqlite3VdbeLoadString(tls, v, 2, ts+16317 /* "wrong # of entri..." */) j4 = 0 pIdx5 = (*Table)(unsafe.Pointer(pTab7)).FpIndex __295: @@ -110723,7 +111335,7 @@ __240: } (*VdbeOp)(unsafe.Pointer(aOp2)).Fp2 = (1 - *(*int32)(unsafe.Pointer(bp + 436 /* mxErr */))) (*VdbeOp)(unsafe.Pointer(aOp2 + 2*20)).Fp4type = int8(-1) - *(*uintptr)(unsafe.Pointer(aOp2 + 2*20 + 16 /* &.p4 */)) = ts + 16336 /* "ok" */ + *(*uintptr)(unsafe.Pointer(aOp2 + 2*20 + 16 /* &.p4 */)) = ts + 16346 /* "ok" */ (*VdbeOp)(unsafe.Pointer(aOp2 + 5*20)).Fp4type = int8(-1) *(*uintptr)(unsafe.Pointer(aOp2 + 5*20 + 16 /* &.p4 */)) = Xsqlite3ErrStr(tls, SQLITE_CORRUPT) __299: @@ -110801,7 +111413,7 @@ __306: if !(!(int32((*EncName)(unsafe.Pointer(pEnc)).FzName) != 0)) { goto __308 } - Xsqlite3ErrorMsg(tls, pParse, ts+16339 /* "unsupported enco..." */, libc.VaList(bp+336, zRight)) + Xsqlite3ErrorMsg(tls, pParse, ts+16349 /* "unsupported enco..." */, libc.VaList(bp+336, zRight)) __308: ; __303: @@ -110913,19 +111525,19 @@ __47: if !(zRight != 0) { goto __315 } - if !(Xsqlite3StrICmp(tls, zRight, ts+15833 /* "full" */) == 0) { + if !(Xsqlite3StrICmp(tls, zRight, ts+15843 /* "full" */) == 0) { goto __316 } eMode2 = SQLITE_CHECKPOINT_FULL goto __317 __316: - if !(Xsqlite3StrICmp(tls, zRight, ts+16364 /* "restart" */) == 0) { + if !(Xsqlite3StrICmp(tls, zRight, ts+16374 /* "restart" */) == 0) { goto __318 } eMode2 = SQLITE_CHECKPOINT_RESTART goto __319 __318: - if !(Xsqlite3StrICmp(tls, zRight, ts+15986 /* "truncate" */) == 0) { + if !(Xsqlite3StrICmp(tls, zRight, ts+15996 /* "truncate" */) == 0) { goto __320 } eMode2 = SQLITE_CHECKPOINT_TRUNCATE @@ -111112,7 +111724,7 @@ __335: __337: ; - zSubSql = Xsqlite3MPrintf(tls, db, ts+16372, /* "ANALYZE \"%w\".\"%w..." */ + zSubSql = Xsqlite3MPrintf(tls, db, ts+16382, /* "ANALYZE \"%w\".\"%w..." */ libc.VaList(bp+344, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, (*Table)(unsafe.Pointer(pTab8)).FzName)) if !((opMask & U32(0x01)) != 0) { goto __338 @@ -111260,9 +111872,9 @@ pragma_out: } type EncName = struct { - FzName uintptr - Fenc U8 - _ [3]byte + FzName uintptr + Fenc U8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:130282:18 */ var iLn3 int32 = 0 /* sqlite3.c:128958:22 */ @@ -111296,14 +111908,14 @@ var endCode = [7]VdbeOpList{ {Fopcode: U8(OP_Goto), Fp2: int8(3)}, // 6 } /* sqlite3.c:130233:31 */ var encnames1 = [9]EncName{ - {FzName: ts + 16390 /* "UTF8" */, Fenc: U8(SQLITE_UTF8)}, - {FzName: ts + 16395 /* "UTF-8" */, Fenc: U8(SQLITE_UTF8)}, // Must be element [1] - {FzName: ts + 16401 /* "UTF-16le" */, Fenc: U8(SQLITE_UTF16LE)}, // Must be element [2] - {FzName: ts + 16410 /* "UTF-16be" */, Fenc: U8(SQLITE_UTF16BE)}, // Must be element [3] - {FzName: ts + 16419 /* "UTF16le" */, Fenc: U8(SQLITE_UTF16LE)}, - {FzName: ts + 16427 /* "UTF16be" */, Fenc: U8(SQLITE_UTF16BE)}, - {FzName: ts + 16435 /* "UTF-16" */}, // SQLITE_UTF16NATIVE - {FzName: ts + 16442 /* "UTF16" */}, // SQLITE_UTF16NATIVE + {FzName: ts + 16400 /* "UTF8" */, Fenc: U8(SQLITE_UTF8)}, + {FzName: ts + 16405 /* "UTF-8" */, Fenc: U8(SQLITE_UTF8)}, // Must be element [1] + {FzName: ts + 16411 /* "UTF-16le" */, Fenc: U8(SQLITE_UTF16LE)}, // Must be element [2] + {FzName: ts + 16420 /* "UTF-16be" */, Fenc: U8(SQLITE_UTF16BE)}, // Must be element [3] + {FzName: ts + 16429 /* "UTF16le" */, Fenc: U8(SQLITE_UTF16LE)}, + {FzName: ts + 16437 /* "UTF16be" */, Fenc: U8(SQLITE_UTF16BE)}, + {FzName: ts + 16445 /* "UTF-16" */}, // SQLITE_UTF16NATIVE + {FzName: ts + 16452 /* "UTF16" */}, // SQLITE_UTF16NATIVE {}, } /* sqlite3.c:130285:7 */ var setCookie = [2]VdbeOpList{ @@ -111320,12 +111932,12 @@ var readCookie = [3]VdbeOpList{ // Implementation of an eponymous virtual table that runs a pragma. // type PragmaVtab1 = struct { - Fbase Sqlite3_vtab - Fdb uintptr - FpName uintptr - FnHidden U8 - FiHidden U8 - _ [2]byte + Fbase Sqlite3_vtab + Fdb uintptr + FpName uintptr + FnHidden U8 + FiHidden U8 + F__ccgo_pad1 [2]byte } /* sqlite3.c:130740:9 */ // **************************************************************************** @@ -111360,7 +111972,7 @@ func pragmaVtabConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv _ = argc _ = argv Xsqlite3StrAccumInit(tls, bp+32 /* &acc */, uintptr(0), bp+56 /* &zBuf[0] */, int32(unsafe.Sizeof([200]int8{})), 0) - Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+16448 /* "CREATE TABLE x" */) + Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+16458 /* "CREATE TABLE x" */) i = 0 j = int32((*PragmaName)(unsafe.Pointer(pPragma)).FiPragCName) __1: @@ -111368,7 +111980,7 @@ __1: goto __3 } { - Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+16463 /* "%c\"%s\"" */, libc.VaList(bp, int32(cSep), pragCName[j])) + Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+16473 /* "%c\"%s\"" */, libc.VaList(bp, int32(cSep), pragCName[j])) cSep = int8(',') } @@ -111381,19 +111993,19 @@ __2: __3: ; if i == 0 { - Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+16470 /* "(\"%s\"" */, libc.VaList(bp+16, (*PragmaName)(unsafe.Pointer(pPragma)).FzName)) + Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+16480 /* "(\"%s\"" */, libc.VaList(bp+16, (*PragmaName)(unsafe.Pointer(pPragma)).FzName)) i++ } j = 0 if (int32((*PragmaName)(unsafe.Pointer(pPragma)).FmPragFlg) & PragFlg_Result1) != 0 { - Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+16476 /* ",arg HIDDEN" */) + Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+16486 /* ",arg HIDDEN" */) j++ } if (int32((*PragmaName)(unsafe.Pointer(pPragma)).FmPragFlg) & (PragFlg_SchemaOpt | PragFlg_SchemaReq)) != 0 { - Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+16488 /* ",schema HIDDEN" */) + Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+16498 /* ",schema HIDDEN" */) j++ } - Xsqlite3_str_append(tls, bp+32 /* &acc */, ts+4066 /* ")" */, 1) + Xsqlite3_str_append(tls, bp+32 /* &acc */, ts+4076 /* ")" */, 1) Xsqlite3StrAccumFinish(tls, bp+32 /* &acc */) rc = Xsqlite3_declare_vtab(tls, db, bp+56 /* &zBuf[0] */) @@ -111409,7 +112021,7 @@ __3: (*PragmaVtab)(unsafe.Pointer(pTab)).FnHidden = U8(j) } } else { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp+24, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp+24, Xsqlite3_errmsg(tls, db))) } *(*uintptr)(unsafe.Pointer(ppVtab)) = pTab @@ -111572,7 +112184,7 @@ __1: var zText uintptr = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*4))) if zText != 0 { - *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */) + uintptr(j)*4)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp, zText)) + *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */) + uintptr(j)*4)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp, zText)) if *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */) + uintptr(j)*4)) == uintptr(0) { return SQLITE_NOMEM } @@ -111588,13 +112200,13 @@ __2: __3: ; Xsqlite3StrAccumInit(tls, bp+32 /* &acc */, uintptr(0), uintptr(0), 0, *(*int32)(unsafe.Pointer(((*PragmaVtab)(unsafe.Pointer(pTab)).Fdb + 108 /* &.aLimit */) + 1*4))) - Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+16503 /* "PRAGMA " */) + Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+16513 /* "PRAGMA " */) if *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */) + 1*4)) != 0 { - Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+16511 /* "%Q." */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */) + 1*4)))) + Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+16521 /* "%Q." */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */) + 1*4)))) } Xsqlite3_str_appendall(tls, bp+32 /* &acc */, (*PragmaName)(unsafe.Pointer((*PragmaVtab)(unsafe.Pointer(pTab)).FpName)).FzName) if *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */))) != 0 { - Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+16515 /* "=%Q" */, libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */))))) + Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+16525 /* "=%Q" */, libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */))))) } zSql = Xsqlite3StrAccumFinish(tls, bp+32 /* &acc */) if zSql == uintptr(0) { @@ -111603,7 +112215,7 @@ __3: rc = Xsqlite3_prepare_v2(tls, (*PragmaVtab)(unsafe.Pointer(pTab)).Fdb, zSql, -1, (pCsr + 4 /* &.pPragma */), uintptr(0)) Xsqlite3_free(tls, zSql) if rc != SQLITE_OK { - (*PragmaVtab)(unsafe.Pointer(pTab)).Fbase.FzErrMsg = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp+24, Xsqlite3_errmsg(tls, (*PragmaVtab)(unsafe.Pointer(pTab)).Fdb))) + (*PragmaVtab)(unsafe.Pointer(pTab)).Fbase.FzErrMsg = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp+24, Xsqlite3_errmsg(tls, (*PragmaVtab)(unsafe.Pointer(pTab)).Fdb))) return rc } return pragmaVtabNext(tls, pVtabCursor) @@ -111696,12 +112308,12 @@ func corruptSchema(tls *libc.TLS, pData uintptr, azObj uintptr, zExtra uintptr) // A error message has already been generated. Do not overwrite it } else if ((*InitData)(unsafe.Pointer(pData)).FmInitFlags & (U32(INITFLAG_AlterRename | INITFLAG_AlterDrop))) != 0 { *(*uintptr)(unsafe.Pointer((*InitData)(unsafe.Pointer(pData)).FpzErrMsg)) = Xsqlite3MPrintf(tls, db, - ts+16519 /* "error in %s %s a..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(azObj)), *(*uintptr)(unsafe.Pointer(azObj + 1*4)), + ts+16529 /* "error in %s %s a..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(azObj)), *(*uintptr)(unsafe.Pointer(azObj + 1*4)), func() uintptr { if ((*InitData)(unsafe.Pointer(pData)).FmInitFlags & U32(INITFLAG_AlterRename)) != 0 { - return ts + 16547 /* "rename" */ + return ts + 16557 /* "rename" */ } - return ts + 16554 /* "drop column" */ + return ts + 16564 /* "drop column" */ }(), zExtra)) (*InitData)(unsafe.Pointer(pData)).Frc = SQLITE_ERROR @@ -111713,11 +112325,11 @@ func corruptSchema(tls *libc.TLS, pData uintptr, azObj uintptr, zExtra uintptr) if *(*uintptr)(unsafe.Pointer(azObj + 1*4)) != 0 { zObj = *(*uintptr)(unsafe.Pointer(azObj + 1*4)) } else { - zObj = ts + 4122 /* "?" */ + zObj = ts + 4132 /* "?" */ } - z = Xsqlite3MPrintf(tls, db, ts+16566 /* "malformed databa..." */, libc.VaList(bp+32, zObj)) + z = Xsqlite3MPrintf(tls, db, ts+16576 /* "malformed databa..." */, libc.VaList(bp+32, zObj)) if (zExtra != 0) && (*(*int8)(unsafe.Pointer(zExtra)) != 0) { - z = Xsqlite3MPrintf(tls, db, ts+16597 /* "%z - %s" */, libc.VaList(bp+40, z, zExtra)) + z = Xsqlite3MPrintf(tls, db, ts+16607 /* "%z - %s" */, libc.VaList(bp+40, z, zExtra)) } *(*uintptr)(unsafe.Pointer((*InitData)(unsafe.Pointer(pData)).FpzErrMsg)) = z (*InitData)(unsafe.Pointer(pData)).Frc = Xsqlite3CorruptError(tls, 131096) @@ -111794,7 +112406,7 @@ func Xsqlite3InitCallback(tls *libc.TLS, pInit uintptr, argc int32, argv uintptr if (Xsqlite3GetUInt32(tls, *(*uintptr)(unsafe.Pointer(argv + 3*4)), (db+160 /* &.init */ /* &.newTnum */)) == 0) || (((*Sqlite3)(unsafe.Pointer(db)).Finit.FnewTnum > (*InitData)(unsafe.Pointer(pData)).FmxPage) && ((*InitData)(unsafe.Pointer(pData)).FmxPage > Pgno(0))) { if Xsqlite3Config.FbExtraSchemaChecks != 0 { - corruptSchema(tls, pData, argv, ts+12850 /* "invalid rootpage" */) + corruptSchema(tls, pData, argv, ts+12860 /* "invalid rootpage" */) } } libc.SetBitFieldPtr8Uint32(db+160 /* &.init */ +8 /* &.orphanTrigger */, uint32(0), 0, 0x1) @@ -111831,13 +112443,13 @@ func Xsqlite3InitCallback(tls *libc.TLS, pInit uintptr, argc int32, argv uintptr var pIndex uintptr pIndex = Xsqlite3FindIndex(tls, db, *(*uintptr)(unsafe.Pointer(argv + 1*4)), (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName) if pIndex == uintptr(0) { - corruptSchema(tls, pData, argv, ts+16605 /* "orphan index" */) + corruptSchema(tls, pData, argv, ts+16615 /* "orphan index" */) } else if (((Xsqlite3GetUInt32(tls, *(*uintptr)(unsafe.Pointer(argv + 3*4)), (pIndex+44 /* &.tnum */)) == 0) || ((*Index)(unsafe.Pointer(pIndex)).Ftnum < Pgno(2))) || ((*Index)(unsafe.Pointer(pIndex)).Ftnum > (*InitData)(unsafe.Pointer(pData)).FmxPage)) || (Xsqlite3IndexHasDuplicateRootPage(tls, pIndex) != 0) { if Xsqlite3Config.FbExtraSchemaChecks != 0 { - corruptSchema(tls, pData, argv, ts+12850 /* "invalid rootpage" */) + corruptSchema(tls, pData, argv, ts+12860 /* "invalid rootpage" */) } } } @@ -111880,16 +112492,16 @@ func Xsqlite3InitOne(tls *libc.TLS, db uintptr, iDb int32, pzErrMsg uintptr, mFl // table name will be inserted automatically by the parser so we can just // use the abbreviation "x" here. The parser will also automatically tag // the schema table as read-only. - *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */)) = ts + 7823 /* "table" */ + *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */)) = ts + 7833 /* "table" */ *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 1*4)) = libc.AssignUintptr(&zSchemaTabName, func() uintptr { if (!(0 != 0)) && (iDb == 1) { - return ts + 10872 /* "sqlite_temp_mast..." */ + return ts + 10882 /* "sqlite_temp_mast..." */ } - return ts + 4956 /* "sqlite_master" */ + return ts + 4966 /* "sqlite_master" */ }()) *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 2*4)) = *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 1*4)) - *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 3*4)) = ts + 6913 /* "1" */ - *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 4*4)) = ts + 16618 /* "CREATE TABLE x(t..." */ + *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 3*4)) = ts + 6923 /* "1" */ + *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 4*4)) = ts + 16628 /* "CREATE TABLE x(t..." */ *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 5*4)) = uintptr(0) (*InitData)(unsafe.Pointer(bp + 40 /* &initData */)).Fdb = db (*InitData)(unsafe.Pointer(bp + 40 /* &initData */)).FiDb = iDb @@ -112002,7 +112614,7 @@ __10: goto __13 } Xsqlite3SetString(tls, pzErrMsg, db, - ts+10499 /* "attached databas..." */) + ts+10509 /* "attached databas..." */) rc = SQLITE_ERROR goto initone_error_out __13: @@ -112042,7 +112654,7 @@ __16: if !(int32((*Schema)(unsafe.Pointer((*Db)(unsafe.Pointer(pDb)).FpSchema)).Ffile_format) > SQLITE_MAX_FILE_FORMAT) { goto __17 } - Xsqlite3SetString(tls, pzErrMsg, db, ts+16690 /* "unsupported file..." */) + Xsqlite3SetString(tls, pzErrMsg, db, ts+16700 /* "unsupported file..." */) rc = SQLITE_ERROR goto initone_error_out __17: @@ -112064,7 +112676,7 @@ __18: (*InitData)(unsafe.Pointer(bp + 40 /* &initData */)).FmxPage = Xsqlite3BtreeLastPage(tls, (*Db)(unsafe.Pointer(pDb)).FpBt) zSql = Xsqlite3MPrintf(tls, db, - ts+16714, /* "SELECT*FROM\"%w\"...." */ + ts+16724, /* "SELECT*FROM\"%w\"...." */ libc.VaList(bp, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, zSchemaTabName)) xAuth = (*Sqlite3)(unsafe.Pointer(db)).FxAuth @@ -112287,7 +112899,9 @@ func Xsqlite3ParserReset(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:131614:21 for (*Parse)(unsafe.Pointer(pParse)).FpCleanup != 0 { var pCleanup uintptr = (*Parse)(unsafe.Pointer(pParse)).FpCleanup (*Parse)(unsafe.Pointer(pParse)).FpCleanup = (*ParseCleanup)(unsafe.Pointer(pCleanup)).FpNext - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pCleanup + 8 /* &.xCleanup */))))(tls, db, (*ParseCleanup)(unsafe.Pointer(pCleanup)).FpPtr) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*ParseCleanup)(unsafe.Pointer(pCleanup)).FxCleanup})).f(tls, db, (*ParseCleanup)(unsafe.Pointer(pCleanup)).FpPtr) Xsqlite3DbFreeNN(tls, db, pCleanup) } Xsqlite3DbFree(tls, db, (*Parse)(unsafe.Pointer(pParse)).FaLabel) @@ -112341,7 +112955,9 @@ func Xsqlite3ParserAddCleanup(tls *libc.TLS, pParse uintptr, xCleanup uintptr, p (*ParseCleanup)(unsafe.Pointer(pCleanup)).FpPtr = pPtr (*ParseCleanup)(unsafe.Pointer(pCleanup)).FxCleanup = xCleanup } else { - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(&xCleanup)))(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, pPtr) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{xCleanup})).f(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, pPtr) pPtr = uintptr(0) } return pPtr @@ -112424,7 +113040,7 @@ __3: goto __7 } zDb = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(i)*16)).FzDbSName - Xsqlite3ErrorWithMsg(tls, db, rc, ts+16748 /* "database schema ..." */, libc.VaList(bp, zDb)) + Xsqlite3ErrorWithMsg(tls, db, rc, ts+16758 /* "database schema ..." */, libc.VaList(bp, zDb)) goto end_prepare __7: @@ -112452,7 +113068,7 @@ __2: if !(nBytes > mxLen) { goto __10 } - Xsqlite3ErrorWithMsg(tls, db, SQLITE_TOOBIG, ts+16778 /* "statement too lo..." */, 0) + Xsqlite3ErrorWithMsg(tls, db, SQLITE_TOOBIG, ts+16788 /* "statement too lo..." */, 0) rc = Xsqlite3ApiExit(tls, db, SQLITE_TOOBIG) goto end_prepare __10: @@ -112515,7 +113131,7 @@ __19: if !(*(*uintptr)(unsafe.Pointer(bp + 288 /* zErrMsg */)) != 0) { goto __20 } - Xsqlite3ErrorWithMsg(tls, db, rc, ts+2790 /* "%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 288 /* zErrMsg */)))) + Xsqlite3ErrorWithMsg(tls, db, rc, ts+2800 /* "%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 288 /* zErrMsg */)))) Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 288 /* zErrMsg */))) goto __21 __20: @@ -112748,11 +113364,11 @@ func Xsqlite3_prepare16_v3(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32 // how to process the DISTINCT keyword, to simplify passing that information // into the selectInnerLoop() routine. type DistinctCtx1 = struct { - FisTnct U8 - FeTnctType U8 - _ [2]byte - FtabTnct int32 - FaddrTnct int32 + FisTnct U8 + FeTnctType U8 + F__ccgo_pad1 [2]byte + FtabTnct int32 + FaddrTnct int32 } /* sqlite3.c:132093:9 */ //************* End of prepare.c ******************************************** @@ -112802,7 +113418,7 @@ type SortCtx1 = struct { FlabelDone int32 FlabelOBLopt int32 FsortFlags U8 - _ [3]byte + F__ccgo_pad1 [3]byte FpDeferredRowLoad uintptr } /* sqlite3.c:132119:9 */ @@ -112824,9 +113440,9 @@ type SortCtx1 = struct { // extracted from the sorter. type SortCtx = SortCtx1 /* sqlite3.c:132119:24 */ type RowLoadInfo1 = struct { - FregResult int32 - FecelFlags U8 - _ [3]byte + FregResult int32 + FecelFlags U8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:132119:9 */ // Delete all the content of a Select structure. Deallocate the structure @@ -112990,24 +113606,24 @@ func Xsqlite3JoinType(tls *libc.TLS, pParse uintptr, pA uintptr, pB uintptr, pC } } if ((jointype & (JT_INNER | JT_OUTER)) == (JT_INNER | JT_OUTER)) || ((jointype & JT_ERROR) != 0) { - var zSp uintptr = ts + 9652 /* " " */ + var zSp uintptr = ts + 9662 /* " " */ if pC == uintptr(0) { zSp++ } Xsqlite3ErrorMsg(tls, pParse, - ts+16797 /* "unknown or unsup..." */, libc.VaList(bp, pA, pB, zSp, pC)) + ts+16807 /* "unknown or unsup..." */, libc.VaList(bp, pA, pB, zSp, pC)) jointype = JT_INNER } else if ((jointype & JT_OUTER) != 0) && ((jointype & (JT_LEFT | JT_RIGHT)) != JT_LEFT) { Xsqlite3ErrorMsg(tls, pParse, - ts+16841 /* "RIGHT and FULL O..." */, 0) + ts+16851 /* "RIGHT and FULL O..." */, 0) jointype = JT_INNER } return jointype } -var zKeyText = *(*[34]int8)(unsafe.Pointer(ts + 16896 /* "naturaleftouteri..." */)) /* sqlite3.c:132284:21 */ +var zKeyText = *(*[34]int8)(unsafe.Pointer(ts + 16906 /* "naturaleftouteri..." */)) /* sqlite3.c:132284:21 */ var aKeyword = [7]struct { Fi U8 FnChar U8 @@ -113213,7 +113829,7 @@ __1: if (int32((*SrcItem)(unsafe.Pointer(pRight)).Ffg.Fjointype) & JT_NATURAL) != 0 { if ((*SrcItem)(unsafe.Pointer(pRight)).FpOn != 0) || ((*SrcItem)(unsafe.Pointer(pRight)).FpUsing != 0) { Xsqlite3ErrorMsg(tls, pParse, - ts+16930 /* "a NATURAL join m..." */, libc.VaList(bp, 0)) + ts+16940 /* "a NATURAL join m..." */, libc.VaList(bp, 0)) return 1 } for j = 0; j < int32((*Table)(unsafe.Pointer(pRightTab)).FnCol); j++ { @@ -113237,7 +113853,7 @@ __1: // Disallow both ON and USING clauses in the same join if ((*SrcItem)(unsafe.Pointer(pRight)).FpOn != 0) && ((*SrcItem)(unsafe.Pointer(pRight)).FpUsing != 0) { Xsqlite3ErrorMsg(tls, pParse, - ts+16980 /* "cannot have both..." */, 0) + ts+16990 /* "cannot have both..." */, 0) return 1 } @@ -113272,7 +113888,7 @@ __1: if (iRightCol < 0) || !(tableAndColumnIndex(tls, pSrc, (i+1), zName, bp+24 /* &iLeft */, bp+28 /* &iLeftCol */, 0) != 0) { Xsqlite3ErrorMsg(tls, pParse, - ts+17035 /* "cannot join usin..." */, libc.VaList(bp+8, zName)) + ts+17045 /* "cannot join usin..." */, libc.VaList(bp+8, zName)) return 1 } addWhereTerm(tls, pParse, pSrc, *(*int32)(unsafe.Pointer(bp + 24 /* iLeft */)), *(*int32)(unsafe.Pointer(bp + 28 /* iLeftCol */)), (i + 1), iRightCol, @@ -114063,16 +114679,16 @@ func Xsqlite3SelectOpName(tls *libc.TLS, id int32) uintptr { /* sqlite3.c:133540 var z uintptr switch id { case TK_ALL: - z = ts + 17099 /* "UNION ALL" */ + z = ts + 17109 /* "UNION ALL" */ break case TK_INTERSECT: - z = ts + 17109 /* "INTERSECT" */ + z = ts + 17119 /* "INTERSECT" */ break case TK_EXCEPT: - z = ts + 17119 /* "EXCEPT" */ + z = ts + 17129 /* "EXCEPT" */ break default: - z = ts + 17126 /* "UNION" */ + z = ts + 17136 /* "UNION" */ break } return z @@ -114090,7 +114706,7 @@ func explainTempTable(tls *libc.TLS, pParse uintptr, zUsage uintptr) { /* sqlite bp := tls.Alloc(8) defer tls.Free(8) - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+17132 /* "USE TEMP B-TREE ..." */, libc.VaList(bp, zUsage)) + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+17142 /* "USE TEMP B-TREE ..." */, libc.VaList(bp, zUsage)) } // Assign expression b to lvalue a. A second, no-op, version of this macro @@ -114356,8 +114972,8 @@ func columnTypeImpl(tls *libc.TLS, pNC uintptr, pExpr uintptr, pzOrigDb uintptr, } if iCol < 0 { - zType = ts + 11384 /* "INTEGER" */ - *(*uintptr)(unsafe.Pointer(bp + 40 /* zOrigCol */)) = ts + 14757 /* "rowid" */ + zType = ts + 11394 /* "INTEGER" */ + *(*uintptr)(unsafe.Pointer(bp + 40 /* zOrigCol */)) = ts + 14767 /* "rowid" */ } else { *(*uintptr)(unsafe.Pointer(bp + 40 /* zOrigCol */)) = (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(iCol)*20)).FzName zType = Xsqlite3ColumnType(tls, ((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(iCol)*20), uintptr(0)) @@ -114510,13 +115126,13 @@ func Xsqlite3GenerateColumnNames(tls *libc.TLS, pParse uintptr, pSelect uintptr) } if iCol < 0 { - zCol = ts + 14757 /* "rowid" */ + zCol = ts + 14767 /* "rowid" */ } else { zCol = (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(iCol)*20)).FzName } if fullName != 0 { var zName uintptr = uintptr(0) - zName = Xsqlite3MPrintf(tls, db, ts+10785 /* "%s.%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, zCol)) + zName = Xsqlite3MPrintf(tls, db, ts+10795 /* "%s.%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, zCol)) Xsqlite3VdbeSetColName(tls, v, i, COLNAME_NAME, zName, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3OomFault}))) } else { Xsqlite3VdbeSetColName(tls, v, i, COLNAME_NAME, zCol, libc.UintptrFromInt32(-1)) @@ -114524,7 +115140,7 @@ func Xsqlite3GenerateColumnNames(tls *libc.TLS, pParse uintptr, pSelect uintptr) } else { var z uintptr = (*ExprList_item)(unsafe.Pointer((pEList + 8 /* &.a */) + uintptr(i)*20)).FzEName if z == uintptr(0) { - z = Xsqlite3MPrintf(tls, db, ts+17155 /* "column%d" */, libc.VaList(bp+16, (i+1))) + z = Xsqlite3MPrintf(tls, db, ts+17165 /* "column%d" */, libc.VaList(bp+16, (i+1))) } else { z = Xsqlite3DbStrDup(tls, db, z) } @@ -114613,7 +115229,7 @@ __1: if iCol >= 0 { zName = (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(iCol)*20)).FzName } else { - zName = ts + 14757 /* "rowid" */ + zName = ts + 14767 /* "rowid" */ } } else if int32((*Expr)(unsafe.Pointer(pColExpr)).Fop) == TK_ID { @@ -114626,7 +115242,7 @@ __1: if (zName != 0) && !(Xsqlite3IsTrueOrFalse(tls, zName) != 0) { zName = Xsqlite3DbStrDup(tls, db, zName) } else { - zName = Xsqlite3MPrintf(tls, db, ts+17155 /* "column%d" */, libc.VaList(bp, (i+1))) + zName = Xsqlite3MPrintf(tls, db, ts+17165 /* "column%d" */, libc.VaList(bp, (i+1))) } // Make sure the column name is unique. If the name is not unique, @@ -114641,7 +115257,7 @@ __1: nName = j } } - zName = Xsqlite3MPrintf(tls, db, ts+17164 /* "%.*z:%u" */, libc.VaList(bp+8, nName, zName, libc.PreIncUint32(&*(*U32)(unsafe.Pointer(bp + 48 /* cnt */)), 1))) + zName = Xsqlite3MPrintf(tls, db, ts+17174 /* "%.*z:%u" */, libc.VaList(bp+8, nName, zName, libc.PreIncUint32(&*(*U32)(unsafe.Pointer(bp + 48 /* cnt */)), 1))) if *(*U32)(unsafe.Pointer(bp + 48 /* cnt */)) > U32(3) { Xsqlite3_randomness(tls, int32(unsafe.Sizeof(U32(0))), bp+48 /* &cnt */) } @@ -114998,7 +115614,7 @@ func generateWithRecursiveQuery(tls *libc.TLS, pParse uintptr, p uintptr, pDest if !((*Select)(unsafe.Pointer(p)).FpWin != 0) { goto __1 } - Xsqlite3ErrorMsg(tls, pParse, ts+17172 /* "cannot use windo..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+17182 /* "cannot use windo..." */, 0) return __1: ; @@ -115109,7 +115725,7 @@ __12: if !(((*Select)(unsafe.Pointer(pFirstRec)).FselFlags & U32(SF_Aggregate)) != 0) { goto __15 } - Xsqlite3ErrorMsg(tls, pParse, ts+17221 /* "recursive aggreg..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+17231 /* "recursive aggreg..." */, 0) goto end_of_recursive_query __15: ; @@ -115131,7 +115747,7 @@ __14: // Store the results of the setup-query in Queue. pSetup = (*Select)(unsafe.Pointer(pFirstRec)).FpPrior (*Select)(unsafe.Pointer(pSetup)).FpNext = uintptr(0) - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17263 /* "SETUP" */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17273 /* "SETUP" */, 0) rc = Xsqlite3Select(tls, pParse, pSetup, bp /* &destQueue */) (*Select)(unsafe.Pointer(pSetup)).FpNext = p if !(rc != 0) { @@ -115174,7 +115790,7 @@ __20: // Execute the recursive SELECT taking the single row in Current as // the value for the recursive-table. Store the results in the Queue. (*Select)(unsafe.Pointer(pFirstRec)).FpPrior = uintptr(0) - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17269 /* "RECURSIVE STEP" */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17279 /* "RECURSIVE STEP" */, 0) Xsqlite3Select(tls, pParse, p, bp /* &destQueue */) (*Select)(unsafe.Pointer(pFirstRec)).FpPrior = pSetup @@ -115224,11 +115840,11 @@ func multiSelectValues(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) p = (*Select)(unsafe.Pointer(p)).FpPrior nRow = nRow + (bShowAll) } - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+17284 /* "SCAN %d CONSTANT..." */, libc.VaList(bp, nRow, func() uintptr { + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+17294 /* "SCAN %d CONSTANT..." */, libc.VaList(bp, nRow, func() uintptr { if nRow == 1 { - return ts + 755 /* "" */ + return ts + 765 /* "" */ } - return ts + 17307 /* "S" */ + return ts + 17317 /* "S" */ }())) for p != 0 { selectInnerLoop(tls, pParse, p, -1, uintptr(0), uintptr(0), pDest, 1, 1) @@ -115380,8 +115996,8 @@ __6: if !((*Select)(unsafe.Pointer(pPrior)).FpPrior == uintptr(0)) { goto __8 } - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17309 /* "COMPOUND QUERY" */, 0) - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17324 /* "LEFT-MOST SUBQUE..." */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17319 /* "COMPOUND QUERY" */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17334 /* "LEFT-MOST SUBQUE..." */, 0) __8: ; @@ -115430,7 +116046,7 @@ __16: ; __15: ; - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17099 /* "UNION ALL" */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17109 /* "UNION ALL" */, 0) rc = Xsqlite3Select(tls, pParse, p, bp+16 /* &dest */) @@ -115506,7 +116122,7 @@ __23: pLimit = (*Select)(unsafe.Pointer(p)).FpLimit (*Select)(unsafe.Pointer(p)).FpLimit = uintptr(0) (*SelectDest)(unsafe.Pointer(bp + 48 /* &uniondest */)).FeDest = op - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17343 /* "%s USING TEMP B-..." */, libc.VaList(bp, Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(p)).Fop)))) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17353 /* "%s USING TEMP B-..." */, libc.VaList(bp, Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(p)).Fop)))) rc = Xsqlite3Select(tls, pParse, p, bp+48 /* &uniondest */) @@ -115578,7 +116194,7 @@ __26: pLimit1 = (*Select)(unsafe.Pointer(p)).FpLimit (*Select)(unsafe.Pointer(p)).FpLimit = uintptr(0) (*SelectDest)(unsafe.Pointer(bp + 76 /* &intersectdest */)).FiSDParm = tab2 - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17343 /* "%s USING TEMP B-..." */, libc.VaList(bp+8, Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(p)).Fop)))) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17353 /* "%s USING TEMP B-..." */, libc.VaList(bp+8, Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(p)).Fop)))) rc = Xsqlite3Select(tls, pParse, p, bp+76 /* &intersectdest */) @@ -115739,10 +116355,10 @@ func Xsqlite3SelectWrongNumTermsError(tls *libc.TLS, pParse uintptr, p uintptr) defer tls.Free(8) if ((*Select)(unsafe.Pointer(p)).FselFlags & U32(SF_Values)) != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+17364 /* "all VALUES must ..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+17374 /* "all VALUES must ..." */, 0) } else { Xsqlite3ErrorMsg(tls, pParse, - ts+17410, /* "SELECTs to the l..." */ + ts+17420, /* "SELECTs to the l..." */ libc.VaList(bp, Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(p)).Fop)))) } } @@ -116122,9 +116738,9 @@ func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) // Separate the left and the right query from one another (*Select)(unsafe.Pointer(p)).FpPrior = uintptr(0) (*Select)(unsafe.Pointer(pPrior)).FpNext = uintptr(0) - Xsqlite3ResolveOrderGroupBy(tls, pParse, p, (*Select)(unsafe.Pointer(p)).FpOrderBy, ts+6251 /* "ORDER" */) + Xsqlite3ResolveOrderGroupBy(tls, pParse, p, (*Select)(unsafe.Pointer(p)).FpOrderBy, ts+6261 /* "ORDER" */) if (*Select)(unsafe.Pointer(pPrior)).FpPrior == uintptr(0) { - Xsqlite3ResolveOrderGroupBy(tls, pParse, pPrior, (*Select)(unsafe.Pointer(pPrior)).FpOrderBy, ts+6251 /* "ORDER" */) + Xsqlite3ResolveOrderGroupBy(tls, pParse, pPrior, (*Select)(unsafe.Pointer(pPrior)).FpOrderBy, ts+6261 /* "ORDER" */) } // Compute the limit registers @@ -116153,7 +116769,7 @@ func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) Xsqlite3SelectDestInit(tls, bp+8 /* &destA */, SRT_Coroutine, regAddrA) Xsqlite3SelectDestInit(tls, bp+36 /* &destB */, SRT_Coroutine, regAddrB) - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17492 /* "MERGE (%s)" */, libc.VaList(bp, Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(p)).Fop)))) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17502 /* "MERGE (%s)" */, libc.VaList(bp, Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(p)).Fop)))) // Generate a coroutine to evaluate the SELECT statement to the // left of the compound operator - the "A" select. @@ -116161,7 +116777,7 @@ func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) addr1 = Xsqlite3VdbeAddOp3(tls, v, OP_InitCoroutine, regAddrA, 0, addrSelectA) (*Select)(unsafe.Pointer(pPrior)).FiLimit = regLimitA - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17503 /* "LEFT" */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17513 /* "LEFT" */, 0) Xsqlite3Select(tls, pParse, pPrior, bp+8 /* &destA */) Xsqlite3VdbeEndCoroutine(tls, v, regAddrA) Xsqlite3VdbeJumpHere(tls, v, addr1) @@ -116175,7 +116791,7 @@ func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) savedOffset = (*Select)(unsafe.Pointer(p)).FiOffset (*Select)(unsafe.Pointer(p)).FiLimit = regLimitB (*Select)(unsafe.Pointer(p)).FiOffset = 0 - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17508 /* "RIGHT" */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+17518 /* "RIGHT" */, 0) Xsqlite3Select(tls, pParse, p, bp+36 /* &destB */) (*Select)(unsafe.Pointer(p)).FiLimit = savedLimit (*Select)(unsafe.Pointer(p)).FiOffset = savedOffset @@ -116371,7 +116987,7 @@ func substExpr(tls *libc.TLS, pSubst uintptr, pExpr uintptr) uintptr { /* sqlite if pColl != 0 { return (*CollSeq)(unsafe.Pointer(pColl)).FzName } - return ts + 318 /* "BINARY" */ + return ts + 328 /* "BINARY" */ }()) } *(*U32)(unsafe.Pointer(pExpr + 4 /* &.flags */)) &= (libc.Uint32FromInt32(libc.CplInt32(EP_Collate))) @@ -117584,12 +118200,12 @@ func minMaxQuery(tls *libc.TLS, db uintptr, pFunc uintptr, ppMinMax uintptr) U8 return U8(eRet) } zFunc = *(*uintptr)(unsafe.Pointer(pFunc + 8 /* &.u */)) - if Xsqlite3StrICmp(tls, zFunc, ts+13839 /* "min" */) == 0 { + if Xsqlite3StrICmp(tls, zFunc, ts+13849 /* "min" */) == 0 { eRet = WHERE_ORDERBY_MIN if Xsqlite3ExprCanBeNull(tls, (*ExprList_item)(unsafe.Pointer((pEList+8 /* &.a */))).FpExpr) != 0 { sortFlags = U8(KEYINFO_ORDER_BIGNULL) } - } else if Xsqlite3StrICmp(tls, zFunc, ts+13843 /* "max" */) == 0 { + } else if Xsqlite3StrICmp(tls, zFunc, ts+13853 /* "max" */) == 0 { eRet = WHERE_ORDERBY_MAX sortFlags = U8(KEYINFO_ORDER_DESC) } else { @@ -117658,7 +118274,7 @@ func Xsqlite3IndexedByLookup(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 for pIdx = (*Table)(unsafe.Pointer(pTab)).FpIndex; (pIdx != 0) && (Xsqlite3StrICmp(tls, (*Index)(unsafe.Pointer(pIdx)).FzName, zIndexedBy) != 0); pIdx = (*Index)(unsafe.Pointer(pIdx)).FpNext { } if !(pIdx != 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+17514 /* "no such index: %..." */, libc.VaList(bp, zIndexedBy, 0)) + Xsqlite3ErrorMsg(tls, pParse, ts+17524 /* "no such index: %..." */, libc.VaList(bp, zIndexedBy, 0)) (*Parse)(unsafe.Pointer(pParse)).FcheckSchema = U8(1) return SQLITE_ERROR } @@ -117769,7 +118385,7 @@ func cannotBeFunction(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* s defer tls.Free(8) if (uint32(int32(*(*uint16)(unsafe.Pointer(pFrom + 36 /* &.fg */ + 4 /* &.isTabFunc */)) & 0x4 >> 2))) != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+17532 /* "'%s' is not a fu..." */, libc.VaList(bp, (*SrcItem)(unsafe.Pointer(pFrom)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+17542 /* "'%s' is not a fu..." */, libc.VaList(bp, (*SrcItem)(unsafe.Pointer(pFrom)).FzName)) return 1 } return 0 @@ -117957,7 +118573,7 @@ func resolveFromTermToCte(tls *libc.TLS, pParse uintptr, pWalker uintptr, pFrom libc.SetBitFieldPtr16Uint32(pItem+36 /* &.fg */ +4 /* &.isRecursive */, uint32(1), 5, 0x20) if ((*Select)(unsafe.Pointer(pRecTerm)).FselFlags & U32(SF_Recursive)) != 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+17555 /* "multiple referen..." */, libc.VaList(bp+8, (*Cte)(unsafe.Pointer(pCte)).FzName)) + ts+17565 /* "multiple referen..." */, libc.VaList(bp+8, (*Cte)(unsafe.Pointer(pCte)).FzName)) return 2 } *(*U32)(unsafe.Pointer(pRecTerm + 4 /* &.selFlags */)) |= (U32(SF_Recursive)) @@ -117973,7 +118589,7 @@ func resolveFromTermToCte(tls *libc.TLS, pParse uintptr, pWalker uintptr, pFrom pRecTerm = (*Select)(unsafe.Pointer(pRecTerm)).FpPrior } - (*Cte)(unsafe.Pointer(pCte)).FzCteErr = ts + 17598 /* "circular referen..." */ + (*Cte)(unsafe.Pointer(pCte)).FzCteErr = ts + 17608 /* "circular referen..." */ pSavedWith = (*Parse)(unsafe.Pointer(pParse)).FpWith (*Parse)(unsafe.Pointer(pParse)).FpWith = *(*uintptr)(unsafe.Pointer(bp + 40 /* pWith */)) if ((*Select)(unsafe.Pointer(pSel)).FselFlags & U32(SF_Recursive)) != 0 { @@ -117999,7 +118615,7 @@ func resolveFromTermToCte(tls *libc.TLS, pParse uintptr, pWalker uintptr, pFrom pEList = (*Select)(unsafe.Pointer(pLeft)).FpEList if (*Cte)(unsafe.Pointer(pCte)).FpCols != 0 { if (pEList != 0) && ((*ExprList)(unsafe.Pointer(pEList)).FnExpr != (*ExprList)(unsafe.Pointer((*Cte)(unsafe.Pointer(pCte)).FpCols)).FnExpr) { - Xsqlite3ErrorMsg(tls, pParse, ts+17621, /* "table %s has %d ..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+17631, /* "table %s has %d ..." */ libc.VaList(bp+16, (*Cte)(unsafe.Pointer(pCte)).FzName, (*ExprList)(unsafe.Pointer(pEList)).FnExpr, (*ExprList)(unsafe.Pointer((*Cte)(unsafe.Pointer(pCte)).FpCols)).FnExpr)) (*Parse)(unsafe.Pointer(pParse)).FpWith = pSavedWith return 2 @@ -118010,9 +118626,9 @@ func resolveFromTermToCte(tls *libc.TLS, pParse uintptr, pWalker uintptr, pFrom Xsqlite3ColumnsFromExprList(tls, pParse, pEList, (pTab + 42 /* &.nCol */), (pTab + 4 /* &.aCol */)) if bMayRecursive != 0 { if ((*Select)(unsafe.Pointer(pSel)).FselFlags & U32(SF_Recursive)) != 0 { - (*Cte)(unsafe.Pointer(pCte)).FzCteErr = ts + 17659 /* "multiple recursi..." */ + (*Cte)(unsafe.Pointer(pCte)).FzCteErr = ts + 17669 /* "multiple recursi..." */ } else { - (*Cte)(unsafe.Pointer(pCte)).FzCteErr = ts + 17693 /* "recursive refere..." */ + (*Cte)(unsafe.Pointer(pCte)).FzCteErr = ts + 17703 /* "recursive refere..." */ } Xsqlite3WalkSelect(tls, pWalker, pSel) } @@ -118060,7 +118676,7 @@ func Xsqlite3ExpandSubquery(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 if (*SrcItem)(unsafe.Pointer(pFrom)).FzAlias != 0 { (*Table)(unsafe.Pointer(pTab)).FzName = Xsqlite3DbStrDup(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, (*SrcItem)(unsafe.Pointer(pFrom)).FzAlias) } else { - (*Table)(unsafe.Pointer(pTab)).FzName = Xsqlite3MPrintf(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, ts+17731 /* "subquery_%u" */, libc.VaList(bp, (*Select)(unsafe.Pointer(pSel)).FselId)) + (*Table)(unsafe.Pointer(pTab)).FzName = Xsqlite3MPrintf(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, ts+17741 /* "subquery_%u" */, libc.VaList(bp, (*Select)(unsafe.Pointer(pSel)).FselId)) } for (*Select)(unsafe.Pointer(pSel)).FpPrior != 0 { pSel = (*Select)(unsafe.Pointer(pSel)).FpPrior @@ -118187,7 +118803,7 @@ __1: return WRC_Abort } if (*Table)(unsafe.Pointer(pTab)).FnTabRef >= U32(0xffff) { - Xsqlite3ErrorMsg(tls, pParse, ts+17743, /* "too many referen..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+17753, /* "too many referen..." */ libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) (*SrcItem)(unsafe.Pointer(pFrom)).FpTab = uintptr(0) return WRC_Abort @@ -118206,7 +118822,7 @@ __1: if (((*Table)(unsafe.Pointer(pTab)).FpSelect != 0) && (((*Sqlite3)(unsafe.Pointer(db)).Fflags & uint64(SQLITE_EnableView)) == uint64(0))) && ((*Table)(unsafe.Pointer(pTab)).FpSchema != (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*16)).FpSchema) { - Xsqlite3ErrorMsg(tls, pParse, ts+17782, /* "access to view \"..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+17792, /* "access to view \"..." */ libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) } @@ -118214,7 +118830,7 @@ __1: ((uint32(int32(*(*uint16)(unsafe.Pointer((pFrom + 36 /* &.fg */) + 4 /* &.fromDDL */)) & 0x40 >> 6))) != 0)) && ((*Table)(unsafe.Pointer(pTab)).FpVTable != uintptr(0))) && (int32((*VTable)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FpVTable)).FeVtabRisk) > (libc.Bool32(((*Sqlite3)(unsafe.Pointer(db)).Fflags & uint64(SQLITE_TrustedSchema)) != uint64(0)))) { - Xsqlite3ErrorMsg(tls, pParse, ts+17813, /* "unsafe use of vi..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+17823, /* "unsafe use of vi..." */ libc.VaList(bp+16, (*Table)(unsafe.Pointer(pTab)).FzName)) } (*SrcItem)(unsafe.Pointer(pFrom)).FpSelect = Xsqlite3SelectDup(tls, db, (*Table)(unsafe.Pointer(pTab)).FpSelect, 0) @@ -118329,7 +118945,7 @@ __3: if iDb >= 0 { zSchemaName = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16)).FzDbSName } else { - zSchemaName = ts + 17846 /* "*" */ + zSchemaName = ts + 17856 /* "*" */ } } for j = 0; j < int32((*Table)(unsafe.Pointer(pTab)).FnCol); j++ { @@ -118378,7 +118994,7 @@ __3: pExpr = Xsqlite3PExpr(tls, pParse, TK_DOT, pLeft, pExpr) } if longNames != 0 { - zColname = Xsqlite3MPrintf(tls, db, ts+10785 /* "%s.%s" */, libc.VaList(bp+24, zTabName, zName)) + zColname = Xsqlite3MPrintf(tls, db, ts+10795 /* "%s.%s" */, libc.VaList(bp+24, zTabName, zName)) zToFree = zColname } } else { @@ -118394,7 +119010,7 @@ __3: (*ExprList_item)(unsafe.Pointer(pX)).FzEName = Xsqlite3DbStrDup(tls, db, (*ExprList_item)(unsafe.Pointer(((*Select)(unsafe.Pointer(pSub)).FpEList+8 /* &.a */)+uintptr(j)*20)).FzEName) } else { - (*ExprList_item)(unsafe.Pointer(pX)).FzEName = Xsqlite3MPrintf(tls, db, ts+17848, /* "%s.%s.%s" */ + (*ExprList_item)(unsafe.Pointer(pX)).FzEName = Xsqlite3MPrintf(tls, db, ts+17858, /* "%s.%s.%s" */ libc.VaList(bp+40, zSchemaName, zTabName, zColname)) } @@ -118414,9 +119030,9 @@ __3: ; if !(tableSeen != 0) { if zTName != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+17857 /* "no such table: %..." */, libc.VaList(bp+64, zTName)) + Xsqlite3ErrorMsg(tls, pParse, ts+17867 /* "no such table: %..." */, libc.VaList(bp+64, zTName)) } else { - Xsqlite3ErrorMsg(tls, pParse, ts+17875 /* "no tables specif..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+17885 /* "no tables specif..." */, 0) } } } @@ -118426,7 +119042,7 @@ __3: } if (*Select)(unsafe.Pointer(p)).FpEList != 0 { if (*ExprList)(unsafe.Pointer((*Select)(unsafe.Pointer(p)).FpEList)).FnExpr > *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 2*4)) { - Xsqlite3ErrorMsg(tls, pParse, ts+17895 /* "too many columns..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+17905 /* "too many columns..." */, 0) return WRC_Abort } if (elistFlags & (U32(EP_HasFunc | EP_Subquery))) != U32(0) { @@ -118614,13 +119230,13 @@ __1: if (*(*uintptr)(unsafe.Pointer(pE + 20 /* &.x */)) == uintptr(0)) || ((*ExprList)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pE + 20 /* &.x */)))).FnExpr != 1) { Xsqlite3ErrorMsg(tls, pParse, - ts+17926 /* "DISTINCT aggrega..." */, 0) + ts+17936 /* "DISTINCT aggrega..." */, 0) (*AggInfo_func)(unsafe.Pointer(pFunc)).FiDistinct = -1 } else { var pKeyInfo uintptr = Xsqlite3KeyInfoFromExprList(tls, pParse, *(*uintptr)(unsafe.Pointer(pE + 20 /* &.x */)), 0, 0) (*AggInfo_func)(unsafe.Pointer(pFunc)).FiDistAddr = Xsqlite3VdbeAddOp4(tls, v, OP_OpenEphemeral, (*AggInfo_func)(unsafe.Pointer(pFunc)).FiDistinct, 0, 0, pKeyInfo, -9) - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+17977 /* "USE TEMP B-TREE ..." */, libc.VaList(bp, (*FuncDef)(unsafe.Pointer((*AggInfo_func)(unsafe.Pointer(pFunc)).FpFunc)).FzName)) + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+17987 /* "USE TEMP B-TREE ..." */, libc.VaList(bp, (*FuncDef)(unsafe.Pointer((*AggInfo_func)(unsafe.Pointer(pFunc)).FpFunc)).FzName)) } } @@ -118820,19 +119436,19 @@ func explainSimpleCount(tls *libc.TLS, pParse uintptr, pTab uintptr, pIdx uintpt if int32((*Parse)(unsafe.Pointer(pParse)).Fexplain) == 2 { var bCover int32 = (libc.Bool32((pIdx != uintptr(0)) && ((((*Table)(unsafe.Pointer((pTab))).FtabFlags & U32(TF_WithoutRowid)) == U32(0)) || !((int32(*(*uint16)(unsafe.Pointer((pIdx) + 56 /* &.idxType */)) & 0x3 >> 0)) == SQLITE_IDXTYPE_PRIMARYKEY)))) - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+18010, /* "SCAN %s%s%s" */ + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+18020, /* "SCAN %s%s%s" */ libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, func() uintptr { if bCover != 0 { - return ts + 18022 /* " USING COVERING ..." */ + return ts + 18032 /* " USING COVERING ..." */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), func() uintptr { if bCover != 0 { return (*Index)(unsafe.Pointer(pIdx)).FzName } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }())) } } @@ -118852,7 +119468,7 @@ func havingToWhereExprCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { if (Xsqlite3ExprIsConstantOrGroupBy(tls, (*Walker)(unsafe.Pointer(pWalker)).FpParse, pExpr, (*Select)(unsafe.Pointer(pS)).FpGroupBy) != 0) && ((libc.Bool32(((*Expr)(unsafe.Pointer((pExpr))).Fflags & (U32(EP_FromJoin | EP_IsFalse))) == U32(EP_IsFalse))) == 0) { var db uintptr = (*Parse)(unsafe.Pointer((*Walker)(unsafe.Pointer(pWalker)).FpParse)).Fdb - var pNew uintptr = Xsqlite3Expr(tls, db, TK_INTEGER, ts+6913 /* "1" */) + var pNew uintptr = Xsqlite3Expr(tls, db, TK_INTEGER, ts+6923 /* "1" */) if pNew != 0 { var pWhere uintptr = (*Select)(unsafe.Pointer(pS)).FpWhere { @@ -119154,7 +119770,7 @@ __7: goto __10 } Xsqlite3ErrorMsg(tls, pParse, - ts+18045, /* "target object/al..." */ + ts+18055, /* "target object/al..." */ libc.VaList(bp, func() uintptr { if (*SrcItem)(unsafe.Pointer(p0)).FzAlias != 0 { return (*SrcItem)(unsafe.Pointer(p0)).FzAlias @@ -119234,7 +119850,7 @@ __17: if !(int32((*Table)(unsafe.Pointer(pTab)).FnCol) != (*ExprList)(unsafe.Pointer((*Select)(unsafe.Pointer(pSub)).FpEList)).FnExpr) { goto __18 } - Xsqlite3ErrorMsg(tls, pParse, ts+18099, /* "expected %d colu..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+18109, /* "expected %d colu..." */ libc.VaList(bp+8, int32((*Table)(unsafe.Pointer(pTab)).FnCol), (*Table)(unsafe.Pointer(pTab)).FzName, (*ExprList)(unsafe.Pointer((*Select)(unsafe.Pointer(pSub)).FpEList)).FnExpr)) goto select_end __18: @@ -119375,7 +119991,7 @@ __29: if !(((*SrcItem)(unsafe.Pointer(pItem1)).FcolUsed == uint64(0)) && ((*SrcItem)(unsafe.Pointer(pItem1)).FzName != uintptr(0))) { goto __32 } - Xsqlite3AuthCheck(tls, pParse, SQLITE_READ, (*SrcItem)(unsafe.Pointer(pItem1)).FzName, ts+755 /* "" */, (*SrcItem)(unsafe.Pointer(pItem1)).FzDatabase) + Xsqlite3AuthCheck(tls, pParse, SQLITE_READ, (*SrcItem)(unsafe.Pointer(pItem1)).FzName, ts+765 /* "" */, (*SrcItem)(unsafe.Pointer(pItem1)).FzDatabase) __32: ; @@ -119440,7 +120056,7 @@ __35: (*SrcItem)(unsafe.Pointer(pItem1)).FaddrFillSub = addrTop Xsqlite3SelectDestInit(tls, bp+88 /* &dest */, SRT_Coroutine, (*SrcItem)(unsafe.Pointer(pItem1)).FregReturn) - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+18139 /* "CO-ROUTINE %!S" */, libc.VaList(bp+32, pItem1)) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+18149 /* "CO-ROUTINE %!S" */, libc.VaList(bp+32, pItem1)) Xsqlite3Select(tls, pParse, pSub1, bp+88 /* &dest */) (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pItem1)).FpTab)).FnRowLogEst = (*Select)(unsafe.Pointer(pSub1)).FnSelectRow libc.SetBitFieldPtr16Uint32(pItem1+36 /* &.fg */ +4 /* &.viaCoroutine */, uint32(1), 4, 0x10) @@ -119502,7 +120118,7 @@ __44: __45: ; Xsqlite3SelectDestInit(tls, bp+88 /* &dest */, SRT_EphemTab, (*SrcItem)(unsafe.Pointer(pItem1)).FiCursor) - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+18154 /* "MATERIALIZE %!S" */, libc.VaList(bp+40, pItem1)) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+18164 /* "MATERIALIZE %!S" */, libc.VaList(bp+40, pItem1)) Xsqlite3Select(tls, pParse, pSub1, bp+88 /* &dest */) (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pItem1)).FpTab)).FnRowLogEst = (*Select)(unsafe.Pointer(pSub1)).FnSelectRow if !(onceAddr != 0) { @@ -120022,9 +120638,9 @@ __97: explainTempTable(tls, pParse, func() uintptr { if ((*DistinctCtx)(unsafe.Pointer(bp+116 /* &sDistinct */)).FisTnct != 0) && (((*Select)(unsafe.Pointer(p)).FselFlags & U32(SF_Distinct)) == U32(0)) { - return ts + 18170 /* "DISTINCT" */ + return ts + 18180 /* "DISTINCT" */ } - return ts + 18179 /* "GROUP BY" */ + return ts + 18189 /* "GROUP BY" */ }()) groupBySort = 1 @@ -120436,7 +121052,7 @@ __58: if !(int32((*DistinctCtx)(unsafe.Pointer(bp+116 /* &sDistinct */)).FeTnctType) == WHERE_DISTINCT_UNORDERED) { goto __140 } - explainTempTable(tls, pParse, ts+18170 /* "DISTINCT" */) + explainTempTable(tls, pParse, ts+18180 /* "DISTINCT" */) __140: ; @@ -120448,9 +121064,9 @@ __140: explainTempTable(tls, pParse, func() uintptr { if (*SortCtx)(unsafe.Pointer(bp+48 /* &sSort */)).FnOBSat > 0 { - return ts + 18188 /* "RIGHT PART OF OR..." */ + return ts + 18198 /* "RIGHT PART OF OR..." */ } - return ts + 18211 /* "ORDER BY" */ + return ts + 18221 /* "ORDER BY" */ }()) generateSortTail(tls, pParse, p, bp+48 /* &sSort */, (*ExprList)(unsafe.Pointer(pEList)).FnExpr, pDest) @@ -120583,7 +121199,7 @@ __7: if !(i < nCol) { goto __9 } - z = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(colv + uintptr(i)*4)))) + z = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(colv + uintptr(i)*4)))) if !(z == uintptr(0)) { goto __10 } @@ -120605,7 +121221,7 @@ __5: } Xsqlite3_free(tls, (*TabResult)(unsafe.Pointer(p)).FzErrMsg) (*TabResult)(unsafe.Pointer(p)).FzErrMsg = Xsqlite3_mprintf(tls, - ts+18220 /* "sqlite3_get_tabl..." */, 0) + ts+18230 /* "sqlite3_get_tabl..." */, 0) (*TabResult)(unsafe.Pointer(p)).Frc = SQLITE_ERROR return 1 __11: @@ -120704,7 +121320,7 @@ func Xsqlite3_get_table(tls *libc.TLS, db uintptr, zSql uintptr, pazResult uintp if (*TabResult)(unsafe.Pointer(bp+8 /* &res */)).FzErrMsg != 0 { if pzErrMsg != 0 { Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(pzErrMsg))) - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp, (*TabResult)(unsafe.Pointer(bp+8 /* &res */)).FzErrMsg)) + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp, (*TabResult)(unsafe.Pointer(bp+8 /* &res */)).FzErrMsg)) } Xsqlite3_free(tls, (*TabResult)(unsafe.Pointer(bp+8 /* &res */)).FzErrMsg) } @@ -120865,7 +121481,7 @@ func Xsqlite3BeginTrigger(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 if !((*Token)(unsafe.Pointer(pName2)).Fn > uint32(0)) { goto __3 } - Xsqlite3ErrorMsg(tls, pParse, ts+18285 /* "temporary trigge..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+18295 /* "temporary trigge..." */, 0) goto trigger_cleanup __3: ; @@ -120926,7 +121542,7 @@ __7: __8: ; - Xsqlite3FixInit(tls, bp+36 /* &sFix */, pParse, iDb, ts+18331 /* "trigger" */, *(*uintptr)(unsafe.Pointer(bp + 32 /* pName */))) + Xsqlite3FixInit(tls, bp+36 /* &sFix */, pParse, iDb, ts+18341 /* "trigger" */, *(*uintptr)(unsafe.Pointer(bp + 32 /* pName */))) if !(Xsqlite3FixSrcList(tls, bp+36 /* &sFix */, pTableName) != 0) { goto __9 } @@ -120944,7 +121560,7 @@ __10: if !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) { goto __11 } - Xsqlite3ErrorMsg(tls, pParse, ts+18339 /* "cannot create tr..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+18349 /* "cannot create tr..." */, 0) goto trigger_orphan_error __11: ; @@ -120959,7 +121575,7 @@ __11: goto trigger_cleanup __12: ; - if !(Xsqlite3CheckObjectName(tls, pParse, zName, ts+18331 /* "trigger" */, (*Table)(unsafe.Pointer(pTab)).FzName) != 0) { + if !(Xsqlite3CheckObjectName(tls, pParse, zName, ts+18341 /* "trigger" */, (*Table)(unsafe.Pointer(pTab)).FzName) != 0) { goto __13 } goto trigger_cleanup @@ -120975,7 +121591,7 @@ __13: if !(!(noErr != 0)) { goto __16 } - Xsqlite3ErrorMsg(tls, pParse, ts+18380 /* "trigger %T alrea..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 32 /* pName */)))) + Xsqlite3ErrorMsg(tls, pParse, ts+18390 /* "trigger %T alrea..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 32 /* pName */)))) goto __17 __16: ; @@ -120989,10 +121605,10 @@ __14: ; // Do not create a trigger on a system table - if !(Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+7081 /* "sqlite_" */, 7) == 0) { + if !(Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+7091 /* "sqlite_" */, 7) == 0) { goto __18 } - Xsqlite3ErrorMsg(tls, pParse, ts+18406 /* "cannot create tr..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+18416 /* "cannot create tr..." */, 0) goto trigger_cleanup __18: ; @@ -121002,12 +121618,12 @@ __18: if !(((*Table)(unsafe.Pointer(pTab)).FpSelect != 0) && (tr_tm != TK_INSTEAD)) { goto __19 } - Xsqlite3ErrorMsg(tls, pParse, ts+18444, /* "cannot create %s..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+18454, /* "cannot create %s..." */ libc.VaList(bp+8, func() uintptr { if tr_tm == TK_BEFORE { - return ts + 18481 /* "BEFORE" */ + return ts + 18491 /* "BEFORE" */ } - return ts + 18488 /* "AFTER" */ + return ts + 18498 /* "AFTER" */ }(), pTableName+8 /* &.a */)) goto trigger_orphan_error __19: @@ -121016,7 +121632,7 @@ __19: goto __20 } Xsqlite3ErrorMsg(tls, pParse, - ts+18494 /* "cannot create IN..." */, libc.VaList(bp+24, pTableName+8 /* &.a */)) + ts+18504 /* "cannot create IN..." */, libc.VaList(bp+24, pTableName+8 /* &.a */)) goto trigger_orphan_error __20: ; @@ -121046,9 +121662,9 @@ __23: ; if !(Xsqlite3AuthCheck(tls, pParse, SQLITE_INSERT, func() uintptr { if (!(0 != 0)) && (iTabDb == 1) { - return ts + 10872 /* "sqlite_temp_mast..." */ + return ts + 10882 /* "sqlite_temp_mast..." */ } - return ts + 4956 /* "sqlite_master" */ + return ts + 4966 /* "sqlite_master" */ }(), uintptr(0), zDb) != 0) { goto __24 } @@ -121182,7 +121798,7 @@ __2: __3: ; Xsqlite3TokenInit(tls, bp+40 /* &nameToken */, (*Trigger)(unsafe.Pointer(pTrig)).FzName) - Xsqlite3FixInit(tls, bp+48 /* &sFix */, pParse, iDb, ts+18331 /* "trigger" */, bp+40 /* &nameToken */) + Xsqlite3FixInit(tls, bp+48 /* &sFix */, pParse, iDb, ts+18341 /* "trigger" */, bp+40 /* &nameToken */) if !((Xsqlite3FixTriggerStep(tls, bp+48 /* &sFix */, (*Trigger)(unsafe.Pointer(pTrig)).Fstep_list) != 0) || (Xsqlite3FixExpr(tls, bp+48 /* &sFix */, (*Trigger)(unsafe.Pointer(pTrig)).FpWhen) != 0)) { goto __4 @@ -121219,13 +121835,13 @@ __8: Xsqlite3NestedParse(tls, pParse, - ts+18540, /* "INSERT INTO %Q.s..." */ + ts+18550, /* "INSERT INTO %Q.s..." */ libc.VaList(bp, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, zName, (*Trigger)(unsafe.Pointer(pTrig)).Ftable, z)) Xsqlite3DbFree(tls, db, z) Xsqlite3ChangeCookie(tls, pParse, iDb) Xsqlite3VdbeAddParseSchemaOp(tls, v, iDb, - Xsqlite3MPrintf(tls, db, ts+18615 /* "type='trigger' A..." */, libc.VaList(bp+32, zName)), uint16(0)) + Xsqlite3MPrintf(tls, db, ts+18625 /* "type='trigger' A..." */, libc.VaList(bp+32, zName)), uint16(0)) __7: ; __6: @@ -121491,7 +122107,7 @@ __5: if !(!(noErr != 0)) { goto __9 } - Xsqlite3ErrorMsg(tls, pParse, ts+18644 /* "no such trigger:..." */, libc.VaList(bp, pName+8 /* &.a */)) + Xsqlite3ErrorMsg(tls, pParse, ts+18654 /* "no such trigger:..." */, libc.VaList(bp, pName+8 /* &.a */)) goto __10 __9: Xsqlite3CodeVerifyNamedSchema(tls, pParse, zDb) @@ -121532,9 +122148,9 @@ func Xsqlite3DropTriggerPtr(tls *libc.TLS, pParse uintptr, pTrigger uintptr) { / var zDb uintptr = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16)).FzDbSName var zTab uintptr = func() uintptr { if (!(0 != 0)) && (iDb == 1) { - return ts + 10872 /* "sqlite_temp_mast..." */ + return ts + 10882 /* "sqlite_temp_mast..." */ } - return ts + 4956 /* "sqlite_master" */ + return ts + 4966 /* "sqlite_master" */ }() if iDb == 1 { code = SQLITE_DROP_TEMP_TRIGGER @@ -121547,7 +122163,7 @@ func Xsqlite3DropTriggerPtr(tls *libc.TLS, pParse uintptr, pTrigger uintptr) { / // Generate code to destroy the database record of the trigger. if (libc.AssignUintptr(&v, Xsqlite3GetVdbe(tls, pParse))) != uintptr(0) { Xsqlite3NestedParse(tls, pParse, - ts+18664, /* "DELETE FROM %Q.s..." */ + ts+18674, /* "DELETE FROM %Q.s..." */ libc.VaList(bp, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, (*Trigger)(unsafe.Pointer(pTrigger)).FzName)) Xsqlite3ChangeCookie(tls, pParse, iDb) Xsqlite3VdbeAddOp4(tls, v, OP_DropTrigger, iDb, 0, 0, (*Trigger)(unsafe.Pointer(pTrigger)).FzName, 0) @@ -121666,12 +122282,12 @@ __9: goto __15 } Xsqlite3ErrorMsg(tls, pParse, - ts+18726, /* "%s RETURNING is ..." */ + ts+18736, /* "%s RETURNING is ..." */ libc.VaList(bp, func() uintptr { if op == TK_DELETE { - return ts + 18774 /* "DELETE" */ + return ts + 18784 /* "DELETE" */ } - return ts + 18781 /* "UPDATE" */ + return ts + 18791 /* "UPDATE" */ }())) __15: ; @@ -121767,7 +122383,7 @@ func isAsteriskTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr) int32 { /* sql if int32((*Expr)(unsafe.Pointer((*Expr)(unsafe.Pointer(pTerm)).FpRight)).Fop) != TK_ASTERISK { return 0 } - Xsqlite3ErrorMsg(tls, pParse, ts+18788 /* "RETURNING may no..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+18798 /* "RETURNING may no..." */, 0) return 1 } @@ -121908,7 +122524,7 @@ func codeTriggerProgram(tls *libc.TLS, pParse uintptr, pStepList uintptr, orconf if (*TriggerStep)(unsafe.Pointer(pStep)).FzSpan != 0 { Xsqlite3VdbeAddOp4(tls, v, OP_Trace, 0x7fffffff, 1, 0, - Xsqlite3MPrintf(tls, db, ts+5143 /* "-- %s" */, libc.VaList(bp, (*TriggerStep)(unsafe.Pointer(pStep)).FzSpan)), + Xsqlite3MPrintf(tls, db, ts+5153 /* "-- %s" */, libc.VaList(bp, (*TriggerStep)(unsafe.Pointer(pStep)).FzSpan)), -7) } @@ -122038,7 +122654,7 @@ func codeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintpt if (*Trigger)(unsafe.Pointer(pTrigger)).FzName != 0 { Xsqlite3VdbeChangeP4(tls, v, -1, - Xsqlite3MPrintf(tls, db, ts+18830 /* "-- TRIGGER %s" */, libc.VaList(bp, (*Trigger)(unsafe.Pointer(pTrigger)).FzName)), -7) + Xsqlite3MPrintf(tls, db, ts+18840 /* "-- TRIGGER %s" */, libc.VaList(bp, (*Trigger)(unsafe.Pointer(pTrigger)).FzName)), -7) } // If one was specified, code the WHEN clause. If it evaluates to false @@ -122741,7 +123357,7 @@ __25: } Xsqlite3ErrorMsg(tls, pParse, - ts+18844, /* "cannot UPDATE ge..." */ + ts+18854, /* "cannot UPDATE ge..." */ libc.VaList(bp, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(j)*20)).FzName)) goto update_cleanup __27: @@ -122773,7 +123389,7 @@ __21: iRowidExpr = i goto __30 __29: - Xsqlite3ErrorMsg(tls, pParse, ts+18880 /* "no such column: ..." */, libc.VaList(bp+8, (*ExprList_item)(unsafe.Pointer((pChanges+8 /* &.a */)+uintptr(i)*20)).FzEName)) + Xsqlite3ErrorMsg(tls, pParse, ts+18890 /* "no such column: ..." */, libc.VaList(bp+8, (*ExprList_item)(unsafe.Pointer((pChanges+8 /* &.a */)+uintptr(i)*20)).FzEName)) (*Parse)(unsafe.Pointer(pParse)).FcheckSchema = U8(1) goto update_cleanup __30: @@ -122784,7 +123400,7 @@ __28: rc = Xsqlite3AuthCheck(tls, pParse, SQLITE_UPDATE, (*Table)(unsafe.Pointer(pTab)).FzName, func() uintptr { if j < 0 { - return ts + 6688 /* "ROWID" */ + return ts + 6698 /* "ROWID" */ } return (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(j)*20)).FzName }(), @@ -123815,7 +124431,7 @@ __168: } Xsqlite3VdbeAddOp2(tls, v, OP_ChngCntRow, regRowCount, 1) Xsqlite3VdbeSetNumCols(tls, v, 1) - Xsqlite3VdbeSetColName(tls, v, 0, COLNAME_NAME, ts+18899 /* "rows updated" */, uintptr(0)) + Xsqlite3VdbeSetColName(tls, v, 0, COLNAME_NAME, ts+18909 /* "rows updated" */, uintptr(0)) __169: ; @@ -124202,10 +124818,10 @@ __1: if (nClause == 0) && ((*Upsert)(unsafe.Pointer(pUpsert)).FpNextUpsert == uintptr(0)) { *(*int8)(unsafe.Pointer(bp + 152 /* &zWhich[0] */)) = int8(0) } else { - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([16]int8{})), bp+152 /* &zWhich[0] */, ts+18912 /* "%r " */, libc.VaList(bp, (nClause+1))) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([16]int8{})), bp+152 /* &zWhich[0] */, ts+18922 /* "%r " */, libc.VaList(bp, (nClause+1))) } Xsqlite3ErrorMsg(tls, pParse, - ts+18916 /* "%sON CONFLICT cl..." */, libc.VaList(bp+8, bp+152 /* &zWhich[0] */)) + ts+18926 /* "%sON CONFLICT cl..." */, libc.VaList(bp+8, bp+152 /* &zWhich[0] */)) return SQLITE_ERROR } @@ -124296,7 +124912,7 @@ func Xsqlite3UpsertDoUpdate(tls *libc.TLS, pParse uintptr, pUpsert uintptr, pTab i = Xsqlite3VdbeAddOp4Int(tls, v, OP_Found, iDataCur, 0, iPk, nPk) Xsqlite3VdbeAddOp4(tls, v, OP_Halt, SQLITE_CORRUPT, OE_Abort, 0, - ts+10926 /* "corrupt database" */, -1) + ts+10936 /* "corrupt database" */, -1) Xsqlite3MayAbort(tls, pParse) Xsqlite3VdbeJumpHere(tls, v, i) } @@ -124364,7 +124980,7 @@ func execSql(tls *libc.TLS, db uintptr, pzErrMsg uintptr, zSql uintptr) int32 { // then run VACUUM to get those statements to execute at inappropriate // times. if (zSubSql != 0) && - ((libc.Xstrncmp(tls, zSubSql, ts+18989 /* "CRE" */, uint32(3)) == 0) || (libc.Xstrncmp(tls, zSubSql, ts+18993 /* "INS" */, uint32(3)) == 0)) { + ((libc.Xstrncmp(tls, zSubSql, ts+18999 /* "CRE" */, uint32(3)) == 0) || (libc.Xstrncmp(tls, zSubSql, ts+19003 /* "INS" */, uint32(3)) == 0)) { rc = execSql(tls, db, pzErrMsg, zSubSql) if rc != SQLITE_OK { break @@ -124514,14 +125130,14 @@ func Xsqlite3RunVacuum(tls *libc.TLS, pzErrMsg uintptr, db uintptr, iDb int32, p if !(!(int32((*Sqlite3)(unsafe.Pointer(db)).FautoCommit) != 0)) { goto __1 } - Xsqlite3SetString(tls, pzErrMsg, db, ts+18997 /* "cannot VACUUM fr..." */) + Xsqlite3SetString(tls, pzErrMsg, db, ts+19007 /* "cannot VACUUM fr..." */) return SQLITE_ERROR // IMP: R-12218-18073 __1: ; if !((*Sqlite3)(unsafe.Pointer(db)).FnVdbeActive > 1) { goto __2 } - Xsqlite3SetString(tls, pzErrMsg, db, ts+19037 /* "cannot VACUUM - ..." */) + Xsqlite3SetString(tls, pzErrMsg, db, ts+19047 /* "cannot VACUUM - ..." */) return SQLITE_ERROR // IMP: R-15610-35227 __2: ; @@ -124532,7 +125148,7 @@ __2: if !(Xsqlite3_value_type(tls, pOut) != SQLITE_TEXT) { goto __5 } - Xsqlite3SetString(tls, pzErrMsg, db, ts+19080 /* "non-text filenam..." */) + Xsqlite3SetString(tls, pzErrMsg, db, ts+19090 /* "non-text filenam..." */) return SQLITE_ERROR __5: ; @@ -124541,7 +125157,7 @@ __5: *(*uint32)(unsafe.Pointer(db + 56 /* &.openFlags */)) |= (uint32(SQLITE_OPEN_CREATE | SQLITE_OPEN_READWRITE)) goto __4 __3: - zOut = ts + 755 /* "" */ + zOut = ts + 765 /* "" */ __4: ; @@ -124577,7 +125193,7 @@ __4: // time to parse and run the PRAGMA to turn journalling off than it does // to write the journal header file. nDb = (*Sqlite3)(unsafe.Pointer(db)).FnDb - rc = execSqlF(tls, db, pzErrMsg, ts+19098 /* "ATTACH %Q AS vac..." */, libc.VaList(bp, zOut)) + rc = execSqlF(tls, db, pzErrMsg, ts+19108 /* "ATTACH %Q AS vac..." */, libc.VaList(bp, zOut)) (*Sqlite3)(unsafe.Pointer(db)).FopenFlags = saved_openFlags if !(rc != SQLITE_OK) { goto __6 @@ -124598,7 +125214,7 @@ __6: goto __8 } rc = SQLITE_ERROR - Xsqlite3SetString(tls, pzErrMsg, db, ts+19121 /* "output file alre..." */) + Xsqlite3SetString(tls, pzErrMsg, db, ts+19131 /* "output file alre..." */) goto end_of_vacuum __8: ; @@ -124614,7 +125230,7 @@ __7: // Begin a transaction and take an exclusive lock on the main database // file. This is done before the sqlite3BtreeGetPageSize(pMain) call below, // to ensure that we do not try to change the page-size on a WAL database. - rc = execSql(tls, db, pzErrMsg, ts+13213 /* "BEGIN" */) + rc = execSql(tls, db, pzErrMsg, ts+13223 /* "BEGIN" */) if !(rc != SQLITE_OK) { goto __9 } @@ -124665,7 +125281,7 @@ __12: (*Sqlite3)(unsafe.Pointer(db)).Finit.FiDb = U8(nDb) // force new CREATE statements into vacuum_db rc = execSqlF(tls, db, pzErrMsg, - ts+19148, /* "SELECT sql FROM ..." */ + ts+19158, /* "SELECT sql FROM ..." */ libc.VaList(bp+8, zDbMain)) if !(rc != SQLITE_OK) { goto __13 @@ -124675,7 +125291,7 @@ __13: ; rc = execSqlF(tls, db, pzErrMsg, - ts+19256, /* "SELECT sql FROM ..." */ + ts+19266, /* "SELECT sql FROM ..." */ libc.VaList(bp+16, zDbMain)) if !(rc != SQLITE_OK) { goto __14 @@ -124690,7 +125306,7 @@ __14: // the contents to the temporary database. rc = execSqlF(tls, db, pzErrMsg, - ts+19310, /* "SELECT'INSERT IN..." */ + ts+19320, /* "SELECT'INSERT IN..." */ libc.VaList(bp+24, zDbMain)) *(*U32)(unsafe.Pointer(db + 24 /* &.mDbFlags */)) &= (libc.Uint32FromInt32(libc.CplInt32(DBFLAG_Vacuum))) @@ -124707,7 +125323,7 @@ __15: // from the schema table. rc = execSqlF(tls, db, pzErrMsg, - ts+19461, /* "INSERT INTO vacu..." */ + ts+19471, /* "INSERT INTO vacu..." */ libc.VaList(bp+32, zDbMain)) if !(rc != 0) { goto __16 @@ -124875,7 +125491,7 @@ func createModule(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAu Xsqlite3VtabCreateModule(tls, db, zName, pModule, pAux, xDestroy) rc = Xsqlite3ApiExit(tls, db, rc) if (rc != SQLITE_OK) && (xDestroy != 0) { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDestroy)))(tls, pAux) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDestroy})).f(tls, pAux) } Xsqlite3_mutex_leave(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) return rc @@ -124919,7 +125535,7 @@ func Xsqlite3VtabModuleUnref(tls *libc.TLS, db uintptr, pMod uintptr) { /* sqlit (*Module)(unsafe.Pointer(pMod)).FnRefModule-- if (*Module)(unsafe.Pointer(pMod)).FnRefModule == 0 { if (*Module)(unsafe.Pointer(pMod)).FxDestroy != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pMod + 16 /* &.xDestroy */))))(tls, (*Module)(unsafe.Pointer(pMod)).FpAux) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Module)(unsafe.Pointer(pMod)).FxDestroy})).f(tls, (*Module)(unsafe.Pointer(pMod)).FpAux) } Xsqlite3DbFree(tls, db, pMod) @@ -124957,7 +125573,9 @@ func Xsqlite3VtabUnlock(tls *libc.TLS, pVTab uintptr) { /* sqlite3.c:143352:21: var p uintptr = (*VTable)(unsafe.Pointer(pVTab)).FpVtab Xsqlite3VtabModuleUnref(tls, (*VTable)(unsafe.Pointer(pVTab)).Fdb, (*VTable)(unsafe.Pointer(pVTab)).FpMod) if p != 0 { - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_vtab)(unsafe.Pointer(p)).FpModule + 16 /* &.xDisconnect */))))(tls, p) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer((*Sqlite3_vtab)(unsafe.Pointer(p)).FpModule)).FxDisconnect})).f(tls, p) } Xsqlite3DbFree(tls, db, pVTab) } @@ -125087,7 +125705,7 @@ func addModuleArgument(tls *libc.TLS, pParse uintptr, pTable uintptr, zArg uintp var azModuleArg uintptr var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if ((*Table)(unsafe.Pointer(pTable)).FnModuleArg + 3) >= *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 2*4)) { - Xsqlite3ErrorMsg(tls, pParse, ts+11156 /* "too many columns..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTable)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+11166 /* "too many columns..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTable)).FzName)) } azModuleArg = Xsqlite3DbRealloc(tls, db, (*Table)(unsafe.Pointer(pTable)).FazModuleArg, uint64(nBytes)) if azModuleArg == uintptr(0) { @@ -125181,7 +125799,7 @@ func Xsqlite3VtabFinishParse(tls *libc.TLS, pParse uintptr, pEnd uintptr) { /* s if pEnd != 0 { (*Parse)(unsafe.Pointer(pParse)).FsNameToken.Fn = (uint32(((int32((*Token)(unsafe.Pointer(pEnd)).Fz) - int32((*Parse)(unsafe.Pointer(pParse)).FsNameToken.Fz)) / 1)) + (*Token)(unsafe.Pointer(pEnd)).Fn) } - zStmt = Xsqlite3MPrintf(tls, db, ts+19591 /* "CREATE VIRTUAL T..." */, libc.VaList(bp, (pParse+180 /* &.sNameToken */))) + zStmt = Xsqlite3MPrintf(tls, db, ts+19601 /* "CREATE VIRTUAL T..." */, libc.VaList(bp, (pParse+180 /* &.sNameToken */))) // A slot for the record has already been allocated in the // schema table. We just need to update that slot with all @@ -125193,7 +125811,7 @@ func Xsqlite3VtabFinishParse(tls *libc.TLS, pParse uintptr, pEnd uintptr) { /* s iDb = Xsqlite3SchemaToIndex(tls, db, (*Table)(unsafe.Pointer(pTab)).FpSchema) Xsqlite3NestedParse(tls, pParse, - ts+19615, /* "UPDATE %Q.sqlite..." */ + ts+19625, /* "UPDATE %Q.sqlite..." */ libc.VaList(bp+8, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, (*Table)(unsafe.Pointer(pTab)).FzName, (*Table)(unsafe.Pointer(pTab)).FzName, @@ -125203,7 +125821,7 @@ func Xsqlite3VtabFinishParse(tls *libc.TLS, pParse uintptr, pEnd uintptr) { /* s Xsqlite3ChangeCookie(tls, pParse, iDb) Xsqlite3VdbeAddOp0(tls, v, OP_Expire) - zWhere = Xsqlite3MPrintf(tls, db, ts+19714 /* "name=%Q AND sql=..." */, libc.VaList(bp+48, (*Table)(unsafe.Pointer(pTab)).FzName, zStmt)) + zWhere = Xsqlite3MPrintf(tls, db, ts+19724 /* "name=%Q AND sql=..." */, libc.VaList(bp+48, (*Table)(unsafe.Pointer(pTab)).FzName, zStmt)) Xsqlite3VdbeAddParseSchemaOp(tls, v, iDb, zWhere, uint16(0)) Xsqlite3DbFree(tls, db, zStmt) @@ -125268,7 +125886,7 @@ func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, for pCtx = (*Sqlite3)(unsafe.Pointer(db)).FpVtabCtx; pCtx != 0; pCtx = (*VtabCtx)(unsafe.Pointer(pCtx)).FpPrior { if (*VtabCtx)(unsafe.Pointer(pCtx)).FpTab == pTab { *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, - ts+19733 /* "vtable construct..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + ts+19743 /* "vtable construct..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) return SQLITE_LOCKED } } @@ -125298,7 +125916,9 @@ func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, (*VtabCtx)(unsafe.Pointer(bp + 32 /* &sCtx */)).FpPrior = (*Sqlite3)(unsafe.Pointer(db)).FpVtabCtx (*VtabCtx)(unsafe.Pointer(bp + 32 /* &sCtx */)).FbDeclared = 0 (*Sqlite3)(unsafe.Pointer(db)).FpVtabCtx = bp + 32 /* &sCtx */ - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(&xConstruct)))(tls, db, (*Module)(unsafe.Pointer(pMod)).FpAux, nArg, azArg, (pVTable + 8 /* &.pVtab */), bp+48 /* &zErr */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xConstruct})).f(tls, db, (*Module)(unsafe.Pointer(pMod)).FpAux, nArg, azArg, (pVTable + 8 /* &.pVtab */), bp+48 /* &zErr */) (*Sqlite3)(unsafe.Pointer(db)).FpVtabCtx = (*VtabCtx)(unsafe.Pointer(bp + 32 /* &sCtx */)).FpPrior if rc == SQLITE_NOMEM { Xsqlite3OomFault(tls, db) @@ -125306,9 +125926,9 @@ func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, if SQLITE_OK != rc { if *(*uintptr)(unsafe.Pointer(bp + 48 /* zErr */)) == uintptr(0) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, ts+19775 /* "vtable construct..." */, libc.VaList(bp+8, zModuleName)) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, ts+19785 /* "vtable construct..." */, libc.VaList(bp+8, zModuleName)) } else { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, ts+2790 /* "%s" */, libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer(bp + 48 /* zErr */)))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, ts+2800 /* "%s" */, libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer(bp + 48 /* zErr */)))) Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 48 /* zErr */))) } Xsqlite3DbFree(tls, db, pVTable) @@ -125320,7 +125940,7 @@ func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, (*Module)(unsafe.Pointer(pMod)).FnRefModule++ (*VTable)(unsafe.Pointer(pVTable)).FnRef = 1 if (*VtabCtx)(unsafe.Pointer(bp+32 /* &sCtx */)).FbDeclared == 0 { - var zFormat uintptr = ts + 19805 /* "vtable construct..." */ + var zFormat uintptr = ts + 19815 /* "vtable construct..." */ *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, zFormat, libc.VaList(bp+24, (*Table)(unsafe.Pointer(pTab)).FzName)) Xsqlite3VtabUnlock(tls, pVTable) rc = SQLITE_ERROR @@ -125336,12 +125956,12 @@ func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, (*Table)(unsafe.Pointer(pTab)).FpVTable = pVTable for iCol = 0; iCol < int32((*Table)(unsafe.Pointer(pTab)).FnCol); iCol++ { - var zType uintptr = Xsqlite3ColumnType(tls, ((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(iCol)*20), ts+755 /* "" */) + var zType uintptr = Xsqlite3ColumnType(tls, ((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(iCol)*20), ts+765 /* "" */) var nType int32 var i int32 = 0 nType = Xsqlite3Strlen30(tls, zType) for i = 0; i < nType; i++ { - if ((0 == Xsqlite3_strnicmp(tls, ts+14670 /* "hidden" */, (zType+uintptr(i)), 6)) && + if ((0 == Xsqlite3_strnicmp(tls, ts+14680 /* "hidden" */, (zType+uintptr(i)), 6)) && ((i == 0) || (int32(*(*int8)(unsafe.Pointer(zType + uintptr((i - 1))))) == ' '))) && ((int32(*(*int8)(unsafe.Pointer(zType + uintptr((i + 6))))) == 0) || (int32(*(*int8)(unsafe.Pointer(zType + uintptr((i + 6))))) == ' ')) { break @@ -125400,13 +126020,13 @@ func Xsqlite3VtabCallConnect(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 if !(pMod != 0) { var zModule uintptr = *(*uintptr)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FazModuleArg)) - Xsqlite3ErrorMsg(tls, pParse, ts+19851 /* "no such module: ..." */, libc.VaList(bp, zModule)) + Xsqlite3ErrorMsg(tls, pParse, ts+19861 /* "no such module: ..." */, libc.VaList(bp, zModule)) rc = SQLITE_ERROR } else { *(*uintptr)(unsafe.Pointer(bp + 16 /* zErr */)) = uintptr(0) rc = vtabCallConstructor(tls, db, pTab, pMod, (*Sqlite3_module)(unsafe.Pointer((*Module)(unsafe.Pointer(pMod)).FpModule)).FxConnect, bp+16 /* &zErr */) if rc != SQLITE_OK { - Xsqlite3ErrorMsg(tls, pParse, ts+2790 /* "%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 16 /* zErr */)))) + Xsqlite3ErrorMsg(tls, pParse, ts+2800 /* "%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 16 /* zErr */)))) (*Parse)(unsafe.Pointer(pParse)).Frc = rc } Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 16 /* zErr */))) @@ -125468,7 +126088,7 @@ func Xsqlite3VtabCallCreate(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr, // invoke it now. If the module has not been registered, return an // error. Otherwise, do nothing. if ((pMod == uintptr(0)) || ((*Sqlite3_module)(unsafe.Pointer((*Module)(unsafe.Pointer(pMod)).FpModule)).FxCreate == uintptr(0))) || ((*Sqlite3_module)(unsafe.Pointer((*Module)(unsafe.Pointer(pMod)).FpModule)).FxDestroy == uintptr(0)) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, ts+19851 /* "no such module: ..." */, libc.VaList(bp, zMod)) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, ts+19861 /* "no such module: ..." */, libc.VaList(bp, zMod)) rc = SQLITE_ERROR } else { rc = vtabCallConstructor(tls, db, pTab, pMod, (*Sqlite3_module)(unsafe.Pointer((*Module)(unsafe.Pointer(pMod)).FpModule)).FxCreate, pzErr) @@ -125545,7 +126165,7 @@ func Xsqlite3_declare_vtab(tls *libc.TLS, db uintptr, zCreateTable uintptr) int3 } else { Xsqlite3ErrorWithMsg(tls, db, SQLITE_ERROR, func() uintptr { if *(*uintptr)(unsafe.Pointer(bp + 280 /* zErr */)) != 0 { - return ts + 2790 /* "%s" */ + return ts + 2800 /* "%s" */ } return uintptr(0) }(), libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 280 /* zErr */)))) @@ -125591,7 +126211,9 @@ func Xsqlite3VtabCallDestroy(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr) } (*Table)(unsafe.Pointer(pTab)).FnTabRef++ - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(&xDestroy)))(tls, (*VTable)(unsafe.Pointer(p)).FpVtab) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xDestroy})).f(tls, (*VTable)(unsafe.Pointer(p)).FpVtab) // Remove the sqlite3_vtab* from the aVTrans[] array, if applicable if rc == SQLITE_OK { @@ -125623,7 +126245,9 @@ func callFinaliser(tls *libc.TLS, db uintptr, offset int32) { /* sqlite3.c:14407 var x uintptr x = *(*uintptr)(unsafe.Pointer(((*Sqlite3_vtab)(unsafe.Pointer(p)).FpModule + uintptr(offset)))) if x != 0 { - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(&x)))(tls, p) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{x})).f(tls, p) } } (*VTable)(unsafe.Pointer(pVTab)).FiSavepoint = 0 @@ -125649,7 +126273,9 @@ func Xsqlite3VtabSync(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c var x uintptr var pVtab uintptr = (*VTable)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(aVTrans + uintptr(i)*4)))).FpVtab if (pVtab != 0) && ((libc.AssignUintptr(&x, (*Sqlite3_module)(unsafe.Pointer((*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FpModule)).FxSync)) != uintptr(0)) { - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(&x)))(tls, pVtab) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{x})).f(tls, pVtab) Xsqlite3VtabImportErrmsg(tls, p, pVtab) } } @@ -125707,13 +126333,17 @@ func Xsqlite3VtabBegin(tls *libc.TLS, db uintptr, pVTab uintptr) int32 { /* sqli // sqlite3.aVTrans[] array. rc = growVTrans(tls, db) if rc == SQLITE_OK { - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pModule + 56 /* &.xBegin */))))(tls, (*VTable)(unsafe.Pointer(pVTab)).FpVtab) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule)).FxBegin})).f(tls, (*VTable)(unsafe.Pointer(pVTab)).FpVtab) if rc == SQLITE_OK { var iSvpt int32 = ((*Sqlite3)(unsafe.Pointer(db)).FnStatement + (*Sqlite3)(unsafe.Pointer(db)).FnSavepoint) addToVTrans(tls, db, pVTab) if (iSvpt != 0) && ((*Sqlite3_module)(unsafe.Pointer(pModule)).FxSavepoint != 0) { (*VTable)(unsafe.Pointer(pVTab)).FiSavepoint = iSvpt - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pModule + 80 /* &.xSavepoint */))))(tls, (*VTable)(unsafe.Pointer(pVTab)).FpVtab, (iSvpt - 1)) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule)).FxSavepoint})).f(tls, (*VTable)(unsafe.Pointer(pVTab)).FpVtab, (iSvpt - 1)) } } } @@ -125760,7 +126390,9 @@ func Xsqlite3VtabSavepoint(tls *libc.TLS, db uintptr, op int32, iSavepoint int32 break } if (xMethod != 0) && ((*VTable)(unsafe.Pointer(pVTab)).FiSavepoint > iSavepoint) { - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(&xMethod)))(tls, (*VTable)(unsafe.Pointer(pVTab)).FpVtab, iSavepoint) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xMethod})).f(tls, (*VTable)(unsafe.Pointer(pVTab)).FpVtab, iSavepoint) } Xsqlite3VtabUnlock(tls, pVTab) } @@ -125819,7 +126451,9 @@ func Xsqlite3VtabOverloadFunction(tls *libc.TLS, db uintptr, pDef uintptr, nArg // Though undocumented, we have historically always invoked xFindFunction // with an all lower-case function name. Continue in this tradition to // avoid any chance of an incompatibility. - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pMod + 72 /* &.xFindFunction */))))(tls, pVtab, nArg, (*FuncDef)(unsafe.Pointer(pDef)).FzName, bp /* &xSFunc */, bp+4 /* &pArg */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pMod)).FxFindFunction})).f(tls, pVtab, nArg, (*FuncDef)(unsafe.Pointer(pDef)).FzName, bp /* &xSFunc */, bp+4 /* &pArg */) if rc == 0 { return pDef } @@ -125917,7 +126551,7 @@ func Xsqlite3VtabEponymousTableInit(tls *libc.TLS, pParse uintptr, pMod uintptr) addModuleArgument(tls, pParse, pTab, Xsqlite3DbStrDup(tls, db, (*Table)(unsafe.Pointer(pTab)).FzName)) rc = vtabCallConstructor(tls, db, pTab, pMod, (*Sqlite3_module)(unsafe.Pointer(pModule)).FxConnect, bp+8 /* &zErr */) if rc != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+2790 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErr */)))) + Xsqlite3ErrorMsg(tls, pParse, ts+2800 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErr */)))) Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErr */))) Xsqlite3VtabEponymousTableClear(tls, db, pMod) return 0 @@ -126047,15 +126681,15 @@ func Xsqlite3_vtab_config(tls *libc.TLS, db uintptr, op int32, va uintptr) int32 // Forward references type WhereClause1 = struct { - FpWInfo uintptr - FpOuter uintptr - Fop U8 - FhasOr U8 - _ [2]byte - FnTerm int32 - FnSlot int32 - Fa uintptr - FaStatic [8]WhereTerm + FpWInfo uintptr + FpOuter uintptr + Fop U8 + FhasOr U8 + F__ccgo_pad1 [2]byte + FnTerm int32 + FnSlot int32 + Fa uintptr + FaStatic [8]WhereTerm } /* sqlite3.c:14936:9 */ //************* End of vtab.c *********************************************** @@ -126163,7 +126797,7 @@ type WhereLoop1 = struct { FnLTerm U16 FnSkip U16 FnLSlot U16 - _ [2]byte + F__ccgo_pad1 [2]byte FaLTerm uintptr FpNextLoop uintptr FaLTermSpace [3]uintptr @@ -126171,14 +126805,14 @@ type WhereLoop1 = struct { type WhereLoop = WhereLoop1 /* sqlite3.c:144522:26 */ type WherePath1 = struct { - FmaskLoop Bitmask - FrevLoop Bitmask - FnRow LogEst - FrCost LogEst - FrUnsorted LogEst - FisOrdered I8 - _ [1]byte - FaLoop uintptr + FmaskLoop Bitmask + FrevLoop Bitmask + FnRow LogEst + FrCost LogEst + FrUnsorted LogEst + FisOrdered I8 + F__ccgo_pad1 [1]byte + FaLoop uintptr } /* sqlite3.c:144523:9 */ type WherePath = WherePath1 /* sqlite3.c:144523:26 */ @@ -126204,34 +126838,34 @@ type WhereTerm1 = struct { type WhereTerm = WhereTerm1 /* sqlite3.c:144524:26 */ type WhereLoopBuilder1 = struct { - FpWInfo uintptr - FpWC uintptr - FpOrderBy uintptr - FpNew uintptr - FpOrSet uintptr - FpRec uintptr - FnRecValid int32 - FbldFlags1 uint8 - FbldFlags2 uint8 - _ [2]byte - FiPlanLimit uint32 + FpWInfo uintptr + FpWC uintptr + FpOrderBy uintptr + FpNew uintptr + FpOrSet uintptr + FpRec uintptr + FnRecValid int32 + FbldFlags1 uint8 + FbldFlags2 uint8 + F__ccgo_pad1 [2]byte + FiPlanLimit uint32 } /* sqlite3.c:144525:9 */ type WhereLoopBuilder = WhereLoopBuilder1 /* sqlite3.c:144525:33 */ type WhereScan1 = struct { - FpOrigWC uintptr - FpWC uintptr - FzCollName uintptr - FpIdxExpr uintptr - Fidxaff int8 - FnEquiv uint8 - FiEquiv uint8 - _ [1]byte - FopMask U32 - Fk int32 - FaiCur [11]int32 - FaiColumn [11]I16 - _ [2]byte + FpOrigWC uintptr + FpWC uintptr + FzCollName uintptr + FpIdxExpr uintptr + Fidxaff int8 + FnEquiv uint8 + FiEquiv uint8 + F__ccgo_pad1 [1]byte + FopMask U32 + Fk int32 + FaiCur [11]int32 + FaiColumn [11]I16 + F__ccgo_pad2 [2]byte } /* sqlite3.c:144526:9 */ type WhereScan = WhereScan1 /* sqlite3.c:144526:26 */ @@ -126243,9 +126877,9 @@ type WhereOrCost1 = struct { type WhereOrCost = WhereOrCost1 /* sqlite3.c:144527:28 */ type WhereOrSet1 = struct { - Fn U16 - _ [2]byte - Fa [3]WhereOrCost + Fn U16 + F__ccgo_pad1 [2]byte + Fa [3]WhereOrCost } /* sqlite3.c:144525:9 */ type WhereOrSet = WhereOrSet1 /* sqlite3.c:144528:27 */ @@ -126264,12 +126898,12 @@ type WhereOrSet = WhereOrSet1 /* sqlite3.c:144528:27 */ // the loop nested order, with WhereInfo.a[0] being the outer loop and // WhereInfo.a[WhereInfo.nLevel-1] being the inner loop. type InLoop = struct { - FiCur int32 - FaddrInTop int32 - FiBase int32 - FnPrefix int32 - FeEndLoopOp U8 - _ [3]byte + FiCur int32 + FaddrInTop int32 + FiBase int32 + FnPrefix int32 + FeEndLoopOp U8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:144567:7 */ // Allowed values for WhereLoopBuider.bldFlags @@ -126343,10 +126977,10 @@ type WhereExprMod = WhereExprMod1 /* sqlite3.c:144931:29 */ func explainIndexColumnName(tls *libc.TLS, pIdx uintptr, i int32) uintptr { /* sqlite3.c:145112:19: */ i = int32(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(i)*2))) if i == (-2) { - return ts + 19870 /* "" */ + return ts + 19880 /* "" */ } if i == (-1) { - return ts + 14757 /* "rowid" */ + return ts + 14767 /* "rowid" */ } return (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FpTable)).FaCol + uintptr(i)*20)).FzName } @@ -126361,35 +126995,35 @@ func explainAppendTerm(tls *libc.TLS, pStr uintptr, pIdx uintptr, nTerm int32, i var i int32 if bAnd != 0 { - Xsqlite3_str_append(tls, pStr, ts+19877 /* " AND " */, 5) + Xsqlite3_str_append(tls, pStr, ts+19887 /* " AND " */, 5) } if nTerm > 1 { - Xsqlite3_str_append(tls, pStr, ts+19883 /* "(" */, 1) + Xsqlite3_str_append(tls, pStr, ts+19893 /* "(" */, 1) } for i = 0; i < nTerm; i++ { if i != 0 { - Xsqlite3_str_append(tls, pStr, ts+11537 /* "," */, 1) + Xsqlite3_str_append(tls, pStr, ts+11547 /* "," */, 1) } Xsqlite3_str_appendall(tls, pStr, explainIndexColumnName(tls, pIdx, (iTerm+i))) } if nTerm > 1 { - Xsqlite3_str_append(tls, pStr, ts+4066 /* ")" */, 1) + Xsqlite3_str_append(tls, pStr, ts+4076 /* ")" */, 1) } Xsqlite3_str_append(tls, pStr, zOp, 1) if nTerm > 1 { - Xsqlite3_str_append(tls, pStr, ts+19883 /* "(" */, 1) + Xsqlite3_str_append(tls, pStr, ts+19893 /* "(" */, 1) } for i = 0; i < nTerm; i++ { if i != 0 { - Xsqlite3_str_append(tls, pStr, ts+11537 /* "," */, 1) + Xsqlite3_str_append(tls, pStr, ts+11547 /* "," */, 1) } - Xsqlite3_str_append(tls, pStr, ts+4122 /* "?" */, 1) + Xsqlite3_str_append(tls, pStr, ts+4132 /* "?" */, 1) } if nTerm > 1 { - Xsqlite3_str_append(tls, pStr, ts+4066 /* ")" */, 1) + Xsqlite3_str_append(tls, pStr, ts+4076 /* ")" */, 1) } } @@ -126418,29 +127052,29 @@ func explainIndexRange(tls *libc.TLS, pStr uintptr, pLoop uintptr) { /* sqlite3. if (int32(nEq) == 0) && (((*WhereLoop)(unsafe.Pointer(pLoop)).FwsFlags & (U32(WHERE_BTM_LIMIT | WHERE_TOP_LIMIT))) == U32(0)) { return } - Xsqlite3_str_append(tls, pStr, ts+19885 /* " (" */, 2) + Xsqlite3_str_append(tls, pStr, ts+19895 /* " (" */, 2) for i = 0; i < int32(nEq); i++ { var z uintptr = explainIndexColumnName(tls, pIndex, i) if i != 0 { - Xsqlite3_str_append(tls, pStr, ts+19877 /* " AND " */, 5) + Xsqlite3_str_append(tls, pStr, ts+19887 /* " AND " */, 5) } Xsqlite3_str_appendf(tls, pStr, func() uintptr { if i >= int32(nSkip) { - return ts + 19888 /* "%s=?" */ + return ts + 19898 /* "%s=?" */ } - return ts + 19893 /* "ANY(%s)" */ + return ts + 19903 /* "ANY(%s)" */ }(), libc.VaList(bp, z)) } j = i if ((*WhereLoop)(unsafe.Pointer(pLoop)).FwsFlags & U32(WHERE_BTM_LIMIT)) != 0 { - explainAppendTerm(tls, pStr, pIndex, int32(*(*U16)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.btree */ + 2 /* &.nBtm */))), j, i, ts+19901 /* ">" */) + explainAppendTerm(tls, pStr, pIndex, int32(*(*U16)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.btree */ + 2 /* &.nBtm */))), j, i, ts+19911 /* ">" */) i = 1 } if ((*WhereLoop)(unsafe.Pointer(pLoop)).FwsFlags & U32(WHERE_TOP_LIMIT)) != 0 { - explainAppendTerm(tls, pStr, pIndex, int32(*(*U16)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.btree */ + 4 /* &.nTop */))), j, i, ts+19903 /* "<" */) + explainAppendTerm(tls, pStr, pIndex, int32(*(*U16)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.btree */ + 4 /* &.nTop */))), j, i, ts+19913 /* "<" */) } - Xsqlite3_str_append(tls, pStr, ts+4066 /* ")" */, 1) + Xsqlite3_str_append(tls, pStr, ts+4076 /* ")" */, 1) } // This function is a no-op unless currently processing an EXPLAIN QUERY PLAN @@ -126485,11 +127119,11 @@ func Xsqlite3WhereExplainOneScan(tls *libc.TLS, pParse uintptr, pTabList uintptr Xsqlite3StrAccumInit(tls, bp+48 /* &str */, db, bp+72 /* &zBuf[0] */, int32(unsafe.Sizeof([100]int8{})), SQLITE_MAX_LENGTH) (*StrAccum)(unsafe.Pointer(bp + 48 /* &str */)).FprintfFlags = U8(SQLITE_PRINTF_INTERNAL) - Xsqlite3_str_appendf(tls, bp+48 /* &str */, ts+19905 /* "%s %S" */, libc.VaList(bp, func() uintptr { + Xsqlite3_str_appendf(tls, bp+48 /* &str */, ts+19915 /* "%s %S" */, libc.VaList(bp, func() uintptr { if isSearch != 0 { - return ts + 19911 /* "SEARCH" */ + return ts + 19921 /* "SEARCH" */ } - return ts + 19918 /* "SCAN" */ + return ts + 19928 /* "SCAN" */ }(), pItem)) if (flags & (U32(WHERE_IPK | WHERE_VIRTUALTABLE))) == U32(0) { var zFmt uintptr = uintptr(0) @@ -126499,38 +127133,38 @@ func Xsqlite3WhereExplainOneScan(tls *libc.TLS, pParse uintptr, pTabList uintptr if !(((*Table)(unsafe.Pointer(((*SrcItem)(unsafe.Pointer(pItem)).FpTab))).FtabFlags & U32(TF_WithoutRowid)) == U32(0)) && ((int32(*(*uint16)(unsafe.Pointer((pIdx) + 56 /* &.idxType */)) & 0x3 >> 0)) == SQLITE_IDXTYPE_PRIMARYKEY) { if isSearch != 0 { - zFmt = ts + 9700 /* "PRIMARY KEY" */ + zFmt = ts + 9710 /* "PRIMARY KEY" */ } } else if (flags & U32(WHERE_PARTIALIDX)) != 0 { - zFmt = ts + 19923 /* "AUTOMATIC PARTIA..." */ + zFmt = ts + 19933 /* "AUTOMATIC PARTIA..." */ } else if (flags & U32(WHERE_AUTO_INDEX)) != 0 { - zFmt = ts + 19956 /* "AUTOMATIC COVERI..." */ + zFmt = ts + 19966 /* "AUTOMATIC COVERI..." */ } else if (flags & U32(WHERE_IDX_ONLY)) != 0 { - zFmt = ts + 19981 /* "COVERING INDEX %..." */ + zFmt = ts + 19991 /* "COVERING INDEX %..." */ } else { - zFmt = ts + 19999 /* "INDEX %s" */ + zFmt = ts + 20009 /* "INDEX %s" */ } if zFmt != 0 { - Xsqlite3_str_append(tls, bp+48 /* &str */, ts+20008 /* " USING " */, 7) + Xsqlite3_str_append(tls, bp+48 /* &str */, ts+20018 /* " USING " */, 7) Xsqlite3_str_appendf(tls, bp+48 /* &str */, zFmt, libc.VaList(bp+16, (*Index)(unsafe.Pointer(pIdx)).FzName)) explainIndexRange(tls, bp+48 /* &str */, pLoop) } } else if ((flags & U32(WHERE_IPK)) != U32(0)) && ((flags & U32(WHERE_CONSTRAINT)) != U32(0)) { var zRangeOp uintptr if (flags & (U32(WHERE_COLUMN_EQ | WHERE_COLUMN_IN))) != 0 { - zRangeOp = ts + 20016 /* "=" */ + zRangeOp = ts + 20026 /* "=" */ } else if (flags & U32(WHERE_BOTH_LIMIT)) == U32(WHERE_BOTH_LIMIT) { - zRangeOp = ts + 20018 /* ">? AND rowid<" */ + zRangeOp = ts + 20028 /* ">? AND rowid<" */ } else if (flags & U32(WHERE_BTM_LIMIT)) != 0 { - zRangeOp = ts + 19901 /* ">" */ + zRangeOp = ts + 19911 /* ">" */ } else { - zRangeOp = ts + 19903 /* "<" */ + zRangeOp = ts + 19913 /* "<" */ } Xsqlite3_str_appendf(tls, bp+48, /* &str */ - ts+20032 /* " USING INTEGER P..." */, libc.VaList(bp+24, zRangeOp)) + ts+20042 /* " USING INTEGER P..." */, libc.VaList(bp+24, zRangeOp)) } else if (flags & U32(WHERE_VIRTUALTABLE)) != U32(0) { - Xsqlite3_str_appendf(tls, bp+48 /* &str */, ts+20070, /* " VIRTUAL TABLE I..." */ + Xsqlite3_str_appendf(tls, bp+48 /* &str */, ts+20080, /* " VIRTUAL TABLE I..." */ libc.VaList(bp+32, *(*int32)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.vtab */ /* &.idxNum */)), *(*uintptr)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.vtab */ + 8 /* &.idxStr */)))) } zMsg = Xsqlite3StrAccumFinish(tls, bp+48 /* &str */) @@ -128086,7 +128720,7 @@ func Xsqlite3WhereCodeOneLoopStart(tls *libc.TLS, pParse uintptr, v uintptr, pWI // Run a separate WHERE clause for each term of the OR clause. After // eliminating duplicates from other WHERE clauses, the action for each // sub-WHERE clause is to to invoke the main loop body as a subroutine. - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20097 /* "MULTI-INDEX OR" */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20107 /* "MULTI-INDEX OR" */, 0) for ii = 0; ii < (*WhereClause)(unsafe.Pointer(pOrWc)).FnTerm; ii++ { var pOrTerm uintptr = ((*WhereClause)(unsafe.Pointer(pOrWc)).Fa + uintptr(ii)*48) if ((*WhereTerm)(unsafe.Pointer(pOrTerm)).FleftCursor == iCur) || ((int32((*WhereTerm)(unsafe.Pointer(pOrTerm)).FeOperator) & WO_AND) != 0) { @@ -128105,7 +128739,7 @@ func Xsqlite3WhereCodeOneLoopStart(tls *libc.TLS, pParse uintptr, v uintptr, pWI pOrExpr = pAndExpr } // Loop through table entries that match term pOrTerm. - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20112 /* "INDEX %d" */, libc.VaList(bp, (ii+1))) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20122 /* "INDEX %d" */, libc.VaList(bp, (ii+1))) pSubWInfo = Xsqlite3WhereBegin(tls, pParse, pOrTab, pOrExpr, uintptr(0), uintptr(0), uint16(WHERE_OR_SUBCLAUSE), iCovCur) @@ -128804,7 +129438,9 @@ func isAuxiliaryVtabOperator(tls *libc.TLS, db uintptr, pExpr uintptr, peOp2 uin pMod = (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FpModule if (*Sqlite3_module)(unsafe.Pointer(pMod)).FxFindFunction != uintptr(0) { - i = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pMod + 72 /* &.xFindFunction */))))(tls, pVtab, 2, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)), bp /* &xNotUsed */, bp+4 /* &pNotUsed */) + i = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pMod)).FxFindFunction})).f(tls, pVtab, 2, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)), bp /* &xNotUsed */, bp+4 /* &pNotUsed */) if i >= SQLITE_INDEX_CONSTRAINT_FUNCTION { *(*uint8)(unsafe.Pointer(peOp2)) = uint8(i) *(*uintptr)(unsafe.Pointer(ppRight)) = (*ExprList_item)(unsafe.Pointer((pList + 8 /* &.a */) + 1*20)).FpExpr @@ -128848,16 +129484,16 @@ func isAuxiliaryVtabOperator(tls *libc.TLS, db uintptr, pExpr uintptr, peOp2 uin } type Op2 = struct { - FzOp uintptr - FeOp2 uint8 - _ [3]byte + FzOp uintptr + FeOp2 uint8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:147955:18 */ var aOp = [4]Op2{ - {FzOp: ts + 14628 /* "match" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_MATCH)}, - {FzOp: ts + 14101 /* "glob" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_GLOB)}, - {FzOp: ts + 13651 /* "like" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_LIKE)}, - {FzOp: ts + 20121 /* "regexp" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_REGEXP)}, + {FzOp: ts + 14638 /* "match" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_MATCH)}, + {FzOp: ts + 14111 /* "glob" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_GLOB)}, + {FzOp: ts + 13661 /* "like" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_LIKE)}, + {FzOp: ts + 20131 /* "regexp" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_REGEXP)}, } /* sqlite3.c:147958:7 */ // If the pBase expression originated in the ON or USING clause of @@ -129558,7 +130194,7 @@ func exprAnalyze(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* s extraRight = (x - uint64(1)) // ON clause terms may not be used with an index // on left table of a LEFT JOIN. Ticket #3015 if (prereqAll >> 1) >= x { - Xsqlite3ErrorMsg(tls, pParse, ts+20128 /* "ON clause refere..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+20138 /* "ON clause refere..." */, 0) return } } @@ -129634,7 +130270,7 @@ func exprAnalyze(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* s (*WhereTerm)(unsafe.Pointer(pNew)).FeOperator = (U16((int32(operatorMask(tls, int32((*Expr)(unsafe.Pointer(pDup)).Fop))) + int32(eExtraOp)) & int32(opMask))) } else if (op == TK_ISNULL) && (0 == Xsqlite3ExprCanBeNull(tls, pLeft)) { (*Expr)(unsafe.Pointer(pExpr)).Fop = U8(TK_TRUEFALSE) - *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)) = ts + 5775 /* "false" */ + *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)) = ts + 5785 /* "false" */ *(*U32)(unsafe.Pointer(pExpr + 4 /* &.flags */)) |= (U32(EP_IsFalse)) (*WhereTerm)(unsafe.Pointer(pTerm)).FprereqAll = uint64(0) (*WhereTerm)(unsafe.Pointer(pTerm)).FeOperator = U16(0) @@ -129735,7 +130371,7 @@ func exprAnalyze(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* s } zCollSeqName = func() uintptr { if *(*int32)(unsafe.Pointer(bp + 16 /* noCase */)) != 0 { - return ts + 20169 /* "NOCASE" */ + return ts + 20179 /* "NOCASE" */ } return uintptr(unsafe.Pointer(&Xsqlite3StrBINARY)) }() @@ -130037,7 +130673,7 @@ func Xsqlite3WhereTabFuncArgs(tls *libc.TLS, pParse uintptr, pItem uintptr, pWC k++ } if k >= int32((*Table)(unsafe.Pointer(pTab)).FnCol) { - Xsqlite3ErrorMsg(tls, pParse, ts+20176, /* "too many argumen..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+20186, /* "too many argumen..." */ libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, j)) return } @@ -130860,7 +131496,7 @@ __4: goto __6 } Xsqlite3_log(tls, (SQLITE_WARNING | (int32(1) << 8)), - ts+20212 /* "automatic index ..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTable)).FzName, + ts+20222 /* "automatic index ..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTable)).FzName, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTable)).FaCol+uintptr(iCol)*20)).FzName)) sentWarning = U8(1) __6: @@ -130941,7 +131577,7 @@ __13: __14: ; *(*uintptr)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.btree */ + 8 /* &.pIndex */)) = pIdx - (*Index)(unsafe.Pointer(pIdx)).FzName = ts + 20238 /* "auto-index" */ + (*Index)(unsafe.Pointer(pIdx)).FzName = ts + 20248 /* "auto-index" */ (*Index)(unsafe.Pointer(pIdx)).FpTable = pTable n = 0 idxCols = uint64(0) @@ -131174,7 +131810,7 @@ __3: ((uint32(unsafe.Sizeof(sqlite3_index_constraint{})) + uint32(unsafe.Sizeof(sqlite3_index_constraint_usage{}))) * uint32(nTerm))) + (uint32(unsafe.Sizeof(sqlite3_index_orderby{})) * uint32(nOrderBy))) + uint32(unsafe.Sizeof(HiddenIndexInfo1{}))))) if pIdxInfo == uintptr(0) { - Xsqlite3ErrorMsg(tls, pParse, ts+5181 /* "out of memory" */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+5191 /* "out of memory" */, 0) return uintptr(0) } pHidden = (pIdxInfo + 1*64) @@ -131295,15 +131931,17 @@ func vtabBestIndex(tls *libc.TLS, pParse uintptr, pTab uintptr, p uintptr) int32 var pVtab uintptr = (*VTable)(unsafe.Pointer(Xsqlite3GetVTable(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, pTab))).FpVtab var rc int32 - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FpModule + 12 /* &.xBestIndex */))))(tls, pVtab, p) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer((*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FpModule)).FxBestIndex})).f(tls, pVtab, p) if (rc != SQLITE_OK) && (rc != SQLITE_CONSTRAINT) { if rc == SQLITE_NOMEM { Xsqlite3OomFault(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb) } else if !(int32((*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg) != 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+2790 /* "%s" */, libc.VaList(bp, Xsqlite3ErrStr(tls, rc))) + Xsqlite3ErrorMsg(tls, pParse, ts+2800 /* "%s" */, libc.VaList(bp, Xsqlite3ErrStr(tls, rc))) } else { - Xsqlite3ErrorMsg(tls, pParse, ts+2790 /* "%s" */, libc.VaList(bp+8, (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg)) + Xsqlite3ErrorMsg(tls, pParse, ts+2800 /* "%s" */, libc.VaList(bp+8, (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg)) } } Xsqlite3_free(tls, (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg) @@ -133353,7 +133991,7 @@ __4: (j >= (*WhereClause)(unsafe.Pointer(pWC)).FnTerm)) || (*(*uintptr)(unsafe.Pointer((*WhereLoop)(unsafe.Pointer(pNew)).FaLTerm + uintptr(iTerm)*4)) != uintptr(0))) || (int32((*sqlite3_index_constraint)(unsafe.Pointer(pIdxCons)).Fusable) == 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+20249 /* "%s.xBestIndex ma..." */, libc.VaList(bp, (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pSrc)).FpTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+20259 /* "%s.xBestIndex ma..." */, libc.VaList(bp, (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pSrc)).FpTab)).FzName)) return SQLITE_ERROR } @@ -133401,7 +134039,7 @@ __6: if *(*uintptr)(unsafe.Pointer((*WhereLoop)(unsafe.Pointer(pNew)).FaLTerm + uintptr(i)*4)) == uintptr(0) { // The non-zero argvIdx values must be contiguous. Raise an // error if they are not - Xsqlite3ErrorMsg(tls, pParse, ts+20249 /* "%s.xBestIndex ma..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pSrc)).FpTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+20259 /* "%s.xBestIndex ma..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pSrc)).FpTab)).FzName)) return SQLITE_ERROR } @@ -133790,7 +134428,7 @@ __1: if (rc != 0) || ((*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0) { if rc == SQLITE_DONE { // We hit the query planner search limit set by iPlanLimit - Xsqlite3_log(tls, SQLITE_WARNING, ts+20275 /* "abbreviated quer..." */, 0) + Xsqlite3_log(tls, SQLITE_WARNING, ts+20285 /* "abbreviated quer..." */, 0) rc = SQLITE_OK } else { goto __3 @@ -134559,7 +135197,7 @@ __3: } if nFrom == 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+20310 /* "no query solutio..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+20320 /* "no query solutio..." */, 0) Xsqlite3DbFreeNN(tls, db, pSpace) return SQLITE_ERROR } @@ -134940,7 +135578,7 @@ __2: if !((*SrcList)(unsafe.Pointer(pTabList)).FnSrc > (int32(uint32(unsafe.Sizeof(Bitmask(0))) * uint32(8)))) { goto __3 } - Xsqlite3ErrorMsg(tls, pParse, ts+20328 /* "at most %d table..." */, libc.VaList(bp, (int32(uint32(unsafe.Sizeof(Bitmask(0)))*uint32(8))))) + Xsqlite3ErrorMsg(tls, pParse, ts+20338 /* "at most %d table..." */, libc.VaList(bp, (int32(uint32(unsafe.Sizeof(Bitmask(0)))*uint32(8))))) return uintptr(0) __3: ; @@ -135015,7 +135653,7 @@ __7: (*WhereInfo)(unsafe.Pointer(pWInfo)).FeDistinct = U8(WHERE_DISTINCT_UNIQUE) __8: ; - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+20356 /* "SCAN CONSTANT RO..." */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+20366 /* "SCAN CONSTANT RO..." */, 0) goto __6 __5: // Assign a bit from the bitmask to every term in the FROM clause. @@ -135704,9 +136342,9 @@ func Xsqlite3WhereEnd(tls *libc.TLS, pWInfo uintptr) { /* sqlite3.c:154626:21: * } { - Xsqlite3VdbeJumpHere(tls, v, ((*InLoop)(unsafe.Pointer(pIn)).FaddrInTop + 1)) - if int32((*InLoop)(unsafe.Pointer(pIn)).FeEndLoopOp) != OP_Noop { - if (*InLoop)(unsafe.Pointer(pIn)).FnPrefix != 0 { + Xsqlite3VdbeJumpHere(tls, v, (*(*int32)(unsafe.Pointer(pIn + 4)) + 1)) + if int32(*(*U8)(unsafe.Pointer(pIn + 16))) != OP_Noop { + if *(*int32)(unsafe.Pointer(pIn + 12)) != 0 { var bEarlyOut int32 = (libc.Bool32((((*WhereLoop)(unsafe.Pointer(pLoop)).FwsFlags & U32(WHERE_VIRTUALTABLE)) == U32(0)) && (((*WhereLoop)(unsafe.Pointer(pLoop)).FwsFlags & U32(WHERE_IN_EARLYOUT)) != U32(0)))) if (*WhereLevel)(unsafe.Pointer(pLevel)).FiLeftJoin != 0 { @@ -135718,26 +136356,26 @@ func Xsqlite3WhereEnd(tls *libc.TLS, pWInfo uintptr) { /* sqlite3.c:154626:21: * // return the null-row. So, if the cursor is not open yet, // jump over the OP_Next or OP_Prev instruction about to // be coded. - Xsqlite3VdbeAddOp2(tls, v, OP_IfNotOpen, (*InLoop)(unsafe.Pointer(pIn)).FiCur, + Xsqlite3VdbeAddOp2(tls, v, OP_IfNotOpen, *(*int32)(unsafe.Pointer(pIn)), ((Xsqlite3VdbeCurrentAddr(tls, v) + 2) + bEarlyOut)) } if bEarlyOut != 0 { Xsqlite3VdbeAddOp4Int(tls, v, OP_IfNoHope, (*WhereLevel)(unsafe.Pointer(pLevel)).FiIdxCur, (Xsqlite3VdbeCurrentAddr(tls, v) + 2), - (*InLoop)(unsafe.Pointer(pIn)).FiBase, (*InLoop)(unsafe.Pointer(pIn)).FnPrefix) + *(*int32)(unsafe.Pointer(pIn + 8)), *(*int32)(unsafe.Pointer(pIn + 12))) // Retarget the OP_IsNull against the left operand of IN so // it jumps past the OP_IfNoHope. This is because the // OP_IsNull also bypasses the OP_Affinity opcode that is // required by OP_IfNoHope. - Xsqlite3VdbeJumpHere(tls, v, ((*InLoop)(unsafe.Pointer(pIn)).FaddrInTop + 1)) + Xsqlite3VdbeJumpHere(tls, v, (*(*int32)(unsafe.Pointer(pIn + 4)) + 1)) } } - Xsqlite3VdbeAddOp2(tls, v, int32((*InLoop)(unsafe.Pointer(pIn)).FeEndLoopOp), (*InLoop)(unsafe.Pointer(pIn)).FiCur, (*InLoop)(unsafe.Pointer(pIn)).FaddrInTop) + Xsqlite3VdbeAddOp2(tls, v, int32(*(*U8)(unsafe.Pointer(pIn + 16))), *(*int32)(unsafe.Pointer(pIn)), *(*int32)(unsafe.Pointer(pIn + 4))) } - Xsqlite3VdbeJumpHere(tls, v, ((*InLoop)(unsafe.Pointer(pIn)).FaddrInTop - 1)) + Xsqlite3VdbeJumpHere(tls, v, (*(*int32)(unsafe.Pointer(pIn + 4)) - 1)) } goto __2 @@ -136150,7 +136788,7 @@ __1: error_out: Xsqlite3_result_error(tls, - pCtx, ts+20374 /* "second argument ..." */, -1) + pCtx, ts+20384 /* "second argument ..." */, -1) } func nth_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:155162:13: */ @@ -136299,7 +136937,7 @@ func ntileStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* (*NtileCtx)(unsafe.Pointer(p)).FnParam = Xsqlite3_value_int64(tls, *(*uintptr)(unsafe.Pointer(apArg))) if (*NtileCtx)(unsafe.Pointer(p)).FnParam <= int64(0) { Xsqlite3_result_error(tls, - pCtx, ts+20430 /* "argument of ntil..." */, -1) + pCtx, ts+20440 /* "argument of ntil..." */, -1) } } (*NtileCtx)(unsafe.Pointer(p)).FnTotal++ @@ -136395,17 +137033,17 @@ func last_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:155441:1 // comparison of the zName pointer. Example: // // if( pFuncDef->zName==row_valueName ){ ... } -var row_numberName = *(*[11]int8)(unsafe.Pointer(ts + 20475 /* "row_number" */)) /* sqlite3.c:155459:19 */ -var dense_rankName = *(*[11]int8)(unsafe.Pointer(ts + 20486 /* "dense_rank" */)) /* sqlite3.c:155460:19 */ -var rankName = *(*[5]int8)(unsafe.Pointer(ts + 20497 /* "rank" */)) /* sqlite3.c:155461:19 */ -var percent_rankName = *(*[13]int8)(unsafe.Pointer(ts + 20502 /* "percent_rank" */)) /* sqlite3.c:155462:19 */ -var cume_distName = *(*[10]int8)(unsafe.Pointer(ts + 20515 /* "cume_dist" */)) /* sqlite3.c:155463:19 */ -var ntileName = *(*[6]int8)(unsafe.Pointer(ts + 20525 /* "ntile" */)) /* sqlite3.c:155464:19 */ -var last_valueName = *(*[11]int8)(unsafe.Pointer(ts + 20531 /* "last_value" */)) /* sqlite3.c:155465:19 */ -var nth_valueName = *(*[10]int8)(unsafe.Pointer(ts + 20542 /* "nth_value" */)) /* sqlite3.c:155466:19 */ -var first_valueName = *(*[12]int8)(unsafe.Pointer(ts + 20552 /* "first_value" */)) /* sqlite3.c:155467:19 */ -var leadName = *(*[5]int8)(unsafe.Pointer(ts + 20564 /* "lead" */)) /* sqlite3.c:155468:19 */ -var lagName = *(*[4]int8)(unsafe.Pointer(ts + 20569 /* "lag" */)) /* sqlite3.c:155469:19 */ +var row_numberName = *(*[11]int8)(unsafe.Pointer(ts + 20485 /* "row_number" */)) /* sqlite3.c:155459:19 */ +var dense_rankName = *(*[11]int8)(unsafe.Pointer(ts + 20496 /* "dense_rank" */)) /* sqlite3.c:155460:19 */ +var rankName = *(*[5]int8)(unsafe.Pointer(ts + 20507 /* "rank" */)) /* sqlite3.c:155461:19 */ +var percent_rankName = *(*[13]int8)(unsafe.Pointer(ts + 20512 /* "percent_rank" */)) /* sqlite3.c:155462:19 */ +var cume_distName = *(*[10]int8)(unsafe.Pointer(ts + 20525 /* "cume_dist" */)) /* sqlite3.c:155463:19 */ +var ntileName = *(*[6]int8)(unsafe.Pointer(ts + 20535 /* "ntile" */)) /* sqlite3.c:155464:19 */ +var last_valueName = *(*[11]int8)(unsafe.Pointer(ts + 20541 /* "last_value" */)) /* sqlite3.c:155465:19 */ +var nth_valueName = *(*[10]int8)(unsafe.Pointer(ts + 20552 /* "nth_value" */)) /* sqlite3.c:155466:19 */ +var first_valueName = *(*[12]int8)(unsafe.Pointer(ts + 20562 /* "first_value" */)) /* sqlite3.c:155467:19 */ +var leadName = *(*[5]int8)(unsafe.Pointer(ts + 20574 /* "lead" */)) /* sqlite3.c:155468:19 */ +var lagName = *(*[4]int8)(unsafe.Pointer(ts + 20579 /* "lag" */)) /* sqlite3.c:155469:19 */ // No-op implementations of xStep() and xFinalize(). Used as place-holders // for built-in window functions that never call those interfaces. @@ -136469,7 +137107,7 @@ func windowFind(tls *libc.TLS, pParse uintptr, pList uintptr, zName uintptr) uin } } if p == uintptr(0) { - Xsqlite3ErrorMsg(tls, pParse, ts+20573 /* "no such window: ..." */, libc.VaList(bp, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+20583 /* "no such window: ..." */, libc.VaList(bp, zName)) } return p } @@ -136513,12 +137151,12 @@ func Xsqlite3WindowUpdate(tls *libc.TLS, pParse uintptr, pList uintptr, pWin uin (((*Window)(unsafe.Pointer(pWin)).FpStart != 0) || ((*Window)(unsafe.Pointer(pWin)).FpEnd != 0))) && (((*Window)(unsafe.Pointer(pWin)).FpOrderBy == uintptr(0)) || ((*ExprList)(unsafe.Pointer((*Window)(unsafe.Pointer(pWin)).FpOrderBy)).FnExpr != 1)) { Xsqlite3ErrorMsg(tls, pParse, - ts+20592 /* "RANGE with offse..." */, 0) + ts+20602 /* "RANGE with offse..." */, 0) } else if ((*FuncDef)(unsafe.Pointer(pFunc)).FfuncFlags & U32(SQLITE_FUNC_WINDOW)) != 0 { var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if (*Window)(unsafe.Pointer(pWin)).FpFilter != 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+20663 /* "FILTER clause ma..." */, 0) + ts+20673 /* "FILTER clause ma..." */, 0) } else { *(*[8]WindowUpdate)(unsafe.Pointer(bp /* aUp */)) = [8]WindowUpdate{ {FzFunc: uintptr(unsafe.Pointer(&row_numberName)), FeFrmType: TK_ROWS, FeStart: TK_UNBOUNDED, FeEnd: TK_CURRENT}, @@ -136541,7 +137179,7 @@ func Xsqlite3WindowUpdate(tls *libc.TLS, pParse uintptr, pList uintptr, pWin uin (*Window)(unsafe.Pointer(pWin)).FeEnd = U8((*WindowUpdate)(unsafe.Pointer(bp /* &aUp */ + uintptr(i)*16)).FeEnd) (*Window)(unsafe.Pointer(pWin)).FeExclude = U8(0) if int32((*Window)(unsafe.Pointer(pWin)).FeStart) == TK_FOLLOWING { - (*Window)(unsafe.Pointer(pWin)).FpStart = Xsqlite3Expr(tls, db, TK_INTEGER, ts+6913 /* "1" */) + (*Window)(unsafe.Pointer(pWin)).FpStart = Xsqlite3Expr(tls, db, TK_INTEGER, ts+6923 /* "1" */) } break } @@ -136782,7 +137420,7 @@ func disallowAggregatesInOrderByCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr if (int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_AGG_FUNCTION) && ((*Expr)(unsafe.Pointer(pExpr)).FpAggInfo == uintptr(0)) { Xsqlite3ErrorMsg(tls, (*Walker)(unsafe.Pointer(pWalker)).FpParse, - ts+6974 /* "misuse of aggreg..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)))) + ts+6984 /* "misuse of aggreg..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)))) } return WRC_Continue } @@ -136912,7 +137550,7 @@ func Xsqlite3WindowRewrite(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* // keep everything legal in this case. if *(*uintptr)(unsafe.Pointer(bp + 28 /* pSublist */)) == uintptr(0) { *(*uintptr)(unsafe.Pointer(bp + 28 /* pSublist */)) = Xsqlite3ExprListAppend(tls, pParse, uintptr(0), - Xsqlite3Expr(tls, db, TK_INTEGER, ts+6506 /* "0" */)) + Xsqlite3Expr(tls, db, TK_INTEGER, ts+6516 /* "0" */)) } pSub = Xsqlite3SelectNew(tls, @@ -137052,7 +137690,7 @@ __1: ((eStart == TK_FOLLOWING) && ((eEnd == TK_PRECEDING) || (eEnd == TK_CURRENT)))) { goto __2 } - Xsqlite3ErrorMsg(tls, pParse, ts+20726 /* "unsupported fram..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+20736 /* "unsupported fram..." */, 0) goto windowAllocErr __2: ; @@ -137118,15 +137756,15 @@ func Xsqlite3WindowChain(tls *libc.TLS, pParse uintptr, pWin uintptr, pList uint var zErr uintptr = uintptr(0) // Check for errors if (*Window)(unsafe.Pointer(pWin)).FpPartition != 0 { - zErr = ts + 20758 /* "PARTITION clause" */ + zErr = ts + 20768 /* "PARTITION clause" */ } else if ((*Window)(unsafe.Pointer(pExist)).FpOrderBy != 0) && ((*Window)(unsafe.Pointer(pWin)).FpOrderBy != 0) { - zErr = ts + 20775 /* "ORDER BY clause" */ + zErr = ts + 20785 /* "ORDER BY clause" */ } else if int32((*Window)(unsafe.Pointer(pExist)).FbImplicitFrame) == 0 { - zErr = ts + 20791 /* "frame specificat..." */ + zErr = ts + 20801 /* "frame specificat..." */ } if zErr != 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+20811 /* "cannot override ..." */, libc.VaList(bp, zErr, (*Window)(unsafe.Pointer(pWin)).FzBase)) + ts+20821 /* "cannot override ..." */, libc.VaList(bp, zErr, (*Window)(unsafe.Pointer(pWin)).FzBase)) } else { (*Window)(unsafe.Pointer(pWin)).FpPartition = Xsqlite3ExprListDup(tls, db, (*Window)(unsafe.Pointer(pExist)).FpPartition, 0) if (*Window)(unsafe.Pointer(pExist)).FpOrderBy != 0 { @@ -137149,7 +137787,7 @@ func Xsqlite3WindowAttach(tls *libc.TLS, pParse uintptr, p uintptr, pWin uintptr (*Window)(unsafe.Pointer(pWin)).FpOwner = p if (((*Expr)(unsafe.Pointer(p)).Fflags & U32(EP_Distinct)) != 0) && (int32((*Window)(unsafe.Pointer(pWin)).FeFrmType) != TK_FILTER) { Xsqlite3ErrorMsg(tls, pParse, - ts+20844 /* "DISTINCT is not ..." */, 0) + ts+20854 /* "DISTINCT is not ..." */, 0) } } else { Xsqlite3WindowDelete(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, pWin) @@ -137300,7 +137938,7 @@ func windowCheckValue(tls *libc.TLS, pParse uintptr, reg int32, eCond int32) { / Xsqlite3VdbeAddOp2(tls, v, OP_Integer, 0, regZero) if eCond >= WINDOW_STARTING_NUM { var regString int32 = Xsqlite3GetTempReg(tls, pParse) - Xsqlite3VdbeAddOp4(tls, v, OP_String8, 0, regString, 0, ts+755 /* "" */, -1) + Xsqlite3VdbeAddOp4(tls, v, OP_String8, 0, regString, 0, ts+765 /* "" */, -1) Xsqlite3VdbeAddOp3(tls, v, OP_Ge, regString, (Xsqlite3VdbeCurrentAddr(tls, v) + 2), reg) Xsqlite3VdbeChangeP5(tls, v, (uint16(SQLITE_AFF_NUMERIC | SQLITE_JUMPIFNULL))) @@ -137322,11 +137960,11 @@ func windowCheckValue(tls *libc.TLS, pParse uintptr, reg int32, eCond int32) { / } var azErr = [5]uintptr{ - ts + 20891, /* "frame starting o..." */ - ts + 20944, /* "frame ending off..." */ - ts + 20374, /* "second argument ..." */ - ts + 20995, /* "frame starting o..." */ - ts + 21047, /* "frame ending off..." */ + ts + 20901, /* "frame starting o..." */ + ts + 20954, /* "frame ending off..." */ + ts + 20384, /* "second argument ..." */ + ts + 21005, /* "frame starting o..." */ + ts + 21057, /* "frame ending off..." */ } /* sqlite3.c:156372:21 */ var aOp1 = [5]int32{OP_Ge, OP_Ge, OP_Gt, OP_Ge, OP_Ge} /* sqlite3.c:156379:14 */ @@ -137927,7 +138565,7 @@ func windowCodeRangeTest(tls *libc.TLS, p uintptr, op int32, csr1 int32, regVal // the add/subtract is skipped for these, as required. If reg1 is a NULL, // then the arithmetic is performed, but since adding or subtracting from // NULL is always NULL anyway, this case is handled as required too. - Xsqlite3VdbeAddOp4(tls, v, OP_String8, 0, regString, 0, ts+755 /* "" */, -1) + Xsqlite3VdbeAddOp4(tls, v, OP_String8, 0, regString, 0, ts+765 /* "" */, -1) addrGe = Xsqlite3VdbeAddOp3(tls, v, OP_Ge, regString, 0, reg1) if ((op == OP_Ge) && (arith == OP_Add)) || ((op == OP_Le) && (arith == OP_Subtract)) { @@ -138940,19 +139578,19 @@ func parserDoubleLinkSelect(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlit } cnt++ if ((*Select)(unsafe.Pointer(pLoop)).FpOrderBy != 0) || ((*Select)(unsafe.Pointer(pLoop)).FpLimit != 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+21097, /* "%s clause should..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+21107, /* "%s clause should..." */ libc.VaList(bp, func() uintptr { if (*Select)(unsafe.Pointer(pLoop)).FpOrderBy != uintptr(0) { - return ts + 18211 /* "ORDER BY" */ + return ts + 18221 /* "ORDER BY" */ } - return ts + 21139 /* "LIMIT" */ + return ts + 21149 /* "LIMIT" */ }(), Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(pNext)).Fop)))) break } } if ((((*Select)(unsafe.Pointer(p)).FselFlags & U32(SF_MultiValue)) == U32(0)) && ((libc.AssignInt32(&mxSelect, *(*int32)(unsafe.Pointer(((*Parse)(unsafe.Pointer(pParse)).Fdb + 108 /* &.aLimit */) + 4*4)))) > 0)) && (cnt > mxSelect) { - Xsqlite3ErrorMsg(tls, pParse, ts+21145 /* "too many terms i..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+21155 /* "too many terms i..." */, 0) } } @@ -139032,7 +139670,7 @@ func parserAddExprIdListTerm(tls *libc.TLS, pParse uintptr, pPrior uintptr, pIdT var p uintptr = Xsqlite3ExprListAppend(tls, pParse, pPrior, uintptr(0)) if ((hasCollate != 0) || (sortOrder != -1)) && (int32((*Sqlite3)(unsafe.Pointer((*Parse)(unsafe.Pointer(pParse)).Fdb)).Finit.Fbusy) == 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+21179, /* "syntax error aft..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+21189, /* "syntax error aft..." */ libc.VaList(bp, (*Token)(unsafe.Pointer(pIdToken)).Fn, (*Token)(unsafe.Pointer(pIdToken)).Fz)) } Xsqlite3ExprListSetName(tls, pParse, p, pIdToken, 1) @@ -140257,7 +140895,7 @@ func yyStackOverflow(tls *libc.TLS, yypParser uintptr) { /* sqlite3.c:160618:13: // stack every overflows //******* Begin %stack_overflow code ***************************************** - Xsqlite3ErrorMsg(tls, pParse, ts+21217 /* "parser stack ove..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+21227 /* "parser stack ove..." */, 0) //******* End %stack_overflow code ******************************************* (*YyParser)(unsafe.Pointer(yypParser)).FpParse = pParse @@ -141236,11 +141874,11 @@ func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead in break case uint32(22): /* table_options ::= WITHOUT nm */ { - if ((*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fn == uint32(5)) && (Xsqlite3_strnicmp(tls, (*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fz, ts+14757 /* "rowid" */, 5) == 0) { + if ((*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fn == uint32(5)) && (Xsqlite3_strnicmp(tls, (*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fz, ts+14767 /* "rowid" */, 5) == 0) { *(*int32)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-1)*12 + 4 /* &.minor */)) = (TF_WithoutRowid | TF_NoVisibleRowid) } else { *(*int32)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-1)*12 + 4 /* &.minor */)) = 0 - Xsqlite3ErrorMsg(tls, pParse, ts+21239 /* "unknown table op..." */, libc.VaList(bp, (*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fn, (*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fz)) + Xsqlite3ErrorMsg(tls, pParse, ts+21249 /* "unknown table op..." */, libc.VaList(bp, (*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fn, (*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fz)) } } break @@ -141975,7 +142613,7 @@ func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead in case uint32(155): /* cmd ::= with UPDATE orconf xfullname indexed_opt SET setlist from where_opt_ret */ { Xsqlite3SrcListIndexedBy(tls, pParse, *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-5)*12 + 4 /* &.minor */)), (yymsp + libc.UintptrFromInt32(-4)*12 + 4 /* &.minor */ /* &.yy0 */)) - Xsqlite3ExprListCheckLength(tls, pParse, *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-2)*12 + 4 /* &.minor */)), ts+21266 /* "set list" */) + Xsqlite3ExprListCheckLength(tls, pParse, *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-2)*12 + 4 /* &.minor */)), ts+21276 /* "set list" */) *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-5)*12 + 4 /* &.minor */)) = Xsqlite3SrcListAppendList(tls, pParse, *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-5)*12 + 4 /* &.minor */)), *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-1)*12 + 4 /* &.minor */))) Xsqlite3Update(tls, pParse, *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-5)*12 + 4 /* &.minor */)), *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-2)*12 + 4 /* &.minor */)), *(*uintptr)(unsafe.Pointer(yymsp + 4 /* &.minor */)), *(*int32)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-6)*12 + 4 /* &.minor */)), uintptr(0), uintptr(0), uintptr(0)) } @@ -142128,7 +142766,7 @@ func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead in *(*Token)(unsafe.Pointer(bp + 68 /* t */)) = *(*Token)(unsafe.Pointer(yymsp + 4 /* &.minor */)) //A-overwrites-X if int32((*Parse)(unsafe.Pointer(pParse)).Fnested) == 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+21275 /* "near \"%T\": synta..." */, libc.VaList(bp+16, bp+68 /* &t */)) + Xsqlite3ErrorMsg(tls, pParse, ts+21285 /* "near \"%T\": synta..." */, libc.VaList(bp+16, bp+68 /* &t */)) *(*uintptr)(unsafe.Pointer(yymsp + 4 /* &.minor */)) = uintptr(0) } else { *(*uintptr)(unsafe.Pointer(yymsp + 4 /* &.minor */)) = Xsqlite3PExpr(tls, pParse, TK_REGISTER, uintptr(0), uintptr(0)) @@ -142332,9 +142970,9 @@ func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead in Xsqlite3ExprUnmapAndDelete(tls, pParse, *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-4)*12 + 4 /* &.minor */))) *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-4)*12 + 4 /* &.minor */)) = Xsqlite3Expr(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, TK_INTEGER, func() uintptr { if *(*int32)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-3)*12 + 4 /* &.minor */)) != 0 { - return ts + 6913 /* "1" */ + return ts + 6923 /* "1" */ } - return ts + 6506 /* "0" */ + return ts + 6516 /* "0" */ }()) } else if ((*ExprList)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-1)*12 + 4 /* &.minor */)))).FnExpr == 1) && (Xsqlite3ExprIsConstant(tls, (*ExprList_item)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-1)*12 + 4 /* &.minor */))+8 /* &.a */))).FpExpr) != 0) { var pRHS uintptr = (*ExprList_item)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-1)*12 + 4 /* &.minor */)) + 8 /* &.a */))).FpExpr @@ -142609,21 +143247,21 @@ func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead in *(*Token)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-2)*12 + 4 /* &.minor */)) = *(*Token)(unsafe.Pointer(yymsp + 4 /* &.minor */)) Xsqlite3ErrorMsg(tls, pParse, - ts+21299 /* "qualified table ..." */, 0) + ts+21309 /* "qualified table ..." */, 0) } break case uint32(266): /* tridxby ::= INDEXED BY nm */ { Xsqlite3ErrorMsg(tls, pParse, - ts+21394 /* "the INDEXED BY c..." */, 0) + ts+21404 /* "the INDEXED BY c..." */, 0) } break case uint32(267): /* tridxby ::= NOT INDEXED */ { Xsqlite3ErrorMsg(tls, pParse, - ts+21478 /* "the NOT INDEXED ..." */, 0) + ts+21488 /* "the NOT INDEXED ..." */, 0) } break case uint32(268): /* trigger_cmd ::= UPDATE orconf trnm tridxby SET setlist from where_opt scanpt */ @@ -143072,9 +143710,9 @@ func yy_syntax_error(tls *libc.TLS, yypParser uintptr, yymajor int32, yyminor To _ = yymajor // Silence some compiler warnings if *(*int8)(unsafe.Pointer((*Token)(unsafe.Pointer(bp + 8 /* &yyminor */)).Fz)) != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+21275 /* "near \"%T\": synta..." */, libc.VaList(bp, bp+8 /* &yyminor */)) + Xsqlite3ErrorMsg(tls, pParse, ts+21285 /* "near \"%T\": synta..." */, libc.VaList(bp, bp+8 /* &yyminor */)) } else { - Xsqlite3ErrorMsg(tls, pParse, ts+21563 /* "incomplete input" */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+21573 /* "incomplete input" */, 0) } //*********** End %syntax_error code ***************************************** @@ -144281,7 +144919,7 @@ func Xsqlite3RunParser(tls *libc.TLS, pParse uintptr, zSql uintptr, pzErrMsg uin *(*int32)(unsafe.Pointer(bp + 1252 /* tokenType */)) = analyzeFilterKeyword(tls, (zSql + 6), lastTokenParsed) } else { - Xsqlite3ErrorMsg(tls, pParse, ts+21580 /* "unrecognized tok..." */, libc.VaList(bp, n, zSql)) + Xsqlite3ErrorMsg(tls, pParse, ts+21590 /* "unrecognized tok..." */, libc.VaList(bp, n, zSql)) break } } @@ -144301,12 +144939,12 @@ func Xsqlite3RunParser(tls *libc.TLS, pParse uintptr, zSql uintptr, pzErrMsg uin (*Parse)(unsafe.Pointer(pParse)).Frc = SQLITE_NOMEM } if (((*Parse)(unsafe.Pointer(pParse)).Frc != SQLITE_OK) && ((*Parse)(unsafe.Pointer(pParse)).Frc != SQLITE_DONE)) && ((*Parse)(unsafe.Pointer(pParse)).FzErrMsg == uintptr(0)) { - (*Parse)(unsafe.Pointer(pParse)).FzErrMsg = Xsqlite3MPrintf(tls, db, ts+2790 /* "%s" */, libc.VaList(bp+16, Xsqlite3ErrStr(tls, (*Parse)(unsafe.Pointer(pParse)).Frc))) + (*Parse)(unsafe.Pointer(pParse)).FzErrMsg = Xsqlite3MPrintf(tls, db, ts+2800 /* "%s" */, libc.VaList(bp+16, Xsqlite3ErrStr(tls, (*Parse)(unsafe.Pointer(pParse)).Frc))) } if (*Parse)(unsafe.Pointer(pParse)).FzErrMsg != 0 { *(*uintptr)(unsafe.Pointer(pzErrMsg)) = (*Parse)(unsafe.Pointer(pParse)).FzErrMsg - Xsqlite3_log(tls, (*Parse)(unsafe.Pointer(pParse)).Frc, ts+21607, /* "%s in \"%s\"" */ + Xsqlite3_log(tls, (*Parse)(unsafe.Pointer(pParse)).Frc, ts+21617, /* "%s in \"%s\"" */ libc.VaList(bp+24, *(*uintptr)(unsafe.Pointer(pzErrMsg)), (*Parse)(unsafe.Pointer(pParse)).FzTail)) (*Parse)(unsafe.Pointer(pParse)).FzErrMsg = uintptr(0) nErr++ @@ -144518,7 +145156,7 @@ func Xsqlite3_complete(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:164796: fallthrough case 'C': { - if (nId == 6) && (Xsqlite3_strnicmp(tls, zSql, ts+21618 /* "create" */, 6) == 0) { + if (nId == 6) && (Xsqlite3_strnicmp(tls, zSql, ts+21628 /* "create" */, 6) == 0) { token = U8(TkCREATE) } else { token = U8(TkOTHER) @@ -144531,11 +145169,11 @@ func Xsqlite3_complete(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:164796: fallthrough case 'T': { - if (nId == 7) && (Xsqlite3_strnicmp(tls, zSql, ts+18331 /* "trigger" */, 7) == 0) { + if (nId == 7) && (Xsqlite3_strnicmp(tls, zSql, ts+18341 /* "trigger" */, 7) == 0) { token = U8(TkTRIGGER) - } else if (nId == 4) && (Xsqlite3_strnicmp(tls, zSql, ts+21625 /* "temp" */, 4) == 0) { + } else if (nId == 4) && (Xsqlite3_strnicmp(tls, zSql, ts+21635 /* "temp" */, 4) == 0) { token = U8(TkTEMP) - } else if (nId == 9) && (Xsqlite3_strnicmp(tls, zSql, ts+21630 /* "temporary" */, 9) == 0) { + } else if (nId == 9) && (Xsqlite3_strnicmp(tls, zSql, ts+21640 /* "temporary" */, 9) == 0) { token = U8(TkTEMP) } else { token = U8(TkOTHER) @@ -144548,9 +145186,9 @@ func Xsqlite3_complete(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:164796: fallthrough case 'E': { - if (nId == 3) && (Xsqlite3_strnicmp(tls, zSql, ts+21640 /* "end" */, 3) == 0) { + if (nId == 3) && (Xsqlite3_strnicmp(tls, zSql, ts+21650 /* "end" */, 3) == 0) { token = U8(TkEND) - } else if (nId == 7) && (Xsqlite3_strnicmp(tls, zSql, ts+21644 /* "explain" */, 7) == 0) { + } else if (nId == 7) && (Xsqlite3_strnicmp(tls, zSql, ts+21654 /* "explain" */, 7) == 0) { token = U8(TkEXPLAIN) } else { token = U8(TkOTHER) @@ -145498,7 +146136,7 @@ func functionDestroy(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:166213 if pDestructor != 0 { (*FuncDestructor)(unsafe.Pointer(pDestructor)).FnRef-- if (*FuncDestructor)(unsafe.Pointer(pDestructor)).FnRef == 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pDestructor + 4 /* &.xDestroy */))))(tls, (*FuncDestructor)(unsafe.Pointer(pDestructor)).FpUserData) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*FuncDestructor)(unsafe.Pointer(pDestructor)).FxDestroy})).f(tls, (*FuncDestructor)(unsafe.Pointer(pDestructor)).FpUserData) Xsqlite3DbFree(tls, db, pDestructor) } } @@ -145560,7 +146198,9 @@ func sqlite3Close(tls *libc.TLS, db uintptr, forceZombie int32) int32 { /* sqlit } Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) if (int32((*Sqlite3)(unsafe.Pointer(db)).FmTrace) & SQLITE_TRACE_CLOSE) != 0 { - (*(*func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((db + 204 /* &.trace */ /* &.xV2 */))))(tls, uint32(SQLITE_TRACE_CLOSE), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, db, uintptr(0)) + (*struct { + f func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(db + 204 /* &.trace */))})).f(tls, uint32(SQLITE_TRACE_CLOSE), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, db, uintptr(0)) } // Force xDisconnect calls on all virtual tables @@ -145578,7 +146218,7 @@ func sqlite3Close(tls *libc.TLS, db uintptr, forceZombie int32) int32 { /* sqlit // SQLITE_BUSY if the connection can not be closed immediately. if !(forceZombie != 0) && (connectionIsBusy(tls, db) != 0) { Xsqlite3ErrorWithMsg(tls, db, SQLITE_BUSY, - ts+21652 /* "unable to close ..." */, 0) + ts+21662 /* "unable to close ..." */, 0) Xsqlite3_mutex_leave(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) return SQLITE_BUSY } @@ -145709,7 +146349,7 @@ func Xsqlite3LeaveMutexAndCloseZombie(tls *libc.TLS, db uintptr) { /* sqlite3.c: // Invoke any destructors registered for collation sequence user data. for j = 0; j < 3; j++ { if (*CollSeq)(unsafe.Pointer(pColl+uintptr(j)*20)).FxDel != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pColl + uintptr(j)*20 + 16 /* &.xDel */))))(tls, (*CollSeq)(unsafe.Pointer(pColl+uintptr(j)*20)).FpUser) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*CollSeq)(unsafe.Pointer(pColl + uintptr(j)*20)).FxDel})).f(tls, (*CollSeq)(unsafe.Pointer(pColl+uintptr(j)*20)).FpUser) } } Xsqlite3DbFree(tls, db, pColl) @@ -145790,7 +146430,7 @@ func Xsqlite3RollbackAll(tls *libc.TLS, db uintptr, tripCode int32) { /* sqlite3 // If one has been configured, invoke the rollback-hook callback if ((*Sqlite3)(unsafe.Pointer(db)).FxRollbackCallback != 0) && ((inTrans != 0) || !(int32((*Sqlite3)(unsafe.Pointer(db)).FautoCommit) != 0)) { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((db + 232 /* &.xRollbackCallback */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpRollbackArg) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxRollbackCallback})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpRollbackArg) } } @@ -145800,23 +146440,23 @@ func Xsqlite3RollbackAll(tls *libc.TLS, db uintptr, tripCode int32) { /* sqlite3 // Return a static string that describes the kind of error specified in the // argument. func Xsqlite3ErrStr(tls *libc.TLS, rc int32) uintptr { /* sqlite3.c:166655:27: */ - var zErr uintptr = ts + 21720 /* "unknown error" */ + var zErr uintptr = ts + 21730 /* "unknown error" */ switch rc { case (SQLITE_ABORT | (int32(2) << 8)): { - zErr = ts + 21734 /* "abort due to ROL..." */ + zErr = ts + 21744 /* "abort due to ROL..." */ break } case SQLITE_ROW: { - zErr = ts + 21756 /* "another row avai..." */ + zErr = ts + 21766 /* "another row avai..." */ break } case SQLITE_DONE: { - zErr = ts + 21778 /* "no more rows ava..." */ + zErr = ts + 21788 /* "no more rows ava..." */ break } @@ -145834,35 +146474,35 @@ func Xsqlite3ErrStr(tls *libc.TLS, rc int32) uintptr { /* sqlite3.c:166655:27: * } var aMsg = [29]uintptr{ - /* SQLITE_OK */ ts + 21801, /* "not an error" */ - /* SQLITE_ERROR */ ts + 21814, /* "SQL logic error" */ + /* SQLITE_OK */ ts + 21811, /* "not an error" */ + /* SQLITE_ERROR */ ts + 21824, /* "SQL logic error" */ /* SQLITE_INTERNAL */ uintptr(0), - /* SQLITE_PERM */ ts + 21830, /* "access permissio..." */ - /* SQLITE_ABORT */ ts + 21855, /* "query aborted" */ - /* SQLITE_BUSY */ ts + 21869, /* "database is lock..." */ - /* SQLITE_LOCKED */ ts + 21888, /* "database table i..." */ - /* SQLITE_NOMEM */ ts + 5181, /* "out of memory" */ - /* SQLITE_READONLY */ ts + 21913, /* "attempt to write..." */ - /* SQLITE_INTERRUPT */ ts + 21950, /* "interrupted" */ - /* SQLITE_IOERR */ ts + 21962, /* "disk I/O error" */ - /* SQLITE_CORRUPT */ ts + 21977, /* "database disk im..." */ - /* SQLITE_NOTFOUND */ ts + 22010, /* "unknown operatio..." */ - /* SQLITE_FULL */ ts + 22028, /* "database or disk..." */ - /* SQLITE_CANTOPEN */ ts + 22053, /* "unable to open d..." */ - /* SQLITE_PROTOCOL */ ts + 22082, /* "locking protocol" */ + /* SQLITE_PERM */ ts + 21840, /* "access permissio..." */ + /* SQLITE_ABORT */ ts + 21865, /* "query aborted" */ + /* SQLITE_BUSY */ ts + 21879, /* "database is lock..." */ + /* SQLITE_LOCKED */ ts + 21898, /* "database table i..." */ + /* SQLITE_NOMEM */ ts + 5191, /* "out of memory" */ + /* SQLITE_READONLY */ ts + 21923, /* "attempt to write..." */ + /* SQLITE_INTERRUPT */ ts + 21960, /* "interrupted" */ + /* SQLITE_IOERR */ ts + 21972, /* "disk I/O error" */ + /* SQLITE_CORRUPT */ ts + 21987, /* "database disk im..." */ + /* SQLITE_NOTFOUND */ ts + 22020, /* "unknown operatio..." */ + /* SQLITE_FULL */ ts + 22038, /* "database or disk..." */ + /* SQLITE_CANTOPEN */ ts + 22063, /* "unable to open d..." */ + /* SQLITE_PROTOCOL */ ts + 22092, /* "locking protocol" */ /* SQLITE_EMPTY */ uintptr(0), - /* SQLITE_SCHEMA */ ts + 4911, /* "database schema ..." */ - /* SQLITE_TOOBIG */ ts + 4448, /* "string or blob t..." */ - /* SQLITE_CONSTRAINT */ ts + 22099, /* "constraint faile..." */ - /* SQLITE_MISMATCH */ ts + 22117, /* "datatype mismatc..." */ - /* SQLITE_MISUSE */ ts + 22135, /* "bad parameter or..." */ + /* SQLITE_SCHEMA */ ts + 4921, /* "database schema ..." */ + /* SQLITE_TOOBIG */ ts + 4458, /* "string or blob t..." */ + /* SQLITE_CONSTRAINT */ ts + 22109, /* "constraint faile..." */ + /* SQLITE_MISMATCH */ ts + 22127, /* "datatype mismatc..." */ + /* SQLITE_MISUSE */ ts + 22145, /* "bad parameter or..." */ /* SQLITE_NOLFS */ uintptr(0), - /* SQLITE_AUTH */ ts + 22169, /* "authorization de..." */ + /* SQLITE_AUTH */ ts + 22179, /* "authorization de..." */ /* SQLITE_FORMAT */ uintptr(0), - /* SQLITE_RANGE */ ts + 22190, /* "column index out..." */ - /* SQLITE_NOTADB */ ts + 22216, /* "file is not a da..." */ - /* SQLITE_NOTICE */ ts + 22239, /* "notification mes..." */ - /* SQLITE_WARNING */ ts + 22260, /* "warning message" */ + /* SQLITE_RANGE */ ts + 22200, /* "column index out..." */ + /* SQLITE_NOTADB */ ts + 22226, /* "file is not a da..." */ + /* SQLITE_NOTICE */ ts + 22249, /* "notification mes..." */ + /* SQLITE_WARNING */ ts + 22270, /* "warning message" */ } /* sqlite3.c:166656:20 */ // This routine implements a busy callback that sleeps and tries @@ -145910,7 +146550,9 @@ func Xsqlite3InvokeBusyHandler(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:16 if ((*BusyHandler)(unsafe.Pointer(p)).FxBusyHandler == uintptr(0)) || ((*BusyHandler)(unsafe.Pointer(p)).FnBusy < 0) { return 0 } - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((p /* &.xBusyHandler */))))(tls, (*BusyHandler)(unsafe.Pointer(p)).FpBusyArg, (*BusyHandler)(unsafe.Pointer(p)).FnBusy) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*BusyHandler)(unsafe.Pointer(p)).FxBusyHandler})).f(tls, (*BusyHandler)(unsafe.Pointer(p)).FpBusyArg, (*BusyHandler)(unsafe.Pointer(p)).FnBusy) if rc == 0 { (*BusyHandler)(unsafe.Pointer(p)).FnBusy = -1 } else { @@ -146027,7 +146669,7 @@ func Xsqlite3CreateFunc(tls *libc.TLS, db uintptr, zFunctionName uintptr, nArg i if ((p != 0) && (((*FuncDef)(unsafe.Pointer(p)).FfuncFlags & U32(SQLITE_FUNC_ENCMASK)) == U32(enc))) && (int32((*FuncDef)(unsafe.Pointer(p)).FnArg) == nArg) { if (*Sqlite3)(unsafe.Pointer(db)).FnVdbeActive != 0 { Xsqlite3ErrorWithMsg(tls, db, SQLITE_BUSY, - ts+22276 /* "unable to delete..." */, 0) + ts+22286 /* "unable to delete..." */, 0) return SQLITE_BUSY } else { @@ -146089,7 +146731,7 @@ func createFunctionApi(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc goto __2 } Xsqlite3OomFault(tls, db) - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDestroy)))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDestroy})).f(tls, p) goto out __2: ; @@ -146104,7 +146746,7 @@ __1: goto __3 } - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDestroy)))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDestroy})).f(tls, p) Xsqlite3_free(tls, pArg) __3: ; @@ -146160,7 +146802,7 @@ func sqlite3InvalidFunction(tls *libc.TLS, context uintptr, NotUsed int32, NotUs _ = NotUsed _ = NotUsed2 zErr = Xsqlite3_mprintf(tls, - ts+22339 /* "unable to use fu..." */, libc.VaList(bp, zName)) + ts+22349 /* "unable to use fu..." */, libc.VaList(bp, zName)) Xsqlite3_result_error(tls, context, zErr, -1) Xsqlite3_free(tls, zErr) } @@ -146382,7 +147024,7 @@ func Xsqlite3_wal_checkpoint_v2(tls *libc.TLS, db uintptr, zDb uintptr, eMode in } if iDb < 0 { rc = SQLITE_ERROR - Xsqlite3ErrorWithMsg(tls, db, SQLITE_ERROR, ts+22390 /* "unknown database..." */, libc.VaList(bp, zDb)) + Xsqlite3ErrorWithMsg(tls, db, SQLITE_ERROR, ts+22400 /* "unknown database..." */, libc.VaList(bp, zDb)) } else { (*Sqlite3)(unsafe.Pointer(db)).FbusyHandler.FnBusy = 0 rc = Xsqlite3Checkpoint(tls, db, iDb, eMode, pnLog, pnCkpt) @@ -146601,7 +147243,7 @@ func createCollation(tls *libc.TLS, db uintptr, zName uintptr, enc U8, pCtx uint if (pColl != 0) && ((*CollSeq)(unsafe.Pointer(pColl)).FxCmp != 0) { if (*Sqlite3)(unsafe.Pointer(db)).FnVdbeActive != 0 { Xsqlite3ErrorWithMsg(tls, db, SQLITE_BUSY, - ts+22411 /* "unable to delete..." */, 0) + ts+22421 /* "unable to delete..." */, 0) return SQLITE_BUSY } Xsqlite3ExpirePreparedStatements(tls, db, 0) @@ -146618,7 +147260,7 @@ func createCollation(tls *libc.TLS, db uintptr, zName uintptr, enc U8, pCtx uint var p uintptr = (aColl + uintptr(j)*20) if int32((*CollSeq)(unsafe.Pointer(p)).Fenc) == int32((*CollSeq)(unsafe.Pointer(pColl)).Fenc) { if (*CollSeq)(unsafe.Pointer(p)).FxDel != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((p + 16 /* &.xDel */))))(tls, (*CollSeq)(unsafe.Pointer(p)).FpUser) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*CollSeq)(unsafe.Pointer(p)).FxDel})).f(tls, (*CollSeq)(unsafe.Pointer(p)).FpUser) } (*CollSeq)(unsafe.Pointer(p)).FxCmp = uintptr(0) } @@ -146744,7 +147386,7 @@ func Xsqlite3ParseUri(tls *libc.TLS, zDefaultVfs uintptr, zUri uintptr, pFlags u if !(((((flags & uint32(SQLITE_OPEN_URI)) != 0) || // IMP: R-48725-32206 (Xsqlite3Config.FbOpenUri != 0)) && // IMP: R-51689-46548 - (nUri >= 5)) && (libc.Xmemcmp(tls, zUri, ts+22479 /* "file:" */, uint32(5)) == 0)) { + (nUri >= 5)) && (libc.Xmemcmp(tls, zUri, ts+22489 /* "file:" */, uint32(5)) == 0)) { goto __1 } // Input character index iOut = 0 // Output character index @@ -146792,10 +147434,10 @@ __8: goto __8 __9: ; - if !((iIn != 7) && ((iIn != 16) || (libc.Xmemcmp(tls, ts+22485 /* "localhost" */, (zUri+7), uint32(9)) != 0))) { + if !((iIn != 7) && ((iIn != 16) || (libc.Xmemcmp(tls, ts+22495 /* "localhost" */, (zUri+7), uint32(9)) != 0))) { goto __10 } - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+22495, /* "invalid uri auth..." */ + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+22505, /* "invalid uri auth..." */ libc.VaList(bp, (iIn-7), (zUri+7))) rc = SQLITE_ERROR goto parse_uri_out @@ -146917,7 +147559,7 @@ __27: zVal = (zOpt + uintptr((nOpt + 1))) nVal = Xsqlite3Strlen30(tls, zVal) - if !((nOpt == 3) && (libc.Xmemcmp(tls, ts+22523 /* "vfs" */, zOpt, uint32(3)) == 0)) { + if !((nOpt == 3) && (libc.Xmemcmp(tls, ts+22533 /* "vfs" */, zOpt, uint32(3)) == 0)) { goto __29 } zVfs = zVal @@ -146928,17 +147570,17 @@ __29: mask = 0 limit = 0 - if !((nOpt == 5) && (libc.Xmemcmp(tls, ts+22527 /* "cache" */, zOpt, uint32(5)) == 0)) { + if !((nOpt == 5) && (libc.Xmemcmp(tls, ts+22537 /* "cache" */, zOpt, uint32(5)) == 0)) { goto __31 } mask = (SQLITE_OPEN_SHAREDCACHE | SQLITE_OPEN_PRIVATECACHE) aMode = uintptr(unsafe.Pointer(&aCacheMode)) limit = mask - zModeType = ts + 22527 /* "cache" */ + zModeType = ts + 22537 /* "cache" */ __31: ; - if !((nOpt == 4) && (libc.Xmemcmp(tls, ts+22533 /* "mode" */, zOpt, uint32(4)) == 0)) { + if !((nOpt == 4) && (libc.Xmemcmp(tls, ts+22543 /* "mode" */, zOpt, uint32(4)) == 0)) { goto __32 } @@ -146946,7 +147588,7 @@ __31: SQLITE_OPEN_CREATE) | SQLITE_OPEN_MEMORY) aMode = uintptr(unsafe.Pointer(&aOpenMode)) limit = (int32(uint32(mask) & flags)) - zModeType = ts + 2399 /* "access" */ + zModeType = ts + 2409 /* "access" */ __32: ; @@ -146977,7 +147619,7 @@ __36: if !(mode == 0) { goto __38 } - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+22538 /* "no such %s mode:..." */, libc.VaList(bp+16, zModeType, zVal)) + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+22548 /* "no such %s mode:..." */, libc.VaList(bp+16, zModeType, zVal)) rc = SQLITE_ERROR goto parse_uri_out __38: @@ -146985,7 +147627,7 @@ __38: if !((mode & libc.CplInt32(SQLITE_OPEN_MEMORY)) > limit) { goto __39 } - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+22558, /* "%s mode not allo..." */ + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+22568, /* "%s mode not allo..." */ libc.VaList(bp+32, zModeType, zVal)) rc = SQLITE_PERM goto parse_uri_out @@ -147028,7 +147670,7 @@ __2: if !(*(*uintptr)(unsafe.Pointer(ppVfs)) == uintptr(0)) { goto __42 } - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+22582 /* "no such vfs: %s" */, libc.VaList(bp+48, zVfs)) + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+22592 /* "no such vfs: %s" */, libc.VaList(bp+48, zVfs)) rc = SQLITE_ERROR __42: ; @@ -147051,15 +147693,15 @@ type OpenMode = struct { } /* sqlite3.c:168064:9 */ var aCacheMode = [3]OpenMode{ - {Fz: ts + 22598 /* "shared" */, Fmode: SQLITE_OPEN_SHAREDCACHE}, - {Fz: ts + 22605 /* "private" */, Fmode: SQLITE_OPEN_PRIVATECACHE}, + {Fz: ts + 22608 /* "shared" */, Fmode: SQLITE_OPEN_SHAREDCACHE}, + {Fz: ts + 22615 /* "private" */, Fmode: SQLITE_OPEN_PRIVATECACHE}, {}, } /* sqlite3.c:168073:34 */ var aOpenMode = [5]OpenMode{ - {Fz: ts + 22613 /* "ro" */, Fmode: SQLITE_OPEN_READONLY}, - {Fz: ts + 22616 /* "rw" */, Fmode: SQLITE_OPEN_READWRITE}, - {Fz: ts + 22619 /* "rwc" */, Fmode: (SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE)}, - {Fz: ts + 15850 /* "memory" */, Fmode: SQLITE_OPEN_MEMORY}, + {Fz: ts + 22623 /* "ro" */, Fmode: SQLITE_OPEN_READONLY}, + {Fz: ts + 22626 /* "rw" */, Fmode: SQLITE_OPEN_READWRITE}, + {Fz: ts + 22629 /* "rwc" */, Fmode: (SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE)}, + {Fz: ts + 15860 /* "memory" */, Fmode: SQLITE_OPEN_MEMORY}, {}, } /* sqlite3.c:168085:34 */ @@ -147241,10 +147883,10 @@ __12: createCollation(tls, db, uintptr(unsafe.Pointer(&Xsqlite3StrBINARY)), uint8(SQLITE_UTF16LE), uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32 }{binCollFunc})), uintptr(0)) - createCollation(tls, db, ts+20169 /* "NOCASE" */, uint8(SQLITE_UTF8), uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + createCollation(tls, db, ts+20179 /* "NOCASE" */, uint8(SQLITE_UTF8), uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32 }{nocaseCollatingFunc})), uintptr(0)) - createCollation(tls, db, ts+22623 /* "RTRIM" */, uint8(SQLITE_UTF8), uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + createCollation(tls, db, ts+22633 /* "RTRIM" */, uint8(SQLITE_UTF8), uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32 }{rtrimCollFunc})), uintptr(0)) if !((*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0) { @@ -147290,7 +147932,7 @@ __19: ; Xsqlite3ErrorWithMsg(tls, db, rc, func() uintptr { if *(*uintptr)(unsafe.Pointer(bp + 16 /* zErrMsg */)) != 0 { - return ts + 2790 /* "%s" */ + return ts + 2800 /* "%s" */ } return uintptr(0) }(), libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 16 /* zErrMsg */)))) @@ -147328,9 +147970,9 @@ __22: // The default safety_level for the main database is FULL; for the temp // database it is OFF. This matches the pager layer defaults. - (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb)).FzDbSName = ts + 5458 /* "main" */ + (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb)).FzDbSName = ts + 5468 /* "main" */ (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb)).Fsafety_level = (U8(SQLITE_DEFAULT_SYNCHRONOUS + 1)) - (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + 1*16)).FzDbSName = ts + 21625 /* "temp" */ + (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + 1*16)).FzDbSName = ts + 21635 /* "temp" */ (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + 1*16)).Fsafety_level = U8(PAGER_SYNCHRONOUS_OFF) (*Sqlite3)(unsafe.Pointer(db)).Fmagic = SQLITE_MAGIC_OPEN @@ -147448,7 +148090,7 @@ func Xsqlite3_open16(tls *libc.TLS, zFilename uintptr, ppDb uintptr) int32 { /* return rc } if zFilename == uintptr(0) { - zFilename = ts + 22629 /* "\x00\x00" */ + zFilename = ts + 22639 /* "\x00\x00" */ } pVal = Xsqlite3ValueNew(tls, uintptr(0)) Xsqlite3ValueSetStr(tls, pVal, -1, zFilename, uint8(SQLITE_UTF16LE), uintptr(0)) @@ -147551,24 +148193,24 @@ func Xsqlite3ReportError(tls *libc.TLS, iErr int32, lineno int32, zType uintptr) bp := tls.Alloc(24) defer tls.Free(24) - Xsqlite3_log(tls, iErr, ts+22632, /* "%s at line %d of..." */ + Xsqlite3_log(tls, iErr, ts+22642, /* "%s at line %d of..." */ libc.VaList(bp, zType, lineno, (uintptr(20)+Xsqlite3_sourceid(tls)))) return iErr } func Xsqlite3CorruptError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:168711:20: */ - return Xsqlite3ReportError(tls, SQLITE_CORRUPT, lineno, ts+22657 /* "database corrupt..." */) + return Xsqlite3ReportError(tls, SQLITE_CORRUPT, lineno, ts+22667 /* "database corrupt..." */) } func Xsqlite3MisuseError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:168715:20: */ - return Xsqlite3ReportError(tls, SQLITE_MISUSE, lineno, ts+22677 /* "misuse" */) + return Xsqlite3ReportError(tls, SQLITE_MISUSE, lineno, ts+22687 /* "misuse" */) } func Xsqlite3CantopenError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:168719:20: */ - return Xsqlite3ReportError(tls, SQLITE_CANTOPEN, lineno, ts+22684 /* "cannot open file" */) + return Xsqlite3ReportError(tls, SQLITE_CANTOPEN, lineno, ts+22694 /* "cannot open file" */) } // This is a convenience routine that makes sure that all thread-specific @@ -147695,7 +148337,7 @@ __4: autoinc = (libc.Bool32((int32((*Table)(unsafe.Pointer(pTab)).FiPKey) == iCol) && (((*Table)(unsafe.Pointer(pTab)).FtabFlags & U32(TF_Autoincrement)) != U32(0)))) goto __13 __12: - zDataType = ts + 11384 /* "INTEGER" */ + zDataType = ts + 11394 /* "INTEGER" */ primarykey = 1 __13: ; @@ -147747,14 +148389,14 @@ __19: goto __20 } Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 24 /* zErrMsg */))) - *(*uintptr)(unsafe.Pointer(bp + 24 /* zErrMsg */)) = Xsqlite3MPrintf(tls, db, ts+22701 /* "no such table co..." */, libc.VaList(bp, zTableName, + *(*uintptr)(unsafe.Pointer(bp + 24 /* zErrMsg */)) = Xsqlite3MPrintf(tls, db, ts+22711 /* "no such table co..." */, libc.VaList(bp, zTableName, zColumnName)) rc = SQLITE_ERROR __20: ; Xsqlite3ErrorWithMsg(tls, db, rc, func() uintptr { if *(*uintptr)(unsafe.Pointer(bp + 24 /* zErrMsg */)) != 0 { - return ts + 2790 /* "%s" */ + return ts + 2800 /* "%s" */ } return uintptr(0) }(), libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer(bp + 24 /* zErrMsg */)))) @@ -147981,7 +148623,7 @@ func Xsqlite3_test_control(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlit { var x int32 = 0 - rc = libc.AtomicLoadInt32(&x) + rc = x break } @@ -148553,7 +149195,7 @@ func Xsqlite3_compileoption_used(tls *libc.TLS, zOptName uintptr) int32 { /* sql azCompileOpt = Xsqlite3CompileOptions(tls, bp /* &nOpt */) - if Xsqlite3_strnicmp(tls, zOptName, ts+22729 /* "SQLITE_" */, 7) == 0 { + if Xsqlite3_strnicmp(tls, zOptName, ts+22739 /* "SQLITE_" */, 7) == 0 { zOptName += uintptr(7) } n = Xsqlite3Strlen30(tls, zOptName) @@ -148693,7 +149335,9 @@ func Xsqlite3_unlock_notify(tls *libc.TLS, db uintptr, xNotify uintptr, pArg uin // The blocking transaction has been concluded. Or there never was a // blocking transaction. In either case, invoke the notify callback // immediately. - (*(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(&xNotify)))(tls, bp /* &pArg */, 1) + (*struct { + f func(*libc.TLS, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{xNotify})).f(tls, bp /* &pArg */, 1) } else { var p uintptr @@ -148714,7 +149358,7 @@ func Xsqlite3_unlock_notify(tls *libc.TLS, db uintptr, xNotify uintptr, pArg uin Xsqlite3ErrorWithMsg(tls, db, rc, func() uintptr { if rc != 0 { - return ts + 22737 /* "database is dead..." */ + return ts + 22747 /* "database is dead..." */ } return uintptr(0) }(), 0) @@ -148780,7 +149424,9 @@ func Xsqlite3ConnectionUnlocked(tls *libc.TLS, db uintptr) { /* sqlite3.c:170018 if (*Sqlite3)(unsafe.Pointer(p)).FpUnlockConnection == db { if ((*Sqlite3)(unsafe.Pointer(p)).FxUnlockNotify != xUnlockNotify) && (nArg != 0) { - (*(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(&xUnlockNotify)))(tls, aArg, nArg) + (*struct { + f func(*libc.TLS, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{xUnlockNotify})).f(tls, aArg, nArg) nArg = 0 } @@ -148818,7 +149464,9 @@ func Xsqlite3ConnectionUnlocked(tls *libc.TLS, db uintptr) { /* sqlite3.c:170018 // reduce the applications ability to prioritize multiple // connections. But it is the best that can be done under the // circumstances. - (*(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(&xUnlockNotify)))(tls, aArg, nArg) + (*struct { + f func(*libc.TLS, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{xUnlockNotify})).f(tls, aArg, nArg) nArg = 0 } } @@ -148842,7 +149490,9 @@ func Xsqlite3ConnectionUnlocked(tls *libc.TLS, db uintptr) { /* sqlite3.c:170018 } if nArg != 0 { - (*(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(&xUnlockNotify)))(tls, aArg, nArg) + (*struct { + f func(*libc.TLS, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{xUnlockNotify})).f(tls, aArg, nArg) } Xsqlite3_free(tls, aDyn) leaveMutex(tls) // Leave STATIC_MAIN mutex @@ -149471,24 +150121,24 @@ var jsonIsSpace = [256]int8{ // Objects type JsonString1 = struct { - FpCtx uintptr - FzBuf uintptr - FnAlloc U64 - FnUsed U64 - FbStatic U8 - FbErr U8 - FzSpace [100]int8 - _ [2]byte + FpCtx uintptr + FzBuf uintptr + FnAlloc U64 + FnUsed U64 + FbStatic U8 + FbErr U8 + FzSpace [100]int8 + F__ccgo_pad1 [2]byte } /* sqlite3.c:189736:9 */ // Objects type JsonString = JsonString1 /* sqlite3.c:189736:27 */ type JsonNode1 = struct { - FeType U8 - FjnFlags U8 - _ [2]byte - Fn U32 - Fu struct{ FzJContent uintptr } + FeType U8 + FjnFlags U8 + F__ccgo_pad1 [2]byte + Fn U32 + Fu struct{ FzJContent uintptr } } /* sqlite3.c:189737:9 */ type JsonNode = JsonNode1 /* sqlite3.c:189737:25 */ @@ -149513,7 +150163,7 @@ type JsonParse = JsonParse1 /* sqlite3.c:189738:26 */ // Names of the various JSON types: var jsonType = [8]uintptr{ - ts + 5258 /* "null" */, ts + 5770 /* "true" */, ts + 5775 /* "false" */, ts + 5268 /* "integer" */, ts + 5263 /* "real" */, ts + 13523 /* "text" */, ts + 22760 /* "array" */, ts + 22766, /* "object" */ + ts + 5268 /* "null" */, ts + 5780 /* "true" */, ts + 5785 /* "false" */, ts + 5278 /* "integer" */, ts + 5273 /* "real" */, ts + 13533 /* "text" */, ts + 22770 /* "array" */, ts + 22776, /* "object" */ } /* sqlite3.c:189771:19 */ // Maximum nesting depth of JSON for this implementation. @@ -149693,7 +150343,7 @@ __10: *(*int8)(unsafe.Pointer((*JsonString)(unsafe.Pointer(p)).FzBuf + uintptr(libc.PostIncUint64(&(*JsonString)(unsafe.Pointer(p)).FnUsed, 1)))) = int8('0') *(*int8)(unsafe.Pointer((*JsonString)(unsafe.Pointer(p)).FzBuf + uintptr(libc.PostIncUint64(&(*JsonString)(unsafe.Pointer(p)).FnUsed, 1)))) = int8('0') *(*int8)(unsafe.Pointer((*JsonString)(unsafe.Pointer(p)).FzBuf + uintptr(libc.PostIncUint64(&(*JsonString)(unsafe.Pointer(p)).FnUsed, 1)))) = (int8('0' + (int32(c) >> 4))) - c = uint8(*(*int8)(unsafe.Pointer(ts + 22773 /* "0123456789abcdef" */ + uintptr((int32(c) & 0xf))))) + c = uint8(*(*int8)(unsafe.Pointer(ts + 22783 /* "0123456789abcdef" */ + uintptr((int32(c) & 0xf))))) __8: ; __6: @@ -149721,7 +150371,7 @@ func jsonAppendValue(tls *libc.TLS, p uintptr, pValue uintptr) { /* sqlite3.c:18 switch Xsqlite3_value_type(tls, pValue) { case SQLITE_NULL: { - jsonAppendRaw(tls, p, ts+5258 /* "null" */, uint32(4)) + jsonAppendRaw(tls, p, ts+5268 /* "null" */, uint32(4)) break } @@ -149750,7 +150400,7 @@ func jsonAppendValue(tls *libc.TLS, p uintptr, pValue uintptr) { /* sqlite3.c:18 default: { if int32((*JsonString)(unsafe.Pointer(p)).FbErr) == 0 { - Xsqlite3_result_error(tls, (*JsonString)(unsafe.Pointer(p)).FpCtx, ts+22790 /* "JSON cannot hold..." */, -1) + Xsqlite3_result_error(tls, (*JsonString)(unsafe.Pointer(p)).FpCtx, ts+22800 /* "JSON cannot hold..." */, -1) (*JsonString)(unsafe.Pointer(p)).FbErr = U8(2) jsonReset(tls, p) } @@ -149827,19 +150477,19 @@ func jsonRenderNode(tls *libc.TLS, pNode uintptr, pOut uintptr, aReplace uintptr default: { - jsonAppendRaw(tls, pOut, ts+5258 /* "null" */, uint32(4)) + jsonAppendRaw(tls, pOut, ts+5268 /* "null" */, uint32(4)) break } case JSON_TRUE: { - jsonAppendRaw(tls, pOut, ts+5770 /* "true" */, uint32(4)) + jsonAppendRaw(tls, pOut, ts+5780 /* "true" */, uint32(4)) break } case JSON_FALSE: { - jsonAppendRaw(tls, pOut, ts+5775 /* "false" */, uint32(5)) + jsonAppendRaw(tls, pOut, ts+5785 /* "false" */, uint32(5)) break } @@ -150405,17 +151055,17 @@ func jsonParseValue(tls *libc.TLS, pParse uintptr, i U32) int32 { /* sqlite3.c:1 } return (int32(j + U32(1))) } else if ((int32(c) == 'n') && - (libc.Xstrncmp(tls, (z+uintptr(i)), ts+5258 /* "null" */, uint32(4)) == 0)) && + (libc.Xstrncmp(tls, (z+uintptr(i)), ts+5268 /* "null" */, uint32(4)) == 0)) && !((int32(Xsqlite3CtypeMap[uint8(*(*int8)(unsafe.Pointer(z + uintptr((i + U32(4))))))]) & 0x06) != 0) { jsonParseAddNode(tls, pParse, uint32(JSON_NULL), uint32(0), uintptr(0)) return (int32(i + U32(4))) } else if ((int32(c) == 't') && - (libc.Xstrncmp(tls, (z+uintptr(i)), ts+5770 /* "true" */, uint32(4)) == 0)) && + (libc.Xstrncmp(tls, (z+uintptr(i)), ts+5780 /* "true" */, uint32(4)) == 0)) && !((int32(Xsqlite3CtypeMap[uint8(*(*int8)(unsafe.Pointer(z + uintptr((i + U32(4))))))]) & 0x06) != 0) { jsonParseAddNode(tls, pParse, uint32(JSON_TRUE), uint32(0), uintptr(0)) return (int32(i + U32(4))) } else if ((int32(c) == 'f') && - (libc.Xstrncmp(tls, (z+uintptr(i)), ts+5775 /* "false" */, uint32(5)) == 0)) && + (libc.Xstrncmp(tls, (z+uintptr(i)), ts+5785 /* "false" */, uint32(5)) == 0)) && !((int32(Xsqlite3CtypeMap[uint8(*(*int8)(unsafe.Pointer(z + uintptr((i + U32(5))))))]) & 0x06) != 0) { jsonParseAddNode(tls, pParse, uint32(JSON_FALSE), uint32(0), uintptr(0)) return (int32(i + U32(5))) @@ -150523,7 +151173,7 @@ func jsonParse(tls *libc.TLS, pParse uintptr, pCtx uintptr, zJson uintptr) int32 if (*JsonParse)(unsafe.Pointer(pParse)).Foom != 0 { Xsqlite3_result_error_nomem(tls, pCtx) } else { - Xsqlite3_result_error(tls, pCtx, ts+22819 /* "malformed JSON" */, -1) + Xsqlite3_result_error(tls, pCtx, ts+22829 /* "malformed JSON" */, -1) } } jsonParseReset(tls, pParse) @@ -150843,7 +151493,7 @@ func jsonLookupAppend(tls *libc.TLS, pParse uintptr, zPath uintptr, pApnd uintpt } if int32(*(*int8)(unsafe.Pointer(zPath))) == '.' { jsonParseAddNode(tls, pParse, uint32(JSON_OBJECT), uint32(0), uintptr(0)) - } else if libc.Xstrncmp(tls, zPath, ts+22834 /* "[0]" */, uint32(3)) == 0 { + } else if libc.Xstrncmp(tls, zPath, ts+22844 /* "[0]" */, uint32(3)) == 0 { jsonParseAddNode(tls, pParse, uint32(JSON_ARRAY), uint32(0), uintptr(0)) } else { return uintptr(0) @@ -150860,7 +151510,7 @@ func jsonPathSyntaxError(tls *libc.TLS, zErr uintptr) uintptr { /* sqlite3.c:190 bp := tls.Alloc(8) defer tls.Free(8) - return Xsqlite3_mprintf(tls, ts+22838 /* "JSON path error ..." */, libc.VaList(bp, zErr)) + return Xsqlite3_mprintf(tls, ts+22848 /* "JSON path error ..." */, libc.VaList(bp, zErr)) } // Do a node lookup using zPath. Return a pointer to the node on success. @@ -150927,7 +151577,7 @@ func jsonWrongNumArgs(tls *libc.TLS, pCtx uintptr, zFuncName uintptr) { /* sqlit bp := tls.Alloc(8) defer tls.Free(8) - var zMsg uintptr = Xsqlite3_mprintf(tls, ts+22864, /* "json_%s() needs ..." */ + var zMsg uintptr = Xsqlite3_mprintf(tls, ts+22874, /* "json_%s() needs ..." */ libc.VaList(bp, zFuncName)) Xsqlite3_result_error(tls, pCtx, zMsg, -1) Xsqlite3_free(tls, zMsg) @@ -151071,7 +151721,7 @@ func jsonExtractFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* if pNode != 0 { jsonRenderNode(tls, pNode, bp /* &jx */, uintptr(0)) } else { - jsonAppendRaw(tls, bp /* &jx */, ts+5258 /* "null" */, uint32(4)) + jsonAppendRaw(tls, bp /* &jx */, ts+5268 /* "null" */, uint32(4)) } } else if pNode != 0 { jsonReturn(tls, pNode, ctx, uintptr(0)) @@ -151199,14 +151849,14 @@ func jsonObjectFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* s if (argc & 1) != 0 { Xsqlite3_result_error(tls, ctx, - ts+22907 /* "json_object() re..." */, -1) + ts+22917 /* "json_object() re..." */, -1) return } jsonInit(tls, bp /* &jx */, ctx) jsonAppendChar(tls, bp /* &jx */, int8('{')) for i = 0; i < argc; i = i + (2) { if Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*4))) != SQLITE_TEXT { - Xsqlite3_result_error(tls, ctx, ts+22958 /* "json_object() la..." */, -1) + Xsqlite3_result_error(tls, ctx, ts+22968 /* "json_object() la..." */, -1) jsonReset(tls, bp /* &jx */) return } @@ -151314,7 +151964,7 @@ __1: if !((argc & 1) == 0) { goto __2 } - jsonWrongNumArgs(tls, ctx, ts+14034 /* "replace" */) + jsonWrongNumArgs(tls, ctx, ts+14044 /* "replace" */) return __2: ; @@ -151400,9 +152050,9 @@ __1: } jsonWrongNumArgs(tls, ctx, func() uintptr { if bIsSet != 0 { - return ts + 22992 /* "set" */ + return ts + 23002 /* "set" */ } - return ts + 22996 /* "insert" */ + return ts + 23006 /* "insert" */ }()) return __2: @@ -151550,7 +152200,7 @@ func jsonArrayCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c: (*JsonString)(unsafe.Pointer(pStr)).FnUsed-- } } else { - Xsqlite3_result_text(tls, ctx, ts+23003 /* "[]" */, 2, uintptr(0)) + Xsqlite3_result_text(tls, ctx, ts+23013 /* "[]" */, 2, uintptr(0)) } Xsqlite3_result_subtype(tls, ctx, uint32(JSON_SUBTYPE)) } @@ -151655,7 +152305,7 @@ func jsonObjectCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c (*JsonString)(unsafe.Pointer(pStr)).FnUsed-- } } else { - Xsqlite3_result_text(tls, ctx, ts+23006 /* "{}" */, 2, uintptr(0)) + Xsqlite3_result_text(tls, ctx, ts+23016 /* "{}" */, 2, uintptr(0)) } Xsqlite3_result_subtype(tls, ctx, uint32(JSON_SUBTYPE)) } @@ -151673,17 +152323,17 @@ func jsonObjectFinal(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:191673:13: */ // The json_each virtual table // type JsonEachCursor1 = struct { - Fbase Sqlite3_vtab_cursor - FiRowid U32 - FiBegin U32 - Fi U32 - FiEnd U32 - FeType U8 - FbRecursive U8 - _ [2]byte - FzJson uintptr - FzRoot uintptr - FsParse JsonParse + Fbase Sqlite3_vtab_cursor + FiRowid U32 + FiBegin U32 + Fi U32 + FiEnd U32 + FeType U8 + FbRecursive U8 + F__ccgo_pad1 [2]byte + FzJson uintptr + FzRoot uintptr + FsParse JsonParse } /* sqlite3.c:191683:9 */ // *************************************************************************** @@ -151708,7 +152358,7 @@ func jsonEachConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv u _ = pAux rc = Xsqlite3_declare_vtab(tls, db, - ts+23009 /* "CREATE TABLE x(k..." */) + ts+23019 /* "CREATE TABLE x(k..." */) if rc == SQLITE_OK { pNew = libc.AssignPtrUintptr(ppVtab, Xsqlite3_malloc(tls, int32(unsafe.Sizeof(Sqlite3_vtab{})))) if pNew == uintptr(0) { @@ -151846,14 +152496,14 @@ func jsonEachComputePath(tls *libc.TLS, p uintptr, pStr uintptr, i U32) { /* sql pNode = ((*JsonEachCursor)(unsafe.Pointer(p)).FsParse.FaNode + uintptr(i)*12) pUp = ((*JsonEachCursor)(unsafe.Pointer(p)).FsParse.FaNode + uintptr(iUp)*12) if int32((*JsonNode)(unsafe.Pointer(pUp)).FeType) == JSON_ARRAY { - jsonPrintf(tls, 30, pStr, ts+23092 /* "[%d]" */, libc.VaList(bp, *(*U32)(unsafe.Pointer(pUp + 8 /* &.u */)))) + jsonPrintf(tls, 30, pStr, ts+23102 /* "[%d]" */, libc.VaList(bp, *(*U32)(unsafe.Pointer(pUp + 8 /* &.u */)))) } else { if (int32((*JsonNode)(unsafe.Pointer(pNode)).FjnFlags) & JNODE_LABEL) == 0 { pNode -= 12 } - jsonPrintf(tls, (int32((*JsonNode)(unsafe.Pointer(pNode)).Fn + U32(1))), pStr, ts+23097 /* ".%.*s" */, libc.VaList(bp+8, ((*JsonNode)(unsafe.Pointer(pNode)).Fn-U32(2)), (*(*uintptr)(unsafe.Pointer(pNode + 8 /* &.u */))+uintptr(1)))) + jsonPrintf(tls, (int32((*JsonNode)(unsafe.Pointer(pNode)).Fn + U32(1))), pStr, ts+23107 /* ".%.*s" */, libc.VaList(bp+8, ((*JsonNode)(unsafe.Pointer(pNode)).Fn-U32(2)), (*(*uintptr)(unsafe.Pointer(pNode + 8 /* &.u */))+uintptr(1)))) } } @@ -151946,9 +152596,9 @@ func jsonEachColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* jsonAppendChar(tls, bp+24 /* &x */, int8('$')) } if int32((*JsonEachCursor)(unsafe.Pointer(p)).FeType) == JSON_ARRAY { - jsonPrintf(tls, 30, bp+24 /* &x */, ts+23092 /* "[%d]" */, libc.VaList(bp, (*JsonEachCursor)(unsafe.Pointer(p)).FiRowid)) + jsonPrintf(tls, 30, bp+24 /* &x */, ts+23102 /* "[%d]" */, libc.VaList(bp, (*JsonEachCursor)(unsafe.Pointer(p)).FiRowid)) } else if int32((*JsonEachCursor)(unsafe.Pointer(p)).FeType) == JSON_OBJECT { - jsonPrintf(tls, int32((*JsonNode)(unsafe.Pointer(pThis)).Fn), bp+24 /* &x */, ts+23097 /* ".%.*s" */, libc.VaList(bp+8, ((*JsonNode)(unsafe.Pointer(pThis)).Fn-U32(2)), (*(*uintptr)(unsafe.Pointer(pThis + 8 /* &.u */))+uintptr(1)))) + jsonPrintf(tls, int32((*JsonNode)(unsafe.Pointer(pThis)).Fn), bp+24 /* &x */, ts+23107 /* ".%.*s" */, libc.VaList(bp+8, ((*JsonNode)(unsafe.Pointer(pThis)).Fn-U32(2)), (*(*uintptr)(unsafe.Pointer(pThis + 8 /* &.u */))+uintptr(1)))) } } jsonResult(tls, bp+24 /* &x */) @@ -151972,7 +152622,7 @@ func jsonEachColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* { var zRoot uintptr = (*JsonEachCursor)(unsafe.Pointer(p)).FzRoot if zRoot == uintptr(0) { - zRoot = ts + 23103 /* "$" */ + zRoot = ts + 23113 /* "$" */ } Xsqlite3_result_text(tls, ctx, zRoot, -1, uintptr(0)) break @@ -152104,7 +152754,7 @@ func jsonEachFilter(tls *libc.TLS, cur uintptr, idxNum int32, idxStr uintptr, ar var rc int32 = SQLITE_NOMEM if int32((*JsonEachCursor)(unsafe.Pointer(p)).FsParse.Foom) == 0 { Xsqlite3_free(tls, (*Sqlite3_vtab)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(cur)).FpVtab)).FzErrMsg) - (*Sqlite3_vtab)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(cur)).FpVtab)).FzErrMsg = Xsqlite3_mprintf(tls, ts+22819 /* "malformed JSON" */, 0) + (*Sqlite3_vtab)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(cur)).FpVtab)).FzErrMsg = Xsqlite3_mprintf(tls, ts+22829 /* "malformed JSON" */, 0) if (*Sqlite3_vtab)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(cur)).FpVtab)).FzErrMsg != 0 { rc = SQLITE_ERROR } @@ -152244,21 +152894,21 @@ var aFunc = [15]struct { Fflag int32 FxFunc uintptr }{ - {FzName: ts + 23105 /* "json" */, FnArg: 1, FxFunc: 0}, - {FzName: ts + 23110 /* "json_array" */, FnArg: -1, FxFunc: 0}, - {FzName: ts + 23121 /* "json_array_lengt..." */, FnArg: 1, FxFunc: 0}, - {FzName: ts + 23121 /* "json_array_lengt..." */, FnArg: 2, FxFunc: 0}, - {FzName: ts + 23139 /* "json_extract" */, FnArg: -1, FxFunc: 0}, - {FzName: ts + 23152 /* "json_insert" */, FnArg: -1, FxFunc: 0}, - {FzName: ts + 23164 /* "json_object" */, FnArg: -1, FxFunc: 0}, - {FzName: ts + 23176 /* "json_patch" */, FnArg: 2, FxFunc: 0}, - {FzName: ts + 23187 /* "json_quote" */, FnArg: 1, FxFunc: 0}, - {FzName: ts + 23198 /* "json_remove" */, FnArg: -1, FxFunc: 0}, - {FzName: ts + 23210 /* "json_replace" */, FnArg: -1, FxFunc: 0}, - {FzName: ts + 23223 /* "json_set" */, FnArg: -1, Fflag: 1, FxFunc: 0}, - {FzName: ts + 23232 /* "json_type" */, FnArg: 1, FxFunc: 0}, - {FzName: ts + 23232 /* "json_type" */, FnArg: 2, FxFunc: 0}, - {FzName: ts + 23242 /* "json_valid" */, FnArg: 1, FxFunc: 0}, + {FzName: ts + 23115 /* "json" */, FnArg: 1, FxFunc: 0}, + {FzName: ts + 23120 /* "json_array" */, FnArg: -1, FxFunc: 0}, + {FzName: ts + 23131 /* "json_array_lengt..." */, FnArg: 1, FxFunc: 0}, + {FzName: ts + 23131 /* "json_array_lengt..." */, FnArg: 2, FxFunc: 0}, + {FzName: ts + 23149 /* "json_extract" */, FnArg: -1, FxFunc: 0}, + {FzName: ts + 23162 /* "json_insert" */, FnArg: -1, FxFunc: 0}, + {FzName: ts + 23174 /* "json_object" */, FnArg: -1, FxFunc: 0}, + {FzName: ts + 23186 /* "json_patch" */, FnArg: 2, FxFunc: 0}, + {FzName: ts + 23197 /* "json_quote" */, FnArg: 1, FxFunc: 0}, + {FzName: ts + 23208 /* "json_remove" */, FnArg: -1, FxFunc: 0}, + {FzName: ts + 23220 /* "json_replace" */, FnArg: -1, FxFunc: 0}, + {FzName: ts + 23233 /* "json_set" */, FnArg: -1, Fflag: 1, FxFunc: 0}, + {FzName: ts + 23242 /* "json_type" */, FnArg: 1, FxFunc: 0}, + {FzName: ts + 23242 /* "json_type" */, FnArg: 2, FxFunc: 0}, + {FzName: ts + 23252 /* "json_valid" */, FnArg: 1, FxFunc: 0}, } /* sqlite3.c:192182:5 */ var aAgg = [2]struct { FzName uintptr @@ -152267,17 +152917,17 @@ var aAgg = [2]struct { FxFinal uintptr FxValue uintptr }{ - {FzName: ts + 23253 /* "json_group_array" */, FnArg: 1, + {FzName: ts + 23263 /* "json_group_array" */, FnArg: 1, FxStep: 0, FxFinal: 0, FxValue: 0}, - {FzName: ts + 23270 /* "json_group_objec..." */, FnArg: 2, + {FzName: ts + 23280 /* "json_group_objec..." */, FnArg: 2, FxStep: 0, FxFinal: 0, FxValue: 0}, } /* sqlite3.c:192211:5 */ var aMod = [2]struct { FzName uintptr FpModule uintptr }{ - {FzName: ts + 23288 /* "json_each" */, FpModule: 0}, - {FzName: ts + 23298 /* "json_tree" */, FpModule: 0}, + {FzName: ts + 23298 /* "json_each" */, FpModule: 0}, + {FzName: ts + 23308 /* "json_tree" */, FpModule: 0}, } /* sqlite3.c:192221:5 */ var enc int32 = ((SQLITE_UTF8 | SQLITE_DETERMINISTIC) | SQLITE_INNOCUOUS) /* sqlite3.c:192226:20 */ // In the SQLite core @@ -152299,7 +152949,7 @@ type Rtree1 = struct { FinWrTrans U8 FnAux U8 FnAuxNotNull U8 - _ [1]byte + F__ccgo_pad1 [1]byte FiDepth int32 FzDb uintptr FzName uintptr @@ -152338,7 +152988,7 @@ type RtreeCursor1 = struct { FatEOF U8 FbPoint U8 FbAuxValid U8 - _ [1]byte + F__ccgo_pad1 [1]byte FiStrategy int32 FnConstraint int32 FaConstraint uintptr @@ -152398,12 +153048,12 @@ type RtreeCoord1 = struct{ Ff RtreeValue } /* sqlite3.c:192365:9 */ type RtreeCoord = RtreeCoord1 /* sqlite3.c:192369:26 */ type RtreeSearchPoint1 = struct { - FrScore RtreeDValue - Fid Sqlite3_int64 - FiLevel U8 - FeWithin U8 - FiCell U8 - _ [1]byte + FrScore RtreeDValue + Fid Sqlite3_int64 + FiLevel U8 + FeWithin U8 + FiCell U8 + F__ccgo_pad1 [1]byte } /* sqlite3.c:192363:9 */ type RtreeSearchPoint = RtreeSearchPoint1 /* sqlite3.c:192370:33 */ @@ -152620,11 +153270,11 @@ func nodeAcquire(tls *libc.TLS, pRtree uintptr, iNode I64, pParent uintptr, ppNo } } if (*Rtree)(unsafe.Pointer(pRtree)).FpNodeBlob == uintptr(0) { - var zTab uintptr = Xsqlite3_mprintf(tls, ts+23308 /* "%s_node" */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzName)) + var zTab uintptr = Xsqlite3_mprintf(tls, ts+23318 /* "%s_node" */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzName)) if zTab == uintptr(0) { return SQLITE_NOMEM } - rc = Xsqlite3_blob_open(tls, (*Rtree)(unsafe.Pointer(pRtree)).Fdb, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, zTab, ts+23316 /* "data" */, iNode, 0, + rc = Xsqlite3_blob_open(tls, (*Rtree)(unsafe.Pointer(pRtree)).Fdb, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, zTab, ts+23326 /* "data" */, iNode, 0, (pRtree + 72 /* &.pNodeBlob */)) Xsqlite3_free(tls, zTab) } @@ -152869,7 +153519,7 @@ func rtreeDestroy(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:193308:12: var rc int32 var zCreate uintptr = Xsqlite3_mprintf(tls, - ts+23321, /* "DROP TABLE '%q'...." */ + ts+23331, /* "DROP TABLE '%q'...." */ libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName)) @@ -152916,7 +153566,7 @@ func resetCursor(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:193357:13: */ var pInfo uintptr = (*RtreeConstraint)(unsafe.Pointer((*RtreeCursor)(unsafe.Pointer(pCsr)).FaConstraint + uintptr(i)*20)).FpInfo if pInfo != 0 { if (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FxDelUser != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pInfo + 16 /* &.xDelUser */))))(tls, (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FpUser) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FxDelUser})).f(tls, (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FpUser) } Xsqlite3_free(tls, pInfo) } @@ -153052,7 +153702,9 @@ func rtreeCallbackConstraint(tls *libc.TLS, pConstraint uintptr, eInt int32, pCe } if (*RtreeConstraint)(unsafe.Pointer(pConstraint)).Fop == RTREE_MATCH { *(*int32)(unsafe.Pointer(bp + 84 /* eWithin */)) = 0 - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pConstraint + 8 /* &.u */ /* &.xGeom */))))(tls, pInfo, + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(pConstraint + 8 /* &.u */))})).f(tls, pInfo, nCoord, bp+4 /* &aCoord[0] */, bp+84 /* &eWithin */) if *(*int32)(unsafe.Pointer(bp + 84 /* eWithin */)) == 0 { *(*int32)(unsafe.Pointer(peWithin)) = NOT_WITHIN @@ -153063,7 +153715,9 @@ func rtreeCallbackConstraint(tls *libc.TLS, pConstraint uintptr, eInt int32, pCe (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FiLevel = (int32((*RtreeSearchPoint)(unsafe.Pointer(pSearch)).FiLevel) - 1) (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FrScore = libc.AssignPtrFloat64(pInfo+48 /* &.rParentScore */, (*RtreeSearchPoint)(unsafe.Pointer(pSearch)).FrScore) (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FeWithin = libc.AssignPtrInt32(pInfo+56 /* &.eParentWithin */, int32((*RtreeSearchPoint)(unsafe.Pointer(pSearch)).FeWithin)) - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pConstraint + 8 /* &.u */ /* &.xQueryFunc */))))(tls, pInfo) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(pConstraint + 8 /* &.u */))})).f(tls, pInfo) if (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FeWithin < *(*int32)(unsafe.Pointer(peWithin)) { *(*int32)(unsafe.Pointer(peWithin)) = (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FeWithin } @@ -153629,7 +154283,7 @@ func deserializeGeometry(tls *libc.TLS, pValue uintptr, pCons uintptr) int32 { / var pSrc uintptr // BLOB returned by geometry function var pInfo uintptr // Callback information - pSrc = Xsqlite3_value_pointer(tls, pValue, ts+23403 /* "RtreeMatchArg" */) + pSrc = Xsqlite3_value_pointer(tls, pValue, ts+23413 /* "RtreeMatchArg" */) if pSrc == uintptr(0) { return SQLITE_ERROR } @@ -153893,7 +154547,7 @@ func rtreeBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sql (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = 2 (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FneedToFreeIdxStr = 1 - if (iIdx > 0) && (uintptr(0) == (libc.AssignPtrUintptr(pIdxInfo+24 /* &.idxStr */, Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp, bp+8 /* &zIdxStr[0] */))))) { + if (iIdx > 0) && (uintptr(0) == (libc.AssignPtrUintptr(pIdxInfo+24 /* &.idxStr */, Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp, bp+8 /* &zIdxStr[0] */))))) { return SQLITE_NOMEM } @@ -154449,7 +155103,9 @@ func updateMapping(tls *libc.TLS, pRtree uintptr, iRowid I64, pNode uintptr, iHe (*RtreeNode)(unsafe.Pointer(pChild)).FpParent = pNode } } - return (*(*func(*libc.TLS, uintptr, Sqlite3_int64, Sqlite3_int64) int32)(unsafe.Pointer(&xSetMapping)))(tls, pRtree, iRowid, (*RtreeNode)(unsafe.Pointer(pNode)).FiNode) + return (*struct { + f func(*libc.TLS, uintptr, Sqlite3_int64, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{xSetMapping})).f(tls, pRtree, iRowid, (*RtreeNode)(unsafe.Pointer(pNode)).FiNode) } func sSplitNode(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHeight int32) int32 { /* sqlite3.c:194817:12: */ @@ -155153,7 +155809,7 @@ func rtreeConstraintError(tls *libc.TLS, pRtree uintptr, iCol int32) int32 { /* var zSql uintptr var rc int32 - zSql = Xsqlite3_mprintf(tls, ts+23417 /* "SELECT * FROM %Q..." */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName)) + zSql = Xsqlite3_mprintf(tls, ts+23427 /* "SELECT * FROM %Q..." */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName)) if zSql != 0 { rc = Xsqlite3_prepare_v2(tls, (*Rtree)(unsafe.Pointer(pRtree)).Fdb, zSql, -1, bp+56 /* &pStmt */, uintptr(0)) } else { @@ -155165,12 +155821,12 @@ func rtreeConstraintError(tls *libc.TLS, pRtree uintptr, iCol int32) int32 { /* if iCol == 0 { var zCol uintptr = Xsqlite3_column_name(tls, *(*uintptr)(unsafe.Pointer(bp + 56 /* pStmt */)), 0) (*Rtree)(unsafe.Pointer(pRtree)).Fbase.FzErrMsg = Xsqlite3_mprintf(tls, - ts+23437 /* "UNIQUE constrain..." */, libc.VaList(bp+16, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zCol)) + ts+23447 /* "UNIQUE constrain..." */, libc.VaList(bp+16, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zCol)) } else { var zCol1 uintptr = Xsqlite3_column_name(tls, *(*uintptr)(unsafe.Pointer(bp + 56 /* pStmt */)), iCol) var zCol2 uintptr = Xsqlite3_column_name(tls, *(*uintptr)(unsafe.Pointer(bp + 56 /* pStmt */)), (iCol + 1)) (*Rtree)(unsafe.Pointer(pRtree)).Fbase.FzErrMsg = Xsqlite3_mprintf(tls, - ts+23469 /* "rtree constraint..." */, libc.VaList(bp+32, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zCol1, zCol2)) + ts+23479 /* "rtree constraint..." */, libc.VaList(bp+32, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zCol1, zCol2)) } } @@ -155438,7 +156094,7 @@ func rtreeRename(tls *libc.TLS, pVtab uintptr, zNewName uintptr) int32 { /* sqli var rc int32 = SQLITE_NOMEM var zSql uintptr = Xsqlite3_mprintf(tls, - ts+23506 /* "ALTER TABLE %Q.'..." */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zNewName, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zNewName, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zNewName)) + ts+23516 /* "ALTER TABLE %Q.'..." */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zNewName, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zNewName, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zNewName)) if zSql != 0 { nodeBlobReset(tls, pRtree) rc = Xsqlite3_exec(tls, (*Rtree)(unsafe.Pointer(pRtree)).Fdb, zSql, uintptr(0), uintptr(0), uintptr(0)) @@ -155476,7 +156132,7 @@ func rtreeQueryStat1(tls *libc.TLS, db uintptr, pRtree uintptr) int32 { /* sqlit bp := tls.Alloc(20) defer tls.Free(20) - var zFmt uintptr = ts + 23651 /* "SELECT stat FROM..." */ + var zFmt uintptr = ts + 23661 /* "SELECT stat FROM..." */ var zSql uintptr // var p uintptr at bp+16, 4 @@ -155484,7 +156140,7 @@ func rtreeQueryStat1(tls *libc.TLS, db uintptr, pRtree uintptr) int32 { /* sqlit var nRow I64 = int64(0) rc = Xsqlite3_table_column_metadata(tls, - db, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, ts+10072 /* "sqlite_stat1" */, uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0)) + db, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, ts+10082 /* "sqlite_stat1" */, uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0)) if rc != SQLITE_OK { (*Rtree)(unsafe.Pointer(pRtree)).FnRowEst = int64(RTREE_DEFAULT_ROWEST) if rc == SQLITE_ERROR { @@ -155537,7 +156193,7 @@ func rtreeShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:195715:1 } var azName1 = [3]uintptr{ - ts + 23707 /* "node" */, ts + 4174 /* "parent" */, ts + 14757, /* "rowid" */ + ts + 23717 /* "node" */, ts + 4184 /* "parent" */, ts + 14767, /* "rowid" */ } /* sqlite3.c:195716:21 */ var rtreeModule = Sqlite3_module{ @@ -155581,19 +156237,19 @@ func rtreeSqlInit(tls *libc.TLS, pRtree uintptr, db uintptr, zDb uintptr, zPrefi var p uintptr = Xsqlite3_str_new(tls, db) var ii int32 Xsqlite3_str_appendf(tls, p, - ts+23712, /* "CREATE TABLE \"%w..." */ + ts+23722, /* "CREATE TABLE \"%w..." */ libc.VaList(bp, zDb, zPrefix)) for ii = 0; ii < int32((*Rtree)(unsafe.Pointer(pRtree)).FnAux); ii++ { - Xsqlite3_str_appendf(tls, p, ts+23774 /* ",a%d" */, libc.VaList(bp+16, ii)) + Xsqlite3_str_appendf(tls, p, ts+23784 /* ",a%d" */, libc.VaList(bp+16, ii)) } Xsqlite3_str_appendf(tls, p, - ts+23779, /* ");CREATE TABLE \"..." */ + ts+23789, /* ");CREATE TABLE \"..." */ libc.VaList(bp+24, zDb, zPrefix)) Xsqlite3_str_appendf(tls, p, - ts+23843, /* "CREATE TABLE \"%w..." */ + ts+23853, /* "CREATE TABLE \"%w..." */ libc.VaList(bp+40, zDb, zPrefix)) Xsqlite3_str_appendf(tls, p, - ts+23913, /* "INSERT INTO \"%w\"..." */ + ts+23923, /* "INSERT INTO \"%w\"..." */ libc.VaList(bp+56, zDb, zPrefix, (*Rtree)(unsafe.Pointer(pRtree)).FiNodeSize)) zCreate = Xsqlite3_str_finish(tls, p) if !(zCreate != 0) { @@ -155624,7 +156280,7 @@ func rtreeSqlInit(tls *libc.TLS, pRtree uintptr, db uintptr, zDb uintptr, zPrefi } else { // An UPSERT is very slightly slower than REPLACE, but it is needed // if there are auxiliary columns - zFormat = ts + 23962 /* "INSERT INTO\"%w\"...." */ + zFormat = ts + 23972 /* "INSERT INTO\"%w\"...." */ } zSql = Xsqlite3_mprintf(tls, zFormat, libc.VaList(bp+80, zDb, zPrefix)) if zSql != 0 { @@ -155636,7 +156292,7 @@ func rtreeSqlInit(tls *libc.TLS, pRtree uintptr, db uintptr, zDb uintptr, zPrefi } if (*Rtree)(unsafe.Pointer(pRtree)).FnAux != 0 { (*Rtree)(unsafe.Pointer(pRtree)).FzReadAuxSql = Xsqlite3_mprintf(tls, - ts+24070, /* "SELECT * FROM \"%..." */ + ts+24080, /* "SELECT * FROM \"%..." */ libc.VaList(bp+96, zDb, zPrefix)) if (*Rtree)(unsafe.Pointer(pRtree)).FzReadAuxSql == uintptr(0) { rc = SQLITE_NOMEM @@ -155644,18 +156300,18 @@ func rtreeSqlInit(tls *libc.TLS, pRtree uintptr, db uintptr, zDb uintptr, zPrefi var p uintptr = Xsqlite3_str_new(tls, db) var ii int32 var zSql uintptr - Xsqlite3_str_appendf(tls, p, ts+24115 /* "UPDATE \"%w\".\"%w_..." */, libc.VaList(bp+112, zDb, zPrefix)) + Xsqlite3_str_appendf(tls, p, ts+24125 /* "UPDATE \"%w\".\"%w_..." */, libc.VaList(bp+112, zDb, zPrefix)) for ii = 0; ii < int32((*Rtree)(unsafe.Pointer(pRtree)).FnAux); ii++ { if ii != 0 { - Xsqlite3_str_append(tls, p, ts+11537 /* "," */, 1) + Xsqlite3_str_append(tls, p, ts+11547 /* "," */, 1) } if ii < int32((*Rtree)(unsafe.Pointer(pRtree)).FnAuxNotNull) { - Xsqlite3_str_appendf(tls, p, ts+24142 /* "a%d=coalesce(?%d..." */, libc.VaList(bp+128, ii, (ii+2), ii)) + Xsqlite3_str_appendf(tls, p, ts+24152 /* "a%d=coalesce(?%d..." */, libc.VaList(bp+128, ii, (ii+2), ii)) } else { - Xsqlite3_str_appendf(tls, p, ts+24164 /* "a%d=?%d" */, libc.VaList(bp+152, ii, (ii+2))) + Xsqlite3_str_appendf(tls, p, ts+24174 /* "a%d=?%d" */, libc.VaList(bp+152, ii, (ii+2))) } } - Xsqlite3_str_appendf(tls, p, ts+24172 /* " WHERE rowid=?1" */, 0) + Xsqlite3_str_appendf(tls, p, ts+24182 /* " WHERE rowid=?1" */, 0) zSql = Xsqlite3_str_finish(tls, p) if zSql == uintptr(0) { rc = SQLITE_NOMEM @@ -155671,18 +156327,18 @@ func rtreeSqlInit(tls *libc.TLS, pRtree uintptr, db uintptr, zDb uintptr, zPrefi var azSql = [8]uintptr{ // Write the xxx_node table - ts + 24188, /* "INSERT OR REPLAC..." */ - ts + 24241, /* "DELETE FROM '%q'..." */ + ts + 24198, /* "INSERT OR REPLAC..." */ + ts + 24251, /* "DELETE FROM '%q'..." */ // Read and write the xxx_rowid table - ts + 24286, /* "SELECT nodeno FR..." */ - ts + 24338, /* "INSERT OR REPLAC..." */ - ts + 24392, /* "DELETE FROM '%q'..." */ + ts + 24296, /* "SELECT nodeno FR..." */ + ts + 24348, /* "INSERT OR REPLAC..." */ + ts + 24402, /* "DELETE FROM '%q'..." */ // Read and write the xxx_parent table - ts + 24437, /* "SELECT parentnod..." */ - ts + 24495, /* "INSERT OR REPLAC..." */ - ts + 24550, /* "DELETE FROM '%q'..." */ + ts + 24447, /* "SELECT parentnod..." */ + ts + 24505, /* "INSERT OR REPLAC..." */ + ts + 24560, /* "DELETE FROM '%q'..." */ } /* sqlite3.c:195763:21 */ // The second argument to this function contains the text of an SQL statement @@ -155729,7 +156385,7 @@ func getNodeSize(tls *libc.TLS, db uintptr, pRtree uintptr, isCreate int32, pzEr var zSql uintptr if isCreate != 0 { *(*int32)(unsafe.Pointer(bp + 48 /* iPageSize */)) = 0 - zSql = Xsqlite3_mprintf(tls, ts+24597 /* "PRAGMA %Q.page_s..." */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzDb)) + zSql = Xsqlite3_mprintf(tls, ts+24607 /* "PRAGMA %Q.page_s..." */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzDb)) rc = getIntFromStmt(tls, db, zSql, bp+48 /* &iPageSize */) if rc == SQLITE_OK { (*Rtree)(unsafe.Pointer(pRtree)).FiNodeSize = (*(*int32)(unsafe.Pointer(bp + 48 /* iPageSize */)) - 64) @@ -155737,19 +156393,19 @@ func getNodeSize(tls *libc.TLS, db uintptr, pRtree uintptr, isCreate int32, pzEr (*Rtree)(unsafe.Pointer(pRtree)).FiNodeSize = (4 + (int32((*Rtree)(unsafe.Pointer(pRtree)).FnBytesPerCell) * RTREE_MAXCELLS)) } } else { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp+8, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp+8, Xsqlite3_errmsg(tls, db))) } } else { zSql = Xsqlite3_mprintf(tls, - ts+24617, /* "SELECT length(da..." */ + ts+24627, /* "SELECT length(da..." */ libc.VaList(bp+16, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName)) rc = getIntFromStmt(tls, db, zSql, (pRtree + 16 /* &.iNodeSize */)) if rc != SQLITE_OK { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp+32, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp+32, Xsqlite3_errmsg(tls, db))) } else if (*Rtree)(unsafe.Pointer(pRtree)).FiNodeSize < (512 - 64) { rc = (SQLITE_CORRUPT | (int32(1) << 8)) - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+24674, /* "undersize RTree ..." */ + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+24684, /* "undersize RTree ..." */ libc.VaList(bp+40, (*Rtree)(unsafe.Pointer(pRtree)).FzName)) } } @@ -155800,17 +156456,17 @@ func rtreeInit(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr ii = 4 *(*[5]uintptr)(unsafe.Pointer(bp + 96 /* aErrMsg */)) = [5]uintptr{ uintptr(0), // 0 - ts + 24709, /* "Wrong number of ..." */ // 1 - ts + 24752, /* "Too few columns ..." */ // 2 - ts + 24787, /* "Too many columns..." */ // 3 - ts + 24823, /* "Auxiliary rtree ..." */ // 4 + ts + 24719, /* "Wrong number of ..." */ // 1 + ts + 24762, /* "Too few columns ..." */ // 2 + ts + 24797, /* "Too many columns..." */ // 3 + ts + 24833, /* "Auxiliary rtree ..." */ // 4 } // Aux columns counted by a u8 if !((argc < 6) || (argc > (RTREE_MAX_AUX_COLUMN + 3))) { goto __1 } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 96 /* &aErrMsg[0] */ + uintptr((2+(libc.Bool32(argc >= 6))))*4)))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 96 /* &aErrMsg[0] */ + uintptr((2+(libc.Bool32(argc >= 6))))*4)))) return SQLITE_ERROR __1: ; @@ -155840,7 +156496,7 @@ __2: // that is successful, call sqlite3_declare_vtab() to configure // the r-tree table schema. pSql = Xsqlite3_str_new(tls, db) - Xsqlite3_str_appendf(tls, pSql, ts+24860, /* "CREATE TABLE x(%..." */ + Xsqlite3_str_appendf(tls, pSql, ts+24870, /* "CREATE TABLE x(%..." */ libc.VaList(bp+16, rtreeTokenLength(tls, *(*uintptr)(unsafe.Pointer(argv + 3*4))), *(*uintptr)(unsafe.Pointer(argv + 3*4)))) ii = 4 __3: @@ -155852,7 +156508,7 @@ __3: goto __6 } (*Rtree)(unsafe.Pointer(pRtree)).FnAux++ - Xsqlite3_str_appendf(tls, pSql, ts+24884 /* ",%.*s" */, libc.VaList(bp+32, rtreeTokenLength(tls, (zArg+uintptr(1))), (zArg+uintptr(1)))) + Xsqlite3_str_appendf(tls, pSql, ts+24894 /* ",%.*s" */, libc.VaList(bp+32, rtreeTokenLength(tls, (zArg+uintptr(1))), (zArg+uintptr(1)))) goto __7 __6: if !(int32((*Rtree)(unsafe.Pointer(pRtree)).FnAux) > 0) { @@ -155875,7 +156531,7 @@ __4: goto __5 __5: ; - Xsqlite3_str_appendf(tls, pSql, ts+24890 /* ");" */, 0) + Xsqlite3_str_appendf(tls, pSql, ts+24900 /* ");" */, 0) zSql = Xsqlite3_str_finish(tls, pSql) if !(!(zSql != 0)) { goto __10 @@ -155886,14 +156542,14 @@ __10: if !(ii < argc) { goto __12 } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp+64, *(*uintptr)(unsafe.Pointer(bp + 96 /* &aErrMsg[0] */ + 4*4)))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp+64, *(*uintptr)(unsafe.Pointer(bp + 96 /* &aErrMsg[0] */ + 4*4)))) rc = SQLITE_ERROR goto __13 __12: if !(SQLITE_OK != (libc.AssignInt32(&rc, Xsqlite3_declare_vtab(tls, db, zSql)))) { goto __14 } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp+72, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp+72, Xsqlite3_errmsg(tls, db))) __14: ; __13: @@ -155936,7 +156592,7 @@ __17: if !(iErr != 0) { goto __22 } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp+80, *(*uintptr)(unsafe.Pointer(bp + 96 /* &aErrMsg[0] */ + uintptr(iErr)*4)))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp+80, *(*uintptr)(unsafe.Pointer(bp + 96 /* &aErrMsg[0] */ + uintptr(iErr)*4)))) goto rtreeInit_fail __22: ; @@ -155954,7 +156610,7 @@ __23: if !(rc != 0) { goto __24 } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp+88, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp+88, Xsqlite3_errmsg(tls, db))) goto rtreeInit_fail __24: ; @@ -155974,7 +156630,7 @@ __25: return rc } -var azFormat = [2]uintptr{ts + 24893 /* ",%.*s REAL" */, ts + 24904 /* ",%.*s INT" */} /* sqlite3.c:196036:25 */ +var azFormat = [2]uintptr{ts + 24903 /* ",%.*s REAL" */, ts + 24914 /* ",%.*s INT" */} /* sqlite3.c:196036:25 */ // Implementation of a scalar function that decodes r-tree nodes to // human readable strings. This can be used for debugging and analysis. @@ -156029,13 +156685,13 @@ func rtreenode(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlit nodeGetCell(tls, bp+44 /* &tree */, bp+16 /* &node */, ii, bp+544 /* &cell */) if ii > 0 { - Xsqlite3_str_append(tls, pOut, ts+9652 /* " " */, 1) + Xsqlite3_str_append(tls, pOut, ts+9662 /* " " */, 1) } - Xsqlite3_str_appendf(tls, pOut, ts+24914 /* "{%lld" */, libc.VaList(bp, (*RtreeCell)(unsafe.Pointer(bp+544 /* &cell */)).FiRowid)) + Xsqlite3_str_appendf(tls, pOut, ts+24924 /* "{%lld" */, libc.VaList(bp, (*RtreeCell)(unsafe.Pointer(bp+544 /* &cell */)).FiRowid)) for jj = 0; jj < int32((*Rtree)(unsafe.Pointer(bp+44 /* &tree */)).FnDim2); jj++ { - Xsqlite3_str_appendf(tls, pOut, ts+24920 /* " %g" */, libc.VaList(bp+8, float64(*(*RtreeValue)(unsafe.Pointer((bp + 544 /* &cell */ + 8 /* &.aCoord */) + uintptr(jj)*4))))) + Xsqlite3_str_appendf(tls, pOut, ts+24930 /* " %g" */, libc.VaList(bp+8, float64(*(*RtreeValue)(unsafe.Pointer((bp + 544 /* &cell */ + 8 /* &.aCoord */) + uintptr(jj)*4))))) } - Xsqlite3_str_append(tls, pOut, ts+24924 /* "}" */, 1) + Xsqlite3_str_append(tls, pOut, ts+24934 /* "}" */, 1) } errCode = Xsqlite3_str_errcode(tls, pOut) Xsqlite3_result_text(tls, ctx, Xsqlite3_str_finish(tls, pOut), -1, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3_free}))) @@ -156054,7 +156710,7 @@ func rtreedepth(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqli _ = nArg if (Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(apArg))) != SQLITE_BLOB) || (Xsqlite3_value_bytes(tls, *(*uintptr)(unsafe.Pointer(apArg))) < 2) { - Xsqlite3_result_error(tls, ctx, ts+24926 /* "Invalid argument..." */, -1) + Xsqlite3_result_error(tls, ctx, ts+24936 /* "Invalid argument..." */, -1) } else { var zBlob uintptr = Xsqlite3_value_blob(tls, *(*uintptr)(unsafe.Pointer(apArg))) if zBlob != 0 { @@ -156141,12 +156797,12 @@ func rtreeCheckAppendMsg(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr if z == uintptr(0) { (*RtreeCheck)(unsafe.Pointer(pCheck)).Frc = SQLITE_NOMEM } else { - (*RtreeCheck)(unsafe.Pointer(pCheck)).FzReport = Xsqlite3_mprintf(tls, ts+24959, /* "%z%s%z" */ + (*RtreeCheck)(unsafe.Pointer(pCheck)).FzReport = Xsqlite3_mprintf(tls, ts+24969, /* "%z%s%z" */ libc.VaList(bp, (*RtreeCheck)(unsafe.Pointer(pCheck)).FzReport, func() uintptr { if (*RtreeCheck)(unsafe.Pointer(pCheck)).FzReport != 0 { - return ts + 3171 /* "\n" */ + return ts + 3181 /* "\n" */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), z)) if (*RtreeCheck)(unsafe.Pointer(pCheck)).FzReport == uintptr(0) { (*RtreeCheck)(unsafe.Pointer(pCheck)).Frc = SQLITE_NOMEM @@ -156177,7 +156833,7 @@ func rtreeCheckGetNode(tls *libc.TLS, pCheck uintptr, iNode I64, pnNode uintptr) if ((*RtreeCheck)(unsafe.Pointer(pCheck)).Frc == SQLITE_OK) && ((*RtreeCheck)(unsafe.Pointer(pCheck)).FpGetNode == uintptr(0)) { (*RtreeCheck)(unsafe.Pointer(pCheck)).FpGetNode = rtreeCheckPrepare(tls, pCheck, - ts+24966, /* "SELECT data FROM..." */ + ts+24976, /* "SELECT data FROM..." */ libc.VaList(bp, (*RtreeCheck)(unsafe.Pointer(pCheck)).FzDb, (*RtreeCheck)(unsafe.Pointer(pCheck)).FzTab)) } @@ -156196,7 +156852,7 @@ func rtreeCheckGetNode(tls *libc.TLS, pCheck uintptr, iNode I64, pnNode uintptr) } rtreeCheckReset(tls, pCheck, (*RtreeCheck)(unsafe.Pointer(pCheck)).FpGetNode) if ((*RtreeCheck)(unsafe.Pointer(pCheck)).Frc == SQLITE_OK) && (pRet == uintptr(0)) { - rtreeCheckAppendMsg(tls, pCheck, ts+25011 /* "Node %lld missin..." */, libc.VaList(bp+16, iNode)) + rtreeCheckAppendMsg(tls, pCheck, ts+25021 /* "Node %lld missin..." */, libc.VaList(bp+16, iNode)) } } @@ -156220,8 +156876,8 @@ func rtreeCheckMapping(tls *libc.TLS, pCheck uintptr, bLeaf int32, iKey I64, iVa var rc int32 var pStmt uintptr *(*[2]uintptr)(unsafe.Pointer(bp + 80 /* azSql */)) = [2]uintptr{ - ts + 25043, /* "SELECT parentnod..." */ - ts + 25097, /* "SELECT nodeno FR..." */ + ts + 25053, /* "SELECT parentnod..." */ + ts + 25107, /* "SELECT nodeno FR..." */ } if *(*uintptr)(unsafe.Pointer((pCheck + 24 /* &.aCheckMapping */) + uintptr(bLeaf)*4)) == uintptr(0) { @@ -156236,23 +156892,23 @@ func rtreeCheckMapping(tls *libc.TLS, pCheck uintptr, bLeaf int32, iKey I64, iVa Xsqlite3_bind_int64(tls, pStmt, 1, iKey) rc = Xsqlite3_step(tls, pStmt) if rc == SQLITE_DONE { - rtreeCheckAppendMsg(tls, pCheck, ts+25145, /* "Mapping (%lld ->..." */ + rtreeCheckAppendMsg(tls, pCheck, ts+25155, /* "Mapping (%lld ->..." */ libc.VaList(bp+16, iKey, iVal, func() uintptr { if bLeaf != 0 { - return ts + 25190 /* "%_rowid" */ + return ts + 25200 /* "%_rowid" */ } - return ts + 25198 /* "%_parent" */ + return ts + 25208 /* "%_parent" */ }())) } else if rc == SQLITE_ROW { var ii I64 = Xsqlite3_column_int64(tls, pStmt, 0) if ii != iVal { rtreeCheckAppendMsg(tls, pCheck, - ts+25207, /* "Found (%lld -> %..." */ + ts+25217, /* "Found (%lld -> %..." */ libc.VaList(bp+40, iKey, ii, func() uintptr { if bLeaf != 0 { - return ts + 25190 /* "%_rowid" */ + return ts + 25200 /* "%_rowid" */ } - return ts + 25198 /* "%_parent" */ + return ts + 25208 /* "%_parent" */ }(), iKey, iVal)) } } @@ -156295,7 +156951,7 @@ func rtreeCheckCellCoord(tls *libc.TLS, pCheck uintptr, iNode I64, iCell int32, return (libc.Bool32(*(*RtreeValue)(unsafe.Pointer(bp + 48 /* &c1 */)) > *(*RtreeValue)(unsafe.Pointer(bp + 52 /* &c2 */)))) }() != 0 { rtreeCheckAppendMsg(tls, pCheck, - ts+25265 /* "Dimension %d of ..." */, libc.VaList(bp, i, iCell, iNode)) + ts+25275 /* "Dimension %d of ..." */, libc.VaList(bp, i, iCell, iNode)) } if pParent != 0 { @@ -156315,7 +156971,7 @@ func rtreeCheckCellCoord(tls *libc.TLS, pCheck uintptr, iNode I64, iCell int32, return (libc.Bool32(*(*RtreeValue)(unsafe.Pointer(bp + 52 /* &c2 */)) > *(*RtreeValue)(unsafe.Pointer(bp + 60 /* &p2 */)))) }() != 0) { rtreeCheckAppendMsg(tls, pCheck, - ts+25313 /* "Dimension %d of ..." */, libc.VaList(bp+24, i, iCell, iNode)) + ts+25323 /* "Dimension %d of ..." */, libc.VaList(bp+24, i, iCell, iNode)) } } } @@ -156338,14 +156994,14 @@ func rtreeCheckNode(tls *libc.TLS, pCheck uintptr, iDepth int32, aParent uintptr if aNode != 0 { if *(*int32)(unsafe.Pointer(bp + 48 /* nNode */)) < 4 { rtreeCheckAppendMsg(tls, pCheck, - ts+25380 /* "Node %lld is too..." */, libc.VaList(bp, iNode, *(*int32)(unsafe.Pointer(bp + 48 /* nNode */)))) + ts+25390 /* "Node %lld is too..." */, libc.VaList(bp, iNode, *(*int32)(unsafe.Pointer(bp + 48 /* nNode */)))) } else { var nCell int32 // Number of cells on page var i int32 // Used to iterate through cells if aParent == uintptr(0) { iDepth = readInt16(tls, aNode) if iDepth > RTREE_MAX_DEPTH { - rtreeCheckAppendMsg(tls, pCheck, ts+25414 /* "Rtree depth out ..." */, libc.VaList(bp+16, iDepth)) + rtreeCheckAppendMsg(tls, pCheck, ts+25424 /* "Rtree depth out ..." */, libc.VaList(bp+16, iDepth)) Xsqlite3_free(tls, aNode) return } @@ -156353,7 +157009,7 @@ func rtreeCheckNode(tls *libc.TLS, pCheck uintptr, iDepth int32, aParent uintptr nCell = readInt16(tls, (aNode + 2)) if (4 + (nCell * (8 + (((*RtreeCheck)(unsafe.Pointer(pCheck)).FnDim * 2) * 4)))) > *(*int32)(unsafe.Pointer(bp + 48 /* nNode */)) { rtreeCheckAppendMsg(tls, pCheck, - ts+25444, /* "Node %lld is too..." */ + ts+25454, /* "Node %lld is too..." */ libc.VaList(bp+24, iNode, nCell, *(*int32)(unsafe.Pointer(bp + 48 /* nNode */)))) } else { for i = 0; i < nCell; i++ { @@ -156387,14 +157043,14 @@ func rtreeCheckCount(tls *libc.TLS, pCheck uintptr, zTbl uintptr, nExpect I64) { if (*RtreeCheck)(unsafe.Pointer(pCheck)).Frc == SQLITE_OK { var pCount uintptr - pCount = rtreeCheckPrepare(tls, pCheck, ts+25499, /* "SELECT count(*) ..." */ + pCount = rtreeCheckPrepare(tls, pCheck, ts+25509, /* "SELECT count(*) ..." */ libc.VaList(bp, (*RtreeCheck)(unsafe.Pointer(pCheck)).FzDb, (*RtreeCheck)(unsafe.Pointer(pCheck)).FzTab, zTbl)) if pCount != 0 { if Xsqlite3_step(tls, pCount) == SQLITE_ROW { var nActual I64 = Xsqlite3_column_int64(tls, pCount, 0) if nActual != nExpect { rtreeCheckAppendMsg(tls, pCheck, - ts+25530 /* "Wrong number of ..." */, libc.VaList(bp+24, zTbl, nExpect, nActual)) + ts+25540 /* "Wrong number of ..." */, libc.VaList(bp+24, zTbl, nExpect, nActual)) } } (*RtreeCheck)(unsafe.Pointer(pCheck)).Frc = Xsqlite3_finalize(tls, pCount) @@ -156424,13 +157080,13 @@ func rtreeCheckTable(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, pzRep // to ensure that the queries run as part of this integrity-check operate // on a consistent snapshot. if Xsqlite3_get_autocommit(tls, db) != 0 { - (*RtreeCheck)(unsafe.Pointer(bp + 32 /* &check */)).Frc = Xsqlite3_exec(tls, db, ts+13213 /* "BEGIN" */, uintptr(0), uintptr(0), uintptr(0)) + (*RtreeCheck)(unsafe.Pointer(bp + 32 /* &check */)).Frc = Xsqlite3_exec(tls, db, ts+13223 /* "BEGIN" */, uintptr(0), uintptr(0), uintptr(0)) bEnd = 1 } // Find the number of auxiliary columns if (*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).Frc == SQLITE_OK { - pStmt = rtreeCheckPrepare(tls, bp+32 /* &check */, ts+25597 /* "SELECT * FROM %Q..." */, libc.VaList(bp, zDb, zTab)) + pStmt = rtreeCheckPrepare(tls, bp+32 /* &check */, ts+25607 /* "SELECT * FROM %Q..." */, libc.VaList(bp, zDb, zTab)) if pStmt != 0 { nAux = (Xsqlite3_column_count(tls, pStmt) - 2) Xsqlite3_finalize(tls, pStmt) @@ -156439,12 +157095,12 @@ func rtreeCheckTable(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, pzRep } // Find number of dimensions in the rtree table. - pStmt = rtreeCheckPrepare(tls, bp+32 /* &check */, ts+23417 /* "SELECT * FROM %Q..." */, libc.VaList(bp+16, zDb, zTab)) + pStmt = rtreeCheckPrepare(tls, bp+32 /* &check */, ts+23427 /* "SELECT * FROM %Q..." */, libc.VaList(bp+16, zDb, zTab)) if pStmt != 0 { var rc int32 (*RtreeCheck)(unsafe.Pointer(bp + 32 /* &check */)).FnDim = (((Xsqlite3_column_count(tls, pStmt) - 1) - nAux) / 2) if (*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).FnDim < 1 { - rtreeCheckAppendMsg(tls, bp+32 /* &check */, ts+25625 /* "Schema corrupt o..." */, 0) + rtreeCheckAppendMsg(tls, bp+32 /* &check */, ts+25635 /* "Schema corrupt o..." */, 0) } else if SQLITE_ROW == Xsqlite3_step(tls, pStmt) { (*RtreeCheck)(unsafe.Pointer(bp + 32 /* &check */)).FbInt = (libc.Bool32(Xsqlite3_column_type(tls, pStmt, 1) == SQLITE_INTEGER)) } @@ -156459,8 +157115,8 @@ func rtreeCheckTable(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, pzRep if (*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).Frc == SQLITE_OK { rtreeCheckNode(tls, bp+32 /* &check */, 0, uintptr(0), int64(1)) } - rtreeCheckCount(tls, bp+32 /* &check */, ts+25656 /* "_rowid" */, int64((*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).FnLeaf)) - rtreeCheckCount(tls, bp+32 /* &check */, ts+25663 /* "_parent" */, int64((*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).FnNonLeaf)) + rtreeCheckCount(tls, bp+32 /* &check */, ts+25666 /* "_rowid" */, int64((*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).FnLeaf)) + rtreeCheckCount(tls, bp+32 /* &check */, ts+25673 /* "_parent" */, int64((*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).FnNonLeaf)) } // Finalize SQL statements used by the integrity-check @@ -156470,7 +157126,7 @@ func rtreeCheckTable(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, pzRep // If one was opened, close the transaction if bEnd != 0 { - var rc int32 = Xsqlite3_exec(tls, db, ts+25671 /* "END" */, uintptr(0), uintptr(0), uintptr(0)) + var rc int32 = Xsqlite3_exec(tls, db, ts+25681 /* "END" */, uintptr(0), uintptr(0), uintptr(0)) if (*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).Frc == SQLITE_OK { (*RtreeCheck)(unsafe.Pointer(bp + 32 /* &check */)).Frc = rc } @@ -156516,7 +157172,7 @@ func rtreecheck(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqli if (nArg != 1) && (nArg != 2) { Xsqlite3_result_error(tls, ctx, - ts+25675 /* "wrong number of ..." */, -1) + ts+25685 /* "wrong number of ..." */, -1) } else { var rc int32 *(*uintptr)(unsafe.Pointer(bp /* zReport */)) = uintptr(0) @@ -156524,7 +157180,7 @@ func rtreecheck(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqli var zTab uintptr if nArg == 1 { zTab = zDb - zDb = ts + 5458 /* "main" */ + zDb = ts + 5468 /* "main" */ } else { zTab = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apArg + 1*4))) } @@ -156534,7 +157190,7 @@ func rtreecheck(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqli if *(*uintptr)(unsafe.Pointer(bp /* zReport */)) != 0 { return *(*uintptr)(unsafe.Pointer(bp /* zReport */)) } - return ts + 16336 /* "ok" */ + return ts + 16346 /* "ok" */ }(), -1, libc.UintptrFromInt32(-1)) } else { Xsqlite3_result_error_code(tls, ctx, rc) @@ -156970,11 +157626,11 @@ func geopolyJsonFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { var db uintptr = Xsqlite3_context_db_handle(tls, context) var x uintptr = Xsqlite3_str_new(tls, db) var i int32 - Xsqlite3_str_append(tls, x, ts+25726 /* "[" */, 1) + Xsqlite3_str_append(tls, x, ts+25736 /* "[" */, 1) for i = 0; i < (*GeoPoly)(unsafe.Pointer(p)).FnVertex; i++ { - Xsqlite3_str_appendf(tls, x, ts+25728 /* "[%!g,%!g]," */, libc.VaList(bp, float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */) + uintptr(((i)*2))*4))), float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */) + uintptr((((i)*2)+1))*4))))) + Xsqlite3_str_appendf(tls, x, ts+25738 /* "[%!g,%!g]," */, libc.VaList(bp, float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */) + uintptr(((i)*2))*4))), float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */) + uintptr((((i)*2)+1))*4))))) } - Xsqlite3_str_appendf(tls, x, ts+25739 /* "[%!g,%!g]]" */, libc.VaList(bp+16, float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */)))), float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */) + 1*4))))) + Xsqlite3_str_appendf(tls, x, ts+25749 /* "[%!g,%!g]]" */, libc.VaList(bp+16, float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */)))), float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */) + 1*4))))) Xsqlite3_result_text(tls, context, Xsqlite3_str_finish(tls, x), -1, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3_free}))) Xsqlite3_free(tls, p) } @@ -156998,19 +157654,19 @@ func geopolySvgFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { var x uintptr = Xsqlite3_str_new(tls, db) var i int32 var cSep int8 = int8('\'') - Xsqlite3_str_appendf(tls, x, ts+25750 /* "" */, 0) + Xsqlite3_str_appendf(tls, x, ts+25798 /* ">" */, 0) Xsqlite3_result_text(tls, context, Xsqlite3_str_finish(tls, x), -1, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3_free}))) Xsqlite3_free(tls, p) } @@ -157539,14 +158195,14 @@ type GeoEvent1 = struct { // Objects used by the overlap algorihm. type GeoEvent = GeoEvent1 /* sqlite3.c:197516:25 */ type GeoSegment1 = struct { - FC float64 - FB float64 - Fy float64 - Fy0 float32 - Fside uint8 - _ [3]byte - Fidx uint32 - FpNext uintptr + FC float64 + FB float64 + Fy float64 + Fy0 float32 + Fside uint8 + F__ccgo_pad1 [3]byte + Fidx uint32 + FpNext uintptr } /* sqlite3.c:197516:9 */ type GeoSegment = GeoSegment1 /* sqlite3.c:197517:27 */ @@ -158024,7 +158680,7 @@ __1: // that is successful, call sqlite3_declare_vtab() to configure // the r-tree table schema. pSql = Xsqlite3_str_new(tls, db) - Xsqlite3_str_appendf(tls, pSql, ts+25801 /* "CREATE TABLE x(_..." */, 0) + Xsqlite3_str_appendf(tls, pSql, ts+25811 /* "CREATE TABLE x(_..." */, 0) (*Rtree)(unsafe.Pointer(pRtree)).FnAux = U8(1) // Add one for _shape (*Rtree)(unsafe.Pointer(pRtree)).FnAuxNotNull = U8(1) // The _shape column is always not-null ii = 3 @@ -158033,7 +158689,7 @@ __2: goto __4 } (*Rtree)(unsafe.Pointer(pRtree)).FnAux++ - Xsqlite3_str_appendf(tls, pSql, ts+25823 /* ",%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(argv + uintptr(ii)*4)))) + Xsqlite3_str_appendf(tls, pSql, ts+25833 /* ",%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(argv + uintptr(ii)*4)))) goto __3 __3: ii++ @@ -158041,7 +158697,7 @@ __3: goto __4 __4: ; - Xsqlite3_str_appendf(tls, pSql, ts+24890 /* ");" */, 0) + Xsqlite3_str_appendf(tls, pSql, ts+24900 /* ");" */, 0) zSql = Xsqlite3_str_finish(tls, pSql) if !(!(zSql != 0)) { goto __5 @@ -158052,7 +158708,7 @@ __5: if !(SQLITE_OK != (libc.AssignInt32(&rc, Xsqlite3_declare_vtab(tls, db, zSql)))) { goto __7 } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp+16, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp+16, Xsqlite3_errmsg(tls, db))) __7: ; __6: @@ -158078,7 +158734,7 @@ __9: if !(rc != 0) { goto __10 } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp+24, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp+24, Xsqlite3_errmsg(tls, db))) goto geopolyInit_fail __10: ; @@ -158311,7 +158967,7 @@ func geopolyBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* s if iRowidTerm >= 0 { (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = 1 - (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = ts + 14757 /* "rowid" */ + (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = ts + 14767 /* "rowid" */ (*sqlite3_index_constraint_usage)(unsafe.Pointer((*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(iRowidTerm)*8)).FargvIndex = 1 (*sqlite3_index_constraint_usage)(unsafe.Pointer((*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(iRowidTerm)*8)).Fomit = uint8(1) (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = 30.0 @@ -158321,7 +158977,7 @@ func geopolyBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* s } if iFuncTerm >= 0 { (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = idxNum - (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = ts + 25827 /* "rtree" */ + (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = ts + 25837 /* "rtree" */ (*sqlite3_index_constraint_usage)(unsafe.Pointer((*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(iFuncTerm)*8)).FargvIndex = 1 (*sqlite3_index_constraint_usage)(unsafe.Pointer((*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(iFuncTerm)*8)).Fomit = uint8(0) (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = 300.0 @@ -158329,7 +158985,7 @@ func geopolyBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* s return SQLITE_OK } (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = 4 - (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = ts + 25833 /* "fullscan" */ + (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = ts + 25843 /* "fullscan" */ (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = 3000000.0 (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedRows = int64(100000) return SQLITE_OK @@ -158467,7 +159123,7 @@ __1: if !(*(*int32)(unsafe.Pointer(bp + 48 /* rc */)) == SQLITE_ERROR) { goto __4 } - (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg = Xsqlite3_mprintf(tls, ts+25842 /* "_shape does not ..." */, 0) + (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg = Xsqlite3_mprintf(tls, ts+25852 /* "_shape does not ..." */, 0) __4: ; goto geopoly_update_end @@ -158612,14 +159268,14 @@ geopoly_update_end: // Report that geopoly_overlap() is an overloaded function suitable // for use in xBestIndex. func geopolyFindFunction(tls *libc.TLS, pVtab uintptr, nArg int32, zName uintptr, pxFunc uintptr, ppArg uintptr) int32 { /* sqlite3.c:198361:12: */ - if Xsqlite3_stricmp(tls, zName, ts+25882 /* "geopoly_overlap" */) == 0 { + if Xsqlite3_stricmp(tls, zName, ts+25892 /* "geopoly_overlap" */) == 0 { *(*uintptr)(unsafe.Pointer(pxFunc)) = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{geopolyOverlapFunc})) *(*uintptr)(unsafe.Pointer(ppArg)) = uintptr(0) return SQLITE_INDEX_CONSTRAINT_FUNCTION } - if Xsqlite3_stricmp(tls, zName, ts+25898 /* "geopoly_within" */) == 0 { + if Xsqlite3_stricmp(tls, zName, ts+25908 /* "geopoly_within" */) == 0 { *(*uintptr)(unsafe.Pointer(pxFunc)) = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{geopolyWithinFunc})) @@ -158658,11 +159314,11 @@ func sqlite3_geopoly_init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:198409 var rc int32 = SQLITE_OK var i int32 for i = 0; (uint32(i) < (uint32(unsafe.Sizeof(aFunc1)) / uint32(unsafe.Sizeof(struct { - FxFunc uintptr - FnArg int8 - FbPure uint8 - _ [2]byte - FzName uintptr + FxFunc uintptr + FnArg int8 + FbPure uint8 + F__ccgo_pad1 [2]byte + FzName uintptr }{})))) && (rc == SQLITE_OK); i++ { var enc int32 if aFunc1[i].FbPure != 0 { @@ -158684,37 +159340,37 @@ func sqlite3_geopoly_init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:198409 uintptr(0), aAgg1[i].FxStep, aAgg1[i].FxFinal) } if rc == SQLITE_OK { - rc = Xsqlite3_create_module_v2(tls, db, ts+25913 /* "geopoly" */, uintptr(unsafe.Pointer(&geopolyModule)), uintptr(0), uintptr(0)) + rc = Xsqlite3_create_module_v2(tls, db, ts+25923 /* "geopoly" */, uintptr(unsafe.Pointer(&geopolyModule)), uintptr(0), uintptr(0)) } return rc } var aFunc1 = [12]struct { - FxFunc uintptr - FnArg int8 - FbPure uint8 - _ [2]byte - FzName uintptr + FxFunc uintptr + FnArg int8 + FbPure uint8 + F__ccgo_pad1 [2]byte + FzName uintptr }{ - {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 25921 /* "geopoly_area" */}, - {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 25934 /* "geopoly_blob" */}, - {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 25947 /* "geopoly_json" */}, - {FxFunc: 0, FnArg: int8(-1), FbPure: uint8(1), FzName: ts + 25960 /* "geopoly_svg" */}, - {FxFunc: 0, FnArg: int8(2), FbPure: uint8(1), FzName: ts + 25898 /* "geopoly_within" */}, - {FxFunc: 0, FnArg: int8(3), FbPure: uint8(1), FzName: ts + 25972 /* "geopoly_contains..." */}, - {FxFunc: 0, FnArg: int8(2), FbPure: uint8(1), FzName: ts + 25882 /* "geopoly_overlap" */}, - {FxFunc: 0, FnArg: int8(1), FzName: ts + 25995 /* "geopoly_debug" */}, - {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 26009 /* "geopoly_bbox" */}, - {FxFunc: 0, FnArg: int8(7), FbPure: uint8(1), FzName: ts + 26022 /* "geopoly_xform" */}, - {FxFunc: 0, FnArg: int8(4), FbPure: uint8(1), FzName: ts + 26036 /* "geopoly_regular" */}, - {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 26052 /* "geopoly_ccw" */}, + {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 25931 /* "geopoly_area" */}, + {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 25944 /* "geopoly_blob" */}, + {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 25957 /* "geopoly_json" */}, + {FxFunc: 0, FnArg: int8(-1), FbPure: uint8(1), FzName: ts + 25970 /* "geopoly_svg" */}, + {FxFunc: 0, FnArg: int8(2), FbPure: uint8(1), FzName: ts + 25908 /* "geopoly_within" */}, + {FxFunc: 0, FnArg: int8(3), FbPure: uint8(1), FzName: ts + 25982 /* "geopoly_contains..." */}, + {FxFunc: 0, FnArg: int8(2), FbPure: uint8(1), FzName: ts + 25892 /* "geopoly_overlap" */}, + {FxFunc: 0, FnArg: int8(1), FzName: ts + 26005 /* "geopoly_debug" */}, + {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 26019 /* "geopoly_bbox" */}, + {FxFunc: 0, FnArg: int8(7), FbPure: uint8(1), FzName: ts + 26032 /* "geopoly_xform" */}, + {FxFunc: 0, FnArg: int8(4), FbPure: uint8(1), FzName: ts + 26046 /* "geopoly_regular" */}, + {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 26062 /* "geopoly_ccw" */}, } /* sqlite3.c:198416:5 */ var aAgg1 = [1]struct { FxStep uintptr FxFinal uintptr FzName uintptr }{ - {FxStep: 0, FxFinal: 0, FzName: ts + 26064 /* "geopoly_group_bb..." */}, + {FxStep: 0, FxFinal: 0, FzName: ts + 26074 /* "geopoly_group_bb..." */}, } /* sqlite3.c:198434:5 */ //************* End of geopoly.c ******************************************** @@ -158727,26 +159383,26 @@ func Xsqlite3RtreeInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:198469:20 var utf8 int32 = SQLITE_UTF8 var rc int32 - rc = Xsqlite3_create_function(tls, db, ts+26083 /* "rtreenode" */, 2, utf8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + rc = Xsqlite3_create_function(tls, db, ts+26093 /* "rtreenode" */, 2, utf8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{rtreenode})), uintptr(0), uintptr(0)) if rc == SQLITE_OK { - rc = Xsqlite3_create_function(tls, db, ts+26093 /* "rtreedepth" */, 1, utf8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + rc = Xsqlite3_create_function(tls, db, ts+26103 /* "rtreedepth" */, 1, utf8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{rtreedepth})), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { - rc = Xsqlite3_create_function(tls, db, ts+26104 /* "rtreecheck" */, -1, utf8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + rc = Xsqlite3_create_function(tls, db, ts+26114 /* "rtreecheck" */, -1, utf8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{rtreecheck})), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { var c uintptr = uintptr(RTREE_COORD_REAL32) - rc = Xsqlite3_create_module_v2(tls, db, ts+25827 /* "rtree" */, uintptr(unsafe.Pointer(&rtreeModule)), c, uintptr(0)) + rc = Xsqlite3_create_module_v2(tls, db, ts+25837 /* "rtree" */, uintptr(unsafe.Pointer(&rtreeModule)), c, uintptr(0)) } if rc == SQLITE_OK { var c uintptr = uintptr(RTREE_COORD_INT32) - rc = Xsqlite3_create_module_v2(tls, db, ts+26115 /* "rtree_i32" */, uintptr(unsafe.Pointer(&rtreeModule)), c, uintptr(0)) + rc = Xsqlite3_create_module_v2(tls, db, ts+26125 /* "rtree_i32" */, uintptr(unsafe.Pointer(&rtreeModule)), c, uintptr(0)) } if rc == SQLITE_OK { rc = sqlite3_geopoly_init(tls, db) @@ -158763,7 +159419,7 @@ func Xsqlite3RtreeInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:198469:20 func rtreeFreeCallback(tls *libc.TLS, p uintptr) { /* sqlite3.c:198508:13: */ var pInfo uintptr = p if (*RtreeGeomCallback)(unsafe.Pointer(pInfo)).FxDestructor != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pInfo + 8 /* &.xDestructor */))))(tls, (*RtreeGeomCallback)(unsafe.Pointer(pInfo)).FpContext) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*RtreeGeomCallback)(unsafe.Pointer(pInfo)).FxDestructor})).f(tls, (*RtreeGeomCallback)(unsafe.Pointer(pInfo)).FpContext) } Xsqlite3_free(tls, p) } @@ -158818,7 +159474,7 @@ func geomCallback(tls *libc.TLS, ctx uintptr, nArg int32, aArg uintptr) { /* sql Xsqlite3_result_error_nomem(tls, ctx) rtreeMatchArgFree(tls, pBlob) } else { - Xsqlite3_result_pointer(tls, ctx, pBlob, ts+23403 /* "RtreeMatchArg" */, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{rtreeMatchArgFree}))) + Xsqlite3_result_pointer(tls, ctx, pBlob, ts+23413 /* "RtreeMatchArg" */, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{rtreeMatchArgFree}))) } } } @@ -159269,7 +159925,7 @@ type sqlite3rbu = struct { FzRbu uintptr FzState uintptr FzStateDb [5]int8 - _ [3]byte + F__ccgo_pad1 [3]byte Frc int32 FzErrmsg uintptr FnStep int32 @@ -159886,7 +160542,7 @@ type rbu_file = struct { FiCookie U32 FiWriteVer U8 FbNolock U8 - _ [2]byte + F__ccgo_pad1 [2]byte FnShm int32 FapShm uintptr FzDel uintptr @@ -160097,7 +160753,7 @@ func rbuFossilDeltaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr // Figure out the size of the output nOut = rbuDeltaOutputSize(tls, aDelta, nDelta) if nOut < 0 { - Xsqlite3_result_error(tls, context, ts+26125 /* "corrupt fossil d..." */, -1) + Xsqlite3_result_error(tls, context, ts+26135 /* "corrupt fossil d..." */, -1) return } @@ -160108,7 +160764,7 @@ func rbuFossilDeltaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr nOut2 = rbuDeltaApply(tls, aOrig, nOrig, aDelta, nDelta, aOut) if nOut2 != nOut { Xsqlite3_free(tls, aOut) - Xsqlite3_result_error(tls, context, ts+26125 /* "corrupt fossil d..." */, -1) + Xsqlite3_result_error(tls, context, ts+26135 /* "corrupt fossil d..." */, -1) } else { Xsqlite3_result_blob(tls, context, aOut, nOut, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3_free}))) } @@ -160129,7 +160785,7 @@ func prepareAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErrmsg var rc int32 = Xsqlite3_prepare_v2(tls, db, zSql, -1, ppStmt, uintptr(0)) if rc != SQLITE_OK { - *(*uintptr)(unsafe.Pointer(pzErrmsg)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErrmsg)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, db))) *(*uintptr)(unsafe.Pointer(ppStmt)) = uintptr(0) } return rc @@ -160147,7 +160803,7 @@ func resetAndCollectError(tls *libc.TLS, pStmt uintptr, pzErrmsg uintptr) int32 var rc int32 = Xsqlite3_reset(tls, pStmt) if rc != SQLITE_OK { - *(*uintptr)(unsafe.Pointer(pzErrmsg)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, Xsqlite3_db_handle(tls, pStmt)))) + *(*uintptr)(unsafe.Pointer(pzErrmsg)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, Xsqlite3_db_handle(tls, pStmt)))) } return rc } @@ -160251,7 +160907,7 @@ func rbuObjIterNext(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3. if (*RbuObjIter)(unsafe.Pointer(pIter)).FzIdx == uintptr(0) { rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, - ts+26146 /* "DROP TRIGGER IF ..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + ts+26156 /* "DROP TRIGGER IF ..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } if rc == SQLITE_OK { @@ -160335,7 +160991,7 @@ func rbuTargetNameFunc(tls *libc.TLS, pCtx uintptr, argc int32, argv uintptr) { Xsqlite3_result_text(tls, pCtx, zIn, -1, uintptr(0)) } } else { - if (libc.Xstrlen(tls, zIn) > Size_t(4)) && (libc.Xmemcmp(tls, ts+23316 /* "data" */, zIn, uint32(4)) == 0) { + if (libc.Xstrlen(tls, zIn) > Size_t(4)) && (libc.Xmemcmp(tls, ts+23326 /* "data" */, zIn, uint32(4)) == 0) { var i int32 for i = 4; (int32(*(*int8)(unsafe.Pointer(zIn + uintptr(i)))) >= '0') && (int32(*(*int8)(unsafe.Pointer(zIn + uintptr(i)))) <= '9'); i++ { } @@ -160363,17 +161019,17 @@ func rbuObjIterFirst(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3 rc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, (pIter /* &.pTblIter */), (p + 36 /* &.zErrmsg */), Xsqlite3_mprintf(tls, - ts+26317 /* "SELECT rbu_targe..." */, libc.VaList(bp, func() uintptr { + ts+26327 /* "SELECT rbu_targe..." */, libc.VaList(bp, func() uintptr { if (*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0) { - return ts + 26467 /* "AND rootpage!=0 ..." */ + return ts + 26477 /* "AND rootpage!=0 ..." */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }()))) if rc == SQLITE_OK { rc = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (pIter + 4 /* &.pIdxIter */), (p + 36 /* &.zErrmsg */), - ts+26508 /* "SELECT name, roo..." */) + ts+26518 /* "SELECT name, roo..." */) } (*RbuObjIter)(unsafe.Pointer(pIter)).FbCleanup = 1 @@ -160511,7 +161167,7 @@ func rbuFinalize(tls *libc.TLS, p uintptr, pStmt uintptr) { /* sqlite3.c:201199: var rc int32 = Xsqlite3_finalize(tls, pStmt) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (rc != SQLITE_OK) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = rc - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, db))) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, db))) } } @@ -160574,7 +161230,7 @@ func rbuTableType(tls *libc.TLS, p uintptr, zTab uintptr, peType uintptr, piTnum (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (bp + 32 /* &aStmt */), (p + 36 /* &.zErrmsg */), Xsqlite3_mprintf(tls, - ts+26633 /* "SELECT (sql LIKE..." */, libc.VaList(bp, zTab))) + ts+26643 /* "SELECT (sql LIKE..." */, libc.VaList(bp, zTab))) if !(((*Sqlite3rbu)(unsafe.Pointer(p)).Frc != SQLITE_OK) || (Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 32 /* &aStmt[0] */))) != SQLITE_ROW)) { goto __1 } @@ -160592,7 +161248,7 @@ __2: *(*int32)(unsafe.Pointer(piTnum)) = Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 32 /* &aStmt[0] */)), 1) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (bp + 32 /* &aStmt */ + 1*4), (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+26714 /* "PRAGMA index_lis..." */, libc.VaList(bp+8, zTab))) + Xsqlite3_mprintf(tls, ts+26724 /* "PRAGMA index_lis..." */, libc.VaList(bp+8, zTab))) if !((*Sqlite3rbu)(unsafe.Pointer(p)).Frc != 0) { goto __3 } @@ -160610,7 +161266,7 @@ __4: } (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (bp + 32 /* &aStmt */ + 2*4), (p + 36 /* &.zErrmsg */), Xsqlite3_mprintf(tls, - ts+26735 /* "SELECT rootpage ..." */, libc.VaList(bp+16, zIdx))) + ts+26745 /* "SELECT rootpage ..." */, libc.VaList(bp+16, zIdx))) if !((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) { goto __7 } @@ -160634,7 +161290,7 @@ __5: ; (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (bp + 32 /* &aStmt */ + 3*4), (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+26786 /* "PRAGMA table_inf..." */, libc.VaList(bp+24, zTab))) + Xsqlite3_mprintf(tls, ts+26796 /* "PRAGMA table_inf..." */, libc.VaList(bp+24, zTab))) if !((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) { goto __10 } @@ -160683,7 +161339,7 @@ func rbuObjIterCacheIndexedCols(tls *libc.TLS, p uintptr, pIter uintptr) { /* sq if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { libc.Xmemcpy(tls, (*RbuObjIter)(unsafe.Pointer(pIter)).FabIndexed, (*RbuObjIter)(unsafe.Pointer(pIter)).FabTblPk, (uint32(unsafe.Sizeof(U8(0))) * uint32((*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol))) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+16 /* &pList */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+26807 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) + Xsqlite3_mprintf(tls, ts+26817 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) } (*RbuObjIter)(unsafe.Pointer(pIter)).FnIndex = 0 @@ -160698,7 +161354,7 @@ func rbuObjIterCacheIndexedCols(tls *libc.TLS, p uintptr, pIter uintptr) { /* sq libc.Xmemset(tls, (*RbuObjIter)(unsafe.Pointer(pIter)).FabIndexed, 0x01, (uint32(unsafe.Sizeof(U8(0))) * uint32((*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol))) } (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+20 /* &pXInfo */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+26835 /* "PRAGMA main.inde..." */, libc.VaList(bp+8, zIdx))) + Xsqlite3_mprintf(tls, ts+26845 /* "PRAGMA main.inde..." */, libc.VaList(bp+8, zIdx))) for ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 20 /* pXInfo */)))) { var iCid int32 = Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 20 /* pXInfo */)), 1) if iCid >= 0 { @@ -160748,7 +161404,7 @@ func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { / rbuTableType(tls, p, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl, (pIter + 36 /* &.eType */), bp+56 /* &iTnum */, (pIter + 60 /* &.iPkTnum */)) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_NOTABLE) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+17857 /* "no such table: %..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl)) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+17867 /* "no such table: %..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl)) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc != 0 { return (*Sqlite3rbu)(unsafe.Pointer(p)).Frc @@ -160761,18 +161417,18 @@ func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { / // of the input table. Ignore any input table columns that begin with // "rbu_". (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp+60 /* &pStmt */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+26864 /* "SELECT * FROM '%..." */, libc.VaList(bp+8, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl))) + Xsqlite3_mprintf(tls, ts+26874 /* "SELECT * FROM '%..." */, libc.VaList(bp+8, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl))) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { nCol = Xsqlite3_column_count(tls, *(*uintptr)(unsafe.Pointer(bp + 60 /* pStmt */))) rbuAllocateIterArrays(tls, p, pIter, nCol) } for i = 0; ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (i < nCol); i++ { var zName uintptr = Xsqlite3_column_name(tls, *(*uintptr)(unsafe.Pointer(bp + 60 /* pStmt */)), i) - if Xsqlite3_strnicmp(tls, ts+26883 /* "rbu_" */, zName, 4) != 0 { + if Xsqlite3_strnicmp(tls, ts+26893 /* "rbu_" */, zName, 4) != 0 { var zCopy uintptr = rbuStrndup(tls, zName, (p + 32 /* &.rc */)) *(*int32)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FaiSrcOrder + uintptr((*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol)*4)) = (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(libc.PostIncInt32(&(*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol, 1))*4)) = zCopy - } else if 0 == Xsqlite3_stricmp(tls, ts+26888 /* "rbu_rowid" */, zName) { + } else if 0 == Xsqlite3_stricmp(tls, ts+26898 /* "rbu_rowid" */, zName) { bRbuRowid = 1 } } @@ -160784,12 +161440,12 @@ func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { / (bRbuRowid != (libc.Bool32(((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_VTAB) || ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_NONE)))) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, - ts+26898 /* "table %q %s rbu_..." */, libc.VaList(bp+16, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, + ts+26908 /* "table %q %s rbu_..." */, libc.VaList(bp+16, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, func() uintptr { if bRbuRowid != 0 { - return ts + 26927 /* "may not have" */ + return ts + 26937 /* "may not have" */ } - return ts + 26940 /* "requires" */ + return ts + 26950 /* "requires" */ }())) } @@ -160798,7 +161454,7 @@ func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { / // aiTblOrder[] arrays at the same time. if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+60 /* &pStmt */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+26949 /* "PRAGMA table_inf..." */, libc.VaList(bp+32, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) + Xsqlite3_mprintf(tls, ts+26959 /* "PRAGMA table_inf..." */, libc.VaList(bp+32, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) } for ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 60 /* pStmt */)))) { var zName uintptr = Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 60 /* pStmt */)), 1) @@ -160812,7 +161468,7 @@ func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { / } if i == (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+26971, /* "column missing f..." */ + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+26981, /* "column missing f..." */ libc.VaList(bp+40, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, zName)) } else { var iPk int32 = Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 60 /* pStmt */)), 5) @@ -160858,12 +161514,12 @@ func rbuObjIterGetCollist(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* defer tls.Free(24) var zList uintptr = uintptr(0) - var zSep uintptr = ts + 755 /* "" */ + var zSep uintptr = ts + 765 /* "" */ var i int32 for i = 0; i < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol; i++ { var z uintptr = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)) - zList = rbuMPrintf(tls, p, ts+26998 /* "%z%s\"%w\"" */, libc.VaList(bp, zList, zSep, z)) - zSep = ts + 13324 /* ", " */ + zList = rbuMPrintf(tls, p, ts+27008 /* "%z%s\"%w\"" */, libc.VaList(bp, zList, zSep, z)) + zSep = ts + 13334 /* ", " */ } return zList } @@ -160878,13 +161534,13 @@ func rbuObjIterGetPkList(tls *libc.TLS, p uintptr, pIter uintptr, zPre uintptr, var iPk int32 = 1 var zRet uintptr = uintptr(0) - var zSep uintptr = ts + 755 /* "" */ + var zSep uintptr = ts + 765 /* "" */ for 1 != 0 { var i int32 for i = 0; i < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol; i++ { if int32(*(*U8)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FabTblPk + uintptr(i)))) == iPk { var zCol uintptr = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)) - zRet = rbuMPrintf(tls, p, ts+27007 /* "%z%s%s\"%w\"%s" */, libc.VaList(bp, zRet, zSep, zPre, zCol, zPost)) + zRet = rbuMPrintf(tls, p, ts+27017 /* "%z%s%s\"%w\"%s" */, libc.VaList(bp, zRet, zSep, zPre, zCol, zPost)) zSep = zSeparator break } @@ -160923,25 +161579,25 @@ func rbuVacuumTableStart(tls *libc.TLS, p uintptr, pIter uintptr, bRowid int32, if bRowid != 0 { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+72 /* &pMax */, (p + 36 /* &.zErrmsg */), Xsqlite3_mprintf(tls, - ts+27020 /* "SELECT max(_rowi..." */, libc.VaList(bp, zWrite, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) + ts+27030 /* "SELECT max(_rowi..." */, libc.VaList(bp, zWrite, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 72 /* pMax */)))) { var iMax Sqlite3_int64 = Xsqlite3_column_int64(tls, *(*uintptr)(unsafe.Pointer(bp + 72 /* pMax */)), 0) - zRet = rbuMPrintf(tls, p, ts+27052 /* " WHERE _rowid_ >..." */, libc.VaList(bp+16, iMax)) + zRet = rbuMPrintf(tls, p, ts+27062 /* " WHERE _rowid_ >..." */, libc.VaList(bp+16, iMax)) } rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp + 72 /* pMax */))) } else { - var zOrder uintptr = rbuObjIterGetPkList(tls, p, pIter, ts+755 /* "" */, ts+13324 /* ", " */, ts+27075 /* " DESC" */) - var zSelect uintptr = rbuObjIterGetPkList(tls, p, pIter, ts+27081 /* "quote(" */, ts+27088 /* "||','||" */, ts+4066 /* ")" */) - var zList uintptr = rbuObjIterGetPkList(tls, p, pIter, ts+755 /* "" */, ts+13324 /* ", " */, ts+755 /* "" */) + var zOrder uintptr = rbuObjIterGetPkList(tls, p, pIter, ts+765 /* "" */, ts+13334 /* ", " */, ts+27085 /* " DESC" */) + var zSelect uintptr = rbuObjIterGetPkList(tls, p, pIter, ts+27091 /* "quote(" */, ts+27098 /* "||','||" */, ts+4076 /* ")" */) + var zList uintptr = rbuObjIterGetPkList(tls, p, pIter, ts+765 /* "" */, ts+13334 /* ", " */, ts+765 /* "" */) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+72 /* &pMax */, (p + 36 /* &.zErrmsg */), Xsqlite3_mprintf(tls, - ts+27096, /* "SELECT %s FROM \"..." */ + ts+27106, /* "SELECT %s FROM \"..." */ libc.VaList(bp+24, zSelect, zWrite, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl, zOrder))) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 72 /* pMax */)))) { var zVal uintptr = Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 72 /* pMax */)), 0) - zRet = rbuMPrintf(tls, p, ts+27138 /* " WHERE (%s) > (%..." */, libc.VaList(bp+56, zList, zVal)) + zRet = rbuMPrintf(tls, p, ts+27148 /* " WHERE (%s) > (%..." */, libc.VaList(bp+56, zList, zVal)) } rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp + 72 /* pMax */))) } @@ -160999,12 +161655,12 @@ func XrbuVacuumIndexStart(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* zVector = uintptr(0) zRet = uintptr(0) bFailed = 0 - zSep = ts + 755 /* "" */ + zSep = ts + 765 /* "" */ iCol = 0 *(*uintptr)(unsafe.Pointer(bp + 176 /* pXInfo */)) = uintptr(0) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+176 /* &pXInfo */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+26835 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzIdx))) + Xsqlite3_mprintf(tls, ts+26845 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzIdx))) __1: if !(((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 176 /* pXInfo */))))) { goto __2 @@ -161041,7 +161697,7 @@ __10: zCol = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)) goto __7 __6: - zCol = ts + 27158 /* "_rowid_" */ + zCol = ts + 27168 /* "_rowid_" */ __7: ; goto __5 @@ -161050,13 +161706,13 @@ __4: __5: ; - zLhs = rbuMPrintf(tls, p, ts+27166, /* "%z%s \"%w\" COLLAT..." */ + zLhs = rbuMPrintf(tls, p, ts+27176, /* "%z%s \"%w\" COLLAT..." */ libc.VaList(bp+8, zLhs, zSep, zCol, zCollate)) - zOrder = rbuMPrintf(tls, p, ts+27187, /* "%z%s \"rbu_imp_%d..." */ + zOrder = rbuMPrintf(tls, p, ts+27197, /* "%z%s \"rbu_imp_%d..." */ libc.VaList(bp+40, zOrder, zSep, iCol, zCol, zCollate)) - zSelect = rbuMPrintf(tls, p, ts+27223, /* "%z%s quote(\"rbu_..." */ + zSelect = rbuMPrintf(tls, p, ts+27233, /* "%z%s quote(\"rbu_..." */ libc.VaList(bp+80, zSelect, zSep, iCol, zCol)) - zSep = ts + 13324 /* ", " */ + zSep = ts + 13334 /* ", " */ iCol++ goto __1 __2: @@ -161075,12 +161731,12 @@ __11: *(*uintptr)(unsafe.Pointer(bp + 180 /* pSel */)) = uintptr(0) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+180 /* &pSel */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+27250, /* "SELECT %s FROM \"..." */ + Xsqlite3_mprintf(tls, ts+27260, /* "SELECT %s FROM \"..." */ libc.VaList(bp+112, zSelect, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl, zOrder))) if !(((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 180 /* pSel */))))) { goto __13 } - zSep = ts + 755 /* "" */ + zSep = ts + 765 /* "" */ iCol = 0 __14: if !(iCol < (*RbuObjIter)(unsafe.Pointer(pIter)).FnCol) { @@ -161102,8 +161758,8 @@ __19: ; __18: ; - zVector = rbuMPrintf(tls, p, ts+27298 /* "%z%s%s" */, libc.VaList(bp+136, zVector, zSep, zQuoted)) - zSep = ts + 13324 /* ", " */ + zVector = rbuMPrintf(tls, p, ts+27308 /* "%z%s%s" */, libc.VaList(bp+136, zVector, zSep, zQuoted)) + zSep = ts + 13334 /* ", " */ goto __15 __15: iCol++ @@ -161115,7 +161771,7 @@ __16: if !(!(bFailed != 0)) { goto __20 } - zRet = rbuMPrintf(tls, p, ts+27305 /* "(%s) > (%s)" */, libc.VaList(bp+160, zLhs, zVector)) + zRet = rbuMPrintf(tls, p, ts+27315 /* "(%s) > (%s)" */, libc.VaList(bp+160, zLhs, zVector)) __20: ; __13: @@ -161165,14 +161821,14 @@ func rbuObjIterGetIndexCols(tls *libc.TLS, p uintptr, pIter uintptr, pzImposterC var zImpPK uintptr = uintptr(0) // String to return via *pzImposterPK var zWhere uintptr = uintptr(0) // String to return via *pzWhere var nBind int32 = 0 // Value to return via *pnBind - var zCom uintptr = ts + 755 /* "" */ // Set to ", " later on - var zAnd uintptr = ts + 755 /* "" */ // Set to " AND " later on + var zCom uintptr = ts + 765 /* "" */ // Set to ", " later on + var zAnd uintptr = ts + 765 /* "" */ // Set to " AND " later on *(*uintptr)(unsafe.Pointer(bp + 200 /* pXInfo */)) = uintptr(0) // PRAGMA index_xinfo = ? if rc == SQLITE_OK { rc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+200 /* &pXInfo */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+26835 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzIdx))) + Xsqlite3_mprintf(tls, ts+26845 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzIdx))) } for (rc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 200 /* pXInfo */)))) { @@ -161184,9 +161840,9 @@ func rbuObjIterGetIndexCols(tls *libc.TLS, p uintptr, pIter uintptr, pzImposterC if iCid == -2 { var iSeq int32 = Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 200 /* pXInfo */)), 0) - zRet = Xsqlite3_mprintf(tls, ts+27317 /* "%z%s(%.*s) COLLA..." */, libc.VaList(bp+8, zRet, zCom, + zRet = Xsqlite3_mprintf(tls, ts+27327 /* "%z%s(%.*s) COLLA..." */, libc.VaList(bp+8, zRet, zCom, (*RbuSpan)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FaIdxCol+uintptr(iSeq)*8)).FnSpan, (*RbuSpan)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FaIdxCol+uintptr(iSeq)*8)).FzSpan, zCollate)) - zType = ts + 755 /* "" */ + zType = ts + 765 /* "" */ } else { if iCid < 0 { // An integer primary key. If the table has an explicit IPK, use @@ -161198,37 +161854,37 @@ func rbuObjIterGetIndexCols(tls *libc.TLS, p uintptr, pIter uintptr, pzImposterC zCol = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)) } else if (*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0) { - zCol = ts + 27158 /* "_rowid_" */ + zCol = ts + 27168 /* "_rowid_" */ } else { - zCol = ts + 26888 /* "rbu_rowid" */ + zCol = ts + 26898 /* "rbu_rowid" */ } - zType = ts + 11384 /* "INTEGER" */ + zType = ts + 11394 /* "INTEGER" */ } else { zCol = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(iCid)*4)) zType = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblType + uintptr(iCid)*4)) } - zRet = Xsqlite3_mprintf(tls, ts+27339 /* "%z%s\"%w\" COLLATE..." */, libc.VaList(bp+48, zRet, zCom, zCol, zCollate)) + zRet = Xsqlite3_mprintf(tls, ts+27349 /* "%z%s\"%w\" COLLATE..." */, libc.VaList(bp+48, zRet, zCom, zCol, zCollate)) } if ((*RbuObjIter)(unsafe.Pointer(pIter)).FbUnique == 0) || (Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 200 /* pXInfo */)), 5) != 0) { var zOrder uintptr = func() uintptr { if bDesc != 0 { - return ts + 27075 /* " DESC" */ + return ts + 27085 /* " DESC" */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }() - zImpPK = Xsqlite3_mprintf(tls, ts+27359, /* "%z%s\"rbu_imp_%d%..." */ + zImpPK = Xsqlite3_mprintf(tls, ts+27369, /* "%z%s\"rbu_imp_%d%..." */ libc.VaList(bp+80, zImpPK, zCom, nBind, zCol, zOrder)) } - zImpCols = Xsqlite3_mprintf(tls, ts+27380, /* "%z%s\"rbu_imp_%d%..." */ + zImpCols = Xsqlite3_mprintf(tls, ts+27390, /* "%z%s\"rbu_imp_%d%..." */ libc.VaList(bp+120, zImpCols, zCom, nBind, zCol, zType, zCollate)) zWhere = Xsqlite3_mprintf(tls, - ts+27413 /* "%z%s\"rbu_imp_%d%..." */, libc.VaList(bp+168, zWhere, zAnd, nBind, zCol)) + ts+27423 /* "%z%s\"rbu_imp_%d%..." */, libc.VaList(bp+168, zWhere, zAnd, nBind, zCol)) if (((zRet == uintptr(0)) || (zImpPK == uintptr(0))) || (zImpCols == uintptr(0))) || (zWhere == uintptr(0)) { rc = SQLITE_NOMEM } - zCom = ts + 13324 /* ", " */ - zAnd = ts + 19877 /* " AND " */ + zCom = ts + 13334 /* ", " */ + zAnd = ts + 19887 /* " AND " */ nBind++ } @@ -161271,16 +161927,16 @@ func rbuObjIterGetOldlist(tls *libc.TLS, p uintptr, pIter uintptr, zObj uintptr) var zList uintptr = uintptr(0) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*RbuObjIter)(unsafe.Pointer(pIter)).FabIndexed != 0) { - var zS uintptr = ts + 755 /* "" */ + var zS uintptr = ts + 765 /* "" */ var i int32 for i = 0; i < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol; i++ { if *(*U8)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FabIndexed + uintptr(i))) != 0 { var zCol uintptr = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)) - zList = Xsqlite3_mprintf(tls, ts+27437 /* "%z%s%s.\"%w\"" */, libc.VaList(bp, zList, zS, zObj, zCol)) + zList = Xsqlite3_mprintf(tls, ts+27447 /* "%z%s%s.\"%w\"" */, libc.VaList(bp, zList, zS, zObj, zCol)) } else { - zList = Xsqlite3_mprintf(tls, ts+27449 /* "%z%sNULL" */, libc.VaList(bp+32, zList, zS)) + zList = Xsqlite3_mprintf(tls, ts+27459 /* "%z%sNULL" */, libc.VaList(bp+32, zList, zS)) } - zS = ts + 13324 /* ", " */ + zS = ts + 13334 /* ", " */ if zList == uintptr(0) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_NOMEM break @@ -161289,7 +161945,7 @@ func rbuObjIterGetOldlist(tls *libc.TLS, p uintptr, pIter uintptr, zObj uintptr) // For a table with implicit rowids, append "old._rowid_" to the list. if ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_EXTERNAL) || ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_NONE) { - zList = rbuMPrintf(tls, p, ts+27458 /* "%z, %s._rowid_" */, libc.VaList(bp+48, zList, zObj)) + zList = rbuMPrintf(tls, p, ts+27468 /* "%z, %s._rowid_" */, libc.VaList(bp+48, zList, zObj)) } } return zList @@ -161309,27 +161965,27 @@ func rbuObjIterGetWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sq var zList uintptr = uintptr(0) if ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_VTAB) || ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_NONE) { - zList = rbuMPrintf(tls, p, ts+27473 /* "_rowid_ = ?%d" */, libc.VaList(bp, ((*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol+1))) + zList = rbuMPrintf(tls, p, ts+27483 /* "_rowid_ = ?%d" */, libc.VaList(bp, ((*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol+1))) } else if (*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_EXTERNAL { - var zSep uintptr = ts + 755 /* "" */ + var zSep uintptr = ts + 765 /* "" */ var i int32 for i = 0; i < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol; i++ { if *(*U8)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FabTblPk + uintptr(i))) != 0 { - zList = rbuMPrintf(tls, p, ts+27487 /* "%z%sc%d=?%d" */, libc.VaList(bp+8, zList, zSep, i, (i+1))) - zSep = ts + 19877 /* " AND " */ + zList = rbuMPrintf(tls, p, ts+27497 /* "%z%sc%d=?%d" */, libc.VaList(bp+8, zList, zSep, i, (i+1))) + zSep = ts + 19887 /* " AND " */ } } zList = rbuMPrintf(tls, p, - ts+27499 /* "_rowid_ = (SELEC..." */, libc.VaList(bp+40, zList)) + ts+27509 /* "_rowid_ = (SELEC..." */, libc.VaList(bp+40, zList)) } else { - var zSep uintptr = ts + 755 /* "" */ + var zSep uintptr = ts + 765 /* "" */ var i int32 for i = 0; i < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol; i++ { if *(*U8)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FabTblPk + uintptr(i))) != 0 { var zCol uintptr = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)) - zList = rbuMPrintf(tls, p, ts+27549 /* "%z%s\"%w\"=?%d" */, libc.VaList(bp+48, zList, zSep, zCol, (i+1))) - zSep = ts + 19877 /* " AND " */ + zList = rbuMPrintf(tls, p, ts+27559 /* "%z%s\"%w\"=?%d" */, libc.VaList(bp+48, zList, zSep, zCol, (i+1))) + zSep = ts + 19887 /* " AND " */ } } } @@ -161343,7 +161999,7 @@ func rbuObjIterGetWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sq // of the RBU handle to something reflecting this. func rbuBadControlError(tls *libc.TLS, p uintptr) { /* sqlite3.c:201937:13: */ (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+27562 /* "invalid rbu_cont..." */, 0) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+27572 /* "invalid rbu_cont..." */, 0) } // Return a nul-terminated string containing the comma separated list of @@ -161372,21 +162028,21 @@ func rbuObjIterGetSetlist(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr if int32(libc.Xstrlen(tls, zMask)) != (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol { rbuBadControlError(tls, p) } else { - var zSep uintptr = ts + 755 /* "" */ + var zSep uintptr = ts + 765 /* "" */ for i = 0; i < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol; i++ { var c int8 = *(*int8)(unsafe.Pointer(zMask + uintptr(*(*int32)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FaiSrcOrder + uintptr(i)*4))))) if int32(c) == 'x' { - zList = rbuMPrintf(tls, p, ts+27549, /* "%z%s\"%w\"=?%d" */ + zList = rbuMPrintf(tls, p, ts+27559, /* "%z%s\"%w\"=?%d" */ libc.VaList(bp, zList, zSep, *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)), (i+1))) - zSep = ts + 13324 /* ", " */ + zSep = ts + 13334 /* ", " */ } else if int32(c) == 'd' { - zList = rbuMPrintf(tls, p, ts+27588, /* "%z%s\"%w\"=rbu_del..." */ + zList = rbuMPrintf(tls, p, ts+27598, /* "%z%s\"%w\"=rbu_del..." */ libc.VaList(bp+32, zList, zSep, *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)), *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)), (i+1))) - zSep = ts + 13324 /* ", " */ + zSep = ts + 13334 /* ", " */ } else if int32(c) == 'f' { - zList = rbuMPrintf(tls, p, ts+27618, /* "%z%s\"%w\"=rbu_fos..." */ + zList = rbuMPrintf(tls, p, ts+27628, /* "%z%s\"%w\"=rbu_fos..." */ libc.VaList(bp+72, zList, zSep, *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)), *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)), (i+1))) - zSep = ts + 13324 /* ", " */ + zSep = ts + 13334 /* ", " */ } } } @@ -161444,19 +162100,19 @@ func rbuWithoutRowidPK(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sql var z uintptr = uintptr(0) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - var zSep uintptr = ts + 27655 /* "PRIMARY KEY(" */ + var zSep uintptr = ts + 27665 /* "PRIMARY KEY(" */ *(*uintptr)(unsafe.Pointer(bp + 56 /* pXList */)) = uintptr(0) // PRAGMA index_list = (pIter->zTbl) *(*uintptr)(unsafe.Pointer(bp + 60 /* pXInfo */)) = uintptr(0) // PRAGMA index_xinfo = (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+56 /* &pXList */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+26807 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) + Xsqlite3_mprintf(tls, ts+26817 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) for ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 56 /* pXList */)))) { var zOrig uintptr = Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 56 /* pXList */)), 3) - if (zOrig != 0) && (libc.Xstrcmp(tls, zOrig, ts+14667 /* "pk" */) == 0) { + if (zOrig != 0) && (libc.Xstrcmp(tls, zOrig, ts+14677 /* "pk" */) == 0) { var zIdx uintptr = Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 56 /* pXList */)), 1) if zIdx != 0 { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+60 /* &pXInfo */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+26835 /* "PRAGMA main.inde..." */, libc.VaList(bp+8, zIdx))) + Xsqlite3_mprintf(tls, ts+26845 /* "PRAGMA main.inde..." */, libc.VaList(bp+8, zIdx))) } break } @@ -161469,15 +162125,15 @@ func rbuWithoutRowidPK(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sql var zCol uintptr = Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 60 /* pXInfo */)), 2) var zDesc uintptr if Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 60 /* pXInfo */)), 3) != 0 { - zDesc = ts + 27075 /* " DESC" */ + zDesc = ts + 27085 /* " DESC" */ } else { - zDesc = ts + 755 /* "" */ + zDesc = ts + 765 /* "" */ } - z = rbuMPrintf(tls, p, ts+27668 /* "%z%s\"%w\"%s" */, libc.VaList(bp+16, z, zSep, zCol, zDesc)) - zSep = ts + 13324 /* ", " */ + z = rbuMPrintf(tls, p, ts+27678 /* "%z%s\"%w\"%s" */, libc.VaList(bp+16, z, zSep, zCol, zDesc)) + zSep = ts + 13334 /* ", " */ } } - z = rbuMPrintf(tls, p, ts+27679 /* "%z)" */, libc.VaList(bp+48, z)) + z = rbuMPrintf(tls, p, ts+27689 /* "%z)" */, libc.VaList(bp+48, z)) rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp + 60 /* pXInfo */))) } return z @@ -161509,7 +162165,7 @@ func rbuCreateImposterTable2(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlit *(*uintptr)(unsafe.Pointer(bp + 168 /* pQuery */)) = uintptr(0) // SELECT name ... WHERE rootpage = $tnum var zIdx uintptr = uintptr(0) // Name of PK index *(*uintptr)(unsafe.Pointer(bp + 172 /* pXInfo */)) = uintptr(0) // PRAGMA main.index_xinfo = $zIdx - var zComma uintptr = ts + 755 /* "" */ + var zComma uintptr = ts + 765 /* "" */ var zCols uintptr = uintptr(0) // Used to build up list of table cols var zPk uintptr = uintptr(0) // Used to build up table PK declaration @@ -161517,7 +162173,7 @@ func rbuCreateImposterTable2(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlit // This is needed for the argument to "PRAGMA index_xinfo". Set // zIdx to point to a nul-terminated string containing this name. (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+168 /* &pQuery */, (p + 36 /* &.zErrmsg */), - ts+27683 /* "SELECT name FROM..." */) + ts+27693 /* "SELECT name FROM..." */) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { Xsqlite3_bind_int(tls, *(*uintptr)(unsafe.Pointer(bp + 168 /* pQuery */)), 1, tnum) if SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 168 /* pQuery */))) { @@ -161526,7 +162182,7 @@ func rbuCreateImposterTable2(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlit } if zIdx != 0 { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+172 /* &pXInfo */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+26835 /* "PRAGMA main.inde..." */, libc.VaList(bp, zIdx))) + Xsqlite3_mprintf(tls, ts+26845 /* "PRAGMA main.inde..." */, libc.VaList(bp, zIdx))) } rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp + 168 /* pQuery */))) @@ -161536,25 +162192,25 @@ func rbuCreateImposterTable2(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlit var iCid int32 = Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 172 /* pXInfo */)), 1) var bDesc int32 = Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 172 /* pXInfo */)), 3) var zCollate uintptr = Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 172 /* pXInfo */)), 4) - zCols = rbuMPrintf(tls, p, ts+27733 /* "%z%sc%d %s COLLA..." */, libc.VaList(bp+8, zCols, zComma, + zCols = rbuMPrintf(tls, p, ts+27743 /* "%z%sc%d %s COLLA..." */, libc.VaList(bp+8, zCols, zComma, iCid, *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblType + uintptr(iCid)*4)), zCollate)) - zPk = rbuMPrintf(tls, p, ts+27755 /* "%z%sc%d%s" */, libc.VaList(bp+48, zPk, zComma, iCid, func() uintptr { + zPk = rbuMPrintf(tls, p, ts+27765 /* "%z%sc%d%s" */, libc.VaList(bp+48, zPk, zComma, iCid, func() uintptr { if bDesc != 0 { - return ts + 27075 /* " DESC" */ + return ts + 27085 /* " DESC" */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }())) - zComma = ts + 13324 /* ", " */ + zComma = ts + 13334 /* ", " */ } } - zCols = rbuMPrintf(tls, p, ts+27765 /* "%z, id INTEGER" */, libc.VaList(bp+80, zCols)) + zCols = rbuMPrintf(tls, p, ts+27775 /* "%z, id INTEGER" */, libc.VaList(bp+80, zCols)) rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp + 172 /* pXInfo */))) - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+88, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5458 /* "main" */, 1, tnum)) + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+88, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5468 /* "main" */, 1, tnum)) rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, - ts+27780, /* "CREATE TABLE rbu..." */ + ts+27790, /* "CREATE TABLE rbu..." */ libc.VaList(bp+120, zCols, zPk)) - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+136, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5458 /* "main" */, 0, 0)) + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+136, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5468 /* "main" */, 0, 0)) } } @@ -161582,52 +162238,52 @@ func rbuCreateImposterTable(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType != RBU_PK_VTAB) { var tnum int32 = (*RbuObjIter)(unsafe.Pointer(pIter)).FiTnum - var zComma uintptr = ts + 755 /* "" */ + var zComma uintptr = ts + 765 /* "" */ var zSql uintptr = uintptr(0) var iCol int32 - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5458 /* "main" */, 0, 1)) + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5468 /* "main" */, 0, 1)) for iCol = 0; ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (iCol < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol); iCol++ { - var zPk uintptr = ts + 755 /* "" */ + var zPk uintptr = ts + 765 /* "" */ var zCol uintptr = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(iCol)*4)) *(*uintptr)(unsafe.Pointer(bp + 192 /* zColl */)) = uintptr(0) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_table_column_metadata(tls, - (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5458 /* "main" */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl, zCol, uintptr(0), bp+192 /* &zColl */, uintptr(0), uintptr(0), uintptr(0)) + (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5468 /* "main" */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl, zCol, uintptr(0), bp+192 /* &zColl */, uintptr(0), uintptr(0), uintptr(0)) if ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_IPK) && (*(*U8)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FabTblPk + uintptr(iCol))) != 0) { // If the target table column is an "INTEGER PRIMARY KEY", add // "PRIMARY KEY" to the imposter table column declaration. - zPk = ts + 27842 /* "PRIMARY KEY " */ + zPk = ts + 27852 /* "PRIMARY KEY " */ } - zSql = rbuMPrintf(tls, p, ts+27855, /* "%z%s\"%w\" %s %sCO..." */ + zSql = rbuMPrintf(tls, p, ts+27865, /* "%z%s\"%w\" %s %sCO..." */ libc.VaList(bp+32, zSql, zComma, zCol, *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblType + uintptr(iCol)*4)), zPk, *(*uintptr)(unsafe.Pointer(bp + 192 /* zColl */)), func() uintptr { if *(*U8)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FabNotNull + uintptr(iCol))) != 0 { - return ts + 27882 /* " NOT NULL" */ + return ts + 27892 /* " NOT NULL" */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }())) - zComma = ts + 13324 /* ", " */ + zComma = ts + 13334 /* ", " */ } if (*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_WITHOUT_ROWID { var zPk uintptr = rbuWithoutRowidPK(tls, p, pIter) if zPk != 0 { - zSql = rbuMPrintf(tls, p, ts+27892 /* "%z, %z" */, libc.VaList(bp+88, zSql, zPk)) + zSql = rbuMPrintf(tls, p, ts+27902 /* "%z, %z" */, libc.VaList(bp+88, zSql, zPk)) } } - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+104, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5458 /* "main" */, 1, tnum)) - rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+27899, /* "CREATE TABLE \"rb..." */ + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+104, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5468 /* "main" */, 1, tnum)) + rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+27909, /* "CREATE TABLE \"rb..." */ libc.VaList(bp+136, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl, zSql, func() uintptr { if (*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_WITHOUT_ROWID { - return ts + 27931 /* " WITHOUT ROWID" */ + return ts + 27941 /* " WITHOUT ROWID" */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }())) - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+160, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5458 /* "main" */, 0, 0)) + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+160, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5468 /* "main" */, 0, 0)) } } @@ -161650,7 +162306,7 @@ func rbuObjIterPrepareTmpInsert(tls *libc.TLS, p uintptr, pIter uintptr, zCollis (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, (pIter + 88 /* &.pTmpInsert */), (p + 36 /* &.zErrmsg */), Xsqlite3_mprintf(tls, - ts+27946, /* "INSERT INTO %s.'..." */ + ts+27956, /* "INSERT INTO %s.'..." */ libc.VaList(bp, p+24 /* &.zStateDb */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, zCollist, zRbuRowid, zBind))) } } @@ -161687,7 +162343,7 @@ func rbuObjIterGetIndexWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { if *(*int32)(unsafe.Pointer(bp + 4 /* rc */)) == SQLITE_OK { *(*int32)(unsafe.Pointer(bp + 4 /* rc */)) = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp /* &pStmt */, (p + 36 /* &.zErrmsg */), - ts+28003 /* "SELECT trim(sql)..." */) + ts+28013 /* "SELECT trim(sql)..." */) } if *(*int32)(unsafe.Pointer(bp + 4 /* rc */)) == SQLITE_OK { var rc2 int32 @@ -161797,7 +162453,7 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 var zLimit uintptr = uintptr(0) if nOffset != 0 { - zLimit = Xsqlite3_mprintf(tls, ts+28069 /* " LIMIT -1 OFFSET..." */, libc.VaList(bp, nOffset)) + zLimit = Xsqlite3_mprintf(tls, ts+28079 /* " LIMIT -1 OFFSET..." */, libc.VaList(bp, nOffset)) if !(zLimit != 0) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_NOMEM } @@ -161818,26 +162474,26 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 zBind = rbuObjIterGetBindlist(tls, p, *(*int32)(unsafe.Pointer(bp + 612 /* nBind */))) // Create the imposter table used to write to this index. - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+8, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5458 /* "main" */, 0, 1)) - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+40, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5458 /* "main" */, 1, tnum)) + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+8, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5468 /* "main" */, 0, 1)) + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+40, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5468 /* "main" */, 1, tnum)) rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, - ts+28089, /* "CREATE TABLE \"rb..." */ + ts+28099, /* "CREATE TABLE \"rb..." */ libc.VaList(bp+72, zTbl, *(*uintptr)(unsafe.Pointer(bp + 600 /* zImposterCols */)), *(*uintptr)(unsafe.Pointer(bp + 604 /* zImposterPK */)))) - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+96, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5458 /* "main" */, 0, 0)) + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+96, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5468 /* "main" */, 0, 0)) // Create the statement to insert index entries (*RbuObjIter)(unsafe.Pointer(pIter)).FnCol = *(*int32)(unsafe.Pointer(bp + 612 /* nBind */)) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (pIter + 80 /* &.pInsert */), (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+28154 /* "INSERT INTO \"rbu..." */, libc.VaList(bp+128, zTbl, zBind))) + Xsqlite3_mprintf(tls, ts+28164 /* "INSERT INTO \"rbu..." */, libc.VaList(bp+128, zTbl, zBind))) } // And to delete index entries if ((libc.Bool32((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0))) == 0) && ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (pIter + 84 /* &.pDelete */), (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+28190 /* "DELETE FROM \"rbu..." */, libc.VaList(bp+144, zTbl, *(*uintptr)(unsafe.Pointer(bp + 608 /* zWhere */))))) + Xsqlite3_mprintf(tls, ts+28200 /* "DELETE FROM \"rbu..." */, libc.VaList(bp+144, zTbl, *(*uintptr)(unsafe.Pointer(bp + 608 /* zWhere */))))) } // Create the SELECT statement to read keys in sorted order @@ -161854,7 +162510,7 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 } zSql = Xsqlite3_mprintf(tls, - ts+28224, /* "SELECT %s, 0 AS ..." */ + ts+28234, /* "SELECT %s, 0 AS ..." */ libc.VaList(bp+160, zCollist, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, zPart, @@ -161862,32 +162518,32 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 if zStart != 0 { return func() uintptr { if zPart != 0 { - return ts + 28285 /* "AND" */ + return ts + 28295 /* "AND" */ } - return ts + 28289 /* "WHERE" */ + return ts + 28299 /* "WHERE" */ }() } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), zStart, zCollist, zLimit)) Xsqlite3_free(tls, zStart) } else if ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_EXTERNAL) || ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_NONE) { zSql = Xsqlite3_mprintf(tls, - ts+28295, /* "SELECT %s, rbu_c..." */ + ts+28305, /* "SELECT %s, rbu_c..." */ libc.VaList(bp+216, zCollist, p+24 /* &.zStateDb */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, zPart, zCollist, zLimit)) } else { zSql = Xsqlite3_mprintf(tls, - ts+28356, /* "SELECT %s, rbu_c..." */ + ts+28366, /* "SELECT %s, rbu_c..." */ libc.VaList(bp+264, zCollist, p+24 /* &.zStateDb */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, zPart, zCollist, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, zPart, func() uintptr { if zPart != 0 { - return ts + 28285 /* "AND" */ + return ts + 28295 /* "AND" */ } - return ts + 28289 /* "WHERE" */ + return ts + 28299 /* "WHERE" */ }(), zCollist, zLimit)) } @@ -161912,8 +162568,8 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 var zBindings uintptr = rbuObjIterGetBindlist(tls, p, ((*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol + bRbuRowid)) var zWhere uintptr = rbuObjIterGetWhere(tls, p, pIter) - var zOldlist uintptr = rbuObjIterGetOldlist(tls, p, pIter, ts+5467 /* "old" */) - var zNewlist uintptr = rbuObjIterGetOldlist(tls, p, pIter, ts+5463 /* "new" */) + var zOldlist uintptr = rbuObjIterGetOldlist(tls, p, pIter, ts+5477 /* "old" */) + var zNewlist uintptr = rbuObjIterGetOldlist(tls, p, pIter, ts+5473 /* "new" */) zCollist = rbuObjIterGetCollist(tls, p, pIter) (*RbuObjIter)(unsafe.Pointer(pIter)).FnCol = (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol @@ -161923,21 +162579,21 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 rbuCreateImposterTable2(tls, p, pIter) zWrite = func() uintptr { if (*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_VTAB { - return ts + 755 /* "" */ + return ts + 765 /* "" */ } - return ts + 28515 /* "rbu_imp_" */ + return ts + 28525 /* "rbu_imp_" */ }() // Create the INSERT statement to write to the target PK b-tree if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (pIter + 80 /* &.pInsert */), pz, Xsqlite3_mprintf(tls, - ts+28524, /* "INSERT INTO \"%s%..." */ + ts+28534, /* "INSERT INTO \"%s%..." */ libc.VaList(bp+344, zWrite, zTbl, zCollist, func() uintptr { if bRbuRowid != 0 { - return ts + 28560 /* ", _rowid_" */ + return ts + 28570 /* ", _rowid_" */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), zBindings))) } @@ -161947,28 +162603,28 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 if ((libc.Bool32((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0))) == 0) && ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (pIter + 84 /* &.pDelete */), pz, Xsqlite3_mprintf(tls, - ts+28570 /* "DELETE FROM \"%s%..." */, libc.VaList(bp+384, zWrite, zTbl, zWhere))) + ts+28580 /* "DELETE FROM \"%s%..." */, libc.VaList(bp+384, zWrite, zTbl, zWhere))) } if ((libc.Bool32((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0))) == 0) && ((*RbuObjIter)(unsafe.Pointer(pIter)).FabIndexed != 0) { - var zRbuRowid uintptr = ts + 755 /* "" */ + var zRbuRowid uintptr = ts + 765 /* "" */ if ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_EXTERNAL) || ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_NONE) { - zRbuRowid = ts + 28598 /* ", rbu_rowid" */ + zRbuRowid = ts + 28608 /* ", rbu_rowid" */ } // Create the rbu_tmp_xxx table and the triggers to populate it. rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, - ts+28610 /* "CREATE TABLE IF ..." */, libc.VaList(bp+408, p+24 /* &.zStateDb */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, func() uintptr { + ts+28620 /* "CREATE TABLE IF ..." */, libc.VaList(bp+408, p+24 /* &.zStateDb */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, func() uintptr { if (*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_EXTERNAL { - return ts + 28686 /* ", 0 AS rbu_rowid" */ + return ts + 28696 /* ", 0 AS rbu_rowid" */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl)) rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, - ts+28703, /* "CREATE TEMP TRIG..." */ + ts+28713, /* "CREATE TEMP TRIG..." */ libc.VaList(bp+440, zWrite, zTbl, zOldlist, zWrite, zTbl, zOldlist, zWrite, zTbl, zNewlist)) @@ -161976,7 +162632,7 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 if ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_EXTERNAL) || ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_NONE) { rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, - ts+29002, /* "CREATE TEMP TRIG..." */ + ts+29012, /* "CREATE TEMP TRIG..." */ libc.VaList(bp+512, zWrite, zTbl, zNewlist)) } @@ -161985,14 +162641,14 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 // Create the SELECT statement to read keys from data_xxx if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - var zRbuRowid uintptr = ts + 755 /* "" */ + var zRbuRowid uintptr = ts + 765 /* "" */ var zStart uintptr = uintptr(0) var zOrder uintptr = uintptr(0) if bRbuRowid != 0 { if (*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0) { - zRbuRowid = ts + 29101 /* ",_rowid_ " */ + zRbuRowid = ts + 29111 /* ",_rowid_ " */ } else { - zRbuRowid = ts + 29111 /* ",rbu_rowid" */ + zRbuRowid = ts + 29121 /* ",rbu_rowid" */ } } @@ -162005,35 +162661,35 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 } } if bRbuRowid != 0 { - zOrder = rbuMPrintf(tls, p, ts+27158 /* "_rowid_" */, 0) + zOrder = rbuMPrintf(tls, p, ts+27168 /* "_rowid_" */, 0) } else { - zOrder = rbuObjIterGetPkList(tls, p, pIter, ts+755 /* "" */, ts+13324 /* ", " */, ts+755 /* "" */) + zOrder = rbuObjIterGetPkList(tls, p, pIter, ts+765 /* "" */, ts+13334 /* ", " */, ts+765 /* "" */) } } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, (pIter + 76 /* &.pSelect */), pz, Xsqlite3_mprintf(tls, - ts+29122, /* "SELECT %s,%s rbu..." */ + ts+29132, /* "SELECT %s,%s rbu..." */ libc.VaList(bp+536, zCollist, func() uintptr { if (*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0) { - return ts + 29170 /* "0 AS " */ + return ts + 29180 /* "0 AS " */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), zRbuRowid, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, func() uintptr { if zStart != 0 { return zStart } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), func() uintptr { if zOrder != 0 { - return ts + 18211 /* "ORDER BY" */ + return ts + 18221 /* "ORDER BY" */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), zOrder, zLimit))) } @@ -162108,12 +162764,12 @@ func rbuGetUpdateStmt(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr, pp (*RbuObjIter)(unsafe.Pointer(pIter)).FpRbuUpdate = pUp if zSet != 0 { - var zPrefix uintptr = ts + 755 /* "" */ + var zPrefix uintptr = ts + 765 /* "" */ if (*RbuObjIter)(unsafe.Pointer(pIter)).FeType != RBU_PK_VTAB { - zPrefix = ts + 28515 /* "rbu_imp_" */ + zPrefix = ts + 28525 /* "rbu_imp_" */ } - zUpdate = Xsqlite3_mprintf(tls, ts+29176, /* "UPDATE \"%s%w\" SE..." */ + zUpdate = Xsqlite3_mprintf(tls, ts+29186, /* "UPDATE \"%s%w\" SE..." */ libc.VaList(bp, zPrefix, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl, zSet, zWhere)) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (pUp + 4 /* &.pUpdate */), (p + 36 /* &.zErrmsg */), zUpdate) @@ -162140,7 +162796,7 @@ func rbuOpenDbhandle(tls *libc.TLS, p uintptr, zName uintptr, bUseVfs int32) uin return uintptr(0) }()) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc != 0 { - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* db */))))) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* db */))))) Xsqlite3_close(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* db */))) *(*uintptr)(unsafe.Pointer(bp + 8 /* db */)) = uintptr(0) } @@ -162181,7 +162837,7 @@ func rbuLoadState(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:202752:17: */ } *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp+8 /* &pStmt */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+29206 /* "SELECT k, v FROM..." */, libc.VaList(bp, p+24 /* &.zStateDb */))) + Xsqlite3_mprintf(tls, ts+29216 /* "SELECT k, v FROM..." */, libc.VaList(bp, p+24 /* &.zStateDb */))) for (*(*int32)(unsafe.Pointer(bp + 12 /* rc */)) == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* pStmt */)))) { switch Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* pStmt */)), 0) { case RBU_STATE_STAGE: @@ -162253,31 +162909,31 @@ func rbuOpenDatabase(tls *libc.TLS, p uintptr, pbRetry uintptr) { /* sqlite3.c:2 (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu = rbuOpenDbhandle(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FzRbu, 1) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0)) { - Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+5458 /* "main" */, SQLITE_FCNTL_RBUCNT, p) + Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+5468 /* "main" */, SQLITE_FCNTL_RBUCNT, p) if (*Sqlite3rbu)(unsafe.Pointer(p)).FzState == uintptr(0) { - var zFile uintptr = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+5458 /* "main" */) - (*Sqlite3rbu)(unsafe.Pointer(p)).FzState = rbuMPrintf(tls, p, ts+29236 /* "file://%s-vacuum..." */, libc.VaList(bp, zFile, zFile)) + var zFile uintptr = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+5468 /* "main" */) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzState = rbuMPrintf(tls, p, ts+29246 /* "file://%s-vacuum..." */, libc.VaList(bp, zFile, zFile)) } } // If using separate RBU and state databases, attach the state database to // the RBU db handle now. if (*Sqlite3rbu)(unsafe.Pointer(p)).FzState != 0 { - rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+29263 /* "ATTACH %Q AS sta..." */, libc.VaList(bp+16, (*Sqlite3rbu)(unsafe.Pointer(p)).FzState)) - libc.Xmemcpy(tls, p+24 /* &.zStateDb */, ts+2413 /* "stat" */, uint32(4)) + rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+29273 /* "ATTACH %Q AS sta..." */, libc.VaList(bp+16, (*Sqlite3rbu)(unsafe.Pointer(p)).FzState)) + libc.Xmemcpy(tls, p+24 /* &.zStateDb */, ts+2423 /* "stat" */, uint32(4)) } else { - libc.Xmemcpy(tls, p+24 /* &.zStateDb */, ts+5458 /* "main" */, uint32(4)) + libc.Xmemcpy(tls, p+24 /* &.zStateDb */, ts+5468 /* "main" */, uint32(4)) } // If it has not already been created, create the rbu_state table - rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+29281 /* "CREATE TABLE IF ..." */, libc.VaList(bp+24, p+24 /* &.zStateDb */)) + rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+29291 /* "CREATE TABLE IF ..." */, libc.VaList(bp+24, p+24 /* &.zStateDb */)) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0)) { var bOpen int32 = 0 var rc int32 (*Sqlite3rbu)(unsafe.Pointer(p)).FnRbu = 0 (*Sqlite3rbu)(unsafe.Pointer(p)).FpRbuFd = uintptr(0) - rc = Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+5458 /* "main" */, SQLITE_FCNTL_RBUCNT, p) + rc = Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+5468 /* "main" */, SQLITE_FCNTL_RBUCNT, p) if rc != SQLITE_NOTFOUND { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = rc } @@ -162310,11 +162966,11 @@ func rbuOpenDatabase(tls *libc.TLS, p uintptr, pbRetry uintptr) { /* sqlite3.c:2 return } (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+29347 /* "cannot vacuum wa..." */, 0) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+29357 /* "cannot vacuum wa..." */, 0) } else { var zTarget uintptr var zExtra uintptr = uintptr(0) - if (libc.Xstrlen(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FzRbu) >= Size_t(5)) && (0 == libc.Xmemcmp(tls, ts+22479 /* "file:" */, (*Sqlite3rbu)(unsafe.Pointer(p)).FzRbu, uint32(5))) { + if (libc.Xstrlen(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FzRbu) >= Size_t(5)) && (0 == libc.Xmemcmp(tls, ts+22489 /* "file:" */, (*Sqlite3rbu)(unsafe.Pointer(p)).FzRbu, uint32(5))) { zExtra = ((*Sqlite3rbu)(unsafe.Pointer(p)).FzRbu + 5) for *(*int8)(unsafe.Pointer(zExtra)) != 0 { if int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zExtra, 1)))) == '?' { @@ -162326,16 +162982,16 @@ func rbuOpenDatabase(tls *libc.TLS, p uintptr, pbRetry uintptr) { /* sqlite3.c:2 } } - zTarget = Xsqlite3_mprintf(tls, ts+29379, /* "file:%s-vactmp?r..." */ - libc.VaList(bp+32, Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+5458 /* "main" */), + zTarget = Xsqlite3_mprintf(tls, ts+29389, /* "file:%s-vactmp?r..." */ + libc.VaList(bp+32, Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+5468 /* "main" */), func() uintptr { if zExtra == uintptr(0) { - return ts + 755 /* "" */ + return ts + 765 /* "" */ } - return ts + 29411 /* "&" */ + return ts + 29421 /* "&" */ }(), func() uintptr { if zExtra == uintptr(0) { - return ts + 755 /* "" */ + return ts + 765 /* "" */ } return zExtra }())) @@ -162351,40 +163007,40 @@ func rbuOpenDatabase(tls *libc.TLS, p uintptr, pbRetry uintptr) { /* sqlite3.c:2 if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_create_function(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, - ts+29413 /* "rbu_tmp_insert" */, -1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { + ts+29423 /* "rbu_tmp_insert" */, -1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{rbuTmpInsertFunc})), uintptr(0), uintptr(0)) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_create_function(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, - ts+29428 /* "rbu_fossil_delta" */, 2, SQLITE_UTF8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + ts+29438 /* "rbu_fossil_delta" */, 2, SQLITE_UTF8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{rbuFossilDeltaFunc})), uintptr(0), uintptr(0)) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_create_function(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, - ts+29445 /* "rbu_target_name" */, -1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { + ts+29455 /* "rbu_target_name" */, -1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{rbuTargetNameFunc})), uintptr(0), uintptr(0)) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5458 /* "main" */, SQLITE_FCNTL_RBU, p) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5468 /* "main" */, SQLITE_FCNTL_RBU, p) } - rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+29461 /* "SELECT * FROM sq..." */, 0) + rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+29471 /* "SELECT * FROM sq..." */, 0) // Mark the database file just opened as an RBU target database. If // this call returns SQLITE_NOTFOUND, then the RBU vfs is not in use. // This is an error. if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5458 /* "main" */, SQLITE_FCNTL_RBU, p) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5468 /* "main" */, SQLITE_FCNTL_RBU, p) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_NOTFOUND { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+29489 /* "rbu vfs not foun..." */, 0) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+29499 /* "rbu vfs not foun..." */, 0) } } @@ -162423,9 +163079,11 @@ func rbuShmChecksum(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:203029:12: */ var pDb uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal // var ptr uintptr at bp, 4 - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods + 52 /* &.xShmMap */))))(tls, pDb, 0, (32 * 1024), 0, bp /* &ptr */) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxShmMap})).f(tls, pDb, 0, (32 * 1024), 0, bp /* &ptr */) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - iRet = ((I64(*(*U32)(unsafe.Pointer(libc.AtomicLoadPUintptr(bp /* ptr */) + 10*4))) << 32) + I64(*(*U32)(unsafe.Pointer(libc.AtomicLoadPUintptr(bp /* ptr */) + 11*4)))) + iRet = ((I64(*(*U32)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* ptr */)) + 10*4))) << 32) + I64(*(*U32)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* ptr */)) + 11*4)))) } } return iRet @@ -162453,7 +163111,7 @@ func rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c if pState == uintptr(0) { (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage = 0 if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+29461 /* "SELECT * FROM sq..." */, uintptr(0), uintptr(0), uintptr(0)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+29471 /* "SELECT * FROM sq..." */, uintptr(0), uintptr(0), uintptr(0)) } } @@ -162487,7 +163145,7 @@ func rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { var rc2 int32 (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage = RBU_STAGE_CAPTURE - rc2 = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+29507 /* "PRAGMA main.wal_..." */, uintptr(0), uintptr(0), uintptr(0)) + rc2 = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+29517 /* "PRAGMA main.wal_..." */, uintptr(0), uintptr(0), uintptr(0)) if rc2 != SQLITE_INTERNAL { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = rc2 } @@ -162514,7 +163172,9 @@ func rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c var pDb uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal var pWal uintptr = (*Rbu_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpWalFd)).FpReal - nSectorSize = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods + 44 /* &.xSectorSize */))))(tls, pDb) + nSectorSize = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxSectorSize})).f(tls, pDb) if nSectorSize > (*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz { (*Sqlite3rbu)(unsafe.Pointer(p)).FnPagePerSector = (nSectorSize / (*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz) } else { @@ -162525,7 +163185,9 @@ func rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c // directory in which the target database and the wal file reside, in // case it has not been synced since the rename() call in // rbuMoveOalFile(). - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pWal)).FpMethods + 20 /* &.xSync */))))(tls, pWal, SQLITE_SYNC_NORMAL) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pWal)).FpMethods)).FxSync})).f(tls, pWal, SQLITE_SYNC_NORMAL) } } } @@ -162586,22 +163248,30 @@ func rbuCheckpointFrame(tls *libc.TLS, p uintptr, pFrame uintptr) { /* sqlite3.c var iOff I64 iOff = ((((I64((*RbuFrame)(unsafe.Pointer(pFrame)).FiWalFrame - U32(1))) * (I64((*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz + 24))) + int64(32)) + int64(24)) - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pWal)).FpMethods + 8 /* &.xRead */))))(tls, pWal, (*Sqlite3rbu)(unsafe.Pointer(p)).FaBuf, (*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz, iOff) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pWal)).FpMethods)).FxRead})).f(tls, pWal, (*Sqlite3rbu)(unsafe.Pointer(p)).FaBuf, (*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz, iOff) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc != 0 { return } iOff = ((I64((*RbuFrame)(unsafe.Pointer(pFrame)).FiDbPage - U32(1))) * I64((*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz)) - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods + 12 /* &.xWrite */))))(tls, pDb, (*Sqlite3rbu)(unsafe.Pointer(p)).FaBuf, (*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz, iOff) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxWrite})).f(tls, pDb, (*Sqlite3rbu)(unsafe.Pointer(p)).FaBuf, (*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz, iOff) } // Take an EXCLUSIVE lock on the database file. func rbuLockDatabase(tls *libc.TLS, p uintptr) { /* sqlite3.c:203202:13: */ var pReal uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pReal)).FpMethods + 28 /* &.xLock */))))(tls, pReal, SQLITE_LOCK_SHARED) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pReal)).FpMethods)).FxLock})).f(tls, pReal, SQLITE_LOCK_SHARED) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pReal)).FpMethods + 28 /* &.xLock */))))(tls, pReal, SQLITE_LOCK_EXCLUSIVE) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pReal)).FpMethods)).FxLock})).f(tls, pReal, SQLITE_LOCK_EXCLUSIVE) } } @@ -162614,16 +163284,16 @@ func rbuMoveOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:203242:13: */ bp := tls.Alloc(16) defer tls.Free(16) - var zBase uintptr = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5458 /* "main" */) + var zBase uintptr = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+5468 /* "main" */) var zMove uintptr = zBase var zOal uintptr var zWal uintptr if (*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0) { - zMove = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+5458 /* "main" */) + zMove = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+5468 /* "main" */) } - zOal = Xsqlite3_mprintf(tls, ts+29542 /* "%s-oal" */, libc.VaList(bp, zMove)) - zWal = Xsqlite3_mprintf(tls, ts+29549 /* "%s-wal" */, libc.VaList(bp+8, zMove)) + zOal = Xsqlite3_mprintf(tls, ts+29552 /* "%s-oal" */, libc.VaList(bp, zMove)) + zWal = Xsqlite3_mprintf(tls, ts+29559 /* "%s-wal" */, libc.VaList(bp+8, zMove)) if (zWal == uintptr(0)) || (zOal == uintptr(0)) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_NOMEM @@ -162763,7 +163433,7 @@ func rbuStepOneOp(tls *libc.TLS, p uintptr, eType int32) { /* sqlite3.c:203389:1 ((*RbuObjIter)(unsafe.Pointer(pIter)).FzIdx == uintptr(0))) && ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_IPK)) && (*(*U8)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FabTblPk + uintptr(i))) != 0)) && (Xsqlite3_column_type(tls, (*RbuObjIter)(unsafe.Pointer(pIter)).FpSelect, i) == SQLITE_NULL) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_MISMATCH - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+22117 /* "datatype mismatc..." */, 0) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+22127 /* "datatype mismatc..." */, 0) return } @@ -162881,7 +163551,7 @@ func rbuIncrSchemaCookie(tls *libc.TLS, p uintptr) { /* sqlite3.c:203537:13: */ // var pStmt uintptr at bp+8, 4 (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareAndCollectError(tls, dbread, bp+8 /* &pStmt */, (p + 36 /* &.zErrmsg */), - ts+29556 /* "PRAGMA schema_ve..." */) + ts+29566 /* "PRAGMA schema_ve..." */) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { // Coverage: it may be that this sqlite3_step() cannot fail. There // is already a transaction open, so the prepared statement cannot @@ -162894,7 +163564,7 @@ func rbuIncrSchemaCookie(tls *libc.TLS, p uintptr) { /* sqlite3.c:203537:13: */ rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp + 8 /* pStmt */))) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+29578 /* "PRAGMA schema_ve..." */, libc.VaList(bp, (iCookie+1))) + rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+29588 /* "PRAGMA schema_ve..." */, libc.VaList(bp, (iCookie+1))) } } } @@ -162919,7 +163589,7 @@ func rbuSaveState(tls *libc.TLS, p uintptr, eStage int32) { /* sqlite3.c:203568: rc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp+168 /* &pInsert */, (p + 36 /* &.zErrmsg */), Xsqlite3_mprintf(tls, - ts+29605, /* "INSERT OR REPLAC..." */ + ts+29615, /* "INSERT OR REPLAC..." */ libc.VaList(bp, p+24, /* &.zStateDb */ RBU_STATE_STAGE, eStage, RBU_STATE_TBL, (*Sqlite3rbu)(unsafe.Pointer(p)).Fobjiter.FzTbl, @@ -162964,9 +163634,9 @@ func rbuCopyPragma(tls *libc.TLS, p uintptr, zPragma uintptr) { /* sqlite3.c:203 if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { *(*uintptr)(unsafe.Pointer(bp + 24 /* pPragma */)) = uintptr(0) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp+24 /* &pPragma */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+29763 /* "PRAGMA main.%s" */, libc.VaList(bp, zPragma))) + Xsqlite3_mprintf(tls, ts+29773 /* "PRAGMA main.%s" */, libc.VaList(bp, zPragma))) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 24 /* pPragma */)))) { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+29778, /* "PRAGMA main.%s =..." */ + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+29788, /* "PRAGMA main.%s =..." */ libc.VaList(bp+8, zPragma, Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 24 /* pPragma */)), 0))) } rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp + 24 /* pPragma */))) @@ -162983,11 +163653,11 @@ func rbuCreateTargetSchema(tls *libc.TLS, p uintptr) { /* sqlite3.c:203649:13: * *(*uintptr)(unsafe.Pointer(bp /* pSql */)) = uintptr(0) *(*uintptr)(unsafe.Pointer(bp + 4 /* pInsert */)) = uintptr(0) - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+29798 /* "PRAGMA writable_..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+29808 /* "PRAGMA writable_..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp /* &pSql */, (p + 36 /* &.zErrmsg */), - ts+29823 /* "SELECT sql FROM ..." */) + ts+29833 /* "SELECT sql FROM ..." */) } for ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp /* pSql */))) == SQLITE_ROW) { @@ -163001,12 +163671,12 @@ func rbuCreateTargetSchema(tls *libc.TLS, p uintptr) { /* sqlite3.c:203649:13: * if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp /* &pSql */, (p + 36 /* &.zErrmsg */), - ts+29931 /* "SELECT * FROM sq..." */) + ts+29941 /* "SELECT * FROM sq..." */) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+4 /* &pInsert */, (p + 36 /* &.zErrmsg */), - ts+29996 /* "INSERT INTO sqli..." */) + ts+30006 /* "INSERT INTO sqli..." */) } for ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp /* pSql */))) == SQLITE_ROW) { @@ -163018,7 +163688,7 @@ func rbuCreateTargetSchema(tls *libc.TLS, p uintptr) { /* sqlite3.c:203649:13: * (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_reset(tls, *(*uintptr)(unsafe.Pointer(bp + 4 /* pInsert */))) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+30040 /* "PRAGMA writable_..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+30050 /* "PRAGMA writable_..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp /* pSql */))) @@ -163040,8 +163710,8 @@ func Xsqlite3rbu_step(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203701:16: // when this handle was opened, create the target database schema. if (((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0)) && ((*Sqlite3rbu)(unsafe.Pointer(p)).FnProgress == 0)) && ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) { rbuCreateTargetSchema(tls, p) - rbuCopyPragma(tls, p, ts+15723 /* "user_version" */) - rbuCopyPragma(tls, p, ts+14845 /* "application_id" */) + rbuCopyPragma(tls, p, ts+15733 /* "user_version" */) + rbuCopyPragma(tls, p, ts+14855 /* "application_id" */) } for ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl != 0) { @@ -163052,7 +163722,7 @@ func Xsqlite3rbu_step(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203701:16: // But the contents can be deleted. if ((libc.Bool32((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0))) == 0) && ((*RbuObjIter)(unsafe.Pointer(pIter)).FabIndexed != 0) { rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, - ts+30065 /* "DELETE FROM %s.'..." */, libc.VaList(bp, p+24 /* &.zStateDb */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl)) + ts+30075 /* "DELETE FROM %s.'..." */, libc.VaList(bp, p+24 /* &.zStateDb */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl)) } } else { rbuObjIterPrepareAll(tls, p, pIter, 0) @@ -163078,10 +163748,10 @@ func Xsqlite3rbu_step(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203701:16: rbuSaveState(tls, p, RBU_STAGE_MOVE) rbuIncrSchemaCookie(tls, p) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+13228 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+13238 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+13228 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+13238 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage = RBU_STAGE_MOVE } @@ -163108,15 +163778,19 @@ func Xsqlite3rbu_step(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203701:16: var pDb uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal // Sync the db file - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods + 20 /* &.xSync */))))(tls, pDb, SQLITE_SYNC_NORMAL) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxSync})).f(tls, pDb, SQLITE_SYNC_NORMAL) // Update nBackfill if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { // var ptr uintptr at bp+16, 4 - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods + 52 /* &.xShmMap */))))(tls, pDb, 0, (32 * 1024), 0, bp+16 /* &ptr */) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxShmMap})).f(tls, pDb, 0, (32 * 1024), 0, bp+16 /* &ptr */) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - *(*U32)(unsafe.Pointer((libc.AtomicLoadPUintptr(bp + 16 /* ptr */)) + 24*4)) = (*Sqlite3rbu)(unsafe.Pointer(p)).FiMaxFrame + *(*U32)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 16 /* ptr */))) + 24*4)) = (*Sqlite3rbu)(unsafe.Pointer(p)).FiMaxFrame } } @@ -163198,7 +163872,7 @@ func rbuSetupOal(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c:203846 if (rc == SQLITE_OK) && !(int32((*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl) != 0) { rc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+30093 /* "rbu_state mismat..." */, 0) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+30103 /* "rbu_state mismat..." */, 0) } if rc == SQLITE_OK { @@ -163217,11 +163891,13 @@ func rbuDeleteOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:203879:13: */ bp := tls.Alloc(8) defer tls.Free(8) - var zOal uintptr = rbuMPrintf(tls, p, ts+29542 /* "%s-oal" */, libc.VaList(bp, (*Sqlite3rbu)(unsafe.Pointer(p)).FzTarget)) + var zOal uintptr = rbuMPrintf(tls, p, ts+29552 /* "%s-oal" */, libc.VaList(bp, (*Sqlite3rbu)(unsafe.Pointer(p)).FzTarget)) if zOal != 0 { var pVfs uintptr = Xsqlite3_vfs_find(tls, uintptr(0)) - (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pVfs + 28 /* &.xDelete */))))(tls, pVfs, zOal, 0) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDelete})).f(tls, pVfs, zOal, 0) Xsqlite3_free(tls, zOal) } } @@ -163239,7 +163915,7 @@ func rbuCreateVfs(tls *libc.TLS, p uintptr) { /* sqlite3.c:203895:13: */ // var zRnd [64]int8 at bp+12, 64 Xsqlite3_randomness(tls, int32(unsafe.Sizeof(int32(0))), bp+8 /* &rnd */) - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([64]int8{})), bp+12 /* &zRnd[0] */, ts+30118 /* "rbu_vfs_%d" */, libc.VaList(bp, *(*int32)(unsafe.Pointer(bp + 8 /* rnd */)))) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([64]int8{})), bp+12 /* &zRnd[0] */, ts+30128 /* "rbu_vfs_%d" */, libc.VaList(bp, *(*int32)(unsafe.Pointer(bp + 8 /* rnd */)))) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3rbu_create_vfs(tls, bp+12 /* &zRnd[0] */, uintptr(0)) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { var pVfs uintptr = Xsqlite3_vfs_find(tls, bp+12 /* &zRnd[0] */) @@ -163278,7 +163954,7 @@ func rbuIndexCntFunc(tls *libc.TLS, pCtx uintptr, nVal int32, apVal uintptr) { / rc = prepareFreeAndCollectError(tls, db, bp+8 /* &pStmt */, bp+12, /* &zErrmsg */ Xsqlite3_mprintf(tls, - ts+30129 /* "SELECT count(*) ..." */, libc.VaList(bp, Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apVal)))))) + ts+30139 /* "SELECT count(*) ..." */, libc.VaList(bp, Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apVal)))))) if rc != SQLITE_OK { Xsqlite3_result_error(tls, pCtx, *(*uintptr)(unsafe.Pointer(bp + 12 /* zErrmsg */)), -1) } else { @@ -163321,7 +163997,7 @@ func rbuInitPhaseOneSteps(tls *libc.TLS, p uintptr) { /* sqlite3.c:203977:13: */ (*Sqlite3rbu)(unsafe.Pointer(p)).FnPhaseOneStep = int64(-1) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_create_function(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, - ts+30201 /* "rbu_index_cnt" */, 1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { + ts+30211 /* "rbu_index_cnt" */, 1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{rbuIndexCntFunc})), uintptr(0), uintptr(0)) @@ -163329,7 +164005,7 @@ func rbuInitPhaseOneSteps(tls *libc.TLS, p uintptr) { /* sqlite3.c:203977:13: */ // occurs, nPhaseOneStep will be left set to -1. if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp /* &pStmt */, (p + 36 /* &.zErrmsg */), - ts+30215 /* "SELECT 1 FROM sq..." */) + ts+30225 /* "SELECT 1 FROM sq..." */) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { if SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp /* pStmt */))) { @@ -163341,7 +164017,7 @@ func rbuInitPhaseOneSteps(tls *libc.TLS, p uintptr) { /* sqlite3.c:203977:13: */ if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (bExists != 0) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp /* &pStmt */, (p + 36 /* &.zErrmsg */), - ts+30272 /* "SELECT sum(cnt *..." */) + ts+30282 /* "SELECT sum(cnt *..." */) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { if SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp /* pStmt */))) { (*Sqlite3rbu)(unsafe.Pointer(p)).FnPhaseOneStep = Xsqlite3_column_int64(tls, *(*uintptr)(unsafe.Pointer(bp /* pStmt */)), 0) @@ -163387,7 +164063,7 @@ func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) libc.Xmemcpy(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FzRbu, zRbu, (nRbu + Size_t(1))) pCsr += (uintptr(nRbu + Size_t(1))) if zState != 0 { - (*Sqlite3rbu)(unsafe.Pointer(p)).FzState = rbuMPrintf(tls, p, ts+2790 /* "%s" */, libc.VaList(bp, zState)) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzState = rbuMPrintf(tls, p, ts+2800 /* "%s" */, libc.VaList(bp, zState)) } // If the first attempt to open the database file fails and the bRetry @@ -163424,7 +164100,7 @@ func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpWalFd != 0) { if (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_OAL { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+30346 /* "cannot update wa..." */, 0) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+30356 /* "cannot update wa..." */, 0) } else if (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_MOVE { (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage = RBU_STAGE_CKPT (*Sqlite3rbu)(unsafe.Pointer(p)).FnStep = 0 @@ -163446,12 +164122,12 @@ func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) // transaction is committed in rollback mode) currently stored on // page 1 of the database file. (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_BUSY - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+30378, /* "database modifie..." */ + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+30388, /* "database modifie..." */ libc.VaList(bp+8, func() uintptr { if (*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0) { - return ts + 30410 /* "vacuum" */ + return ts + 30420 /* "vacuum" */ } - return ts + 30417 /* "update" */ + return ts + 30427 /* "update" */ }())) } } @@ -163459,7 +164135,7 @@ func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { if (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_OAL { var db uintptr = (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+13213 /* "BEGIN" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+13223 /* "BEGIN" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) // Point the object iterator at the first object if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { @@ -163473,24 +164149,24 @@ func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage = RBU_STAGE_DONE } else { if (((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*RbuState)(unsafe.Pointer(pState)).FeStage == 0)) && ((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0)) { - rbuCopyPragma(tls, p, ts+15448 /* "page_size" */) - rbuCopyPragma(tls, p, ts+14860 /* "auto_vacuum" */) + rbuCopyPragma(tls, p, ts+15458 /* "page_size" */) + rbuCopyPragma(tls, p, ts+14870 /* "auto_vacuum" */) } // Open transactions both databases. The *-oal file is opened or // created at this point. if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, db, ts+30424 /* "BEGIN IMMEDIATE" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, db, ts+30434 /* "BEGIN IMMEDIATE" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } // Check if the main database is a zipvfs db. If it is, set the upper // level pager to use "journal_mode=off". This prevents it from // generating a large journal using a temp file. if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - var frc int32 = Xsqlite3_file_control(tls, db, ts+5458 /* "main" */, SQLITE_FCNTL_ZIPVFS, uintptr(0)) + var frc int32 = Xsqlite3_file_control(tls, db, ts+5468 /* "main" */, SQLITE_FCNTL_ZIPVFS, uintptr(0)) if frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, - db, ts+30440 /* "PRAGMA journal_m..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + db, ts+30450 /* "PRAGMA journal_m..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } } @@ -163543,7 +164219,7 @@ func Xsqlite3rbu_vacuum(tls *libc.TLS, zTarget uintptr, zState uintptr) uintptr } if zState != 0 { var n int32 = int32(libc.Xstrlen(tls, zState)) - if (n >= 7) && (0 == libc.Xmemcmp(tls, ts+30464 /* "-vactmp" */, (zState+uintptr((n-7))), uint32(7))) { + if (n >= 7) && (0 == libc.Xmemcmp(tls, ts+30474 /* "-vactmp" */, (zState+uintptr((n-7))), uint32(7))) { return rbuMisuseError(tls) } } @@ -163573,7 +164249,7 @@ func rbuEditErrmsg(tls *libc.TLS, p uintptr) { /* sqlite3.c:204232:13: */ var i uint32 var nErrmsg Size_t = libc.Xstrlen(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg) for i = uint32(0); i < (nErrmsg - Size_t(8)); i++ { - if libc.Xmemcmp(tls, ((*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg+uintptr(i)), ts+28515 /* "rbu_imp_" */, uint32(8)) == 0 { + if libc.Xmemcmp(tls, ((*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg+uintptr(i)), ts+28525 /* "rbu_imp_" */, uint32(8)) == 0 { var nDel int32 = 8 for (int32(*(*int8)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg + uintptr((i + uint32(nDel)))))) >= '0') && (int32(*(*int8)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg + uintptr((i + uint32(nDel)))))) <= '9') { nDel++ @@ -163592,19 +164268,21 @@ func Xsqlite3rbu_close(tls *libc.TLS, p uintptr, pzErrmsg uintptr) int32 { /* sq // Commit the transaction to the *-oal file. if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_OAL) { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+13228 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+13238 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } // Sync the db file if currently doing an incremental checkpoint if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_CKPT) { var pDb uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods + 20 /* &.xSync */))))(tls, pDb, SQLITE_SYNC_NORMAL) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxSync})).f(tls, pDb, SQLITE_SYNC_NORMAL) } rbuSaveState(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_OAL) { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+13228 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+13238 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } // Close any open statement handles. @@ -163616,7 +164294,7 @@ func Xsqlite3rbu_close(tls *libc.TLS, p uintptr, pzErrmsg uintptr) int32 { /* sq // specifying the current target and state databases to start a new // vacuum from scratch. if (((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0)) && ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc != SQLITE_OK)) && ((*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu != 0) { - var rc2 int32 = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+30472 /* "DELETE FROM stat..." */, uintptr(0), uintptr(0), uintptr(0)) + var rc2 int32 = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+30482 /* "DELETE FROM stat..." */, uintptr(0), uintptr(0), uintptr(0)) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_DONE) && (rc2 != SQLITE_OK) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = rc2 } @@ -163715,14 +164393,16 @@ func Xsqlite3rbu_savestate(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:204384 if (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_OAL { if rc == SQLITE_OK { - rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+13228 /* "COMMIT" */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+13238 /* "COMMIT" */, uintptr(0), uintptr(0), uintptr(0)) } } // Sync the db file if (rc == SQLITE_OK) && ((*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_CKPT) { var pDb uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods + 20 /* &.xSync */))))(tls, pDb, SQLITE_SYNC_NORMAL) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxSync})).f(tls, pDb, SQLITE_SYNC_NORMAL) } (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = rc @@ -163732,19 +164412,19 @@ func Xsqlite3rbu_savestate(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:204384 if (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_OAL { if rc == SQLITE_OK { - rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+13228 /* "COMMIT" */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+13238 /* "COMMIT" */, uintptr(0), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { var zBegin uintptr if (*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0) { - zBegin = ts + 13213 /* "BEGIN" */ + zBegin = ts + 13223 /* "BEGIN" */ } else { - zBegin = ts + 30424 /* "BEGIN IMMEDIATE" */ + zBegin = ts + 30434 /* "BEGIN IMMEDIATE" */ } rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, zBegin, uintptr(0), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { - rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+30424 /* "BEGIN IMMEDIATE" */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+30434 /* "BEGIN IMMEDIATE" */, uintptr(0), uintptr(0), uintptr(0)) } } @@ -163818,7 +164498,9 @@ func rbuUnlockShm(tls *libc.TLS, p uintptr) { /* sqlite3.c:204477:13: */ var i int32 for i = 0; i < SQLITE_SHM_NLOCK; i++ { if ((U32(int32(1) << i)) & (*Sqlite3rbu)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpRbu)).FmLock) != 0 { - (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(&xShmLock)))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, i, 1, (SQLITE_SHM_UNLOCK | SQLITE_SHM_EXCLUSIVE)) + (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xShmLock})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, i, 1, (SQLITE_SHM_UNLOCK | SQLITE_SHM_EXCLUSIVE)) } } (*Sqlite3rbu)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpRbu)).FmLock = U32(0) @@ -163922,13 +164604,17 @@ func rbuVfsClose(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:204569:12: * if ((*Rbu_file)(unsafe.Pointer(p)).FopenFlags & SQLITE_OPEN_MAIN_DB) != 0 { rbuMainlistRemove(tls, p) rbuUnlockShm(tls, p) - (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 64 /* &.xShmUnmap */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, 0) + (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmUnmap})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, 0) } else if (((*Rbu_file)(unsafe.Pointer(p)).FopenFlags & SQLITE_OPEN_DELETEONCLOSE) != 0) && ((*Rbu_file)(unsafe.Pointer(p)).FpRbu != 0) { rbuUpdateTempSize(tls, p, int64(0)) } // Close the underlying file handle - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 4 /* &.xClose */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxClose})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) return rc } @@ -163971,7 +164657,9 @@ func rbuVfsRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst Sq rc = SQLITE_OK libc.Xmemset(tls, zBuf, 0, uint32(iAmt)) } else { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 8 /* &.xRead */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, zBuf, iAmt, iOfst) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxRead})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, zBuf, iAmt, iOfst) // If this is being called to read the first page of the target // database as part of an rbu vacuum operation, synthesize the // contents of the first page if it does not yet exist. Otherwise, @@ -163981,7 +164669,9 @@ func rbuVfsRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst Sq (((*Rbu_file)(unsafe.Pointer(p)).FopenFlags & SQLITE_OPEN_MAIN_DB) != 0)) && ((*Sqlite3rbu)(unsafe.Pointer(pRbu)).Frc == SQLITE_OK) { var pFd uintptr = (*Sqlite3rbu)(unsafe.Pointer(pRbu)).FpRbuFd - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pFd)).FpMethods + 8 /* &.xRead */))))(tls, pFd, zBuf, iAmt, iOfst) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pFd)).FpMethods)).FxRead})).f(tls, pFd, zBuf, iAmt, iOfst) if rc == SQLITE_OK { var aBuf uintptr = zBuf var iRoot U32 @@ -164040,7 +164730,9 @@ func rbuVfsWrite(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst S } } } - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 12 /* &.xWrite */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, zBuf, iAmt, iOfst) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxWrite})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, zBuf, iAmt, iOfst) if ((rc == SQLITE_OK) && (iOfst == int64(0))) && (((*Rbu_file)(unsafe.Pointer(p)).FopenFlags & SQLITE_OPEN_MAIN_DB) != 0) { // These look like magic numbers. But they are stable, as they are part // of the definition of the SQLite file format, which may not change. @@ -164061,7 +164753,9 @@ func rbuVfsTruncate(tls *libc.TLS, pFile uintptr, size Sqlite_int64) int32 { /* return rc } } - return (*(*func(*libc.TLS, uintptr, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 16 /* &.xTruncate */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, size) + return (*struct { + f func(*libc.TLS, uintptr, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxTruncate})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, size) } // Sync an rbuVfs-file. @@ -164073,14 +164767,18 @@ func rbuVfsSync(tls *libc.TLS, pFile uintptr, flags int32) int32 { /* sqlite3.c: } return SQLITE_OK } - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 20 /* &.xSync */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxSync})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, flags) } // Return the current file-size of an rbuVfs-file. func rbuVfsFileSize(tls *libc.TLS, pFile uintptr, pSize uintptr) int32 { /* sqlite3.c:204763:12: */ var p uintptr = pFile var rc int32 - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 24 /* &.xFileSize */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, pSize) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxFileSize})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, pSize) // If this is an RBU vacuum operation and this is the target database, // pretend that it has at least one page. Otherwise, SQLite will not @@ -164106,7 +164804,9 @@ func rbuVfsLock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c: // prevents it from checkpointing the database from sqlite3_close(). rc = SQLITE_BUSY } else { - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 28 /* &.xLock */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, eLock) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxLock})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, eLock) } return rc @@ -164115,13 +164815,17 @@ func rbuVfsLock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c: // Unlock an rbuVfs-file. func rbuVfsUnlock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c:204806:12: */ var p uintptr = pFile - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 32 /* &.xUnlock */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, eLock) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxUnlock})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, eLock) } // Check if another file-handle holds a RESERVED lock on an rbuVfs-file. func rbuVfsCheckReservedLock(tls *libc.TLS, pFile uintptr, pResOut uintptr) int32 { /* sqlite3.c:204814:12: */ var p uintptr = pFile - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 36 /* &.xCheckReservedLock */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, pResOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxCheckReservedLock})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, pResOut) } // File control method. For custom operations on an rbuVfs-file. @@ -164139,16 +164843,20 @@ func rbuVfsFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int // First try to find another RBU vfs lower down in the vfs stack. If // one is found, this vfs will operate in pass-through mode. The lower // level vfs will do the special RBU handling. - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(&xControl)))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, op, pArg) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xControl})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, op, pArg) if rc == SQLITE_NOTFOUND { // Now search for a zipvfs instance lower down in the VFS stack. If // one is found, this is an error. *(*uintptr)(unsafe.Pointer(bp + 16 /* dummy */)) = uintptr(0) - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(&xControl)))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, SQLITE_FCNTL_ZIPVFS, bp+16 /* &dummy */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xControl})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, SQLITE_FCNTL_ZIPVFS, bp+16 /* &dummy */) if rc == SQLITE_OK { rc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(pRbu)).FzErrmsg = Xsqlite3_mprintf(tls, ts+30499 /* "rbu/zipvfs setup..." */, 0) + (*Sqlite3rbu)(unsafe.Pointer(pRbu)).FzErrmsg = Xsqlite3_mprintf(tls, ts+30509 /* "rbu/zipvfs setup..." */, 0) } else if rc == SQLITE_NOTFOUND { (*Sqlite3rbu)(unsafe.Pointer(pRbu)).FpTargetFd = p (*Rbu_file)(unsafe.Pointer(p)).FpRbu = pRbu @@ -164167,11 +164875,13 @@ func rbuVfsFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int (*Rbu_file)(unsafe.Pointer(p)).FbNolock = U8(1) } - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(&xControl)))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, op, pArg) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xControl})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, op, pArg) if (rc == SQLITE_OK) && (op == SQLITE_FCNTL_VFSNAME) { var pRbuVfs uintptr = (*Rbu_file)(unsafe.Pointer(p)).FpRbuVfs var zIn uintptr = *(*uintptr)(unsafe.Pointer(pArg)) - var zOut uintptr = Xsqlite3_mprintf(tls, ts+30522 /* "rbu(%s)/%z" */, libc.VaList(bp, (*Rbu_vfs)(unsafe.Pointer(pRbuVfs)).Fbase.FzName, zIn)) + var zOut uintptr = Xsqlite3_mprintf(tls, ts+30532 /* "rbu(%s)/%z" */, libc.VaList(bp, (*Rbu_vfs)(unsafe.Pointer(pRbuVfs)).Fbase.FzName, zIn)) *(*uintptr)(unsafe.Pointer(pArg)) = zOut if zOut == uintptr(0) { rc = SQLITE_NOMEM @@ -164184,13 +164894,17 @@ func rbuVfsFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int // Return the sector-size in bytes for an rbuVfs-file. func rbuVfsSectorSize(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:204878:12: */ var p uintptr = pFile - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 44 /* &.xSectorSize */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxSectorSize})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) } // Return the device characteristic flags supported by an rbuVfs-file. func rbuVfsDeviceCharacteristics(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:204886:12: */ var p uintptr = pFile - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 48 /* &.xDeviceCharacteristics */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxDeviceCharacteristics})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) } // Take or release a shared-memory lock. @@ -164214,7 +164928,9 @@ func rbuVfsShmLock(tls *libc.TLS, pFile uintptr, ofst int32, n int32, flags int3 bCapture = 1 } if (bCapture == 0) || (0 == (flags & SQLITE_SHM_UNLOCK)) { - rc = (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 56 /* &.xShmLock */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, ofst, n, flags) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmLock})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, ofst, n, flags) if (bCapture != 0) && (rc == SQLITE_OK) { *(*U32)(unsafe.Pointer(pRbu + 188 /* &.mLock */)) |= (U32(((int32(1) << n) - 1) << ofst)) } @@ -164267,13 +164983,15 @@ func rbuVfsShmMap(tls *libc.TLS, pFile uintptr, iRegion int32, szRegion int32, i } if rc == SQLITE_OK { - *(*uintptr)(unsafe.Pointer(libc.AtomicLoadUintptr(&pp))) = *(*uintptr)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FapShm + uintptr(iRegion)*4)) + *(*uintptr)(unsafe.Pointer(pp)) = *(*uintptr)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FapShm + uintptr(iRegion)*4)) } else { - *(*uintptr)(unsafe.Pointer(libc.AtomicLoadUintptr(&pp))) = uintptr(0) + *(*uintptr)(unsafe.Pointer(pp)) = uintptr(0) } } else { - rc = (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 52 /* &.xShmMap */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, iRegion, szRegion, isWrite, libc.AtomicLoadUintptr(&pp)) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmMap})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, iRegion, szRegion, isWrite, pp) } return rc @@ -164282,7 +165000,7 @@ func rbuVfsShmMap(tls *libc.TLS, pFile uintptr, iRegion int32, szRegion int32, i // Memory barrier. func rbuVfsShmBarrier(tls *libc.TLS, pFile uintptr) { /* sqlite3.c:204990:13: */ var p uintptr = pFile - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 60 /* &.xShmBarrier */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmBarrier})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) } // The xShmUnmap method. @@ -164301,7 +165019,9 @@ func rbuVfsShmUnmap(tls *libc.TLS, pFile uintptr, delFlag int32) int32 { /* sqli } else { // Release the checkpointer and writer locks rbuUnlockShm(tls, p) - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 64 /* &.xShmUnmap */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, delFlag) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmUnmap})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, delFlag) } return rc } @@ -164334,7 +165054,7 @@ func rbuVfsOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pFile uintptr, flags // This call is to open a *-wal file. Intead, open the *-oal. var nOpen Size_t if (*Sqlite3rbu)(unsafe.Pointer(((*Rbu_file)(unsafe.Pointer(pDb)).FpRbu))).FzTarget == uintptr(0) { - zOpen = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(pDb)).FpRbu)).FdbRbu, ts+5458 /* "main" */) + zOpen = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(pDb)).FpRbu)).FdbRbu, ts+5468 /* "main" */) zOpen = Xsqlite3_filename_wal(tls, zOpen) } nOpen = libc.Xstrlen(tls, zOpen) @@ -164349,14 +165069,16 @@ func rbuVfsOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pFile uintptr, flags } if ((oflags & SQLITE_OPEN_MAIN_DB) != 0) && - (Xsqlite3_uri_boolean(tls, zName, ts+30533 /* "rbu_memory" */, 0) != 0) { + (Xsqlite3_uri_boolean(tls, zName, ts+30543 /* "rbu_memory" */, 0) != 0) { oflags = ((((SQLITE_OPEN_TEMP_DB | SQLITE_OPEN_READWRITE) | SQLITE_OPEN_CREATE) | SQLITE_OPEN_EXCLUSIVE) | SQLITE_OPEN_DELETEONCLOSE) zOpen = uintptr(0) } if rc == SQLITE_OK { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pRealVfs + 24 /* &.xOpen */))))(tls, pRealVfs, zOpen, (*Rbu_file)(unsafe.Pointer(pFd)).FpReal, oflags, pOutFlags) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxOpen})).f(tls, pRealVfs, zOpen, (*Rbu_file)(unsafe.Pointer(pFd)).FpReal, oflags, pOutFlags) } if (*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(pFd)).FpReal)).FpMethods != 0 { // The xOpen() operation has succeeded. Set the sqlite3_file.pMethods @@ -164396,7 +165118,9 @@ var rbuvfs_io_methods = Sqlite3_io_methods{ // Delete the file located at zPath. func rbuVfsDelete(tls *libc.TLS, pVfs uintptr, zPath uintptr, dirSync int32) int32 { /* sqlite3.c:205115:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - return (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pRealVfs + 28 /* &.xDelete */))))(tls, pRealVfs, zPath, dirSync) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxDelete})).f(tls, pRealVfs, zPath, dirSync) } // Test for access permissions. Return true if the requested permission @@ -164409,7 +165133,9 @@ func rbuVfsAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResO var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pRbuVfs)).FpRealVfs var rc int32 - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pRealVfs + 32 /* &.xAccess */))))(tls, pRealVfs, zPath, flags, pResOut) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxAccess})).f(tls, pRealVfs, zPath, flags, pResOut) // If this call is to check if a *-wal file associated with an RBU target // database connection exists, and the RBU update is in RBU_STAGE_OAL, @@ -164446,13 +165172,17 @@ func rbuVfsAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResO // of at least (DEVSYM_MAX_PATHNAME+1) bytes. func rbuVfsFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zOut uintptr) int32 { /* sqlite3.c:205172:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pRealVfs + 36 /* &.xFullPathname */))))(tls, pRealVfs, zPath, nOut, zOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxFullPathname})).f(tls, pRealVfs, zPath, nOut, zOut) } // Open the dynamic library located at zPath and return a handle. func rbuVfsDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* sqlite3.c:205186:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer((pRealVfs + 40 /* &.xDlOpen */))))(tls, pRealVfs, zPath) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxDlOpen})).f(tls, pRealVfs, zPath) } // Populate the buffer zErrMsg (size nByte bytes) with a human readable @@ -164460,39 +165190,51 @@ func rbuVfsDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* sqlit // with dynamic libraries. func rbuVfsDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zErrMsg uintptr) { /* sqlite3.c:205196:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer((pRealVfs + 44 /* &.xDlError */))))(tls, pRealVfs, nByte, zErrMsg) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxDlError})).f(tls, pRealVfs, nByte, zErrMsg) } // Return a pointer to the symbol zSymbol in the dynamic library pHandle. func rbuVfsDlSym(tls *libc.TLS, pVfs uintptr, pArg uintptr, zSym uintptr) uintptr { /* sqlite3.c:205204:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer((pRealVfs + 48 /* &.xDlSym */))))(tls, pRealVfs, pArg, zSym) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxDlSym})).f(tls, pRealVfs, pArg, zSym) } // Close the dynamic library handle pHandle. func rbuVfsDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* sqlite3.c:205216:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pRealVfs + 52 /* &.xDlClose */))))(tls, pRealVfs, pHandle) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxDlClose})).f(tls, pRealVfs, pHandle) } // Populate the buffer pointed to by zBufOut with nByte bytes of // random data. func rbuVfsRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* sqlite3.c:205226:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pRealVfs + 56 /* &.xRandomness */))))(tls, pRealVfs, nByte, zBufOut) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxRandomness})).f(tls, pRealVfs, nByte, zBufOut) } // Sleep for nMicro microseconds. Return the number of microseconds // actually slept. func rbuVfsSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* sqlite3.c:205235:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pRealVfs + 60 /* &.xSleep */))))(tls, pRealVfs, nMicro) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxSleep})).f(tls, pRealVfs, nMicro) } // Return the current time as a Julian Day number in *pTimeOut. func rbuVfsCurrentTime(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) int32 { /* sqlite3.c:205243:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pRealVfs + 64 /* &.xCurrentTime */))))(tls, pRealVfs, pTimeOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxCurrentTime})).f(tls, pRealVfs, pTimeOut) } // No-op. @@ -164743,13 +165485,13 @@ type SessionTable1 = struct { type SessionTable = SessionTable1 /* sqlite3.c:206655:29 */ type SessionChange1 = struct { - Fop U8 - FbIndirect U8 - _ [2]byte - FnMaxSize int32 - FnRecord int32 - FaRecord uintptr - FpNext uintptr + Fop U8 + FbIndirect U8 + F__ccgo_pad1 [2]byte + FnMaxSize int32 + FnRecord int32 + FaRecord uintptr + FpNext uintptr } /* sqlite3.c:11155:9 */ type SessionChange = SessionChange1 /* sqlite3.c:206656:30 */ @@ -165015,9 +165757,13 @@ func sessionPreupdateHash(tls *libc.TLS, pSession uintptr, pTab uintptr, bNew in // var pVal uintptr at bp, 4 if bNew != 0 { - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 8 /* &.xNew */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp /* &pVal */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxNew})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp /* &pVal */) } else { - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 4 /* &.xOld */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp /* &pVal */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxOld})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp /* &pVal */) } if rc != SQLITE_OK { return rc @@ -165336,10 +166082,14 @@ func sessionPreupdateEqual(tls *libc.TLS, pSession uintptr, pTab uintptr, pChang // this (that the method has already been called). if op == SQLITE_INSERT { // assert( db->pPreUpdate->pNewUnpacked || db->pPreUpdate->aNew ); - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 8 /* &.xNew */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, iCol, bp /* &pVal */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxNew})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, iCol, bp /* &pVal */) } else { // assert( db->pPreUpdate->pUnpacked ); - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 4 /* &.xOld */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, iCol, bp /* &pVal */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxOld})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, iCol, bp /* &pVal */) } if Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(bp /* pVal */))) != eType { @@ -165477,20 +166227,20 @@ func sessionTableInfo(tls *libc.TLS, pSession uintptr, db uintptr, zDb uintptr, var abPK uintptr = uintptr(0) nThis = Xsqlite3Strlen30(tls, zThis) - if (nThis == 12) && (0 == Xsqlite3_stricmp(tls, ts+10072 /* "sqlite_stat1" */, zThis)) { + if (nThis == 12) && (0 == Xsqlite3_stricmp(tls, ts+10082 /* "sqlite_stat1" */, zThis)) { rc = Xsqlite3_table_column_metadata(tls, db, zDb, zThis, uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0)) if rc == SQLITE_OK { // For sqlite_stat1, pretend that (tbl,idx) is the PRIMARY KEY. zPragma = Xsqlite3_mprintf(tls, - ts+30544 /* "SELECT 0, 'tbl',..." */, 0) + ts+30554 /* "SELECT 0, 'tbl',..." */, 0) } else if rc == SQLITE_ERROR { - zPragma = Xsqlite3_mprintf(tls, ts+755 /* "" */, 0) + zPragma = Xsqlite3_mprintf(tls, ts+765 /* "" */, 0) } else { return rc } } else { - zPragma = Xsqlite3_mprintf(tls, ts+30665 /* "PRAGMA '%q'.tabl..." */, libc.VaList(bp, zDb, zThis)) + zPragma = Xsqlite3_mprintf(tls, ts+30675 /* "PRAGMA '%q'.tabl..." */, libc.VaList(bp, zDb, zThis)) } if !(zPragma != 0) { return SQLITE_NOMEM @@ -165590,7 +166340,7 @@ func sessionInitTable(tls *libc.TLS, pSession uintptr, pTab uintptr) int32 { /* break } } - if 0 == Xsqlite3_stricmp(tls, ts+10072 /* "sqlite_stat1" */, (*SessionTable)(unsafe.Pointer(pTab)).FzName) { + if 0 == Xsqlite3_stricmp(tls, ts+10082 /* "sqlite_stat1" */, (*SessionTable)(unsafe.Pointer(pTab)).FzName) { (*SessionTable)(unsafe.Pointer(pTab)).FbStat1 = 1 } @@ -165623,7 +166373,9 @@ func sessionStat1Old(tls *libc.TLS, pCtx uintptr, iCol int32, ppVal uintptr) int var p uintptr = pCtx *(*uintptr)(unsafe.Pointer(bp /* pVal */)) = uintptr(0) - var rc int32 = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((p /* &.hook */ + 4 /* &.xOld */))))(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx, iCol, bp /* &pVal */) + var rc int32 = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FxOld})).f(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx, iCol, bp /* &pVal */) if ((rc == SQLITE_OK) && (iCol == 1)) && (Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(bp /* pVal */))) == SQLITE_NULL) { *(*uintptr)(unsafe.Pointer(bp /* pVal */)) = (*Sqlite3_session)(unsafe.Pointer((*SessionStat1Ctx)(unsafe.Pointer(p)).FpSession)).FpZeroBlob } @@ -165637,7 +166389,9 @@ func sessionStat1New(tls *libc.TLS, pCtx uintptr, iCol int32, ppVal uintptr) int var p uintptr = pCtx *(*uintptr)(unsafe.Pointer(bp /* pVal */)) = uintptr(0) - var rc int32 = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((p /* &.hook */ + 8 /* &.xNew */))))(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx, iCol, bp /* &pVal */) + var rc int32 = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FxNew})).f(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx, iCol, bp /* &pVal */) if ((rc == SQLITE_OK) && (iCol == 1)) && (Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(bp /* pVal */))) == SQLITE_NULL) { *(*uintptr)(unsafe.Pointer(bp /* pVal */)) = (*Sqlite3_session)(unsafe.Pointer((*SessionStat1Ctx)(unsafe.Pointer(p)).FpSession)).FpZeroBlob } @@ -165647,12 +166401,16 @@ func sessionStat1New(tls *libc.TLS, pCtx uintptr, iCol int32, ppVal uintptr) int func sessionStat1Count(tls *libc.TLS, pCtx uintptr) int32 { /* sqlite3.c:207812:12: */ var p uintptr = pCtx - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((p /* &.hook */ + 12 /* &.xCount */))))(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FxCount})).f(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx) } func sessionStat1Depth(tls *libc.TLS, pCtx uintptr) int32 { /* sqlite3.c:207816:12: */ var p uintptr = pCtx - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((p /* &.hook */ + 16 /* &.xDepth */))))(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FxDepth})).f(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx) } func sessionUpdateMaxSize(tls *libc.TLS, op int32, pSession uintptr, pTab uintptr, pC uintptr) int32 { /* sqlite3.c:207821:12: */ @@ -165665,7 +166423,9 @@ func sessionUpdateMaxSize(tls *libc.TLS, op int32, pSession uintptr, pTab uintpt var ii int32 for ii = 0; ii < (*SessionTable)(unsafe.Pointer(pTab)).FnCol; ii++ { *(*uintptr)(unsafe.Pointer(bp /* p */)) = uintptr(0) - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 8 /* &.xNew */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, ii, bp /* &p */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxNew})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, ii, bp /* &p */) sessionSerializeValue(tls, uintptr(0), *(*uintptr)(unsafe.Pointer(bp /* p */)), bp+4 /* &nNew */) } } @@ -165682,7 +166442,9 @@ func sessionUpdateMaxSize(tls *libc.TLS, op int32, pSession uintptr, pTab uintpt var nOld int32 = 0 var eType int32 *(*uintptr)(unsafe.Pointer(bp + 12 /* p */)) = uintptr(0) - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 8 /* &.xNew */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, ii, bp+12 /* &p */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxNew})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, ii, bp+12 /* &p */) if *(*uintptr)(unsafe.Pointer(bp + 12 /* p */)) == uintptr(0) { return SQLITE_NOMEM } @@ -165810,7 +166572,9 @@ __2: // Check the number of columns in this xPreUpdate call matches the // number of columns in the table. - if !((*SessionTable)(unsafe.Pointer(pTab)).FnCol != (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 12 /* &.xCount */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx)) { + if !((*SessionTable)(unsafe.Pointer(pTab)).FnCol != (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxCount})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx)) { goto __3 } (*Sqlite3_session)(unsafe.Pointer(pSession)).Frc = SQLITE_SCHEMA @@ -165856,7 +166620,7 @@ __4: goto error_out __7: ; - Xsqlite3ValueSetStr(tls, p, 0, ts+755 /* "" */, uint8(0), uintptr(0)) + Xsqlite3ValueSetStr(tls, p, 0, ts+765 /* "" */, uint8(0), uintptr(0)) (*Sqlite3_session)(unsafe.Pointer(pSession)).FpZeroBlob = p __6: ; @@ -165913,14 +166677,18 @@ __16: if !(op != SQLITE_INSERT) { goto __19 } - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 4 /* &.xOld */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+32 /* &p1 */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxOld})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+32 /* &p1 */) goto __20 __19: if !(*(*U8)(unsafe.Pointer((*SessionTable)(unsafe.Pointer(pTab)).FabPK + uintptr(i))) != 0) { goto __21 } - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 8 /* &.xNew */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+32 /* &p1 */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxNew})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+32 /* &p1 */) __21: ; @@ -165972,13 +166740,17 @@ __25: if !(op != SQLITE_INSERT) { goto __28 } - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 4 /* &.xOld */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+44 /* &p2 */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxOld})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+44 /* &p2 */) goto __29 __28: if !(*(*U8)(unsafe.Pointer((*SessionTable)(unsafe.Pointer(pTab)).FabPK + uintptr(i))) != 0) { goto __30 } - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 8 /* &.xNew */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+44 /* &p2 */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxNew})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+44 /* &p2 */) __30: ; __29: @@ -165993,7 +166765,9 @@ __27: ; // Add the change to the hash-table - if !(((*Sqlite3_session)(unsafe.Pointer(pSession)).FbIndirect != 0) || ((*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 16 /* &.xDepth */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx) != 0)) { + if !(((*Sqlite3_session)(unsafe.Pointer(pSession)).FbIndirect != 0) || ((*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxDepth})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx) != 0)) { goto __31 } (*SessionChange)(unsafe.Pointer(pC)).FbIndirect = U8(1) @@ -166011,7 +166785,9 @@ __14: } // If the existing change is considered "indirect", but this current // change is "direct", mark the change object as direct. - if !(((*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 16 /* &.xDepth */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx) == 0) && + if !(((*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxDepth})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx) == 0) && ((*Sqlite3_session)(unsafe.Pointer(pSession)).FbIndirect == 0)) { goto __33 } @@ -166063,7 +166839,9 @@ func sessionFindTable(tls *libc.TLS, pSession uintptr, zName uintptr, ppTab uint // If there is a table-filter configured, invoke it. If it returns 0, // do not automatically add the new table. if ((*Sqlite3_session)(unsafe.Pointer(pSession)).FxTableFilter == uintptr(0)) || - ((*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pSession + 32 /* &.xTableFilter */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).FpFilterCtx, zName) != 0) { + ((*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).FxTableFilter})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).FpFilterCtx, zName) != 0) { rc = Xsqlite3session_attach(tls, pSession, zName) if rc == SQLITE_OK { for pRet = (*Sqlite3_session)(unsafe.Pointer(pSession)).FpTable; (*SessionTable)(unsafe.Pointer(pRet)).FpNext != 0; pRet = (*SessionTable)(unsafe.Pointer(pRet)).FpNext { @@ -166202,14 +166980,14 @@ func sessionExprComparePK(tls *libc.TLS, nCol int32, zDb1 uintptr, zDb2 uintptr, defer tls.Free(64) var i int32 - var zSep uintptr = ts + 755 /* "" */ + var zSep uintptr = ts + 765 /* "" */ var zRet uintptr = uintptr(0) for i = 0; i < nCol; i++ { if *(*U8)(unsafe.Pointer(abPK + uintptr(i))) != 0 { - zRet = Xsqlite3_mprintf(tls, ts+30694, /* "%z%s\"%w\".\"%w\".\"%..." */ + zRet = Xsqlite3_mprintf(tls, ts+30704, /* "%z%s\"%w\".\"%w\".\"%..." */ libc.VaList(bp, zRet, zSep, zDb1, zTab, *(*uintptr)(unsafe.Pointer(azCol + uintptr(i)*4)), zDb2, zTab, *(*uintptr)(unsafe.Pointer(azCol + uintptr(i)*4)))) - zSep = ts + 19877 /* " AND " */ + zSep = ts + 19887 /* " AND " */ if zRet == uintptr(0) { break } @@ -166224,7 +167002,7 @@ func sessionExprCompareOther(tls *libc.TLS, nCol int32, zDb1 uintptr, zDb2 uintp defer tls.Free(64) var i int32 - var zSep uintptr = ts + 755 /* "" */ + var zSep uintptr = ts + 765 /* "" */ var zRet uintptr = uintptr(0) var bHave int32 = 0 @@ -166232,9 +167010,9 @@ func sessionExprCompareOther(tls *libc.TLS, nCol int32, zDb1 uintptr, zDb2 uintp if int32(*(*U8)(unsafe.Pointer(abPK + uintptr(i)))) == 0 { bHave = 1 zRet = Xsqlite3_mprintf(tls, - ts+30728, /* "%z%s\"%w\".\"%w\".\"%..." */ + ts+30738, /* "%z%s\"%w\".\"%w\".\"%..." */ libc.VaList(bp, zRet, zSep, zDb1, zTab, *(*uintptr)(unsafe.Pointer(azCol + uintptr(i)*4)), zDb2, zTab, *(*uintptr)(unsafe.Pointer(azCol + uintptr(i)*4)))) - zSep = ts + 30769 /* " OR " */ + zSep = ts + 30779 /* " OR " */ if zRet == uintptr(0) { break } @@ -166243,7 +167021,7 @@ func sessionExprCompareOther(tls *libc.TLS, nCol int32, zDb1 uintptr, zDb2 uintp if bHave == 0 { - zRet = Xsqlite3_mprintf(tls, ts+6506 /* "0" */, 0) + zRet = Xsqlite3_mprintf(tls, ts+6516 /* "0" */, 0) } return zRet @@ -166255,7 +167033,7 @@ func sessionSelectFindNew(tls *libc.TLS, nCol int32, zDb1 uintptr, zDb2 uintptr, var zRet uintptr = Xsqlite3_mprintf(tls, - ts+30774, /* "SELECT * FROM \"%..." */ + ts+30784, /* "SELECT * FROM \"%..." */ libc.VaList(bp, zDb1, zTbl, zDb2, zTbl, zExpr)) return zRet } @@ -166300,7 +167078,7 @@ func sessionDiffFindModified(tls *libc.TLS, pSession uintptr, pTab uintptr, zFro rc = SQLITE_NOMEM } else { var zStmt uintptr = Xsqlite3_mprintf(tls, - ts+30852, /* "SELECT * FROM \"%..." */ + ts+30862, /* "SELECT * FROM \"%..." */ libc.VaList(bp, (*Sqlite3_session)(unsafe.Pointer(pSession)).FzDb, (*SessionTable)(unsafe.Pointer(pTab)).FzName, zFrom, (*SessionTable)(unsafe.Pointer(pTab)).FzName, zExpr, zExpr2)) if zStmt == uintptr(0) { rc = SQLITE_NOMEM @@ -166438,7 +167216,7 @@ __6: if !(pzErrMsg != 0) { goto __16 } - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+30905 /* "table schemas do..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+30915 /* "table schemas do..." */, 0) __16: ; rc = SQLITE_SCHEMA @@ -166780,7 +167558,7 @@ func sessionAppendInteger(tls *libc.TLS, p uintptr, iVal int32, pRc uintptr) { / // var aBuf [24]int8 at bp+8, 24 - Xsqlite3_snprintf(tls, (int32(uint32(unsafe.Sizeof([24]int8{})) - uint32(1))), bp+8 /* &aBuf[0] */, ts+4089 /* "%d" */, libc.VaList(bp, iVal)) + Xsqlite3_snprintf(tls, (int32(uint32(unsafe.Sizeof([24]int8{})) - uint32(1))), bp+8 /* &aBuf[0] */, ts+4099 /* "%d" */, libc.VaList(bp, iVal)) sessionAppendStr(tls, p, bp+8 /* &aBuf[0] */, pRc) } @@ -167043,30 +167821,30 @@ func sessionSelectStmt(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, nCo var zSql uintptr = uintptr(0) var nSql int32 = -1 - if 0 == Xsqlite3_stricmp(tls, ts+10072 /* "sqlite_stat1" */, zTab) { + if 0 == Xsqlite3_stricmp(tls, ts+10082 /* "sqlite_stat1" */, zTab) { zSql = Xsqlite3_mprintf(tls, - ts+30932 /* "SELECT tbl, ?2, ..." */, libc.VaList(bp, zDb)) + ts+30942 /* "SELECT tbl, ?2, ..." */, libc.VaList(bp, zDb)) if zSql == uintptr(0) { *(*int32)(unsafe.Pointer(bp + 20 /* rc */)) = SQLITE_NOMEM } } else { var i int32 - var zSep uintptr = ts + 755 /* "" */ + var zSep uintptr = ts + 765 /* "" */ *(*SessionBuffer)(unsafe.Pointer(bp + 8 /* buf */)) = SessionBuffer{} - sessionAppendStr(tls, bp+8 /* &buf */, ts+31042 /* "SELECT * FROM " */, bp+20 /* &rc */) + sessionAppendStr(tls, bp+8 /* &buf */, ts+31052 /* "SELECT * FROM " */, bp+20 /* &rc */) sessionAppendIdent(tls, bp+8 /* &buf */, zDb, bp+20 /* &rc */) - sessionAppendStr(tls, bp+8 /* &buf */, ts+768 /* "." */, bp+20 /* &rc */) + sessionAppendStr(tls, bp+8 /* &buf */, ts+778 /* "." */, bp+20 /* &rc */) sessionAppendIdent(tls, bp+8 /* &buf */, zTab, bp+20 /* &rc */) - sessionAppendStr(tls, bp+8 /* &buf */, ts+31057 /* " WHERE " */, bp+20 /* &rc */) + sessionAppendStr(tls, bp+8 /* &buf */, ts+31067 /* " WHERE " */, bp+20 /* &rc */) for i = 0; i < nCol; i++ { if *(*U8)(unsafe.Pointer(abPK + uintptr(i))) != 0 { sessionAppendStr(tls, bp+8 /* &buf */, zSep, bp+20 /* &rc */) sessionAppendIdent(tls, bp+8 /* &buf */, *(*uintptr)(unsafe.Pointer(azCol + uintptr(i)*4)), bp+20 /* &rc */) - sessionAppendStr(tls, bp+8 /* &buf */, ts+31065 /* " IS ?" */, bp+20 /* &rc */) + sessionAppendStr(tls, bp+8 /* &buf */, ts+31075 /* " IS ?" */, bp+20 /* &rc */) sessionAppendInteger(tls, bp+8 /* &buf */, (i + 1), bp+20 /* &rc */) - zSep = ts + 19877 /* " AND " */ + zSep = ts + 19887 /* " AND " */ } } zSql = (*SessionBuffer)(unsafe.Pointer(bp + 8 /* &buf */)).FaBuf @@ -167206,7 +167984,7 @@ func sessionGenerateChangeset(tls *libc.TLS, pSession uintptr, bPatchset int32, if (*Sqlite3_session)(unsafe.Pointer(pSession)).Frc != 0 { return (*Sqlite3_session)(unsafe.Pointer(pSession)).Frc } - *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = Xsqlite3_exec(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fdb, ts+31071 /* "SAVEPOINT change..." */, uintptr(0), uintptr(0), uintptr(0)) + *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = Xsqlite3_exec(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fdb, ts+31081 /* "SAVEPOINT change..." */, uintptr(0), uintptr(0), uintptr(0)) if *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) != SQLITE_OK { return *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) } @@ -167274,7 +168052,9 @@ func sessionGenerateChangeset(tls *libc.TLS, pSession uintptr, bPatchset int32, (*(*int32)(unsafe.Pointer(bp + 24 /* rc */)) == SQLITE_OK)) && ((*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FnBuf > nNoop)) && ((*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FnBuf > sessions_strm_chunk_size) { - *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FnBuf) nNoop = -1 (*SessionBuffer)(unsafe.Pointer(bp + 12 /* &buf */)).FnBuf = 0 } @@ -167296,12 +168076,14 @@ func sessionGenerateChangeset(tls *libc.TLS, pSession uintptr, bPatchset int32, *(*uintptr)(unsafe.Pointer(ppChangeset)) = (*SessionBuffer)(unsafe.Pointer(bp + 12 /* &buf */)).FaBuf (*SessionBuffer)(unsafe.Pointer(bp + 12 /* &buf */)).FaBuf = uintptr(0) } else if (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FnBuf > 0 { - *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FnBuf) } } Xsqlite3_free(tls, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FaBuf) - Xsqlite3_exec(tls, db, ts+31091 /* "RELEASE changese..." */, uintptr(0), uintptr(0), uintptr(0)) + Xsqlite3_exec(tls, db, ts+31101 /* "RELEASE changese..." */, uintptr(0), uintptr(0), uintptr(0)) Xsqlite3_mutex_leave(tls, Xsqlite3_db_mutex(tls, db)) return *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) } @@ -167497,7 +168279,9 @@ func sessionInputBuffer(tls *libc.TLS, pIn uintptr, nByte int32) int32 { /* sqli sessionDiscardData(tls, pIn) } if SQLITE_OK == sessionBufferGrow(tls, (pIn+20 /* &.buf */), int64(*(*int32)(unsafe.Pointer(bp + 4 /* nNew */))), bp /* &rc */) { - *(*int32)(unsafe.Pointer(bp /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pIn + 32 /* &.xInput */))))(tls, (*SessionInput)(unsafe.Pointer(pIn)).FpIn, ((*SessionInput)(unsafe.Pointer(pIn)).Fbuf.FaBuf + uintptr((*SessionInput)(unsafe.Pointer(pIn)).Fbuf.FnBuf)), bp+4 /* &nNew */) + *(*int32)(unsafe.Pointer(bp /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SessionInput)(unsafe.Pointer(pIn)).FxInput})).f(tls, (*SessionInput)(unsafe.Pointer(pIn)).FpIn, ((*SessionInput)(unsafe.Pointer(pIn)).Fbuf.FaBuf + uintptr((*SessionInput)(unsafe.Pointer(pIn)).Fbuf.FnBuf)), bp+4 /* &nNew */) if *(*int32)(unsafe.Pointer(bp + 4 /* nNew */)) == 0 { (*SessionInput)(unsafe.Pointer(pIn)).FbEof = 1 } else { @@ -168364,7 +169148,9 @@ __6: if !((xOutput != 0) && ((*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FnBuf >= sessions_strm_chunk_size)) { goto __28 } - *(*int32)(unsafe.Pointer(bp + 32 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 32 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FnBuf) (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FnBuf = 0 if !(*(*int32)(unsafe.Pointer(bp + 32 /* rc */)) != SQLITE_OK) { goto __29 @@ -168389,7 +169175,9 @@ __30: if !((*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FnBuf > 0) { goto __32 } - *(*int32)(unsafe.Pointer(bp + 32 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 32 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FnBuf) __32: ; __31: @@ -168461,7 +169249,7 @@ type SessionApplyCtx1 = struct { Frebase SessionBuffer FbRebaseStarted U8 FbRebase U8 - _ [2]byte + F__ccgo_pad1 [2]byte } /* sqlite3.c:210362:9 */ type SessionApplyCtx = SessionApplyCtx1 /* sqlite3.c:210362:32 */ @@ -168533,36 +169321,36 @@ func sessionUpdateFind(tls *libc.TLS, pIter uintptr, p uintptr, bPatchset int32, if pUp == uintptr(0) { var nByte int32 = (int32((uint32(unsafe.Sizeof(SessionUpdate{})) * uint32(nU32)) * uint32(unsafe.Sizeof(U32(0))))) - var bStat1 int32 = (libc.Bool32(Xsqlite3_stricmp(tls, (*Sqlite3_changeset_iter)(unsafe.Pointer(pIter)).FzTab, ts+10072 /* "sqlite_stat1" */) == 0)) + var bStat1 int32 = (libc.Bool32(Xsqlite3_stricmp(tls, (*Sqlite3_changeset_iter)(unsafe.Pointer(pIter)).FzTab, ts+10082 /* "sqlite_stat1" */) == 0)) pUp = Xsqlite3_malloc(tls, nByte) if pUp == uintptr(0) { *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = SQLITE_NOMEM } else { - var zSep uintptr = ts + 755 /* "" */ + var zSep uintptr = ts + 765 /* "" */ // var buf SessionBuffer at bp, 12 libc.Xmemset(tls, bp /* &buf */, 0, uint32(unsafe.Sizeof(SessionBuffer{}))) (*SessionUpdate)(unsafe.Pointer(pUp)).FaMask = (pUp + 1*12) libc.Xmemcpy(tls, (*SessionUpdate)(unsafe.Pointer(pUp)).FaMask, (*SessionApplyCtx)(unsafe.Pointer(p)).FaUpdateMask, (uint32(nU32) * uint32(unsafe.Sizeof(U32(0))))) - sessionAppendStr(tls, bp /* &buf */, ts+31109 /* "UPDATE main." */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+31119 /* "UPDATE main." */, bp+12 /* &rc */) sessionAppendIdent(tls, bp /* &buf */, (*Sqlite3_changeset_iter)(unsafe.Pointer(pIter)).FzTab, bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+31122 /* " SET " */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+31132 /* " SET " */, bp+12 /* &rc */) // Create the assignments part of the UPDATE for ii = 0; ii < (*Sqlite3_changeset_iter)(unsafe.Pointer(pIter)).FnCol; ii++ { if (int32(*(*U8)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FabPK + uintptr(ii)))) == 0) && (*(*uintptr)(unsafe.Pointer((*Sqlite3_changeset_iter)(unsafe.Pointer((pIter))).FapValue + uintptr(((*Sqlite3_changeset_iter)(unsafe.Pointer((pIter))).FnCol+(ii)))*4)) != 0) { sessionAppendStr(tls, bp /* &buf */, zSep, bp+12 /* &rc */) sessionAppendIdent(tls, bp /* &buf */, *(*uintptr)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FazCol + uintptr(ii)*4)), bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+31128 /* " = ?" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+31138 /* " = ?" */, bp+12 /* &rc */) sessionAppendInteger(tls, bp /* &buf */, ((ii * 2) + 1), bp+12 /* &rc */) - zSep = ts + 13324 /* ", " */ + zSep = ts + 13334 /* ", " */ } } // Create the WHERE clause part of the UPDATE - zSep = ts + 755 /* "" */ - sessionAppendStr(tls, bp /* &buf */, ts+31057 /* " WHERE " */, bp+12 /* &rc */) + zSep = ts + 765 /* "" */ + sessionAppendStr(tls, bp /* &buf */, ts+31067 /* " WHERE " */, bp+12 /* &rc */) for ii = 0; ii < (*Sqlite3_changeset_iter)(unsafe.Pointer(pIter)).FnCol; ii++ { if (*(*U8)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FabPK + uintptr(ii))) != 0) || ((bPatchset == 0) && (*(*uintptr)(unsafe.Pointer((*Sqlite3_changeset_iter)(unsafe.Pointer((pIter))).FapValue + uintptr(ii)*4)) != 0)) { sessionAppendStr(tls, bp /* &buf */, zSep, bp+12 /* &rc */) @@ -168570,13 +169358,13 @@ func sessionUpdateFind(tls *libc.TLS, pIter uintptr, p uintptr, bPatchset int32, sessionAppendStr(tls, bp, /* &buf */ - ts+31133 /* "idx IS CASE WHEN..." */, bp+12 /* &rc */) + ts+31143 /* "idx IS CASE WHEN..." */, bp+12 /* &rc */) } else { sessionAppendIdent(tls, bp /* &buf */, *(*uintptr)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FazCol + uintptr(ii)*4)), bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+31065 /* " IS ?" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+31075 /* " IS ?" */, bp+12 /* &rc */) sessionAppendInteger(tls, bp /* &buf */, ((ii * 2) + 2), bp+12 /* &rc */) } - zSep = ts + 19877 /* " AND " */ + zSep = ts + 19887 /* " AND " */ } } @@ -168639,42 +169427,42 @@ func sessionDeleteRow(tls *libc.TLS, db uintptr, zTab uintptr, p uintptr) int32 defer tls.Free(16) var i int32 - var zSep uintptr = ts + 755 /* "" */ + var zSep uintptr = ts + 765 /* "" */ *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = SQLITE_OK *(*SessionBuffer)(unsafe.Pointer(bp /* buf */)) = SessionBuffer{} var nPk int32 = 0 - sessionAppendStr(tls, bp /* &buf */, ts+31208 /* "DELETE FROM main..." */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+31218 /* "DELETE FROM main..." */, bp+12 /* &rc */) sessionAppendIdent(tls, bp /* &buf */, zTab, bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+31057 /* " WHERE " */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+31067 /* " WHERE " */, bp+12 /* &rc */) for i = 0; i < (*SessionApplyCtx)(unsafe.Pointer(p)).FnCol; i++ { if *(*U8)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FabPK + uintptr(i))) != 0 { nPk++ sessionAppendStr(tls, bp /* &buf */, zSep, bp+12 /* &rc */) sessionAppendIdent(tls, bp /* &buf */, *(*uintptr)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FazCol + uintptr(i)*4)), bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+31128 /* " = ?" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+31138 /* " = ?" */, bp+12 /* &rc */) sessionAppendInteger(tls, bp /* &buf */, (i + 1), bp+12 /* &rc */) - zSep = ts + 19877 /* " AND " */ + zSep = ts + 19887 /* " AND " */ } } if nPk < (*SessionApplyCtx)(unsafe.Pointer(p)).FnCol { - sessionAppendStr(tls, bp /* &buf */, ts+31226 /* " AND (?" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+31236 /* " AND (?" */, bp+12 /* &rc */) sessionAppendInteger(tls, bp /* &buf */, ((*SessionApplyCtx)(unsafe.Pointer(p)).FnCol + 1), bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+30769 /* " OR " */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+30779 /* " OR " */, bp+12 /* &rc */) - zSep = ts + 755 /* "" */ + zSep = ts + 765 /* "" */ for i = 0; i < (*SessionApplyCtx)(unsafe.Pointer(p)).FnCol; i++ { if !(int32(*(*U8)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FabPK + uintptr(i)))) != 0) { sessionAppendStr(tls, bp /* &buf */, zSep, bp+12 /* &rc */) sessionAppendIdent(tls, bp /* &buf */, *(*uintptr)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FazCol + uintptr(i)*4)), bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+31065 /* " IS ?" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+31075 /* " IS ?" */, bp+12 /* &rc */) sessionAppendInteger(tls, bp /* &buf */, (i + 1), bp+12 /* &rc */) - zSep = ts + 31234 /* "AND " */ + zSep = ts + 31244 /* "AND " */ } } - sessionAppendStr(tls, bp /* &buf */, ts+4066 /* ")" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+4076 /* ")" */, bp+12 /* &rc */) } if *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) == SQLITE_OK { @@ -168698,7 +169486,7 @@ func sessionDeleteRow(tls *libc.TLS, db uintptr, zTab uintptr, p uintptr) int32 // pointing to the prepared version of the SQL statement. func sessionSelectRow(tls *libc.TLS, db uintptr, zTab uintptr, p uintptr) int32 { /* sqlite3.c:210625:12: */ return sessionSelectStmt(tls, - db, ts+5458 /* "main" */, zTab, (*SessionApplyCtx)(unsafe.Pointer(p)).FnCol, (*SessionApplyCtx)(unsafe.Pointer(p)).FazCol, (*SessionApplyCtx)(unsafe.Pointer(p)).FabPK, (p + 12 /* &.pSelect */)) + db, ts+5468 /* "main" */, zTab, (*SessionApplyCtx)(unsafe.Pointer(p)).FnCol, (*SessionApplyCtx)(unsafe.Pointer(p)).FazCol, (*SessionApplyCtx)(unsafe.Pointer(p)).FabPK, (p + 12 /* &.pSelect */)) } // Formulate and prepare an INSERT statement to add a record to table zTab. @@ -168716,21 +169504,21 @@ func sessionInsertRow(tls *libc.TLS, db uintptr, zTab uintptr, p uintptr) int32 var i int32 *(*SessionBuffer)(unsafe.Pointer(bp /* buf */)) = SessionBuffer{} - sessionAppendStr(tls, bp /* &buf */, ts+31239 /* "INSERT INTO main..." */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+31249 /* "INSERT INTO main..." */, bp+12 /* &rc */) sessionAppendIdent(tls, bp /* &buf */, zTab, bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+19883 /* "(" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+19893 /* "(" */, bp+12 /* &rc */) for i = 0; i < (*SessionApplyCtx)(unsafe.Pointer(p)).FnCol; i++ { if i != 0 { - sessionAppendStr(tls, bp /* &buf */, ts+13324 /* ", " */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+13334 /* ", " */, bp+12 /* &rc */) } sessionAppendIdent(tls, bp /* &buf */, *(*uintptr)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FazCol + uintptr(i)*4)), bp+12 /* &rc */) } - sessionAppendStr(tls, bp /* &buf */, ts+31257 /* ") VALUES(?" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+31267 /* ") VALUES(?" */, bp+12 /* &rc */) for i = 1; i < (*SessionApplyCtx)(unsafe.Pointer(p)).FnCol; i++ { - sessionAppendStr(tls, bp /* &buf */, ts+31268 /* ", ?" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+31278 /* ", ?" */, bp+12 /* &rc */) } - sessionAppendStr(tls, bp /* &buf */, ts+4066 /* ")" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+4076 /* ")" */, bp+12 /* &rc */) if *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) == SQLITE_OK { *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = Xsqlite3_prepare_v2(tls, db, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf, (p + 8 /* &.pInsert */), uintptr(0)) @@ -168748,16 +169536,16 @@ func sessionPrepare(tls *libc.TLS, db uintptr, pp uintptr, zSql uintptr) int32 { // sessionInsertRow(), sessionUpdateRow() and sessionDeleteRow() for // other tables. func sessionStat1Sql(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:210683:12: */ - var rc int32 = sessionSelectRow(tls, db, ts+10072 /* "sqlite_stat1" */, p) + var rc int32 = sessionSelectRow(tls, db, ts+10082 /* "sqlite_stat1" */, p) if rc == SQLITE_OK { rc = sessionPrepare(tls, db, (p + 8 /* &.pInsert */), - ts+31272 /* "INSERT INTO main..." */) + ts+31282 /* "INSERT INTO main..." */) } if rc == SQLITE_OK { rc = sessionPrepare(tls, db, (p + 4 /* &.pDelete */), - ts+31385 /* "DELETE FROM main..." */) + ts+31395 /* "DELETE FROM main..." */) } return rc } @@ -168807,7 +169595,9 @@ func sessionBindRow(tls *libc.TLS, pIter uintptr, xValue uintptr, nCol int32, ab if !(abPK != 0) || (*(*U8)(unsafe.Pointer(abPK + uintptr(i))) != 0) { // var pVal uintptr at bp, 4 - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(&xValue)))(tls, pIter, i, bp /* &pVal */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xValue})).f(tls, pIter, i, bp /* &pVal */) if *(*uintptr)(unsafe.Pointer(bp /* pVal */)) == uintptr(0) { // The value in the changeset was "undefined". This indicates a // corrupt changeset blob. @@ -168976,7 +169766,9 @@ func sessionConflictHandler(tls *libc.TLS, eType int32, p uintptr, pIter uintptr if *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) == SQLITE_ROW { // There exists another row with the new.* primary key. (*Sqlite3_changeset_iter)(unsafe.Pointer(pIter)).FpConflict = (*SessionApplyCtx)(unsafe.Pointer(p)).FpSelect - res = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(&xConflict)))(tls, pCtx, eType, pIter) + res = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xConflict})).f(tls, pCtx, eType, pIter) (*Sqlite3_changeset_iter)(unsafe.Pointer(pIter)).FpConflict = uintptr(0) *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = Xsqlite3_reset(tls, (*SessionApplyCtx)(unsafe.Pointer(p)).FpSelect) } else if *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) == SQLITE_OK { @@ -168989,7 +169781,9 @@ func sessionConflictHandler(tls *libc.TLS, eType int32, p uintptr, pIter uintptr return SQLITE_OK } else { // No other row with the new.* primary key. - res = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(&xConflict)))(tls, pCtx, (eType + 1), pIter) + res = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xConflict})).f(tls, pCtx, (eType + 1), pIter) if res == SQLITE_CHANGESET_REPLACE { *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = SQLITE_MISUSE } @@ -169204,7 +169998,7 @@ func sessionApplyOneWithRetry(tls *libc.TLS, db uintptr, pIter uintptr, pApply u rc = sessionApplyOneOp(tls, pIter, pApply, xConflict, pCtx, uintptr(0), uintptr(0)) } else if *(*int32)(unsafe.Pointer(bp /* bReplace */)) != 0 { - rc = Xsqlite3_exec(tls, db, ts+31529 /* "SAVEPOINT replac..." */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, db, ts+31539 /* "SAVEPOINT replac..." */, uintptr(0), uintptr(0), uintptr(0)) if rc == SQLITE_OK { rc = sessionBindRow(tls, pIter, *(*uintptr)(unsafe.Pointer(&struct { @@ -169220,7 +170014,7 @@ func sessionApplyOneWithRetry(tls *libc.TLS, db uintptr, pIter uintptr, pApply u rc = sessionApplyOneOp(tls, pIter, pApply, xConflict, pCtx, uintptr(0), uintptr(0)) } if rc == SQLITE_OK { - rc = Xsqlite3_exec(tls, db, ts+31550 /* "RELEASE replace_..." */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, db, ts+31560 /* "RELEASE replace_..." */, uintptr(0), uintptr(0), uintptr(0)) } } } @@ -169301,10 +170095,10 @@ func sessionChangesetApply(tls *libc.TLS, db uintptr, pIter uintptr, xFilter uin (*SessionApplyCtx)(unsafe.Pointer(bp + 48 /* &sApply */)).FbInvertConstraints = libc.BoolInt32(!(!((flags & SQLITE_CHANGESETAPPLY_INVERT) != 0))) Xsqlite3_mutex_enter(tls, Xsqlite3_db_mutex(tls, db)) if (flags & SQLITE_CHANGESETAPPLY_NOSAVEPOINT) == 0 { - rc = Xsqlite3_exec(tls, db, ts+31569 /* "SAVEPOINT change..." */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, db, ts+31579 /* "SAVEPOINT change..." */, uintptr(0), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { - rc = Xsqlite3_exec(tls, db, ts+31595 /* "PRAGMA defer_for..." */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, db, ts+31605 /* "PRAGMA defer_for..." */, uintptr(0), uintptr(0), uintptr(0)) } for (rc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3changeset_next(tls, pIter)) { // var nCol int32 at bp+128, 4 @@ -169344,9 +170138,11 @@ func sessionChangesetApply(tls *libc.TLS, db uintptr, pIter uintptr, xFilter uin // If an xFilter() callback was specified, invoke it now. If the // xFilter callback returns zero, skip this table. If it returns // non-zero, proceed. - schemaMismatch = (libc.Bool32((xFilter != 0) && (0 == (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(&xFilter)))(tls, pCtx, *(*uintptr)(unsafe.Pointer(bp + 124 /* zNew */)))))) + schemaMismatch = (libc.Bool32((xFilter != 0) && (0 == (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xFilter})).f(tls, pCtx, *(*uintptr)(unsafe.Pointer(bp + 124 /* zNew */)))))) if schemaMismatch != 0 { - *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 124 /* zNew */)))) + *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 124 /* zNew */)))) if *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)) == uintptr(0) { rc = SQLITE_NOMEM break @@ -169359,7 +170155,7 @@ func sessionChangesetApply(tls *libc.TLS, db uintptr, pIter uintptr, xFilter uin Xsqlite3changeset_pk(tls, pIter, bp+136 /* &abPK */, uintptr(0)) rc = sessionTableInfo(tls, uintptr(0), - db, ts+5458 /* "main" */, *(*uintptr)(unsafe.Pointer(bp + 124 /* zNew */)), (bp + 48 /* &sApply */ + 16 /* &.nCol */), bp+140 /* &zTab */, (bp + 48 /* &sApply */ + 20 /* &.azCol */), (bp + 48 /* &sApply */ + 24 /* &.abPK */)) + db, ts+5468 /* "main" */, *(*uintptr)(unsafe.Pointer(bp + 124 /* zNew */)), (bp + 48 /* &sApply */ + 16 /* &.nCol */), bp+140 /* &zTab */, (bp + 48 /* &sApply */ + 20 /* &.azCol */), (bp + 48 /* &sApply */ + 24 /* &.abPK */)) if rc != SQLITE_OK { break } @@ -169372,20 +170168,20 @@ func sessionChangesetApply(tls *libc.TLS, db uintptr, pIter uintptr, xFilter uin if (*SessionApplyCtx)(unsafe.Pointer(bp+48 /* &sApply */)).FnCol == 0 { schemaMismatch = 1 Xsqlite3_log(tls, SQLITE_SCHEMA, - ts+31625 /* "sqlite3changeset..." */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)))) + ts+31635 /* "sqlite3changeset..." */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)))) } else if (*SessionApplyCtx)(unsafe.Pointer(bp+48 /* &sApply */)).FnCol < *(*int32)(unsafe.Pointer(bp + 128 /* nCol */)) { schemaMismatch = 1 Xsqlite3_log(tls, SQLITE_SCHEMA, - ts+31669, /* "sqlite3changeset..." */ + ts+31679, /* "sqlite3changeset..." */ libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)), (*SessionApplyCtx)(unsafe.Pointer(bp+48 /* &sApply */)).FnCol, *(*int32)(unsafe.Pointer(bp + 128 /* nCol */)))) } else if (*(*int32)(unsafe.Pointer(bp + 128 /* nCol */)) < nMinCol) || (libc.Xmemcmp(tls, (*SessionApplyCtx)(unsafe.Pointer(bp+48 /* &sApply */)).FabPK, *(*uintptr)(unsafe.Pointer(bp + 136 /* abPK */)), uint32(*(*int32)(unsafe.Pointer(bp + 128 /* nCol */)))) != 0) { schemaMismatch = 1 Xsqlite3_log(tls, SQLITE_SCHEMA, - ts+31740 /* "sqlite3changeset..." */, libc.VaList(bp+40, *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)))) + ts+31750 /* "sqlite3changeset..." */, libc.VaList(bp+40, *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)))) } else { (*SessionApplyCtx)(unsafe.Pointer(bp + 48 /* &sApply */)).FnCol = *(*int32)(unsafe.Pointer(bp + 128 /* nCol */)) - if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)), ts+10072 /* "sqlite_stat1" */) { + if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)), ts+10082 /* "sqlite_stat1" */) { if libc.AssignInt32(&rc, sessionStat1Sql(tls, db, bp+48 /* &sApply */)) != 0 { break } @@ -169435,20 +170231,22 @@ func sessionChangesetApply(tls *libc.TLS, db uintptr, pIter uintptr, xFilter uin libc.Xmemset(tls, bp+152 /* &sIter */, 0, uint32(unsafe.Sizeof(Sqlite3_changeset_iter{}))) (*Sqlite3_changeset_iter)(unsafe.Pointer(bp + 152 /* &sIter */)).FnCol = *(*int32)(unsafe.Pointer(bp + 144 /* nFk */)) - res = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(&xConflict)))(tls, pCtx, SQLITE_CHANGESET_FOREIGN_KEY, bp+152 /* &sIter */) + res = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xConflict})).f(tls, pCtx, SQLITE_CHANGESET_FOREIGN_KEY, bp+152 /* &sIter */) if res != SQLITE_CHANGESET_OMIT { rc = SQLITE_CONSTRAINT } } } - Xsqlite3_exec(tls, db, ts+31800 /* "PRAGMA defer_for..." */, uintptr(0), uintptr(0), uintptr(0)) + Xsqlite3_exec(tls, db, ts+31810 /* "PRAGMA defer_for..." */, uintptr(0), uintptr(0), uintptr(0)) if (flags & SQLITE_CHANGESETAPPLY_NOSAVEPOINT) == 0 { if rc == SQLITE_OK { - rc = Xsqlite3_exec(tls, db, ts+31830 /* "RELEASE changese..." */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, db, ts+31840 /* "RELEASE changese..." */, uintptr(0), uintptr(0), uintptr(0)) } else { - Xsqlite3_exec(tls, db, ts+31854 /* "ROLLBACK TO chan..." */, uintptr(0), uintptr(0), uintptr(0)) - Xsqlite3_exec(tls, db, ts+31830 /* "RELEASE changese..." */, uintptr(0), uintptr(0), uintptr(0)) + Xsqlite3_exec(tls, db, ts+31864 /* "ROLLBACK TO chan..." */, uintptr(0), uintptr(0), uintptr(0)) + Xsqlite3_exec(tls, db, ts+31840 /* "RELEASE changese..." */, uintptr(0), uintptr(0), uintptr(0)) } } @@ -169846,7 +170644,9 @@ func sessionChangegroupOutput(tls *libc.TLS, pGrp uintptr, xOutput uintptr, pOut sessionAppendByte(tls, bp /* &buf */, (*SessionChange)(unsafe.Pointer(p)).FbIndirect, bp+12 /* &rc */) sessionAppendBlob(tls, bp /* &buf */, (*SessionChange)(unsafe.Pointer(p)).FaRecord, (*SessionChange)(unsafe.Pointer(p)).FnRecord, bp+12 /* &rc */) if ((*(*int32)(unsafe.Pointer(bp + 12 /* rc */)) == SQLITE_OK) && (xOutput != 0)) && ((*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf >= sessions_strm_chunk_size) { - *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf) (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf = 0 } } @@ -169856,7 +170656,9 @@ func sessionChangegroupOutput(tls *libc.TLS, pGrp uintptr, xOutput uintptr, pOut if *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) == SQLITE_OK { if xOutput != 0 { if (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf > 0 { - *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf) } } else { *(*uintptr)(unsafe.Pointer(ppOut)) = (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FaBuf @@ -170197,7 +170999,9 @@ func sessionRebase(tls *libc.TLS, p uintptr, pIter uintptr, xOutput uintptr, pOu sessionAppendBlob(tls, bp+12 /* &sOut */, *(*uintptr)(unsafe.Pointer(bp /* aRec */)), *(*int32)(unsafe.Pointer(bp + 4 /* nRec */)), bp+24 /* &rc */) } if ((*(*int32)(unsafe.Pointer(bp + 24 /* rc */)) == SQLITE_OK) && (xOutput != 0)) && ((*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FnBuf > sessions_strm_chunk_size) { - *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FnBuf) (*SessionBuffer)(unsafe.Pointer(bp + 12 /* &sOut */)).FnBuf = 0 } if *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) != 0 { @@ -170213,7 +171017,9 @@ func sessionRebase(tls *libc.TLS, p uintptr, pIter uintptr, xOutput uintptr, pOu if *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) == SQLITE_OK { if xOutput != 0 { if (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FnBuf > 0 { - *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FnBuf) } } else { *(*uintptr)(unsafe.Pointer(ppOut)) = (*SessionBuffer)(unsafe.Pointer(bp + 12 /* &sOut */)).FaBuf @@ -170523,13 +171329,13 @@ type Fts5Buffer1 = struct { type Fts5Buffer = Fts5Buffer1 /* sqlite3.c:213265:27 */ type Fts5PoslistReader1 = struct { - Fa uintptr - Fn int32 - Fi int32 - FbFlag U8 - FbEof U8 - _ [2]byte - FiPos I64 + Fa uintptr + Fn int32 + Fi int32 + FbFlag U8 + FbEof U8 + F__ccgo_pad1 [2]byte + FiPos I64 } /* sqlite3.c:213118:9 */ type Fts5PoslistReader = Fts5PoslistReader1 /* sqlite3.c:213301:34 */ @@ -170585,11 +171391,11 @@ type Fts5Index1 = struct { type Fts5Index = Fts5Index1 /* sqlite3.c:213356:26 */ type Fts5IndexIter1 = struct { - FiRowid I64 - FpData uintptr - FnData int32 - FbEof U8 - _ [3]byte + FiRowid I64 + FpData uintptr + FnData int32 + FbEof U8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:213118:9 */ type Fts5IndexIter = Fts5IndexIter1 /* sqlite3.c:213357:30 */ @@ -170991,10 +171797,10 @@ var fts5yy_default = [35]uint8{ // actually contains the reduce action for the second half of the // SHIFTREDUCE. type fts5yyStackEntry = struct { - Fstateno uint8 - Fmajor uint8 - _ [2]byte - Fminor Fts5YYMINORTYPE + Fstateno uint8 + Fmajor uint8 + F__ccgo_pad1 [2]byte + Fminor Fts5YYMINORTYPE } /* sqlite3.c:214190:1 */ type Fts5yyStackEntry = fts5yyStackEntry /* sqlite3.c:214197:33 */ @@ -171037,7 +171843,7 @@ func sqlite3Fts5ParserInit(tls *libc.TLS, fts5yypRawParser uintptr) { /* sqlite3 // to sqlite3Fts5Parser and sqlite3Fts5ParserFree. func sqlite3Fts5ParserAlloc(tls *libc.TLS, mallocProc uintptr) uintptr { /* sqlite3.c:214408:13: */ var fts5yypParser uintptr - fts5yypParser = (*(*func(*libc.TLS, U64) uintptr)(unsafe.Pointer(&mallocProc)))(tls, U64(unsafe.Sizeof(Fts5yyParser{}))) + fts5yypParser = (*struct{ f func(*libc.TLS, U64) uintptr })(unsafe.Pointer(&struct{ uintptr }{mallocProc})).f(tls, U64(unsafe.Sizeof(Fts5yyParser{}))) if fts5yypParser != 0 { sqlite3Fts5ParserInit(tls, fts5yypParser) @@ -171135,7 +171941,7 @@ func sqlite3Fts5ParserFree(tls *libc.TLS, p uintptr, freeProc uintptr) { /* sqli return } sqlite3Fts5ParserFinalize(tls, p) - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&freeProc)))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{freeProc})).f(tls, p) } // Return the peak depth of the stack for a parser. @@ -171199,7 +172005,7 @@ func fts5yyStackOverflow(tls *libc.TLS, fts5yypParser uintptr) { /* sqlite3.c:21 // stack every overflows //******* Begin %stack_overflow code ***************************************** - sqlite3Fts5ParseError(tls, pParse, ts+31882 /* "fts5: parser sta..." */, 0) + sqlite3Fts5ParseError(tls, pParse, ts+31892 /* "fts5: parser sta..." */, 0) //******* End %stack_overflow code ******************************************* (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).FpParse = pParse // Suppress warning about unused %extra_argument var @@ -171522,7 +172328,7 @@ func fts5yy_syntax_error(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor int32 _ = fts5yymajor // Silence a compiler warning sqlite3Fts5ParseError(tls, - pParse, ts+31910 /* "fts5: syntax err..." */, libc.VaList(bp, fts5yyminor.Fn, fts5yyminor.Fp)) + pParse, ts+31920 /* "fts5: syntax err..." */, libc.VaList(bp, fts5yyminor.Fn, fts5yyminor.Fp)) //*********** End %syntax_error code ***************************************** (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).FpParse = pParse // Suppress warning about unused %extra_argument variable @@ -171631,7 +172437,7 @@ func sqlite3Fts5ParserFallback(tls *libc.TLS, iToken int32) int32 { /* sqlite3.c // #include "fts5Int.h" // Declarations for math functions. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -171646,7 +172452,7 @@ func sqlite3Fts5ParserFallback(tls *libc.TLS, iToken int32) int32 { /* sqlite3.c // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.12 Mathematics @@ -171690,7 +172496,7 @@ type CInstIter1 = struct { // #include "fts5Int.h" // Declarations for math functions. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -171705,7 +172511,7 @@ type CInstIter1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.12 Mathematics @@ -171745,10 +172551,14 @@ func fts5CInstIterNext(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:215400 // var io int32 at bp+8, 4 - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(((*CInstIter)(unsafe.Pointer(pIter)).FpApi + 36 /* &.xInst */))))(tls, (*CInstIter)(unsafe.Pointer(pIter)).FpFts, (*CInstIter)(unsafe.Pointer(pIter)).FiInst, bp /* &ip */, bp+4 /* &ic */, bp+8 /* &io */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*CInstIter)(unsafe.Pointer(pIter)).FpApi)).FxInst})).f(tls, (*CInstIter)(unsafe.Pointer(pIter)).FpFts, (*CInstIter)(unsafe.Pointer(pIter)).FiInst, bp /* &ip */, bp+4 /* &ic */, bp+8 /* &io */) if rc == SQLITE_OK { if *(*int32)(unsafe.Pointer(bp + 4 /* ic */)) == (*CInstIter)(unsafe.Pointer(pIter)).FiCol { - var iEnd int32 = ((*(*int32)(unsafe.Pointer(bp + 8 /* io */)) - 1) + (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*CInstIter)(unsafe.Pointer(pIter)).FpApi + 28 /* &.xPhraseSize */))))(tls, (*CInstIter)(unsafe.Pointer(pIter)).FpFts, *(*int32)(unsafe.Pointer(bp /* ip */)))) + var iEnd int32 = ((*(*int32)(unsafe.Pointer(bp + 8 /* io */)) - 1) + (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*CInstIter)(unsafe.Pointer(pIter)).FpApi)).FxPhraseSize})).f(tls, (*CInstIter)(unsafe.Pointer(pIter)).FpFts, *(*int32)(unsafe.Pointer(bp /* ip */)))) if (*CInstIter)(unsafe.Pointer(pIter)).FiStart < 0 { (*CInstIter)(unsafe.Pointer(pIter)).FiStart = *(*int32)(unsafe.Pointer(bp + 8 /* io */)) (*CInstIter)(unsafe.Pointer(pIter)).FiEnd = iEnd @@ -171776,7 +172586,9 @@ func fts5CInstIterInit(tls *libc.TLS, pApi uintptr, pFts uintptr, iCol int32, pI (*CInstIter)(unsafe.Pointer(pIter)).FpApi = pApi (*CInstIter)(unsafe.Pointer(pIter)).FpFts = pFts (*CInstIter)(unsafe.Pointer(pIter)).FiCol = iCol - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 32 /* &.xInstCount */))))(tls, pFts, (pIter + 16 /* &.nInst */)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInstCount})).f(tls, pFts, (pIter + 16 /* &.nInst */)) if rc == SQLITE_OK { rc = fts5CInstIterNext(tls, pIter) @@ -171821,7 +172633,7 @@ func fts5HighlightAppend(tls *libc.TLS, pRc uintptr, p uintptr, z uintptr, n int if n < 0 { n = int32(libc.Xstrlen(tls, z)) } - (*HighlightContext)(unsafe.Pointer(p)).FzOut = Xsqlite3_mprintf(tls, ts+31941 /* "%z%.*s" */, libc.VaList(bp, (*HighlightContext)(unsafe.Pointer(p)).FzOut, n, z)) + (*HighlightContext)(unsafe.Pointer(p)).FzOut = Xsqlite3_mprintf(tls, ts+31951 /* "%z%.*s" */, libc.VaList(bp, (*HighlightContext)(unsafe.Pointer(p)).FzOut, n, z)) if (*HighlightContext)(unsafe.Pointer(p)).FzOut == uintptr(0) { *(*int32)(unsafe.Pointer(pRc)) = SQLITE_NOMEM } @@ -171895,7 +172707,7 @@ func fts5HighlightFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintp var iCol int32 if nVal != 3 { - var zErr uintptr = ts + 31948 /* "wrong number of ..." */ + var zErr uintptr = ts + 31958 /* "wrong number of ..." */ Xsqlite3_result_error(tls, pCtx, zErr, -1) return } @@ -171904,7 +172716,9 @@ func fts5HighlightFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintp libc.Xmemset(tls, bp /* &ctx */, 0, uint32(unsafe.Sizeof(HighlightContext{}))) (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzOpen = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apVal + 1*4))) (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzClose = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apVal + 2*4))) - *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 44 /* &.xColumnText */))))(tls, pFts, iCol, (bp /* &ctx */ + 48 /* &.zIn */), (bp /* &ctx */ + 52 /* &.nIn */)) + *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnText})).f(tls, pFts, iCol, (bp /* &ctx */ + 48 /* &.zIn */), (bp /* &ctx */ + 52 /* &.nIn */)) if (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzIn != 0 { if *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) == SQLITE_OK { @@ -171912,7 +172726,9 @@ func fts5HighlightFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintp } if *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) == SQLITE_OK { - *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 20 /* &.xTokenize */))))(tls, pFts, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzIn, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FnIn, bp /* &ctx */, *(*uintptr)(unsafe.Pointer(&struct { + *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxTokenize})).f(tls, pFts, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzIn, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FnIn, bp /* &ctx */, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 }{fts5HighlightCb}))) } @@ -172020,9 +172836,13 @@ func fts5SnippetScore(tls *libc.TLS, pApi uintptr, pFts uintptr, nDocsize int32, var iLast int32 = 0 var iEnd Sqlite3_int64 = (Sqlite3_int64(iPos) + Sqlite3_int64(nToken)) - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 32 /* &.xInstCount */))))(tls, pFts, bp /* &nInst */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInstCount})).f(tls, pFts, bp /* &nInst */) for i = 0; (i < *(*int32)(unsafe.Pointer(bp /* nInst */))) && (rc == SQLITE_OK); i++ { - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 36 /* &.xInst */))))(tls, pFts, i, bp+4 /* &ip */, bp+8 /* &ic */, bp+12 /* &iOff */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInst})).f(tls, pFts, i, bp+4 /* &ip */, bp+8 /* &ic */, bp+12 /* &iOff */) if (((rc == SQLITE_OK) && (*(*int32)(unsafe.Pointer(bp + 8 /* ic */)) == iCol)) && (*(*int32)(unsafe.Pointer(bp + 12 /* iOff */)) >= iPos)) && (Sqlite3_int64(*(*int32)(unsafe.Pointer(bp + 12 /* iOff */))) < iEnd) { nScore = nScore + (func() int32 { if *(*uint8)(unsafe.Pointer(aSeen + uintptr(*(*int32)(unsafe.Pointer(bp + 4 /* ip */))))) != 0 { @@ -172034,7 +172854,9 @@ func fts5SnippetScore(tls *libc.TLS, pApi uintptr, pFts uintptr, nDocsize int32, if iFirst < 0 { iFirst = *(*int32)(unsafe.Pointer(bp + 12 /* iOff */)) } - iLast = (*(*int32)(unsafe.Pointer(bp + 12 /* iOff */)) + (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pApi + 28 /* &.xPhraseSize */))))(tls, pFts, *(*int32)(unsafe.Pointer(bp + 4 /* ip */)))) + iLast = (*(*int32)(unsafe.Pointer(bp + 12 /* iOff */)) + (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseSize})).f(tls, pFts, *(*int32)(unsafe.Pointer(bp + 4 /* ip */)))) } } @@ -172061,7 +172883,7 @@ func fts5ValueToText(tls *libc.TLS, pVal uintptr) uintptr { /* sqlite3.c:215713: if zRet != 0 { return zRet } - return ts + 755 /* "" */ + return ts + 765 /* "" */ } // Implementation of snippet() function. @@ -172088,12 +172910,14 @@ func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr var nCol int32 if nVal != 5 { - var zErr uintptr = ts + 31998 /* "wrong number of ..." */ + var zErr uintptr = ts + 32008 /* "wrong number of ..." */ Xsqlite3_result_error(tls, pCtx, zErr, -1) return } - nCol = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pApi + 8 /* &.xColumnCount */))))(tls, pFts) + nCol = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnCount})).f(tls, pFts) libc.Xmemset(tls, bp /* &ctx */, 0, uint32(unsafe.Sizeof(HighlightContext{}))) iCol = Xsqlite3_value_int(tls, *(*uintptr)(unsafe.Pointer(apVal))) (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzOpen = fts5ValueToText(tls, *(*uintptr)(unsafe.Pointer(apVal + 1*4))) @@ -172107,13 +172931,17 @@ func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr } return 0 }() - nPhrase = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pApi + 24 /* &.xPhraseCount */))))(tls, pFts) + nPhrase = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseCount})).f(tls, pFts) aSeen = Xsqlite3_malloc(tls, nPhrase) if aSeen == uintptr(0) { *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = SQLITE_NOMEM } if *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) == SQLITE_OK { - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 32 /* &.xInstCount */))))(tls, pFts, bp+64 /* &nInst */) + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInstCount})).f(tls, pFts, bp+64 /* &nInst */) } libc.Xmemset(tls, bp+68 /* &sFinder */, 0, uint32(unsafe.Sizeof(Fts5SFinder{}))) @@ -172126,18 +172954,24 @@ func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr var ii int32 (*Fts5SFinder)(unsafe.Pointer(bp + 68 /* &sFinder */)).FiPos = 0 (*Fts5SFinder)(unsafe.Pointer(bp + 68 /* &sFinder */)).FnFirst = 0 - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 44 /* &.xColumnText */))))(tls, pFts, i, (bp + 68 /* &sFinder */ + 16 /* &.zDoc */), bp+88 /* &nDoc */) + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnText})).f(tls, pFts, i, (bp + 68 /* &sFinder */ + 16 /* &.zDoc */), bp+88 /* &nDoc */) if *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) != SQLITE_OK { break } - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 20 /* &.xTokenize */))))(tls, pFts, + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxTokenize})).f(tls, pFts, (*Fts5SFinder)(unsafe.Pointer(bp+68 /* &sFinder */)).FzDoc, *(*int32)(unsafe.Pointer(bp + 88 /* nDoc */)), bp+68 /* &sFinder */, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 }{fts5SentenceFinderCb}))) if *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) != SQLITE_OK { break } - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pApi + 48 /* &.xColumnSize */))))(tls, pFts, i, bp+92 /* &nDocsize */) + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnSize})).f(tls, pFts, i, bp+92 /* &nDocsize */) if *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) != SQLITE_OK { break } @@ -172155,7 +172989,9 @@ func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr var jj int32 - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 36 /* &.xInst */))))(tls, pFts, ii, bp+96 /* &ip */, bp+100 /* &ic */, bp+104 /* &io */) + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInst})).f(tls, pFts, ii, bp+96 /* &ip */, bp+100 /* &ic */, bp+104 /* &io */) if *(*int32)(unsafe.Pointer(bp + 100 /* ic */)) != i { continue } @@ -172206,10 +173042,14 @@ func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr } if *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) == SQLITE_OK { - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 44 /* &.xColumnText */))))(tls, pFts, iBestCol, (bp /* &ctx */ + 48 /* &.zIn */), (bp /* &ctx */ + 52 /* &.nIn */)) + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnText})).f(tls, pFts, iBestCol, (bp /* &ctx */ + 48 /* &.zIn */), (bp /* &ctx */ + 52 /* &.nIn */)) } if (*(*int32)(unsafe.Pointer(bp + 120 /* rc */)) == SQLITE_OK) && (*(*int32)(unsafe.Pointer(bp + 116 /* nColSize */)) == 0) { - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pApi + 48 /* &.xColumnSize */))))(tls, pFts, iBestCol, bp+116 /* &nColSize */) + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnSize})).f(tls, pFts, iBestCol, bp+116 /* &nColSize */) } if (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzIn != 0 { if *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) == SQLITE_OK { @@ -172230,7 +173070,9 @@ func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr } if *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) == SQLITE_OK { - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 20 /* &.xTokenize */))))(tls, pFts, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzIn, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FnIn, bp /* &ctx */, *(*uintptr)(unsafe.Pointer(&struct { + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxTokenize})).f(tls, pFts, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzIn, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FnIn, bp /* &ctx */, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 }{fts5HighlightCb}))) } @@ -172287,7 +173129,9 @@ func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) var rc int32 = SQLITE_OK // Return code var p uintptr // Object to return - p = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer((pApi + 60 /* &.xGetAuxdata */))))(tls, pFts, 0) + p = (*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxGetAuxdata})).f(tls, pFts, 0) if p == uintptr(0) { var nPhrase int32 // Number of phrases in query *(*Sqlite3_int64)(unsafe.Pointer(bp /* nRow */)) = int64(0) // Number of rows in table @@ -172296,7 +173140,9 @@ func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) var i int32 // Allocate the Fts5Bm25Data object - nPhrase = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pApi + 24 /* &.xPhraseCount */))))(tls, pFts) + nPhrase = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseCount})).f(tls, pFts) nByte = (Sqlite3_int64(uint32(unsafe.Sizeof(Fts5Bm25Data{})) + ((uint32(nPhrase * 2)) * uint32(unsafe.Sizeof(float64(0)))))) p = Xsqlite3_malloc64(tls, uint64(nByte)) if p == uintptr(0) { @@ -172310,11 +173156,15 @@ func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) // Calculate the average document length for this FTS5 table if rc == SQLITE_OK { - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 12 /* &.xRowCount */))))(tls, pFts, bp /* &nRow */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxRowCount})).f(tls, pFts, bp /* &nRow */) } if rc == SQLITE_OK { - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pApi + 16 /* &.xColumnTotalSize */))))(tls, pFts, -1, bp+8 /* &nToken */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnTotalSize})).f(tls, pFts, -1, bp+8 /* &nToken */) } if rc == SQLITE_OK { (*Fts5Bm25Data)(unsafe.Pointer(p)).Favgdl = (float64(*(*Sqlite3_int64)(unsafe.Pointer(bp + 8 /* nToken */))) / float64(*(*Sqlite3_int64)(unsafe.Pointer(bp /* nRow */)))) @@ -172323,7 +173173,9 @@ func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) // Calculate an IDF for each phrase in the query for i = 0; (rc == SQLITE_OK) && (i < nPhrase); i++ { *(*Sqlite3_int64)(unsafe.Pointer(bp + 16 /* nHit */)) = int64(0) - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 52 /* &.xQueryPhrase */))))(tls, pFts, i, bp+16 /* &nHit */, *(*uintptr)(unsafe.Pointer(&struct { + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxQueryPhrase})).f(tls, pFts, i, bp+16 /* &nHit */, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr) int32 }{fts5CountCb}))) if rc == SQLITE_OK { @@ -172351,7 +173203,9 @@ func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) if rc != SQLITE_OK { Xsqlite3_free(tls, p) } else { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 56 /* &.xSetAuxdata */))))(tls, pFts, p, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3_free}))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxSetAuxdata})).f(tls, pFts, p, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3_free}))) } if rc != SQLITE_OK { p = uintptr(0) @@ -172383,7 +173237,9 @@ func fts5Bm25Function(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, n if rc == SQLITE_OK { aFreq = (*Fts5Bm25Data)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pData */)))).FaFreq libc.Xmemset(tls, aFreq, 0, (uint32(unsafe.Sizeof(float64(0))) * uint32((*Fts5Bm25Data)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pData */)))).FnPhrase))) - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 32 /* &.xInstCount */))))(tls, pFts, bp+4 /* &nInst */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInstCount})).f(tls, pFts, bp+4 /* &nInst */) } for i = 0; (rc == SQLITE_OK) && (i < *(*int32)(unsafe.Pointer(bp + 4 /* nInst */))); i++ { // var ip int32 at bp+8, 4 @@ -172392,7 +173248,9 @@ func fts5Bm25Function(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, n // var io int32 at bp+16, 4 - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 36 /* &.xInst */))))(tls, pFts, i, bp+8 /* &ip */, bp+12 /* &ic */, bp+16 /* &io */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInst})).f(tls, pFts, i, bp+8 /* &ip */, bp+12 /* &ic */, bp+16 /* &io */) if rc == SQLITE_OK { var w float64 if nVal > *(*int32)(unsafe.Pointer(bp + 12 /* ic */)) { @@ -172408,7 +173266,9 @@ func fts5Bm25Function(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, n if rc == SQLITE_OK { // var nTok int32 at bp+20, 4 - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pApi + 48 /* &.xColumnSize */))))(tls, pFts, -1, bp+20 /* &nTok */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnSize})).f(tls, pFts, -1, bp+20 /* &nTok */) D = float64(*(*int32)(unsafe.Pointer(bp + 20 /* nTok */))) } @@ -172429,13 +173289,13 @@ func sqlite3Fts5AuxInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c:216036 defer tls.Free(48) *(*[3]Builtin)(unsafe.Pointer(bp /* aBuiltin */)) = [3]Builtin{ - {FzFunc: ts + 32046 /* "snippet" */, FxFunc: *(*uintptr)(unsafe.Pointer(&struct { + {FzFunc: ts + 32056 /* "snippet" */, FxFunc: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) }{fts5SnippetFunction}))}, - {FzFunc: ts + 32054 /* "highlight" */, FxFunc: *(*uintptr)(unsafe.Pointer(&struct { + {FzFunc: ts + 32064 /* "highlight" */, FxFunc: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) }{fts5HighlightFunction}))}, - {FzFunc: ts + 32064 /* "bm25" */, FxFunc: *(*uintptr)(unsafe.Pointer(&struct { + {FzFunc: ts + 32074 /* "bm25" */, FxFunc: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) }{fts5Bm25Function}))}, } @@ -172443,7 +173303,9 @@ func sqlite3Fts5AuxInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c:216036 var i int32 // To iterate through builtin functions for i = 0; (rc == SQLITE_OK) && (i < (int32(uint32(unsafe.Sizeof([3]Builtin{})) / uint32(unsafe.Sizeof(Builtin{}))))); i++ { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, Fts5_extension_function, uintptr) int32)(unsafe.Pointer((pApi + 12 /* &.xCreateFunction */))))(tls, pApi, + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, Fts5_extension_function, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5_api)(unsafe.Pointer(pApi)).FxCreateFunction})).f(tls, pApi, (*Builtin)(unsafe.Pointer(bp /* &aBuiltin */ +uintptr(i)*16)).FzFunc, (*Builtin)(unsafe.Pointer(bp /* &aBuiltin */ +uintptr(i)*16)).FpUserData, (*Builtin)(unsafe.Pointer(bp /* &aBuiltin */ +uintptr(i)*16)).FxFunc, @@ -172929,7 +173791,7 @@ func fts5ConfigSkipLiteral(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:21 case 'n': fallthrough case 'N': - if Xsqlite3_strnicmp(tls, ts+5258 /* "null" */, p, 4) == 0 { + if Xsqlite3_strnicmp(tls, ts+5268 /* "null" */, p, 4) == 0 { p = (p + 4) } else { p = uintptr(0) @@ -173107,7 +173969,7 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_OK var nCmd int32 = int32(libc.Xstrlen(tls, zCmd)) - if Xsqlite3_strnicmp(tls, ts+32069 /* "prefix" */, zCmd, nCmd) == 0 { + if Xsqlite3_strnicmp(tls, ts+32079 /* "prefix" */, zCmd, nCmd) == 0 { var nByte int32 = (int32(uint32(unsafe.Sizeof(int32(0))) * uint32(FTS5_MAX_PREFIX_INDEXES))) var p uintptr var bFirst int32 = 1 @@ -173134,14 +173996,14 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm break } if (int32(*(*int8)(unsafe.Pointer(p))) < '0') || (int32(*(*int8)(unsafe.Pointer(p))) > '9') { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32076 /* "malformed prefix..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32086 /* "malformed prefix..." */, 0) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR break } if (*Fts5Config)(unsafe.Pointer(pConfig)).FnPrefix == FTS5_MAX_PREFIX_INDEXES { *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, - ts+32107 /* "too many prefix ..." */, libc.VaList(bp, FTS5_MAX_PREFIX_INDEXES)) + ts+32117 /* "too many prefix ..." */, libc.VaList(bp, FTS5_MAX_PREFIX_INDEXES)) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR break } @@ -173152,7 +174014,7 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm } if (nPre <= 0) || (nPre >= 1000) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32140 /* "prefix length ou..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32150 /* "prefix length ou..." */, 0) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR break } @@ -173165,7 +174027,7 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm return *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) } - if Xsqlite3_strnicmp(tls, ts+32177 /* "tokenize" */, zCmd, nCmd) == 0 { + if Xsqlite3_strnicmp(tls, ts+32187 /* "tokenize" */, zCmd, nCmd) == 0 { var p uintptr = zArg var nArg Sqlite3_int64 = (Sqlite3_int64(libc.Xstrlen(tls, zArg) + Size_t(1))) var azArg uintptr = sqlite3Fts5MallocZero(tls, bp+40 /* &rc */, (Sqlite3_int64(unsafe.Sizeof(uintptr(0))) * nArg)) @@ -173174,7 +174036,7 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm if (azArg != 0) && (pSpace != 0) { if (*Fts5Config)(unsafe.Pointer(pConfig)).FpTok != 0 { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32186 /* "multiple tokeniz..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32196 /* "multiple tokeniz..." */, 0) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR } else { for nArg = int64(0); (p != 0) && (*(*int8)(unsafe.Pointer(p)) != 0); nArg++ { @@ -173193,7 +174055,7 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm } } if p == uintptr(0) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32219 /* "parse error in t..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32229 /* "parse error in t..." */, 0) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR } else { *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = sqlite3Fts5GetTokenizer(tls, pGlobal, @@ -173208,14 +174070,14 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm return *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) } - if Xsqlite3_strnicmp(tls, ts+32253 /* "content" */, zCmd, nCmd) == 0 { + if Xsqlite3_strnicmp(tls, ts+32263 /* "content" */, zCmd, nCmd) == 0 { if (*Fts5Config)(unsafe.Pointer(pConfig)).FeContent != FTS5_CONTENT_NORMAL { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32261 /* "multiple content..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32271 /* "multiple content..." */, 0) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR } else { if *(*int8)(unsafe.Pointer(zArg)) != 0 { (*Fts5Config)(unsafe.Pointer(pConfig)).FeContent = FTS5_CONTENT_EXTERNAL - (*Fts5Config)(unsafe.Pointer(pConfig)).FzContent = sqlite3Fts5Mprintf(tls, bp+40 /* &rc */, ts+32293 /* "%Q.%Q" */, libc.VaList(bp+8, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, zArg)) + (*Fts5Config)(unsafe.Pointer(pConfig)).FzContent = sqlite3Fts5Mprintf(tls, bp+40 /* &rc */, ts+32303 /* "%Q.%Q" */, libc.VaList(bp+8, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, zArg)) } else { (*Fts5Config)(unsafe.Pointer(pConfig)).FeContent = FTS5_CONTENT_NONE } @@ -173223,9 +174085,9 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm return *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) } - if Xsqlite3_strnicmp(tls, ts+32299 /* "content_rowid" */, zCmd, nCmd) == 0 { + if Xsqlite3_strnicmp(tls, ts+32309 /* "content_rowid" */, zCmd, nCmd) == 0 { if (*Fts5Config)(unsafe.Pointer(pConfig)).FzContentRowid != 0 { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32313 /* "multiple content..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32323 /* "multiple content..." */, 0) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR } else { (*Fts5Config)(unsafe.Pointer(pConfig)).FzContentRowid = sqlite3Fts5Strndup(tls, bp+40 /* &rc */, zArg, -1) @@ -173233,9 +174095,9 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm return *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) } - if Xsqlite3_strnicmp(tls, ts+32351 /* "columnsize" */, zCmd, nCmd) == 0 { + if Xsqlite3_strnicmp(tls, ts+32361 /* "columnsize" */, zCmd, nCmd) == 0 { if ((int32(*(*int8)(unsafe.Pointer(zArg))) != '0') && (int32(*(*int8)(unsafe.Pointer(zArg))) != '1')) || (int32(*(*int8)(unsafe.Pointer(zArg + 1))) != 0) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32362 /* "malformed column..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32372 /* "malformed column..." */, 0) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR } else { (*Fts5Config)(unsafe.Pointer(pConfig)).FbColumnsize = (libc.Bool32(int32(*(*int8)(unsafe.Pointer(zArg))) == '1')) @@ -173243,21 +174105,21 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm return *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) } - if Xsqlite3_strnicmp(tls, ts+4189 /* "detail" */, zCmd, nCmd) == 0 { + if Xsqlite3_strnicmp(tls, ts+4199 /* "detail" */, zCmd, nCmd) == 0 { *(*[4]Fts5Enum)(unsafe.Pointer(bp + 44 /* aDetail */)) = [4]Fts5Enum{ - {FzName: ts + 15828 /* "none" */, FeVal: FTS5_DETAIL_NONE}, - {FzName: ts + 15833 /* "full" */}, - {FzName: ts + 32397 /* "columns" */, FeVal: FTS5_DETAIL_COLUMNS}, + {FzName: ts + 15838 /* "none" */, FeVal: FTS5_DETAIL_NONE}, + {FzName: ts + 15843 /* "full" */}, + {FzName: ts + 32407 /* "columns" */, FeVal: FTS5_DETAIL_COLUMNS}, {}, } if libc.AssignPtrInt32(bp+40 /* rc */, fts5ConfigSetEnum(tls, bp+44 /* &aDetail[0] */, zArg, (pConfig+48 /* &.eDetail */))) != 0 { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32405 /* "malformed detail..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32415 /* "malformed detail..." */, 0) } return *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32436 /* "unrecognized opt..." */, libc.VaList(bp+24, nCmd, zCmd)) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32446 /* "unrecognized opt..." */, libc.VaList(bp+24, nCmd, zCmd)) return SQLITE_ERROR } @@ -173321,15 +174183,15 @@ func fts5ConfigParseColumn(tls *libc.TLS, p uintptr, zCol uintptr, zArg uintptr, defer tls.Free(16) var rc int32 = SQLITE_OK - if (0 == Xsqlite3_stricmp(tls, zCol, ts+20497 /* "rank" */)) || - (0 == Xsqlite3_stricmp(tls, zCol, ts+14757 /* "rowid" */)) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32464 /* "reserved fts5 co..." */, libc.VaList(bp, zCol)) + if (0 == Xsqlite3_stricmp(tls, zCol, ts+20507 /* "rank" */)) || + (0 == Xsqlite3_stricmp(tls, zCol, ts+14767 /* "rowid" */)) { + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32474 /* "reserved fts5 co..." */, libc.VaList(bp, zCol)) rc = SQLITE_ERROR } else if zArg != 0 { - if 0 == Xsqlite3_stricmp(tls, zArg, ts+32494 /* "unindexed" */) { + if 0 == Xsqlite3_stricmp(tls, zArg, ts+32504 /* "unindexed" */) { *(*U8)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(p)).FabUnindexed + uintptr((*Fts5Config)(unsafe.Pointer(p)).FnCol))) = U8(1) } else { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32504 /* "unrecognized col..." */, libc.VaList(bp+8, zArg)) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32514 /* "unrecognized col..." */, libc.VaList(bp+8, zArg)) rc = SQLITE_ERROR } } @@ -173347,13 +174209,13 @@ func fts5ConfigMakeExprlist(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:21695 *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = SQLITE_OK *(*Fts5Buffer)(unsafe.Pointer(bp + 28 /* buf */)) = Fts5Buffer{} - sqlite3Fts5BufferAppendPrintf(tls, bp+24 /* &rc */, bp+28 /* &buf */, ts+32535 /* "T.%Q" */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(p)).FzContentRowid)) + sqlite3Fts5BufferAppendPrintf(tls, bp+24 /* &rc */, bp+28 /* &buf */, ts+32545 /* "T.%Q" */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(p)).FzContentRowid)) if (*Fts5Config)(unsafe.Pointer(p)).FeContent != FTS5_CONTENT_NONE { for i = 0; i < (*Fts5Config)(unsafe.Pointer(p)).FnCol; i++ { if (*Fts5Config)(unsafe.Pointer(p)).FeContent == FTS5_CONTENT_EXTERNAL { - sqlite3Fts5BufferAppendPrintf(tls, bp+24 /* &rc */, bp+28 /* &buf */, ts+32540 /* ", T.%Q" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(p)).FazCol + uintptr(i)*4)))) + sqlite3Fts5BufferAppendPrintf(tls, bp+24 /* &rc */, bp+28 /* &buf */, ts+32550 /* ", T.%Q" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(p)).FazCol + uintptr(i)*4)))) } else { - sqlite3Fts5BufferAppendPrintf(tls, bp+24 /* &rc */, bp+28 /* &buf */, ts+32547 /* ", T.c%d" */, libc.VaList(bp+16, i)) + sqlite3Fts5BufferAppendPrintf(tls, bp+24 /* &rc */, bp+28 /* &buf */, ts+32557 /* ", T.c%d" */, libc.VaList(bp+16, i)) } } } @@ -173401,8 +174263,8 @@ func sqlite3Fts5ConfigParse(tls *libc.TLS, pGlobal uintptr, db uintptr, nArg int (*Fts5Config)(unsafe.Pointer(pRet)).FzName = sqlite3Fts5Strndup(tls, bp+40 /* &rc */, *(*uintptr)(unsafe.Pointer(azArg + 2*4)), -1) (*Fts5Config)(unsafe.Pointer(pRet)).FbColumnsize = 1 (*Fts5Config)(unsafe.Pointer(pRet)).FeDetail = FTS5_DETAIL_FULL - if (*(*int32)(unsafe.Pointer(bp + 40 /* rc */)) == SQLITE_OK) && (Xsqlite3_stricmp(tls, (*Fts5Config)(unsafe.Pointer(pRet)).FzName, ts+20497 /* "rank" */) == 0) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32555 /* "reserved fts5 ta..." */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pRet)).FzName)) + if (*(*int32)(unsafe.Pointer(bp + 40 /* rc */)) == SQLITE_OK) && (Xsqlite3_stricmp(tls, (*Fts5Config)(unsafe.Pointer(pRet)).FzName, ts+20507 /* "rank" */) == 0) { + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32565 /* "reserved fts5 ta..." */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pRet)).FzName)) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR } @@ -173435,7 +174297,7 @@ func sqlite3Fts5ConfigParse(tls *libc.TLS, pGlobal uintptr, db uintptr, nArg int if *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) == SQLITE_OK { if z == uintptr(0) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32584 /* "parse error in \"..." */, libc.VaList(bp+8, zOrig)) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+32594 /* "parse error in \"..." */, libc.VaList(bp+8, zOrig)) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR } else { if bOption != 0 { @@ -173443,7 +174305,7 @@ func sqlite3Fts5ConfigParse(tls *libc.TLS, pGlobal uintptr, db uintptr, nArg int if *(*uintptr)(unsafe.Pointer(bp + 52 /* zTwo */)) != 0 { return *(*uintptr)(unsafe.Pointer(bp + 52 /* zTwo */)) } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), pzErr) } else { *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = fts5ConfigParseColumn(tls, pRet, *(*uintptr)(unsafe.Pointer(bp + 44 /* zOne */)), *(*uintptr)(unsafe.Pointer(bp + 52 /* zTwo */)), pzErr) @@ -173468,19 +174330,19 @@ func sqlite3Fts5ConfigParse(tls *libc.TLS, pGlobal uintptr, db uintptr, nArg int var zTail uintptr = uintptr(0) if (*Fts5Config)(unsafe.Pointer(pRet)).FeContent == FTS5_CONTENT_NORMAL { - zTail = ts + 32253 /* "content" */ + zTail = ts + 32263 /* "content" */ } else if (*Fts5Config)(unsafe.Pointer(pRet)).FbColumnsize != 0 { - zTail = ts + 32604 /* "docsize" */ + zTail = ts + 32614 /* "docsize" */ } if zTail != 0 { (*Fts5Config)(unsafe.Pointer(pRet)).FzContent = sqlite3Fts5Mprintf(tls, - bp+40 /* &rc */, ts+32612 /* "%Q.'%q_%s'" */, libc.VaList(bp+16, (*Fts5Config)(unsafe.Pointer(pRet)).FzDb, (*Fts5Config)(unsafe.Pointer(pRet)).FzName, zTail)) + bp+40 /* &rc */, ts+32622 /* "%Q.'%q_%s'" */, libc.VaList(bp+16, (*Fts5Config)(unsafe.Pointer(pRet)).FzDb, (*Fts5Config)(unsafe.Pointer(pRet)).FzName, zTail)) } } if (*(*int32)(unsafe.Pointer(bp + 40 /* rc */)) == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer(pRet)).FzContentRowid == uintptr(0)) { - (*Fts5Config)(unsafe.Pointer(pRet)).FzContentRowid = sqlite3Fts5Strndup(tls, bp+40 /* &rc */, ts+14757 /* "rowid" */, -1) + (*Fts5Config)(unsafe.Pointer(pRet)).FzContentRowid = sqlite3Fts5Strndup(tls, bp+40 /* &rc */, ts+14767 /* "rowid" */, -1) } // Formulate the zContentExprlist text @@ -173500,7 +174362,7 @@ func sqlite3Fts5ConfigFree(tls *libc.TLS, pConfig uintptr) { /* sqlite3.c:217109 if pConfig != 0 { var i int32 if (*Fts5Config)(unsafe.Pointer(pConfig)).FpTok != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*Fts5Config)(unsafe.Pointer(pConfig)).FpTokApi + 4 /* &.xDelete */))))(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).FpTok) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Fts5_tokenizer)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FpTokApi)).FxDelete})).f(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).FpTok) } Xsqlite3_free(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb) Xsqlite3_free(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName) @@ -173529,18 +174391,18 @@ func sqlite3Fts5ConfigDeclareVtab(tls *libc.TLS, pConfig uintptr) int32 { /* sql *(*int32)(unsafe.Pointer(bp + 48 /* rc */)) = SQLITE_OK var zSql uintptr - zSql = sqlite3Fts5Mprintf(tls, bp+48 /* &rc */, ts+32623 /* "CREATE TABLE x(" */, 0) + zSql = sqlite3Fts5Mprintf(tls, bp+48 /* &rc */, ts+32633 /* "CREATE TABLE x(" */, 0) for i = 0; (zSql != 0) && (i < (*Fts5Config)(unsafe.Pointer(pConfig)).FnCol); i++ { var zSep uintptr = func() uintptr { if i == 0 { - return ts + 755 /* "" */ + return ts + 765 /* "" */ } - return ts + 13324 /* ", " */ + return ts + 13334 /* ", " */ }() - zSql = sqlite3Fts5Mprintf(tls, bp+48 /* &rc */, ts+32639 /* "%z%s%Q" */, libc.VaList(bp, zSql, zSep, *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FazCol + uintptr(i)*4)))) + zSql = sqlite3Fts5Mprintf(tls, bp+48 /* &rc */, ts+32649 /* "%z%s%Q" */, libc.VaList(bp, zSql, zSep, *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FazCol + uintptr(i)*4)))) } - zSql = sqlite3Fts5Mprintf(tls, bp+48 /* &rc */, ts+32646, /* "%z, %Q HIDDEN, %..." */ - libc.VaList(bp+24, zSql, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, ts+20497 /* "rank" */)) + zSql = sqlite3Fts5Mprintf(tls, bp+48 /* &rc */, ts+32656, /* "%z, %Q HIDDEN, %..." */ + libc.VaList(bp+24, zSql, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, ts+20507 /* "rank" */)) if zSql != 0 { *(*int32)(unsafe.Pointer(bp + 48 /* rc */)) = Xsqlite3_declare_vtab(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, zSql) @@ -173575,7 +174437,9 @@ func sqlite3Fts5Tokenize(tls *libc.TLS, pConfig uintptr, flags int32, pText uint if pText == uintptr(0) { return SQLITE_OK } - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*Fts5Config)(unsafe.Pointer(pConfig)).FpTokApi + 8 /* &.xTokenize */))))(tls, + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5_tokenizer)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FpTokApi)).FxTokenize})).f(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).FpTok, pCtx, flags, pText, nText, xToken) } @@ -173680,7 +174544,7 @@ func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVa var rc int32 = SQLITE_OK - if 0 == Xsqlite3_stricmp(tls, zKey, ts+32672 /* "pgsz" */) { + if 0 == Xsqlite3_stricmp(tls, zKey, ts+32682 /* "pgsz" */) { var pgsz int32 = 0 if SQLITE_INTEGER == Xsqlite3_value_numeric_type(tls, pVal) { pgsz = Xsqlite3_value_int(tls, pVal) @@ -173690,7 +174554,7 @@ func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVa } else { (*Fts5Config)(unsafe.Pointer(pConfig)).Fpgsz = pgsz } - } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+32677 /* "hashsize" */) { + } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+32687 /* "hashsize" */) { var nHashSize int32 = -1 if SQLITE_INTEGER == Xsqlite3_value_numeric_type(tls, pVal) { nHashSize = Xsqlite3_value_int(tls, pVal) @@ -173700,7 +174564,7 @@ func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVa } else { (*Fts5Config)(unsafe.Pointer(pConfig)).FnHashSize = nHashSize } - } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+32686 /* "automerge" */) { + } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+32696 /* "automerge" */) { var nAutomerge int32 = -1 if SQLITE_INTEGER == Xsqlite3_value_numeric_type(tls, pVal) { nAutomerge = Xsqlite3_value_int(tls, pVal) @@ -173713,7 +174577,7 @@ func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVa } (*Fts5Config)(unsafe.Pointer(pConfig)).FnAutomerge = nAutomerge } - } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+32696 /* "usermerge" */) { + } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+32706 /* "usermerge" */) { var nUsermerge int32 = -1 if SQLITE_INTEGER == Xsqlite3_value_numeric_type(tls, pVal) { nUsermerge = Xsqlite3_value_int(tls, pVal) @@ -173723,7 +174587,7 @@ func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVa } else { (*Fts5Config)(unsafe.Pointer(pConfig)).FnUsermerge = nUsermerge } - } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+32706 /* "crisismerge" */) { + } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+32716 /* "crisismerge" */) { var nCrisisMerge int32 = -1 if SQLITE_INTEGER == Xsqlite3_value_numeric_type(tls, pVal) { nCrisisMerge = Xsqlite3_value_int(tls, pVal) @@ -173739,7 +174603,7 @@ func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVa } (*Fts5Config)(unsafe.Pointer(pConfig)).FnCrisisMerge = nCrisisMerge } - } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+20497 /* "rank" */) { + } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+20507 /* "rank" */) { var zIn uintptr = Xsqlite3_value_text(tls, pVal) // var zRank uintptr at bp, 4 @@ -173766,7 +174630,7 @@ func sqlite3Fts5ConfigLoad(tls *libc.TLS, pConfig uintptr, iCookie int32) int32 bp := tls.Alloc(44) defer tls.Free(44) - var zSelect uintptr = ts + 32718 /* "SELECT k, v FROM..." */ + var zSelect uintptr = ts + 32728 /* "SELECT k, v FROM..." */ var zSql uintptr *(*uintptr)(unsafe.Pointer(bp + 36 /* p */)) = uintptr(0) *(*int32)(unsafe.Pointer(bp + 32 /* rc */)) = SQLITE_OK @@ -173789,7 +174653,7 @@ func sqlite3Fts5ConfigLoad(tls *libc.TLS, pConfig uintptr, iCookie int32) int32 for SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 36 /* p */))) { var zK uintptr = Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 36 /* p */)), 0) var pVal uintptr = Xsqlite3_column_value(tls, *(*uintptr)(unsafe.Pointer(bp + 36 /* p */)), 1) - if 0 == Xsqlite3_stricmp(tls, zK, ts+32750 /* "version" */) { + if 0 == Xsqlite3_stricmp(tls, zK, ts+32760 /* "version" */) { iVersion = Xsqlite3_value_int(tls, pVal) } else { *(*int32)(unsafe.Pointer(bp + 40 /* bDummy */)) = 0 @@ -173804,7 +174668,7 @@ func sqlite3Fts5ConfigLoad(tls *libc.TLS, pConfig uintptr, iCookie int32) int32 if (*Fts5Config)(unsafe.Pointer(pConfig)).FpzErrmsg != 0 { *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FpzErrmsg)) = Xsqlite3_mprintf(tls, - ts+32758, /* "invalid fts5 fil..." */ + ts+32768, /* "invalid fts5 fil..." */ libc.VaList(bp+16, iVersion, FTS5_CURRENT_VERSION)) } } @@ -173833,12 +174697,12 @@ func sqlite3Fts5ConfigLoad(tls *libc.TLS, pConfig uintptr, iCookie int32) int32 // All token types in the generated fts5parse.h file are greater than 0. type Fts5ExprTerm1 = struct { - FbPrefix U8 - FbFirst U8 - _ [2]byte - FzTerm uintptr - FpIter uintptr - FpSynonym uintptr + FbPrefix U8 + FbFirst U8 + F__ccgo_pad1 [2]byte + FzTerm uintptr + FpIter uintptr + FpSynonym uintptr } /* sqlite3.c:213118:9 */ // 2014 May 31 @@ -173938,7 +174802,7 @@ func fts5ExprGetToken(tls *libc.TLS, pParse uintptr, pz uintptr, pToken uintptr) } } if int32(*(*int8)(unsafe.Pointer(z2))) == 0 { - sqlite3Fts5ParseError(tls, pParse, ts+32823 /* "unterminated str..." */, 0) + sqlite3Fts5ParseError(tls, pParse, ts+32833 /* "unterminated str..." */, 0) return FTS5_EOF } } @@ -173951,20 +174815,20 @@ func fts5ExprGetToken(tls *libc.TLS, pParse uintptr, pz uintptr, pToken uintptr) { var z2 uintptr if sqlite3Fts5IsBareword(tls, *(*int8)(unsafe.Pointer(z))) == 0 { - sqlite3Fts5ParseError(tls, pParse, ts+32843 /* "fts5: syntax err..." */, libc.VaList(bp, z)) + sqlite3Fts5ParseError(tls, pParse, ts+32853 /* "fts5: syntax err..." */, libc.VaList(bp, z)) return FTS5_EOF } tok = FTS5_STRING for z2 = (z + 1); sqlite3Fts5IsBareword(tls, *(*int8)(unsafe.Pointer(z2))) != 0; z2++ { } (*Fts5Token)(unsafe.Pointer(pToken)).Fn = ((int32(z2) - int32(z)) / 1) - if ((*Fts5Token)(unsafe.Pointer(pToken)).Fn == 2) && (libc.Xmemcmp(tls, (*Fts5Token)(unsafe.Pointer(pToken)).Fp, ts+32874 /* "OR" */, uint32(2)) == 0) { + if ((*Fts5Token)(unsafe.Pointer(pToken)).Fn == 2) && (libc.Xmemcmp(tls, (*Fts5Token)(unsafe.Pointer(pToken)).Fp, ts+32884 /* "OR" */, uint32(2)) == 0) { tok = FTS5_OR } - if ((*Fts5Token)(unsafe.Pointer(pToken)).Fn == 3) && (libc.Xmemcmp(tls, (*Fts5Token)(unsafe.Pointer(pToken)).Fp, ts+32877 /* "NOT" */, uint32(3)) == 0) { + if ((*Fts5Token)(unsafe.Pointer(pToken)).Fn == 3) && (libc.Xmemcmp(tls, (*Fts5Token)(unsafe.Pointer(pToken)).Fp, ts+32887 /* "NOT" */, uint32(3)) == 0) { tok = FTS5_NOT } - if ((*Fts5Token)(unsafe.Pointer(pToken)).Fn == 3) && (libc.Xmemcmp(tls, (*Fts5Token)(unsafe.Pointer(pToken)).Fp, ts+28285 /* "AND" */, uint32(3)) == 0) { + if ((*Fts5Token)(unsafe.Pointer(pToken)).Fn == 3) && (libc.Xmemcmp(tls, (*Fts5Token)(unsafe.Pointer(pToken)).Fp, ts+28295 /* "AND" */, uint32(3)) == 0) { tok = FTS5_AND } break @@ -175284,7 +176148,9 @@ func fts5ExprNodeNext_OR(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid if (*Fts5ExprNode)(unsafe.Pointer(p1)).FbEof == 0 { if ((*Fts5ExprNode)(unsafe.Pointer(p1)).FiRowid == iLast) || ((bFromValid != 0) && (fts5RowidCmp(tls, pExpr, (*Fts5ExprNode)(unsafe.Pointer(p1)).FiRowid, iFrom) < 0)) { - var rc int32 = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((p1 + 12 /* &.xNext */))))(tls, pExpr, p1, bFromValid, iFrom) + var rc int32 = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((p1))).FxNext})).f(tls, pExpr, p1, bFromValid, iFrom) if rc != SQLITE_OK { (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbNomatch = 0 return rc @@ -175312,7 +176178,9 @@ func fts5ExprNodeTest_AND(tls *libc.TLS, pExpr uintptr, pAnd uintptr) int32 { /* var cmp int32 = fts5RowidCmp(tls, pExpr, iLast, (*Fts5ExprNode)(unsafe.Pointer(pChild)).FiRowid) if cmp > 0 { // Advance pChild until it points to iLast or laster - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((pChild + 12 /* &.xNext */))))(tls, pExpr, pChild, 1, iLast) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((pChild))).FxNext})).f(tls, pExpr, pChild, 1, iLast) if rc != SQLITE_OK { (*Fts5ExprNode)(unsafe.Pointer(pAnd)).FbNomatch = 0 return rc @@ -175347,7 +176215,9 @@ func fts5ExprNodeTest_AND(tls *libc.TLS, pExpr uintptr, pAnd uintptr) int32 { /* } func fts5ExprNodeNext_AND(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:218749:12: */ - var rc int32 = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */))) + 12 /* &.xNext */))))(tls, pExpr, *(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */))), bFromValid, iFrom) + var rc int32 = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */)))))).FxNext})).f(tls, pExpr, *(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */))), bFromValid, iFrom) if rc == SQLITE_OK { rc = fts5ExprNodeTest_AND(tls, pExpr, pNode) } else { @@ -175364,14 +176234,18 @@ func fts5ExprNodeTest_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { / for (rc == SQLITE_OK) && ((*Fts5ExprNode)(unsafe.Pointer(p1)).FbEof == 0) { var cmp int32 = fts5NodeCompare(tls, pExpr, p1, p2) if cmp > 0 { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((p2 + 12 /* &.xNext */))))(tls, pExpr, p2, 1, (*Fts5ExprNode)(unsafe.Pointer(p1)).FiRowid) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((p2))).FxNext})).f(tls, pExpr, p2, 1, (*Fts5ExprNode)(unsafe.Pointer(p1)).FiRowid) cmp = fts5NodeCompare(tls, pExpr, p1, p2) } if (cmp != 0) || ((*Fts5ExprNode)(unsafe.Pointer(p2)).FbNomatch != 0) { break } - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((p1 + 12 /* &.xNext */))))(tls, pExpr, p1, 0, int64(0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((p1))).FxNext})).f(tls, pExpr, p1, 0, int64(0)) } (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbEof = (*Fts5ExprNode)(unsafe.Pointer(p1)).FbEof (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbNomatch = (*Fts5ExprNode)(unsafe.Pointer(p1)).FbNomatch @@ -175383,7 +176257,9 @@ func fts5ExprNodeTest_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { / } func fts5ExprNodeNext_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:218792:12: */ - var rc int32 = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */))) + 12 /* &.xNext */))))(tls, pExpr, *(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */))), bFromValid, iFrom) + var rc int32 = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */)))))).FxNext})).f(tls, pExpr, *(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */))), bFromValid, iFrom) if rc == SQLITE_OK { rc = fts5ExprNodeTest_NOT(tls, pExpr, pNode) } @@ -175524,13 +176400,17 @@ func sqlite3Fts5ExprFirst(tls *libc.TLS, p uintptr, pIdx uintptr, iFirst I64, bD if ((rc == SQLITE_OK) && (0 == (*Fts5ExprNode)(unsafe.Pointer(pRoot)).FbEof)) && (fts5RowidCmp(tls, p, (*Fts5ExprNode)(unsafe.Pointer(pRoot)).FiRowid, iFirst) < 0) { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((pRoot + 12 /* &.xNext */))))(tls, p, pRoot, 1, iFirst) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((pRoot))).FxNext})).f(tls, p, pRoot, 1, iFirst) } // If the iterator is not at a real match, skip forward until it is. for ((*Fts5ExprNode)(unsafe.Pointer(pRoot)).FbNomatch != 0) && (rc == SQLITE_OK) { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((pRoot + 12 /* &.xNext */))))(tls, p, pRoot, 0, int64(0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((pRoot))).FxNext})).f(tls, p, pRoot, 0, int64(0)) } return rc } @@ -175544,7 +176424,9 @@ func sqlite3Fts5ExprNext(tls *libc.TLS, p uintptr, iLast I64) int32 { /* sqlite3 var pRoot uintptr = (*Fts5Expr)(unsafe.Pointer(p)).FpRoot for ok := true; ok; ok = (*Fts5ExprNode)(unsafe.Pointer(pRoot)).FbNomatch != 0 { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((pRoot + 12 /* &.xNext */))))(tls, p, pRoot, 0, int64(0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((pRoot))).FxNext})).f(tls, p, pRoot, 0, int64(0)) } if fts5RowidCmp(tls, p, (*Fts5ExprNode)(unsafe.Pointer(pRoot)).FiRowid, iLast) > 0 { @@ -175936,9 +176818,9 @@ func sqlite3Fts5ParseNear(tls *libc.TLS, pParse uintptr, pTok uintptr) { /* sqli bp := tls.Alloc(16) defer tls.Free(16) - if ((*Fts5Token)(unsafe.Pointer(pTok)).Fn != 4) || (libc.Xmemcmp(tls, ts+32881 /* "NEAR" */, (*Fts5Token)(unsafe.Pointer(pTok)).Fp, uint32(4)) != 0) { + if ((*Fts5Token)(unsafe.Pointer(pTok)).Fn != 4) || (libc.Xmemcmp(tls, ts+32891 /* "NEAR" */, (*Fts5Token)(unsafe.Pointer(pTok)).Fp, uint32(4)) != 0) { sqlite3Fts5ParseError(tls, - pParse, ts+31910 /* "fts5: syntax err..." */, libc.VaList(bp, (*Fts5Token)(unsafe.Pointer(pTok)).Fn, (*Fts5Token)(unsafe.Pointer(pTok)).Fp)) + pParse, ts+31920 /* "fts5: syntax err..." */, libc.VaList(bp, (*Fts5Token)(unsafe.Pointer(pTok)).Fn, (*Fts5Token)(unsafe.Pointer(pTok)).Fp)) } } @@ -175954,7 +176836,7 @@ func sqlite3Fts5ParseSetDistance(tls *libc.TLS, pParse uintptr, pNear uintptr, p var c int8 = *(*int8)(unsafe.Pointer((*Fts5Token)(unsafe.Pointer(p)).Fp + uintptr(i))) if (int32(c) < '0') || (int32(c) > '9') { sqlite3Fts5ParseError(tls, - pParse, ts+32886 /* "expected integer..." */, libc.VaList(bp, (*Fts5Token)(unsafe.Pointer(p)).Fn, (*Fts5Token)(unsafe.Pointer(p)).Fp)) + pParse, ts+32896 /* "expected integer..." */, libc.VaList(bp, (*Fts5Token)(unsafe.Pointer(p)).Fn, (*Fts5Token)(unsafe.Pointer(p)).Fp)) return } nNear = ((nNear * 10) + (int32(*(*int8)(unsafe.Pointer((*Fts5Token)(unsafe.Pointer(p)).Fp + uintptr(i)))) - '0')) @@ -176051,7 +176933,7 @@ func sqlite3Fts5ParseColset(tls *libc.TLS, pParse uintptr, pColset uintptr, p ui } } if iCol == (*Fts5Config)(unsafe.Pointer(pConfig)).FnCol { - sqlite3Fts5ParseError(tls, pParse, ts+18880 /* "no such column: ..." */, libc.VaList(bp, z)) + sqlite3Fts5ParseError(tls, pParse, ts+18890 /* "no such column: ..." */, libc.VaList(bp, z)) } else { pRet = fts5ParseColset(tls, pParse, pColset, iCol) } @@ -176147,7 +177029,7 @@ func sqlite3Fts5ParseSetColset(tls *libc.TLS, pParse uintptr, pExpr uintptr, pCo if (*Fts5Config)(unsafe.Pointer((*Fts5Parse)(unsafe.Pointer(pParse)).FpConfig)).FeDetail == FTS5_DETAIL_NONE { (*Fts5Parse)(unsafe.Pointer(pParse)).Frc = SQLITE_ERROR (*Fts5Parse)(unsafe.Pointer(pParse)).FzErr = Xsqlite3_mprintf(tls, - ts+32915 /* "fts5: column que..." */, 0) + ts+32925 /* "fts5: column que..." */, 0) } else { fts5ParseSetColset(tls, pParse, pExpr, pColset, bp /* &pFree */) } @@ -176331,12 +177213,12 @@ func sqlite3Fts5ParseNode(tls *libc.TLS, pParse uintptr, eType int32, pLeft uint (*Fts5Parse)(unsafe.Pointer(pParse)).Frc = SQLITE_ERROR (*Fts5Parse)(unsafe.Pointer(pParse)).FzErr = Xsqlite3_mprintf(tls, - ts+32968, /* "fts5: %s queries..." */ + ts+32978, /* "fts5: %s queries..." */ libc.VaList(bp, func() uintptr { if (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FnPhrase == 1 { - return ts + 33018 /* "phrase" */ + return ts + 33028 /* "phrase" */ } - return ts + 32881 /* "NEAR" */ + return ts + 32891 /* "NEAR" */ }())) Xsqlite3_free(tls, pRet) pRet = uintptr(0) @@ -177606,7 +178488,7 @@ type Fts5Iter1 = struct { FnSeg int32 FbRev int32 FbSkipEmpty U8 - _ [3]byte + F__ccgo_pad1 [3]byte FiSwitchRowid I64 FaFirst uintptr FaSeg [1]Fts5SegIter @@ -177642,7 +178524,7 @@ type Fts5SegIter1 = struct { FiRowid I64 FnPos int32 FbDel U8 - _ [3]byte + F__ccgo_pad1 [3]byte } /* sqlite3.c:221314:9 */ type Fts5SegIter = Fts5SegIter1 /* sqlite3.c:221316:28 */ @@ -177662,7 +178544,7 @@ type Fts5SegWriter1 = struct { FbFirstRowidInDoclist U8 FbFirstRowidInPage U8 FbFirstTermInPage U8 - _ [1]byte + F__ccgo_pad1 [1]byte FnLeafWritten int32 FnEmpty int32 FnDlidx int32 @@ -177697,9 +178579,9 @@ type Fts5StructureSegment1 = struct { type Fts5StructureSegment = Fts5StructureSegment1 /* sqlite3.c:221321:37 */ type Fts5CResult1 = struct { - FiFirst U16 - FbTermEq U8 - _ [1]byte + FiFirst U16 + FbTermEq U8 + F__ccgo_pad1 [1]byte } /* sqlite3.c:221314:9 */ type Fts5CResult = Fts5CResult1 /* sqlite3.c:221431:28 */ @@ -177806,7 +178688,7 @@ func fts5DataRead(tls *libc.TLS, p uintptr, iRowid I64) uintptr { /* sqlite3.c:2 if ((*Fts5Index)(unsafe.Pointer(p)).FpReader == uintptr(0)) && (rc == SQLITE_OK) { var pConfig uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpConfig rc = Xsqlite3_blob_open(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, - (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Index)(unsafe.Pointer(p)).FzDataTbl, ts+33025 /* "block" */, iRowid, 0, (p + 36 /* &.pReader */)) + (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Index)(unsafe.Pointer(p)).FzDataTbl, ts+33035 /* "block" */, iRowid, 0, (p + 36 /* &.pReader */)) } // If either of the sqlite3_blob_open() or sqlite3_blob_reopen() calls @@ -177894,7 +178776,7 @@ func fts5DataWrite(tls *libc.TLS, p uintptr, iRowid I64, pData uintptr, nData in if (*Fts5Index)(unsafe.Pointer(p)).FpWriter == uintptr(0) { var pConfig uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpConfig fts5IndexPrepareStmt(tls, p, (p + 40 /* &.pWriter */), Xsqlite3_mprintf(tls, - ts+33031, /* "REPLACE INTO '%q..." */ + ts+33041, /* "REPLACE INTO '%q..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName))) if (*Fts5Index)(unsafe.Pointer(p)).Frc != 0 { return @@ -177922,7 +178804,7 @@ func fts5DataDelete(tls *libc.TLS, p uintptr, iFirst I64, iLast I64) { /* sqlite if (*Fts5Index)(unsafe.Pointer(p)).FpDeleter == uintptr(0) { var pConfig uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpConfig var zSql uintptr = Xsqlite3_mprintf(tls, - ts+33082, /* "DELETE FROM '%q'..." */ + ts+33092, /* "DELETE FROM '%q'..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) if fts5IndexPrepareStmt(tls, p, (p+44 /* &.pDeleter */), zSql) != 0 { return @@ -177946,7 +178828,7 @@ func fts5DataRemoveSegment(tls *libc.TLS, p uintptr, iSegid int32) { /* sqlite3. if (*Fts5Index)(unsafe.Pointer(p)).FpIdxDeleter == uintptr(0) { var pConfig uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpConfig fts5IndexPrepareStmt(tls, p, (p + 52 /* &.pIdxDeleter */), Xsqlite3_mprintf(tls, - ts+33131, /* "DELETE FROM '%q'..." */ + ts+33141, /* "DELETE FROM '%q'..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName))) } if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { @@ -178154,7 +179036,7 @@ func fts5IndexDataVersion(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:222059:12 if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { if (*Fts5Index)(unsafe.Pointer(p)).FpDataVersion == uintptr(0) { (*Fts5Index)(unsafe.Pointer(p)).Frc = fts5IndexPrepareStmt(tls, p, (p + 64 /* &.pDataVersion */), - Xsqlite3_mprintf(tls, ts+33171 /* "PRAGMA %Q.data_v..." */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer((*Fts5Index)(unsafe.Pointer(p)).FpConfig)).FzDb))) + Xsqlite3_mprintf(tls, ts+33181 /* "PRAGMA %Q.data_v..." */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer((*Fts5Index)(unsafe.Pointer(p)).FpConfig)).FzDb))) if (*Fts5Index)(unsafe.Pointer(p)).Frc != 0 { return int64(0) } @@ -179589,7 +180471,7 @@ func fts5IdxSelectStmt(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:223398:2 var pConfig uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpConfig fts5IndexPrepareStmt(tls, p, (p + 56 /* &.pIdxSelect */), Xsqlite3_mprintf(tls, - ts+33194, /* "SELECT pgno FROM..." */ + ts+33204, /* "SELECT pgno FROM..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName))) } return (*Fts5Index)(unsafe.Pointer(p)).FpIdxSelect @@ -179855,7 +180737,9 @@ func fts5SegIterNextFrom(tls *libc.TLS, p uintptr, pIter uintptr, iMatch I64) { for ok := true; ok; ok = ((*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK) { if (bMove != 0) && ((*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK) { - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pIter + 28 /* &.xNext */))))(tls, p, pIter, uintptr(0)) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5SegIter)(unsafe.Pointer(pIter)).FxNext})).f(tls, p, pIter, uintptr(0)) } if (*Fts5SegIter)(unsafe.Pointer(pIter)).FpLeaf == uintptr(0) { break @@ -179889,7 +180773,9 @@ func fts5MultiIterAdvanced(tls *libc.TLS, p uintptr, pIter uintptr, iChanged int if libc.AssignInt32(&iEq, fts5MultiIterDoCompare(tls, pIter, i)) != 0 { var pSeg uintptr = ((pIter + 68 /* &.aSeg */) + uintptr(iEq)*92) - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pSeg + 28 /* &.xNext */))))(tls, p, pSeg, uintptr(0)) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5SegIter)(unsafe.Pointer(pSeg)).FxNext})).f(tls, p, pSeg, uintptr(0)) i = ((*Fts5Iter)(unsafe.Pointer(pIter)).FnSeg + iEq) } } @@ -179968,7 +180854,9 @@ func fts5MultiIterNext(tls *libc.TLS, p uintptr, pIter uintptr, bFrom int32, iFr if (bUseFrom != 0) && ((*Fts5SegIter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)))).FpDlidx != 0) { fts5SegIterNextFrom(tls, p, *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)), iFrom) } else { - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)) + 28 /* &.xNext */))))(tls, p, *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)), bp /* &bNewTerm */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5SegIter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)))).FxNext})).f(tls, p, *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)), bp /* &bNewTerm */) } if (((*Fts5SegIter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)))).FpLeaf == uintptr(0)) || (*(*int32)(unsafe.Pointer(bp /* bNewTerm */)) != 0)) || @@ -179982,7 +180870,9 @@ func fts5MultiIterNext(tls *libc.TLS, p uintptr, pIter uintptr, bFrom int32, iFr } if (int32((*Fts5Iter)(unsafe.Pointer(pIter)).FbSkipEmpty) == 0) || ((*Fts5SegIter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)))).FnPos != 0) { - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pIter + 40 /* &.xSetOutputs */))))(tls, pIter, *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */))) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Iter)(unsafe.Pointer(pIter)).FxSetOutputs})).f(tls, pIter, *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */))) return } bUseFrom = 0 @@ -180000,7 +180890,9 @@ func fts5MultiIterNext2(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintp *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)) = ((pIter + 68 /* &.aSeg */) + uintptr(iFirst)*92) *(*int32)(unsafe.Pointer(bp /* bNewTerm */)) = 0 - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)) + 28 /* &.xNext */))))(tls, p, *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)), bp /* &bNewTerm */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5SegIter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)))).FxNext})).f(tls, p, *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)), bp /* &bNewTerm */) if (((*Fts5SegIter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)))).FpLeaf == uintptr(0)) || (*(*int32)(unsafe.Pointer(bp /* bNewTerm */)) != 0)) || (fts5MultiIterAdvanceRowid(tls, pIter, iFirst, bp+4 /* &pSeg */) != 0) { fts5MultiIterAdvanced(tls, p, pIter, iFirst, 1) @@ -180202,7 +181094,9 @@ func fts5ChunkIterate(tls *libc.TLS, p uintptr, pSeg uintptr, pCtx uintptr, xChu } for 1 != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32))(unsafe.Pointer(&xChunk)))(tls, p, pCtx, pChunk, nChunk) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{xChunk})).f(tls, p, pCtx, pChunk, nChunk) nRem = nRem - (nChunk) fts5DataRelease(tls, pData) if nRem <= 0 { @@ -180604,7 +181498,9 @@ func fts5MultiIterNew(tls *libc.TLS, p uintptr, pStruct uintptr, flags int32, pC if libc.AssignInt32(&iEq, fts5MultiIterDoCompare(tls, pNew, iIter)) != 0 { var pSeg uintptr = ((pNew + 68 /* &.aSeg */) + uintptr(iEq)*92) if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pSeg + 28 /* &.xNext */))))(tls, p, pSeg, uintptr(0)) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5SegIter)(unsafe.Pointer(pSeg)).FxNext})).f(tls, p, pSeg, uintptr(0)) } fts5MultiIterAdvanced(tls, p, pNew, iEq, iIter) } @@ -180615,7 +181511,9 @@ func fts5MultiIterNew(tls *libc.TLS, p uintptr, pStruct uintptr, flags int32, pC fts5MultiIterNext(tls, p, pNew, 0, int64(0)) } else if int32((*Fts5Iter)(unsafe.Pointer(pNew)).Fbase.FbEof) == 0 { var pSeg uintptr = ((pNew + 68 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(pNew)).FaFirst+1*4)).FiFirst)*92) - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pNew + 40 /* &.xSetOutputs */))))(tls, pNew, pSeg) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Iter)(unsafe.Pointer(pNew)).FxSetOutputs})).f(tls, pNew, pSeg) } } else { @@ -180845,7 +181743,7 @@ func fts5WriteFlushBtree(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3 if (*Fts5SegWriter)(unsafe.Pointer(pWriter)).Fbtterm.Fn > 0 { return (*Fts5SegWriter)(unsafe.Pointer(pWriter)).Fbtterm.Fp } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }() // The following was already done in fts5WriteInit(): // sqlite3_bind_int(p->pIdxWriter, 1, pWriter->iSegid); @@ -181186,7 +182084,7 @@ func fts5WriteInit(tls *libc.TLS, p uintptr, pWriter uintptr, iSegid int32) { /* if (*Fts5Index)(unsafe.Pointer(p)).FpIdxWriter == uintptr(0) { var pConfig uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpConfig fts5IndexPrepareStmt(tls, p, (p + 48 /* &.pIdxWriter */), Xsqlite3_mprintf(tls, - ts+33278, /* "INSERT INTO '%q'..." */ + ts+33288, /* "INSERT INTO '%q'..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName))) } @@ -182268,9 +183166,13 @@ func fts5SetupPrefixIter(tls *libc.TLS, p uintptr, bDesc int32, iIdx int32, pTok fts5IterSetOutputCb(tls, (p + 32 /* &.rc */), *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */))) for ; fts5MultiIterEof(tls, p, *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */))) == 0; fts5MultiIterNext2(tls, p, *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), bp+16 /* &dummy */) { var pSeg uintptr = ((*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)) + 68 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).FaFirst+1*4)).FiFirst)*92) - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)) + 40 /* &.xSetOutputs */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), pSeg) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).FxSetOutputs})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), pSeg) if (*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).Fbase.FnData != 0 { - (*(*func(*libc.TLS, uintptr, I64, uintptr, uintptr))(unsafe.Pointer(&xAppend)))(tls, p, ((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).Fbase.FiRowid - iLastRowid), *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), bp /* &doclist */) + (*struct { + f func(*libc.TLS, uintptr, I64, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{xAppend})).f(tls, p, ((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).Fbase.FiRowid - iLastRowid), *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), bp /* &doclist */) iLastRowid = (*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).Fbase.FiRowid } } @@ -182284,7 +183186,9 @@ func fts5SetupPrefixIter(tls *libc.TLS, p uintptr, bDesc int32, iIdx int32, pTok var pSeg uintptr = ((*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)) + 68 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).FaFirst+1*4)).FiFirst)*92) var nTerm int32 = (*Fts5SegIter)(unsafe.Pointer(pSeg)).Fterm.Fn var pTerm uintptr = (*Fts5SegIter)(unsafe.Pointer(pSeg)).Fterm.Fp - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)) + 40 /* &.xSetOutputs */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), pSeg) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).FxSetOutputs})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), pSeg) if *(*int32)(unsafe.Pointer(bp + 20 /* bNewTerm */)) != 0 { if (nTerm < nToken) || (libc.Xmemcmp(tls, pToken, pTerm, uint32(nToken)) != 0) { @@ -182309,7 +183213,9 @@ func fts5SetupPrefixIter(tls *libc.TLS, p uintptr, bDesc int32, iIdx int32, pTok } } if iStore == (i1 + nMerge) { - (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(&xMerge)))(tls, p, bp /* &doclist */, nMerge, (aBuf + uintptr(i1)*12)) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{xMerge})).f(tls, p, bp /* &doclist */, nMerge, (aBuf + uintptr(i1)*12)) for iStore = i1; iStore < (i1 + nMerge); iStore++ { sqlite3Fts5BufferZero(tls, (aBuf + uintptr(iStore)*12)) } @@ -182318,14 +183224,18 @@ func fts5SetupPrefixIter(tls *libc.TLS, p uintptr, bDesc int32, iIdx int32, pTok iLastRowid = int64(0) } - (*(*func(*libc.TLS, uintptr, I64, uintptr, uintptr))(unsafe.Pointer(&xAppend)))(tls, p, ((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).Fbase.FiRowid - iLastRowid), *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), bp /* &doclist */) + (*struct { + f func(*libc.TLS, uintptr, I64, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{xAppend})).f(tls, p, ((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).Fbase.FiRowid - iLastRowid), *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), bp /* &doclist */) iLastRowid = (*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).Fbase.FiRowid } for i = 0; i < nBuf; i = i + (nMerge) { var iFree int32 if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(&xMerge)))(tls, p, bp /* &doclist */, nMerge, (aBuf + uintptr(i)*12)) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{xMerge})).f(tls, p, bp /* &doclist */, nMerge, (aBuf + uintptr(i)*12)) } for iFree = i; iFree < (i + nMerge); iFree++ { sqlite3Fts5BufferFree(tls, (aBuf + uintptr(iFree)*12)) @@ -182402,7 +183312,7 @@ func sqlite3Fts5IndexReinit(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:22636 fts5StructureInvalidate(tls, p) fts5IndexDiscardData(tls, p) libc.Xmemset(tls, bp /* &s */, 0, uint32(unsafe.Sizeof(Fts5Structure{}))) - fts5DataWrite(tls, p, int64(FTS5_AVERAGES_ROWID), ts+755 /* "" */, 0) + fts5DataWrite(tls, p, int64(FTS5_AVERAGES_ROWID), ts+765 /* "" */, 0) fts5StructureWrite(tls, p, bp /* &s */) return fts5IndexReturn(tls, p) } @@ -182423,13 +183333,13 @@ func sqlite3Fts5IndexOpen(tls *libc.TLS, pConfig uintptr, bCreate int32, pp uint if *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) == SQLITE_OK { (*Fts5Index)(unsafe.Pointer(p)).FpConfig = pConfig (*Fts5Index)(unsafe.Pointer(p)).FnWorkUnit = FTS5_WORK_UNIT - (*Fts5Index)(unsafe.Pointer(p)).FzDataTbl = sqlite3Fts5Mprintf(tls, bp+8 /* &rc */, ts+33335 /* "%s_data" */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) + (*Fts5Index)(unsafe.Pointer(p)).FzDataTbl = sqlite3Fts5Mprintf(tls, bp+8 /* &rc */, ts+33345 /* "%s_data" */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) if ((*Fts5Index)(unsafe.Pointer(p)).FzDataTbl != 0) && (bCreate != 0) { *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) = sqlite3Fts5CreateTable(tls, - pConfig, ts+23316 /* "data" */, ts+33343 /* "id INTEGER PRIMA..." */, 0, pzErr) + pConfig, ts+23326 /* "data" */, ts+33353 /* "id INTEGER PRIMA..." */, 0, pzErr) if *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) == SQLITE_OK { - *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) = sqlite3Fts5CreateTable(tls, pConfig, ts+10212, /* "idx" */ - ts+33378, /* "segid, term, pgn..." */ + *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) = sqlite3Fts5CreateTable(tls, pConfig, ts+10222, /* "idx" */ + ts+33388, /* "segid, term, pgn..." */ 1, pzErr) } if *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) == SQLITE_OK { @@ -182598,7 +183508,9 @@ func sqlite3Fts5IndexQuery(tls *libc.TLS, p uintptr, pToken uintptr, nToken int3 if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { var pSeg uintptr = ((*(*uintptr)(unsafe.Pointer(bp + 12 /* pRet */)) + 68 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* pRet */)))).FaFirst+1*4)).FiFirst)*92) if (*Fts5SegIter)(unsafe.Pointer(pSeg)).FpLeaf != 0 { - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 12 /* pRet */)) + 40 /* &.xSetOutputs */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 12 /* pRet */)), pSeg) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* pRet */)))).FxSetOutputs})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 12 /* pRet */)), pSeg) } } } @@ -182735,7 +183647,7 @@ func sqlite3Fts5IndexSetCookie(tls *libc.TLS, p uintptr, iNew int32) int32 { /* sqlite3Fts5Put32(tls, bp /* &aCookie[0] */, iNew) rc = Xsqlite3_blob_open(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Index)(unsafe.Pointer(p)).FzDataTbl, - ts+33025 /* "block" */, int64(FTS5_STRUCTURE_ROWID), 1, bp+4 /* &pBlob */) + ts+33035 /* "block" */, int64(FTS5_STRUCTURE_ROWID), 1, bp+4 /* &pBlob */) if rc == SQLITE_OK { Xsqlite3_blob_write(tls, *(*uintptr)(unsafe.Pointer(bp + 4 /* pBlob */)), bp /* &aCookie[0] */, 4, 0) rc = Xsqlite3_blob_close(tls, *(*uintptr)(unsafe.Pointer(bp + 4 /* pBlob */))) @@ -182872,7 +183784,7 @@ func fts5IndexIntegrityCheckSegment(tls *libc.TLS, p uintptr, pSeg uintptr) { /* fts5IndexPrepareStmt(tls, p, bp+24 /* &pStmt */, Xsqlite3_mprintf(tls, - ts+33422, /* "SELECT segid, te..." */ + ts+33432, /* "SELECT segid, te..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, (*Fts5StructureSegment)(unsafe.Pointer(pSeg)).FiSegid))) // Iterate through the b-tree hierarchy. @@ -183082,7 +183994,7 @@ func sqlite3Fts5IndexIntegrityCheck(tls *libc.TLS, p uintptr, cksum U64, bUseCks } else { (*Fts5Buffer)(unsafe.Pointer(bp + 8 /* &poslist */)).Fn = 0 fts5SegiterPoslist(tls, p, ((*(*uintptr)(unsafe.Pointer(bp /* pIter */)) + 68 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pIter */)))).FaFirst+1*4)).FiFirst)*92), uintptr(0), bp+8 /* &poslist */) - sqlite3Fts5BufferAppendBlob(tls, (p + 32 /* &.rc */), bp+8 /* &poslist */, uint32(4), ts+33508 /* "\x00\x00\x00\x00" */) + sqlite3Fts5BufferAppendBlob(tls, (p + 32 /* &.rc */), bp+8 /* &poslist */, uint32(4), ts+33518 /* "\x00\x00\x00\x00" */) for 0 == sqlite3Fts5PoslistNext64(tls, (*Fts5Buffer)(unsafe.Pointer(bp+8 /* &poslist */)).Fp, (*Fts5Buffer)(unsafe.Pointer(bp+8 /* &poslist */)).Fn, bp+20 /* &iOff */, bp+24 /* &iPos */) { var iCol int32 = (int32(*(*I64)(unsafe.Pointer(bp + 24 /* iPos */)) >> 32)) var iTokOff int32 = (int32(*(*I64)(unsafe.Pointer(bp + 24 /* iPos */)) & int64(0x7FFFFFFF))) @@ -183490,7 +184402,7 @@ func fts5BestIndexMethod(tls *libc.TLS, pVTab uintptr, pInfo uintptr) int32 { /* if (*Fts5Config)(unsafe.Pointer(pConfig)).FbLock != 0 { (*Fts5Table)(unsafe.Pointer(pTab)).Fbase.FzErrMsg = Xsqlite3_mprintf(tls, - ts+33513 /* "recursively defi..." */, 0) + ts+33523 /* "recursively defi..." */, 0) return SQLITE_ERROR } @@ -183524,7 +184436,7 @@ func fts5BestIndexMethod(tls *libc.TLS, pVTab uintptr, pInfo uintptr) int32 { /* } else if iCol >= 0 { bSeenMatch = 1 *(*int8)(unsafe.Pointer(idxStr + uintptr(libc.PostIncInt32(&iIdxStr, 1)))) = int8('M') - Xsqlite3_snprintf(tls, 6, (idxStr + uintptr(iIdxStr)), ts+4089 /* "%d" */, libc.VaList(bp, iCol)) + Xsqlite3_snprintf(tls, 6, (idxStr + uintptr(iIdxStr)), ts+4099 /* "%d" */, libc.VaList(bp, iCol)) idxStr += uintptr(libc.Xstrlen(tls, (idxStr + uintptr(iIdxStr)))) } @@ -183540,7 +184452,7 @@ func fts5BestIndexMethod(tls *libc.TLS, pVTab uintptr, pInfo uintptr) int32 { /* } return int8('G') }() - Xsqlite3_snprintf(tls, 6, (idxStr + uintptr(iIdxStr)), ts+4089 /* "%d" */, libc.VaList(bp+8, iCol)) + Xsqlite3_snprintf(tls, 6, (idxStr + uintptr(iIdxStr)), ts+4099 /* "%d" */, libc.VaList(bp+8, iCol)) idxStr += uintptr(libc.Xstrlen(tls, (idxStr + uintptr(iIdxStr)))) (*sqlite3_index_constraint_usage)(unsafe.Pointer((*Sqlite3_index_info)(unsafe.Pointer(pInfo)).FaConstraintUsage + uintptr(i)*8)).FargvIndex = libc.PreIncInt32(&iCons, 1) @@ -183709,7 +184621,7 @@ func fts5FreeCursorComponents(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:228530 for pData = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpAuxdata; pData != 0; pData = pNext { pNext = (*Fts5Auxdata)(unsafe.Pointer(pData)).FpNext if (*Fts5Auxdata)(unsafe.Pointer(pData)).FxDelete != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pData + 8 /* &.xDelete */))))(tls, (*Fts5Auxdata)(unsafe.Pointer(pData)).FpPtr) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Auxdata)(unsafe.Pointer(pData)).FxDelete})).f(tls, (*Fts5Auxdata)(unsafe.Pointer(pData)).FpPtr) } Xsqlite3_free(tls, pData) } @@ -183883,7 +184795,7 @@ func fts5NextMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:228688: rc = Xsqlite3_reset(tls, (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpStmt) if rc != SQLITE_OK { (*Sqlite3_vtab)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(pCursor)).FpVtab)).FzErrMsg = Xsqlite3_mprintf(tls, - ts+2790 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb))) + ts+2800 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb))) } } else { rc = SQLITE_OK @@ -183915,7 +184827,7 @@ func fts5PrepareStatement(tls *libc.TLS, ppStmt uintptr, pConfig uintptr, zFmt u rc = Xsqlite3_prepare_v3(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, zSql, -1, uint32(SQLITE_PREPARE_PERSISTENT), bp+8 /* &pRet */, uintptr(0)) if rc != SQLITE_OK { - *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FpzErrmsg)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb))) + *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FpzErrmsg)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb))) } Xsqlite3_free(tls, zSql) } @@ -183954,25 +184866,25 @@ func fts5CursorFirstSorted(tls *libc.TLS, pTab uintptr, pCsr uintptr, bDesc int3 // // If SQLite a built-in statement cache, this wouldn't be a problem. rc = fts5PrepareStatement(tls, (pSorter /* &.pStmt */), pConfig, - ts+33552, /* "SELECT rowid, ra..." */ + ts+33562, /* "SELECT rowid, ra..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, zRank, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, func() uintptr { if zRankArgs != 0 { - return ts + 13324 /* ", " */ + return ts + 13334 /* ", " */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), func() uintptr { if zRankArgs != 0 { return zRankArgs } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }(), func() uintptr { if bDesc != 0 { - return ts + 33607 /* "DESC" */ + return ts + 33617 /* "DESC" */ } - return ts + 33612 /* "ASC" */ + return ts + 33622 /* "ASC" */ }())) (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpSorter = pSorter @@ -184023,13 +184935,13 @@ func fts5SpecialMatch(tls *libc.TLS, pTab uintptr, pCsr uintptr, zQuery uintptr) (*Fts5Cursor)(unsafe.Pointer(pCsr)).FePlan = FTS5_PLAN_SPECIAL - if (n == 5) && (0 == Xsqlite3_strnicmp(tls, ts+33616 /* "reads" */, z, n)) { + if (n == 5) && (0 == Xsqlite3_strnicmp(tls, ts+33626 /* "reads" */, z, n)) { (*Fts5Cursor)(unsafe.Pointer(pCsr)).FiSpecial = I64(sqlite3Fts5IndexReads(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.FpIndex)) - } else if (n == 2) && (0 == Xsqlite3_strnicmp(tls, ts+4171 /* "id" */, z, n)) { + } else if (n == 2) && (0 == Xsqlite3_strnicmp(tls, ts+4181 /* "id" */, z, n)) { (*Fts5Cursor)(unsafe.Pointer(pCsr)).FiSpecial = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FiCsrId } else { // An unrecognized directive. Return an error message. - (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.Fbase.FzErrMsg = Xsqlite3_mprintf(tls, ts+33622 /* "unknown special ..." */, libc.VaList(bp, n, z)) + (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.Fbase.FzErrMsg = Xsqlite3_mprintf(tls, ts+33632 /* "unknown special ..." */, libc.VaList(bp, n, z)) rc = SQLITE_ERROR } @@ -184064,7 +184976,7 @@ func fts5FindRankFunction(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:2288 var zRankArgs uintptr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FzRankArgs if zRankArgs != 0 { - var zSql uintptr = sqlite3Fts5Mprintf(tls, bp+16 /* &rc */, ts+33650 /* "SELECT %s" */, libc.VaList(bp, zRankArgs)) + var zSql uintptr = sqlite3Fts5Mprintf(tls, bp+16 /* &rc */, ts+33660 /* "SELECT %s" */, libc.VaList(bp, zRankArgs)) if zSql != 0 { *(*uintptr)(unsafe.Pointer(bp + 20 /* pStmt */)) = uintptr(0) *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) = Xsqlite3_prepare_v3(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, zSql, -1, @@ -184096,7 +185008,7 @@ func fts5FindRankFunction(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:2288 pAux = fts5FindAuxiliary(tls, pTab, zRank) if pAux == uintptr(0) { - (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.Fbase.FzErrMsg = Xsqlite3_mprintf(tls, ts+33660 /* "no such function..." */, libc.VaList(bp+8, zRank)) + (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.Fbase.FzErrMsg = Xsqlite3_mprintf(tls, ts+33670 /* "no such function..." */, libc.VaList(bp+8, zRank)) *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) = SQLITE_ERROR } } @@ -184128,14 +185040,14 @@ func fts5CursorParseRank(tls *libc.TLS, pConfig uintptr, pCsr uintptr, pRank uin *(*int32)(unsafe.Pointer(pCsr + 56 /* &.csrflags */)) |= (FTS5CSR_FREE_ZRANK) } else if rc == SQLITE_ERROR { (*Sqlite3_vtab)(unsafe.Pointer((*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab)).FzErrMsg = Xsqlite3_mprintf(tls, - ts+33681 /* "parse error in r..." */, libc.VaList(bp, z)) + ts+33691 /* "parse error in r..." */, libc.VaList(bp, z)) } } else { if (*Fts5Config)(unsafe.Pointer(pConfig)).FzRank != 0 { (*Fts5Cursor)(unsafe.Pointer(pCsr)).FzRank = (*Fts5Config)(unsafe.Pointer(pConfig)).FzRank (*Fts5Cursor)(unsafe.Pointer(pCsr)).FzRankArgs = (*Fts5Config)(unsafe.Pointer(pConfig)).FzRankArgs } else { - (*Fts5Cursor)(unsafe.Pointer(pCsr)).FzRank = ts + 32064 /* "bm25" */ + (*Fts5Cursor)(unsafe.Pointer(pCsr)).FzRank = ts + 32074 /* "bm25" */ (*Fts5Cursor)(unsafe.Pointer(pCsr)).FzRankArgs = uintptr(0) } } @@ -184201,7 +185113,7 @@ func fts5FilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, idxStr uintp goto __1 } (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.Fbase.FzErrMsg = Xsqlite3_mprintf(tls, - ts+33513 /* "recursively defi..." */, 0) + ts+33523 /* "recursively defi..." */, 0) return SQLITE_ERROR __1: ; @@ -184247,7 +185159,7 @@ __8: if !(zText == uintptr(0)) { goto __14 } - zText = ts + 755 /* "" */ + zText = ts + 765 /* "" */ __14: ; iCol = 0 @@ -184436,7 +185348,7 @@ __35: goto __40 } *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FpzErrmsg)) = Xsqlite3_mprintf(tls, - ts+33714 /* "%s: table does n..." */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) + ts+33724 /* "%s: table does n..." */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) rc = SQLITE_ERROR goto __41 __40: @@ -184573,7 +185485,7 @@ func fts5SeekCursor(tls *libc.TLS, pCsr uintptr, bErrormsg int32) int32 { /* sql rc = (SQLITE_CORRUPT | (int32(1) << 8)) } else if (*Fts5Config)(unsafe.Pointer((*Fts5Table)(unsafe.Pointer(pTab)).FpConfig)).FpzErrmsg != 0 { *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer((*Fts5Table)(unsafe.Pointer(pTab)).FpConfig)).FpzErrmsg)) = Xsqlite3_mprintf(tls, - ts+2790 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer((*Fts5Table)(unsafe.Pointer(pTab)).FpConfig)).Fdb))) + ts+2800 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer((*Fts5Table)(unsafe.Pointer(pTab)).FpConfig)).Fdb))) } } } @@ -184610,29 +185522,29 @@ func fts5SpecialInsert(tls *libc.TLS, pTab uintptr, zCmd uintptr, pVal uintptr) var rc int32 = SQLITE_OK *(*int32)(unsafe.Pointer(bp /* bError */)) = 0 - if 0 == Xsqlite3_stricmp(tls, ts+33750 /* "delete-all" */, zCmd) { + if 0 == Xsqlite3_stricmp(tls, ts+33760 /* "delete-all" */, zCmd) { if (*Fts5Config)(unsafe.Pointer(pConfig)).FeContent == FTS5_CONTENT_NORMAL { fts5SetVtabError(tls, pTab, - ts+33761 /* "'delete-all' may..." */, 0) + ts+33771 /* "'delete-all' may..." */, 0) rc = SQLITE_ERROR } else { rc = sqlite3Fts5StorageDeleteAll(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage) } - } else if 0 == Xsqlite3_stricmp(tls, ts+33841 /* "rebuild" */, zCmd) { + } else if 0 == Xsqlite3_stricmp(tls, ts+33851 /* "rebuild" */, zCmd) { if (*Fts5Config)(unsafe.Pointer(pConfig)).FeContent == FTS5_CONTENT_NONE { fts5SetVtabError(tls, pTab, - ts+33849 /* "'rebuild' may no..." */, 0) + ts+33859 /* "'rebuild' may no..." */, 0) rc = SQLITE_ERROR } else { rc = sqlite3Fts5StorageRebuild(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage) } - } else if 0 == Xsqlite3_stricmp(tls, ts+15428 /* "optimize" */, zCmd) { + } else if 0 == Xsqlite3_stricmp(tls, ts+15438 /* "optimize" */, zCmd) { rc = sqlite3Fts5StorageOptimize(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage) - } else if 0 == Xsqlite3_stricmp(tls, ts+33905 /* "merge" */, zCmd) { + } else if 0 == Xsqlite3_stricmp(tls, ts+33915 /* "merge" */, zCmd) { var nMerge int32 = Xsqlite3_value_int(tls, pVal) rc = sqlite3Fts5StorageMerge(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage, nMerge) - } else if 0 == Xsqlite3_stricmp(tls, ts+33911 /* "integrity-check" */, zCmd) { + } else if 0 == Xsqlite3_stricmp(tls, ts+33921 /* "integrity-check" */, zCmd) { var iArg int32 = Xsqlite3_value_int(tls, pVal) rc = sqlite3Fts5StorageIntegrity(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage, iArg) } else { @@ -184706,7 +185618,7 @@ func fts5UpdateMethod(tls *libc.TLS, pVtab uintptr, nArg int32, apVal uintptr, p // A "special" INSERT op. These are handled separately. var z uintptr = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apVal + uintptr((2+(*Fts5Config)(unsafe.Pointer(pConfig)).FnCol))*4))) if ((*Fts5Config)(unsafe.Pointer(pConfig)).FeContent != FTS5_CONTENT_NORMAL) && - (0 == Xsqlite3_stricmp(tls, ts+15967 /* "delete" */, z)) { + (0 == Xsqlite3_stricmp(tls, ts+15977 /* "delete" */, z)) { *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) = fts5SpecialDelete(tls, pTab, apVal) } else { *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) = fts5SpecialInsert(tls, pTab, z, *(*uintptr)(unsafe.Pointer(apVal + uintptr(((2+(*Fts5Config)(unsafe.Pointer(pConfig)).FnCol)+1))*4))) @@ -184731,12 +185643,12 @@ func fts5UpdateMethod(tls *libc.TLS, pVtab uintptr, nArg int32, apVal uintptr, p // This is not suported. if (eType0 == SQLITE_INTEGER) && (fts5IsContentless(tls, pTab) != 0) { (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.Fbase.FzErrMsg = Xsqlite3_mprintf(tls, - ts+33927, /* "cannot %s conten..." */ + ts+33937, /* "cannot %s conten..." */ libc.VaList(bp, func() uintptr { if nArg > 1 { - return ts + 18781 /* "UPDATE" */ + return ts + 18791 /* "UPDATE" */ } - return ts + 33964 /* "DELETE from" */ + return ts + 33974 /* "DELETE from" */ }(), (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) = SQLITE_ERROR } else if nArg == 1 { @@ -185137,14 +186049,14 @@ func fts5ApiSetAuxdata(tls *libc.TLS, pCtx uintptr, pPtr uintptr, xDelete uintpt if pData != 0 { if (*Fts5Auxdata)(unsafe.Pointer(pData)).FxDelete != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pData + 8 /* &.xDelete */))))(tls, (*Fts5Auxdata)(unsafe.Pointer(pData)).FpPtr) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Auxdata)(unsafe.Pointer(pData)).FxDelete})).f(tls, (*Fts5Auxdata)(unsafe.Pointer(pData)).FpPtr) } } else { *(*int32)(unsafe.Pointer(bp /* rc */)) = SQLITE_OK pData = sqlite3Fts5MallocZero(tls, bp /* &rc */, int64(unsafe.Sizeof(Fts5Auxdata{}))) if pData == uintptr(0) { if xDelete != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDelete)))(tls, pPtr) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDelete})).f(tls, pPtr) } return *(*int32)(unsafe.Pointer(bp /* rc */)) } @@ -185362,7 +186274,9 @@ func fts5ApiQueryPhrase(tls *libc.TLS, pCtx uintptr, iPhrase int32, pUserData ui if rc == SQLITE_OK { for rc = fts5CursorFirst(tls, pTab, *(*uintptr)(unsafe.Pointer(bp /* pNew */)), 0); (rc == SQLITE_OK) && (((*Fts5Cursor)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp /* pNew */))))).Fcsrflags & (FTS5CSR_EOF)) == 0); rc = fts5NextMethod(tls, *(*uintptr)(unsafe.Pointer(bp /* pNew */))) { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(&xCallback)))(tls, uintptr(unsafe.Pointer(&sFts5Api)), *(*uintptr)(unsafe.Pointer(bp /* pNew */)), pUserData) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xCallback})).f(tls, uintptr(unsafe.Pointer(&sFts5Api)), *(*uintptr)(unsafe.Pointer(bp /* pNew */)), pUserData) if rc != SQLITE_OK { if rc == SQLITE_DONE { rc = SQLITE_OK @@ -185379,7 +186293,9 @@ func fts5ApiQueryPhrase(tls *libc.TLS, pCtx uintptr, iPhrase int32, pUserData ui func fts5ApiInvoke(tls *libc.TLS, pAux uintptr, pCsr uintptr, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:230126:13: */ (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpAux = pAux - (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr))(unsafe.Pointer((pAux + 12 /* &.xFunc */))))(tls, uintptr(unsafe.Pointer(&sFts5Api)), pCsr, context, argc, argv) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Auxiliary)(unsafe.Pointer(pAux)).FxFunc})).f(tls, uintptr(unsafe.Pointer(&sFts5Api)), pCsr, context, argc, argv) (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpAux = uintptr(0) } @@ -185406,7 +186322,7 @@ func fts5ApiCallback(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { pCsr = fts5CursorFromCsrid(tls, (*Fts5Auxiliary)(unsafe.Pointer(pAux)).FpGlobal, iCsrId) if (pCsr == uintptr(0)) || ((*Fts5Cursor)(unsafe.Pointer(pCsr)).FePlan == 0) { - var zErr uintptr = Xsqlite3_mprintf(tls, ts+33976 /* "no such cursor: ..." */, libc.VaList(bp, iCsrId)) + var zErr uintptr = Xsqlite3_mprintf(tls, ts+33986 /* "no such cursor: ..." */, libc.VaList(bp, iCsrId)) Xsqlite3_result_error(tls, context, zErr, -1) Xsqlite3_free(tls, zErr) } else { @@ -185711,9 +186627,11 @@ func sqlite3Fts5GetTokenizer(tls *libc.TLS, pGlobal uintptr, azArg uintptr, nArg if pMod == uintptr(0) { rc = SQLITE_ERROR - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+33997 /* "no such tokenize..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(azArg)))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+34007 /* "no such tokenize..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(azArg)))) } else { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pMod + 8 /* &.x */ /* &.xCreate */))))(tls, + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5TokenizerModule)(unsafe.Pointer(pMod)).Fx.FxCreate})).f(tls, (*Fts5TokenizerModule)(unsafe.Pointer(pMod)).FpUserData, func() uintptr { if azArg != 0 { return (azArg + 1*4) @@ -185728,7 +186646,7 @@ func sqlite3Fts5GetTokenizer(tls *libc.TLS, pGlobal uintptr, azArg uintptr, nArg (*Fts5Config)(unsafe.Pointer(pConfig)).FpTokApi = (pMod + 8 /* &.x */) if rc != SQLITE_OK { if pzErr != 0 { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+34019 /* "error in tokeniz..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+34029 /* "error in tokeniz..." */, 0) } } else { (*Fts5Config)(unsafe.Pointer(pConfig)).FePattern = sqlite3Fts5TokenizerPattern(tls, @@ -185754,7 +186672,7 @@ func fts5ModuleDestroy(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:230542:13: */ for pAux = (*Fts5Global)(unsafe.Pointer(pGlobal)).FpAux; pAux != 0; pAux = pNextAux { pNextAux = (*Fts5Auxiliary)(unsafe.Pointer(pAux)).FpNext if (*Fts5Auxiliary)(unsafe.Pointer(pAux)).FxDestroy != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pAux + 16 /* &.xDestroy */))))(tls, (*Fts5Auxiliary)(unsafe.Pointer(pAux)).FpUserData) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Auxiliary)(unsafe.Pointer(pAux)).FxDestroy})).f(tls, (*Fts5Auxiliary)(unsafe.Pointer(pAux)).FpUserData) } Xsqlite3_free(tls, pAux) } @@ -185762,7 +186680,7 @@ func fts5ModuleDestroy(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:230542:13: */ for pTok = (*Fts5Global)(unsafe.Pointer(pGlobal)).FpTok; pTok != 0; pTok = pNextTok { pNextTok = (*Fts5TokenizerModule)(unsafe.Pointer(pTok)).FpNext if (*Fts5TokenizerModule)(unsafe.Pointer(pTok)).FxDestroy != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pTok + 20 /* &.xDestroy */))))(tls, (*Fts5TokenizerModule)(unsafe.Pointer(pTok)).FpUserData) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Fts5TokenizerModule)(unsafe.Pointer(pTok)).FxDestroy})).f(tls, (*Fts5TokenizerModule)(unsafe.Pointer(pTok)).FpUserData) } Xsqlite3_free(tls, pTok) } @@ -185775,7 +186693,7 @@ func fts5Fts5Func(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* s var ppApi uintptr _ = nArg - ppApi = Xsqlite3_value_pointer(tls, *(*uintptr)(unsafe.Pointer(apArg)), ts+34050 /* "fts5_api_ptr" */) + ppApi = Xsqlite3_value_pointer(tls, *(*uintptr)(unsafe.Pointer(apArg)), ts+34060 /* "fts5_api_ptr" */) if ppApi != 0 { *(*uintptr)(unsafe.Pointer(ppApi)) = (pGlobal /* &.api */) } @@ -185786,7 +186704,7 @@ func fts5SourceIdFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apUnused uintptr) _ = nArg _ = apUnused - Xsqlite3_result_text(tls, pCtx, ts+34063 /* "fts5: 2021-06-18..." */, -1, libc.UintptrFromInt32(-1)) + Xsqlite3_result_text(tls, pCtx, ts+34073 /* "fts5: 2021-06-18..." */, -1, libc.UintptrFromInt32(-1)) } // Return true if zName is the extension on one of the shadow tables used @@ -185802,7 +186720,7 @@ func fts5ShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:230592:12 } var azName2 = [5]uintptr{ - ts + 34154 /* "config" */, ts + 32253 /* "content" */, ts + 23316 /* "data" */, ts + 32604 /* "docsize" */, ts + 10212, /* "idx" */ + ts + 34164 /* "config" */, ts + 32263 /* "content" */, ts + 23326 /* "data" */, ts + 32614 /* "docsize" */, ts + 10222, /* "idx" */ } /* sqlite3.c:230593:21 */ func fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:230603:12: */ @@ -185826,7 +186744,7 @@ func fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:230603:12: */ (*Fts5Global)(unsafe.Pointer(pGlobal)).Fapi.FxFindTokenizer = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32 }{fts5FindTokenizer})) - rc = Xsqlite3_create_module_v2(tls, db, ts+34161 /* "fts5" */, uintptr(unsafe.Pointer(&fts5Mod)), p, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{fts5ModuleDestroy}))) + rc = Xsqlite3_create_module_v2(tls, db, ts+34171 /* "fts5" */, uintptr(unsafe.Pointer(&fts5Mod)), p, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{fts5ModuleDestroy}))) if rc == SQLITE_OK { rc = sqlite3Fts5IndexInit(tls, db) } @@ -185844,13 +186762,13 @@ func fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:230603:12: */ } if rc == SQLITE_OK { rc = Xsqlite3_create_function(tls, - db, ts+34161 /* "fts5" */, 1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { + db, ts+34171 /* "fts5" */, 1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{fts5Fts5Func})), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { rc = Xsqlite3_create_function(tls, - db, ts+34166 /* "fts5_source_id" */, 0, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { + db, ts+34176 /* "fts5_source_id" */, 0, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{fts5SourceIdFunc})), uintptr(0), uintptr(0)) } @@ -185916,20 +186834,20 @@ func fts5StorageGetStmt(tls *libc.TLS, p uintptr, eStmt int32, ppStmt uintptr, p if *(*uintptr)(unsafe.Pointer((p + 24 /* &.aStmt */) + uintptr(eStmt)*4)) == uintptr(0) { *(*[11]uintptr)(unsafe.Pointer(bp + 128 /* azStmt */)) = [11]uintptr{ - ts + 34181, /* "SELECT %s FROM %..." */ - ts + 34249, /* "SELECT %s FROM %..." */ - ts + 34318, /* "SELECT %s FROM %..." */ // LOOKUP + ts + 34191, /* "SELECT %s FROM %..." */ + ts + 34259, /* "SELECT %s FROM %..." */ + ts + 34328, /* "SELECT %s FROM %..." */ // LOOKUP - ts + 34351, /* "INSERT INTO %Q.'..." */ // INSERT_CONTENT - ts + 34390, /* "REPLACE INTO %Q...." */ // REPLACE_CONTENT - ts + 34430, /* "DELETE FROM %Q.'..." */ // DELETE_CONTENT - ts + 34469, /* "REPLACE INTO %Q...." */ // REPLACE_DOCSIZE - ts + 34510, /* "DELETE FROM %Q.'..." */ // DELETE_DOCSIZE + ts + 34361, /* "INSERT INTO %Q.'..." */ // INSERT_CONTENT + ts + 34400, /* "REPLACE INTO %Q...." */ // REPLACE_CONTENT + ts + 34440, /* "DELETE FROM %Q.'..." */ // DELETE_CONTENT + ts + 34479, /* "REPLACE INTO %Q...." */ // REPLACE_DOCSIZE + ts + 34520, /* "DELETE FROM %Q.'..." */ // DELETE_DOCSIZE - ts + 34549, /* "SELECT sz FROM %..." */ // LOOKUP_DOCSIZE + ts + 34559, /* "SELECT sz FROM %..." */ // LOOKUP_DOCSIZE - ts + 34591, /* "REPLACE INTO %Q...." */ // REPLACE_CONFIG - ts + 34631, /* "SELECT %s FROM %..." */ // SCAN + ts + 34601, /* "REPLACE INTO %Q...." */ // REPLACE_CONFIG + ts + 34641, /* "SELECT %s FROM %..." */ // SCAN } var pC uintptr = (*Fts5Storage)(unsafe.Pointer(p)).FpConfig var zSql uintptr = uintptr(0) @@ -185996,7 +186914,7 @@ func fts5StorageGetStmt(tls *libc.TLS, p uintptr, eStmt int32, ppStmt uintptr, p (*Fts5Config)(unsafe.Pointer((*Fts5Storage)(unsafe.Pointer(p)).FpConfig)).FbLock-- Xsqlite3_free(tls, zSql) if (rc != SQLITE_OK) && (pzErrMsg != 0) { - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+2790 /* "%s" */, libc.VaList(bp+120, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer(pC)).Fdb))) + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+2800 /* "%s" */, libc.VaList(bp+120, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer(pC)).Fdb))) } } } @@ -186034,18 +186952,18 @@ func sqlite3Fts5DropAll(tls *libc.TLS, pConfig uintptr) int32 { /* sqlite3.c:230 var rc int32 = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), - ts+34654, /* "DROP TABLE IF EX..." */ + ts+34664, /* "DROP TABLE IF EX..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) if (rc == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer(pConfig)).FbColumnsize != 0) { rc = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), - ts+34758, /* "DROP TABLE IF EX..." */ + ts+34768, /* "DROP TABLE IF EX..." */ libc.VaList(bp+48, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) } if (rc == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer(pConfig)).FeContent == FTS5_CONTENT_NORMAL) { rc = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), - ts+34796, /* "DROP TABLE IF EX..." */ + ts+34806, /* "DROP TABLE IF EX..." */ libc.VaList(bp+64, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) } return rc @@ -186057,7 +186975,7 @@ func fts5StorageRenameOne(tls *libc.TLS, pConfig uintptr, pRc uintptr, zTail uin if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { *(*int32)(unsafe.Pointer(pRc)) = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), - ts+34834, /* "ALTER TABLE %Q.'..." */ + ts+34844, /* "ALTER TABLE %Q.'..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, zTail, zName, zTail)) } } @@ -186069,14 +186987,14 @@ func sqlite3Fts5StorageRename(tls *libc.TLS, pStorage uintptr, zName uintptr) in var pConfig uintptr = (*Fts5Storage)(unsafe.Pointer(pStorage)).FpConfig *(*int32)(unsafe.Pointer(bp /* rc */)) = sqlite3Fts5StorageSync(tls, pStorage) - fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+23316 /* "data" */, zName) - fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+10212 /* "idx" */, zName) - fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+34154 /* "config" */, zName) + fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+23326 /* "data" */, zName) + fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+10222 /* "idx" */, zName) + fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+34164 /* "config" */, zName) if (*Fts5Config)(unsafe.Pointer(pConfig)).FbColumnsize != 0 { - fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+32604 /* "docsize" */, zName) + fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+32614 /* "docsize" */, zName) } if (*Fts5Config)(unsafe.Pointer(pConfig)).FeContent == FTS5_CONTENT_NORMAL { - fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+32253 /* "content" */, zName) + fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+32263 /* "content" */, zName) } return *(*int32)(unsafe.Pointer(bp /* rc */)) } @@ -186090,17 +187008,17 @@ func sqlite3Fts5CreateTable(tls *libc.TLS, pConfig uintptr, zPost uintptr, zDefn var rc int32 *(*uintptr)(unsafe.Pointer(bp + 64 /* zErr */)) = uintptr(0) - rc = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, bp+64 /* &zErr */, ts+34876, /* "CREATE TABLE %Q...." */ + rc = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, bp+64 /* &zErr */, ts+34886, /* "CREATE TABLE %Q...." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, zPost, zDefn, func() uintptr { if bWithout != 0 { - return ts + 27931 /* " WITHOUT ROWID" */ + return ts + 27941 /* " WITHOUT ROWID" */ } - return ts + 755 /* "" */ + return ts + 765 /* "" */ }())) if *(*uintptr)(unsafe.Pointer(bp + 64 /* zErr */)) != 0 { *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, - ts+34906, /* "fts5: error crea..." */ + ts+34916, /* "fts5: error crea..." */ libc.VaList(bp+40, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, zPost, *(*uintptr)(unsafe.Pointer(bp + 64 /* zErr */)))) Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 64 /* zErr */))) } @@ -186142,27 +187060,27 @@ func sqlite3Fts5StorageOpen(tls *libc.TLS, pConfig uintptr, pIndex uintptr, bCre } else { var i int32 var iOff int32 - Xsqlite3_snprintf(tls, nDefn, zDefn, ts+34950 /* "id INTEGER PRIMA..." */, 0) + Xsqlite3_snprintf(tls, nDefn, zDefn, ts+34960 /* "id INTEGER PRIMA..." */, 0) iOff = int32(libc.Xstrlen(tls, zDefn)) for i = 0; i < (*Fts5Config)(unsafe.Pointer(pConfig)).FnCol; i++ { - Xsqlite3_snprintf(tls, (nDefn - iOff), (zDefn + uintptr(iOff)), ts+34973 /* ", c%d" */, libc.VaList(bp, i)) + Xsqlite3_snprintf(tls, (nDefn - iOff), (zDefn + uintptr(iOff)), ts+34983 /* ", c%d" */, libc.VaList(bp, i)) iOff = iOff + (int32(libc.Xstrlen(tls, (zDefn + uintptr(iOff))))) } - rc = sqlite3Fts5CreateTable(tls, pConfig, ts+32253 /* "content" */, zDefn, 0, pzErr) + rc = sqlite3Fts5CreateTable(tls, pConfig, ts+32263 /* "content" */, zDefn, 0, pzErr) } Xsqlite3_free(tls, zDefn) } if (rc == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer(pConfig)).FbColumnsize != 0) { rc = sqlite3Fts5CreateTable(tls, - pConfig, ts+32604 /* "docsize" */, ts+34979 /* "id INTEGER PRIMA..." */, 0, pzErr) + pConfig, ts+32614 /* "docsize" */, ts+34989 /* "id INTEGER PRIMA..." */, 0, pzErr) } if rc == SQLITE_OK { rc = sqlite3Fts5CreateTable(tls, - pConfig, ts+34154 /* "config" */, ts+35011 /* "k PRIMARY KEY, v" */, 1, pzErr) + pConfig, ts+34164 /* "config" */, ts+35021 /* "k PRIMARY KEY, v" */, 1, pzErr) } if rc == SQLITE_OK { - rc = sqlite3Fts5StorageConfigValue(tls, p, ts+32750 /* "version" */, uintptr(0), FTS5_CURRENT_VERSION) + rc = sqlite3Fts5StorageConfigValue(tls, p, ts+32760 /* "version" */, uintptr(0), FTS5_CURRENT_VERSION) } } @@ -186399,12 +187317,12 @@ func sqlite3Fts5StorageDeleteAll(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c: // Delete the contents of the %_data and %_docsize tables. rc = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), - ts+35028, /* "DELETE FROM %Q.'..." */ + ts+35038, /* "DELETE FROM %Q.'..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) if (rc == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer(pConfig)).FbColumnsize != 0) { rc = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), - ts+35078, /* "DELETE FROM %Q.'..." */ + ts+35088, /* "DELETE FROM %Q.'..." */ libc.VaList(bp+32, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) } @@ -186414,7 +187332,7 @@ func sqlite3Fts5StorageDeleteAll(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c: rc = sqlite3Fts5IndexReinit(tls, (*Fts5Storage)(unsafe.Pointer(p)).FpIndex) } if rc == SQLITE_OK { - rc = sqlite3Fts5StorageConfigValue(tls, p, ts+32750 /* "version" */, uintptr(0), FTS5_CURRENT_VERSION) + rc = sqlite3Fts5StorageConfigValue(tls, p, ts+32760 /* "version" */, uintptr(0), FTS5_CURRENT_VERSION) } return rc } @@ -186609,7 +187527,7 @@ func fts5StorageCount(tls *libc.TLS, p uintptr, zSuffix uintptr, pnRow uintptr) var zSql uintptr var rc int32 - zSql = Xsqlite3_mprintf(tls, ts+35107, /* "SELECT count(*) ..." */ + zSql = Xsqlite3_mprintf(tls, ts+35117, /* "SELECT count(*) ..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, zSuffix)) if zSql == uintptr(0) { rc = SQLITE_NOMEM @@ -186806,14 +187724,14 @@ func sqlite3Fts5StorageIntegrity(tls *libc.TLS, p uintptr, iArg int32) int32 { / // number of rows. if (rc == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer(pConfig)).FeContent == FTS5_CONTENT_NORMAL) { *(*I64)(unsafe.Pointer(bp + 36 /* nRow */)) = int64(0) - rc = fts5StorageCount(tls, p, ts+32253 /* "content" */, bp+36 /* &nRow */) + rc = fts5StorageCount(tls, p, ts+32263 /* "content" */, bp+36 /* &nRow */) if (rc == SQLITE_OK) && (*(*I64)(unsafe.Pointer(bp + 36 /* nRow */)) != (*Fts5Storage)(unsafe.Pointer(p)).FnTotalRow) { rc = (SQLITE_CORRUPT | (int32(1) << 8)) } } if (rc == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer(pConfig)).FbColumnsize != 0) { *(*I64)(unsafe.Pointer(bp + 44 /* nRow */)) = int64(0) - rc = fts5StorageCount(tls, p, ts+32604 /* "docsize" */, bp+44 /* &nRow */) + rc = fts5StorageCount(tls, p, ts+32614 /* "docsize" */, bp+44 /* &nRow */) if (rc == SQLITE_OK) && (*(*I64)(unsafe.Pointer(bp + 44 /* nRow */)) != (*Fts5Storage)(unsafe.Pointer(p)).FnTotalRow) { rc = (SQLITE_CORRUPT | (int32(1) << 8)) } @@ -187049,9 +187967,9 @@ func fts5AsciiCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, libc.Xmemcpy(tls, p /* &.aTokenChar */, uintptr(unsafe.Pointer(&aAsciiTokenChar)), uint32(unsafe.Sizeof(aAsciiTokenChar))) for i = 0; (rc == SQLITE_OK) && (i < nArg); i = i + (2) { var zArg uintptr = *(*uintptr)(unsafe.Pointer(azArg + uintptr((i+1))*4)) - if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35139 /* "tokenchars" */) { + if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35149 /* "tokenchars" */) { fts5AsciiAddExceptions(tls, p, zArg, 1) - } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35150 /* "separators" */) { + } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35160 /* "separators" */) { fts5AsciiAddExceptions(tls, p, zArg, 0) } else { rc = SQLITE_ERROR @@ -187129,7 +188047,9 @@ func fts5AsciiTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, iUnused asciiFold(tls, pFold, (pText + uintptr(is)), nByte) // Invoke the token callback - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32)(unsafe.Pointer(&xToken)))(tls, pCtx, 0, pFold, nByte, is, ie) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xToken})).f(tls, pCtx, 0, pFold, nByte, is, ie) is = (ie + 1) } @@ -187290,7 +188210,7 @@ func fts5UnicodeCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32 } else { p = Xsqlite3_malloc(tls, int32(unsafe.Sizeof(Unicode61Tokenizer{}))) if p != 0 { - var zCat uintptr = ts + 35161 /* "L* N* Co" */ + var zCat uintptr = ts + 35171 /* "L* N* Co" */ var i int32 libc.Xmemset(tls, p, 0, uint32(unsafe.Sizeof(Unicode61Tokenizer{}))) @@ -187303,7 +188223,7 @@ func fts5UnicodeCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32 // Search for a "categories" argument for i = 0; (rc == SQLITE_OK) && (i < nArg); i = i + (2) { - if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35170 /* "categories" */) { + if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35180 /* "categories" */) { zCat = *(*uintptr)(unsafe.Pointer(azArg + uintptr((i+1))*4)) } } @@ -187314,18 +188234,18 @@ func fts5UnicodeCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32 for i = 0; (rc == SQLITE_OK) && (i < nArg); i = i + (2) { var zArg uintptr = *(*uintptr)(unsafe.Pointer(azArg + uintptr((i+1))*4)) - if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35181 /* "remove_diacritic..." */) { + if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35191 /* "remove_diacritic..." */) { if (((int32(*(*int8)(unsafe.Pointer(zArg))) != '0') && (int32(*(*int8)(unsafe.Pointer(zArg))) != '1')) && (int32(*(*int8)(unsafe.Pointer(zArg))) != '2')) || (*(*int8)(unsafe.Pointer(zArg + 1)) != 0) { rc = SQLITE_ERROR } else { (*Unicode61Tokenizer)(unsafe.Pointer(p)).FeRemoveDiacritic = (int32(*(*int8)(unsafe.Pointer(zArg))) - '0') } - } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35139 /* "tokenchars" */) { + } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35149 /* "tokenchars" */) { rc = fts5UnicodeAddExceptions(tls, p, zArg, 1) - } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35150 /* "separators" */) { + } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35160 /* "separators" */) { rc = fts5UnicodeAddExceptions(tls, p, zArg, 0) - } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35170 /* "categories" */) { + } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35180 /* "categories" */) { // no-op } else { rc = SQLITE_ERROR @@ -187580,7 +188500,9 @@ __15: ; // Invoke the token callback - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32)(unsafe.Pointer(&xToken)))(tls, pCtx, 0, aFold, ((int32(zOut) - int32(aFold)) / 1), is, ie) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xToken})).f(tls, pCtx, 0, aFold, ((int32(zOut) - int32(aFold)) / 1), is, ie) goto __1 __2: ; @@ -187622,7 +188544,7 @@ func fts5PorterDelete(tls *libc.TLS, pTok uintptr) { /* sqlite3.c:232438:13: */ if pTok != 0 { var p uintptr = pTok if (*PorterTokenizer)(unsafe.Pointer(p)).FpTokenizer != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((p /* &.tokenizer */ + 4 /* &.xDelete */))))(tls, (*PorterTokenizer)(unsafe.Pointer(p)).FpTokenizer) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*PorterTokenizer)(unsafe.Pointer(p)).Ftokenizer.FxDelete})).f(tls, (*PorterTokenizer)(unsafe.Pointer(p)).FpTokenizer) } Xsqlite3_free(tls, p) } @@ -187637,7 +188559,7 @@ func fts5PorterCreate(tls *libc.TLS, pCtx uintptr, azArg uintptr, nArg int32, pp var rc int32 = SQLITE_OK var pRet uintptr *(*uintptr)(unsafe.Pointer(bp /* pUserdata */)) = uintptr(0) - var zBase uintptr = ts + 35199 /* "unicode61" */ + var zBase uintptr = ts + 35209 /* "unicode61" */ if nArg > 0 { zBase = *(*uintptr)(unsafe.Pointer(azArg)) @@ -187646,7 +188568,9 @@ func fts5PorterCreate(tls *libc.TLS, pCtx uintptr, azArg uintptr, nArg int32, pp pRet = Xsqlite3_malloc(tls, int32(unsafe.Sizeof(PorterTokenizer{}))) if pRet != 0 { libc.Xmemset(tls, pRet, 0, uint32(unsafe.Sizeof(PorterTokenizer{}))) - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 8 /* &.xFindTokenizer */))))(tls, pApi, zBase, bp /* &pUserdata */, (pRet /* &.tokenizer */)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5_api)(unsafe.Pointer(pApi)).FxFindTokenizer})).f(tls, pApi, zBase, bp /* &pUserdata */, (pRet /* &.tokenizer */)) } else { rc = SQLITE_NOMEM } @@ -187663,7 +188587,9 @@ func fts5PorterCreate(tls *libc.TLS, pCtx uintptr, azArg uintptr, nArg int32, pp } return uintptr(0) }() - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pRet /* &.tokenizer */ /* &.xCreate */))))(tls, *(*uintptr)(unsafe.Pointer(bp /* pUserdata */)), azArg2, nArg2, (pRet + 12 /* &.pTokenizer */)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*PorterTokenizer)(unsafe.Pointer(pRet)).Ftokenizer.FxCreate})).f(tls, *(*uintptr)(unsafe.Pointer(bp /* pUserdata */)), azArg2, nArg2, (pRet + 12 /* &.pTokenizer */)) } if rc != SQLITE_OK { @@ -187788,7 +188714,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { case 'a': - if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35209 /* "al" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35219 /* "al" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-2)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 2) } @@ -187796,11 +188722,11 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'c': - if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35212 /* "ance" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35222 /* "ance" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-4)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 4) } - } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35217 /* "ence" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35227 /* "ence" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-4)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 4) } @@ -187808,7 +188734,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'e': - if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35222 /* "er" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35232 /* "er" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-2)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 2) } @@ -187816,7 +188742,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'i': - if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35225 /* "ic" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35235 /* "ic" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-2)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 2) } @@ -187824,11 +188750,11 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'l': - if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35228 /* "able" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35238 /* "able" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-4)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 4) } - } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35233 /* "ible" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35243 /* "ible" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-4)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 4) } @@ -187836,19 +188762,19 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'n': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35238 /* "ant" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35248 /* "ant" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } - } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35242 /* "ement" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35252 /* "ement" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-5)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 5) } - } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35248 /* "ment" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35258 /* "ment" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-4)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 4) } - } else if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35253 /* "ent" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + } else if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35263 /* "ent" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } @@ -187856,11 +188782,11 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'o': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35257 /* "ion" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35267 /* "ion" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1_and_S_or_T(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } - } else if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35261 /* "ou" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + } else if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35271 /* "ou" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-2)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 2) } @@ -187868,7 +188794,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 's': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35264 /* "ism" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35274 /* "ism" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } @@ -187876,11 +188802,11 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 't': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35268 /* "ate" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35278 /* "ate" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } - } else if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35272 /* "iti" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + } else if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35282 /* "iti" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } @@ -187888,7 +188814,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'u': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35276 /* "ous" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35286 /* "ous" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } @@ -187896,7 +188822,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'v': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35280 /* "ive" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35290 /* "ive" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } @@ -187904,7 +188830,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'z': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35284 /* "ize" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35294 /* "ize" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } @@ -187921,24 +188847,24 @@ func fts5PorterStep1B2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sq switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { case 'a': - if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35288 /* "at" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 2))), ts+35268 /* "ate" */, uint32(3)) + if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35298 /* "at" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 2))), ts+35278 /* "ate" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 2) + 3) ret = 1 } break case 'b': - if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35291 /* "bl" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 2))), ts+35294 /* "ble" */, uint32(3)) + if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35301 /* "bl" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 2))), ts+35304 /* "ble" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 2) + 3) ret = 1 } break case 'i': - if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35298 /* "iz" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 2))), ts+35284 /* "ize" */, uint32(3)) + if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35308 /* "iz" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 2))), ts+35294 /* "ize" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 2) + 3) ret = 1 } @@ -187954,137 +188880,137 @@ func fts5PorterStep2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { case 'a': - if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+35301 /* "ational" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { + if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+35311 /* "ational" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-7)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+35268 /* "ate" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+35278 /* "ate" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 7) + 3) } - } else if (nBuf > 6) && (0 == libc.Xmemcmp(tls, ts+35309 /* "tional" */, (aBuf+uintptr((nBuf-6))), uint32(6))) { + } else if (nBuf > 6) && (0 == libc.Xmemcmp(tls, ts+35319 /* "tional" */, (aBuf+uintptr((nBuf-6))), uint32(6))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-6)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 6))), ts+35316 /* "tion" */, uint32(4)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 6))), ts+35326 /* "tion" */, uint32(4)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 6) + 4) } } break case 'c': - if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35321 /* "enci" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35331 /* "enci" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+35217 /* "ence" */, uint32(4)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+35227 /* "ence" */, uint32(4)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 4) + 4) } - } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35326 /* "anci" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35336 /* "anci" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+35212 /* "ance" */, uint32(4)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+35222 /* "ance" */, uint32(4)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 4) + 4) } } break case 'e': - if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35331 /* "izer" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35341 /* "izer" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+35284 /* "ize" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+35294 /* "ize" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 4) + 3) } } break case 'g': - if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35336 /* "logi" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35346 /* "logi" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+14778 /* "log" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+14788 /* "log" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 4) + 3) } } break case 'l': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35341 /* "bli" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35351 /* "bli" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-3)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 3))), ts+35294 /* "ble" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 3))), ts+35304 /* "ble" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 3) + 3) } - } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35345 /* "alli" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35355 /* "alli" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+35209 /* "al" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+35219 /* "al" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 4) + 2) } - } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35350 /* "entli" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35360 /* "entli" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35253 /* "ent" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35263 /* "ent" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 3) } - } else if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35356 /* "eli" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + } else if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35366 /* "eli" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-3)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 3))), ts+35360 /* "e" */, uint32(1)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 3))), ts+35370 /* "e" */, uint32(1)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 3) + 1) } - } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35362 /* "ousli" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35372 /* "ousli" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35276 /* "ous" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35286 /* "ous" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 3) } } break case 'o': - if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+35368 /* "ization" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { + if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+35378 /* "ization" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-7)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+35284 /* "ize" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+35294 /* "ize" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 7) + 3) } - } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35376 /* "ation" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35386 /* "ation" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35268 /* "ate" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35278 /* "ate" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 3) } - } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35382 /* "ator" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35392 /* "ator" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+35268 /* "ate" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+35278 /* "ate" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 4) + 3) } } break case 's': - if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35387 /* "alism" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35397 /* "alism" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35209 /* "al" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35219 /* "al" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 2) } - } else if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+35393 /* "iveness" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { + } else if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+35403 /* "iveness" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-7)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+35280 /* "ive" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+35290 /* "ive" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 7) + 3) } - } else if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+35401 /* "fulness" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { + } else if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+35411 /* "fulness" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-7)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+35409 /* "ful" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+35419 /* "ful" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 7) + 3) } - } else if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+35413 /* "ousness" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { + } else if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+35423 /* "ousness" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-7)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+35276 /* "ous" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+35286 /* "ous" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 7) + 3) } } break case 't': - if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35421 /* "aliti" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35431 /* "aliti" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35209 /* "al" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35219 /* "al" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 2) } - } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35427 /* "iviti" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35437 /* "iviti" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35280 /* "ive" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35290 /* "ive" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 3) } - } else if (nBuf > 6) && (0 == libc.Xmemcmp(tls, ts+35433 /* "biliti" */, (aBuf+uintptr((nBuf-6))), uint32(6))) { + } else if (nBuf > 6) && (0 == libc.Xmemcmp(tls, ts+35443 /* "biliti" */, (aBuf+uintptr((nBuf-6))), uint32(6))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-6)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 6))), ts+35294 /* "ble" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 6))), ts+35304 /* "ble" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 6) + 3) } } @@ -188100,16 +189026,16 @@ func fts5PorterStep3(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { case 'a': - if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35440 /* "ical" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35450 /* "ical" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+35225 /* "ic" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+35235 /* "ic" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 4) + 2) } } break case 's': - if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35445 /* "ness" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+35455 /* "ness" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 4) } @@ -188117,21 +189043,21 @@ func fts5PorterStep3(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 't': - if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35450 /* "icate" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35460 /* "icate" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35225 /* "ic" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35235 /* "ic" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 2) } - } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35456 /* "iciti" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35466 /* "iciti" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35225 /* "ic" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35235 /* "ic" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 2) } } break case 'u': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35409 /* "ful" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35419 /* "ful" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } @@ -188139,7 +189065,7 @@ func fts5PorterStep3(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'v': - if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35462 /* "ative" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35472 /* "ative" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 5) } @@ -188147,9 +189073,9 @@ func fts5PorterStep3(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'z': - if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35468 /* "alize" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+35478 /* "alize" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35209 /* "al" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+35219 /* "al" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 2) } } @@ -188165,12 +189091,12 @@ func fts5PorterStep1B(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sql switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { case 'e': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35474 /* "eed" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35484 /* "eed" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-3)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 3))), ts+35478 /* "ee" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 3))), ts+35488 /* "ee" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 3) + 2) } - } else if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35481 /* "ed" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + } else if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+35491 /* "ed" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { if fts5Porter_Vowel(tls, aBuf, (nBuf-2)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 2) ret = 1 @@ -188179,7 +189105,7 @@ func fts5PorterStep1B(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sql break case 'n': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35484 /* "ing" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+35494 /* "ing" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_Vowel(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) ret = 1 @@ -188299,10 +189225,14 @@ __8: __10: ; - return (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32)(unsafe.Pointer((p + 4 /* &.xToken */))))(tls, (*PorterContext)(unsafe.Pointer(p)).FpCtx, tflags, aBuf, *(*int32)(unsafe.Pointer(bp /* nBuf */)), iStart, iEnd) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*PorterContext)(unsafe.Pointer(p)).FxToken})).f(tls, (*PorterContext)(unsafe.Pointer(p)).FpCtx, tflags, aBuf, *(*int32)(unsafe.Pointer(bp /* nBuf */)), iStart, iEnd) pass_through: - return (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32)(unsafe.Pointer((p + 4 /* &.xToken */))))(tls, (*PorterContext)(unsafe.Pointer(p)).FpCtx, tflags, pToken, nToken, iStart, iEnd) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*PorterContext)(unsafe.Pointer(p)).FxToken})).f(tls, (*PorterContext)(unsafe.Pointer(p)).FpCtx, tflags, pToken, nToken, iStart, iEnd) } // Tokenize using the porter tokenizer. @@ -188316,7 +189246,9 @@ func fts5PorterTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, flags i (*PorterContext)(unsafe.Pointer(bp /* &sCtx */)).FxToken = xToken (*PorterContext)(unsafe.Pointer(bp /* &sCtx */)).FpCtx = pCtx (*PorterContext)(unsafe.Pointer(bp /* &sCtx */)).FaBuf = p + 16 /* &.aBuf */ - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer((p /* &.tokenizer */ + 8 /* &.xTokenize */))))(tls, + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*PorterTokenizer)(unsafe.Pointer(p)).Ftokenizer.FxTokenize})).f(tls, (*PorterTokenizer)(unsafe.Pointer(p)).FpTokenizer, bp /* &sCtx */, flags, pText, nText, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 }{fts5PorterCb}))) @@ -188349,7 +189281,7 @@ func fts5TriCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, pp (*TrigramTokenizer)(unsafe.Pointer(pNew)).FbFold = 1 for i = 0; (rc == SQLITE_OK) && (i < nArg); i = i + (2) { var zArg uintptr = *(*uintptr)(unsafe.Pointer(azArg + uintptr((i+1))*4)) - if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35488 /* "case_sensitive" */) { + if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+35498 /* "case_sensitive" */) { if ((int32(*(*int8)(unsafe.Pointer(zArg))) != '0') && (int32(*(*int8)(unsafe.Pointer(zArg))) != '1')) || (*(*int8)(unsafe.Pointer(zArg + 1)) != 0) { rc = SQLITE_ERROR } else { @@ -188501,7 +189433,9 @@ func fts5TriTokenize(tls *libc.TLS, pTok uintptr, pCtx uintptr, unusedFlags int3 } else { break } - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32)(unsafe.Pointer(&xToken)))(tls, pCtx, 0, bp /* &aBuf[0] */, (int32((zOut - bp /* &aBuf[0] */) / 1)), iStart, (int32(((uintptr(iStart) + zOut) - bp /* &aBuf[0] */) / 1))) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xToken})).f(tls, pCtx, 0, bp /* &aBuf[0] */, (int32((zOut - bp /* &aBuf[0] */) / 1)), iStart, (int32(((uintptr(iStart) + zOut) - bp /* &aBuf[0] */) / 1))) if rc != SQLITE_OK { break } @@ -188539,22 +189473,22 @@ func sqlite3Fts5TokenizerInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c: defer tls.Free(64) *(*[4]BuiltinTokenizer)(unsafe.Pointer(bp /* aBuiltin */)) = [4]BuiltinTokenizer{ - {FzName: ts + 35199 /* "unicode61" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { + {FzName: ts + 35209 /* "unicode61" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 }{fts5UnicodeCreate})), FxDelete: *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{fts5UnicodeDelete})), FxTokenize: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32 }{fts5UnicodeTokenize}))}}, - {FzName: ts + 35503 /* "ascii" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { + {FzName: ts + 35513 /* "ascii" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 }{fts5AsciiCreate})), FxDelete: *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{fts5AsciiDelete})), FxTokenize: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32 }{fts5AsciiTokenize}))}}, - {FzName: ts + 35509 /* "porter" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { + {FzName: ts + 35519 /* "porter" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 }{fts5PorterCreate})), FxDelete: *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{fts5PorterDelete})), FxTokenize: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32 }{fts5PorterTokenize}))}}, - {FzName: ts + 35516 /* "trigram" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { + {FzName: ts + 35526 /* "trigram" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 }{fts5TriCreate})), FxDelete: *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{fts5TriDelete})), FxTokenize: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32 @@ -188565,7 +189499,9 @@ func sqlite3Fts5TokenizerInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c: var i int32 // To iterate through builtin functions for i = 0; (rc == SQLITE_OK) && (i < (int32(uint32(unsafe.Sizeof([4]BuiltinTokenizer{})) / uint32(unsafe.Sizeof(BuiltinTokenizer{}))))); i++ { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 4 /* &.xCreateTokenizer */))))(tls, pApi, + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5_api)(unsafe.Pointer(pApi)).FxCreateTokenizer})).f(tls, pApi, (*BuiltinTokenizer)(unsafe.Pointer(bp /* &aBuiltin */ +uintptr(i)*16)).FzName, pApi, (bp /* &aBuiltin */ + uintptr(i)*16 + 4 /* &.x */), @@ -189897,14 +190833,14 @@ func fts5VocabTableType(tls *libc.TLS, zType uintptr, pzErr uintptr, peType uint var zCopy uintptr = sqlite3Fts5Strndup(tls, bp+8 /* &rc */, zType, -1) if *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) == SQLITE_OK { sqlite3Fts5Dequote(tls, zCopy) - if Xsqlite3_stricmp(tls, zCopy, ts+35524 /* "col" */) == 0 { + if Xsqlite3_stricmp(tls, zCopy, ts+35534 /* "col" */) == 0 { *(*int32)(unsafe.Pointer(peType)) = FTS5_VOCAB_COL - } else if Xsqlite3_stricmp(tls, zCopy, ts+35528 /* "row" */) == 0 { + } else if Xsqlite3_stricmp(tls, zCopy, ts+35538 /* "row" */) == 0 { *(*int32)(unsafe.Pointer(peType)) = FTS5_VOCAB_ROW - } else if Xsqlite3_stricmp(tls, zCopy, ts+35532 /* "instance" */) == 0 { + } else if Xsqlite3_stricmp(tls, zCopy, ts+35542 /* "instance" */) == 0 { *(*int32)(unsafe.Pointer(peType)) = FTS5_VOCAB_INSTANCE } else { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+35541 /* "fts5vocab: unkno..." */, libc.VaList(bp, zCopy)) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+35551 /* "fts5vocab: unkno..." */, libc.VaList(bp, zCopy)) *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) = SQLITE_ERROR } Xsqlite3_free(tls, zCopy) @@ -189951,19 +190887,19 @@ func fts5VocabInitVtab(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv defer tls.Free(20) *(*[3]uintptr)(unsafe.Pointer(bp + 4 /* azSchema */)) = [3]uintptr{ - ts + 35575, /* "CREATE TABlE voc..." */ - ts + 35615, /* "CREATE TABlE voc..." */ - ts + 35650, /* "CREATE TABlE voc..." */ + ts + 35585, /* "CREATE TABlE voc..." */ + ts + 35625, /* "CREATE TABlE voc..." */ + ts + 35660, /* "CREATE TABlE voc..." */ } var pRet uintptr = uintptr(0) *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) = SQLITE_OK // Return code var bDb int32 - bDb = (libc.Bool32(((argc == 6) && (libc.Xstrlen(tls, *(*uintptr)(unsafe.Pointer(argv + 1*4))) == Size_t(4))) && (libc.Xmemcmp(tls, ts+21625 /* "temp" */, *(*uintptr)(unsafe.Pointer(argv + 1*4)), uint32(4)) == 0))) + bDb = (libc.Bool32(((argc == 6) && (libc.Xstrlen(tls, *(*uintptr)(unsafe.Pointer(argv + 1*4))) == Size_t(4))) && (libc.Xmemcmp(tls, ts+21635 /* "temp" */, *(*uintptr)(unsafe.Pointer(argv + 1*4)), uint32(4)) == 0))) if (argc != 5) && (bDb == 0) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+35693 /* "wrong number of ..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+35703 /* "wrong number of ..." */, 0) *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) = SQLITE_ERROR } else { var nByte int32 // Bytes of space to allocate @@ -190115,11 +191051,11 @@ func fts5VocabOpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* if (*Fts5VocabTable)(unsafe.Pointer(pTab)).FbBusy != 0 { (*Sqlite3_vtab)(unsafe.Pointer(pVTab)).FzErrMsg = Xsqlite3_mprintf(tls, - ts+35726 /* "recursive defini..." */, libc.VaList(bp, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Db, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Tbl)) + ts+35736 /* "recursive defini..." */, libc.VaList(bp, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Db, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Tbl)) return SQLITE_ERROR } zSql = sqlite3Fts5Mprintf(tls, bp+64, /* &rc */ - ts+35757, /* "SELECT t.%Q FROM..." */ + ts+35767, /* "SELECT t.%Q FROM..." */ libc.VaList(bp+16, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Tbl, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Db, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Tbl, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Tbl)) if zSql != 0 { *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) = Xsqlite3_prepare_v2(tls, (*Fts5VocabTable)(unsafe.Pointer(pTab)).Fdb, zSql, -1, bp+68 /* &pStmt */, uintptr(0)) @@ -190143,7 +191079,7 @@ func fts5VocabOpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* *(*uintptr)(unsafe.Pointer(bp + 68 /* pStmt */)) = uintptr(0) if *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) == SQLITE_OK { (*Sqlite3_vtab)(unsafe.Pointer(pVTab)).FzErrMsg = Xsqlite3_mprintf(tls, - ts+35808 /* "no such fts5 tab..." */, libc.VaList(bp+48, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Db, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Tbl)) + ts+35818 /* "no such fts5 tab..." */, libc.VaList(bp+48, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Db, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Tbl)) *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) = SQLITE_ERROR } } else { @@ -190431,7 +191367,7 @@ func fts5VocabFilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, zUnused if pLe != 0 { var zCopy uintptr = Xsqlite3_value_text(tls, pLe) if zCopy == uintptr(0) { - zCopy = ts + 755 /* "" */ + zCopy = ts + 765 /* "" */ } (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FnLeTerm = Xsqlite3_value_bytes(tls, pLe) (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FzLeTerm = Xsqlite3_malloc(tls, ((*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FnLeTerm + 1)) @@ -190548,7 +191484,7 @@ func fts5VocabRowidMethod(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 func sqlite3Fts5VocabInit(tls *libc.TLS, pGlobal uintptr, db uintptr) int32 { /* sqlite3.c:235171:12: */ var p uintptr = pGlobal - return Xsqlite3_create_module_v2(tls, db, ts+35834 /* "fts5vocab" */, uintptr(unsafe.Pointer(&fts5Vocab)), p, uintptr(0)) + return Xsqlite3_create_module_v2(tls, db, ts+35844 /* "fts5vocab" */, uintptr(unsafe.Pointer(&fts5Vocab)), p, uintptr(0)) } var fts5Vocab = Sqlite3_module{ @@ -190593,7 +191529,7 @@ var fts5Vocab = Sqlite3_module{ //************* End of stmt.c *********************************************** // Return the source-id for this library func Xsqlite3_sourceid(tls *libc.TLS) uintptr { /* sqlite3.c:235516:23: */ - return ts + 35844 /* "2021-06-18 18:36..." */ + return ts + 35854 /* "2021-06-18 18:36..." */ } //************************* End of sqlite3.c ***************************** @@ -191481,5 +192417,5 @@ func init() { *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 68 /* .xGetLastError */)) = rbuVfsGetLastError // sqlite3.c:205300:5: } -var ts1 = "COMPILER=gcc-8.3.0\x00ENABLE_COLUMN_METADATA\x00ENABLE_FTS5\x00ENABLE_GEOPOLY\x00ENABLE_JSON1\x00ENABLE_MEMORY_MANAGEMENT\x00ENABLE_OFFSET_SQL_FUNC\x00ENABLE_PREUPDATE_HOOK\x00ENABLE_RBU\x00ENABLE_RTREE\x00ENABLE_SESSION\x00ENABLE_SNAPSHOT\x00ENABLE_STAT4\x00ENABLE_UNLOCK_NOTIFY\x00LIKE_DOESNT_MATCH_BLOBS\x00MUTEX_NOOP\x00SOUNDEX\x00SYSTEM_MALLOC\x00THREADSAFE=1\x003.36.0\x00BINARY\x0020b:20e\x0020c:20e\x0020e\x0040f-21a-21d\x00now\x00local time unavailable\x00second\x00minute\x00hour\x00day\x00month\x00year\x00localtime\x00unixepoch\x00utc\x00weekday \x00start of \x00%04d-%02d-%02d %02d:%02d:%02d\x00%02d:%02d:%02d\x00%04d-%02d-%02d\x00%02d\x00%06.3f\x00%03d\x00%.16g\x00%04d\x00julianday\x00date\x00time\x00datetime\x00strftime\x00current_time\x00current_timestamp\x00current_date\x00failed to allocate %u bytes of memory\x00failed memory resize %u to %u bytes\x000123456789ABCDEF0123456789abcdef\x00-x0\x00X0\x00%\x00NaN\x00Inf\x00\x00NULL\x00(NULL)\x00.\x00SUBQUERY %u\x00thstndrd\x00922337203685477580\x00API call with %s database connection pointer\x00unopened\x00invalid\x00Savepoint\x00AutoCommit\x00Transaction\x00SorterNext\x00Prev\x00Next\x00Checkpoint\x00JournalMode\x00Vacuum\x00VFilter\x00VUpdate\x00Goto\x00Gosub\x00InitCoroutine\x00Yield\x00MustBeInt\x00Jump\x00Once\x00If\x00Not\x00IfNot\x00IfNullRow\x00SeekLT\x00SeekLE\x00SeekGE\x00SeekGT\x00IfNotOpen\x00IfNoHope\x00NoConflict\x00NotFound\x00Found\x00SeekRowid\x00NotExists\x00Last\x00IfSmaller\x00SorterSort\x00Sort\x00Rewind\x00IdxLE\x00IdxGT\x00IdxLT\x00IdxGE\x00RowSetRead\x00Or\x00And\x00RowSetTest\x00Program\x00FkIfZero\x00IfPos\x00IfNotZero\x00IsNull\x00NotNull\x00Ne\x00Eq\x00Gt\x00Le\x00Lt\x00Ge\x00ElseEq\x00DecrJumpZero\x00IncrVacuum\x00VNext\x00Init\x00PureFunc\x00Function\x00Return\x00EndCoroutine\x00HaltIfNull\x00Halt\x00Integer\x00Int64\x00String\x00Null\x00SoftNull\x00Blob\x00Variable\x00Move\x00Copy\x00SCopy\x00IntCopy\x00ChngCntRow\x00ResultRow\x00CollSeq\x00AddImm\x00RealAffinity\x00Cast\x00Permutation\x00Compare\x00IsTrue\x00ZeroOrNull\x00Offset\x00Column\x00Affinity\x00MakeRecord\x00Count\x00ReadCookie\x00SetCookie\x00ReopenIdx\x00OpenRead\x00OpenWrite\x00OpenDup\x00OpenAutoindex\x00BitAnd\x00BitOr\x00ShiftLeft\x00ShiftRight\x00Add\x00Subtract\x00Multiply\x00Divide\x00Remainder\x00Concat\x00OpenEphemeral\x00BitNot\x00SorterOpen\x00SequenceTest\x00String8\x00OpenPseudo\x00Close\x00ColumnsUsed\x00SeekScan\x00SeekHit\x00Sequence\x00NewRowid\x00Insert\x00RowCell\x00Delete\x00ResetCount\x00SorterCompare\x00SorterData\x00RowData\x00Rowid\x00NullRow\x00SeekEnd\x00IdxInsert\x00SorterInsert\x00IdxDelete\x00DeferredSeek\x00IdxRowid\x00FinishSeek\x00Destroy\x00Clear\x00ResetSorter\x00CreateBtree\x00SqlExec\x00ParseSchema\x00LoadAnalysis\x00DropTable\x00DropIndex\x00DropTrigger\x00IntegrityCk\x00RowSetAdd\x00Real\x00Param\x00FkCounter\x00MemMax\x00OffsetLimit\x00AggInverse\x00AggStep\x00AggStep1\x00AggValue\x00AggFinal\x00Expire\x00CursorLock\x00CursorUnlock\x00TableLock\x00VBegin\x00VCreate\x00VDestroy\x00VOpen\x00VColumn\x00VRename\x00Pagecount\x00MaxPgcnt\x00Trace\x00CursorHint\x00ReleaseReg\x00Noop\x00Explain\x00Abortable\x00open\x00close\x00access\x00getcwd\x00stat\x00fstat\x00ftruncate\x00fcntl\x00read\x00pread\x00pread64\x00write\x00pwrite\x00pwrite64\x00fchmod\x00fallocate\x00unlink\x00openDirectory\x00mkdir\x00rmdir\x00fchown\x00geteuid\x00mmap\x00munmap\x00mremap\x00getpagesize\x00readlink\x00lstat\x00ioctl\x00attempt to open \"%s\" as file descriptor %d\x00/dev/null\x00os_unix.c:%d: (%d) %s(%s) - %s\x00cannot fstat db file %s\x00file unlinked while open: %s\x00multiple links to file: %s\x00file renamed while open: %s\x00%s\x00full_fsync\x00%s-shm\x00readonly_shm\x00psow\x00unix-excl\x00%s.lock\x00SQLITE_TMPDIR\x00TMPDIR\x00/var/tmp\x00/usr/tmp\x00/tmp\x00%s/etilqs_%llx%c\x00modeof\x00fsync\x00/dev/urandom\x00unix\x00unix-none\x00unix-dotfile\x00memdb\x00memdb(%p,%lld)\x00PRAGMA \"%w\".page_count\x00ATTACH x AS %Q\x00recovered %d pages from %s\x00-journal\x00-wal\x00nolock\x00immutable\x00recovered %d frames from WAL file %s\x00cannot limit WAL size: %s\x00SQLite format 3\x00:memory:\x00@ \x00\n\x00invalid page number %d\x002nd reference to page %d\x00Failed to read ptrmap key=%d\x00Bad ptr map entry key=%d expected=(%d,%d) got=(%d,%d)\x00failed to get page %d\x00freelist leaf count too big on page %d\x00%s is %d but should be %d\x00size\x00overflow list length\x00Page %u: \x00unable to get the page. error code=%d\x00btreeInitPage() returns error code %d\x00free space corruption\x00On tree page %u cell %d: \x00On page %u at right child: \x00Offset %d out of range %d..%d\x00Extends off end of page\x00Rowid %lld out of order\x00Child page depth differs\x00Multiple uses for byte %u of page %u\x00Fragmentation of %d bytes reported as %d on page %u\x00Main freelist: \x00max rootpage (%d) disagrees with header (%d)\x00incremental_vacuum enabled with a max rootpage of zero\x00Page %d is never used\x00Pointer map page %d is referenced\x00unknown database %s\x00destination database is in use\x00source and destination must be distinct\x00%!.15g\x00-\x00%s%s\x00k(%d\x00B\x00,%s%s%s\x00N.\x00)\x00%.18s-%s\x00%s(%d)\x00%lld\x00%d\x00(blob)\x00vtab:%p\x00%c%u\x00]\x00program\x00?\x008\x0016LE\x0016BE\x00addr\x00opcode\x00p1\x00p2\x00p3\x00p4\x00p5\x00comment\x00id\x00parent\x00notused\x00detail\x00%.4c%s%.16c\x00MJ delete: %s\x00MJ collide: %s\x00-mj%06X9%02X\x00FOREIGN KEY constraint failed\x00a CHECK constraint\x00a generated column\x00an index\x00non-deterministic use of %s() in %s\x00API called with finalized prepared statement\x00API called with NULL prepared statement\x00string or blob too big\x00bind on a busy prepared statement: [%s]\x00-- \x00'%.*q'\x00zeroblob(%d)\x00x'\x00%02x\x00'\x00%s constraint failed\x00%z: %s\x00abort at %d in [%s]: %s\x00cannot open savepoint - SQL statements in progress\x00no such savepoint: %s\x00cannot release savepoint - SQL statements in progress\x00cannot commit transaction - SQL statements in progress\x00cannot start a transaction within a transaction\x00cannot rollback - no transaction is active\x00cannot commit - no transaction is active\x00database schema has changed\x00index corruption\x00sqlite_master\x00SELECT*FROM\"%w\".%s WHERE %s ORDER BY rowid\x00too many levels of trigger recursion\x00cannot change %s wal mode from within a transaction\x00into\x00out of\x00database table is locked: %s\x00-- %s\x00statement aborts at %d: [%s] %s\x00out of memory\x00NOT NULL\x00UNIQUE\x00CHECK\x00FOREIGN KEY\x00cannot open value of type %s\x00null\x00real\x00integer\x00no such rowid: %lld\x00cannot open virtual table: %s\x00cannot open table without rowid: %s\x00cannot open view: %s\x00no such column: \"%s\"\x00foreign key\x00indexed\x00cannot open %s column for writing\x00main\x00new\x00old\x00excluded\x00misuse of aliased aggregate %s\x00misuse of aliased window function %s\x00row value misused\x00double-quoted string literal: \"%w\"\x00no such column\x00ambiguous column name\x00%s: %s.%s.%s\x00%s: %s.%s\x00%s: %s\x00partial index WHERE clauses\x00index expressions\x00CHECK constraints\x00generated columns\x00%s prohibited in %s\x00true\x00false\x00the \".\" operator\x00second argument to likelihood() must be a constant between 0.0 and 1.0\x00not authorized to use function: %s\x00non-deterministic functions\x00%.*s() may not be used as a window function\x00window\x00aggregate\x00misuse of %s function %.*s()\x00no such function: %.*s\x00wrong number of arguments to function %.*s()\x00FILTER may not be used with non-aggregate %.*s()\x00subqueries\x00parameters\x00%r %s BY term out of range - should be between 1 and %d\x00too many terms in ORDER BY clause\x00ORDER\x00%r ORDER BY term does not match any column in the result set\x00too many terms in %s BY clause\x00a GROUP BY clause is required before HAVING\x00GROUP\x00aggregate functions are not allowed in the GROUP BY clause\x00Expression tree is too large (maximum depth %d)\x000\x00too many arguments on function %T\x00unsafe use of %s()\x00variable number must be between ?1 and ?%d\x00too many SQL variables\x00%d columns assigned %d values\x00too many columns in %s\x00_ROWID_\x00ROWID\x00OID\x00USING ROWID SEARCH ON TABLE %s FOR IN-OPERATOR\x00USING INDEX %s FOR IN-OPERATOR\x00sub-select returns %d columns - expected %d\x00REUSE LIST SUBQUERY %d\x00%sLIST SUBQUERY %d\x00CORRELATED \x00REUSE SUBQUERY %d\x00%sSCALAR SUBQUERY %d\x001\x000x\x00hex literal too big: %s%s\x00generated column loop on \"%s\"\x00misuse of aggregate: %s()\x00unknown function: %s()\x00RAISE() may only be used within a trigger-program\x00B\x00C\x00D\x00E\x00sqlite_\x00table %s may not be altered\x00SELECT 1 FROM \"%w\".sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, %d, %Q, %d)=NULL \x00SELECT 1 FROM temp.sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, 1, %Q, %d)=NULL \x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_quotefix(%Q, sql)WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%'\x00UPDATE temp.sqlite_master SET sql = sqlite_rename_quotefix('temp', sql)WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%'\x00there is already another table or index with this name: %s\x00table\x00view %s may not be altered\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, %d) WHERE (type!='index' OR tbl_name=%Q COLLATE nocase)AND name NOT LIKE 'sqliteX_%%' ESCAPE 'X'\x00UPDATE %Q.sqlite_master SET tbl_name = %Q, name = CASE WHEN type='table' THEN %Q WHEN name LIKE 'sqliteX_autoindex%%' ESCAPE 'X' AND type='index' THEN 'sqlite_autoindex_' || %Q || substr(name,%d+18) ELSE name END WHERE tbl_name=%Q COLLATE nocase AND (type='table' OR type='index' OR type='trigger');\x00sqlite_sequence\x00UPDATE \"%w\".sqlite_sequence set name = %Q WHERE name = %Q\x00UPDATE sqlite_temp_schema SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, 1), tbl_name = CASE WHEN tbl_name=%Q COLLATE nocase AND sqlite_rename_test(%Q, sql, type, name, 1, 'after rename', 0) THEN %Q ELSE tbl_name END WHERE type IN ('view', 'trigger')\x00after rename\x00SELECT raise(ABORT,%Q) FROM \"%w\".\"%w\"\x00Cannot add a PRIMARY KEY column\x00Cannot add a UNIQUE column\x00Cannot add a REFERENCES column with non-NULL default value\x00Cannot add a NOT NULL column with default value NULL\x00Cannot add a column with non-constant default\x00cannot add a STORED column\x00UPDATE \"%w\".sqlite_master SET sql = printf('%%.%ds, ',sql) || %Q || substr(sql,1+length(printf('%%.%ds',sql))) WHERE type = 'table' AND name = %Q\x00virtual tables may not be altered\x00Cannot add a column to a view\x00sqlite_altertab_%s\x00view\x00virtual table\x00cannot %s %s \"%s\"\x00drop column from\x00rename columns of\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, %d) WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND (type != 'index' OR tbl_name = %Q) AND sql NOT LIKE 'create virtual%%'\x00UPDATE temp.sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, 1) WHERE type IN ('trigger', 'view')\x00error in %s %s%s%s: %s\x00 \x00\"%w\" \x00%Q%s\x00%.*s%s\x00cannot drop %s column: \"%s\"\x00PRIMARY KEY\x00cannot drop column \"%s\": no other columns exist\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_drop_column(%d, sql, %d) WHERE (type=='table' AND tbl_name=%Q COLLATE nocase)\x00after drop column\x00sqlite_rename_column\x00sqlite_rename_table\x00sqlite_rename_test\x00sqlite_drop_column\x00sqlite_rename_quotefix\x00CREATE TABLE %Q.%s(%s)\x00DELETE FROM %Q.%s WHERE %s=%Q\x00DELETE FROM %Q.%s\x00sqlite_stat1\x00tbl,idx,stat\x00sqlite_stat4\x00tbl,idx,neq,nlt,ndlt,sample\x00sqlite_stat3\x00stat_init\x00stat_push\x00%llu\x00 %llu\x00%llu \x00stat_get\x00sqlite\\_%\x00BBB\x00idx\x00tbl\x00unordered*\x00sz=[0-9]*\x00noskipscan*\x00SELECT idx,count(*) FROM %Q.sqlite_stat4 GROUP BY idx\x00SELECT idx,neq,nlt,ndlt,sample FROM %Q.sqlite_stat4\x00SELECT tbl,idx,stat FROM %Q.sqlite_stat1\x00x\x00\x00too many attached databases - max %d\x00database %s is already in use\x00database is already attached\x00attached databases must use the same text encoding as main database\x00unable to open database: %s\x00no such database: %s\x00cannot detach database %s\x00database %s is locked\x00sqlite_detach\x00sqlite_attach\x00%s cannot use variables\x00%s %T cannot reference objects in database %s\x00authorizer malfunction\x00%s.%s\x00%s.%z\x00access to %z is prohibited\x00not authorized\x00sqlite_temp_schema\x00sqlite_schema\x00sqlite_temp_master\x00pragma_\x00no such view\x00no such table\x00corrupt database\x00unknown database %T\x00object name reserved for internal use: %s\x00temporary table name must be unqualified\x00table %T already exists\x00there is already an index named %s\x00sqlite_returning\x00cannot use RETURNING in a trigger\x00too many columns on %s\x00duplicate column name: %s\x00default value of column [%s] is not constant\x00cannot use DEFAULT on a generated column\x00generated columns cannot be part of the PRIMARY KEY\x00table \"%s\" has more than one primary key\x00INTEGER\x00AUTOINCREMENT is only allowed on an INTEGER PRIMARY KEY\x00virtual tables cannot use computed columns\x00virtual\x00stored\x00error in generated column \"%s\"\x00,\x00\n \x00,\n \x00\n)\x00CREATE TABLE \x00 TEXT\x00 NUM\x00 INT\x00 REAL\x00AUTOINCREMENT not allowed on WITHOUT ROWID tables\x00PRIMARY KEY missing on table %s\x00must have at least one non-generated column\x00TABLE\x00VIEW\x00CREATE %s %.*s\x00UPDATE %Q.sqlite_master SET type='%s', name=%Q, tbl_name=%Q, rootpage=#%d, sql=%Q WHERE rowid=#%d\x00CREATE TABLE %Q.sqlite_sequence(name,seq)\x00tbl_name='%q' AND type!='trigger'\x00parameters are not allowed in views\x00view %s is circularly defined\x00corrupt schema\x00UPDATE %Q.sqlite_master SET rootpage=%d WHERE #%d AND rootpage=#%d\x00sqlite_stat%d\x00DELETE FROM %Q.sqlite_sequence WHERE name=%Q\x00DELETE FROM %Q.sqlite_master WHERE tbl_name=%Q and type!='trigger'\x00table %s may not be dropped\x00use DROP TABLE to delete table %s\x00use DROP VIEW to delete view %s\x00foreign key on %s should reference only one column of table %T\x00number of columns in foreign key does not match the number of columns in the referenced table\x00unknown column \"%s\" in foreign key definition\x00unsupported use of NULLS %s\x00FIRST\x00LAST\x00index\x00cannot create a TEMP index on non-TEMP table \"%s\"\x00table %s may not be indexed\x00views may not be indexed\x00virtual tables may not be indexed\x00there is already a table named %s\x00index %s already exists\x00sqlite_autoindex_%s_%d\x00expressions prohibited in PRIMARY KEY and UNIQUE constraints\x00conflicting ON CONFLICT clauses specified\x00invalid rootpage\x00CREATE%s INDEX %.*s\x00 UNIQUE\x00INSERT INTO %Q.sqlite_master VALUES('index',%Q,%Q,#%d,%Q);\x00name='%q' AND type='index'\x00no such index: %S\x00index associated with UNIQUE or PRIMARY KEY constraint cannot be dropped\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='index'\x00too many FROM clause terms, max: %d\x00a JOIN clause is required before %s\x00ON\x00USING\x00BEGIN\x00ROLLBACK\x00COMMIT\x00RELEASE\x00unable to open a temporary database file for storing temporary tables\x00index '%q'\x00, \x00%s.rowid\x00unable to identify the object to be reindexed\x00duplicate WITH table name: %s\x00no such collation sequence: %s\x00table %s may not be modified\x00cannot modify %s because it is a view\x00rows deleted\x00text\x00blob\x00integer overflow\x00%.*f\x00LIKE or GLOB pattern too complex\x00ESCAPE expression must be a single character\x00%!.20e\x00?000\x00MATCH\x00like\x00implies_nonnull_row\x00expr_compare\x00expr_implies_expr\x00soundex\x00load_extension\x00sqlite_compileoption_used\x00sqlite_compileoption_get\x00unlikely\x00likelihood\x00likely\x00sqlite_offset\x00ltrim\x00rtrim\x00trim\x00min\x00max\x00typeof\x00length\x00instr\x00printf\x00unicode\x00char\x00abs\x00round\x00upper\x00lower\x00hex\x00ifnull\x00random\x00randomblob\x00nullif\x00sqlite_version\x00sqlite_source_id\x00sqlite_log\x00quote\x00last_insert_rowid\x00changes\x00total_changes\x00replace\x00zeroblob\x00substr\x00substring\x00sum\x00total\x00avg\x00count\x00group_concat\x00glob\x00coalesce\x00sign\x00iif\x00foreign key mismatch - \"%w\" referencing \"%w\"\x00cannot INSERT into generated column \"%s\"\x00table %S has no column named %s\x00table %S has %d columns but %d values were supplied\x00%d values for %d columns\x00UPSERT not implemented for virtual table \"%s\"\x00cannot UPSERT a view\x00rows inserted\x00sqlite3_extension_init\x00sqlite3_\x00lib\x00_init\x00no entry point [%s] in shared library [%s]\x00error during initialization: %s\x00unable to open shared library [%.*s]\x00so\x00automatic extension loading failed: %s\x00seq\x00from\x00to\x00on_update\x00on_delete\x00match\x00cid\x00name\x00type\x00notnull\x00dflt_value\x00pk\x00hidden\x00seqno\x00desc\x00coll\x00key\x00builtin\x00enc\x00narg\x00flags\x00wdth\x00hght\x00flgs\x00unique\x00origin\x00partial\x00rowid\x00fkid\x00file\x00busy\x00log\x00checkpointed\x00database\x00status\x00cache_size\x00timeout\x00analysis_limit\x00application_id\x00auto_vacuum\x00automatic_index\x00busy_timeout\x00cache_spill\x00case_sensitive_like\x00cell_size_check\x00checkpoint_fullfsync\x00collation_list\x00compile_options\x00count_changes\x00data_version\x00database_list\x00default_cache_size\x00defer_foreign_keys\x00empty_result_callbacks\x00encoding\x00foreign_key_check\x00foreign_key_list\x00foreign_keys\x00freelist_count\x00full_column_names\x00fullfsync\x00function_list\x00hard_heap_limit\x00ignore_check_constraints\x00incremental_vacuum\x00index_info\x00index_list\x00index_xinfo\x00integrity_check\x00journal_mode\x00journal_size_limit\x00legacy_alter_table\x00locking_mode\x00max_page_count\x00mmap_size\x00module_list\x00optimize\x00page_count\x00page_size\x00pragma_list\x00query_only\x00quick_check\x00read_uncommitted\x00recursive_triggers\x00reverse_unordered_selects\x00schema_version\x00secure_delete\x00short_column_names\x00shrink_memory\x00soft_heap_limit\x00synchronous\x00table_info\x00table_xinfo\x00temp_store\x00temp_store_directory\x00threads\x00trusted_schema\x00user_version\x00wal_autocheckpoint\x00wal_checkpoint\x00writable_schema\x00onoffalseyestruextrafull\x00exclusive\x00normal\x00none\x00full\x00incremental\x00memory\x00temporary storage cannot be changed from within a transaction\x00SET NULL\x00SET DEFAULT\x00CASCADE\x00RESTRICT\x00NO ACTION\x00delete\x00persist\x00off\x00truncate\x00wal\x00w\x00a\x00s\x00sissii\x00utf8\x00utf16le\x00utf16be\x00-%T\x00fast\x00not a writable directory\x00Safety level may not be changed inside a transaction\x00issisii\x00issisi\x00iisX\x00isiX\x00c\x00u\x00isisi\x00iss\x00is\x00iissssss\x00NONE\x00siX\x00*** in database %s ***\n\x00NULL value in %s.%s\x00CHECK constraint failed in %s\x00row \x00 missing from index \x00non-unique entry in index \x00wrong # of entries in index \x00ok\x00unsupported encoding: %s\x00restart\x00ANALYZE \"%w\".\"%w\"\x00UTF8\x00UTF-8\x00UTF-16le\x00UTF-16be\x00UTF16le\x00UTF16be\x00UTF-16\x00UTF16\x00CREATE TABLE x\x00%c\"%s\"\x00(\"%s\"\x00,arg HIDDEN\x00,schema HIDDEN\x00PRAGMA \x00%Q.\x00=%Q\x00error in %s %s after %s: %s\x00rename\x00drop column\x00malformed database schema (%s)\x00%z - %s\x00orphan index\x00CREATE TABLE x(type text,name text,tbl_name text,rootpage int,sql text)\x00unsupported file format\x00SELECT*FROM\"%w\".%s ORDER BY rowid\x00database schema is locked: %s\x00statement too long\x00unknown or unsupported join type: %T %T%s%T\x00RIGHT and FULL OUTER JOINs are not currently supported\x00naturaleftouterightfullinnercross\x00a NATURAL join may not have an ON or USING clause\x00cannot have both ON and USING clauses in the same join\x00cannot join using column %s - column not present in both tables\x00UNION ALL\x00INTERSECT\x00EXCEPT\x00UNION\x00USE TEMP B-TREE FOR %s\x00column%d\x00%.*z:%u\x00cannot use window functions in recursive queries\x00recursive aggregate queries not supported\x00SETUP\x00RECURSIVE STEP\x00SCAN %d CONSTANT ROW%s\x00S\x00COMPOUND QUERY\x00LEFT-MOST SUBQUERY\x00%s USING TEMP B-TREE\x00all VALUES must have the same number of terms\x00SELECTs to the left and right of %s do not have the same number of result columns\x00MERGE (%s)\x00LEFT\x00RIGHT\x00no such index: %s\x00'%s' is not a function\x00multiple references to recursive table: %s\x00circular reference: %s\x00table %s has %d values for %d columns\x00multiple recursive references: %s\x00recursive reference in a subquery: %s\x00subquery_%u\x00too many references to \"%s\": max 65535\x00access to view \"%s\" prohibited\x00unsafe use of virtual table \"%s\"\x00*\x00%s.%s.%s\x00no such table: %s\x00no tables specified\x00too many columns in result set\x00DISTINCT aggregates must have exactly one argument\x00USE TEMP B-TREE FOR %s(DISTINCT)\x00SCAN %s%s%s\x00 USING COVERING INDEX \x00target object/alias may not appear in FROM clause: %s\x00expected %d columns for '%s' but got %d\x00CO-ROUTINE %!S\x00MATERIALIZE %!S\x00DISTINCT\x00GROUP BY\x00RIGHT PART OF ORDER BY\x00ORDER BY\x00sqlite3_get_table() called with two or more incompatible queries\x00temporary trigger may not have qualified name\x00trigger\x00cannot create triggers on virtual tables\x00trigger %T already exists\x00cannot create trigger on system table\x00cannot create %s trigger on view: %S\x00BEFORE\x00AFTER\x00cannot create INSTEAD OF trigger on table: %S\x00INSERT INTO %Q.sqlite_master VALUES('trigger',%Q,%Q,0,'CREATE TRIGGER %q')\x00type='trigger' AND name='%q'\x00no such trigger: %S\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='trigger'\x00%s RETURNING is not available on virtual tables\x00DELETE\x00UPDATE\x00RETURNING may not use \"TABLE.*\" wildcards\x00-- TRIGGER %s\x00cannot UPDATE generated column \"%s\"\x00no such column: %s\x00rows updated\x00%r \x00%sON CONFLICT clause does not match any PRIMARY KEY or UNIQUE constraint\x00CRE\x00INS\x00cannot VACUUM from within a transaction\x00cannot VACUUM - SQL statements in progress\x00non-text filename\x00ATTACH %Q AS vacuum_db\x00output file already exists\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='table'AND name<>'sqlite_sequence' AND coalesce(rootpage,1)>0\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='index'\x00SELECT'INSERT INTO vacuum_db.'||quote(name)||' SELECT*FROM\"%w\".'||quote(name)FROM vacuum_db.sqlite_schema WHERE type='table'AND coalesce(rootpage,1)>0\x00INSERT INTO vacuum_db.sqlite_schema SELECT*FROM \"%w\".sqlite_schema WHERE type IN('view','trigger') OR(type='table'AND rootpage=0)\x00CREATE VIRTUAL TABLE %T\x00UPDATE %Q.sqlite_master SET type='table', name=%Q, tbl_name=%Q, rootpage=0, sql=%Q WHERE rowid=#%d\x00name=%Q AND sql=%Q\x00vtable constructor called recursively: %s\x00vtable constructor failed: %s\x00vtable constructor did not declare schema: %s\x00no such module: %s\x00\x00 AND \x00(\x00 (\x00%s=?\x00ANY(%s)\x00>\x00<\x00%s %S\x00SEARCH\x00SCAN\x00AUTOMATIC PARTIAL COVERING INDEX\x00AUTOMATIC COVERING INDEX\x00COVERING INDEX %s\x00INDEX %s\x00 USING \x00=\x00>? AND rowid<\x00 USING INTEGER PRIMARY KEY (rowid%s?)\x00 VIRTUAL TABLE INDEX %d:%s\x00MULTI-INDEX OR\x00INDEX %d\x00regexp\x00ON clause references tables to its right\x00NOCASE\x00too many arguments on %s() - max %d\x00automatic index on %s(%s)\x00auto-index\x00%s.xBestIndex malfunction\x00abbreviated query algorithm search\x00no query solution\x00at most %d tables in a join\x00SCAN CONSTANT ROW\x00second argument to nth_value must be a positive integer\x00argument of ntile must be a positive integer\x00row_number\x00dense_rank\x00rank\x00percent_rank\x00cume_dist\x00ntile\x00last_value\x00nth_value\x00first_value\x00lead\x00lag\x00no such window: %s\x00RANGE with offset PRECEDING/FOLLOWING requires one ORDER BY expression\x00FILTER clause may only be used with aggregate window functions\x00unsupported frame specification\x00PARTITION clause\x00ORDER BY clause\x00frame specification\x00cannot override %s of window: %s\x00DISTINCT is not supported for window functions\x00frame starting offset must be a non-negative integer\x00frame ending offset must be a non-negative integer\x00frame starting offset must be a non-negative number\x00frame ending offset must be a non-negative number\x00%s clause should come after %s not before\x00LIMIT\x00too many terms in compound SELECT\x00syntax error after column name \"%.*s\"\x00parser stack overflow\x00unknown table option: %.*s\x00set list\x00near \"%T\": syntax error\x00qualified table names are not allowed on INSERT, UPDATE, and DELETE statements within triggers\x00the INDEXED BY clause is not allowed on UPDATE or DELETE statements within triggers\x00the NOT INDEXED clause is not allowed on UPDATE or DELETE statements within triggers\x00incomplete input\x00unrecognized token: \"%.*s\"\x00%s in \"%s\"\x00create\x00temp\x00temporary\x00end\x00explain\x00unable to close due to unfinalized statements or unfinished backups\x00unknown error\x00abort due to ROLLBACK\x00another row available\x00no more rows available\x00not an error\x00SQL logic error\x00access permission denied\x00query aborted\x00database is locked\x00database table is locked\x00attempt to write a readonly database\x00interrupted\x00disk I/O error\x00database disk image is malformed\x00unknown operation\x00database or disk is full\x00unable to open database file\x00locking protocol\x00constraint failed\x00datatype mismatch\x00bad parameter or other API misuse\x00authorization denied\x00column index out of range\x00file is not a database\x00notification message\x00warning message\x00unable to delete/modify user-function due to active statements\x00unable to use function %s in the requested context\x00unknown database: %s\x00unable to delete/modify collation sequence due to active statements\x00file:\x00localhost\x00invalid uri authority: %.*s\x00vfs\x00cache\x00mode\x00no such %s mode: %s\x00%s mode not allowed: %s\x00no such vfs: %s\x00shared\x00private\x00ro\x00rw\x00rwc\x00RTRIM\x00\x00\x00\x00%s at line %d of [%.10s]\x00database corruption\x00misuse\x00cannot open file\x00no such table column: %s.%s\x00SQLITE_\x00database is deadlocked\x00array\x00object\x000123456789abcdef\x00JSON cannot hold BLOB values\x00malformed JSON\x00[0]\x00JSON path error near '%q'\x00json_%s() needs an odd number of arguments\x00json_object() requires an even number of arguments\x00json_object() labels must be TEXT\x00set\x00insert\x00[]\x00{}\x00CREATE TABLE x(key,value,type,atom,id,parent,fullkey,path,json HIDDEN,root HIDDEN)\x00[%d]\x00.%.*s\x00$\x00json\x00json_array\x00json_array_length\x00json_extract\x00json_insert\x00json_object\x00json_patch\x00json_quote\x00json_remove\x00json_replace\x00json_set\x00json_type\x00json_valid\x00json_group_array\x00json_group_object\x00json_each\x00json_tree\x00%s_node\x00data\x00DROP TABLE '%q'.'%q_node';DROP TABLE '%q'.'%q_rowid';DROP TABLE '%q'.'%q_parent';\x00RtreeMatchArg\x00SELECT * FROM %Q.%Q\x00UNIQUE constraint failed: %s.%s\x00rtree constraint failed: %s.(%s<=%s)\x00ALTER TABLE %Q.'%q_node' RENAME TO \"%w_node\";ALTER TABLE %Q.'%q_parent' RENAME TO \"%w_parent\";ALTER TABLE %Q.'%q_rowid' RENAME TO \"%w_rowid\";\x00SELECT stat FROM %Q.sqlite_stat1 WHERE tbl = '%q_rowid'\x00node\x00CREATE TABLE \"%w\".\"%w_rowid\"(rowid INTEGER PRIMARY KEY,nodeno\x00,a%d\x00);CREATE TABLE \"%w\".\"%w_node\"(nodeno INTEGER PRIMARY KEY,data);\x00CREATE TABLE \"%w\".\"%w_parent\"(nodeno INTEGER PRIMARY KEY,parentnode);\x00INSERT INTO \"%w\".\"%w_node\"VALUES(1,zeroblob(%d))\x00INSERT INTO\"%w\".\"%w_rowid\"(rowid,nodeno)VALUES(?1,?2)ON CONFLICT(rowid)DO UPDATE SET nodeno=excluded.nodeno\x00SELECT * FROM \"%w\".\"%w_rowid\" WHERE rowid=?1\x00UPDATE \"%w\".\"%w_rowid\"SET \x00a%d=coalesce(?%d,a%d)\x00a%d=?%d\x00 WHERE rowid=?1\x00INSERT OR REPLACE INTO '%q'.'%q_node' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_node' WHERE nodeno = ?1\x00SELECT nodeno FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_rowid' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00SELECT parentnode FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_parent' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00PRAGMA %Q.page_size\x00SELECT length(data) FROM '%q'.'%q_node' WHERE nodeno = 1\x00undersize RTree blobs in \"%q_node\"\x00Wrong number of columns for an rtree table\x00Too few columns for an rtree table\x00Too many columns for an rtree table\x00Auxiliary rtree columns must be last\x00CREATE TABLE x(%.*s INT\x00,%.*s\x00);\x00,%.*s REAL\x00,%.*s INT\x00{%lld\x00 %g\x00}\x00Invalid argument to rtreedepth()\x00%z%s%z\x00SELECT data FROM %Q.'%q_node' WHERE nodeno=?\x00Node %lld missing from database\x00SELECT parentnode FROM %Q.'%q_parent' WHERE nodeno=?1\x00SELECT nodeno FROM %Q.'%q_rowid' WHERE rowid=?1\x00Mapping (%lld -> %lld) missing from %s table\x00%_rowid\x00%_parent\x00Found (%lld -> %lld) in %s table, expected (%lld -> %lld)\x00Dimension %d of cell %d on node %lld is corrupt\x00Dimension %d of cell %d on node %lld is corrupt relative to parent\x00Node %lld is too small (%d bytes)\x00Rtree depth out of range (%d)\x00Node %lld is too small for cell count of %d (%d bytes)\x00SELECT count(*) FROM %Q.'%q%s'\x00Wrong number of entries in %%%s table - expected %lld, actual %lld\x00SELECT * FROM %Q.'%q_rowid'\x00Schema corrupt or not an rtree\x00_rowid\x00_parent\x00END\x00wrong number of arguments to function rtreecheck()\x00[\x00[%!g,%!g],\x00[%!g,%!g]]\x00\x00CREATE TABLE x(_shape\x00,%s\x00rtree\x00fullscan\x00_shape does not contain a valid polygon\x00geopoly_overlap\x00geopoly_within\x00geopoly\x00geopoly_area\x00geopoly_blob\x00geopoly_json\x00geopoly_svg\x00geopoly_contains_point\x00geopoly_debug\x00geopoly_bbox\x00geopoly_xform\x00geopoly_regular\x00geopoly_ccw\x00geopoly_group_bbox\x00rtreenode\x00rtreedepth\x00rtreecheck\x00rtree_i32\x00corrupt fossil delta\x00DROP TRIGGER IF EXISTS temp.rbu_insert_tr;DROP TRIGGER IF EXISTS temp.rbu_update1_tr;DROP TRIGGER IF EXISTS temp.rbu_update2_tr;DROP TRIGGER IF EXISTS temp.rbu_delete_tr;\x00SELECT rbu_target_name(name, type='view') AS target, name FROM sqlite_schema WHERE type IN ('table', 'view') AND target IS NOT NULL %s ORDER BY name\x00AND rootpage!=0 AND rootpage IS NOT NULL\x00SELECT name, rootpage, sql IS NULL OR substr(8, 6)=='UNIQUE' FROM main.sqlite_schema WHERE type='index' AND tbl_name = ?\x00SELECT (sql LIKE 'create virtual%%'), rootpage FROM sqlite_schema WHERE name=%Q\x00PRAGMA index_list=%Q\x00SELECT rootpage FROM sqlite_schema WHERE name = %Q\x00PRAGMA table_info=%Q\x00PRAGMA main.index_list = %Q\x00PRAGMA main.index_xinfo = %Q\x00SELECT * FROM '%q'\x00rbu_\x00rbu_rowid\x00table %q %s rbu_rowid column\x00may not have\x00requires\x00PRAGMA table_info(%Q)\x00column missing from %q: %s\x00%z%s\"%w\"\x00%z%s%s\"%w\"%s\x00SELECT max(_rowid_) FROM \"%s%w\"\x00 WHERE _rowid_ > %lld \x00 DESC\x00quote(\x00||','||\x00SELECT %s FROM \"%s%w\" ORDER BY %s LIMIT 1\x00 WHERE (%s) > (%s) \x00_rowid_\x00%z%s \"%w\" COLLATE %Q\x00%z%s \"rbu_imp_%d%w\" COLLATE %Q DESC\x00%z%s quote(\"rbu_imp_%d%w\")\x00SELECT %s FROM \"rbu_imp_%w\" ORDER BY %s LIMIT 1\x00%z%s%s\x00(%s) > (%s)\x00%z%s(%.*s) COLLATE %Q\x00%z%s\"%w\" COLLATE %Q\x00%z%s\"rbu_imp_%d%w\"%s\x00%z%s\"rbu_imp_%d%w\" %s COLLATE %Q\x00%z%s\"rbu_imp_%d%w\" IS ?\x00%z%s%s.\"%w\"\x00%z%sNULL\x00%z, %s._rowid_\x00_rowid_ = ?%d\x00%z%sc%d=?%d\x00_rowid_ = (SELECT id FROM rbu_imposter2 WHERE %z)\x00%z%s\"%w\"=?%d\x00invalid rbu_control value\x00%z%s\"%w\"=rbu_delta(\"%w\", ?%d)\x00%z%s\"%w\"=rbu_fossil_delta(\"%w\", ?%d)\x00PRIMARY KEY(\x00%z%s\"%w\"%s\x00%z)\x00SELECT name FROM sqlite_schema WHERE rootpage = ?\x00%z%sc%d %s COLLATE %Q\x00%z%sc%d%s\x00%z, id INTEGER\x00CREATE TABLE rbu_imposter2(%z, PRIMARY KEY(%z)) WITHOUT ROWID\x00PRIMARY KEY \x00%z%s\"%w\" %s %sCOLLATE %Q%s\x00 NOT NULL\x00%z, %z\x00CREATE TABLE \"rbu_imp_%w\"(%z)%s\x00 WITHOUT ROWID\x00INSERT INTO %s.'rbu_tmp_%q'(rbu_control,%s%s) VALUES(%z)\x00SELECT trim(sql) FROM sqlite_schema WHERE type='index' AND name=?\x00 LIMIT -1 OFFSET %d\x00CREATE TABLE \"rbu_imp_%w\"( %s, PRIMARY KEY( %s ) ) WITHOUT ROWID\x00INSERT INTO \"rbu_imp_%w\" VALUES(%s)\x00DELETE FROM \"rbu_imp_%w\" WHERE %s\x00SELECT %s, 0 AS rbu_control FROM '%q' %s %s %s ORDER BY %s%s\x00AND\x00WHERE\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s ORDER BY %s%s\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s UNION ALL SELECT %s, rbu_control FROM '%q' %s %s typeof(rbu_control)='integer' AND rbu_control!=1 ORDER BY %s%s\x00rbu_imp_\x00INSERT INTO \"%s%w\"(%s%s) VALUES(%s)\x00, _rowid_\x00DELETE FROM \"%s%w\" WHERE %s\x00, rbu_rowid\x00CREATE TABLE IF NOT EXISTS %s.'rbu_tmp_%q' AS SELECT *%s FROM '%q' WHERE 0;\x00, 0 AS rbu_rowid\x00CREATE TEMP TRIGGER rbu_delete_tr BEFORE DELETE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update1_tr BEFORE UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update2_tr AFTER UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(4, %s);END;\x00CREATE TEMP TRIGGER rbu_insert_tr AFTER INSERT ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(0, %s);END;\x00,_rowid_ \x00,rbu_rowid\x00SELECT %s,%s rbu_control%s FROM '%q'%s %s %s %s\x000 AS \x00UPDATE \"%s%w\" SET %s WHERE %s\x00SELECT k, v FROM %s.rbu_state\x00file://%s-vacuum?modeof=%s\x00ATTACH %Q AS stat\x00CREATE TABLE IF NOT EXISTS %s.rbu_state(k INTEGER PRIMARY KEY, v)\x00cannot vacuum wal mode database\x00file:%s-vactmp?rbu_memory=1%s%s\x00&\x00rbu_tmp_insert\x00rbu_fossil_delta\x00rbu_target_name\x00SELECT * FROM sqlite_schema\x00rbu vfs not found\x00PRAGMA main.wal_checkpoint=restart\x00%s-oal\x00%s-wal\x00PRAGMA schema_version\x00PRAGMA schema_version = %d\x00INSERT OR REPLACE INTO %s.rbu_state(k, v) VALUES (%d, %d), (%d, %Q), (%d, %Q), (%d, %d), (%d, %d), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %Q) \x00PRAGMA main.%s\x00PRAGMA main.%s = %d\x00PRAGMA writable_schema=1\x00SELECT sql FROM sqlite_schema WHERE sql!='' AND rootpage!=0 AND name!='sqlite_sequence' ORDER BY type DESC\x00SELECT * FROM sqlite_schema WHERE rootpage=0 OR rootpage IS NULL\x00INSERT INTO sqlite_schema VALUES(?,?,?,?,?)\x00PRAGMA writable_schema=0\x00DELETE FROM %s.'rbu_tmp_%q'\x00rbu_state mismatch error\x00rbu_vfs_%d\x00SELECT count(*) FROM sqlite_schema WHERE type='index' AND tbl_name = %Q\x00rbu_index_cnt\x00SELECT 1 FROM sqlite_schema WHERE tbl_name = 'rbu_count'\x00SELECT sum(cnt * (1 + rbu_index_cnt(rbu_target_name(tbl))))FROM rbu_count\x00cannot update wal mode database\x00database modified during rbu %s\x00vacuum\x00update\x00BEGIN IMMEDIATE\x00PRAGMA journal_mode=off\x00-vactmp\x00DELETE FROM stat.rbu_state\x00rbu/zipvfs setup error\x00rbu(%s)/%z\x00rbu_memory\x00SELECT 0, 'tbl', '', 0, '', 1 UNION ALL SELECT 1, 'idx', '', 0, '', 2 UNION ALL SELECT 2, 'stat', '', 0, '', 0\x00PRAGMA '%q'.table_info('%q')\x00%z%s\"%w\".\"%w\".\"%w\"=\"%w\".\"%w\".\"%w\"\x00%z%s\"%w\".\"%w\".\"%w\" IS NOT \"%w\".\"%w\".\"%w\"\x00 OR \x00SELECT * FROM \"%w\".\"%w\" WHERE NOT EXISTS ( SELECT 1 FROM \"%w\".\"%w\" WHERE %s)\x00SELECT * FROM \"%w\".\"%w\", \"%w\".\"%w\" WHERE %s AND (%z)\x00table schemas do not match\x00SELECT tbl, ?2, stat FROM %Q.sqlite_stat1 WHERE tbl IS ?1 AND idx IS (CASE WHEN ?2=X'' THEN NULL ELSE ?2 END)\x00SELECT * FROM \x00 WHERE \x00 IS ?\x00SAVEPOINT changeset\x00RELEASE changeset\x00UPDATE main.\x00 SET \x00 = ?\x00idx IS CASE WHEN length(?4)=0 AND typeof(?4)='blob' THEN NULL ELSE ?4 END \x00DELETE FROM main.\x00 AND (?\x00AND \x00INSERT INTO main.\x00) VALUES(?\x00, ?\x00INSERT INTO main.sqlite_stat1 VALUES(?1, CASE WHEN length(?2)=0 AND typeof(?2)='blob' THEN NULL ELSE ?2 END, ?3)\x00DELETE FROM main.sqlite_stat1 WHERE tbl=?1 AND idx IS CASE WHEN length(?2)=0 AND typeof(?2)='blob' THEN NULL ELSE ?2 END AND (?4 OR stat IS ?3)\x00SAVEPOINT replace_op\x00RELEASE replace_op\x00SAVEPOINT changeset_apply\x00PRAGMA defer_foreign_keys = 1\x00sqlite3changeset_apply(): no such table: %s\x00sqlite3changeset_apply(): table %s has %d columns, expected %d or more\x00sqlite3changeset_apply(): primary key mismatch for table %s\x00PRAGMA defer_foreign_keys = 0\x00RELEASE changeset_apply\x00ROLLBACK TO changeset_apply\x00fts5: parser stack overflow\x00fts5: syntax error near \"%.*s\"\x00%z%.*s\x00wrong number of arguments to function highlight()\x00wrong number of arguments to function snippet()\x00snippet\x00highlight\x00bm25\x00prefix\x00malformed prefix=... directive\x00too many prefix indexes (max %d)\x00prefix length out of range (max 999)\x00tokenize\x00multiple tokenize=... directives\x00parse error in tokenize directive\x00content\x00multiple content=... directives\x00%Q.%Q\x00content_rowid\x00multiple content_rowid=... directives\x00columnsize\x00malformed columnsize=... directive\x00columns\x00malformed detail=... directive\x00unrecognized option: \"%.*s\"\x00reserved fts5 column name: %s\x00unindexed\x00unrecognized column option: %s\x00T.%Q\x00, T.%Q\x00, T.c%d\x00reserved fts5 table name: %s\x00parse error in \"%s\"\x00docsize\x00%Q.'%q_%s'\x00CREATE TABLE x(\x00%z%s%Q\x00%z, %Q HIDDEN, %s HIDDEN)\x00pgsz\x00hashsize\x00automerge\x00usermerge\x00crisismerge\x00SELECT k, v FROM %Q.'%q_config'\x00version\x00invalid fts5 file format (found %d, expected %d) - run 'rebuild'\x00unterminated string\x00fts5: syntax error near \"%.1s\"\x00OR\x00NOT\x00NEAR\x00expected integer, got \"%.*s\"\x00fts5: column queries are not supported (detail=none)\x00fts5: %s queries are not supported (detail!=full)\x00phrase\x00block\x00REPLACE INTO '%q'.'%q_data'(id, block) VALUES(?,?)\x00DELETE FROM '%q'.'%q_data' WHERE id>=? AND id<=?\x00DELETE FROM '%q'.'%q_idx' WHERE segid=?\x00PRAGMA %Q.data_version\x00SELECT pgno FROM '%q'.'%q_idx' WHERE segid=? AND term<=? ORDER BY term DESC LIMIT 1\x00INSERT INTO '%q'.'%q_idx'(segid,term,pgno) VALUES(?,?,?)\x00%s_data\x00id INTEGER PRIMARY KEY, block BLOB\x00segid, term, pgno, PRIMARY KEY(segid, term)\x00SELECT segid, term, (pgno>>1), (pgno&1) FROM %Q.'%q_idx' WHERE segid=%d ORDER BY 1, 2\x00\x00\x00\x00\x00\x00recursively defined fts5 content table\x00SELECT rowid, rank FROM %Q.%Q ORDER BY %s(\"%w\"%s%s) %s\x00DESC\x00ASC\x00reads\x00unknown special query: %.*s\x00SELECT %s\x00no such function: %s\x00parse error in rank function: %s\x00%s: table does not support scanning\x00delete-all\x00'delete-all' may only be used with a contentless or external content fts5 table\x00rebuild\x00'rebuild' may not be used with a contentless fts5 table\x00merge\x00integrity-check\x00cannot %s contentless fts5 table: %s\x00DELETE from\x00no such cursor: %lld\x00no such tokenizer: %s\x00error in tokenizer constructor\x00fts5_api_ptr\x00fts5: 2021-06-18 18:36:39 5c9a6c06871cb9fe42814af9c039eb6da5427a6ec28f187af7ebfb62eafa66e5\x00config\x00fts5\x00fts5_source_id\x00SELECT %s FROM %s T WHERE T.%Q >= ? AND T.%Q <= ? ORDER BY T.%Q ASC\x00SELECT %s FROM %s T WHERE T.%Q <= ? AND T.%Q >= ? ORDER BY T.%Q DESC\x00SELECT %s FROM %s T WHERE T.%Q=?\x00INSERT INTO %Q.'%q_content' VALUES(%s)\x00REPLACE INTO %Q.'%q_content' VALUES(%s)\x00DELETE FROM %Q.'%q_content' WHERE id=?\x00REPLACE INTO %Q.'%q_docsize' VALUES(?,?)\x00DELETE FROM %Q.'%q_docsize' WHERE id=?\x00SELECT sz FROM %Q.'%q_docsize' WHERE id=?\x00REPLACE INTO %Q.'%q_config' VALUES(?,?)\x00SELECT %s FROM %s AS T\x00DROP TABLE IF EXISTS %Q.'%q_data';DROP TABLE IF EXISTS %Q.'%q_idx';DROP TABLE IF EXISTS %Q.'%q_config';\x00DROP TABLE IF EXISTS %Q.'%q_docsize';\x00DROP TABLE IF EXISTS %Q.'%q_content';\x00ALTER TABLE %Q.'%q_%s' RENAME TO '%q_%s';\x00CREATE TABLE %Q.'%q_%q'(%s)%s\x00fts5: error creating shadow table %q_%s: %s\x00id INTEGER PRIMARY KEY\x00, c%d\x00id INTEGER PRIMARY KEY, sz BLOB\x00k PRIMARY KEY, v\x00DELETE FROM %Q.'%q_data';DELETE FROM %Q.'%q_idx';\x00DELETE FROM %Q.'%q_docsize';\x00SELECT count(*) FROM %Q.'%q_%s'\x00tokenchars\x00separators\x00L* N* Co\x00categories\x00remove_diacritics\x00unicode61\x00al\x00ance\x00ence\x00er\x00ic\x00able\x00ible\x00ant\x00ement\x00ment\x00ent\x00ion\x00ou\x00ism\x00ate\x00iti\x00ous\x00ive\x00ize\x00at\x00bl\x00ble\x00iz\x00ational\x00tional\x00tion\x00enci\x00anci\x00izer\x00logi\x00bli\x00alli\x00entli\x00eli\x00e\x00ousli\x00ization\x00ation\x00ator\x00alism\x00iveness\x00fulness\x00ful\x00ousness\x00aliti\x00iviti\x00biliti\x00ical\x00ness\x00icate\x00iciti\x00ative\x00alize\x00eed\x00ee\x00ed\x00ing\x00case_sensitive\x00ascii\x00porter\x00trigram\x00col\x00row\x00instance\x00fts5vocab: unknown table type: %Q\x00CREATE TABlE vocab(term, col, doc, cnt)\x00CREATE TABlE vocab(term, doc, cnt)\x00CREATE TABlE vocab(term, doc, col, offset)\x00wrong number of vtable arguments\x00recursive definition for %s.%s\x00SELECT t.%Q FROM %Q.%Q AS t WHERE t.%Q MATCH '*id'\x00no such fts5 table: %s.%s\x00fts5vocab\x002021-06-18 18:36:39 5c9a6c06871cb9fe42814af9c039eb6da5427a6ec28f187af7ebfb62eafa66e5\x00" +var ts1 = "COMPILER=gcc-10.2.1 20210110\x00ENABLE_COLUMN_METADATA\x00ENABLE_FTS5\x00ENABLE_GEOPOLY\x00ENABLE_JSON1\x00ENABLE_MEMORY_MANAGEMENT\x00ENABLE_OFFSET_SQL_FUNC\x00ENABLE_PREUPDATE_HOOK\x00ENABLE_RBU\x00ENABLE_RTREE\x00ENABLE_SESSION\x00ENABLE_SNAPSHOT\x00ENABLE_STAT4\x00ENABLE_UNLOCK_NOTIFY\x00LIKE_DOESNT_MATCH_BLOBS\x00MUTEX_NOOP\x00SOUNDEX\x00SYSTEM_MALLOC\x00THREADSAFE=1\x003.36.0\x00BINARY\x0020b:20e\x0020c:20e\x0020e\x0040f-21a-21d\x00now\x00local time unavailable\x00second\x00minute\x00hour\x00day\x00month\x00year\x00localtime\x00unixepoch\x00utc\x00weekday \x00start of \x00%04d-%02d-%02d %02d:%02d:%02d\x00%02d:%02d:%02d\x00%04d-%02d-%02d\x00%02d\x00%06.3f\x00%03d\x00%.16g\x00%04d\x00julianday\x00date\x00time\x00datetime\x00strftime\x00current_time\x00current_timestamp\x00current_date\x00failed to allocate %u bytes of memory\x00failed memory resize %u to %u bytes\x000123456789ABCDEF0123456789abcdef\x00-x0\x00X0\x00%\x00NaN\x00Inf\x00\x00NULL\x00(NULL)\x00.\x00SUBQUERY %u\x00thstndrd\x00922337203685477580\x00API call with %s database connection pointer\x00unopened\x00invalid\x00Savepoint\x00AutoCommit\x00Transaction\x00SorterNext\x00Prev\x00Next\x00Checkpoint\x00JournalMode\x00Vacuum\x00VFilter\x00VUpdate\x00Goto\x00Gosub\x00InitCoroutine\x00Yield\x00MustBeInt\x00Jump\x00Once\x00If\x00Not\x00IfNot\x00IfNullRow\x00SeekLT\x00SeekLE\x00SeekGE\x00SeekGT\x00IfNotOpen\x00IfNoHope\x00NoConflict\x00NotFound\x00Found\x00SeekRowid\x00NotExists\x00Last\x00IfSmaller\x00SorterSort\x00Sort\x00Rewind\x00IdxLE\x00IdxGT\x00IdxLT\x00IdxGE\x00RowSetRead\x00Or\x00And\x00RowSetTest\x00Program\x00FkIfZero\x00IfPos\x00IfNotZero\x00IsNull\x00NotNull\x00Ne\x00Eq\x00Gt\x00Le\x00Lt\x00Ge\x00ElseEq\x00DecrJumpZero\x00IncrVacuum\x00VNext\x00Init\x00PureFunc\x00Function\x00Return\x00EndCoroutine\x00HaltIfNull\x00Halt\x00Integer\x00Int64\x00String\x00Null\x00SoftNull\x00Blob\x00Variable\x00Move\x00Copy\x00SCopy\x00IntCopy\x00ChngCntRow\x00ResultRow\x00CollSeq\x00AddImm\x00RealAffinity\x00Cast\x00Permutation\x00Compare\x00IsTrue\x00ZeroOrNull\x00Offset\x00Column\x00Affinity\x00MakeRecord\x00Count\x00ReadCookie\x00SetCookie\x00ReopenIdx\x00OpenRead\x00OpenWrite\x00OpenDup\x00OpenAutoindex\x00BitAnd\x00BitOr\x00ShiftLeft\x00ShiftRight\x00Add\x00Subtract\x00Multiply\x00Divide\x00Remainder\x00Concat\x00OpenEphemeral\x00BitNot\x00SorterOpen\x00SequenceTest\x00String8\x00OpenPseudo\x00Close\x00ColumnsUsed\x00SeekScan\x00SeekHit\x00Sequence\x00NewRowid\x00Insert\x00RowCell\x00Delete\x00ResetCount\x00SorterCompare\x00SorterData\x00RowData\x00Rowid\x00NullRow\x00SeekEnd\x00IdxInsert\x00SorterInsert\x00IdxDelete\x00DeferredSeek\x00IdxRowid\x00FinishSeek\x00Destroy\x00Clear\x00ResetSorter\x00CreateBtree\x00SqlExec\x00ParseSchema\x00LoadAnalysis\x00DropTable\x00DropIndex\x00DropTrigger\x00IntegrityCk\x00RowSetAdd\x00Real\x00Param\x00FkCounter\x00MemMax\x00OffsetLimit\x00AggInverse\x00AggStep\x00AggStep1\x00AggValue\x00AggFinal\x00Expire\x00CursorLock\x00CursorUnlock\x00TableLock\x00VBegin\x00VCreate\x00VDestroy\x00VOpen\x00VColumn\x00VRename\x00Pagecount\x00MaxPgcnt\x00Trace\x00CursorHint\x00ReleaseReg\x00Noop\x00Explain\x00Abortable\x00open\x00close\x00access\x00getcwd\x00stat\x00fstat\x00ftruncate\x00fcntl\x00read\x00pread\x00pread64\x00write\x00pwrite\x00pwrite64\x00fchmod\x00fallocate\x00unlink\x00openDirectory\x00mkdir\x00rmdir\x00fchown\x00geteuid\x00mmap\x00munmap\x00mremap\x00getpagesize\x00readlink\x00lstat\x00ioctl\x00attempt to open \"%s\" as file descriptor %d\x00/dev/null\x00os_unix.c:%d: (%d) %s(%s) - %s\x00cannot fstat db file %s\x00file unlinked while open: %s\x00multiple links to file: %s\x00file renamed while open: %s\x00%s\x00full_fsync\x00%s-shm\x00readonly_shm\x00psow\x00unix-excl\x00%s.lock\x00SQLITE_TMPDIR\x00TMPDIR\x00/var/tmp\x00/usr/tmp\x00/tmp\x00%s/etilqs_%llx%c\x00modeof\x00fsync\x00/dev/urandom\x00unix\x00unix-none\x00unix-dotfile\x00memdb\x00memdb(%p,%lld)\x00PRAGMA \"%w\".page_count\x00ATTACH x AS %Q\x00recovered %d pages from %s\x00-journal\x00-wal\x00nolock\x00immutable\x00recovered %d frames from WAL file %s\x00cannot limit WAL size: %s\x00SQLite format 3\x00:memory:\x00@ \x00\n\x00invalid page number %d\x002nd reference to page %d\x00Failed to read ptrmap key=%d\x00Bad ptr map entry key=%d expected=(%d,%d) got=(%d,%d)\x00failed to get page %d\x00freelist leaf count too big on page %d\x00%s is %d but should be %d\x00size\x00overflow list length\x00Page %u: \x00unable to get the page. error code=%d\x00btreeInitPage() returns error code %d\x00free space corruption\x00On tree page %u cell %d: \x00On page %u at right child: \x00Offset %d out of range %d..%d\x00Extends off end of page\x00Rowid %lld out of order\x00Child page depth differs\x00Multiple uses for byte %u of page %u\x00Fragmentation of %d bytes reported as %d on page %u\x00Main freelist: \x00max rootpage (%d) disagrees with header (%d)\x00incremental_vacuum enabled with a max rootpage of zero\x00Page %d is never used\x00Pointer map page %d is referenced\x00unknown database %s\x00destination database is in use\x00source and destination must be distinct\x00%!.15g\x00-\x00%s%s\x00k(%d\x00B\x00,%s%s%s\x00N.\x00)\x00%.18s-%s\x00%s(%d)\x00%lld\x00%d\x00(blob)\x00vtab:%p\x00%c%u\x00]\x00program\x00?\x008\x0016LE\x0016BE\x00addr\x00opcode\x00p1\x00p2\x00p3\x00p4\x00p5\x00comment\x00id\x00parent\x00notused\x00detail\x00%.4c%s%.16c\x00MJ delete: %s\x00MJ collide: %s\x00-mj%06X9%02X\x00FOREIGN KEY constraint failed\x00a CHECK constraint\x00a generated column\x00an index\x00non-deterministic use of %s() in %s\x00API called with finalized prepared statement\x00API called with NULL prepared statement\x00string or blob too big\x00bind on a busy prepared statement: [%s]\x00-- \x00'%.*q'\x00zeroblob(%d)\x00x'\x00%02x\x00'\x00%s constraint failed\x00%z: %s\x00abort at %d in [%s]: %s\x00cannot open savepoint - SQL statements in progress\x00no such savepoint: %s\x00cannot release savepoint - SQL statements in progress\x00cannot commit transaction - SQL statements in progress\x00cannot start a transaction within a transaction\x00cannot rollback - no transaction is active\x00cannot commit - no transaction is active\x00database schema has changed\x00index corruption\x00sqlite_master\x00SELECT*FROM\"%w\".%s WHERE %s ORDER BY rowid\x00too many levels of trigger recursion\x00cannot change %s wal mode from within a transaction\x00into\x00out of\x00database table is locked: %s\x00-- %s\x00statement aborts at %d: [%s] %s\x00out of memory\x00NOT NULL\x00UNIQUE\x00CHECK\x00FOREIGN KEY\x00cannot open value of type %s\x00null\x00real\x00integer\x00no such rowid: %lld\x00cannot open virtual table: %s\x00cannot open table without rowid: %s\x00cannot open view: %s\x00no such column: \"%s\"\x00foreign key\x00indexed\x00cannot open %s column for writing\x00main\x00new\x00old\x00excluded\x00misuse of aliased aggregate %s\x00misuse of aliased window function %s\x00row value misused\x00double-quoted string literal: \"%w\"\x00no such column\x00ambiguous column name\x00%s: %s.%s.%s\x00%s: %s.%s\x00%s: %s\x00partial index WHERE clauses\x00index expressions\x00CHECK constraints\x00generated columns\x00%s prohibited in %s\x00true\x00false\x00the \".\" operator\x00second argument to likelihood() must be a constant between 0.0 and 1.0\x00not authorized to use function: %s\x00non-deterministic functions\x00%.*s() may not be used as a window function\x00window\x00aggregate\x00misuse of %s function %.*s()\x00no such function: %.*s\x00wrong number of arguments to function %.*s()\x00FILTER may not be used with non-aggregate %.*s()\x00subqueries\x00parameters\x00%r %s BY term out of range - should be between 1 and %d\x00too many terms in ORDER BY clause\x00ORDER\x00%r ORDER BY term does not match any column in the result set\x00too many terms in %s BY clause\x00a GROUP BY clause is required before HAVING\x00GROUP\x00aggregate functions are not allowed in the GROUP BY clause\x00Expression tree is too large (maximum depth %d)\x000\x00too many arguments on function %T\x00unsafe use of %s()\x00variable number must be between ?1 and ?%d\x00too many SQL variables\x00%d columns assigned %d values\x00too many columns in %s\x00_ROWID_\x00ROWID\x00OID\x00USING ROWID SEARCH ON TABLE %s FOR IN-OPERATOR\x00USING INDEX %s FOR IN-OPERATOR\x00sub-select returns %d columns - expected %d\x00REUSE LIST SUBQUERY %d\x00%sLIST SUBQUERY %d\x00CORRELATED \x00REUSE SUBQUERY %d\x00%sSCALAR SUBQUERY %d\x001\x000x\x00hex literal too big: %s%s\x00generated column loop on \"%s\"\x00misuse of aggregate: %s()\x00unknown function: %s()\x00RAISE() may only be used within a trigger-program\x00B\x00C\x00D\x00E\x00sqlite_\x00table %s may not be altered\x00SELECT 1 FROM \"%w\".sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, %d, %Q, %d)=NULL \x00SELECT 1 FROM temp.sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, 1, %Q, %d)=NULL \x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_quotefix(%Q, sql)WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%'\x00UPDATE temp.sqlite_master SET sql = sqlite_rename_quotefix('temp', sql)WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%'\x00there is already another table or index with this name: %s\x00table\x00view %s may not be altered\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, %d) WHERE (type!='index' OR tbl_name=%Q COLLATE nocase)AND name NOT LIKE 'sqliteX_%%' ESCAPE 'X'\x00UPDATE %Q.sqlite_master SET tbl_name = %Q, name = CASE WHEN type='table' THEN %Q WHEN name LIKE 'sqliteX_autoindex%%' ESCAPE 'X' AND type='index' THEN 'sqlite_autoindex_' || %Q || substr(name,%d+18) ELSE name END WHERE tbl_name=%Q COLLATE nocase AND (type='table' OR type='index' OR type='trigger');\x00sqlite_sequence\x00UPDATE \"%w\".sqlite_sequence set name = %Q WHERE name = %Q\x00UPDATE sqlite_temp_schema SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, 1), tbl_name = CASE WHEN tbl_name=%Q COLLATE nocase AND sqlite_rename_test(%Q, sql, type, name, 1, 'after rename', 0) THEN %Q ELSE tbl_name END WHERE type IN ('view', 'trigger')\x00after rename\x00SELECT raise(ABORT,%Q) FROM \"%w\".\"%w\"\x00Cannot add a PRIMARY KEY column\x00Cannot add a UNIQUE column\x00Cannot add a REFERENCES column with non-NULL default value\x00Cannot add a NOT NULL column with default value NULL\x00Cannot add a column with non-constant default\x00cannot add a STORED column\x00UPDATE \"%w\".sqlite_master SET sql = printf('%%.%ds, ',sql) || %Q || substr(sql,1+length(printf('%%.%ds',sql))) WHERE type = 'table' AND name = %Q\x00virtual tables may not be altered\x00Cannot add a column to a view\x00sqlite_altertab_%s\x00view\x00virtual table\x00cannot %s %s \"%s\"\x00drop column from\x00rename columns of\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, %d) WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND (type != 'index' OR tbl_name = %Q) AND sql NOT LIKE 'create virtual%%'\x00UPDATE temp.sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, 1) WHERE type IN ('trigger', 'view')\x00error in %s %s%s%s: %s\x00 \x00\"%w\" \x00%Q%s\x00%.*s%s\x00cannot drop %s column: \"%s\"\x00PRIMARY KEY\x00cannot drop column \"%s\": no other columns exist\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_drop_column(%d, sql, %d) WHERE (type=='table' AND tbl_name=%Q COLLATE nocase)\x00after drop column\x00sqlite_rename_column\x00sqlite_rename_table\x00sqlite_rename_test\x00sqlite_drop_column\x00sqlite_rename_quotefix\x00CREATE TABLE %Q.%s(%s)\x00DELETE FROM %Q.%s WHERE %s=%Q\x00DELETE FROM %Q.%s\x00sqlite_stat1\x00tbl,idx,stat\x00sqlite_stat4\x00tbl,idx,neq,nlt,ndlt,sample\x00sqlite_stat3\x00stat_init\x00stat_push\x00%llu\x00 %llu\x00%llu \x00stat_get\x00sqlite\\_%\x00BBB\x00idx\x00tbl\x00unordered*\x00sz=[0-9]*\x00noskipscan*\x00SELECT idx,count(*) FROM %Q.sqlite_stat4 GROUP BY idx\x00SELECT idx,neq,nlt,ndlt,sample FROM %Q.sqlite_stat4\x00SELECT tbl,idx,stat FROM %Q.sqlite_stat1\x00x\x00\x00too many attached databases - max %d\x00database %s is already in use\x00database is already attached\x00attached databases must use the same text encoding as main database\x00unable to open database: %s\x00no such database: %s\x00cannot detach database %s\x00database %s is locked\x00sqlite_detach\x00sqlite_attach\x00%s cannot use variables\x00%s %T cannot reference objects in database %s\x00authorizer malfunction\x00%s.%s\x00%s.%z\x00access to %z is prohibited\x00not authorized\x00sqlite_temp_schema\x00sqlite_schema\x00sqlite_temp_master\x00pragma_\x00no such view\x00no such table\x00corrupt database\x00unknown database %T\x00object name reserved for internal use: %s\x00temporary table name must be unqualified\x00table %T already exists\x00there is already an index named %s\x00sqlite_returning\x00cannot use RETURNING in a trigger\x00too many columns on %s\x00duplicate column name: %s\x00default value of column [%s] is not constant\x00cannot use DEFAULT on a generated column\x00generated columns cannot be part of the PRIMARY KEY\x00table \"%s\" has more than one primary key\x00INTEGER\x00AUTOINCREMENT is only allowed on an INTEGER PRIMARY KEY\x00virtual tables cannot use computed columns\x00virtual\x00stored\x00error in generated column \"%s\"\x00,\x00\n \x00,\n \x00\n)\x00CREATE TABLE \x00 TEXT\x00 NUM\x00 INT\x00 REAL\x00AUTOINCREMENT not allowed on WITHOUT ROWID tables\x00PRIMARY KEY missing on table %s\x00must have at least one non-generated column\x00TABLE\x00VIEW\x00CREATE %s %.*s\x00UPDATE %Q.sqlite_master SET type='%s', name=%Q, tbl_name=%Q, rootpage=#%d, sql=%Q WHERE rowid=#%d\x00CREATE TABLE %Q.sqlite_sequence(name,seq)\x00tbl_name='%q' AND type!='trigger'\x00parameters are not allowed in views\x00view %s is circularly defined\x00corrupt schema\x00UPDATE %Q.sqlite_master SET rootpage=%d WHERE #%d AND rootpage=#%d\x00sqlite_stat%d\x00DELETE FROM %Q.sqlite_sequence WHERE name=%Q\x00DELETE FROM %Q.sqlite_master WHERE tbl_name=%Q and type!='trigger'\x00table %s may not be dropped\x00use DROP TABLE to delete table %s\x00use DROP VIEW to delete view %s\x00foreign key on %s should reference only one column of table %T\x00number of columns in foreign key does not match the number of columns in the referenced table\x00unknown column \"%s\" in foreign key definition\x00unsupported use of NULLS %s\x00FIRST\x00LAST\x00index\x00cannot create a TEMP index on non-TEMP table \"%s\"\x00table %s may not be indexed\x00views may not be indexed\x00virtual tables may not be indexed\x00there is already a table named %s\x00index %s already exists\x00sqlite_autoindex_%s_%d\x00expressions prohibited in PRIMARY KEY and UNIQUE constraints\x00conflicting ON CONFLICT clauses specified\x00invalid rootpage\x00CREATE%s INDEX %.*s\x00 UNIQUE\x00INSERT INTO %Q.sqlite_master VALUES('index',%Q,%Q,#%d,%Q);\x00name='%q' AND type='index'\x00no such index: %S\x00index associated with UNIQUE or PRIMARY KEY constraint cannot be dropped\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='index'\x00too many FROM clause terms, max: %d\x00a JOIN clause is required before %s\x00ON\x00USING\x00BEGIN\x00ROLLBACK\x00COMMIT\x00RELEASE\x00unable to open a temporary database file for storing temporary tables\x00index '%q'\x00, \x00%s.rowid\x00unable to identify the object to be reindexed\x00duplicate WITH table name: %s\x00no such collation sequence: %s\x00table %s may not be modified\x00cannot modify %s because it is a view\x00rows deleted\x00text\x00blob\x00integer overflow\x00%.*f\x00LIKE or GLOB pattern too complex\x00ESCAPE expression must be a single character\x00%!.20e\x00?000\x00MATCH\x00like\x00implies_nonnull_row\x00expr_compare\x00expr_implies_expr\x00soundex\x00load_extension\x00sqlite_compileoption_used\x00sqlite_compileoption_get\x00unlikely\x00likelihood\x00likely\x00sqlite_offset\x00ltrim\x00rtrim\x00trim\x00min\x00max\x00typeof\x00length\x00instr\x00printf\x00unicode\x00char\x00abs\x00round\x00upper\x00lower\x00hex\x00ifnull\x00random\x00randomblob\x00nullif\x00sqlite_version\x00sqlite_source_id\x00sqlite_log\x00quote\x00last_insert_rowid\x00changes\x00total_changes\x00replace\x00zeroblob\x00substr\x00substring\x00sum\x00total\x00avg\x00count\x00group_concat\x00glob\x00coalesce\x00sign\x00iif\x00foreign key mismatch - \"%w\" referencing \"%w\"\x00cannot INSERT into generated column \"%s\"\x00table %S has no column named %s\x00table %S has %d columns but %d values were supplied\x00%d values for %d columns\x00UPSERT not implemented for virtual table \"%s\"\x00cannot UPSERT a view\x00rows inserted\x00sqlite3_extension_init\x00sqlite3_\x00lib\x00_init\x00no entry point [%s] in shared library [%s]\x00error during initialization: %s\x00unable to open shared library [%.*s]\x00so\x00automatic extension loading failed: %s\x00seq\x00from\x00to\x00on_update\x00on_delete\x00match\x00cid\x00name\x00type\x00notnull\x00dflt_value\x00pk\x00hidden\x00seqno\x00desc\x00coll\x00key\x00builtin\x00enc\x00narg\x00flags\x00wdth\x00hght\x00flgs\x00unique\x00origin\x00partial\x00rowid\x00fkid\x00file\x00busy\x00log\x00checkpointed\x00database\x00status\x00cache_size\x00timeout\x00analysis_limit\x00application_id\x00auto_vacuum\x00automatic_index\x00busy_timeout\x00cache_spill\x00case_sensitive_like\x00cell_size_check\x00checkpoint_fullfsync\x00collation_list\x00compile_options\x00count_changes\x00data_version\x00database_list\x00default_cache_size\x00defer_foreign_keys\x00empty_result_callbacks\x00encoding\x00foreign_key_check\x00foreign_key_list\x00foreign_keys\x00freelist_count\x00full_column_names\x00fullfsync\x00function_list\x00hard_heap_limit\x00ignore_check_constraints\x00incremental_vacuum\x00index_info\x00index_list\x00index_xinfo\x00integrity_check\x00journal_mode\x00journal_size_limit\x00legacy_alter_table\x00locking_mode\x00max_page_count\x00mmap_size\x00module_list\x00optimize\x00page_count\x00page_size\x00pragma_list\x00query_only\x00quick_check\x00read_uncommitted\x00recursive_triggers\x00reverse_unordered_selects\x00schema_version\x00secure_delete\x00short_column_names\x00shrink_memory\x00soft_heap_limit\x00synchronous\x00table_info\x00table_xinfo\x00temp_store\x00temp_store_directory\x00threads\x00trusted_schema\x00user_version\x00wal_autocheckpoint\x00wal_checkpoint\x00writable_schema\x00onoffalseyestruextrafull\x00exclusive\x00normal\x00none\x00full\x00incremental\x00memory\x00temporary storage cannot be changed from within a transaction\x00SET NULL\x00SET DEFAULT\x00CASCADE\x00RESTRICT\x00NO ACTION\x00delete\x00persist\x00off\x00truncate\x00wal\x00w\x00a\x00s\x00sissii\x00utf8\x00utf16le\x00utf16be\x00-%T\x00fast\x00not a writable directory\x00Safety level may not be changed inside a transaction\x00issisii\x00issisi\x00iisX\x00isiX\x00c\x00u\x00isisi\x00iss\x00is\x00iissssss\x00NONE\x00siX\x00*** in database %s ***\n\x00NULL value in %s.%s\x00CHECK constraint failed in %s\x00row \x00 missing from index \x00non-unique entry in index \x00wrong # of entries in index \x00ok\x00unsupported encoding: %s\x00restart\x00ANALYZE \"%w\".\"%w\"\x00UTF8\x00UTF-8\x00UTF-16le\x00UTF-16be\x00UTF16le\x00UTF16be\x00UTF-16\x00UTF16\x00CREATE TABLE x\x00%c\"%s\"\x00(\"%s\"\x00,arg HIDDEN\x00,schema HIDDEN\x00PRAGMA \x00%Q.\x00=%Q\x00error in %s %s after %s: %s\x00rename\x00drop column\x00malformed database schema (%s)\x00%z - %s\x00orphan index\x00CREATE TABLE x(type text,name text,tbl_name text,rootpage int,sql text)\x00unsupported file format\x00SELECT*FROM\"%w\".%s ORDER BY rowid\x00database schema is locked: %s\x00statement too long\x00unknown or unsupported join type: %T %T%s%T\x00RIGHT and FULL OUTER JOINs are not currently supported\x00naturaleftouterightfullinnercross\x00a NATURAL join may not have an ON or USING clause\x00cannot have both ON and USING clauses in the same join\x00cannot join using column %s - column not present in both tables\x00UNION ALL\x00INTERSECT\x00EXCEPT\x00UNION\x00USE TEMP B-TREE FOR %s\x00column%d\x00%.*z:%u\x00cannot use window functions in recursive queries\x00recursive aggregate queries not supported\x00SETUP\x00RECURSIVE STEP\x00SCAN %d CONSTANT ROW%s\x00S\x00COMPOUND QUERY\x00LEFT-MOST SUBQUERY\x00%s USING TEMP B-TREE\x00all VALUES must have the same number of terms\x00SELECTs to the left and right of %s do not have the same number of result columns\x00MERGE (%s)\x00LEFT\x00RIGHT\x00no such index: %s\x00'%s' is not a function\x00multiple references to recursive table: %s\x00circular reference: %s\x00table %s has %d values for %d columns\x00multiple recursive references: %s\x00recursive reference in a subquery: %s\x00subquery_%u\x00too many references to \"%s\": max 65535\x00access to view \"%s\" prohibited\x00unsafe use of virtual table \"%s\"\x00*\x00%s.%s.%s\x00no such table: %s\x00no tables specified\x00too many columns in result set\x00DISTINCT aggregates must have exactly one argument\x00USE TEMP B-TREE FOR %s(DISTINCT)\x00SCAN %s%s%s\x00 USING COVERING INDEX \x00target object/alias may not appear in FROM clause: %s\x00expected %d columns for '%s' but got %d\x00CO-ROUTINE %!S\x00MATERIALIZE %!S\x00DISTINCT\x00GROUP BY\x00RIGHT PART OF ORDER BY\x00ORDER BY\x00sqlite3_get_table() called with two or more incompatible queries\x00temporary trigger may not have qualified name\x00trigger\x00cannot create triggers on virtual tables\x00trigger %T already exists\x00cannot create trigger on system table\x00cannot create %s trigger on view: %S\x00BEFORE\x00AFTER\x00cannot create INSTEAD OF trigger on table: %S\x00INSERT INTO %Q.sqlite_master VALUES('trigger',%Q,%Q,0,'CREATE TRIGGER %q')\x00type='trigger' AND name='%q'\x00no such trigger: %S\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='trigger'\x00%s RETURNING is not available on virtual tables\x00DELETE\x00UPDATE\x00RETURNING may not use \"TABLE.*\" wildcards\x00-- TRIGGER %s\x00cannot UPDATE generated column \"%s\"\x00no such column: %s\x00rows updated\x00%r \x00%sON CONFLICT clause does not match any PRIMARY KEY or UNIQUE constraint\x00CRE\x00INS\x00cannot VACUUM from within a transaction\x00cannot VACUUM - SQL statements in progress\x00non-text filename\x00ATTACH %Q AS vacuum_db\x00output file already exists\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='table'AND name<>'sqlite_sequence' AND coalesce(rootpage,1)>0\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='index'\x00SELECT'INSERT INTO vacuum_db.'||quote(name)||' SELECT*FROM\"%w\".'||quote(name)FROM vacuum_db.sqlite_schema WHERE type='table'AND coalesce(rootpage,1)>0\x00INSERT INTO vacuum_db.sqlite_schema SELECT*FROM \"%w\".sqlite_schema WHERE type IN('view','trigger') OR(type='table'AND rootpage=0)\x00CREATE VIRTUAL TABLE %T\x00UPDATE %Q.sqlite_master SET type='table', name=%Q, tbl_name=%Q, rootpage=0, sql=%Q WHERE rowid=#%d\x00name=%Q AND sql=%Q\x00vtable constructor called recursively: %s\x00vtable constructor failed: %s\x00vtable constructor did not declare schema: %s\x00no such module: %s\x00\x00 AND \x00(\x00 (\x00%s=?\x00ANY(%s)\x00>\x00<\x00%s %S\x00SEARCH\x00SCAN\x00AUTOMATIC PARTIAL COVERING INDEX\x00AUTOMATIC COVERING INDEX\x00COVERING INDEX %s\x00INDEX %s\x00 USING \x00=\x00>? AND rowid<\x00 USING INTEGER PRIMARY KEY (rowid%s?)\x00 VIRTUAL TABLE INDEX %d:%s\x00MULTI-INDEX OR\x00INDEX %d\x00regexp\x00ON clause references tables to its right\x00NOCASE\x00too many arguments on %s() - max %d\x00automatic index on %s(%s)\x00auto-index\x00%s.xBestIndex malfunction\x00abbreviated query algorithm search\x00no query solution\x00at most %d tables in a join\x00SCAN CONSTANT ROW\x00second argument to nth_value must be a positive integer\x00argument of ntile must be a positive integer\x00row_number\x00dense_rank\x00rank\x00percent_rank\x00cume_dist\x00ntile\x00last_value\x00nth_value\x00first_value\x00lead\x00lag\x00no such window: %s\x00RANGE with offset PRECEDING/FOLLOWING requires one ORDER BY expression\x00FILTER clause may only be used with aggregate window functions\x00unsupported frame specification\x00PARTITION clause\x00ORDER BY clause\x00frame specification\x00cannot override %s of window: %s\x00DISTINCT is not supported for window functions\x00frame starting offset must be a non-negative integer\x00frame ending offset must be a non-negative integer\x00frame starting offset must be a non-negative number\x00frame ending offset must be a non-negative number\x00%s clause should come after %s not before\x00LIMIT\x00too many terms in compound SELECT\x00syntax error after column name \"%.*s\"\x00parser stack overflow\x00unknown table option: %.*s\x00set list\x00near \"%T\": syntax error\x00qualified table names are not allowed on INSERT, UPDATE, and DELETE statements within triggers\x00the INDEXED BY clause is not allowed on UPDATE or DELETE statements within triggers\x00the NOT INDEXED clause is not allowed on UPDATE or DELETE statements within triggers\x00incomplete input\x00unrecognized token: \"%.*s\"\x00%s in \"%s\"\x00create\x00temp\x00temporary\x00end\x00explain\x00unable to close due to unfinalized statements or unfinished backups\x00unknown error\x00abort due to ROLLBACK\x00another row available\x00no more rows available\x00not an error\x00SQL logic error\x00access permission denied\x00query aborted\x00database is locked\x00database table is locked\x00attempt to write a readonly database\x00interrupted\x00disk I/O error\x00database disk image is malformed\x00unknown operation\x00database or disk is full\x00unable to open database file\x00locking protocol\x00constraint failed\x00datatype mismatch\x00bad parameter or other API misuse\x00authorization denied\x00column index out of range\x00file is not a database\x00notification message\x00warning message\x00unable to delete/modify user-function due to active statements\x00unable to use function %s in the requested context\x00unknown database: %s\x00unable to delete/modify collation sequence due to active statements\x00file:\x00localhost\x00invalid uri authority: %.*s\x00vfs\x00cache\x00mode\x00no such %s mode: %s\x00%s mode not allowed: %s\x00no such vfs: %s\x00shared\x00private\x00ro\x00rw\x00rwc\x00RTRIM\x00\x00\x00\x00%s at line %d of [%.10s]\x00database corruption\x00misuse\x00cannot open file\x00no such table column: %s.%s\x00SQLITE_\x00database is deadlocked\x00array\x00object\x000123456789abcdef\x00JSON cannot hold BLOB values\x00malformed JSON\x00[0]\x00JSON path error near '%q'\x00json_%s() needs an odd number of arguments\x00json_object() requires an even number of arguments\x00json_object() labels must be TEXT\x00set\x00insert\x00[]\x00{}\x00CREATE TABLE x(key,value,type,atom,id,parent,fullkey,path,json HIDDEN,root HIDDEN)\x00[%d]\x00.%.*s\x00$\x00json\x00json_array\x00json_array_length\x00json_extract\x00json_insert\x00json_object\x00json_patch\x00json_quote\x00json_remove\x00json_replace\x00json_set\x00json_type\x00json_valid\x00json_group_array\x00json_group_object\x00json_each\x00json_tree\x00%s_node\x00data\x00DROP TABLE '%q'.'%q_node';DROP TABLE '%q'.'%q_rowid';DROP TABLE '%q'.'%q_parent';\x00RtreeMatchArg\x00SELECT * FROM %Q.%Q\x00UNIQUE constraint failed: %s.%s\x00rtree constraint failed: %s.(%s<=%s)\x00ALTER TABLE %Q.'%q_node' RENAME TO \"%w_node\";ALTER TABLE %Q.'%q_parent' RENAME TO \"%w_parent\";ALTER TABLE %Q.'%q_rowid' RENAME TO \"%w_rowid\";\x00SELECT stat FROM %Q.sqlite_stat1 WHERE tbl = '%q_rowid'\x00node\x00CREATE TABLE \"%w\".\"%w_rowid\"(rowid INTEGER PRIMARY KEY,nodeno\x00,a%d\x00);CREATE TABLE \"%w\".\"%w_node\"(nodeno INTEGER PRIMARY KEY,data);\x00CREATE TABLE \"%w\".\"%w_parent\"(nodeno INTEGER PRIMARY KEY,parentnode);\x00INSERT INTO \"%w\".\"%w_node\"VALUES(1,zeroblob(%d))\x00INSERT INTO\"%w\".\"%w_rowid\"(rowid,nodeno)VALUES(?1,?2)ON CONFLICT(rowid)DO UPDATE SET nodeno=excluded.nodeno\x00SELECT * FROM \"%w\".\"%w_rowid\" WHERE rowid=?1\x00UPDATE \"%w\".\"%w_rowid\"SET \x00a%d=coalesce(?%d,a%d)\x00a%d=?%d\x00 WHERE rowid=?1\x00INSERT OR REPLACE INTO '%q'.'%q_node' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_node' WHERE nodeno = ?1\x00SELECT nodeno FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_rowid' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00SELECT parentnode FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_parent' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00PRAGMA %Q.page_size\x00SELECT length(data) FROM '%q'.'%q_node' WHERE nodeno = 1\x00undersize RTree blobs in \"%q_node\"\x00Wrong number of columns for an rtree table\x00Too few columns for an rtree table\x00Too many columns for an rtree table\x00Auxiliary rtree columns must be last\x00CREATE TABLE x(%.*s INT\x00,%.*s\x00);\x00,%.*s REAL\x00,%.*s INT\x00{%lld\x00 %g\x00}\x00Invalid argument to rtreedepth()\x00%z%s%z\x00SELECT data FROM %Q.'%q_node' WHERE nodeno=?\x00Node %lld missing from database\x00SELECT parentnode FROM %Q.'%q_parent' WHERE nodeno=?1\x00SELECT nodeno FROM %Q.'%q_rowid' WHERE rowid=?1\x00Mapping (%lld -> %lld) missing from %s table\x00%_rowid\x00%_parent\x00Found (%lld -> %lld) in %s table, expected (%lld -> %lld)\x00Dimension %d of cell %d on node %lld is corrupt\x00Dimension %d of cell %d on node %lld is corrupt relative to parent\x00Node %lld is too small (%d bytes)\x00Rtree depth out of range (%d)\x00Node %lld is too small for cell count of %d (%d bytes)\x00SELECT count(*) FROM %Q.'%q%s'\x00Wrong number of entries in %%%s table - expected %lld, actual %lld\x00SELECT * FROM %Q.'%q_rowid'\x00Schema corrupt or not an rtree\x00_rowid\x00_parent\x00END\x00wrong number of arguments to function rtreecheck()\x00[\x00[%!g,%!g],\x00[%!g,%!g]]\x00\x00CREATE TABLE x(_shape\x00,%s\x00rtree\x00fullscan\x00_shape does not contain a valid polygon\x00geopoly_overlap\x00geopoly_within\x00geopoly\x00geopoly_area\x00geopoly_blob\x00geopoly_json\x00geopoly_svg\x00geopoly_contains_point\x00geopoly_debug\x00geopoly_bbox\x00geopoly_xform\x00geopoly_regular\x00geopoly_ccw\x00geopoly_group_bbox\x00rtreenode\x00rtreedepth\x00rtreecheck\x00rtree_i32\x00corrupt fossil delta\x00DROP TRIGGER IF EXISTS temp.rbu_insert_tr;DROP TRIGGER IF EXISTS temp.rbu_update1_tr;DROP TRIGGER IF EXISTS temp.rbu_update2_tr;DROP TRIGGER IF EXISTS temp.rbu_delete_tr;\x00SELECT rbu_target_name(name, type='view') AS target, name FROM sqlite_schema WHERE type IN ('table', 'view') AND target IS NOT NULL %s ORDER BY name\x00AND rootpage!=0 AND rootpage IS NOT NULL\x00SELECT name, rootpage, sql IS NULL OR substr(8, 6)=='UNIQUE' FROM main.sqlite_schema WHERE type='index' AND tbl_name = ?\x00SELECT (sql LIKE 'create virtual%%'), rootpage FROM sqlite_schema WHERE name=%Q\x00PRAGMA index_list=%Q\x00SELECT rootpage FROM sqlite_schema WHERE name = %Q\x00PRAGMA table_info=%Q\x00PRAGMA main.index_list = %Q\x00PRAGMA main.index_xinfo = %Q\x00SELECT * FROM '%q'\x00rbu_\x00rbu_rowid\x00table %q %s rbu_rowid column\x00may not have\x00requires\x00PRAGMA table_info(%Q)\x00column missing from %q: %s\x00%z%s\"%w\"\x00%z%s%s\"%w\"%s\x00SELECT max(_rowid_) FROM \"%s%w\"\x00 WHERE _rowid_ > %lld \x00 DESC\x00quote(\x00||','||\x00SELECT %s FROM \"%s%w\" ORDER BY %s LIMIT 1\x00 WHERE (%s) > (%s) \x00_rowid_\x00%z%s \"%w\" COLLATE %Q\x00%z%s \"rbu_imp_%d%w\" COLLATE %Q DESC\x00%z%s quote(\"rbu_imp_%d%w\")\x00SELECT %s FROM \"rbu_imp_%w\" ORDER BY %s LIMIT 1\x00%z%s%s\x00(%s) > (%s)\x00%z%s(%.*s) COLLATE %Q\x00%z%s\"%w\" COLLATE %Q\x00%z%s\"rbu_imp_%d%w\"%s\x00%z%s\"rbu_imp_%d%w\" %s COLLATE %Q\x00%z%s\"rbu_imp_%d%w\" IS ?\x00%z%s%s.\"%w\"\x00%z%sNULL\x00%z, %s._rowid_\x00_rowid_ = ?%d\x00%z%sc%d=?%d\x00_rowid_ = (SELECT id FROM rbu_imposter2 WHERE %z)\x00%z%s\"%w\"=?%d\x00invalid rbu_control value\x00%z%s\"%w\"=rbu_delta(\"%w\", ?%d)\x00%z%s\"%w\"=rbu_fossil_delta(\"%w\", ?%d)\x00PRIMARY KEY(\x00%z%s\"%w\"%s\x00%z)\x00SELECT name FROM sqlite_schema WHERE rootpage = ?\x00%z%sc%d %s COLLATE %Q\x00%z%sc%d%s\x00%z, id INTEGER\x00CREATE TABLE rbu_imposter2(%z, PRIMARY KEY(%z)) WITHOUT ROWID\x00PRIMARY KEY \x00%z%s\"%w\" %s %sCOLLATE %Q%s\x00 NOT NULL\x00%z, %z\x00CREATE TABLE \"rbu_imp_%w\"(%z)%s\x00 WITHOUT ROWID\x00INSERT INTO %s.'rbu_tmp_%q'(rbu_control,%s%s) VALUES(%z)\x00SELECT trim(sql) FROM sqlite_schema WHERE type='index' AND name=?\x00 LIMIT -1 OFFSET %d\x00CREATE TABLE \"rbu_imp_%w\"( %s, PRIMARY KEY( %s ) ) WITHOUT ROWID\x00INSERT INTO \"rbu_imp_%w\" VALUES(%s)\x00DELETE FROM \"rbu_imp_%w\" WHERE %s\x00SELECT %s, 0 AS rbu_control FROM '%q' %s %s %s ORDER BY %s%s\x00AND\x00WHERE\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s ORDER BY %s%s\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s UNION ALL SELECT %s, rbu_control FROM '%q' %s %s typeof(rbu_control)='integer' AND rbu_control!=1 ORDER BY %s%s\x00rbu_imp_\x00INSERT INTO \"%s%w\"(%s%s) VALUES(%s)\x00, _rowid_\x00DELETE FROM \"%s%w\" WHERE %s\x00, rbu_rowid\x00CREATE TABLE IF NOT EXISTS %s.'rbu_tmp_%q' AS SELECT *%s FROM '%q' WHERE 0;\x00, 0 AS rbu_rowid\x00CREATE TEMP TRIGGER rbu_delete_tr BEFORE DELETE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update1_tr BEFORE UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update2_tr AFTER UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(4, %s);END;\x00CREATE TEMP TRIGGER rbu_insert_tr AFTER INSERT ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(0, %s);END;\x00,_rowid_ \x00,rbu_rowid\x00SELECT %s,%s rbu_control%s FROM '%q'%s %s %s %s\x000 AS \x00UPDATE \"%s%w\" SET %s WHERE %s\x00SELECT k, v FROM %s.rbu_state\x00file://%s-vacuum?modeof=%s\x00ATTACH %Q AS stat\x00CREATE TABLE IF NOT EXISTS %s.rbu_state(k INTEGER PRIMARY KEY, v)\x00cannot vacuum wal mode database\x00file:%s-vactmp?rbu_memory=1%s%s\x00&\x00rbu_tmp_insert\x00rbu_fossil_delta\x00rbu_target_name\x00SELECT * FROM sqlite_schema\x00rbu vfs not found\x00PRAGMA main.wal_checkpoint=restart\x00%s-oal\x00%s-wal\x00PRAGMA schema_version\x00PRAGMA schema_version = %d\x00INSERT OR REPLACE INTO %s.rbu_state(k, v) VALUES (%d, %d), (%d, %Q), (%d, %Q), (%d, %d), (%d, %d), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %Q) \x00PRAGMA main.%s\x00PRAGMA main.%s = %d\x00PRAGMA writable_schema=1\x00SELECT sql FROM sqlite_schema WHERE sql!='' AND rootpage!=0 AND name!='sqlite_sequence' ORDER BY type DESC\x00SELECT * FROM sqlite_schema WHERE rootpage=0 OR rootpage IS NULL\x00INSERT INTO sqlite_schema VALUES(?,?,?,?,?)\x00PRAGMA writable_schema=0\x00DELETE FROM %s.'rbu_tmp_%q'\x00rbu_state mismatch error\x00rbu_vfs_%d\x00SELECT count(*) FROM sqlite_schema WHERE type='index' AND tbl_name = %Q\x00rbu_index_cnt\x00SELECT 1 FROM sqlite_schema WHERE tbl_name = 'rbu_count'\x00SELECT sum(cnt * (1 + rbu_index_cnt(rbu_target_name(tbl))))FROM rbu_count\x00cannot update wal mode database\x00database modified during rbu %s\x00vacuum\x00update\x00BEGIN IMMEDIATE\x00PRAGMA journal_mode=off\x00-vactmp\x00DELETE FROM stat.rbu_state\x00rbu/zipvfs setup error\x00rbu(%s)/%z\x00rbu_memory\x00SELECT 0, 'tbl', '', 0, '', 1 UNION ALL SELECT 1, 'idx', '', 0, '', 2 UNION ALL SELECT 2, 'stat', '', 0, '', 0\x00PRAGMA '%q'.table_info('%q')\x00%z%s\"%w\".\"%w\".\"%w\"=\"%w\".\"%w\".\"%w\"\x00%z%s\"%w\".\"%w\".\"%w\" IS NOT \"%w\".\"%w\".\"%w\"\x00 OR \x00SELECT * FROM \"%w\".\"%w\" WHERE NOT EXISTS ( SELECT 1 FROM \"%w\".\"%w\" WHERE %s)\x00SELECT * FROM \"%w\".\"%w\", \"%w\".\"%w\" WHERE %s AND (%z)\x00table schemas do not match\x00SELECT tbl, ?2, stat FROM %Q.sqlite_stat1 WHERE tbl IS ?1 AND idx IS (CASE WHEN ?2=X'' THEN NULL ELSE ?2 END)\x00SELECT * FROM \x00 WHERE \x00 IS ?\x00SAVEPOINT changeset\x00RELEASE changeset\x00UPDATE main.\x00 SET \x00 = ?\x00idx IS CASE WHEN length(?4)=0 AND typeof(?4)='blob' THEN NULL ELSE ?4 END \x00DELETE FROM main.\x00 AND (?\x00AND \x00INSERT INTO main.\x00) VALUES(?\x00, ?\x00INSERT INTO main.sqlite_stat1 VALUES(?1, CASE WHEN length(?2)=0 AND typeof(?2)='blob' THEN NULL ELSE ?2 END, ?3)\x00DELETE FROM main.sqlite_stat1 WHERE tbl=?1 AND idx IS CASE WHEN length(?2)=0 AND typeof(?2)='blob' THEN NULL ELSE ?2 END AND (?4 OR stat IS ?3)\x00SAVEPOINT replace_op\x00RELEASE replace_op\x00SAVEPOINT changeset_apply\x00PRAGMA defer_foreign_keys = 1\x00sqlite3changeset_apply(): no such table: %s\x00sqlite3changeset_apply(): table %s has %d columns, expected %d or more\x00sqlite3changeset_apply(): primary key mismatch for table %s\x00PRAGMA defer_foreign_keys = 0\x00RELEASE changeset_apply\x00ROLLBACK TO changeset_apply\x00fts5: parser stack overflow\x00fts5: syntax error near \"%.*s\"\x00%z%.*s\x00wrong number of arguments to function highlight()\x00wrong number of arguments to function snippet()\x00snippet\x00highlight\x00bm25\x00prefix\x00malformed prefix=... directive\x00too many prefix indexes (max %d)\x00prefix length out of range (max 999)\x00tokenize\x00multiple tokenize=... directives\x00parse error in tokenize directive\x00content\x00multiple content=... directives\x00%Q.%Q\x00content_rowid\x00multiple content_rowid=... directives\x00columnsize\x00malformed columnsize=... directive\x00columns\x00malformed detail=... directive\x00unrecognized option: \"%.*s\"\x00reserved fts5 column name: %s\x00unindexed\x00unrecognized column option: %s\x00T.%Q\x00, T.%Q\x00, T.c%d\x00reserved fts5 table name: %s\x00parse error in \"%s\"\x00docsize\x00%Q.'%q_%s'\x00CREATE TABLE x(\x00%z%s%Q\x00%z, %Q HIDDEN, %s HIDDEN)\x00pgsz\x00hashsize\x00automerge\x00usermerge\x00crisismerge\x00SELECT k, v FROM %Q.'%q_config'\x00version\x00invalid fts5 file format (found %d, expected %d) - run 'rebuild'\x00unterminated string\x00fts5: syntax error near \"%.1s\"\x00OR\x00NOT\x00NEAR\x00expected integer, got \"%.*s\"\x00fts5: column queries are not supported (detail=none)\x00fts5: %s queries are not supported (detail!=full)\x00phrase\x00block\x00REPLACE INTO '%q'.'%q_data'(id, block) VALUES(?,?)\x00DELETE FROM '%q'.'%q_data' WHERE id>=? AND id<=?\x00DELETE FROM '%q'.'%q_idx' WHERE segid=?\x00PRAGMA %Q.data_version\x00SELECT pgno FROM '%q'.'%q_idx' WHERE segid=? AND term<=? ORDER BY term DESC LIMIT 1\x00INSERT INTO '%q'.'%q_idx'(segid,term,pgno) VALUES(?,?,?)\x00%s_data\x00id INTEGER PRIMARY KEY, block BLOB\x00segid, term, pgno, PRIMARY KEY(segid, term)\x00SELECT segid, term, (pgno>>1), (pgno&1) FROM %Q.'%q_idx' WHERE segid=%d ORDER BY 1, 2\x00\x00\x00\x00\x00\x00recursively defined fts5 content table\x00SELECT rowid, rank FROM %Q.%Q ORDER BY %s(\"%w\"%s%s) %s\x00DESC\x00ASC\x00reads\x00unknown special query: %.*s\x00SELECT %s\x00no such function: %s\x00parse error in rank function: %s\x00%s: table does not support scanning\x00delete-all\x00'delete-all' may only be used with a contentless or external content fts5 table\x00rebuild\x00'rebuild' may not be used with a contentless fts5 table\x00merge\x00integrity-check\x00cannot %s contentless fts5 table: %s\x00DELETE from\x00no such cursor: %lld\x00no such tokenizer: %s\x00error in tokenizer constructor\x00fts5_api_ptr\x00fts5: 2021-06-18 18:36:39 5c9a6c06871cb9fe42814af9c039eb6da5427a6ec28f187af7ebfb62eafa66e5\x00config\x00fts5\x00fts5_source_id\x00SELECT %s FROM %s T WHERE T.%Q >= ? AND T.%Q <= ? ORDER BY T.%Q ASC\x00SELECT %s FROM %s T WHERE T.%Q <= ? AND T.%Q >= ? ORDER BY T.%Q DESC\x00SELECT %s FROM %s T WHERE T.%Q=?\x00INSERT INTO %Q.'%q_content' VALUES(%s)\x00REPLACE INTO %Q.'%q_content' VALUES(%s)\x00DELETE FROM %Q.'%q_content' WHERE id=?\x00REPLACE INTO %Q.'%q_docsize' VALUES(?,?)\x00DELETE FROM %Q.'%q_docsize' WHERE id=?\x00SELECT sz FROM %Q.'%q_docsize' WHERE id=?\x00REPLACE INTO %Q.'%q_config' VALUES(?,?)\x00SELECT %s FROM %s AS T\x00DROP TABLE IF EXISTS %Q.'%q_data';DROP TABLE IF EXISTS %Q.'%q_idx';DROP TABLE IF EXISTS %Q.'%q_config';\x00DROP TABLE IF EXISTS %Q.'%q_docsize';\x00DROP TABLE IF EXISTS %Q.'%q_content';\x00ALTER TABLE %Q.'%q_%s' RENAME TO '%q_%s';\x00CREATE TABLE %Q.'%q_%q'(%s)%s\x00fts5: error creating shadow table %q_%s: %s\x00id INTEGER PRIMARY KEY\x00, c%d\x00id INTEGER PRIMARY KEY, sz BLOB\x00k PRIMARY KEY, v\x00DELETE FROM %Q.'%q_data';DELETE FROM %Q.'%q_idx';\x00DELETE FROM %Q.'%q_docsize';\x00SELECT count(*) FROM %Q.'%q_%s'\x00tokenchars\x00separators\x00L* N* Co\x00categories\x00remove_diacritics\x00unicode61\x00al\x00ance\x00ence\x00er\x00ic\x00able\x00ible\x00ant\x00ement\x00ment\x00ent\x00ion\x00ou\x00ism\x00ate\x00iti\x00ous\x00ive\x00ize\x00at\x00bl\x00ble\x00iz\x00ational\x00tional\x00tion\x00enci\x00anci\x00izer\x00logi\x00bli\x00alli\x00entli\x00eli\x00e\x00ousli\x00ization\x00ation\x00ator\x00alism\x00iveness\x00fulness\x00ful\x00ousness\x00aliti\x00iviti\x00biliti\x00ical\x00ness\x00icate\x00iciti\x00ative\x00alize\x00eed\x00ee\x00ed\x00ing\x00case_sensitive\x00ascii\x00porter\x00trigram\x00col\x00row\x00instance\x00fts5vocab: unknown table type: %Q\x00CREATE TABlE vocab(term, col, doc, cnt)\x00CREATE TABlE vocab(term, doc, cnt)\x00CREATE TABlE vocab(term, doc, col, offset)\x00wrong number of vtable arguments\x00recursive definition for %s.%s\x00SELECT t.%Q FROM %Q.%Q AS t WHERE t.%Q MATCH '*id'\x00no such fts5 table: %s.%s\x00fts5vocab\x002021-06-18 18:36:39 5c9a6c06871cb9fe42814af9c039eb6da5427a6ec28f187af7ebfb62eafa66e5\x00" var ts = (*reflect.StringHeader)(unsafe.Pointer(&ts1)).Data diff --git a/lib/sqlite_linux_amd64.go b/lib/sqlite_linux_amd64.go index d43f861..cdcf36f 100644 --- a/lib/sqlite_linux_amd64.go +++ b/lib/sqlite_linux_amd64.go @@ -107436,7 +107436,6 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt goto __4 goto __6 __6: - } } @@ -162886,7 +162885,6 @@ __15: goto __14 goto __16 __16: - } // This is a helper function for rbuObjIterCacheTableInfo(). It populates diff --git a/libtest/sqlite_linux_386.go b/libtest/sqlite_linux_386.go index 5cbf85c..089e179 100644 --- a/libtest/sqlite_linux_386.go +++ b/libtest/sqlite_linux_386.go @@ -40,6 +40,7 @@ const ( AT_EMPTY_PATH = 0x1000 AT_FDCWD = -100 AT_NO_AUTOMOUNT = 0x800 + AT_RECURSIVE = 0x8000 AT_REMOVEDIR = 0x200 AT_STATX_DONT_SYNC = 0x4000 AT_STATX_FORCE_SYNC = 0x2000 @@ -573,6 +574,7 @@ const ( F_OFD_SETLKW = 38 F_OK = 0 F_RDLCK = 0 + F_SEAL_FUTURE_WRITE = 0x0010 F_SEAL_GROW = 0x0004 F_SEAL_SEAL = 0x0001 F_SEAL_SHRINK = 0x0002 @@ -596,7 +598,7 @@ const ( F_ULOCK = 0 F_UNLCK = 2 F_WRLCK = 1 - GCC_VERSION = 8003000 + GCC_VERSION = 10002001 GEOPOLY_PI = 3.1415926535897932385 HASHSIZE = 97 HASHTABLE_HASH_1 = 383 @@ -697,6 +699,7 @@ const ( M10d_Any = 1 M10d_No = 2 M10d_Yes = 0 + MADV_COLD = 20 MADV_DODUMP = 17 MADV_DOFORK = 11 MADV_DONTDUMP = 16 @@ -709,6 +712,7 @@ const ( MADV_MERGEABLE = 12 MADV_NOHUGEPAGE = 15 MADV_NORMAL = 0 + MADV_PAGEOUT = 21 MADV_RANDOM = 1 MADV_REMOVE = 9 MADV_SEQUENTIAL = 2 @@ -2255,26 +2259,30 @@ const ( SRT_Table = 14 SRT_Union = 1 SRT_Upfrom = 15 - STATX_ALL = 0x0fff - STATX_ATIME = 0x0020 - STATX_ATTR_APPEND = 0x0020 - STATX_ATTR_AUTOMOUNT = 0x1000 - STATX_ATTR_COMPRESSED = 0x0004 - STATX_ATTR_ENCRYPTED = 0x0800 - STATX_ATTR_IMMUTABLE = 0x0010 - STATX_ATTR_NODUMP = 0x0040 - STATX_BASIC_STATS = 0x07ff - STATX_BLOCKS = 0x0400 - STATX_BTIME = 0x0800 - STATX_CTIME = 0x0080 - STATX_GID = 0x0010 - STATX_INO = 0x0100 - STATX_MODE = 0x0002 - STATX_MTIME = 0x0040 - STATX_NLINK = 0x0004 - STATX_SIZE = 0x0200 - STATX_TYPE = 0x0001 - STATX_UID = 0x0008 + STATX_ALL = 0x00000fff + STATX_ATIME = 0x00000020 + STATX_ATTR_APPEND = 0x00000020 + STATX_ATTR_AUTOMOUNT = 0x00001000 + STATX_ATTR_COMPRESSED = 0x00000004 + STATX_ATTR_DAX = 0x00200000 + STATX_ATTR_ENCRYPTED = 0x00000800 + STATX_ATTR_IMMUTABLE = 0x00000010 + STATX_ATTR_MOUNT_ROOT = 0x00002000 + STATX_ATTR_NODUMP = 0x00000040 + STATX_ATTR_VERITY = 0x00100000 + STATX_BASIC_STATS = 0x000007ff + STATX_BLOCKS = 0x00000400 + STATX_BTIME = 0x00000800 + STATX_CTIME = 0x00000080 + STATX_GID = 0x00000010 + STATX_INO = 0x00000100 + STATX_MNT_ID = 0x00001000 + STATX_MODE = 0x00000002 + STATX_MTIME = 0x00000040 + STATX_NLINK = 0x00000004 + STATX_SIZE = 0x00000200 + STATX_TYPE = 0x00000001 + STATX_UID = 0x00000008 STATX__RESERVED = 0x80000000 STAT_GET_NDLT = 4 STAT_GET_NEQ = 2 @@ -2315,6 +2323,7 @@ const ( SYNC_FILE_RANGE_WAIT_AFTER = 4 SYNC_FILE_RANGE_WAIT_BEFORE = 1 SYNC_FILE_RANGE_WRITE = 2 + SYNC_FILE_RANGE_WRITE_AND_WAIT = 7 S_BLKSIZE = 512 S_IEXEC = 64 S_IFBLK = 24576 @@ -2793,10 +2802,15 @@ const ( X_ANSI_STDDEF_H = 0 X_ASM_GENERIC_ERRNO_BASE_H = 0 X_ASM_GENERIC_ERRNO_H = 0 + X_ASM_GENERIC_INT_LL64_H = 0 X_ASM_GENERIC_IOCTL_H = 0 + X_ASM_GENERIC_TYPES_H = 0 + X_ASM_X86_POSIX_TYPES_32_H = 0 X_ASSERT_H = 1 X_ATFILE_SOURCE = 1 X_BITS_BYTESWAP_H = 1 + X_BITS_ENDIANNESS_H = 1 + X_BITS_ENDIAN_H = 1 X_BITS_ERRNO_H = 1 X_BITS_FLOATN_COMMON_H = 0 X_BITS_FLOATN_H = 0 @@ -2807,6 +2821,7 @@ const ( X_BITS_STAT_H = 1 X_BITS_STDINT_INTN_H = 1 X_BITS_STDIO_LIM_H = 1 + X_BITS_TIME64_H = 1 X_BITS_TIMEX_H = 1 X_BITS_TIME_H = 1 X_BITS_TYPESIZES_H = 1 @@ -2835,6 +2850,7 @@ const ( X_GETOPT_CORE_H = 1 X_GETOPT_POSIX_H = 1 X_GNU_SOURCE = 0 + X_ILP32 = 1 X_IOC_DIRBITS = 2 X_IOC_DIRMASK = 3 X_IOC_DIRSHIFT = 30 @@ -2857,6 +2873,7 @@ const ( X_IO_ERR_SEEN = 0x0020 X_IO_USER_LOCK = 0x8000 X_ISOC11_SOURCE = 1 + X_ISOC2X_SOURCE = 1 X_ISOC95_SOURCE = 1 X_ISOC99_SOURCE = 1 X_LARGEFILE64_SOURCE = 1 @@ -2868,6 +2885,9 @@ const ( X_LFS_ASYNCHRONOUS_IO = 1 X_LFS_LARGEFILE = 1 X_LINUX_IOCTL_H = 0 + X_LINUX_POSIX_TYPES_H = 0 + X_LINUX_STAT_H = 0 + X_LINUX_TYPES_H = 0 X_MATH_H = 1 X_MKNOD_VER = 1 X_MKNOD_VER_LINUX = 1 @@ -2942,6 +2962,7 @@ const ( X_PTRDIFF_T = 0 X_PTRDIFF_T_ = 0 X_PTRDIFF_T_DECLARED = 0 + X_RWLOCK_INTERNAL_H = 0 X_SIZET_ = 0 X_SIZE_T = 0 X_SIZE_T_ = 0 @@ -2977,6 +2998,7 @@ const ( X_SYS_TIME_H = 1 X_SYS_TTYDEFAULTS_H_ = 0 X_SYS_TYPES_H = 1 + X_THREAD_MUTEX_INTERNAL_H = 1 X_THREAD_SHARED_TYPES_H = 1 X_TIME_H = 1 X_T_PTRDIFF = 0 @@ -3086,7 +3108,7 @@ const ( // the `_SC_*' symbols for the NAME argument to `sysconf'; // and the `_CS_*' symbols for the NAME argument to `confstr'. // `sysconf', `pathconf', and `confstr' NAME values. Generic version. -// Copyright (C) 1993-2018 Free Software Foundation, Inc. +// Copyright (C) 1993-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3101,7 +3123,7 @@ const ( // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Values for the NAME argument to `pathconf' and `fpathconf'. const ( /* confname.h:24:1: */ @@ -3490,16 +3512,11 @@ const ( /* fcntl-linux.h:265:1: */ F_OWNER_GID = 2 ) -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // XPG requires a few symbols from being defined. // Definitions of flag bits for `waitpid' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3514,7 +3531,7 @@ const ( /* fcntl-linux.h:265:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Bits in the third argument to `waitpid'. @@ -3592,7 +3609,7 @@ const ( /* dlfcn.h:128:1: */ // // Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. x86 version. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3607,7 +3624,7 @@ const ( /* dlfcn.h:128:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Get the architecture specific values describing the floating-point // evaluation. The following symbols will get defined: @@ -3621,7 +3638,7 @@ const ( /* dlfcn.h:128:1: */ // implemented directly with a hardware multiply-add instructions. // Define FP_FAST_* macros. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3636,7 +3653,7 @@ const ( /* dlfcn.h:128:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l} // builtins are supported. @@ -3672,7 +3689,7 @@ const ( /* math.h:853:1: */ ) // Values for the first argument to `getitimer' and `setitimer'. -const ( /* time.h:88:1: */ +const ( /* time.h:89:1: */ // Timers run in real time. ITIMER_REAL = 0 // Timers run only when the process is executing. @@ -3744,34 +3761,34 @@ type X__float128 = float64 /* :47:21 */ var sqlite3azCompileOpt = [28]uintptr{ // BEGIN CODE GENERATED BY tool/mkctime.tcl - ts, /* "COMPILER=gcc-8.3..." */ - ts + 19, /* "DEFAULT_MEMSTATU..." */ - ts + 39, /* "DEFAULT_PAGE_SIZ..." */ - ts + 62, /* "ENABLE_BYTECODE_..." */ - ts + 83, /* "ENABLE_COLUMN_ME..." */ - ts + 106, /* "ENABLE_DBPAGE_VT..." */ - ts + 125, /* "ENABLE_DBSTAT_VT..." */ - ts + 144, /* "ENABLE_EXPLAIN_C..." */ - ts + 168, /* "ENABLE_FTS5" */ - ts + 180, /* "ENABLE_GEOPOLY" */ - ts + 195, /* "ENABLE_JSON1" */ - ts + 208, /* "ENABLE_MEMORY_MA..." */ - ts + 233, /* "ENABLE_OFFSET_SQ..." */ - ts + 256, /* "ENABLE_PREUPDATE..." */ - ts + 278, /* "ENABLE_RBU" */ - ts + 289, /* "ENABLE_RTREE" */ - ts + 302, /* "ENABLE_SESSION" */ - ts + 317, /* "ENABLE_SNAPSHOT" */ - ts + 333, /* "ENABLE_STAT4" */ - ts + 346, /* "ENABLE_STMTVTAB" */ - ts + 362, /* "ENABLE_UNLOCK_NO..." */ - ts + 383, /* "LIKE_DOESNT_MATC..." */ - ts + 407, /* "MUTEX_NOOP" */ - ts + 418, /* "SOUNDEX" */ - ts + 426, /* "SYSTEM_MALLOC" */ - ts + 440, /* "TEMP_STORE=1" */ - ts + 453, /* "TEST" */ - ts + 458, /* "THREADSAFE=1" */ + ts, /* "COMPILER=gcc-10...." */ + ts + 29, /* "DEFAULT_MEMSTATU..." */ + ts + 49, /* "DEFAULT_PAGE_SIZ..." */ + ts + 72, /* "ENABLE_BYTECODE_..." */ + ts + 93, /* "ENABLE_COLUMN_ME..." */ + ts + 116, /* "ENABLE_DBPAGE_VT..." */ + ts + 135, /* "ENABLE_DBSTAT_VT..." */ + ts + 154, /* "ENABLE_EXPLAIN_C..." */ + ts + 178, /* "ENABLE_FTS5" */ + ts + 190, /* "ENABLE_GEOPOLY" */ + ts + 205, /* "ENABLE_JSON1" */ + ts + 218, /* "ENABLE_MEMORY_MA..." */ + ts + 243, /* "ENABLE_OFFSET_SQ..." */ + ts + 266, /* "ENABLE_PREUPDATE..." */ + ts + 288, /* "ENABLE_RBU" */ + ts + 299, /* "ENABLE_RTREE" */ + ts + 312, /* "ENABLE_SESSION" */ + ts + 327, /* "ENABLE_SNAPSHOT" */ + ts + 343, /* "ENABLE_STAT4" */ + ts + 356, /* "ENABLE_STMTVTAB" */ + ts + 372, /* "ENABLE_UNLOCK_NO..." */ + ts + 393, /* "LIKE_DOESNT_MATC..." */ + ts + 417, /* "MUTEX_NOOP" */ + ts + 428, /* "SOUNDEX" */ + ts + 436, /* "SYSTEM_MALLOC" */ + ts + 450, /* "TEMP_STORE=1" */ + ts + 463, /* "TEST" */ + ts + 468, /* "THREADSAFE=1" */ // END CODE GENERATED BY tool/mkctime.tcl } /* sqlite3.c:72:19 */ @@ -3961,7 +3978,7 @@ func Xsqlite3CompileOptions(tls *libc.TLS, pnOpt uintptr) uintptr { /* sqlite3.c // The makefile makes some minor changes to this file (such as inserting // the version number) and changes its name to "sqlite3.h" as // part of the build process. -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -4087,7 +4104,7 @@ type Va_list = X__gnuc_va_list /* stdarg.h:99:24 */ // of the hash might be different from [SQLITE_SOURCE_ID].)^ // // See also: [sqlite_version()] and [sqlite_source_id()]. -var Xsqlite3_version = *(*[7]int8)(unsafe.Pointer(ts + 471 /* "3.36.0" */)) /* sqlite3.c:1244:23 */ +var Xsqlite3_version = *(*[7]int8)(unsafe.Pointer(ts + 481 /* "3.36.0" */)) /* sqlite3.c:1244:23 */ // CAPI3REF: Database Connection Handle // KEYWORDS: {database connection} {database connections} @@ -4131,7 +4148,7 @@ type sqlite3 = struct { FmTrace U8 FnoSharedCache U8 FnSqlExec U8 - _ [3]byte + F__ccgo_pad1 [3]byte FnextPagesize int32 Fmagic U32 FnChange int32 @@ -4142,9 +4159,9 @@ type sqlite3 = struct { FnewTnum Pgno FiDb U8 Fbusy U8 - _ [2]byte + F__ccgo_pad1 [2]byte ForphanTrigger uint8 /* unsigned orphanTrigger: 1, unsigned imposterTable: 1, unsigned reopenMemdb: 1 */ - _ [3]byte + F__ccgo_pad2 [3]byte FazInit uintptr } FnVdbeActive int32 @@ -5453,16 +5470,16 @@ type Sqlite3_value = sqlite3_value /* sqlite3.c:5368:30 */ // [sqlite3_context_db_handle()], [sqlite3_get_auxdata()], // and/or [sqlite3_set_auxdata()]. type sqlite3_context = struct { - FpOut uintptr - FpFunc uintptr - FpMem uintptr - FpVdbe uintptr - FiOp int32 - FisError int32 - FskipFlag U8 - Fargc U8 - _ [2]byte - Fargv [1]uintptr + FpOut uintptr + FpFunc uintptr + FpMem uintptr + FpVdbe uintptr + FiOp int32 + FisError int32 + FskipFlag U8 + Fargc U8 + F__ccgo_pad1 [2]byte + Fargv [1]uintptr } /* sqlite3.c:1331:9 */ // CAPI3REF: SQL Function Context Object @@ -5667,7 +5684,7 @@ type sqlite3_index_constraint = struct { FiColumn int32 Fop uint8 Fusable uint8 - _ [2]byte + F__ccgo_pad1 [2]byte FiTermOffset int32 } /* sqlite3.c:7867:9 */ @@ -5772,9 +5789,9 @@ type sqlite3_index_constraint = struct { // sqlite3_libversion_number() returns a value greater than or equal to // 3009000. type sqlite3_index_orderby = struct { - FiColumn int32 - Fdesc uint8 - _ [3]byte + FiColumn int32 + Fdesc uint8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:7867:9 */ // CAPI3REF: Virtual Table Indexing Information @@ -5878,9 +5895,9 @@ type sqlite3_index_orderby = struct { // sqlite3_libversion_number() returns a value greater than or equal to // 3009000. type sqlite3_index_constraint_usage = struct { - FargvIndex int32 - Fomit uint8 - _ [3]byte + FargvIndex int32 + Fomit uint8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:7867:9 */ // CAPI3REF: Mutex Methods Object @@ -6045,7 +6062,7 @@ type sqlite3_str = struct { FnChar U32 FaccError U8 FprintfFlags U8 - _ [2]byte + F__ccgo_pad1 [2]byte } /* sqlite3.c:8964:9 */ // CAPI3REF: Dynamic String Object @@ -7355,14 +7372,9 @@ type _ht = struct { // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -7388,7 +7400,7 @@ type _ht = struct { // ISO C Standard: 7.15 Variable arguments // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7403,11 +7415,11 @@ type _ht = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7422,43 +7434,63 @@ type _ht = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Determine the wordsize from the preprocessor defines. +// Bit size of the time_t type at glibc build time, x86-64 and x32 case. +// Copyright (C) 2018-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// For others, time size is word size. + // Convenience types. -type X__u_char = uint8 /* types.h:30:23 */ -type X__u_short = uint16 /* types.h:31:28 */ -type X__u_int = uint32 /* types.h:32:22 */ -type X__u_long = uint32 /* types.h:33:27 */ +type X__u_char = uint8 /* types.h:31:23 */ +type X__u_short = uint16 /* types.h:32:28 */ +type X__u_int = uint32 /* types.h:33:22 */ +type X__u_long = uint32 /* types.h:34:27 */ // Fixed-size types, underlying types depend on word size and compiler. -type X__int8_t = int8 /* types.h:36:21 */ -type X__uint8_t = uint8 /* types.h:37:23 */ -type X__int16_t = int16 /* types.h:38:26 */ -type X__uint16_t = uint16 /* types.h:39:28 */ -type X__int32_t = int32 /* types.h:40:20 */ -type X__uint32_t = uint32 /* types.h:41:22 */ -type X__int64_t = int64 /* types.h:46:44 */ -type X__uint64_t = uint64 /* types.h:47:46 */ +type X__int8_t = int8 /* types.h:37:21 */ +type X__uint8_t = uint8 /* types.h:38:23 */ +type X__int16_t = int16 /* types.h:39:26 */ +type X__uint16_t = uint16 /* types.h:40:28 */ +type X__int32_t = int32 /* types.h:41:20 */ +type X__uint32_t = uint32 /* types.h:42:22 */ +type X__int64_t = int64 /* types.h:47:44 */ +type X__uint64_t = uint64 /* types.h:48:46 */ // Smallest types with at least a given width. -type X__int_least8_t = X__int8_t /* types.h:51:18 */ -type X__uint_least8_t = X__uint8_t /* types.h:52:19 */ -type X__int_least16_t = X__int16_t /* types.h:53:19 */ -type X__uint_least16_t = X__uint16_t /* types.h:54:20 */ -type X__int_least32_t = X__int32_t /* types.h:55:19 */ -type X__uint_least32_t = X__uint32_t /* types.h:56:20 */ -type X__int_least64_t = X__int64_t /* types.h:57:19 */ -type X__uint_least64_t = X__uint64_t /* types.h:58:20 */ +type X__int_least8_t = X__int8_t /* types.h:52:18 */ +type X__uint_least8_t = X__uint8_t /* types.h:53:19 */ +type X__int_least16_t = X__int16_t /* types.h:54:19 */ +type X__uint_least16_t = X__uint16_t /* types.h:55:20 */ +type X__int_least32_t = X__int32_t /* types.h:56:19 */ +type X__uint_least32_t = X__uint32_t /* types.h:57:20 */ +type X__int_least64_t = X__int64_t /* types.h:58:19 */ +type X__uint_least64_t = X__uint64_t /* types.h:59:20 */ // quad_t is also 64 bits. -type X__quad_t = int64 /* types.h:65:37 */ -type X__u_quad_t = uint64 /* types.h:66:46 */ +type X__quad_t = int64 /* types.h:66:37 */ +type X__u_quad_t = uint64 /* types.h:67:46 */ // Largest integral types. -type X__intmax_t = int64 /* types.h:74:37 */ -type X__uintmax_t = uint64 /* types.h:75:46 */ +type X__intmax_t = int64 /* types.h:75:37 */ +type X__uintmax_t = uint64 /* types.h:76:46 */ // The machine-dependent file defines __*_T_TYPE // macros for each of the OS types we define below. The definitions @@ -7470,7 +7502,7 @@ type X__uintmax_t = uint64 /* types.h:75:46 */ // 32 -- "natural" 32-bit type (always int) // 64 -- "natural" 64-bit type (long or long long) // LONG32 -- 32-bit type, traditionally long -// QUAD -- 64-bit type, always long long +// QUAD -- 64-bit type, traditionally long long // WORD -- natural type of __WORDSIZE bits (int or long) // LONGWORD -- type of __WORDSIZE bits, traditionally long // @@ -7492,7 +7524,7 @@ type X__uintmax_t = uint64 /* types.h:75:46 */ // We want __extension__ before typedef's that use nonstandard base types // such as `long long' in C89 mode. // bits/typesizes.h -- underlying types for *_t. Linux/x86-64 version. -// Copyright (C) 2012-2018 Free Software Foundation, Inc. +// Copyright (C) 2012-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7507,7 +7539,7 @@ type X__uintmax_t = uint64 /* types.h:75:46 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // See for the meaning of these macros. This file exists so // that need not vary across different GNU platforms. @@ -7516,79 +7548,8 @@ type X__uintmax_t = uint64 /* types.h:75:46 */ // Number of descriptors that can fit in an `fd_set'. -type X__dev_t = X__u_quad_t /* types.h:143:25 */ // Type of device numbers. -type X__uid_t = uint32 /* types.h:144:25 */ // Type of user identifications. -type X__gid_t = uint32 /* types.h:145:25 */ // Type of group identifications. -type X__ino_t = uint32 /* types.h:146:25 */ // Type of file serial numbers. -type X__ino64_t = X__u_quad_t /* types.h:147:27 */ // Type of file serial numbers (LFS). -type X__mode_t = uint32 /* types.h:148:26 */ // Type of file attribute bitmasks. -type X__nlink_t = uint32 /* types.h:149:27 */ // Type of file link counts. -type X__off_t = int32 /* types.h:150:25 */ // Type of file sizes and offsets. -type X__off64_t = X__quad_t /* types.h:151:27 */ // Type of file sizes and offsets (LFS). -type X__pid_t = int32 /* types.h:152:25 */ // Type of process identifications. -type X__fsid_t = struct{ F__val [2]int32 } /* types.h:153:26 */ // Type of file system IDs. -type X__clock_t = int32 /* types.h:154:27 */ // Type of CPU usage counts. -type X__rlim_t = uint32 /* types.h:155:26 */ // Type for resource measurement. -type X__rlim64_t = X__u_quad_t /* types.h:156:28 */ // Type for resource measurement (LFS). -type X__id_t = uint32 /* types.h:157:24 */ // General type for IDs. -type X__time_t = int32 /* types.h:158:26 */ // Seconds since the Epoch. -type X__useconds_t = uint32 /* types.h:159:30 */ // Count of microseconds. -type X__suseconds_t = int32 /* types.h:160:31 */ // Signed count of microseconds. - -type X__daddr_t = int32 /* types.h:162:27 */ // The type of a disk address. -type X__key_t = int32 /* types.h:163:25 */ // Type of an IPC key. - -// Clock ID used in clock and timer functions. -type X__clockid_t = int32 /* types.h:166:29 */ - -// Timer ID returned by `timer_create'. -type X__timer_t = uintptr /* types.h:169:12 */ - -// Type to represent block size. -type X__blksize_t = int32 /* types.h:172:29 */ - -// Types from the Large File Support interface. - -// Type to count number of disk blocks. -type X__blkcnt_t = int32 /* types.h:177:28 */ -type X__blkcnt64_t = X__quad_t /* types.h:178:30 */ - -// Type to count file system blocks. -type X__fsblkcnt_t = uint32 /* types.h:181:30 */ -type X__fsblkcnt64_t = X__u_quad_t /* types.h:182:32 */ - -// Type to count file system nodes. -type X__fsfilcnt_t = uint32 /* types.h:185:30 */ -type X__fsfilcnt64_t = X__u_quad_t /* types.h:186:32 */ - -// Type of miscellaneous file system fields. -type X__fsword_t = int32 /* types.h:189:28 */ - -type X__ssize_t = int32 /* types.h:191:27 */ // Type of a byte count, or error. - -// Signed long type used in system calls. -type X__syscall_slong_t = int32 /* types.h:194:33 */ -// Unsigned long type used in system calls. -type X__syscall_ulong_t = uint32 /* types.h:196:33 */ - -// These few don't really vary by system, they always correspond -// to one of the other defined types. -type X__loff_t = X__off64_t /* types.h:200:19 */ // Type of file sizes and offsets (LFS). -type X__caddr_t = uintptr /* types.h:201:14 */ - -// Duplicates info from stdint.h but this is used in unistd.h. -type X__intptr_t = int32 /* types.h:204:25 */ - -// Duplicate info from sys/socket.h. -type X__socklen_t = uint32 /* types.h:207:23 */ - -// C99: An integer type that can be accessed as an atomic entity, -// even in the presence of asynchronous interrupts. -// It is not currently necessary for this to be machine-specific. -type X__sig_atomic_t = int32 /* types.h:212:13 */ - -// bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// bits/time64.h -- underlying types for __time64_t. Generic version. +// Copyright (C) 2018-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7603,7 +7564,105 @@ type X__sig_atomic_t = int32 /* types.h:212:13 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . + +// Define __TIME64_T_TYPE so that it is always a 64-bit type. + +// Define a 64-bit time type alongsize the 32-bit one. + +type X__dev_t = X__uint64_t /* types.h:145:25 */ // Type of device numbers. +type X__uid_t = uint32 /* types.h:146:25 */ // Type of user identifications. +type X__gid_t = uint32 /* types.h:147:25 */ // Type of group identifications. +type X__ino_t = uint32 /* types.h:148:25 */ // Type of file serial numbers. +type X__ino64_t = X__uint64_t /* types.h:149:27 */ // Type of file serial numbers (LFS). +type X__mode_t = uint32 /* types.h:150:26 */ // Type of file attribute bitmasks. +type X__nlink_t = uint32 /* types.h:151:27 */ // Type of file link counts. +type X__off_t = int32 /* types.h:152:25 */ // Type of file sizes and offsets. +type X__off64_t = X__int64_t /* types.h:153:27 */ // Type of file sizes and offsets (LFS). +type X__pid_t = int32 /* types.h:154:25 */ // Type of process identifications. +type X__fsid_t = struct{ F__val [2]int32 } /* types.h:155:26 */ // Type of file system IDs. +type X__clock_t = int32 /* types.h:156:27 */ // Type of CPU usage counts. +type X__rlim_t = uint32 /* types.h:157:26 */ // Type for resource measurement. +type X__rlim64_t = X__uint64_t /* types.h:158:28 */ // Type for resource measurement (LFS). +type X__id_t = uint32 /* types.h:159:24 */ // General type for IDs. +type X__time_t = int32 /* types.h:160:26 */ // Seconds since the Epoch. +type X__useconds_t = uint32 /* types.h:161:30 */ // Count of microseconds. +type X__suseconds_t = int32 /* types.h:162:31 */ // Signed count of microseconds. + +type X__daddr_t = int32 /* types.h:164:27 */ // The type of a disk address. +type X__key_t = int32 /* types.h:165:25 */ // Type of an IPC key. + +// Clock ID used in clock and timer functions. +type X__clockid_t = int32 /* types.h:168:29 */ + +// Timer ID returned by `timer_create'. +type X__timer_t = uintptr /* types.h:171:12 */ + +// Type to represent block size. +type X__blksize_t = int32 /* types.h:174:29 */ + +// Types from the Large File Support interface. + +// Type to count number of disk blocks. +type X__blkcnt_t = int32 /* types.h:179:28 */ +type X__blkcnt64_t = X__int64_t /* types.h:180:30 */ + +// Type to count file system blocks. +type X__fsblkcnt_t = uint32 /* types.h:183:30 */ +type X__fsblkcnt64_t = X__uint64_t /* types.h:184:32 */ + +// Type to count file system nodes. +type X__fsfilcnt_t = uint32 /* types.h:187:30 */ +type X__fsfilcnt64_t = X__uint64_t /* types.h:188:32 */ + +// Type of miscellaneous file system fields. +type X__fsword_t = int32 /* types.h:191:28 */ + +type X__ssize_t = int32 /* types.h:193:27 */ // Type of a byte count, or error. + +// Signed long type used in system calls. +type X__syscall_slong_t = int32 /* types.h:196:33 */ +// Unsigned long type used in system calls. +type X__syscall_ulong_t = uint32 /* types.h:198:33 */ + +// These few don't really vary by system, they always correspond +// to one of the other defined types. +type X__loff_t = X__off64_t /* types.h:202:19 */ // Type of file sizes and offsets (LFS). +type X__caddr_t = uintptr /* types.h:203:14 */ + +// Duplicates info from stdint.h but this is used in unistd.h. +type X__intptr_t = int32 /* types.h:206:25 */ + +// Duplicate info from sys/socket.h. +type X__socklen_t = uint32 /* types.h:209:23 */ + +// C99: An integer type that can be accessed as an atomic entity, +// even in the presence of asynchronous interrupts. +// It is not currently necessary for this to be machine-specific. +type X__sig_atomic_t = int32 /* types.h:214:13 */ + +// Seconds since the Epoch, visible to user code when time_t is too +// narrow only for consistency with the old way of widening too-narrow +// types. User code should never use __time64_t. +type X__time64_t = X__int64_t /* types.h:222:28 */ + +// bits/types.h -- definitions of __*_t types underlying *_t types. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . // Never include this file directly; use instead. @@ -7632,7 +7691,7 @@ type _G_fpos_t = struct { type X__fpos_t = _G_fpos_t /* __fpos_t.h:14:3 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7647,7 +7706,7 @@ type X__fpos_t = _G_fpos_t /* __fpos_t.h:14:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -7660,7 +7719,7 @@ type _G_fpos64_t = struct { } /* __fpos64_t.h:10:9 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7675,7 +7734,7 @@ type _G_fpos64_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -7749,16 +7808,11 @@ type Ssize_t = X__ssize_t /* stdio.h:77:19 */ type Fpos_t = X__fpos64_t /* stdio.h:86:20 */ type Fpos64_t = X__fpos64_t /* stdio.h:89:20 */ -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // XPG requires a few symbols from being defined. // Definitions of flag bits for `waitpid' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7773,7 +7827,7 @@ type Fpos64_t = X__fpos64_t /* stdio.h:89:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Bits in the third argument to `waitpid'. @@ -7786,7 +7840,7 @@ type Fpos64_t = X__fpos64_t /* stdio.h:89:20 */ type Idtype_t = uint32 /* waitflags.h:57:3 */ // Definitions of status bits for `wait' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7801,7 +7855,7 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Everything extant so far uses these same bits. @@ -7828,7 +7882,7 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // _FloatN API tests for enablement. // Macros to control TS 18661-3 glibc features on x86. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7843,9 +7897,9 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7860,7 +7914,7 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Defined to 1 if the current compiler invocation provides a // floating-point type with the IEEE 754 binary128 format, and this @@ -7904,7 +7958,7 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // Macros to control TS 18661-3 glibc features where the same // definitions are appropriate for all platforms. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7919,9 +7973,9 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7936,10 +7990,10 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Properties of long double type. ldbl-96 version. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -7954,7 +8008,7 @@ type Idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // long double is distinct from double, so there is nothing to // define here. @@ -8027,7 +8081,7 @@ type Lldiv_t = struct { // use as an additional parameter. These are GNU extensions inspired // by the POSIX.1-2008 extended locale API. // Definition of locale_t. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8042,10 +8096,10 @@ type Lldiv_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Definition of struct __locale_struct and __locale_t. -// Copyright (C) 1997-2018 Free Software Foundation, Inc. +// Copyright (C) 1997-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // Contributed by Ulrich Drepper , 1997. // @@ -8061,7 +8115,7 @@ type Lldiv_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX.1-2008: the locale_t type, representing a locale context // (implementation-namespace version). This type should be treated @@ -8080,7 +8134,7 @@ type X__locale_t = uintptr /* __locale_t.h:42:32 */ type Locale_t = X__locale_t /* locale_t.h:24:20 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8095,11 +8149,11 @@ type Locale_t = X__locale_t /* locale_t.h:24:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 2.6 Primitive System Data Types -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8114,10 +8168,10 @@ type Locale_t = X__locale_t /* locale_t.h:24:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8132,7 +8186,7 @@ type Locale_t = X__locale_t /* locale_t.h:24:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8168,7 +8222,7 @@ type Caddr_t = X__caddr_t /* types.h:115:19 */ type Key_t = X__key_t /* types.h:121:17 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8183,7 +8237,7 @@ type Key_t = X__key_t /* types.h:121:17 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8191,7 +8245,7 @@ type Key_t = X__key_t /* types.h:121:17 */ type Clock_t = X__clock_t /* clock_t.h:7:19 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8206,7 +8260,7 @@ type Clock_t = X__clock_t /* clock_t.h:7:19 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8214,7 +8268,7 @@ type Clock_t = X__clock_t /* clock_t.h:7:19 */ type Clockid_t = X__clockid_t /* clockid_t.h:7:21 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8229,7 +8283,7 @@ type Clockid_t = X__clockid_t /* clockid_t.h:7:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8237,7 +8291,7 @@ type Clockid_t = X__clockid_t /* clockid_t.h:7:21 */ type Time_t = X__time_t /* time_t.h:7:18 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8252,7 +8306,7 @@ type Time_t = X__time_t /* time_t.h:7:18 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8262,7 +8316,7 @@ type Timer_t = X__timer_t /* timer_t.h:7:19 */ type Useconds_t = X__useconds_t /* types.h:134:22 */ type Suseconds_t = X__suseconds_t /* types.h:138:23 */ -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -8294,15 +8348,6 @@ type Suseconds_t = X__suseconds_t /* types.h:138:23 */ // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -8337,11 +8382,6 @@ type Suseconds_t = X__suseconds_t /* types.h:138:23 */ // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Old compatibility names for C types. @@ -8352,7 +8392,7 @@ type Uint = uint32 /* types.h:150:22 */ // These size-specific names are used by some of the inet code. // Define intN_t types. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8367,10 +8407,10 @@ type Uint = uint32 /* types.h:150:22 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8385,7 +8425,7 @@ type Uint = uint32 /* types.h:150:22 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8394,18 +8434,17 @@ type Int16_t = X__int16_t /* stdint-intn.h:25:19 */ type Int32_t = X__int32_t /* stdint-intn.h:26:19 */ type Int64_t = X__int64_t /* stdint-intn.h:27:19 */ -// For GCC 2.7 and later, we can use specific type-size attributes. +// These were defined by ISO C without the first `_'. +type U_int8_t = X__uint8_t /* types.h:158:19 */ +type U_int16_t = X__uint16_t /* types.h:159:20 */ +type U_int32_t = X__uint32_t /* types.h:160:20 */ +type U_int64_t = X__uint64_t /* types.h:161:20 */ -type U_int8_t = uint32 /* types.h:177:1 */ -type U_int16_t = uint32 /* types.h:178:1 */ -type U_int32_t = uint32 /* types.h:179:1 */ -type U_int64_t = uint32 /* types.h:180:1 */ - -type Register_t = int32 /* types.h:182:13 */ +type Register_t = int32 /* types.h:164:13 */ // It also defines `fd_set' and the FD_* macros for `select'. // `fd_set' type and related macros, and `select'/`pselect' declarations. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8420,11 +8459,11 @@ type Register_t = int32 /* types.h:182:13 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX 1003.1g: 6.2 Select from File Descriptor Sets -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8439,11 +8478,11 @@ type Register_t = int32 /* types.h:182:13 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Get definition of needed basic types. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8458,12 +8497,12 @@ type Register_t = int32 /* types.h:182:13 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // Get __FD_* definitions. -// Copyright (C) 1997-2018 Free Software Foundation, Inc. +// Copyright (C) 1997-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8478,7 +8517,7 @@ type Register_t = int32 /* types.h:182:13 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Determine the wordsize from the preprocessor defines. @@ -8492,7 +8531,7 @@ type Sigset_t = X__sigset_t /* sigset_t.h:7:20 */ // Get definition of timer specification structures. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8507,7 +8546,7 @@ type Sigset_t = X__sigset_t /* sigset_t.h:7:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -8521,7 +8560,27 @@ type timeval = struct { // NB: Include guard matches what uses. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// Never include this file directly; use instead. + +// Endian macros for string.h functions +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8538,14 +8597,12 @@ type timeval = struct { // License along with the GNU C Library; if not, see // . -// Never include this file directly; use instead. - // POSIX.1b structure for a time value. This is like a `struct timeval' but // has nanoseconds instead of microseconds. type timespec = struct { Ftv_sec X__time_t Ftv_nsec X__syscall_slong_t -} /* struct_timespec.h:9:1 */ +} /* struct_timespec.h:10:1 */ // The fd_set member is required to be an array of longs. type X__fd_mask = int32 /* select.h:49:18 */ @@ -8563,20 +8620,20 @@ type Fd_mask = X__fd_mask /* select.h:77:19 */ // Define some inlines helping to catch common problems. -type Blksize_t = X__blksize_t /* types.h:202:21 */ +type Blksize_t = X__blksize_t /* types.h:185:21 */ // Types from the Large File Support interface. -type Blkcnt_t = X__blkcnt64_t /* types.h:222:22 */ // Type to count number of disk blocks. -type Fsblkcnt_t = X__fsblkcnt64_t /* types.h:226:24 */ // Type to count file system blocks. -type Fsfilcnt_t = X__fsfilcnt64_t /* types.h:230:24 */ // Type to count file system inodes. +type Blkcnt_t = X__blkcnt64_t /* types.h:205:22 */ // Type to count number of disk blocks. +type Fsblkcnt_t = X__fsblkcnt64_t /* types.h:209:24 */ // Type to count file system blocks. +type Fsfilcnt_t = X__fsfilcnt64_t /* types.h:213:24 */ // Type to count file system inodes. -type Blkcnt64_t = X__blkcnt64_t /* types.h:236:22 */ // Type to count number of disk blocks. -type Fsblkcnt64_t = X__fsblkcnt64_t /* types.h:237:24 */ // Type to count file system blocks. -type Fsfilcnt64_t = X__fsfilcnt64_t /* types.h:238:24 */ // Type to count file system inodes. +type Blkcnt64_t = X__blkcnt64_t /* types.h:219:22 */ // Type to count number of disk blocks. +type Fsblkcnt64_t = X__fsblkcnt64_t /* types.h:220:24 */ // Type to count file system blocks. +type Fsfilcnt64_t = X__fsfilcnt64_t /* types.h:221:24 */ // Type to count file system inodes. // Now add the thread types. // Declaration of common pthread types for all architectures. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8591,11 +8648,11 @@ type Fsfilcnt64_t = X__fsfilcnt64_t /* types.h:238:24 */ // Type to count file s // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // For internal mutex and condition variable definitions. // Common threading primitives definitions for both POSIX and C11. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8610,7 +8667,7 @@ type Fsfilcnt64_t = X__fsfilcnt64_t /* types.h:238:24 */ // Type to count file s // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Arch-specific definitions. Each architecture must define the following // macros to define the expected sizes of pthread data types: @@ -8625,35 +8682,95 @@ type Fsfilcnt64_t = X__fsfilcnt64_t /* types.h:238:24 */ // Type to count file s // __SIZEOF_PTHREAD_BARRIER_T - size of pthread_barrier_t. // __SIZEOF_PTHREAD_BARRIERATTR_T - size of pthread_barrierattr_t. // -// Also, the following macros must be define for internal pthread_mutex_t -// struct definitions (struct __pthread_mutex_s): +// The additional macro defines any constraint for the lock alignment +// inside the thread structures: // -// __PTHREAD_COMPAT_PADDING_MID - any additional members after 'kind' -// and before '__spin' (for 64 bits) or -// '__nusers' (for 32 bits). -// __PTHREAD_COMPAT_PADDING_END - any additional members at the end of -// the internal structure. -// __PTHREAD_MUTEX_LOCK_ELISION - 1 if the architecture supports lock -// elision or 0 otherwise. -// __PTHREAD_MUTEX_NUSERS_AFTER_KIND - control where to put __nusers. The -// preferred value for new architectures -// is 0. -// __PTHREAD_MUTEX_USE_UNION - control whether internal __spins and -// __list will be place inside a union for -// linuxthreads compatibility. -// The preferred value for new architectures -// is 0. +// __LOCK_ALIGNMENT - for internal lock/futex usage. // -// For a new port the preferred values for the required defines are: +// Same idea but for the once locking primitive: // -// #define __PTHREAD_COMPAT_PADDING_MID -// #define __PTHREAD_COMPAT_PADDING_END -// #define __PTHREAD_MUTEX_LOCK_ELISION 0 -// #define __PTHREAD_MUTEX_NUSERS_AFTER_KIND 0 -// #define __PTHREAD_MUTEX_USE_UNION 0 +// __ONCE_ALIGNMENT - for pthread_once_t/once_flag definition. + +// Copyright (C) 2002-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. // -// __PTHREAD_MUTEX_LOCK_ELISION can be set to 1 if the hardware plans to -// eventually support lock elision using transactional memory. +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// Determine the wordsize from the preprocessor defines. + +// Extra attributes for the cleanup functions. + +// Common definition of pthread_mutex_t. + +type __pthread_internal_list = struct { + F__prev uintptr + F__next uintptr +} /* thread-shared-types.h:49:9 */ + +// Type to count file system inodes. + +// Now add the thread types. +// Declaration of common pthread types for all architectures. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// For internal mutex and condition variable definitions. +// Common threading primitives definitions for both POSIX and C11. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// Arch-specific definitions. Each architecture must define the following +// macros to define the expected sizes of pthread data types: +// +// __SIZEOF_PTHREAD_ATTR_T - size of pthread_attr_t. +// __SIZEOF_PTHREAD_MUTEX_T - size of pthread_mutex_t. +// __SIZEOF_PTHREAD_MUTEXATTR_T - size of pthread_mutexattr_t. +// __SIZEOF_PTHREAD_COND_T - size of pthread_cond_t. +// __SIZEOF_PTHREAD_CONDATTR_T - size of pthread_condattr_t. +// __SIZEOF_PTHREAD_RWLOCK_T - size of pthread_rwlock_t. +// __SIZEOF_PTHREAD_RWLOCKATTR_T - size of pthread_rwlockattr_t. +// __SIZEOF_PTHREAD_BARRIER_T - size of pthread_barrier_t. +// __SIZEOF_PTHREAD_BARRIERATTR_T - size of pthread_barrierattr_t. // // The additional macro defines any constraint for the lock alignment // inside the thread structures: @@ -8663,11 +8780,52 @@ type Fsfilcnt64_t = X__fsfilcnt64_t /* types.h:238:24 */ // Type to count file s // Same idea but for the once locking primitive: // // __ONCE_ALIGNMENT - for pthread_once_t/once_flag definition. + +// Copyright (C) 2002-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. // -// And finally the internal pthread_rwlock_t (struct __pthread_rwlock_arch_t) -// must be defined. +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. // -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// Determine the wordsize from the preprocessor defines. + +// Extra attributes for the cleanup functions. + +// Common definition of pthread_mutex_t. + +type X__pthread_list_t = __pthread_internal_list /* thread-shared-types.h:53:3 */ + +type __pthread_internal_slist = struct{ F__next uintptr } /* thread-shared-types.h:55:9 */ + +type X__pthread_slist_t = __pthread_internal_slist /* thread-shared-types.h:58:3 */ + +// Arch-specific mutex definitions. A generic implementation is provided +// by sysdeps/nptl/bits/struct_mutex.h. If required, an architecture +// can override it by defining: +// +// 1. struct __pthread_mutex_s (used on both pthread_mutex_t and mtx_t +// definition). It should contains at least the internal members +// defined in the generic version. +// +// 2. __LOCK_ALIGNMENT for any extra attribute for internal lock used with +// atomic operations. +// +// 3. The macro __PTHREAD_MUTEX_INITIALIZER used for static initialization. +// It should initialize the mutex internal flag. + +// x86 internal mutex struct definitions. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -8684,38 +8842,6 @@ type Fsfilcnt64_t = X__fsfilcnt64_t /* types.h:238:24 */ // Type to count file s // License along with the GNU C Library; if not, see // . -// Determine the wordsize from the preprocessor defines. - -// Definitions for internal mutex struct. - -type __pthread_rwlock_arch_t = struct { - F__readers uint32 - F__writers uint32 - F__wrphase_futex uint32 - F__writers_futex uint32 - F__pad3 uint32 - F__pad4 uint32 - F__flags uint8 - F__shared uint8 - F__rwelision int8 - F__pad2 uint8 - F__cur_writer int32 -} /* pthreadtypes-arch.h:65:1 */ - -// Extra attributes for the cleanup functions. - -// Common definition of pthread_mutex_t. - -type __pthread_internal_slist = struct{ F__next uintptr } /* thread-shared-types.h:88:9 */ - -// Extra attributes for the cleanup functions. - -// Common definition of pthread_mutex_t. - -type X__pthread_slist_t = __pthread_internal_slist /* thread-shared-types.h:91:3 */ - -// Lock elision support. - type __pthread_mutex_s = struct { F__lock int32 F__count uint32 @@ -8729,7 +8855,51 @@ type __pthread_mutex_s = struct { F__eelision int16 } } -} /* thread-shared-types.h:118:1 */ +} /* struct_mutex.h:22:1 */ + +// Arch-sepecific read-write lock definitions. A generic implementation is +// provided by struct_rwlock.h. If required, an architecture can override it +// by defining: +// +// 1. struct __pthread_rwlock_arch_t (used on pthread_rwlock_t definition). +// It should contain at least the internal members defined in the +// generic version. +// +// 2. The macro __PTHREAD_RWLOCK_INITIALIZER used for static initialization. +// It should initialize the rwlock internal type. + +// x86 internal rwlock struct definitions. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. +// +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +type __pthread_rwlock_arch_t = struct { + F__readers uint32 + F__writers uint32 + F__wrphase_futex uint32 + F__writers_futex uint32 + F__pad3 uint32 + F__pad4 uint32 + F__flags uint8 + F__shared uint8 + F__rwelision int8 + F__pad2 uint8 + F__cur_writer int32 +} /* struct_rwlock.h:23:1 */ // Common definition of pthread_cond_t. @@ -8741,7 +8911,7 @@ type __pthread_cond_s = struct { F__g1_orig_size uint32 F__wrefs uint32 F__g_signals [2]uint32 -} /* thread-shared-types.h:171:1 */ +} /* thread-shared-types.h:92:1 */ // Thread identifiers. The structure of the attribute type is not // exposed on purpose. @@ -8828,10 +8998,10 @@ type drand48_data = struct { } /* stdlib.h:490:1 */ // Shorthand for type of comparison functions. -type X__compar_fn_t = uintptr /* stdlib.h:805:13 */ +type X__compar_fn_t = uintptr /* stdlib.h:808:13 */ -type Comparison_fn_t = X__compar_fn_t /* stdlib.h:808:23 */ -type X__compar_d_fn_t = uintptr /* stdlib.h:812:13 */ +type Comparison_fn_t = X__compar_fn_t /* stdlib.h:811:23 */ +type X__compar_d_fn_t = uintptr /* stdlib.h:815:13 */ // If this symbol has done its job, get rid of it. @@ -8848,11 +9018,6 @@ type X__compar_d_fn_t = uintptr /* stdlib.h:812:13 */ // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Offset of member MEMBER in a struct of type TYPE. @@ -8864,7 +9029,7 @@ type Max_align_t = struct { F__max_align_ll int64 F__max_align_ld float64 F__max_align_f128 X__float128 -} /* stddef.h:437:3 */ +} /* stddef.h:426:3 */ // Use a macro to replace memcpy() if compiled with SQLITE_INLINE_MEMCPY. // This allows better measurements of where memcpy() is used when running @@ -9042,7 +9207,7 @@ type BusyHandler = BusyHandler1 /* sqlite3.c:14788:28 */ type AggInfo1 = struct { FdirectMode U8 FuseSortingIdx U8 - _ [2]byte + F__ccgo_pad1 [2]byte FsortingIdx int32 FsortingIdxPTab int32 FnSortingColumn int32 @@ -9131,47 +9296,47 @@ type Bitvec1 = struct { type Bitvec = Bitvec1 /* sqlite3.c:14887:23 */ type CollSeq1 = struct { - FzName uintptr - Fenc U8 - _ [3]byte - FpUser uintptr - FxCmp uintptr - FxDel uintptr + FzName uintptr + Fenc U8 + F__ccgo_pad1 [3]byte + FpUser uintptr + FxCmp uintptr + FxDel uintptr } /* sqlite3.c:1331:9 */ type CollSeq = CollSeq1 /* sqlite3.c:14888:24 */ type Column1 = struct { - FzName uintptr - FpDflt uintptr - FzColl uintptr - FnotNull U8 - Faffinity int8 - FszEst U8 - FhName U8 - FcolFlags U16 - _ [2]byte + FzName uintptr + FpDflt uintptr + FzColl uintptr + FnotNull U8 + Faffinity int8 + FszEst U8 + FhName U8 + FcolFlags U16 + F__ccgo_pad1 [2]byte } /* sqlite3.c:1331:9 */ type Column = Column1 /* sqlite3.c:14889:23 */ type Cte1 = struct { - FzName uintptr - FpCols uintptr - FpSelect uintptr - FzCteErr uintptr - FpUse uintptr - FeM10d U8 - _ [3]byte + FzName uintptr + FpCols uintptr + FpSelect uintptr + FzCteErr uintptr + FpUse uintptr + FeM10d U8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:1331:9 */ type Cte = Cte1 /* sqlite3.c:14890:20 */ type CteUse1 = struct { - FnUse int32 - FaddrM9e int32 - FregRtn int32 - FiCur int32 - FnRowEst LogEst - FeM10d U8 - _ [1]byte + FnUse int32 + FaddrM9e int32 + FregRtn int32 + FiCur int32 + FnRowEst LogEst + FeM10d U8 + F__ccgo_pad1 [1]byte } /* sqlite3.c:1331:9 */ type CteUse = CteUse1 /* sqlite3.c:14891:23 */ @@ -9180,20 +9345,20 @@ type Db1 = struct { FpBt uintptr Fsafety_level U8 FbSyncSet U8 - _ [2]byte + F__ccgo_pad1 [2]byte FpSchema uintptr } /* sqlite3.c:1331:9 */ type Db = Db1 /* sqlite3.c:14892:19 */ type DbFixer1 = struct { - FpParse uintptr - Fw Walker - FpSchema uintptr - FbTemp U8 - _ [3]byte - FzDb uintptr - FzType uintptr - FpName uintptr + FpParse uintptr + Fw Walker + FpSchema uintptr + FbTemp U8 + F__ccgo_pad1 [3]byte + FzDb uintptr + FzType uintptr + FpName uintptr } /* sqlite3.c:14893:9 */ type DbFixer = DbFixer1 /* sqlite3.c:14893:24 */ @@ -9216,7 +9381,7 @@ type Expr1 = struct { Fop U8 FaffExpr int8 Fop2 U8 - _ [1]byte + F__ccgo_pad1 [1]byte Fflags U32 Fu struct{ FzToken uintptr } FpLeft uintptr @@ -9239,13 +9404,13 @@ type ExprList1 = struct { FnExpr int32 FnAlloc int32 Fa [1]struct { - FpExpr uintptr - FzEName uintptr - FsortFlags U8 - _ [3]byte - FeEName uint8 /* unsigned eEName: 2, unsigned done: 1, unsigned reusable: 1, unsigned bSorterRef: 1, unsigned bNulls: 1 */ - _ [3]byte - Fu struct { + FpExpr uintptr + FzEName uintptr + FsortFlags U8 + F__ccgo_pad1 [3]byte + FeEName uint8 /* unsigned eEName: 2, unsigned done: 1, unsigned reusable: 1, unsigned bSorterRef: 1, unsigned bNulls: 1 */ + F__ccgo_pad2 [3]byte + Fu struct { _ [0]uint32 Fx struct { FiOrderByCol U16 @@ -9257,17 +9422,17 @@ type ExprList1 = struct { type ExprList = ExprList1 /* sqlite3.c:14896:25 */ type FKey1 = struct { - FpFrom uintptr - FpNextFrom uintptr - FzTo uintptr - FpNextTo uintptr - FpPrevTo uintptr - FnCol int32 - FisDeferred U8 - FaAction [2]U8 - _ [1]byte - FapTrigger [2]uintptr - FaCol [1]struct { + FpFrom uintptr + FpNextFrom uintptr + FzTo uintptr + FpNextTo uintptr + FpPrevTo uintptr + FnCol int32 + FisDeferred U8 + FaAction [2]U8 + F__ccgo_pad1 [1]byte + FapTrigger [2]uintptr + FaCol [1]struct { FiFrom int32 FzCol uintptr } @@ -9282,17 +9447,17 @@ type FuncDestructor1 = struct { type FuncDestructor = FuncDestructor1 /* sqlite3.c:14898:31 */ type FuncDef1 = struct { - FnArg I8 - _ [3]byte - FfuncFlags U32 - FpUserData uintptr - FpNext uintptr - FxSFunc uintptr - FxFinalize uintptr - FxValue uintptr - FxInverse uintptr - FzName uintptr - Fu struct{ FpHash uintptr } + FnArg I8 + F__ccgo_pad1 [3]byte + FfuncFlags U32 + FpUserData uintptr + FpNext uintptr + FxSFunc uintptr + FxFinalize uintptr + FxValue uintptr + FxInverse uintptr + FzName uintptr + Fu struct{ FpHash uintptr } } /* sqlite3.c:1331:9 */ type FuncDef = FuncDef1 /* sqlite3.c:14899:24 */ @@ -9322,9 +9487,9 @@ type Index1 = struct { FnKeyCol U16 FnColumn U16 FonError U8 - _ [1]byte + F__ccgo_pad1 [1]byte FidxType uint16 /* unsigned idxType: 2, unsigned bUnordered: 1, unsigned uniqNotNull: 1, unsigned isResized: 1, unsigned isCovering: 1, unsigned noSkipScan: 1, unsigned hasStat1: 1, unsigned bNoQuery: 1, unsigned bAscKeyBug: 1, unsigned bHasVCol: 1 */ - _ [2]byte + F__ccgo_pad2 [2]byte FnSample int32 FnSampleCol int32 FaAvgEq uintptr @@ -9345,33 +9510,33 @@ type IndexSample1 = struct { type IndexSample = IndexSample1 /* sqlite3.c:14903:28 */ type KeyInfo1 = struct { - FnRef U32 - Fenc U8 - _ [1]byte - FnKeyField U16 - FnAllField U16 - _ [2]byte - Fdb uintptr - FaSortFlags uintptr - FaColl [1]uintptr + FnRef U32 + Fenc U8 + F__ccgo_pad1 [1]byte + FnKeyField U16 + FnAllField U16 + F__ccgo_pad2 [2]byte + Fdb uintptr + FaSortFlags uintptr + FaColl [1]uintptr } /* sqlite3.c:1331:9 */ type KeyInfo = KeyInfo1 /* sqlite3.c:14905:24 */ type Lookaside1 = struct { - FbDisable U32 - Fsz U16 - FszTrue U16 - FbMalloced U8 - _ [3]byte - FnSlot U32 - FanStat [3]U32 - FpInit uintptr - FpFree uintptr - FpSmallInit uintptr - FpSmallFree uintptr - FpMiddle uintptr - FpStart uintptr - FpEnd uintptr + FbDisable U32 + Fsz U16 + FszTrue U16 + FbMalloced U8 + F__ccgo_pad1 [3]byte + FnSlot U32 + FanStat [3]U32 + FpInit uintptr + FpFree uintptr + FpSmallInit uintptr + FpSmallFree uintptr + FpMiddle uintptr + FpStart uintptr + FpEnd uintptr } /* sqlite3.c:1331:9 */ type Lookaside = Lookaside1 /* sqlite3.c:14906:26 */ @@ -9415,7 +9580,7 @@ type Parse1 = struct { FokConstFactor U8 FdisableLookaside U8 FdisableVtab U8 - _ [2]byte + F__ccgo_pad1 [2]byte FnRangeReg int32 FiRangeReg int32 FnErr int32 @@ -9455,7 +9620,7 @@ type Parse1 = struct { FiPkSortOrder U8 Fexplain U8 FeParseMode U8 - _ [3]byte + F__ccgo_pad2 [3]byte FnVtabLock int32 FnHeight int32 FaddrExplain int32 @@ -9548,7 +9713,7 @@ type Savepoint1 = struct { type Savepoint = Savepoint1 /* sqlite3.c:14917:26 */ type Select1 = struct { Fop U8 - _ [1]byte + F__ccgo_pad1 [1]byte FnSelectRow LogEst FselFlags U32 FiLimit int32 @@ -9578,14 +9743,14 @@ type SQLiteThread1 = struct { type SQLiteThread = SQLiteThread1 /* sqlite3.c:14919:29 */ type SelectDest1 = struct { - FeDest U8 - _ [3]byte - FiSDParm int32 - FiSDParm2 int32 - FiSdst int32 - FnSdst int32 - FzAffSdst uintptr - FpOrderBy uintptr + FeDest U8 + F__ccgo_pad1 [3]byte + FiSDParm int32 + FiSDParm2 int32 + FiSdst int32 + FnSdst int32 + FzAffSdst uintptr + FpOrderBy uintptr } /* sqlite3.c:14920:9 */ type SelectDest = SelectDest1 /* sqlite3.c:14920:27 */ @@ -9600,11 +9765,11 @@ type SrcItem1 = struct { FregReturn int32 FregResult int32 Ffg struct { - _ [0]uint32 - Fjointype U8 - _ [3]byte - FnotIndexed uint16 /* unsigned notIndexed: 1, unsigned isIndexedBy: 1, unsigned isTabFunc: 1, unsigned isCorrelated: 1, unsigned viaCoroutine: 1, unsigned isRecursive: 1, unsigned fromDDL: 1, unsigned isCte: 1, unsigned notCte: 1 */ - _ [2]byte + F__ccgo_pad1 [0]uint32 + Fjointype U8 + F__ccgo_pad2 [3]byte + FnotIndexed uint16 /* unsigned notIndexed: 1, unsigned isIndexedBy: 1, unsigned isTabFunc: 1, unsigned isCorrelated: 1, unsigned viaCoroutine: 1, unsigned isRecursive: 1, unsigned fromDDL: 1, unsigned isCte: 1, unsigned notCte: 1 */ + F__ccgo_pad3 [2]byte } FiCursor int32 FpOn uintptr @@ -9640,7 +9805,7 @@ type Table1 = struct { FnRowLogEst LogEst FszTabRow LogEst FkeyConf U8 - _ [1]byte + F__ccgo_pad1 [1]byte FaddColOffset int32 FnModuleArg int32 FazModuleArg uintptr @@ -9655,7 +9820,7 @@ type TableLock1 = struct { FiDb int32 FiTab Pgno FisWriteLock U8 - _ [3]byte + F__ccgo_pad1 [3]byte FzLockName uintptr } /* sqlite3.c:1331:9 */ @@ -9667,18 +9832,18 @@ type Token1 = struct { type Token = Token1 /* sqlite3.c:14926:22 */ type Trigger1 = struct { - FzName uintptr - Ftable uintptr - Fop U8 - Ftr_tm U8 - FbReturning U8 - _ [1]byte - FpWhen uintptr - FpColumns uintptr - FpSchema uintptr - FpTabSchema uintptr - Fstep_list uintptr - FpNext uintptr + FzName uintptr + Ftable uintptr + Fop U8 + Ftr_tm U8 + FbReturning U8 + F__ccgo_pad1 [1]byte + FpWhen uintptr + FpColumns uintptr + FpSchema uintptr + FpTabSchema uintptr + Fstep_list uintptr + FpNext uintptr } /* sqlite3.c:1331:9 */ type Trigger = Trigger1 /* sqlite3.c:14928:24 */ @@ -9692,33 +9857,33 @@ type TriggerPrg1 = struct { type TriggerPrg = TriggerPrg1 /* sqlite3.c:14929:27 */ type TriggerStep1 = struct { - Fop U8 - Forconf U8 - _ [2]byte - FpTrig uintptr - FpSelect uintptr - FzTarget uintptr - FpFrom uintptr - FpWhere uintptr - FpExprList uintptr - FpIdList uintptr - FpUpsert uintptr - FzSpan uintptr - FpNext uintptr - FpLast uintptr + Fop U8 + Forconf U8 + F__ccgo_pad1 [2]byte + FpTrig uintptr + FpSelect uintptr + FzTarget uintptr + FpFrom uintptr + FpWhere uintptr + FpExprList uintptr + FpIdList uintptr + FpUpsert uintptr + FzSpan uintptr + FpNext uintptr + FpLast uintptr } /* sqlite3.c:1331:9 */ type TriggerStep = TriggerStep1 /* sqlite3.c:14930:28 */ type UnpackedRecord1 = struct { - FpKeyInfo uintptr - FaMem uintptr - FnField U16 - Fdefault_rc I8 - FerrCode U8 - Fr1 I8 - Fr2 I8 - FeqSeen U8 - _ [1]byte + FpKeyInfo uintptr + FaMem uintptr + FnField U16 + Fdefault_rc I8 + FerrCode U8 + Fr1 I8 + Fr2 I8 + FeqSeen U8 + F__ccgo_pad1 [1]byte } /* sqlite3.c:1331:9 */ type UnpackedRecord = UnpackedRecord1 /* sqlite3.c:14931:31 */ @@ -9729,7 +9894,7 @@ type Upsert1 = struct { FpUpsertWhere uintptr FpNextUpsert uintptr FisDoUpdate U8 - _ [3]byte + F__ccgo_pad1 [3]byte FpToFree uintptr FpUpsertIdx uintptr FpUpsertSrc uintptr @@ -9746,7 +9911,7 @@ type VTable1 = struct { FnRef int32 FbConstraint U8 FeVtabRisk U8 - _ [2]byte + F__ccgo_pad1 [2]byte FiSavepoint int32 FpNext uintptr } /* sqlite3.c:1331:9 */ @@ -9767,7 +9932,7 @@ type Walker1 = struct { FxSelectCallback2 uintptr FwalkerDepth int32 FeCode U16 - _ [2]byte + F__ccgo_pad1 [2]byte Fu struct{ FpNC uintptr } } /* sqlite3.c:14893:9 */ @@ -9789,7 +9954,7 @@ type WhereInfo1 = struct { FeOnePass U8 FeDistinct U8 FbDeferredSeek uint8 /* unsigned bDeferredSeek: 1, unsigned untestedTerms: 1, unsigned bOrderedInnerLoop: 1, unsigned sorted: 1 */ - _ [1]byte + F__ccgo_pad1 [1]byte FnRowOut LogEst FiTop int32 FiEndWhere int32 @@ -9812,7 +9977,7 @@ type Window1 = struct { FeEnd U8 FbImplicitFrame U8 FeExclude U8 - _ [3]byte + F__ccgo_pad1 [3]byte FpStart uintptr FpEnd uintptr FppThis uintptr @@ -9832,7 +9997,7 @@ type Window1 = struct { FregStartRowid int32 FregEndRowid int32 FbExprArgs U8 - _ [3]byte + F__ccgo_pad2 [3]byte } /* sqlite3.c:1331:9 */ type Window = Window1 /* sqlite3.c:14937:23 */ @@ -10061,7 +10226,7 @@ type BtCursor1 = struct { FcurIntKey U8 Fix U16 FaiIdx [19]U16 - _ [2]byte + F__ccgo_pad1 [2]byte FpKeyInfo uintptr FpPage uintptr FapPage [19]uintptr @@ -10080,13 +10245,13 @@ type BtShared1 = struct { FinTransaction U8 Fmax1bytePayload U8 FnReserveWanted U8 - _ [1]byte + F__ccgo_pad1 [1]byte FbtsFlags U16 FmaxLocal U16 FminLocal U16 FmaxLeaf U16 FminLeaf U16 - _ [2]byte + F__ccgo_pad2 [2]byte FpageSize U32 FusableSize U32 FnTransaction int32 @@ -10105,14 +10270,14 @@ type BtShared1 = struct { type BtShared = BtShared1 /* sqlite3.c:15269:25 */ type BtreePayload1 = struct { - FpKey uintptr - FnKey Sqlite3_int64 - FpData uintptr - FaMem uintptr - FnMem U16 - _ [2]byte - FnData int32 - FnZero int32 + FpKey uintptr + FnKey Sqlite3_int64 + FpData uintptr + FaMem uintptr + FnMem U16 + F__ccgo_pad1 [2]byte + FnData int32 + FnZero int32 } /* sqlite3.c:15270:9 */ type BtreePayload = BtreePayload1 /* sqlite3.c:15270:29 */ @@ -10147,7 +10312,7 @@ type Vdbe1 = struct { FpNext uintptr FpParse uintptr FnVar YnVar - _ [2]byte + F__ccgo_pad1 [2]byte FiVdbeMagic U32 FnMem int32 FnCursor int32 @@ -10177,9 +10342,9 @@ type Vdbe1 = struct { FminWriteFileFormat U8 FprepFlags U8 FdoingRerun U8 - _ [2]byte + F__ccgo_pad2 [2]byte Fexpired uint16 /* bft expired: 2, bft explain: 2, bft changeCntOn: 1, bft runOnlyOnce: 1, bft usesStmtJournal: 1, bft readOnly: 1, bft bIsReader: 1 */ - _ [2]byte + F__ccgo_pad3 [2]byte FbtreeMask YDbMask FlockMask YDbMask FaCounter [7]U32 @@ -10326,20 +10491,20 @@ type RecordCompare = uintptr /* sqlite3.c:16156:13 */ type PgHdr = PgHdr2 /* sqlite3.c:16289:22 */ type PCache2 = struct { - FpDirty uintptr - FpDirtyTail uintptr - FpSynced uintptr - FnRefSum int32 - FszCache int32 - FszSpill int32 - FszPage int32 - FszExtra int32 - FbPurgeable U8 - FeCreate U8 - _ [2]byte - FxStress uintptr - FpStress uintptr - FpCache uintptr + FpDirty uintptr + FpDirtyTail uintptr + FpSynced uintptr + FnRefSum int32 + FszCache int32 + FszSpill int32 + FszPage int32 + FszExtra int32 + FbPurgeable U8 + FeCreate U8 + F__ccgo_pad1 [2]byte + FxStress uintptr + FpStress uintptr + FpCache uintptr } /* sqlite3.c:1331:9 */ type PCache = PCache2 /* sqlite3.c:16290:23 */ @@ -10358,9 +10523,9 @@ type sqlite3InitInfo = struct { FnewTnum Pgno FiDb U8 Fbusy U8 - _ [2]byte + F__ccgo_pad1 [2]byte ForphanTrigger uint8 /* unsigned orphanTrigger: 1, unsigned imposterTable: 1, unsigned reopenMemdb: 1 */ - _ [3]byte + F__ccgo_pad2 [3]byte FazInit uintptr } /* sqlite3.c:1331:9 */ @@ -10520,13 +10685,13 @@ type YnVar = I16 /* sqlite3.c:18212:13 */ // ENAME_SPAN Text of the original result set // expression. type ExprList_item = struct { - FpExpr uintptr - FzEName uintptr - FsortFlags U8 - _ [3]byte - FeEName uint8 /* unsigned eEName: 2, unsigned done: 1, unsigned reusable: 1, unsigned bSorterRef: 1, unsigned bNulls: 1 */ - _ [3]byte - Fu struct { + FpExpr uintptr + FzEName uintptr + FsortFlags U8 + F__ccgo_pad1 [3]byte + FeEName uint8 /* unsigned eEName: 2, unsigned done: 1, unsigned reusable: 1, unsigned bSorterRef: 1, unsigned bNulls: 1 */ + F__ccgo_pad2 [3]byte + Fu struct { _ [0]uint32 Fx struct { FiOrderByCol U16 @@ -10592,7 +10757,7 @@ type Sqlite3Config = struct { FbUseCis U8 FbSmallMalloc U8 FbExtraSchemaChecks U8 - _ [2]byte + F__ccgo_pad1 [2]byte FmxStrlen int32 FneverCorrupt int32 FszLookaside int32 @@ -10998,7 +11163,7 @@ var Xsqlite3WhereTrace U32 = U32(0) /* sqlite3.c:21129:20 */ var Xsqlite3OpcodeProperty = [180]uint8{ /* 0 */ uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x01), uint8(0x01), uint8(0x01), uint8(0x00), uint8(0x10) /* 8 */, uint8(0x00), uint8(0x01), uint8(0x00), uint8(0x01), uint8(0x01), uint8(0x01), uint8(0x03), uint8(0x03) /* 16 */, uint8(0x01), uint8(0x01), uint8(0x03), uint8(0x12), uint8(0x03), uint8(0x01), uint8(0x09), uint8(0x09) /* 24 */, uint8(0x09), uint8(0x09), uint8(0x01), uint8(0x09), uint8(0x09), uint8(0x09), uint8(0x09), uint8(0x09) /* 32 */, uint8(0x09), uint8(0x01), uint8(0x01), uint8(0x01), uint8(0x01), uint8(0x01), uint8(0x01), uint8(0x01) /* 40 */, uint8(0x01), uint8(0x01), uint8(0x23), uint8(0x26), uint8(0x26), uint8(0x0b), uint8(0x01), uint8(0x01) /* 48 */, uint8(0x03), uint8(0x03), uint8(0x03), uint8(0x03), uint8(0x0b), uint8(0x0b), uint8(0x0b), uint8(0x0b) /* 56 */, uint8(0x0b), uint8(0x0b), uint8(0x01), uint8(0x03), uint8(0x01), uint8(0x01), uint8(0x01), uint8(0x00) /* 64 */, uint8(0x00), uint8(0x02), uint8(0x02), uint8(0x08), uint8(0x00), uint8(0x10), uint8(0x10), uint8(0x10) /* 72 */, uint8(0x10), uint8(0x00), uint8(0x10), uint8(0x10), uint8(0x00), uint8(0x00), uint8(0x10), uint8(0x10) /* 80 */, uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x02), uint8(0x02), uint8(0x02), uint8(0x00), uint8(0x00) /* 88 */, uint8(0x12), uint8(0x1e), uint8(0x20), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x10), uint8(0x10) /* 96 */, uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x26), uint8(0x26) /* 104 */, uint8(0x26), uint8(0x26), uint8(0x26), uint8(0x26), uint8(0x26), uint8(0x26), uint8(0x26), uint8(0x26) /* 112 */, uint8(0x00), uint8(0x12), uint8(0x00), uint8(0x00), uint8(0x10), uint8(0x00), uint8(0x00), uint8(0x00) /* 120 */, uint8(0x00), uint8(0x00), uint8(0x10), uint8(0x10), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00) /* 128 */, uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x10), uint8(0x00), uint8(0x00), uint8(0x04), uint8(0x04) /* 136 */, uint8(0x00), uint8(0x00), uint8(0x10), uint8(0x00), uint8(0x10), uint8(0x00), uint8(0x00), uint8(0x10) /* 144 */, uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x06) /* 152 */, uint8(0x10), uint8(0x10), uint8(0x00), uint8(0x04), uint8(0x1a), uint8(0x00), uint8(0x00), uint8(0x00) /* 160 */, uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00) /* 168 */, uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x10), uint8(0x10), uint8(0x00), uint8(0x00) /* 176 */, uint8(0x00), uint8(0x00), uint8(0x00), uint8(0x00)} /* sqlite3.c:21138:36 */ // Name of the default collating sequence -var Xsqlite3StrBINARY = *(*[7]int8)(unsafe.Pointer(ts + 478 /* "BINARY" */)) /* sqlite3.c:21143:27 */ +var Xsqlite3StrBINARY = *(*[7]int8)(unsafe.Pointer(ts + 488 /* "BINARY" */)) /* sqlite3.c:21143:27 */ //************* End of global.c ********************************************* //************* Begin file status.c ***************************************** @@ -11067,7 +11232,7 @@ type VdbeSorter1 = struct { FiPrev U8 FnTask U8 FtypeMask U8 - _ [3]byte + F__ccgo_pad1 [3]byte FaTask [1]SortSubtask } /* sqlite3.c:21218:9 */ @@ -11102,9 +11267,9 @@ type VdbeCursor1 = struct { FnullRow U8 FdeferredMoveto U8 FisTable U8 - _ [3]byte + F__ccgo_pad1 [3]byte FisEphemeral uint8 /* Bool isEphemeral: 1, Bool useRandomRowid: 1, Bool isOrdered: 1, Bool hasBeenDuped: 1 */ - _ [1]byte + F__ccgo_pad2 [1]byte FseekHit U16 FpBtx uintptr FseqCount I64 @@ -11225,7 +11390,7 @@ type ScanStatus1 = struct { FaddrVisit int32 FiSelectID int32 FnEst LogEst - _ [2]byte + F__ccgo_pad1 [2]byte FzName uintptr } /* sqlite3.c:21514:9 */ @@ -11484,7 +11649,7 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p if pSchema != uintptr(0) { var p uintptr - *(*int32)(unsafe.Pointer(bp /* nByte */)) += int32((uint32((*(*func(*libc.TLS, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 16 /* &.xRoundup */))))(tls, int32(unsafe.Sizeof(HashElem{})))) * ((((*Schema)(unsafe.Pointer(pSchema)).FtblHash.Fcount + + *(*int32)(unsafe.Pointer(bp /* nByte */)) += int32((uint32((*struct{ f func(*libc.TLS, int32) int32 })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxRoundup})).f(tls, int32(unsafe.Sizeof(HashElem{})))) * ((((*Schema)(unsafe.Pointer(pSchema)).FtblHash.Fcount + (*Schema)(unsafe.Pointer(pSchema)).FtrigHash.Fcount) + (*Schema)(unsafe.Pointer(pSchema)).FidxHash.Fcount) + (*Schema)(unsafe.Pointer(pSchema)).FfkeyHash.Fcount))) @@ -11630,7 +11795,7 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // #include "sqliteInt.h" // #include // #include -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -11645,11 +11810,11 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.23 Date and time -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -11664,9 +11829,9 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -11698,15 +11863,6 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -11743,11 +11899,6 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Offset of member MEMBER in a struct of type TYPE. @@ -11755,7 +11906,7 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // This defines CLOCKS_PER_SEC, which is the number of processor clock // ticks per second, and possibly a number of other constants. // System-dependent timing definitions. Linux version. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -11770,12 +11921,12 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -11790,7 +11941,7 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -11815,7 +11966,7 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // Flag to indicate time is absolute. -// Copyright (C) 1995-2018 Free Software Foundation, Inc. +// Copyright (C) 1995-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -11830,10 +11981,10 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -11848,7 +11999,7 @@ func Xsqlite3_db_status(tls *libc.TLS, db uintptr, op int32, pCurrent uintptr, p // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -11895,7 +12046,7 @@ type timex = struct { // may also need to be defined by other headers. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -11910,7 +12061,7 @@ type timex = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -11932,7 +12083,7 @@ type tm = struct { // NB: Include guard matches what uses. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -11947,7 +12098,7 @@ type tm = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -11971,22 +12122,22 @@ type itimerspec = struct { // A structure for holding a single date and time. type DateTime1 = struct { - FiJD Sqlite3_int64 - FY int32 - FM int32 - FD int32 - Fh int32 - Fm int32 - Ftz int32 - Fs float64 - FvalidJD int8 - FrawS int8 - FvalidYMD int8 - FvalidHMS int8 - FvalidTZ int8 - FtzSet int8 - FisError int8 - _ [1]byte + FiJD Sqlite3_int64 + FY int32 + FM int32 + FD int32 + Fh int32 + Fm int32 + Ftz int32 + Fs float64 + FvalidJD int8 + FrawS int8 + FvalidYMD int8 + FvalidHMS int8 + FvalidTZ int8 + FtzSet int8 + FisError int8 + F__ccgo_pad1 [1]byte } /* sqlite3.c:22238:9 */ // The MSVC CRT on Windows CE may not have a localtime() function. @@ -12142,7 +12293,7 @@ __6: __4: ; zDate++ - if !(getDigits(tls, zDate, ts+485 /* "20b:20e" */, libc.VaList(bp, bp+16 /* &nHr */, bp+20 /* &nMn */)) != 2) { + if !(getDigits(tls, zDate, ts+495 /* "20b:20e" */, libc.VaList(bp, bp+16 /* &nHr */, bp+20 /* &nMn */)) != 2) { goto __9 } return 1 @@ -12179,13 +12330,13 @@ func parseHhMmSs(tls *libc.TLS, zDate uintptr, p uintptr) int32 { /* sqlite3.c:2 // var s int32 at bp+32, 4 var ms float64 = 0.0 - if getDigits(tls, zDate, ts+493 /* "20c:20e" */, libc.VaList(bp, bp+24 /* &h */, bp+28 /* &m */)) != 2 { + if getDigits(tls, zDate, ts+503 /* "20c:20e" */, libc.VaList(bp, bp+24 /* &h */, bp+28 /* &m */)) != 2 { return 1 } zDate += uintptr(5) if int32(*(*int8)(unsafe.Pointer(zDate))) == ':' { zDate++ - if getDigits(tls, zDate, ts+501 /* "20e" */, libc.VaList(bp+16, bp+32 /* &s */)) != 1 { + if getDigits(tls, zDate, ts+511 /* "20e" */, libc.VaList(bp+16, bp+32 /* &s */)) != 1 { return 1 } zDate += uintptr(2) @@ -12263,10 +12414,10 @@ func computeJD(tls *libc.TLS, p uintptr) { /* sqlite3.c:22423:13: */ B = ((2 - A) + (A / 4)) X1 = ((36525 * (Y + 4716)) / 100) X2 = ((306001 * (M + 1)) / 10000) - (*DateTime)(unsafe.Pointer(p)).FiJD = (Sqlite3_int64(((float64(((X1 + X2) + D) + B)) - 1524.5) * float64(86400000))) + (*DateTime)(unsafe.Pointer(p)).FiJD = (libc.Int64FromFloat64(((float64(((X1 + X2) + D) + B)) - 1524.5) * float64(86400000))) (*DateTime)(unsafe.Pointer(p)).FvalidJD = int8(1) if (*DateTime)(unsafe.Pointer(p)).FvalidHMS != 0 { - *(*Sqlite3_int64)(unsafe.Pointer(p /* &.iJD */)) += ((Sqlite3_int64(((*DateTime)(unsafe.Pointer(p)).Fh * 3600000) + ((*DateTime)(unsafe.Pointer(p)).Fm * 60000))) + (Sqlite3_int64((*DateTime)(unsafe.Pointer(p)).Fs * float64(1000)))) + *(*Sqlite3_int64)(unsafe.Pointer(p /* &.iJD */)) += ((Sqlite3_int64(((*DateTime)(unsafe.Pointer(p)).Fh * 3600000) + ((*DateTime)(unsafe.Pointer(p)).Fm * 60000))) + (libc.Int64FromFloat64((*DateTime)(unsafe.Pointer(p)).Fs * float64(1000)))) if (*DateTime)(unsafe.Pointer(p)).FvalidTZ != 0 { *(*Sqlite3_int64)(unsafe.Pointer(p /* &.iJD */)) -= (Sqlite3_int64((*DateTime)(unsafe.Pointer(p)).Ftz * 60000)) (*DateTime)(unsafe.Pointer(p)).FvalidYMD = int8(0) @@ -12304,7 +12455,7 @@ func parseYyyyMmDd(tls *libc.TLS, zDate uintptr, p uintptr) int32 { /* sqlite3.c } else { neg = 0 } - if getDigits(tls, zDate, ts+505 /* "40f-21a-21d" */, libc.VaList(bp, bp+24 /* &Y */, bp+28 /* &M */, bp+32 /* &D */)) != 3 { + if getDigits(tls, zDate, ts+515 /* "40f-21a-21d" */, libc.VaList(bp, bp+24 /* &Y */, bp+28 /* &M */, bp+32 /* &D */)) != 3 { return 1 } zDate += uintptr(10) @@ -12356,7 +12507,7 @@ func setRawDateNumber(tls *libc.TLS, p uintptr, r float64) { /* sqlite3.c:22526: (*DateTime)(unsafe.Pointer(p)).Fs = r (*DateTime)(unsafe.Pointer(p)).FrawS = int8(1) if (r >= 0.0) && (r < 5373484.5) { - (*DateTime)(unsafe.Pointer(p)).FiJD = (Sqlite3_int64((r * 86400000.0) + 0.5)) + (*DateTime)(unsafe.Pointer(p)).FiJD = (libc.Int64FromFloat64((r * 86400000.0) + 0.5)) (*DateTime)(unsafe.Pointer(p)).FvalidJD = int8(1) } } @@ -12385,7 +12536,7 @@ func parseDateOrTime(tls *libc.TLS, context uintptr, zDate uintptr, p uintptr) i return 0 } else if parseHhMmSs(tls, zDate, p) == 0 { return 0 - } else if (Xsqlite3StrICmp(tls, zDate, ts+517 /* "now" */) == 0) && (Xsqlite3NotPureFunc(tls, context) != 0) { + } else if (Xsqlite3StrICmp(tls, zDate, ts+527 /* "now" */) == 0) && (Xsqlite3NotPureFunc(tls, context) != 0) { return setDateTimeToCurrent(tls, context, p) } else if Xsqlite3AtoF(tls, zDate, bp /* &r */, Xsqlite3Strlen30(tls, zDate), uint8(SQLITE_UTF8)) > 0 { setRawDateNumber(tls, p, *(*float64)(unsafe.Pointer(bp /* r */))) @@ -12429,13 +12580,13 @@ func computeYMD(tls *libc.TLS, p uintptr) { /* sqlite3.c:22591:13: */ return } else { Z = (int32(((*DateTime)(unsafe.Pointer(p)).FiJD + int64(43200000)) / int64(86400000))) - A = (int32((float64(Z) - 1867216.25) / 36524.25)) + A = (libc.Int32FromFloat64((float64(Z) - 1867216.25) / 36524.25)) A = (((Z + 1) + A) - (A / 4)) B = (A + 1524) - C = (int32((float64(B) - 122.1) / 365.25)) + C = (libc.Int32FromFloat64((float64(B) - 122.1) / 365.25)) D = ((36525 * (C & 32767)) / 100) - E = (int32((float64(B - D)) / 30.6001)) - X1 = (int32(30.6001 * float64(E))) + E = (libc.Int32FromFloat64((float64(B - D)) / 30.6001)) + X1 = (libc.Int32FromFloat64(30.6001 * float64(E))) (*DateTime)(unsafe.Pointer(p)).FD = ((B - D) - X1) (*DateTime)(unsafe.Pointer(p)).FM = func() int32 { if E < 14 { @@ -12462,7 +12613,7 @@ func computeHMS(tls *libc.TLS, p uintptr) { /* sqlite3.c:22620:13: */ computeJD(tls, p) s = (int32(((*DateTime)(unsafe.Pointer(p)).FiJD + int64(43200000)) % int64(86400000))) (*DateTime)(unsafe.Pointer(p)).Fs = (float64(s) / 1000.0) - s = int32((*DateTime)(unsafe.Pointer(p)).Fs) + s = libc.Int32FromFloat64((*DateTime)(unsafe.Pointer(p)).Fs) *(*float64)(unsafe.Pointer(p + 32 /* &.s */)) -= (float64(s)) (*DateTime)(unsafe.Pointer(p)).Fh = (s / 3600) s = s - ((*DateTime)(unsafe.Pointer(p)).Fh * 3600) @@ -12559,7 +12710,7 @@ func localtimeOffset(tls *libc.TLS, p uintptr, pCtx uintptr, pRc uintptr) Sqlite (*DateTime)(unsafe.Pointer(bp + 44 /* &x */)).Fm = 0 (*DateTime)(unsafe.Pointer(bp + 44 /* &x */)).Fs = 0.0 } else { - var s int32 = (int32((*DateTime)(unsafe.Pointer(bp+44 /* &x */)).Fs + 0.5)) + var s int32 = (libc.Int32FromFloat64((*DateTime)(unsafe.Pointer(bp+44 /* &x */)).Fs + 0.5)) (*DateTime)(unsafe.Pointer(bp + 44 /* &x */)).Fs = float64(s) } (*DateTime)(unsafe.Pointer(bp + 44 /* &x */)).Ftz = 0 @@ -12567,7 +12718,7 @@ func localtimeOffset(tls *libc.TLS, p uintptr, pCtx uintptr, pRc uintptr) Sqlite computeJD(tls, bp+44 /* &x */) *(*Time_t)(unsafe.Pointer(bp + 92 /* t */)) = (Time_t(((*DateTime)(unsafe.Pointer(bp+44 /* &x */)).FiJD / int64(1000)) - (int64(21086676) * int64(10000)))) if osLocaltime(tls, bp+92 /* &t */, bp /* &sLocal */) != 0 { - Xsqlite3_result_error(tls, pCtx, ts+521 /* "local time unava..." */, -1) + Xsqlite3_result_error(tls, pCtx, ts+531 /* "local time unava..." */, -1) *(*int32)(unsafe.Pointer(pRc)) = SQLITE_ERROR return int64(0) } @@ -12595,19 +12746,19 @@ func localtimeOffset(tls *libc.TLS, p uintptr, pCtx uintptr, pRc uintptr) Sqlite // Where NNN is an arbitrary floating-point number and "days" can be one // of several units of time. var aXformType = [6]struct { - FeType U8 - FnName U8 - _ [2]byte - FzName uintptr - FrLimit float64 - FrXform float64 + FeType U8 + FnName U8 + F__ccgo_pad1 [2]byte + FzName uintptr + FrLimit float64 + FrXform float64 }{ - {FnName: U8(6), FzName: ts + 544 /* "second" */, FrLimit: 464269060800.0, FrXform: 1000.0}, - {FnName: U8(6), FzName: ts + 551 /* "minute" */, FrLimit: 7737817680.0, FrXform: 60000.0}, - {FnName: U8(4), FzName: ts + 558 /* "hour" */, FrLimit: 128963628.0, FrXform: 3600000.0}, - {FnName: U8(3), FzName: ts + 563 /* "day" */, FrLimit: 5373485.0, FrXform: 86400000.0}, - {FeType: U8(1), FnName: U8(5), FzName: ts + 567 /* "month" */, FrLimit: 176546.0, FrXform: 2592000000.0}, - {FeType: U8(2), FnName: U8(4), FzName: ts + 573 /* "year" */, FrLimit: 14713.0, FrXform: 31536000000.0}, + {FnName: U8(6), FzName: ts + 554 /* "second" */, FrLimit: 464269060800.0, FrXform: 1000.0}, + {FnName: U8(6), FzName: ts + 561 /* "minute" */, FrLimit: 7737817680.0, FrXform: 60000.0}, + {FnName: U8(4), FzName: ts + 568 /* "hour" */, FrLimit: 128963628.0, FrXform: 3600000.0}, + {FnName: U8(3), FzName: ts + 573 /* "day" */, FrLimit: 5373485.0, FrXform: 86400000.0}, + {FeType: U8(1), FnName: U8(5), FzName: ts + 577 /* "month" */, FrLimit: 176546.0, FrXform: 2592000000.0}, + {FeType: U8(2), FnName: U8(4), FzName: ts + 583 /* "year" */, FrLimit: 14713.0, FrXform: 31536000000.0}, } /* sqlite3.c:22795:3 */ // Process a modifier to a date-time stamp. The modifiers are @@ -12646,7 +12797,7 @@ func parseModifier(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, p uintptr) i // // Assuming the current time value is UTC (a.k.a. GMT), shift it to // show local time. - if (Xsqlite3_stricmp(tls, z, ts+578 /* "localtime" */) == 0) && (Xsqlite3NotPureFunc(tls, pCtx) != 0) { + if (Xsqlite3_stricmp(tls, z, ts+588 /* "localtime" */) == 0) && (Xsqlite3NotPureFunc(tls, pCtx) != 0) { computeJD(tls, p) *(*Sqlite3_int64)(unsafe.Pointer(p /* &.iJD */)) += (localtimeOffset(tls, p, pCtx, bp /* &rc */)) clearYMD_HMS_TZ(tls, p) @@ -12660,16 +12811,16 @@ func parseModifier(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, p uintptr) i // // Treat the current value of p->s as the number of // seconds since 1970. Convert to a real julian day number. - if (Xsqlite3_stricmp(tls, z, ts+588 /* "unixepoch" */) == 0) && ((*DateTime)(unsafe.Pointer(p)).FrawS != 0) { + if (Xsqlite3_stricmp(tls, z, ts+598 /* "unixepoch" */) == 0) && ((*DateTime)(unsafe.Pointer(p)).FrawS != 0) { *(*float64)(unsafe.Pointer(bp + 4 /* r */)) = (((*DateTime)(unsafe.Pointer(p)).Fs * 1000.0) + 210866760000000.0) if (*(*float64)(unsafe.Pointer(bp + 4 /* r */)) >= 0.0) && (*(*float64)(unsafe.Pointer(bp + 4 /* r */)) < 464269060800000.0) { clearYMD_HMS_TZ(tls, p) - (*DateTime)(unsafe.Pointer(p)).FiJD = (Sqlite3_int64(*(*float64)(unsafe.Pointer(bp + 4 /* r */)) + 0.5)) + (*DateTime)(unsafe.Pointer(p)).FiJD = (libc.Int64FromFloat64(*(*float64)(unsafe.Pointer(bp + 4 /* r */)) + 0.5)) (*DateTime)(unsafe.Pointer(p)).FvalidJD = int8(1) (*DateTime)(unsafe.Pointer(p)).FrawS = int8(0) *(*int32)(unsafe.Pointer(bp /* rc */)) = 0 } - } else if (Xsqlite3_stricmp(tls, z, ts+598 /* "utc" */) == 0) && (Xsqlite3NotPureFunc(tls, pCtx) != 0) { + } else if (Xsqlite3_stricmp(tls, z, ts+608 /* "utc" */) == 0) && (Xsqlite3NotPureFunc(tls, pCtx) != 0) { if int32((*DateTime)(unsafe.Pointer(p)).FtzSet) == 0 { var c1 Sqlite3_int64 computeJD(tls, p) @@ -12694,7 +12845,7 @@ func parseModifier(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, p uintptr) i // Move the date to the same time on the next occurrence of // weekday N where 0==Sunday, 1==Monday, and so forth. If the // date is already on the appropriate weekday, this is a no-op. - if ((((Xsqlite3_strnicmp(tls, z, ts+602 /* "weekday " */, 8) == 0) && + if ((((Xsqlite3_strnicmp(tls, z, ts+612 /* "weekday " */, 8) == 0) && (Xsqlite3AtoF(tls, (z+8), bp+4 /* &r */, Xsqlite3Strlen30(tls, (z+8)), uint8(SQLITE_UTF8)) > 0)) && ((float64(libc.AssignInt32(&n, int32(*(*float64)(unsafe.Pointer(bp + 4 /* r */)))))) == *(*float64)(unsafe.Pointer(bp + 4 /* r */)))) && (n >= 0)) && (*(*float64)(unsafe.Pointer(bp + 4 /* r */)) < float64(7)) { var Z Sqlite3_int64 @@ -12719,7 +12870,7 @@ func parseModifier(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, p uintptr) i // // Move the date backwards to the beginning of the current day, // or month or year. - if Xsqlite3_strnicmp(tls, z, ts+611 /* "start of " */, 9) != 0 { + if Xsqlite3_strnicmp(tls, z, ts+621 /* "start of " */, 9) != 0 { break } if (!(int32((*DateTime)(unsafe.Pointer(p)).FvalidJD) != 0) && !(int32((*DateTime)(unsafe.Pointer(p)).FvalidYMD) != 0)) && !(int32((*DateTime)(unsafe.Pointer(p)).FvalidHMS) != 0) { @@ -12733,14 +12884,14 @@ func parseModifier(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, p uintptr) i (*DateTime)(unsafe.Pointer(p)).FrawS = int8(0) (*DateTime)(unsafe.Pointer(p)).FvalidTZ = int8(0) (*DateTime)(unsafe.Pointer(p)).FvalidJD = int8(0) - if Xsqlite3_stricmp(tls, z, ts+567 /* "month" */) == 0 { + if Xsqlite3_stricmp(tls, z, ts+577 /* "month" */) == 0 { (*DateTime)(unsafe.Pointer(p)).FD = 1 *(*int32)(unsafe.Pointer(bp /* rc */)) = 0 - } else if Xsqlite3_stricmp(tls, z, ts+573 /* "year" */) == 0 { + } else if Xsqlite3_stricmp(tls, z, ts+583 /* "year" */) == 0 { (*DateTime)(unsafe.Pointer(p)).FM = 1 (*DateTime)(unsafe.Pointer(p)).FD = 1 *(*int32)(unsafe.Pointer(bp /* rc */)) = 0 - } else if Xsqlite3_stricmp(tls, z, ts+563 /* "day" */) == 0 { + } else if Xsqlite3_stricmp(tls, z, ts+573 /* "day" */) == 0 { *(*int32)(unsafe.Pointer(bp /* rc */)) = 0 } break @@ -12829,12 +12980,12 @@ func parseModifier(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, p uintptr) i rRounder = +0.5 } for i = 0; i < (int32(uint32(unsafe.Sizeof(aXformType)) / uint32(unsafe.Sizeof(struct { - FeType U8 - FnName U8 - _ [2]byte - FzName uintptr - FrLimit float64 - FrXform float64 + FeType U8 + FnName U8 + F__ccgo_pad1 [2]byte + FzName uintptr + FrLimit float64 + FrXform float64 }{})))); i++ { if (((int32(aXformType[i].FnName) == n) && (Xsqlite3_strnicmp(tls, aXformType[i].FzName, z, n) == 0)) && @@ -12870,7 +13021,7 @@ func parseModifier(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, p uintptr) i } } computeJD(tls, p) - *(*Sqlite3_int64)(unsafe.Pointer(p /* &.iJD */)) += (Sqlite3_int64((*(*float64)(unsafe.Pointer(bp + 4 /* r */)) * aXformType[i].FrXform) + rRounder)) + *(*Sqlite3_int64)(unsafe.Pointer(p /* &.iJD */)) += (libc.Int64FromFloat64((*(*float64)(unsafe.Pointer(bp + 4 /* r */)) * aXformType[i].FrXform) + rRounder)) *(*int32)(unsafe.Pointer(bp /* rc */)) = 0 break } @@ -12961,8 +13112,8 @@ func datetimeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* // var zBuf [100]int8 at bp+96, 100 computeYMD_HMS(tls, bp+48 /* &x */) - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([100]int8{})), bp+96 /* &zBuf[0] */, ts+621, /* "%04d-%02d-%02d %..." */ - libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).FY, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).FM, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).FD, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).Fh, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).Fm, int32((*DateTime)(unsafe.Pointer(bp+48 /* &x */)).Fs))) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([100]int8{})), bp+96 /* &zBuf[0] */, ts+631, /* "%04d-%02d-%02d %..." */ + libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).FY, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).FM, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).FD, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).Fh, (*DateTime)(unsafe.Pointer(bp+48 /* &x */)).Fm, libc.Int32FromFloat64((*DateTime)(unsafe.Pointer(bp+48 /* &x */)).Fs))) Xsqlite3_result_text(tls, context, bp+96 /* &zBuf[0] */, -1, libc.UintptrFromInt32(-1)) } } @@ -12980,7 +13131,7 @@ func timeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql // var zBuf [100]int8 at bp+72, 100 computeHMS(tls, bp+24 /* &x */) - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([100]int8{})), bp+72 /* &zBuf[0] */, ts+651 /* "%02d:%02d:%02d" */, libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).Fh, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).Fm, int32((*DateTime)(unsafe.Pointer(bp+24 /* &x */)).Fs))) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([100]int8{})), bp+72 /* &zBuf[0] */, ts+661 /* "%02d:%02d:%02d" */, libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).Fh, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).Fm, libc.Int32FromFloat64((*DateTime)(unsafe.Pointer(bp+24 /* &x */)).Fs))) Xsqlite3_result_text(tls, context, bp+72 /* &zBuf[0] */, -1, libc.UintptrFromInt32(-1)) } } @@ -12998,7 +13149,7 @@ func dateFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql // var zBuf [100]int8 at bp+72, 100 computeYMD(tls, bp+24 /* &x */) - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([100]int8{})), bp+72 /* &zBuf[0] */, ts+666 /* "%04d-%02d-%02d" */, libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).FY, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).FM, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).FD)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([100]int8{})), bp+72 /* &zBuf[0] */, ts+676 /* "%04d-%02d-%02d" */, libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).FY, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).FM, (*DateTime)(unsafe.Pointer(bp+24 /* &x */)).FD)) Xsqlite3_result_text(tls, context, bp+72 /* &zBuf[0] */, -1, libc.UintptrFromInt32(-1)) } } @@ -13125,7 +13276,7 @@ __3: i++ switch int32(*(*int8)(unsafe.Pointer(zFmt + uintptr(i)))) { case 'd': - Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+681 /* "%02d" */, libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FD)) + Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+691 /* "%02d" */, libc.VaList(bp, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FD)) j = j + (Size_t(2)) break fallthrough @@ -13135,14 +13286,14 @@ __3: if s > 59.999 { s = 59.999 } - Xsqlite3_snprintf(tls, 7, (z + uintptr(j)), ts+686 /* "%06.3f" */, libc.VaList(bp+8, s)) + Xsqlite3_snprintf(tls, 7, (z + uintptr(j)), ts+696 /* "%06.3f" */, libc.VaList(bp+8, s)) j = j + (Size_t(Xsqlite3Strlen30(tls, (z + uintptr(j))))) break } fallthrough case 'H': - Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+681 /* "%02d" */, libc.VaList(bp+16, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).Fh)) + Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+691 /* "%02d" */, libc.VaList(bp+16, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).Fh)) j = j + (Size_t(2)) break fallthrough @@ -13160,10 +13311,10 @@ __3: if int32(*(*int8)(unsafe.Pointer(zFmt + uintptr(i)))) == 'W' { var wd int32 // 0=Monday, 1=Tuesday, ... 6=Sunday wd = (int32((((*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FiJD + int64(43200000)) / int64(86400000)) % int64(7))) - Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+681 /* "%02d" */, libc.VaList(bp+24, (((nDay+7)-wd)/7))) + Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+691 /* "%02d" */, libc.VaList(bp+24, (((nDay+7)-wd)/7))) j = j + (Size_t(2)) } else { - Xsqlite3_snprintf(tls, 4, (z + uintptr(j)), ts+693 /* "%03d" */, libc.VaList(bp+32, (nDay+1))) + Xsqlite3_snprintf(tls, 4, (z + uintptr(j)), ts+703 /* "%03d" */, libc.VaList(bp+32, (nDay+1))) j = j + (Size_t(3)) } break @@ -13172,19 +13323,19 @@ __3: fallthrough case 'J': { - Xsqlite3_snprintf(tls, 20, (z + uintptr(j)), ts+698 /* "%.16g" */, libc.VaList(bp+40, (float64((*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FiJD)/86400000.0))) + Xsqlite3_snprintf(tls, 20, (z + uintptr(j)), ts+708 /* "%.16g" */, libc.VaList(bp+40, (float64((*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FiJD)/86400000.0))) j = j + (Size_t(Xsqlite3Strlen30(tls, (z + uintptr(j))))) break } fallthrough case 'm': - Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+681 /* "%02d" */, libc.VaList(bp+48, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FM)) + Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+691 /* "%02d" */, libc.VaList(bp+48, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FM)) j = j + (Size_t(2)) break fallthrough case 'M': - Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+681 /* "%02d" */, libc.VaList(bp+56, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).Fm)) + Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+691 /* "%02d" */, libc.VaList(bp+56, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).Fm)) j = j + (Size_t(2)) break fallthrough @@ -13198,7 +13349,7 @@ __3: } fallthrough case 'S': - Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+681 /* "%02d" */, libc.VaList(bp+64, int32((*DateTime)(unsafe.Pointer(bp+80 /* &x */)).Fs))) + Xsqlite3_snprintf(tls, 3, (z + uintptr(j)), ts+691 /* "%02d" */, libc.VaList(bp+64, libc.Int32FromFloat64((*DateTime)(unsafe.Pointer(bp+80 /* &x */)).Fs))) j = j + (Size_t(2)) break fallthrough @@ -13211,7 +13362,7 @@ __3: fallthrough case 'Y': { - Xsqlite3_snprintf(tls, 5, (z + uintptr(j)), ts+704 /* "%04d" */, libc.VaList(bp+72, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FY)) + Xsqlite3_snprintf(tls, 5, (z + uintptr(j)), ts+714 /* "%04d" */, libc.VaList(bp+72, (*DateTime)(unsafe.Pointer(bp+80 /* &x */)).FY)) j = j + (Size_t(Xsqlite3Strlen30(tls, (z + uintptr(j))))) break @@ -13268,14 +13419,14 @@ func Xsqlite3RegisterDateTimeFunctions(tls *libc.TLS) { /* sqlite3.c:23404:21: * } var aDateTimeFuncs = [8]FuncDef{ - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 709 /* "julianday" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 719 /* "date" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 724 /* "time" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 729 /* "datetime" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 738 /* "strftime" */}, - {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 747 /* "current_time" */}, - {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 760 /* "current_timestam..." */}, - {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 778 /* "current_date" */}} /* sqlite3.c:23405:18 */ + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 719 /* "julianday" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 729 /* "date" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 734 /* "time" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 739 /* "datetime" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_SLOCHNG | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FpUserData: 0, FxSFunc: 0, FzName: ts + 748 /* "strftime" */}, + {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 757 /* "current_time" */}, + {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 770 /* "current_timestam..." */}, + {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 788 /* "current_date" */}} /* sqlite3.c:23405:18 */ //************* End of date.c *********************************************** //************* Begin file os.c ********************************************* @@ -13338,7 +13489,9 @@ var Xsqlite3_memdebug_vfs_oom_test int32 = 1 /* sqlite3.c:23490:16 */ // C++ instead of plain old C. func Xsqlite3OsClose(tls *libc.TLS, pId uintptr) { /* sqlite3.c:23507:21: */ if (*Sqlite3_file)(unsafe.Pointer(pId)).FpMethods != 0 { - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pId)).FpMethods + 4 /* &.xClose */))))(tls, pId) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pId)).FpMethods)).FxClose})).f(tls, pId) (*Sqlite3_file)(unsafe.Pointer(pId)).FpMethods = uintptr(0) } } @@ -13352,7 +13505,9 @@ func Xsqlite3OsRead(tls *libc.TLS, id uintptr, pBuf uintptr, amt int32, offset I Xsqlite3_free(tls, pTstAlloc) } - return (*(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 8 /* &.xRead */))))(tls, id, pBuf, amt, offset) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxRead})).f(tls, id, pBuf, amt, offset) } func Xsqlite3OsWrite(tls *libc.TLS, id uintptr, pBuf uintptr, amt int32, offset I64) int32 { /* sqlite3.c:23517:20: */ @@ -13364,11 +13519,15 @@ func Xsqlite3OsWrite(tls *libc.TLS, id uintptr, pBuf uintptr, amt int32, offset Xsqlite3_free(tls, pTstAlloc) } - return (*(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 12 /* &.xWrite */))))(tls, id, pBuf, amt, offset) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxWrite})).f(tls, id, pBuf, amt, offset) } func Xsqlite3OsTruncate(tls *libc.TLS, id uintptr, size I64) int32 { /* sqlite3.c:23521:20: */ - return (*(*func(*libc.TLS, uintptr, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 16 /* &.xTruncate */))))(tls, id, size) + return (*struct { + f func(*libc.TLS, uintptr, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxTruncate})).f(tls, id, size) } func Xsqlite3OsSync(tls *libc.TLS, id uintptr, flags int32) int32 { /* sqlite3.c:23524:20: */ @@ -13381,7 +13540,9 @@ func Xsqlite3OsSync(tls *libc.TLS, id uintptr, flags int32) int32 { /* sqlite3.c } if flags != 0 { - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 20 /* &.xSync */))))(tls, id, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxSync})).f(tls, id, flags) } return SQLITE_OK } @@ -13395,7 +13556,9 @@ func Xsqlite3OsFileSize(tls *libc.TLS, id uintptr, pSize uintptr) int32 { /* sql Xsqlite3_free(tls, pTstAlloc) } - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 24 /* &.xFileSize */))))(tls, id, pSize) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxFileSize})).f(tls, id, pSize) } func Xsqlite3OsLock(tls *libc.TLS, id uintptr, lockType int32) int32 { /* sqlite3.c:23532:20: */ @@ -13407,11 +13570,15 @@ func Xsqlite3OsLock(tls *libc.TLS, id uintptr, lockType int32) int32 { /* sqlite Xsqlite3_free(tls, pTstAlloc) } - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 28 /* &.xLock */))))(tls, id, lockType) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxLock})).f(tls, id, lockType) } func Xsqlite3OsUnlock(tls *libc.TLS, id uintptr, lockType int32) int32 { /* sqlite3.c:23536:20: */ - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 32 /* &.xUnlock */))))(tls, id, lockType) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxUnlock})).f(tls, id, lockType) } func Xsqlite3OsCheckReservedLock(tls *libc.TLS, id uintptr, pResOut uintptr) int32 { /* sqlite3.c:23539:20: */ @@ -13423,7 +13590,9 @@ func Xsqlite3OsCheckReservedLock(tls *libc.TLS, id uintptr, pResOut uintptr) int Xsqlite3_free(tls, pTstAlloc) } - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 36 /* &.xCheckReservedLock */))))(tls, id, pResOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxCheckReservedLock})).f(tls, id, pResOut) } // Use sqlite3OsFileControl() when we are doing something that might fail @@ -13463,12 +13632,16 @@ func Xsqlite3OsFileControl(tls *libc.TLS, id uintptr, op int32, pArg uintptr) in } } - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 40 /* &.xFileControl */))))(tls, id, op, pArg) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxFileControl})).f(tls, id, op, pArg) } func Xsqlite3OsFileControlHint(tls *libc.TLS, id uintptr, op int32, pArg uintptr) { /* sqlite3.c:23580:21: */ if (*Sqlite3_file)(unsafe.Pointer(id)).FpMethods != 0 { - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 40 /* &.xFileControl */))))(tls, id, op, pArg) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxFileControl})).f(tls, id, op, pArg) } } @@ -13476,26 +13649,34 @@ func Xsqlite3OsSectorSize(tls *libc.TLS, id uintptr) int32 { /* sqlite3.c:23584: var xSectorSize uintptr = (*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxSectorSize return func() int32 { if xSectorSize != 0 { - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(&xSectorSize)))(tls, id) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xSectorSize})).f(tls, id) } return SQLITE_DEFAULT_SECTOR_SIZE }() } func Xsqlite3OsDeviceCharacteristics(tls *libc.TLS, id uintptr) int32 { /* sqlite3.c:23588:20: */ - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 48 /* &.xDeviceCharacteristics */))))(tls, id) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxDeviceCharacteristics})).f(tls, id) } func Xsqlite3OsShmLock(tls *libc.TLS, id uintptr, offset int32, n int32, flags int32) int32 { /* sqlite3.c:23592:20: */ - return (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 56 /* &.xShmLock */))))(tls, id, offset, n, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxShmLock})).f(tls, id, offset, n, flags) } func Xsqlite3OsShmBarrier(tls *libc.TLS, id uintptr) { /* sqlite3.c:23595:21: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 60 /* &.xShmBarrier */))))(tls, id) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxShmBarrier})).f(tls, id) } func Xsqlite3OsShmUnmap(tls *libc.TLS, id uintptr, deleteFlag int32) int32 { /* sqlite3.c:23598:20: */ - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 64 /* &.xShmUnmap */))))(tls, id, deleteFlag) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxShmUnmap})).f(tls, id, deleteFlag) } func Xsqlite3OsShmMap(tls *libc.TLS, id uintptr, iPage int32, pgsz int32, bExtend int32, pp uintptr) int32 { /* sqlite3.c:23601:20: */ @@ -13507,7 +13688,9 @@ func Xsqlite3OsShmMap(tls *libc.TLS, id uintptr, iPage int32, pgsz int32, bExten Xsqlite3_free(tls, pTstAlloc) } - return (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 52 /* &.xShmMap */))))(tls, id, iPage, pgsz, bExtend, libc.AtomicLoadUintptr(&pp)) + return (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxShmMap})).f(tls, id, iPage, pgsz, bExtend, pp) } // The real implementation of xFetch and xUnfetch @@ -13520,11 +13703,15 @@ func Xsqlite3OsFetch(tls *libc.TLS, id uintptr, iOff I64, iAmt int32, pp uintptr Xsqlite3_free(tls, pTstAlloc) } - return (*(*func(*libc.TLS, uintptr, Sqlite3_int64, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 68 /* &.xFetch */))))(tls, id, iOff, iAmt, pp) + return (*struct { + f func(*libc.TLS, uintptr, Sqlite3_int64, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxFetch})).f(tls, id, iOff, iAmt, pp) } func Xsqlite3OsUnfetch(tls *libc.TLS, id uintptr, iOff I64, p uintptr) int32 { /* sqlite3.c:23619:20: */ - return (*(*func(*libc.TLS, uintptr, Sqlite3_int64, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods + 72 /* &.xUnfetch */))))(tls, id, iOff, p) + return (*struct { + f func(*libc.TLS, uintptr, Sqlite3_int64, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(id)).FpMethods)).FxUnfetch})).f(tls, id, iOff, p) } // The next group of routines are convenience wrappers around the @@ -13543,7 +13730,9 @@ func Xsqlite3OsOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr, pFile uintptr, f // down into the VFS layer. Some SQLITE_OPEN_ flags (for example, // SQLITE_OPEN_FULLMUTEX or SQLITE_OPEN_SHAREDCACHE) are blocked before // reaching the VFS. - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 24 /* &.xOpen */))))(tls, pVfs, zPath, pFile, (flags & 0x1087f7f), pFlagsOut) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxOpen})).f(tls, pVfs, zPath, pFile, (flags & 0x1087f7f), pFlagsOut) return rc } @@ -13558,7 +13747,9 @@ func Xsqlite3OsDelete(tls *libc.TLS, pVfs uintptr, zPath uintptr, dirSync int32) } if (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDelete != uintptr(0) { - return (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pVfs + 28 /* &.xDelete */))))(tls, pVfs, zPath, dirSync) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDelete})).f(tls, pVfs, zPath, dirSync) } return SQLITE_OK } @@ -13572,7 +13763,9 @@ func Xsqlite3OsAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, p Xsqlite3_free(tls, pTstAlloc) } - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 32 /* &.xAccess */))))(tls, pVfs, zPath, flags, pResOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxAccess})).f(tls, pVfs, zPath, flags, pResOut) } func Xsqlite3OsFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nPathOut int32, zPathOut uintptr) int32 { /* sqlite3.c:23668:20: */ @@ -13585,25 +13778,35 @@ func Xsqlite3OsFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nPathOut } *(*int8)(unsafe.Pointer(zPathOut)) = int8(0) - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 36 /* &.xFullPathname */))))(tls, pVfs, zPath, nPathOut, zPathOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxFullPathname})).f(tls, pVfs, zPath, nPathOut, zPathOut) } func Xsqlite3OsDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* sqlite3.c:23679:21: */ // tag-20210611-1 - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer((pVfs + 40 /* &.xDlOpen */))))(tls, pVfs, zPath) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDlOpen})).f(tls, pVfs, zPath) } func Xsqlite3OsDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) { /* sqlite3.c:23684:21: */ - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer((pVfs + 44 /* &.xDlError */))))(tls, pVfs, nByte, zBufOut) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDlError})).f(tls, pVfs, nByte, zBufOut) } func Xsqlite3OsDlSym(tls *libc.TLS, pVfs uintptr, pHdle uintptr, zSym uintptr) uintptr { /* sqlite3.c:23687:21: */ - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer((pVfs + 48 /* &.xDlSym */))))(tls, pVfs, pHdle, zSym) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDlSym})).f(tls, pVfs, pHdle, zSym) } func Xsqlite3OsDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* sqlite3.c:23690:21: */ - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pVfs + 52 /* &.xDlClose */))))(tls, pVfs, pHandle) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDlClose})).f(tls, pVfs, pHandle) } func Xsqlite3OsRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* sqlite3.c:23694:20: */ @@ -13615,19 +13818,25 @@ func Xsqlite3OsRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uint libc.Xmemcpy(tls, zBufOut, (uintptr(unsafe.Pointer(&Xsqlite3Config)) + 268 /* &.iPrngSeed */), uint32(nByte)) return SQLITE_OK } else { - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 56 /* &.xRandomness */))))(tls, pVfs, nByte, zBufOut) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxRandomness})).f(tls, pVfs, nByte, zBufOut) } return int32(0) } func Xsqlite3OsSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* sqlite3.c:23705:20: */ - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pVfs + 60 /* &.xSleep */))))(tls, pVfs, nMicro) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxSleep})).f(tls, pVfs, nMicro) } func Xsqlite3OsGetLastError(tls *libc.TLS, pVfs uintptr) int32 { /* sqlite3.c:23708:20: */ if (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxGetLastError != 0 { - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pVfs + 68 /* &.xGetLastError */))))(tls, pVfs, 0, uintptr(0)) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxGetLastError})).f(tls, pVfs, 0, uintptr(0)) } return 0 } @@ -13643,12 +13852,16 @@ func Xsqlite3OsCurrentTimeInt64(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) i // will fall back to xCurrentTime() if xCurrentTimeInt64() is // unavailable. if ((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FiVersion >= 2) && ((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxCurrentTimeInt64 != 0) { - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pVfs + 72 /* &.xCurrentTimeInt64 */))))(tls, pVfs, pTimeOut) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxCurrentTimeInt64})).f(tls, pVfs, pTimeOut) } else { // var r float64 at bp, 8 - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pVfs + 64 /* &.xCurrentTime */))))(tls, pVfs, bp /* &r */) - *(*Sqlite3_int64)(unsafe.Pointer(pTimeOut)) = (Sqlite3_int64(*(*float64)(unsafe.Pointer(bp /* r */)) * 86400000.0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxCurrentTime})).f(tls, pVfs, bp /* &r */) + *(*Sqlite3_int64)(unsafe.Pointer(pTimeOut)) = (libc.Int64FromFloat64(*(*float64)(unsafe.Pointer(bp /* r */)) * 86400000.0)) } return rc } @@ -13858,14 +14071,14 @@ func Xsqlite3BenignMallocHooks(tls *libc.TLS, xBenignBegin uintptr, xBenignEnd u func Xsqlite3BeginBenignMalloc(tls *libc.TLS) { /* sqlite3.c:23942:21: */ if sqlite3Hooks.FxBenignBegin != 0 { - (*(*func(*libc.TLS))(unsafe.Pointer((uintptr(unsafe.Pointer(&sqlite3Hooks)) /* &.xBenignBegin */))))(tls) + (*struct{ f func(*libc.TLS) })(unsafe.Pointer(&struct{ uintptr }{sqlite3Hooks.FxBenignBegin})).f(tls) } } func Xsqlite3EndBenignMalloc(tls *libc.TLS) { /* sqlite3.c:23948:21: */ if sqlite3Hooks.FxBenignEnd != 0 { - (*(*func(*libc.TLS))(unsafe.Pointer((uintptr(unsafe.Pointer(&sqlite3Hooks)) + 4 /* &.xBenignEnd */))))(tls) + (*struct{ f func(*libc.TLS) })(unsafe.Pointer(&struct{ uintptr }{sqlite3Hooks.FxBenignEnd})).f(tls) } } @@ -13972,7 +14185,7 @@ func sqlite3MemMalloc(tls *libc.TLS, nByte int32) uintptr { /* sqlite3.c:24148:1 p += 8 } else { - Xsqlite3_log(tls, SQLITE_NOMEM, ts+791 /* "failed to alloca..." */, libc.VaList(bp, nByte)) + Xsqlite3_log(tls, SQLITE_NOMEM, ts+801 /* "failed to alloca..." */, libc.VaList(bp, nByte)) } return p } @@ -14023,7 +14236,7 @@ func sqlite3MemRealloc(tls *libc.TLS, pPrior uintptr, nByte int32) uintptr { /* } else { Xsqlite3_log(tls, SQLITE_NOMEM, - ts+829, /* "failed memory re..." */ + ts+839, /* "failed memory re..." */ libc.VaList(bp, sqlite3MemSize(tls, pPrior), nByte)) } return p @@ -14226,7 +14439,7 @@ func Xsqlite3MutexInit(tls *libc.TLS) int32 { /* sqlite3.c:26333:20: */ (*Sqlite3_mutex_methods)(unsafe.Pointer(pTo)).FxMutexAlloc = (*Sqlite3_mutex_methods)(unsafe.Pointer(pFrom)).FxMutexAlloc } - rc = (*(*func(*libc.TLS) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ /* &.xMutexInit */))))(tls) + rc = (*struct{ f func(*libc.TLS) int32 })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexInit})).f(tls) return rc } @@ -14236,7 +14449,7 @@ func Xsqlite3MutexInit(tls *libc.TLS) int32 { /* sqlite3.c:26333:20: */ func Xsqlite3MutexEnd(tls *libc.TLS) int32 { /* sqlite3.c:26379:20: */ var rc int32 = SQLITE_OK if Xsqlite3Config.Fmutex.FxMutexEnd != 0 { - rc = (*(*func(*libc.TLS) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ + 4 /* &.xMutexEnd */))))(tls) + rc = (*struct{ f func(*libc.TLS) int32 })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexEnd})).f(tls) } return rc @@ -14251,7 +14464,9 @@ func Xsqlite3_mutex_alloc(tls *libc.TLS, id int32) uintptr { /* sqlite3.c:26395: return uintptr(0) } - return (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ + 8 /* &.xMutexAlloc */))))(tls, id) + return (*struct { + f func(*libc.TLS, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexAlloc})).f(tls, id) } func Xsqlite3MutexAlloc(tls *libc.TLS, id int32) uintptr { /* sqlite3.c:26404:30: */ @@ -14259,14 +14474,16 @@ func Xsqlite3MutexAlloc(tls *libc.TLS, id int32) uintptr { /* sqlite3.c:26404:30 return uintptr(0) } - return (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ + 8 /* &.xMutexAlloc */))))(tls, id) + return (*struct { + f func(*libc.TLS, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexAlloc})).f(tls, id) } // Free a dynamic mutex. func Xsqlite3_mutex_free(tls *libc.TLS, p uintptr) { /* sqlite3.c:26416:17: */ if p != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ + 12 /* &.xMutexFree */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexFree})).f(tls, p) } } @@ -14275,7 +14492,7 @@ func Xsqlite3_mutex_free(tls *libc.TLS, p uintptr) { /* sqlite3.c:26416:17: */ func Xsqlite3_mutex_enter(tls *libc.TLS, p uintptr) { /* sqlite3.c:26427:17: */ if p != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ + 16 /* &.xMutexEnter */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexEnter})).f(tls, p) } } @@ -14285,7 +14502,9 @@ func Xsqlite3_mutex_try(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:26438:16: var rc int32 = SQLITE_OK if p != 0 { - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ + 20 /* &.xMutexTry */))))(tls, p) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexTry})).f(tls, p) } return rc } @@ -14297,7 +14516,7 @@ func Xsqlite3_mutex_try(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:26438:16: func Xsqlite3_mutex_leave(tls *libc.TLS, p uintptr) { /* sqlite3.c:26453:17: */ if p != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 64 /* &.mutex */ + 24 /* &.xMutexLeave */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fmutex.FxMutexLeave})).f(tls, p) } } @@ -14564,7 +14783,9 @@ func Xsqlite3MallocInit(tls *libc.TLS) int32 { /* sqlite3.c:27944:20: */ Xsqlite3Config.FpPage = uintptr(0) Xsqlite3Config.FszPage = 0 } - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 20 /* &.xInit */))))(tls, Xsqlite3Config.Fm.FpAppData) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxInit})).f(tls, Xsqlite3Config.Fm.FpAppData) if rc != SQLITE_OK { libc.Xmemset(tls, uintptr(unsafe.Pointer(&mem0)), 0, uint32(unsafe.Sizeof(mem0))) } @@ -14581,7 +14802,7 @@ func Xsqlite3HeapNearlyFull(tls *libc.TLS) int32 { /* sqlite3.c:27965:20: */ // Deinitialize the memory allocation subsystem. func Xsqlite3MallocEnd(tls *libc.TLS) { /* sqlite3.c:27972:21: */ if Xsqlite3Config.Fm.FxShutdown != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 24 /* &.xShutdown */))))(tls, Xsqlite3Config.Fm.FpAppData) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxShutdown})).f(tls, Xsqlite3Config.Fm.FpAppData) } libc.Xmemset(tls, uintptr(unsafe.Pointer(&mem0)), 0, uint32(unsafe.Sizeof(mem0))) } @@ -14635,7 +14856,7 @@ func mallocWithAlarm(tls *libc.TLS, n int32, pp uintptr) { /* sqlite3.c:28013:13 // mode and specifically when the DMD "Dark Matter Detector" is enabled // or else a crash results. Hence, do not attempt to optimize out the // following xRoundup() call. - nFull = (*(*func(*libc.TLS, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 16 /* &.xRoundup */))))(tls, n) + nFull = (*struct{ f func(*libc.TLS, int32) int32 })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxRoundup})).f(tls, n) Xsqlite3StatusHighwater(tls, SQLITE_STATUS_MALLOC_SIZE, n) if mem0.FalarmThreshold > int64(0) { @@ -14654,10 +14875,14 @@ func mallocWithAlarm(tls *libc.TLS, n int32, pp uintptr) { /* sqlite3.c:28013:13 libc.AtomicStoreNInt32((uintptr(unsafe.Pointer(&mem0)) + 20 /* &.nearlyFull */), int32(0), 0) } } - p = (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ /* &.xMalloc */))))(tls, nFull) + p = (*struct { + f func(*libc.TLS, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxMalloc})).f(tls, nFull) if (p == uintptr(0)) && (mem0.FalarmThreshold > int64(0)) { sqlite3MallocAlarm(tls, nFull) - p = (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ /* &.xMalloc */))))(tls, nFull) + p = (*struct { + f func(*libc.TLS, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxMalloc})).f(tls, nFull) } if p != 0 { nFull = Xsqlite3MallocSize(tls, p) @@ -14687,7 +14912,9 @@ func Xsqlite3Malloc(tls *libc.TLS, n U64) uintptr { /* sqlite3.c:28062:21: */ mallocWithAlarm(tls, int32(n), bp /* &p */) Xsqlite3_mutex_leave(tls, mem0.Fmutex) } else { - *(*uintptr)(unsafe.Pointer(bp /* p */)) = (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ /* &.xMalloc */))))(tls, int32(n)) + *(*uintptr)(unsafe.Pointer(bp /* p */)) = (*struct { + f func(*libc.TLS, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxMalloc})).f(tls, int32(n)) } // IMP: R-11148-40995 return *(*uintptr)(unsafe.Pointer(bp /* p */)) @@ -14722,7 +14949,9 @@ func isLookaside(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:2810 // sqlite3Malloc() or sqlite3_malloc(). func Xsqlite3MallocSize(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:28115:20: */ - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 12 /* &.xSize */))))(tls, p) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxSize})).f(tls, p) } func lookasideMallocSize(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:28119:12: */ @@ -14746,13 +14975,17 @@ func Xsqlite3DbMallocSize(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlit } } } - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 12 /* &.xSize */))))(tls, p) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxSize})).f(tls, p) } func Xsqlite3_msize(tls *libc.TLS, p uintptr) Sqlite3_uint64 { /* sqlite3.c:28155:27: */ if p != 0 { - return uint64((*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 12 /* &.xSize */))))(tls, p)) + return uint64((*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxSize})).f(tls, p)) } return uint64(0) } @@ -14767,10 +15000,10 @@ func Xsqlite3_free(tls *libc.TLS, p uintptr) { /* sqlite3.c:28164:17: */ Xsqlite3_mutex_enter(tls, mem0.Fmutex) Xsqlite3StatusDown(tls, SQLITE_STATUS_MEMORY_USED, Xsqlite3MallocSize(tls, p)) Xsqlite3StatusDown(tls, SQLITE_STATUS_MALLOC_COUNT, 1) - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 4 /* &.xFree */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxFree})).f(tls, p) Xsqlite3_mutex_leave(tls, mem0.Fmutex) } else { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 4 /* &.xFree */))))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxFree})).f(tls, p) } } @@ -14838,7 +15071,7 @@ func Xsqlite3Realloc(tls *libc.TLS, pOld uintptr, nBytes U64) uintptr { /* sqlit // IMPLEMENTATION-OF: R-46199-30249 SQLite guarantees that the second // argument to xRealloc is always a value returned by a prior call to // xRoundup. - nNew = (*(*func(*libc.TLS, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 16 /* &.xRoundup */))))(tls, int32(nBytes)) + nNew = (*struct{ f func(*libc.TLS, int32) int32 })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxRoundup})).f(tls, int32(nBytes)) if nOld == nNew { pNew = pOld } else if Xsqlite3Config.FbMemstat != 0 { @@ -14853,10 +15086,14 @@ func Xsqlite3Realloc(tls *libc.TLS, pOld uintptr, nBytes U64) uintptr { /* sqlit return uintptr(0) } } - pNew = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 8 /* &.xRealloc */))))(tls, pOld, nNew) + pNew = (*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxRealloc})).f(tls, pOld, nNew) if (pNew == uintptr(0)) && (mem0.FalarmThreshold > int64(0)) { sqlite3MallocAlarm(tls, int32(nBytes)) - pNew = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 8 /* &.xRealloc */))))(tls, pOld, nNew) + pNew = (*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxRealloc})).f(tls, pOld, nNew) } if pNew != 0 { nNew = Xsqlite3MallocSize(tls, pNew) @@ -14864,7 +15101,9 @@ func Xsqlite3Realloc(tls *libc.TLS, pOld uintptr, nBytes U64) uintptr { /* sqlit } Xsqlite3_mutex_leave(tls, mem0.Fmutex) } else { - pNew = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 32 /* &.m */ + 8 /* &.xRealloc */))))(tls, pOld, nNew) + pNew = (*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fm.FxRealloc})).f(tls, pOld, nNew) } // IMP: R-11148-40995 return pNew @@ -15207,8 +15446,8 @@ type Et_info = et_info /* sqlite3.c:28672:3 */ // The following table is searched linearly, so it is good to put the // most frequently used conversion types first. -var aDigits = *(*[33]int8)(unsafe.Pointer(ts + 865 /* "0123456789ABCDEF..." */)) /* sqlite3.c:28685:19 */ -var aPrefix = *(*[7]int8)(unsafe.Pointer(ts + 898 /* "-x0\x00X0" */)) /* sqlite3.c:28686:19 */ +var aDigits = *(*[33]int8)(unsafe.Pointer(ts + 875 /* "0123456789ABCDEF..." */)) /* sqlite3.c:28685:19 */ +var aPrefix = *(*[7]int8)(unsafe.Pointer(ts + 908 /* "-x0\x00X0" */)) /* sqlite3.c:28686:19 */ var fmtinfo = [23]Et_info{ {Ffmttype: int8('d'), Fbase: EtByte(10), Fflags: EtByte(1), Ftype: EtByte(EtDECIMAL)}, {Ffmttype: int8('s'), Fflags: EtByte(4), Ftype: EtByte(EtSTRING)}, @@ -15462,7 +15701,7 @@ __6: if !((libc.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(libc.PreIncUintptr(&fmt, 1)))))) == 0) { goto __11 } - Xsqlite3_str_append(tls, pAccum, ts+905 /* "%" */, 1) + Xsqlite3_str_append(tls, pAccum, ts+915 /* "%" */, 1) goto __5 __11: ; @@ -16045,7 +16284,7 @@ __125: if !(Xsqlite3IsNaN(tls, *(*float64)(unsafe.Pointer(bp + 96 /* realvalue */))) != 0) { goto __127 } - bufpt = ts + 907 /* "NaN" */ + bufpt = ts + 917 /* "NaN" */ length = 3 goto __58 __127: @@ -16105,7 +16344,7 @@ __138: } bufpt = bp + 8 /* &buf[0] */ *(*int8)(unsafe.Pointer(bp + 8 /* &buf[0] */)) = prefix - libc.Xmemcpy(tls, (bp + 8 /* &buf[0] */ + uintptr((libc.Bool32(int32(prefix) != 0)))), ts+911 /* "Inf" */, uint32(4)) + libc.Xmemcpy(tls, (bp + 8 /* &buf[0] */ + uintptr((libc.Bool32(int32(prefix) != 0)))), ts+921 /* "Inf" */, uint32(4)) length = (3 + (libc.Bool32(int32(prefix) != 0))) goto __58 __139: @@ -16462,7 +16701,7 @@ __197: if !(bufpt == uintptr(0)) { goto __198 } - bufpt = ts + 915 /* "" */ + bufpt = ts + 925 /* "" */ goto __199 __198: if !(int32(xtype) == EtDYNSTRING) { @@ -16591,9 +16830,9 @@ __219: } escarg = func() uintptr { if int32(xtype) == EtSQLESCAPE2 { - return ts + 916 /* "NULL" */ + return ts + 926 /* "NULL" */ } - return ts + 921 /* "(NULL)" */ + return ts + 931 /* "(NULL)" */ }() __220: ; @@ -16728,7 +16967,7 @@ __240: goto __244 } Xsqlite3_str_appendall(tls, pAccum, (*SrcItem)(unsafe.Pointer(pItem)).FzDatabase) - Xsqlite3_str_append(tls, pAccum, ts+928 /* "." */, 1) + Xsqlite3_str_append(tls, pAccum, ts+938 /* "." */, 1) __244: ; Xsqlite3_str_appendall(tls, pAccum, (*SrcItem)(unsafe.Pointer(pItem)).FzName) @@ -16743,7 +16982,7 @@ __245: if !((*SrcItem)(unsafe.Pointer(pItem)).FpSelect != 0) { goto __247 } - Xsqlite3_str_appendf(tls, pAccum, ts+930 /* "SUBQUERY %u" */, libc.VaList(bp, (*Select)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pItem)).FpSelect)).FselId)) + Xsqlite3_str_appendf(tls, pAccum, ts+940 /* "SUBQUERY %u" */, libc.VaList(bp, (*Select)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pItem)).FpSelect)).FselId)) __247: ; __246: @@ -16806,7 +17045,7 @@ __5: // End for loop over the format string } -var zOrd = *(*[9]int8)(unsafe.Pointer(ts + 942 /* "thstndrd" */)) /* sqlite3.c:29091:29 */ +var zOrd = *(*[9]int8)(unsafe.Pointer(ts + 952 /* "thstndrd" */)) /* sqlite3.c:29091:29 */ // End of function @@ -17159,7 +17398,9 @@ func renderLogMsg(tls *libc.TLS, iErrCode int32, zFormat uintptr, ap Va_list) { Xsqlite3StrAccumInit(tls, bp /* &acc */, uintptr(0), bp+24 /* &zMsg[0] */, int32(unsafe.Sizeof([210]int8{})), 0) Xsqlite3_str_vappendf(tls, bp /* &acc */, zFormat, ap) - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 236 /* &.xLog */))))(tls, Xsqlite3Config.FpLogArg, iErrCode, + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.FxLog})).f(tls, Xsqlite3Config.FpLogArg, iErrCode, Xsqlite3StrAccumFinish(tls, bp /* &acc */)) } @@ -17192,7 +17433,7 @@ func Xsqlite3DebugPrintf(tls *libc.TLS, zFormat uintptr, va uintptr) { /* sqlite Xsqlite3_str_vappendf(tls, bp+8 /* &acc */, zFormat, ap) _ = ap Xsqlite3StrAccumFinish(tls, bp+8 /* &acc */) - libc.Xfprintf(tls, libc.Xstdout, ts+951 /* "%s" */, libc.VaList(bp, bp+32 /* &zBuf[0] */)) + libc.Xfprintf(tls, libc.Xstdout, ts+961 /* "%s" */, libc.VaList(bp, bp+32 /* &zBuf[0] */)) libc.Xfflush(tls, libc.Xstdout) } @@ -17409,7 +17650,9 @@ func Xsqlite3ThreadCreate(tls *libc.TLS, ppThread uintptr, xTask uintptr, pIn ui (*SQLiteThread)(unsafe.Pointer(p)).FpIn = pIn } else { (*SQLiteThread)(unsafe.Pointer(p)).FxTask = uintptr(0) - (*SQLiteThread)(unsafe.Pointer(p)).FpResult = (*(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(&xTask)))(tls, pIn) + (*SQLiteThread)(unsafe.Pointer(p)).FpResult = (*struct { + f func(*libc.TLS, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{xTask})).f(tls, pIn) } *(*uintptr)(unsafe.Pointer(ppThread)) = p return SQLITE_OK @@ -17422,7 +17665,9 @@ func Xsqlite3ThreadJoin(tls *libc.TLS, p uintptr, ppOut uintptr) int32 { /* sqli return SQLITE_NOMEM } if (*SQLiteThread)(unsafe.Pointer(p)).FxTask != 0 { - *(*uintptr)(unsafe.Pointer(ppOut)) = (*(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer((p /* &.xTask */))))(tls, (*SQLiteThread)(unsafe.Pointer(p)).FpIn) + *(*uintptr)(unsafe.Pointer(ppOut)) = (*struct { + f func(*libc.TLS, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*SQLiteThread)(unsafe.Pointer(p)).FxTask})).f(tls, (*SQLiteThread)(unsafe.Pointer(p)).FpIn) } else { *(*uintptr)(unsafe.Pointer(ppOut)) = (*SQLiteThread)(unsafe.Pointer(p)).FpResult } @@ -18053,7 +18298,7 @@ func Xsqlite3UtfSelfTest(tls *libc.TLS) { /* sqlite3.c:31655:21: */ // #include "sqliteInt.h" // #include // Declarations for math functions. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18068,12 +18313,12 @@ func Xsqlite3UtfSelfTest(tls *libc.TLS) { /* sqlite3.c:31655:21: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.12 Mathematics // Handle feature test macros at the start of a header. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18088,7 +18333,7 @@ func Xsqlite3UtfSelfTest(tls *libc.TLS) { /* sqlite3.c:31655:21: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // This header is internal to glibc and should not be included outside // of glibc headers. Headers including it must define @@ -18098,7 +18343,7 @@ func Xsqlite3UtfSelfTest(tls *libc.TLS) { /* sqlite3.c:31655:21: */ // header is included, not when the first system header is // included. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18113,23 +18358,27 @@ func Xsqlite3UtfSelfTest(tls *libc.TLS) { /* sqlite3.c:31655:21: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO/IEC TR 24731-2:2010 defines the __STDC_WANT_LIB_EXT2__ // macro. // ISO/IEC TS 18661-1:2014 defines the __STDC_WANT_IEC_60559_BFP_EXT__ -// macro. +// macro. Most but not all symbols enabled by that macro in TS +// 18661-1 are enabled unconditionally in C2X; the symbols in Annex F +// still require that macro in C2X. // ISO/IEC TS 18661-4:2015 defines the -// __STDC_WANT_IEC_60559_FUNCS_EXT__ macro. +// __STDC_WANT_IEC_60559_FUNCS_EXT__ macro. Other than the reduction +// functions, the symbols from this TS are enabled unconditionally in +// C2X. // ISO/IEC TS 18661-3:2015 defines the // __STDC_WANT_IEC_60559_TYPES_EXT__ macro. // Get definitions of __intmax_t and __uintmax_t. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18144,13 +18393,13 @@ func Xsqlite3UtfSelfTest(tls *libc.TLS) { /* sqlite3.c:31655:21: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // Get machine-dependent vector math functions declarations. // Platform-specific SIMD declarations of math functions. -// Copyright (C) 2014-2018 Free Software Foundation, Inc. +// Copyright (C) 2014-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18165,11 +18414,11 @@ func Xsqlite3UtfSelfTest(tls *libc.TLS) { /* sqlite3.c:31655:21: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Get default empty definitions for simd declarations. // Empty definitions required for __MATHCALL_VEC unfolding in mathcalls.h. -// Copyright (C) 2014-2018 Free Software Foundation, Inc. +// Copyright (C) 2014-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18184,7 +18433,7 @@ func Xsqlite3UtfSelfTest(tls *libc.TLS) { /* sqlite3.c:31655:21: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Needed definitions could be generated with: // for func in $(grep __MATHCALL_VEC math/bits/mathcalls.h | sed -r "s|__MATHCALL_VEC.?\(||; s|,.*||"); do @@ -18196,7 +18445,7 @@ func Xsqlite3UtfSelfTest(tls *libc.TLS) { /* sqlite3.c:31655:21: */ // Gather machine dependent type support. // Macros to control TS 18661-3 glibc features on x86. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18211,7 +18460,7 @@ func Xsqlite3UtfSelfTest(tls *libc.TLS) { /* sqlite3.c:31655:21: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Value returned on overflow. With IEEE 754 floating point, this is // +Infinity, otherwise the largest representable positive value. @@ -18224,7 +18473,7 @@ func Xsqlite3UtfSelfTest(tls *libc.TLS) { /* sqlite3.c:31655:21: */ // Get __GLIBC_FLT_EVAL_METHOD. // Define __GLIBC_FLT_EVAL_METHOD. x86 version. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -18239,7 +18488,7 @@ func Xsqlite3UtfSelfTest(tls *libc.TLS) { /* sqlite3.c:31655:21: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Define the following typedefs. // @@ -18284,9 +18533,6 @@ type Double_t = float64 /* math.h:156:21 */ // Get machine-dependent inline versions (if there are any). -// Define special entry points to use when the compiler got told to -// only expect finite results. - // An expression whose type has the widest of the evaluation formats // of X and Y (which are of floating-point types). @@ -18315,7 +18561,7 @@ type Double_t = float64 /* math.h:156:21 */ func Xsqlite3FaultSim(tls *libc.TLS, iTest int32) int32 { /* sqlite3.c:31735:20: */ var xCallback uintptr = Xsqlite3Config.FxTestCallback if xCallback != 0 { - return (*(*func(*libc.TLS, int32) int32)(unsafe.Pointer(&xCallback)))(tls, iTest) + return (*struct{ f func(*libc.TLS, int32) int32 })(unsafe.Pointer(&struct{ uintptr }{xCallback})).f(tls, iTest) } return SQLITE_OK } @@ -19103,7 +19349,7 @@ func compare2pow63(tls *libc.TLS, zNum uintptr, incr int32) int32 { /* sqlite3.c var c int32 = 0 var i int32 // 012345678901234567 - var pow63 uintptr = ts + 954 /* "9223372036854775..." */ + var pow63 uintptr = ts + 964 /* "9223372036854775..." */ for i = 0; (c == 0) && (i < 18); i++ { c = ((int32(*(*int8)(unsafe.Pointer(zNum + uintptr((i * incr))))) - int32(*(*int8)(unsafe.Pointer(pow63 + uintptr(i))))) * 10) } @@ -19753,7 +19999,7 @@ func logBadConnection(tls *libc.TLS, zType uintptr) { /* sqlite3.c:33033:13: */ defer tls.Free(8) Xsqlite3_log(tls, SQLITE_MISUSE, - ts+973, /* "API call with %s..." */ + ts+983, /* "API call with %s..." */ libc.VaList(bp, zType)) } @@ -19772,14 +20018,14 @@ func logBadConnection(tls *libc.TLS, zType uintptr) { /* sqlite3.c:33033:13: */ func Xsqlite3SafetyCheckOk(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:33054:20: */ var magic U32 if db == uintptr(0) { - logBadConnection(tls, ts+916 /* "NULL" */) + logBadConnection(tls, ts+926 /* "NULL" */) return 0 } magic = (*Sqlite3)(unsafe.Pointer(db)).Fmagic if magic != SQLITE_MAGIC_OPEN { if Xsqlite3SafetyCheckSickOrOk(tls, db) != 0 { - logBadConnection(tls, ts+1018 /* "unopened" */) + logBadConnection(tls, ts+1028 /* "unopened" */) } return 0 } else { @@ -19793,7 +20039,7 @@ func Xsqlite3SafetyCheckSickOrOk(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c magic = (*Sqlite3)(unsafe.Pointer(db)).Fmagic if ((magic != U32(SQLITE_MAGIC_SICK)) && (magic != SQLITE_MAGIC_OPEN)) && (magic != SQLITE_MAGIC_BUSY) { - logBadConnection(tls, ts+1027 /* "invalid" */) + logBadConnection(tls, ts+1037 /* "invalid" */) return 0 } else { return 1 @@ -20321,186 +20567,186 @@ func Xsqlite3OpcodeName(tls *libc.TLS, i int32) uintptr { /* sqlite3.c:33672:27: } var azName = [180]uintptr{ - /* 0 */ ts + 1035, /* "Savepoint\x00" */ - /* 1 */ ts + 1046, /* "AutoCommit\x00" */ - /* 2 */ ts + 1058, /* "Transaction\x00" */ - /* 3 */ ts + 1071, /* "SorterNext\x00" */ - /* 4 */ ts + 1083, /* "Prev\x00" */ - /* 5 */ ts + 1089, /* "Next\x00" */ - /* 6 */ ts + 1095, /* "Checkpoint\x00" */ - /* 7 */ ts + 1107, /* "JournalMode\x00" */ - /* 8 */ ts + 1120, /* "Vacuum\x00" */ - /* 9 */ ts + 1128, /* "VFilter\x00iplan=r[..." */ - /* 10 */ ts + 1159, /* "VUpdate\x00data=r[P..." */ - /* 11 */ ts + 1181, /* "Goto\x00" */ - /* 12 */ ts + 1187, /* "Gosub\x00" */ - /* 13 */ ts + 1194, /* "InitCoroutine\x00" */ - /* 14 */ ts + 1209, /* "Yield\x00" */ - /* 15 */ ts + 1216, /* "MustBeInt\x00" */ - /* 16 */ ts + 1227, /* "Jump\x00" */ - /* 17 */ ts + 1233, /* "Once\x00" */ - /* 18 */ ts + 1239, /* "If\x00" */ - /* 19 */ ts + 1243, /* "Not\x00r[P2]= !r[P1..." */ - /* 20 */ ts + 1261, /* "IfNot\x00" */ - /* 21 */ ts + 1268, /* "IfNullRow\x00if P1...." */ - /* 22 */ ts + 1317, /* "SeekLT\x00key=r[P3@..." */ - /* 23 */ ts + 1337, /* "SeekLE\x00key=r[P3@..." */ - /* 24 */ ts + 1357, /* "SeekGE\x00key=r[P3@..." */ - /* 25 */ ts + 1377, /* "SeekGT\x00key=r[P3@..." */ - /* 26 */ ts + 1397, /* "IfNotOpen\x00if( !c..." */ - /* 27 */ ts + 1430, /* "IfNoHope\x00key=r[P..." */ - /* 28 */ ts + 1452, /* "NoConflict\x00key=r..." */ - /* 29 */ ts + 1476, /* "NotFound\x00key=r[P..." */ - /* 30 */ ts + 1498, /* "Found\x00key=r[P3@P..." */ - /* 31 */ ts + 1517, /* "SeekRowid\x00intkey..." */ - /* 32 */ ts + 1540, /* "NotExists\x00intkey..." */ - /* 33 */ ts + 1563, /* "Last\x00" */ - /* 34 */ ts + 1569, /* "IfSmaller\x00" */ - /* 35 */ ts + 1580, /* "SorterSort\x00" */ - /* 36 */ ts + 1592, /* "Sort\x00" */ - /* 37 */ ts + 1598, /* "Rewind\x00" */ - /* 38 */ ts + 1606, /* "IdxLE\x00key=r[P3@P..." */ - /* 39 */ ts + 1625, /* "IdxGT\x00key=r[P3@P..." */ - /* 40 */ ts + 1644, /* "IdxLT\x00key=r[P3@P..." */ - /* 41 */ ts + 1663, /* "IdxGE\x00key=r[P3@P..." */ - /* 42 */ ts + 1682, /* "RowSetRead\x00r[P3]..." */ - /* 43 */ ts + 1710, /* "Or\x00r[P3]=(r[P1] ..." */ - /* 44 */ ts + 1736, /* "And\x00r[P3]=(r[P1]..." */ - /* 45 */ ts + 1763, /* "RowSetTest\x00if r[..." */ - /* 46 */ ts + 1805, /* "Program\x00" */ - /* 47 */ ts + 1814, /* "FkIfZero\x00if fkct..." */ - /* 48 */ ts + 1847, /* "IfPos\x00if r[P1]>0..." */ - /* 49 */ ts + 1888, /* "IfNotZero\x00if r[P..." */ - /* 50 */ ts + 1932, /* "IsNull\x00if r[P1]=..." */ - /* 51 */ ts + 1962, /* "NotNull\x00if r[P1]..." */ - /* 52 */ ts + 1993, /* "Ne\x00IF r[P3]!=r[P..." */ - /* 53 */ ts + 2012, /* "Eq\x00IF r[P3]==r[P..." */ - /* 54 */ ts + 2031, /* "Gt\x00IF r[P3]>r[P1..." */ - /* 55 */ ts + 2049, /* "Le\x00IF r[P3]<=r[P..." */ - /* 56 */ ts + 2068, /* "Lt\x00IF r[P3]=r[P..." */ - /* 58 */ ts + 2105, /* "ElseEq\x00" */ - /* 59 */ ts + 2113, /* "DecrJumpZero\x00if ..." */ - /* 60 */ ts + 2150, /* "IncrVacuum\x00" */ - /* 61 */ ts + 2162, /* "VNext\x00" */ - /* 62 */ ts + 2169, /* "Init\x00Start at P2" */ - /* 63 */ ts + 2186, /* "PureFunc\x00r[P3]=f..." */ - /* 64 */ ts + 2216, /* "Function\x00r[P3]=f..." */ - /* 65 */ ts + 2246, /* "Return\x00" */ - /* 66 */ ts + 2254, /* "EndCoroutine\x00" */ - /* 67 */ ts + 2268, /* "HaltIfNull\x00if r[..." */ - /* 68 */ ts + 2298, /* "Halt\x00" */ - /* 69 */ ts + 2304, /* "Integer\x00r[P2]=P1" */ - /* 70 */ ts + 2321, /* "Int64\x00r[P2]=P4" */ - /* 71 */ ts + 2336, /* "String\x00r[P2]='P4..." */ - /* 72 */ ts + 2363, /* "Null\x00r[P2..P3]=N..." */ - /* 73 */ ts + 2383, /* "SoftNull\x00r[P1]=N..." */ - /* 74 */ ts + 2403, /* "Blob\x00r[P2]=P4 (l..." */ - /* 75 */ ts + 2426, /* "Variable\x00r[P2]=p..." */ - /* 76 */ ts + 2458, /* "Move\x00r[P2@P3]=r[..." */ - /* 77 */ ts + 2481, /* "Copy\x00r[P2@P3+1]=..." */ - /* 78 */ ts + 2508, /* "SCopy\x00r[P2]=r[P1..." */ - /* 79 */ ts + 2526, /* "IntCopy\x00r[P2]=r[..." */ - /* 80 */ ts + 2546, /* "ChngCntRow\x00outpu..." */ - /* 81 */ ts + 2570, /* "ResultRow\x00output..." */ - /* 82 */ ts + 2596, /* "CollSeq\x00" */ - /* 83 */ ts + 2605, /* "AddImm\x00r[P1]=r[P..." */ - /* 84 */ ts + 2627, /* "RealAffinity\x00" */ - /* 85 */ ts + 2641, /* "Cast\x00affinity(r[..." */ - /* 86 */ ts + 2662, /* "Permutation\x00" */ - /* 87 */ ts + 2675, /* "Compare\x00r[P1@P3]..." */ - /* 88 */ ts + 2705, /* "IsTrue\x00r[P2] = c..." */ - /* 89 */ ts + 2750, /* "ZeroOrNull\x00r[P2]..." */ - /* 90 */ ts + 2779, /* "Offset\x00r[P3] = s..." */ - /* 91 */ ts + 2812, /* "Column\x00r[P3]=PX" */ - /* 92 */ ts + 2828, /* "Affinity\x00affinit..." */ - /* 93 */ ts + 2856, /* "MakeRecord\x00r[P3]..." */ - /* 94 */ ts + 2889, /* "Count\x00r[P2]=coun..." */ - /* 95 */ ts + 2909, /* "ReadCookie\x00" */ - /* 96 */ ts + 2921, /* "SetCookie\x00" */ - /* 97 */ ts + 2932, /* "ReopenIdx\x00root=P..." */ - /* 98 */ ts + 2957, /* "OpenRead\x00root=P2..." */ - /* 99 */ ts + 2981, /* "OpenWrite\x00root=P..." */ - /* 100 */ ts + 3006, /* "OpenDup\x00" */ - /* 101 */ ts + 3015, /* "OpenAutoindex\x00nC..." */ - /* 102 */ ts + 3040, /* "BitAnd\x00r[P3]=r[P..." */ - /* 103 */ ts + 3065, /* "BitOr\x00r[P3]=r[P1..." */ - /* 104 */ ts + 3089, /* "ShiftLeft\x00r[P3]=..." */ - /* 105 */ ts + 3118, /* "ShiftRight\x00r[P3]..." */ - /* 106 */ ts + 3148, /* "Add\x00r[P3]=r[P1]+..." */ - /* 107 */ ts + 3170, /* "Subtract\x00r[P3]=r..." */ - /* 108 */ ts + 3197, /* "Multiply\x00r[P3]=r..." */ - /* 109 */ ts + 3224, /* "Divide\x00r[P3]=r[P..." */ - /* 110 */ ts + 3249, /* "Remainder\x00r[P3]=..." */ - /* 111 */ ts + 3277, /* "Concat\x00r[P3]=r[P..." */ - /* 112 */ ts + 3302, /* "OpenEphemeral\x00nC..." */ - /* 113 */ ts + 3327, /* "BitNot\x00r[P2]= ~r..." */ - /* 114 */ ts + 3348, /* "SorterOpen\x00" */ - /* 115 */ ts + 3360, /* "SequenceTest\x00if(..." */ - /* 116 */ ts + 3404, /* "String8\x00r[P2]='P..." */ - /* 117 */ ts + 3423, /* "OpenPseudo\x00P3 co..." */ - /* 118 */ ts + 3454, /* "Close\x00" */ - /* 119 */ ts + 3461, /* "ColumnsUsed\x00" */ - /* 120 */ ts + 3474, /* "SeekScan\x00Scan-ah..." */ - /* 121 */ ts + 3508, /* "SeekHit\x00set P2<=..." */ - /* 122 */ ts + 3536, /* "Sequence\x00r[P2]=c..." */ - /* 123 */ ts + 3568, /* "NewRowid\x00r[P2]=r..." */ - /* 124 */ ts + 3589, /* "Insert\x00intkey=r[..." */ - /* 125 */ ts + 3620, /* "RowCell\x00" */ - /* 126 */ ts + 3629, /* "Delete\x00" */ - /* 127 */ ts + 3637, /* "ResetCount\x00" */ - /* 128 */ ts + 3649, /* "SorterCompare\x00if..." */ - /* 129 */ ts + 3698, /* "SorterData\x00r[P2]..." */ - /* 130 */ ts + 3720, /* "RowData\x00r[P2]=da..." */ - /* 131 */ ts + 3739, /* "Rowid\x00r[P2]=rowi..." */ - /* 132 */ ts + 3757, /* "NullRow\x00" */ - /* 133 */ ts + 3766, /* "SeekEnd\x00" */ - /* 134 */ ts + 3775, /* "IdxInsert\x00key=r[..." */ - /* 135 */ ts + 3795, /* "SorterInsert\x00key..." */ - /* 136 */ ts + 3818, /* "IdxDelete\x00key=r[..." */ - /* 137 */ ts + 3841, /* "DeferredSeek\x00Mov..." */ - /* 138 */ ts + 3884, /* "IdxRowid\x00r[P2]=r..." */ - /* 139 */ ts + 3905, /* "FinishSeek\x00" */ - /* 140 */ ts + 3917, /* "Destroy\x00" */ - /* 141 */ ts + 3926, /* "Clear\x00" */ - /* 142 */ ts + 3933, /* "ResetSorter\x00" */ - /* 143 */ ts + 3946, /* "CreateBtree\x00r[P2..." */ - /* 144 */ ts + 3985, /* "SqlExec\x00" */ - /* 145 */ ts + 3994, /* "ParseSchema\x00" */ - /* 146 */ ts + 4007, /* "LoadAnalysis\x00" */ - /* 147 */ ts + 4021, /* "DropTable\x00" */ - /* 148 */ ts + 4032, /* "DropIndex\x00" */ - /* 149 */ ts + 4043, /* "DropTrigger\x00" */ - /* 150 */ ts + 4056, /* "IntegrityCk\x00" */ - /* 151 */ ts + 4069, /* "RowSetAdd\x00rowset..." */ - /* 152 */ ts + 4096, /* "Real\x00r[P2]=P4" */ - /* 153 */ ts + 4110, /* "Param\x00" */ - /* 154 */ ts + 4117, /* "FkCounter\x00fkctr[..." */ - /* 155 */ ts + 4141, /* "MemMax\x00r[P1]=max..." */ - /* 156 */ ts + 4171, /* "OffsetLimit\x00if r..." */ - /* 157 */ ts + 4240, /* "AggInverse\x00accum..." */ - /* 158 */ ts + 4281, /* "AggStep\x00accum=r[..." */ - /* 159 */ ts + 4316, /* "AggStep1\x00accum=r..." */ - /* 160 */ ts + 4352, /* "AggValue\x00r[P3]=v..." */ - /* 161 */ ts + 4378, /* "AggFinal\x00accum=r..." */ - /* 162 */ ts + 4404, /* "Expire\x00" */ - /* 163 */ ts + 4412, /* "CursorLock\x00" */ - /* 164 */ ts + 4424, /* "CursorUnlock\x00" */ - /* 165 */ ts + 4438, /* "TableLock\x00iDb=P1..." */ - /* 166 */ ts + 4472, /* "VBegin\x00" */ - /* 167 */ ts + 4480, /* "VCreate\x00" */ - /* 168 */ ts + 4489, /* "VDestroy\x00" */ - /* 169 */ ts + 4499, /* "VOpen\x00" */ - /* 170 */ ts + 4506, /* "VColumn\x00r[P3]=vc..." */ - /* 171 */ ts + 4532, /* "VRename\x00" */ - /* 172 */ ts + 4541, /* "Pagecount\x00" */ - /* 173 */ ts + 4552, /* "MaxPgcnt\x00" */ - /* 174 */ ts + 4562, /* "Trace\x00" */ - /* 175 */ ts + 4569, /* "CursorHint\x00" */ - /* 176 */ ts + 4581, /* "ReleaseReg\x00relea..." */ - /* 177 */ ts + 4617, /* "Noop\x00" */ - /* 178 */ ts + 4623, /* "Explain\x00" */ - /* 179 */ ts + 4632, /* "Abortable\x00" */ + /* 0 */ ts + 1045, /* "Savepoint\x00" */ + /* 1 */ ts + 1056, /* "AutoCommit\x00" */ + /* 2 */ ts + 1068, /* "Transaction\x00" */ + /* 3 */ ts + 1081, /* "SorterNext\x00" */ + /* 4 */ ts + 1093, /* "Prev\x00" */ + /* 5 */ ts + 1099, /* "Next\x00" */ + /* 6 */ ts + 1105, /* "Checkpoint\x00" */ + /* 7 */ ts + 1117, /* "JournalMode\x00" */ + /* 8 */ ts + 1130, /* "Vacuum\x00" */ + /* 9 */ ts + 1138, /* "VFilter\x00iplan=r[..." */ + /* 10 */ ts + 1169, /* "VUpdate\x00data=r[P..." */ + /* 11 */ ts + 1191, /* "Goto\x00" */ + /* 12 */ ts + 1197, /* "Gosub\x00" */ + /* 13 */ ts + 1204, /* "InitCoroutine\x00" */ + /* 14 */ ts + 1219, /* "Yield\x00" */ + /* 15 */ ts + 1226, /* "MustBeInt\x00" */ + /* 16 */ ts + 1237, /* "Jump\x00" */ + /* 17 */ ts + 1243, /* "Once\x00" */ + /* 18 */ ts + 1249, /* "If\x00" */ + /* 19 */ ts + 1253, /* "Not\x00r[P2]= !r[P1..." */ + /* 20 */ ts + 1271, /* "IfNot\x00" */ + /* 21 */ ts + 1278, /* "IfNullRow\x00if P1...." */ + /* 22 */ ts + 1327, /* "SeekLT\x00key=r[P3@..." */ + /* 23 */ ts + 1347, /* "SeekLE\x00key=r[P3@..." */ + /* 24 */ ts + 1367, /* "SeekGE\x00key=r[P3@..." */ + /* 25 */ ts + 1387, /* "SeekGT\x00key=r[P3@..." */ + /* 26 */ ts + 1407, /* "IfNotOpen\x00if( !c..." */ + /* 27 */ ts + 1440, /* "IfNoHope\x00key=r[P..." */ + /* 28 */ ts + 1462, /* "NoConflict\x00key=r..." */ + /* 29 */ ts + 1486, /* "NotFound\x00key=r[P..." */ + /* 30 */ ts + 1508, /* "Found\x00key=r[P3@P..." */ + /* 31 */ ts + 1527, /* "SeekRowid\x00intkey..." */ + /* 32 */ ts + 1550, /* "NotExists\x00intkey..." */ + /* 33 */ ts + 1573, /* "Last\x00" */ + /* 34 */ ts + 1579, /* "IfSmaller\x00" */ + /* 35 */ ts + 1590, /* "SorterSort\x00" */ + /* 36 */ ts + 1602, /* "Sort\x00" */ + /* 37 */ ts + 1608, /* "Rewind\x00" */ + /* 38 */ ts + 1616, /* "IdxLE\x00key=r[P3@P..." */ + /* 39 */ ts + 1635, /* "IdxGT\x00key=r[P3@P..." */ + /* 40 */ ts + 1654, /* "IdxLT\x00key=r[P3@P..." */ + /* 41 */ ts + 1673, /* "IdxGE\x00key=r[P3@P..." */ + /* 42 */ ts + 1692, /* "RowSetRead\x00r[P3]..." */ + /* 43 */ ts + 1720, /* "Or\x00r[P3]=(r[P1] ..." */ + /* 44 */ ts + 1746, /* "And\x00r[P3]=(r[P1]..." */ + /* 45 */ ts + 1773, /* "RowSetTest\x00if r[..." */ + /* 46 */ ts + 1815, /* "Program\x00" */ + /* 47 */ ts + 1824, /* "FkIfZero\x00if fkct..." */ + /* 48 */ ts + 1857, /* "IfPos\x00if r[P1]>0..." */ + /* 49 */ ts + 1898, /* "IfNotZero\x00if r[P..." */ + /* 50 */ ts + 1942, /* "IsNull\x00if r[P1]=..." */ + /* 51 */ ts + 1972, /* "NotNull\x00if r[P1]..." */ + /* 52 */ ts + 2003, /* "Ne\x00IF r[P3]!=r[P..." */ + /* 53 */ ts + 2022, /* "Eq\x00IF r[P3]==r[P..." */ + /* 54 */ ts + 2041, /* "Gt\x00IF r[P3]>r[P1..." */ + /* 55 */ ts + 2059, /* "Le\x00IF r[P3]<=r[P..." */ + /* 56 */ ts + 2078, /* "Lt\x00IF r[P3]=r[P..." */ + /* 58 */ ts + 2115, /* "ElseEq\x00" */ + /* 59 */ ts + 2123, /* "DecrJumpZero\x00if ..." */ + /* 60 */ ts + 2160, /* "IncrVacuum\x00" */ + /* 61 */ ts + 2172, /* "VNext\x00" */ + /* 62 */ ts + 2179, /* "Init\x00Start at P2" */ + /* 63 */ ts + 2196, /* "PureFunc\x00r[P3]=f..." */ + /* 64 */ ts + 2226, /* "Function\x00r[P3]=f..." */ + /* 65 */ ts + 2256, /* "Return\x00" */ + /* 66 */ ts + 2264, /* "EndCoroutine\x00" */ + /* 67 */ ts + 2278, /* "HaltIfNull\x00if r[..." */ + /* 68 */ ts + 2308, /* "Halt\x00" */ + /* 69 */ ts + 2314, /* "Integer\x00r[P2]=P1" */ + /* 70 */ ts + 2331, /* "Int64\x00r[P2]=P4" */ + /* 71 */ ts + 2346, /* "String\x00r[P2]='P4..." */ + /* 72 */ ts + 2373, /* "Null\x00r[P2..P3]=N..." */ + /* 73 */ ts + 2393, /* "SoftNull\x00r[P1]=N..." */ + /* 74 */ ts + 2413, /* "Blob\x00r[P2]=P4 (l..." */ + /* 75 */ ts + 2436, /* "Variable\x00r[P2]=p..." */ + /* 76 */ ts + 2468, /* "Move\x00r[P2@P3]=r[..." */ + /* 77 */ ts + 2491, /* "Copy\x00r[P2@P3+1]=..." */ + /* 78 */ ts + 2518, /* "SCopy\x00r[P2]=r[P1..." */ + /* 79 */ ts + 2536, /* "IntCopy\x00r[P2]=r[..." */ + /* 80 */ ts + 2556, /* "ChngCntRow\x00outpu..." */ + /* 81 */ ts + 2580, /* "ResultRow\x00output..." */ + /* 82 */ ts + 2606, /* "CollSeq\x00" */ + /* 83 */ ts + 2615, /* "AddImm\x00r[P1]=r[P..." */ + /* 84 */ ts + 2637, /* "RealAffinity\x00" */ + /* 85 */ ts + 2651, /* "Cast\x00affinity(r[..." */ + /* 86 */ ts + 2672, /* "Permutation\x00" */ + /* 87 */ ts + 2685, /* "Compare\x00r[P1@P3]..." */ + /* 88 */ ts + 2715, /* "IsTrue\x00r[P2] = c..." */ + /* 89 */ ts + 2760, /* "ZeroOrNull\x00r[P2]..." */ + /* 90 */ ts + 2789, /* "Offset\x00r[P3] = s..." */ + /* 91 */ ts + 2822, /* "Column\x00r[P3]=PX" */ + /* 92 */ ts + 2838, /* "Affinity\x00affinit..." */ + /* 93 */ ts + 2866, /* "MakeRecord\x00r[P3]..." */ + /* 94 */ ts + 2899, /* "Count\x00r[P2]=coun..." */ + /* 95 */ ts + 2919, /* "ReadCookie\x00" */ + /* 96 */ ts + 2931, /* "SetCookie\x00" */ + /* 97 */ ts + 2942, /* "ReopenIdx\x00root=P..." */ + /* 98 */ ts + 2967, /* "OpenRead\x00root=P2..." */ + /* 99 */ ts + 2991, /* "OpenWrite\x00root=P..." */ + /* 100 */ ts + 3016, /* "OpenDup\x00" */ + /* 101 */ ts + 3025, /* "OpenAutoindex\x00nC..." */ + /* 102 */ ts + 3050, /* "BitAnd\x00r[P3]=r[P..." */ + /* 103 */ ts + 3075, /* "BitOr\x00r[P3]=r[P1..." */ + /* 104 */ ts + 3099, /* "ShiftLeft\x00r[P3]=..." */ + /* 105 */ ts + 3128, /* "ShiftRight\x00r[P3]..." */ + /* 106 */ ts + 3158, /* "Add\x00r[P3]=r[P1]+..." */ + /* 107 */ ts + 3180, /* "Subtract\x00r[P3]=r..." */ + /* 108 */ ts + 3207, /* "Multiply\x00r[P3]=r..." */ + /* 109 */ ts + 3234, /* "Divide\x00r[P3]=r[P..." */ + /* 110 */ ts + 3259, /* "Remainder\x00r[P3]=..." */ + /* 111 */ ts + 3287, /* "Concat\x00r[P3]=r[P..." */ + /* 112 */ ts + 3312, /* "OpenEphemeral\x00nC..." */ + /* 113 */ ts + 3337, /* "BitNot\x00r[P2]= ~r..." */ + /* 114 */ ts + 3358, /* "SorterOpen\x00" */ + /* 115 */ ts + 3370, /* "SequenceTest\x00if(..." */ + /* 116 */ ts + 3414, /* "String8\x00r[P2]='P..." */ + /* 117 */ ts + 3433, /* "OpenPseudo\x00P3 co..." */ + /* 118 */ ts + 3464, /* "Close\x00" */ + /* 119 */ ts + 3471, /* "ColumnsUsed\x00" */ + /* 120 */ ts + 3484, /* "SeekScan\x00Scan-ah..." */ + /* 121 */ ts + 3518, /* "SeekHit\x00set P2<=..." */ + /* 122 */ ts + 3546, /* "Sequence\x00r[P2]=c..." */ + /* 123 */ ts + 3578, /* "NewRowid\x00r[P2]=r..." */ + /* 124 */ ts + 3599, /* "Insert\x00intkey=r[..." */ + /* 125 */ ts + 3630, /* "RowCell\x00" */ + /* 126 */ ts + 3639, /* "Delete\x00" */ + /* 127 */ ts + 3647, /* "ResetCount\x00" */ + /* 128 */ ts + 3659, /* "SorterCompare\x00if..." */ + /* 129 */ ts + 3708, /* "SorterData\x00r[P2]..." */ + /* 130 */ ts + 3730, /* "RowData\x00r[P2]=da..." */ + /* 131 */ ts + 3749, /* "Rowid\x00r[P2]=rowi..." */ + /* 132 */ ts + 3767, /* "NullRow\x00" */ + /* 133 */ ts + 3776, /* "SeekEnd\x00" */ + /* 134 */ ts + 3785, /* "IdxInsert\x00key=r[..." */ + /* 135 */ ts + 3805, /* "SorterInsert\x00key..." */ + /* 136 */ ts + 3828, /* "IdxDelete\x00key=r[..." */ + /* 137 */ ts + 3851, /* "DeferredSeek\x00Mov..." */ + /* 138 */ ts + 3894, /* "IdxRowid\x00r[P2]=r..." */ + /* 139 */ ts + 3915, /* "FinishSeek\x00" */ + /* 140 */ ts + 3927, /* "Destroy\x00" */ + /* 141 */ ts + 3936, /* "Clear\x00" */ + /* 142 */ ts + 3943, /* "ResetSorter\x00" */ + /* 143 */ ts + 3956, /* "CreateBtree\x00r[P2..." */ + /* 144 */ ts + 3995, /* "SqlExec\x00" */ + /* 145 */ ts + 4004, /* "ParseSchema\x00" */ + /* 146 */ ts + 4017, /* "LoadAnalysis\x00" */ + /* 147 */ ts + 4031, /* "DropTable\x00" */ + /* 148 */ ts + 4042, /* "DropIndex\x00" */ + /* 149 */ ts + 4053, /* "DropTrigger\x00" */ + /* 150 */ ts + 4066, /* "IntegrityCk\x00" */ + /* 151 */ ts + 4079, /* "RowSetAdd\x00rowset..." */ + /* 152 */ ts + 4106, /* "Real\x00r[P2]=P4" */ + /* 153 */ ts + 4120, /* "Param\x00" */ + /* 154 */ ts + 4127, /* "FkCounter\x00fkctr[..." */ + /* 155 */ ts + 4151, /* "MemMax\x00r[P1]=max..." */ + /* 156 */ ts + 4181, /* "OffsetLimit\x00if r..." */ + /* 157 */ ts + 4250, /* "AggInverse\x00accum..." */ + /* 158 */ ts + 4291, /* "AggStep\x00accum=r[..." */ + /* 159 */ ts + 4326, /* "AggStep1\x00accum=r..." */ + /* 160 */ ts + 4362, /* "AggValue\x00r[P3]=v..." */ + /* 161 */ ts + 4388, /* "AggFinal\x00accum=r..." */ + /* 162 */ ts + 4414, /* "Expire\x00" */ + /* 163 */ ts + 4422, /* "CursorLock\x00" */ + /* 164 */ ts + 4434, /* "CursorUnlock\x00" */ + /* 165 */ ts + 4448, /* "TableLock\x00iDb=P1..." */ + /* 166 */ ts + 4482, /* "VBegin\x00" */ + /* 167 */ ts + 4490, /* "VCreate\x00" */ + /* 168 */ ts + 4499, /* "VDestroy\x00" */ + /* 169 */ ts + 4509, /* "VOpen\x00" */ + /* 170 */ ts + 4516, /* "VColumn\x00r[P3]=vc..." */ + /* 171 */ ts + 4542, /* "VRename\x00" */ + /* 172 */ ts + 4551, /* "Pagecount\x00" */ + /* 173 */ ts + 4562, /* "MaxPgcnt\x00" */ + /* 174 */ ts + 4572, /* "Trace\x00" */ + /* 175 */ ts + 4579, /* "CursorHint\x00" */ + /* 176 */ ts + 4591, /* "ReleaseReg\x00relea..." */ + /* 177 */ ts + 4627, /* "Noop\x00" */ + /* 178 */ ts + 4633, /* "Explain\x00" */ + /* 179 */ ts + 4642, /* "Abortable\x00" */ } /* sqlite3.c:33673:20 */ //************* End of opcodes.c ******************************************** @@ -20569,7 +20815,7 @@ var azName = [180]uintptr{ // Use pread() and pwrite() if they are available // standard include files. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20584,11 +20830,11 @@ var azName = [180]uintptr{ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 2.6 Primitive System Data Types -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20603,11 +20849,11 @@ var azName = [180]uintptr{ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 5.6 File Characteristics -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20622,10 +20868,10 @@ var azName = [180]uintptr{ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20640,7 +20886,7 @@ var azName = [180]uintptr{ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -20649,7 +20895,7 @@ var azName = [180]uintptr{ // The Single Unix specification says that some more types are // available here. -// Copyright (C) 1999-2018 Free Software Foundation, Inc. +// Copyright (C) 1999-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20664,28 +20910,28 @@ var azName = [180]uintptr{ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Versions of the `struct stat' data structure. // i386 versions of the `xmknod' interface. type stat = struct { - Fst_dev X__dev_t - F__pad1 uint16 - _ [2]byte - F__st_ino X__ino_t - Fst_mode X__mode_t - Fst_nlink X__nlink_t - Fst_uid X__uid_t - Fst_gid X__gid_t - Fst_rdev X__dev_t - F__pad2 uint16 - _ [2]byte - Fst_size X__off64_t - Fst_blksize X__blksize_t - Fst_blocks X__blkcnt64_t - Fst_atim struct { + Fst_dev X__dev_t + F__pad1 uint16 + F__ccgo_pad1 [2]byte + F__st_ino X__ino_t + Fst_mode X__mode_t + Fst_nlink X__nlink_t + Fst_uid X__uid_t + Fst_gid X__gid_t + Fst_rdev X__dev_t + F__pad2 uint16 + F__ccgo_pad2 [2]byte + Fst_size X__off64_t + Fst_blksize X__blksize_t + Fst_blocks X__blkcnt64_t + Fst_atim struct { Ftv_sec X__time_t Ftv_nsec X__syscall_slong_t } @@ -20729,8 +20975,8 @@ type stat64 = struct { Fst_ino X__ino64_t } /* stat.h:119:1 */ -// statx-related definitions and declarations. -// Copyright (C) 2018 Free Software Foundation, Inc. +// statx-related definitions and declarations. Linux version. +// Copyright (C) 2018-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20745,61 +20991,255 @@ type stat64 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // This interface is based on in Linux. -type statx_timestamp = struct { - Ftv_sec X__int64_t - Ftv_nsec X__uint32_t - F__statx_timestamp_pad1 [1]X__int32_t -} /* statx.h:25:1 */ +// Use the Linux kernel header if available. -// Warning: The kernel may add additional fields to this struct in the -// future. Only use this struct for calling the statx function, not -// for storing data. (Expansion will be controlled by the mask -// argument of the statx function.) +// Use "" to work around incorrect macro expansion of the +// __has_include argument (GCC PR 80005). +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note +// int-ll64 is used everywhere now. +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note +// asm-generic/int-ll64.h +// +// Integer declarations for architectures which use "long long" +// for 64-bit types. + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// There seems to be no way of detecting this automatically from user +// space, so 64 bit architectures should override this in their +// bitsperlong.h. In particular, an architecture that supports +// both 32 and 64 bit user space must not rely on CONFIG_64BIT +// to decide it, but rather check a compiler provided macro. + +// __xx is ok: it doesn't pollute the POSIX namespace. Use these in the +// header files exported to user space + +type X__s8 = int8 /* int-ll64.h:20:25 */ +type X__u8 = uint8 /* int-ll64.h:21:23 */ + +type X__s16 = int16 /* int-ll64.h:23:26 */ +type X__u16 = uint16 /* int-ll64.h:24:24 */ + +type X__s32 = int32 /* int-ll64.h:26:24 */ +type X__u32 = uint32 /* int-ll64.h:27:22 */ + +type X__s64 = int64 /* int-ll64.h:30:44 */ +type X__u64 = uint64 /* int-ll64.h:31:42 */ + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// This allows for 1024 file descriptors: if NR_OPEN is ever grown +// beyond that you'll have to change this too. But 1024 fd's seem to be +// enough even for such "real" unices like OSF/1, so hopefully this is +// one limit that doesn't have to be changed [again]. +// +// Note that POSIX wants the FD_CLEAR(fd,fdsetp) defines to be in +// (and thus ) - but this is a more logical +// place for them. Solved by having dummy defines in . + +// This macro may have been defined in . But we always +// use the one here. + +type X__kernel_fd_set = struct{ Ffds_bits [32]uint32 } /* posix_types.h:27:3 */ + +// Type of a signal handler. +type X__kernel_sighandler_t = uintptr /* posix_types.h:30:14 */ + +// Type of a SYSV IPC key. +type X__kernel_key_t = int32 /* posix_types.h:33:13 */ +type X__kernel_mqd_t = int32 /* posix_types.h:34:13 */ + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// This file is generally used by user-level software, so you need to +// be a little careful about namespace pollution etc. Also, we cannot +// assume GCC is being used. + +type X__kernel_mode_t = uint16 /* posix_types_32.h:11:24 */ + +type X__kernel_ipc_pid_t = uint16 /* posix_types_32.h:14:24 */ + +type X__kernel_uid_t = uint16 /* posix_types_32.h:17:24 */ +type X__kernel_gid_t = uint16 /* posix_types_32.h:18:24 */ + +type X__kernel_old_dev_t = uint16 /* posix_types_32.h:21:24 */ + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note + +// This file is generally used by user-level software, so you need to +// be a little careful about namespace pollution etc. +// +// First the types that are often defined in different ways across +// architectures, so that you can override them. + +type X__kernel_long_t = int32 /* posix_types.h:15:15 */ +type X__kernel_ulong_t = uint32 /* posix_types.h:16:23 */ + +type X__kernel_ino_t = X__kernel_ulong_t /* posix_types.h:20:26 */ + +type X__kernel_pid_t = int32 /* posix_types.h:28:14 */ + +type X__kernel_suseconds_t = X__kernel_long_t /* posix_types.h:41:26 */ + +type X__kernel_daddr_t = int32 /* posix_types.h:45:14 */ + +type X__kernel_uid32_t = uint32 /* posix_types.h:49:22 */ +type X__kernel_gid32_t = uint32 /* posix_types.h:50:22 */ + +type X__kernel_old_uid_t = X__kernel_uid_t /* posix_types.h:54:24 */ +type X__kernel_old_gid_t = X__kernel_gid_t /* posix_types.h:55:24 */ + +// Most 32 bit architectures use "unsigned int" size_t, +// and all 64 bit architectures use "unsigned long" size_t. +type X__kernel_size_t = uint32 /* posix_types.h:68:22 */ +type X__kernel_ssize_t = int32 /* posix_types.h:69:14 */ +type X__kernel_ptrdiff_t = int32 /* posix_types.h:70:14 */ + +type X__kernel_fsid_t = struct{ Fval [2]int32 } /* posix_types.h:81:3 */ + +// anything below here should be completely generic +type X__kernel_off_t = X__kernel_long_t /* posix_types.h:87:25 */ +type X__kernel_loff_t = int64 /* posix_types.h:88:19 */ +type X__kernel_old_time_t = X__kernel_long_t /* posix_types.h:89:25 */ +type X__kernel_time_t = X__kernel_long_t /* posix_types.h:90:25 */ +type X__kernel_time64_t = int64 /* posix_types.h:91:19 */ +type X__kernel_clock_t = X__kernel_long_t /* posix_types.h:92:25 */ +type X__kernel_timer_t = int32 /* posix_types.h:93:14 */ +type X__kernel_clockid_t = int32 /* posix_types.h:94:14 */ +type X__kernel_caddr_t = uintptr /* posix_types.h:95:14 */ +type X__kernel_uid16_t = uint16 /* posix_types.h:96:24 */ +type X__kernel_gid16_t = uint16 /* posix_types.h:97:24 */ + +// Below are truly Linux-specific types that should never collide with +// any application/library that wants linux/types.h. + +type X__le16 = X__u16 /* types.h:24:25 */ +type X__be16 = X__u16 /* types.h:25:25 */ +type X__le32 = X__u32 /* types.h:26:25 */ +type X__be32 = X__u32 /* types.h:27:25 */ +type X__le64 = X__u64 /* types.h:28:25 */ +type X__be64 = X__u64 /* types.h:29:25 */ + +type X__sum16 = X__u16 /* types.h:31:25 */ +type X__wsum = X__u32 /* types.h:32:25 */ + +// aligned_u64 should be used in defining kernel<->userspace ABIs to avoid +// common 32/64-bit compat problems. +// 64-bit values align to 4-byte boundaries on x86_32 (and possibly other +// architectures) and to 8-byte boundaries on 64-bit architectures. The new +// aligned_64 type enforces 8-byte alignment so that structs containing +// aligned_64 values have the same alignment on 32-bit and 64-bit architectures. +// No conversions are necessary between 32-bit user-space and a 64-bit kernel. + +type X__poll_t = uint32 /* types.h:47:28 */ + +// Timestamp structure for the timestamps in struct statx. +// +// tv_sec holds the number of seconds before (negative) or after (positive) +// 00:00:00 1st January 1970 UTC. +// +// tv_nsec holds a number of nanoseconds (0..999,999,999) after the tv_sec time. +// +// __reserved is held in case we need a yet finer resolution. +type statx_timestamp = struct { + Ftv_sec X__s64 + Ftv_nsec X__u32 + F__reserved X__s32 +} /* stat.h:56:1 */ + +// Structures for the extended file attribute retrieval system call +// (statx()). +// +// The caller passes a mask of what they're specifically interested in as a +// parameter to statx(). What statx() actually got will be indicated in +// st_mask upon return. +// +// For each bit in the mask argument: +// +// - if the datum is not supported: +// +// - the bit will be cleared, and +// +// - the datum will be set to an appropriate fabricated value if one is +// available (eg. CIFS can take a default uid and gid), otherwise +// +// - the field will be cleared; +// +// - otherwise, if explicitly requested: +// +// - the datum will be synchronised to the server if AT_STATX_FORCE_SYNC is +// set or if the datum is considered out of date, and +// +// - the field will be filled in and the bit will be set; +// +// - otherwise, if not requested, but available in approximate form without any +// effort, it will be filled in anyway, and the bit will be set upon return +// (it might not be up to date, however, and no attempt will be made to +// synchronise the internal state first); +// +// - otherwise the field and the bit will be cleared before returning. +// +// Items in STATX_BASIC_STATS may be marked unavailable on return, but they +// will have values installed for compatibility purposes so that stat() and +// co. can be emulated in userspace. type statx = struct { - Fstx_mask X__uint32_t - Fstx_blksize X__uint32_t - Fstx_attributes X__uint64_t - Fstx_nlink X__uint32_t - Fstx_uid X__uint32_t - Fstx_gid X__uint32_t - Fstx_mode X__uint16_t - F__statx_pad1 [1]X__uint16_t - Fstx_ino X__uint64_t - Fstx_size X__uint64_t - Fstx_blocks X__uint64_t - Fstx_attributes_mask X__uint64_t + Fstx_mask X__u32 + Fstx_blksize X__u32 + Fstx_attributes X__u64 + Fstx_nlink X__u32 + Fstx_uid X__u32 + Fstx_gid X__u32 + Fstx_mode X__u16 + F__spare0 [1]X__u16 + Fstx_ino X__u64 + Fstx_size X__u64 + Fstx_blocks X__u64 + Fstx_attributes_mask X__u64 Fstx_atime struct { - Ftv_sec X__int64_t - Ftv_nsec X__uint32_t - F__statx_timestamp_pad1 [1]X__int32_t + Ftv_sec X__s64 + Ftv_nsec X__u32 + F__reserved X__s32 } Fstx_btime struct { - Ftv_sec X__int64_t - Ftv_nsec X__uint32_t - F__statx_timestamp_pad1 [1]X__int32_t + Ftv_sec X__s64 + Ftv_nsec X__u32 + F__reserved X__s32 } Fstx_ctime struct { - Ftv_sec X__int64_t - Ftv_nsec X__uint32_t - F__statx_timestamp_pad1 [1]X__int32_t + Ftv_sec X__s64 + Ftv_nsec X__u32 + F__reserved X__s32 } Fstx_mtime struct { - Ftv_sec X__int64_t - Ftv_nsec X__uint32_t - F__statx_timestamp_pad1 [1]X__int32_t + Ftv_sec X__s64 + Ftv_nsec X__u32 + F__reserved X__s32 } - Fstx_rdev_major X__uint32_t - Fstx_rdev_minor X__uint32_t - Fstx_dev_major X__uint32_t - Fstx_dev_minor X__uint32_t - F__statx_pad2 [14]X__uint64_t -} /* statx.h:36:1 */ + Fstx_rdev_major X__u32 + Fstx_rdev_minor X__u32 + Fstx_dev_major X__u32 + Fstx_dev_minor X__u32 + Fstx_mnt_id X__u64 + F__spare2 X__u64 + F__spare3 [12]X__u64 +} /* stat.h:99:1 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20814,11 +21254,11 @@ type statx = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 6.5 File Control Operations -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20833,13 +21273,13 @@ type statx = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // This must be early so can define types winningly. // Get __mode_t, __dev_t and __off_t . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20854,14 +21294,14 @@ type statx = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // Get the definitions of O_*, F_*, FD_*: all the // numbers and flag bits for `open', `fcntl', et al. // O_*, F_*, FD_* bit values for Linux/x86. -// Copyright (C) 2001-2018 Free Software Foundation, Inc. +// Copyright (C) 2001-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20876,7 +21316,7 @@ type statx = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . type flock = struct { Fl_type int16 @@ -20896,7 +21336,7 @@ type flock64 = struct { // Include generic Linux declarations. // O_*, F_*, FD_* bit values for Linux. -// Copyright (C) 2001-2018 Free Software Foundation, Inc. +// Copyright (C) 2001-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20911,7 +21351,7 @@ type flock64 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // This file contains shared definitions between Linux architectures // and is included by to declare them. The various @@ -20927,7 +21367,7 @@ type flock64 = struct { // #include // Define struct iovec. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -20942,9 +21382,9 @@ type flock64 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -20976,15 +21416,6 @@ type flock64 = struct { // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -21021,11 +21452,6 @@ type flock64 = struct { // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Offset of member MEMBER in a struct of type TYPE. @@ -21052,6 +21478,8 @@ type f_owner_ex = struct { // Advise to `posix_fadvise'. // Flags for SYNC_FILE_RANGE. +// SYNC_FILE_RANGE_WRITE_AND_WAIT ensures all pages in the range are +// written to disk before returning. // Flags for SPLICE and VMSPLICE. @@ -21119,14 +21547,14 @@ type f_owner_ex = struct { // File handle structure. type file_handle = struct { - _ [0]uint32 + F__ccgo_pad1 [0]uint32 Fhandle_bytes uint32 Fhandle_type int32 -} /* fcntl-linux.h:350:1 */ +} /* fcntl-linux.h:357:1 */ // Define some inlines helping to catch common problems. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21141,9 +21569,9 @@ type file_handle = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21158,10 +21586,10 @@ type file_handle = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Get the list of `ioctl' requests and related constants. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21176,7 +21604,7 @@ type file_handle = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Use the definitions from the kernel header files. // SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note @@ -21259,7 +21687,7 @@ type file_handle = struct { // Define some types used by `ioctl' requests. // Structure types for pre-termios terminal ioctls. Linux version. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21274,7 +21702,7 @@ type file_handle = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Get definition of constants for use with `ioctl'. // SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note @@ -21287,16 +21715,16 @@ type winsize = struct { } /* ioctl-types.h:27:1 */ type termio = struct { - Fc_iflag uint16 - Fc_oflag uint16 - Fc_cflag uint16 - Fc_lflag uint16 - Fc_line uint8 - Fc_cc [8]uint8 - _ [1]byte + Fc_iflag uint16 + Fc_oflag uint16 + Fc_cflag uint16 + Fc_lflag uint16 + Fc_line uint8 + Fc_cc [8]uint8 + F__ccgo_pad1 [1]byte } /* ioctl-types.h:36:1 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21311,11 +21739,11 @@ type termio = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 2.10 Symbolic Constants -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21330,7 +21758,7 @@ type termio = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // These may be used to determine what facilities are present at compile time. // Their values can be obtained at run time from `sysconf'. @@ -21456,7 +21884,7 @@ type termio = struct { // // Define POSIX options for Linux. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21471,13 +21899,16 @@ type termio = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; see the file COPYING.LIB. If -// not, see . +// not, see . // Job control is supported. // Processes have a saved set-user-ID and a saved set-group-ID. -// Priority scheduling is supported. +// Priority scheduling is not supported with the correct semantics, +// but GNU/Linux applications expect that the corresponding interfaces +// are available, even though the semantics do not meet the POSIX +// requirements. See glibc bug 14829. // Synchronizing file data is supported. @@ -21580,7 +22011,7 @@ type termio = struct { // Typed memory objects are not available. // Get the environment definitions from Unix98. -// Copyright (C) 1999-2018 Free Software Foundation, Inc. +// Copyright (C) 1999-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21595,7 +22026,7 @@ type termio = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Determine the wordsize from the preprocessor defines. @@ -21639,7 +22070,7 @@ type termio = struct { // All functions that are not declared anywhere else. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21654,11 +22085,11 @@ type termio = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -21690,15 +22121,6 @@ type termio = struct { // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -21735,11 +22157,6 @@ type termio = struct { // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Offset of member MEMBER in a struct of type TYPE. @@ -21751,10 +22168,8 @@ type Intptr_t = X__intptr_t /* unistd.h:267:20 */ type Socklen_t = X__socklen_t /* unistd.h:274:21 */ -// Define some macros helping to catch buffer overflows. - // #include -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21769,9 +22184,9 @@ type Socklen_t = X__socklen_t /* unistd.h:274:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21786,10 +22201,10 @@ type Socklen_t = X__socklen_t /* unistd.h:274:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21804,12 +22219,12 @@ type Socklen_t = X__socklen_t /* unistd.h:274:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // `fd_set' type and related macros, and `select'/`pselect' declarations. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21824,7 +22239,7 @@ type Socklen_t = X__socklen_t /* unistd.h:274:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX 1003.1g: 6.2 Select from File Descriptor Sets @@ -21837,8 +22252,6 @@ type timezone = struct { Ftz_dsttime int32 } /* time.h:52:1 */ -type X__timezone_ptr_t = uintptr /* time.h:58:25 */ - // Type of the second argument to `getitimer' and // the second and third arguments `setitimer'. type itimerval = struct { @@ -21850,14 +22263,14 @@ type itimerval = struct { Ftv_sec X__time_t Ftv_usec X__suseconds_t } -} /* time.h:104:1 */ +} /* time.h:105:1 */ // Use the nicer parameter type only in GNU mode and not for C++ since the // strict C++ rules prevent the automatic promotion. -type X__itimer_which_t = uint32 /* time.h:115:29 */ +type X__itimer_which_t = uint32 /* time.h:116:29 */ // Define error_t. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -21872,7 +22285,7 @@ type X__itimer_which_t = uint32 /* time.h:115:29 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . type Error_t = int32 /* error_t.h:22:13 */ @@ -21908,13 +22321,13 @@ type Error_t = int32 /* error_t.h:22:13 */ // Forward references type unixShm = struct { - FpShmNode uintptr - FpNext uintptr - FhasMutex U8 - Fid U8 - FsharedMask U16 - FexclMask U16 - _ [2]byte + FpShmNode uintptr + FpNext uintptr + FhasMutex U8 + Fid U8 + FsharedMask U16 + FexclMask U16 + F__ccgo_pad1 [2]byte } /* sqlite3.c:34057:9 */ // Try to determine if gethostuuid() is available based on standard @@ -21976,7 +22389,7 @@ type unixInodeInfo = struct { FnLock int32 FeFileLock uint8 FbProcessLock uint8 - _ [2]byte + F__ccgo_pad1 [2]byte FpUnused uintptr FnRef int32 FpShmNode uintptr @@ -22003,7 +22416,7 @@ type unixFile = struct { FpInode uintptr Fh int32 FeFileLock uint8 - _ [1]byte + F__ccgo_pad1 [1]byte FctrlFlags uint16 FlastErrno int32 FlockingContext uintptr @@ -22081,67 +22494,67 @@ type unix_syscall = struct { // testing and sandboxing. The following array holds the names and pointers // to all overrideable system calls. var aSyscall = [29]unix_syscall{ - {FzName: ts + 4643 /* "open" */, FpCurrent: 0}, + {FzName: ts + 4653 /* "open" */, FpCurrent: 0}, - {FzName: ts + 4648 /* "close" */, FpCurrent: 0}, + {FzName: ts + 4658 /* "close" */, FpCurrent: 0}, - {FzName: ts + 4654 /* "access" */, FpCurrent: 0}, + {FzName: ts + 4664 /* "access" */, FpCurrent: 0}, - {FzName: ts + 4661 /* "getcwd" */, FpCurrent: 0}, + {FzName: ts + 4671 /* "getcwd" */, FpCurrent: 0}, - {FzName: ts + 4668 /* "stat" */, FpCurrent: 0}, + {FzName: ts + 4678 /* "stat" */, FpCurrent: 0}, // The DJGPP compiler environment looks mostly like Unix, but it // lacks the fcntl() system call. So redefine fcntl() to be something // that always succeeds. This means that locking does not occur under // DJGPP. But it is DOS - what did you expect? - {FzName: ts + 4673 /* "fstat" */, FpCurrent: 0}, + {FzName: ts + 4683 /* "fstat" */, FpCurrent: 0}, - {FzName: ts + 4679 /* "ftruncate" */, FpCurrent: 0}, + {FzName: ts + 4689 /* "ftruncate" */, FpCurrent: 0}, - {FzName: ts + 4689 /* "fcntl" */, FpCurrent: 0}, + {FzName: ts + 4699 /* "fcntl" */, FpCurrent: 0}, - {FzName: ts + 4695 /* "read" */, FpCurrent: 0}, + {FzName: ts + 4705 /* "read" */, FpCurrent: 0}, - {FzName: ts + 4700 /* "pread" */}, + {FzName: ts + 4710 /* "pread" */}, - {FzName: ts + 4706 /* "pread64" */}, + {FzName: ts + 4716 /* "pread64" */}, - {FzName: ts + 4714 /* "write" */, FpCurrent: 0}, + {FzName: ts + 4724 /* "write" */, FpCurrent: 0}, - {FzName: ts + 4720 /* "pwrite" */}, + {FzName: ts + 4730 /* "pwrite" */}, - {FzName: ts + 4727 /* "pwrite64" */}, + {FzName: ts + 4737 /* "pwrite64" */}, - {FzName: ts + 4736 /* "fchmod" */, FpCurrent: 0}, + {FzName: ts + 4746 /* "fchmod" */, FpCurrent: 0}, - {FzName: ts + 4743 /* "fallocate" */}, + {FzName: ts + 4753 /* "fallocate" */}, - {FzName: ts + 4753 /* "unlink" */, FpCurrent: 0}, + {FzName: ts + 4763 /* "unlink" */, FpCurrent: 0}, - {FzName: ts + 4760 /* "openDirectory" */, FpCurrent: 0}, + {FzName: ts + 4770 /* "openDirectory" */, FpCurrent: 0}, - {FzName: ts + 4774 /* "mkdir" */, FpCurrent: 0}, + {FzName: ts + 4784 /* "mkdir" */, FpCurrent: 0}, - {FzName: ts + 4780 /* "rmdir" */, FpCurrent: 0}, + {FzName: ts + 4790 /* "rmdir" */, FpCurrent: 0}, - {FzName: ts + 4786 /* "fchown" */, FpCurrent: 0}, + {FzName: ts + 4796 /* "fchown" */, FpCurrent: 0}, - {FzName: ts + 4793 /* "geteuid" */, FpCurrent: 0}, + {FzName: ts + 4803 /* "geteuid" */, FpCurrent: 0}, - {FzName: ts + 4801 /* "mmap" */, FpCurrent: 0}, + {FzName: ts + 4811 /* "mmap" */, FpCurrent: 0}, - {FzName: ts + 4806 /* "munmap" */, FpCurrent: 0}, + {FzName: ts + 4816 /* "munmap" */, FpCurrent: 0}, - {FzName: ts + 4813 /* "mremap" */, FpCurrent: 0}, + {FzName: ts + 4823 /* "mremap" */, FpCurrent: 0}, - {FzName: ts + 4820 /* "getpagesize" */, FpCurrent: 0}, + {FzName: ts + 4830 /* "getpagesize" */, FpCurrent: 0}, - {FzName: ts + 4832 /* "readlink" */, FpCurrent: 0}, + {FzName: ts + 4842 /* "readlink" */, FpCurrent: 0}, - {FzName: ts + 4841 /* "lstat" */, FpCurrent: 0}, + {FzName: ts + 4851 /* "lstat" */, FpCurrent: 0}, - {FzName: ts + 4847 /* "ioctl" */}, + {FzName: ts + 4857 /* "ioctl" */}, } /* sqlite3.c:34446:3 */ // End of the overrideable system calls @@ -22275,9 +22688,9 @@ func robust_open(tls *libc.TLS, z uintptr, f int32, m Mode_t) int32 { /* sqlite3 } (*(*func(*libc.TLS, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 1*12 + 4 /* &.pCurrent */))))(tls, fd) Xsqlite3_log(tls, SQLITE_WARNING, - ts+4853 /* "attempt to open ..." */, libc.VaList(bp, z, fd)) + ts+4863 /* "attempt to open ..." */, libc.VaList(bp, z, fd)) fd = -1 - if (*(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 4 /* &.pCurrent */))))(tls, ts+4896 /* "/dev/null" */, O_RDONLY, int32(m)) < 0 { + if (*(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 4 /* &.pCurrent */))))(tls, ts+4906 /* "/dev/null" */, O_RDONLY, int32(m)) < 0 { break } } @@ -22336,17 +22749,17 @@ func unixLeaveMutex(tls *libc.TLS) { /* sqlite3.c:34800:13: */ func azFileLock(tls *libc.TLS, eFileLock int32) uintptr { /* sqlite3.c:34817:19: */ switch eFileLock { case NO_LOCK: - return ts + 4906 /* "NONE" */ + return ts + 4916 /* "NONE" */ case SHARED_LOCK: - return ts + 4911 /* "SHARED" */ + return ts + 4921 /* "SHARED" */ case RESERVED_LOCK: - return ts + 4918 /* "RESERVED" */ + return ts + 4928 /* "RESERVED" */ case PENDING_LOCK: - return ts + 4927 /* "PENDING" */ + return ts + 4937 /* "PENDING" */ case EXCLUSIVE_LOCK: - return ts + 4935 /* "EXCLUSIVE" */ + return ts + 4945 /* "EXCLUSIVE" */ } - return ts + 4945 /* "ERROR" */ + return ts + 4955 /* "ERROR" */ } // Retry ftruncate() calls that fail due to EINTR @@ -22554,13 +22967,13 @@ func unixLogErrorAtLine(tls *libc.TLS, errcode int32, zFunc uintptr, zPath uintp // the strerror() function to obtain the human-readable error message // equivalent to errno. Otherwise, use strerror_r(). // This is a threadsafe build, but strerror_r() is not available. - zErr = ts + 915 /* "" */ + zErr = ts + 925 /* "" */ if zPath == uintptr(0) { - zPath = ts + 915 /* "" */ + zPath = ts + 925 /* "" */ } Xsqlite3_log(tls, errcode, - ts+4951, /* "os_unix.c:%d: (%..." */ + ts+4961, /* "os_unix.c:%d: (%..." */ libc.VaList(bp, iLine, iErrno, zFunc, zPath, zErr)) return errcode @@ -22579,7 +22992,7 @@ func unixLogErrorAtLine(tls *libc.TLS, errcode int32, zFunc uintptr, zPath uintp // and move on. func robust_close(tls *libc.TLS, pFile uintptr, h int32, lineno int32) { /* sqlite3.c:35345:13: */ if (*(*func(*libc.TLS, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 1*12 + 4 /* &.pCurrent */))))(tls, h) != 0 { - unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(16) << 8)), ts+4648, /* "close" */ + unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(16) << 8)), ts+4658, /* "close" */ func() uintptr { if pFile != 0 { return (*UnixFile)(unsafe.Pointer(pFile)).FzPath @@ -22738,19 +23151,19 @@ func verifyDbFile(tls *libc.TLS, pFile uintptr) { /* sqlite3.c:35532:13: */ rc = (*(*func(*libc.TLS, int32, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 5*12 + 4 /* &.pCurrent */))))(tls, (*UnixFile)(unsafe.Pointer(pFile)).Fh, bp+32 /* &buf */) if rc != 0 { - Xsqlite3_log(tls, SQLITE_WARNING, ts+4982 /* "cannot fstat db ..." */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) + Xsqlite3_log(tls, SQLITE_WARNING, ts+4992 /* "cannot fstat db ..." */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) return } if (*stat)(unsafe.Pointer(bp+32 /* &buf */)).Fst_nlink == X__nlink_t(0) { - Xsqlite3_log(tls, SQLITE_WARNING, ts+5006 /* "file unlinked wh..." */, libc.VaList(bp+8, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) + Xsqlite3_log(tls, SQLITE_WARNING, ts+5016 /* "file unlinked wh..." */, libc.VaList(bp+8, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) return } if (*stat)(unsafe.Pointer(bp+32 /* &buf */)).Fst_nlink > X__nlink_t(1) { - Xsqlite3_log(tls, SQLITE_WARNING, ts+5035 /* "multiple links t..." */, libc.VaList(bp+16, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) + Xsqlite3_log(tls, SQLITE_WARNING, ts+5045 /* "multiple links t..." */, libc.VaList(bp+16, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) return } if fileHasMoved(tls, pFile) != 0 { - Xsqlite3_log(tls, SQLITE_WARNING, ts+5062 /* "file renamed whi..." */, libc.VaList(bp+24, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) + Xsqlite3_log(tls, SQLITE_WARNING, ts+5072 /* "file renamed whi..." */, libc.VaList(bp+24, (*UnixFile)(unsafe.Pointer(pFile)).FzPath)) return } } @@ -22797,7 +23210,7 @@ func unixCheckReservedLock(tls *libc.TLS, id uintptr, pResOut uintptr) int32 { / Xsqlite3_mutex_leave(tls, (*UnixInodeInfo)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pFile)).FpInode)).FpLockMutex) if Xsqlite3OSTrace != 0 { - Xsqlite3DebugPrintf(tls, ts+5090 /* "TEST WR-LOCK %d ..." */, libc.VaList(bp+8, (*UnixFile)(unsafe.Pointer(pFile)).Fh, rc, reserved)) + Xsqlite3DebugPrintf(tls, ts+5100 /* "TEST WR-LOCK %d ..." */, libc.VaList(bp+8, (*UnixFile)(unsafe.Pointer(pFile)).Fh, rc, reserved)) } *(*int32)(unsafe.Pointer(pResOut)) = reserved @@ -22940,7 +23353,7 @@ func unixLock(tls *libc.TLS, id uintptr, eFileLock int32) int32 { /* sqlite3.c:3 if !(Xsqlite3OSTrace != 0) { goto __1 } - Xsqlite3DebugPrintf(tls, ts+5120 /* "LOCK %d %s wa..." */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).Fh, azFileLock(tls, eFileLock), azFileLock(tls, int32((*UnixFile)(unsafe.Pointer(pFile)).FeFileLock)), azFileLock(tls, int32((*UnixInodeInfo)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pFile)).FpInode)).FeFileLock)), (*UnixInodeInfo)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pFile)).FpInode)).FnShared, libc.Xgetpid(tls))) + Xsqlite3DebugPrintf(tls, ts+5130 /* "LOCK %d %s wa..." */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).Fh, azFileLock(tls, eFileLock), azFileLock(tls, int32((*UnixFile)(unsafe.Pointer(pFile)).FeFileLock)), azFileLock(tls, int32((*UnixInodeInfo)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pFile)).FpInode)).FeFileLock)), (*UnixInodeInfo)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pFile)).FpInode)).FnShared, libc.Xgetpid(tls))) __1: ; @@ -22953,7 +23366,7 @@ __1: if !(Xsqlite3OSTrace != 0) { goto __3 } - Xsqlite3DebugPrintf(tls, ts+5163 /* "LOCK %d %s ok..." */, libc.VaList(bp+48, (*UnixFile)(unsafe.Pointer(pFile)).Fh, azFileLock(tls, eFileLock))) + Xsqlite3DebugPrintf(tls, ts+5173 /* "LOCK %d %s ok..." */, libc.VaList(bp+48, (*UnixFile)(unsafe.Pointer(pFile)).Fh, azFileLock(tls, eFileLock))) __3: ; return SQLITE_OK @@ -23141,11 +23554,11 @@ end_lock: if !(Xsqlite3OSTrace != 0) { goto __25 } - Xsqlite3DebugPrintf(tls, ts+5203 /* "LOCK %d %s %s..." */, libc.VaList(bp+64, (*UnixFile)(unsafe.Pointer(pFile)).Fh, azFileLock(tls, eFileLock), func() uintptr { + Xsqlite3DebugPrintf(tls, ts+5213 /* "LOCK %d %s %s..." */, libc.VaList(bp+64, (*UnixFile)(unsafe.Pointer(pFile)).Fh, azFileLock(tls, eFileLock), func() uintptr { if rc == SQLITE_OK { - return ts + 5228 /* "ok" */ + return ts + 5238 /* "ok" */ } - return ts + 5231 /* "failed" */ + return ts + 5241 /* "failed" */ }())) __25: ; @@ -23190,7 +23603,7 @@ func posixUnlock(tls *libc.TLS, id uintptr, eFileLock int32, handleNFSUnlock int if !(Xsqlite3OSTrace != 0) { goto __1 } - Xsqlite3DebugPrintf(tls, ts+5238 /* "UNLOCK %d %d wa..." */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).Fh, eFileLock, int32((*UnixFile)(unsafe.Pointer(pFile)).FeFileLock), int32((*UnixInodeInfo)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pFile)).FpInode)).FeFileLock), (*UnixInodeInfo)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pFile)).FpInode)).FnShared, libc.Xgetpid(tls))) + Xsqlite3DebugPrintf(tls, ts+5248 /* "UNLOCK %d %d wa..." */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).Fh, eFileLock, int32((*UnixFile)(unsafe.Pointer(pFile)).FeFileLock), int32((*UnixInodeInfo)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pFile)).FpInode)).FeFileLock), (*UnixInodeInfo)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pFile)).FpInode)).FnShared, libc.Xgetpid(tls))) __1: ; @@ -23340,7 +23753,7 @@ func closeUnixFile(tls *libc.TLS, id uintptr) int32 { /* sqlite3.c:36148:12: */ (*UnixFile)(unsafe.Pointer(pFile)).Fh = -1 } if Xsqlite3OSTrace != 0 { - Xsqlite3DebugPrintf(tls, ts+5281 /* "CLOSE %-3d\n" */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).Fh)) + Xsqlite3DebugPrintf(tls, ts+5291 /* "CLOSE %-3d\n" */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).Fh)) } libc.AtomicAddInt32(&Xsqlite3_open_file_count, int32(-1)) Xsqlite3_free(tls, (*UnixFile)(unsafe.Pointer(pFile)).FpPreallocatedUnused) @@ -23474,7 +23887,7 @@ func dotlockCheckReservedLock(tls *libc.TLS, id uintptr, pResOut uintptr) int32 reserved = (libc.Bool32((*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 2*12 + 4 /* &.pCurrent */))))(tls, (*UnixFile)(unsafe.Pointer(pFile)).FlockingContext, 0) == 0)) if Xsqlite3OSTrace != 0 { - Xsqlite3DebugPrintf(tls, ts+5295 /* "TEST WR-LOCK %d ..." */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).Fh, rc, reserved)) + Xsqlite3DebugPrintf(tls, ts+5305 /* "TEST WR-LOCK %d ..." */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).Fh, rc, reserved)) } *(*int32)(unsafe.Pointer(pResOut)) = reserved return rc @@ -23556,7 +23969,7 @@ func dotlockUnlock(tls *libc.TLS, id uintptr, eFileLock int32) int32 { /* sqlite var rc int32 if Xsqlite3OSTrace != 0 { - Xsqlite3DebugPrintf(tls, ts+5328 /* "UNLOCK %d %d wa..." */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).Fh, eFileLock, int32((*UnixFile)(unsafe.Pointer(pFile)).FeFileLock), libc.Xgetpid(tls))) + Xsqlite3DebugPrintf(tls, ts+5338 /* "UNLOCK %d %d wa..." */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).Fh, eFileLock, int32((*UnixFile)(unsafe.Pointer(pFile)).FeFileLock), libc.Xgetpid(tls))) } // no-op if possible @@ -23728,7 +24141,7 @@ func seekAndRead(tls *libc.TLS, id uintptr, offset Sqlite3_int64, pBuf uintptr, } if Xsqlite3OSTrace != 0 { - Xsqlite3DebugPrintf(tls, ts+5367 /* "READ %-3d %5d..." */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(id)).Fh, (got+prior), (offset-Sqlite3_int64(prior)), uint64(0))) + Xsqlite3DebugPrintf(tls, ts+5377 /* "READ %-3d %5d..." */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(id)).Fh, (got+prior), (offset-Sqlite3_int64(prior)), uint64(0))) } return (got + prior) } @@ -23814,7 +24227,7 @@ func seekAndWriteFd(tls *libc.TLS, fd int32, iOff I64, pBuf uintptr, nBuf int32, } if Xsqlite3OSTrace != 0 { - Xsqlite3DebugPrintf(tls, ts+5396 /* "WRITE %-3d %5d..." */, libc.VaList(bp, fd, rc, iOff, uint64(0))) + Xsqlite3DebugPrintf(tls, ts+5406 /* "WRITE %-3d %5d..." */, libc.VaList(bp, fd, rc, iOff, uint64(0))) } if rc < 0 { @@ -23971,7 +24384,7 @@ func openDirectory(tls *libc.TLS, zFilename uintptr, pFd uintptr) int32 { /* sql var fd int32 = -1 // var zDirname [513]int8 at bp+24, 513 - Xsqlite3_snprintf(tls, MAX_PATHNAME, bp+24 /* &zDirname[0] */, ts+951 /* "%s" */, libc.VaList(bp, zFilename)) + Xsqlite3_snprintf(tls, MAX_PATHNAME, bp+24 /* &zDirname[0] */, ts+961 /* "%s" */, libc.VaList(bp, zFilename)) for ii = int32(libc.Xstrlen(tls, bp+24 /* &zDirname[0] */)); (ii > 0) && (int32(*(*int8)(unsafe.Pointer(bp + 24 /* &zDirname[0] */ + uintptr(ii)))) != '/'); ii-- { } if ii > 0 { @@ -23985,14 +24398,14 @@ func openDirectory(tls *libc.TLS, zFilename uintptr, pFd uintptr) int32 { /* sql fd = robust_open(tls, bp+24 /* &zDirname[0] */, (O_RDONLY | O_BINARY), uint32(0)) if fd >= 0 { if Xsqlite3OSTrace != 0 { - Xsqlite3DebugPrintf(tls, ts+5425 /* "OPENDIR %-3d %s\n" */, libc.VaList(bp+8, fd, bp+24 /* &zDirname[0] */)) + Xsqlite3DebugPrintf(tls, ts+5435 /* "OPENDIR %-3d %s\n" */, libc.VaList(bp+8, fd, bp+24 /* &zDirname[0] */)) } } *(*int32)(unsafe.Pointer(pFd)) = fd if fd >= 0 { return SQLITE_OK } - return unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 37775), ts+4760 /* "openDirectory" */, bp+24 /* &zDirname[0] */, 37775) + return unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 37775), ts+4770 /* "openDirectory" */, bp+24 /* &zDirname[0] */, 37775) } // Make sure all writes to a particular file are committed to disk. @@ -24034,7 +24447,7 @@ func unixSync(tls *libc.TLS, id uintptr, flags int32) int32 { /* sqlite3.c:37793 } if Xsqlite3OSTrace != 0 { - Xsqlite3DebugPrintf(tls, ts+5442 /* "SYNC %-3d\n" */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).Fh)) + Xsqlite3DebugPrintf(tls, ts+5452 /* "SYNC %-3d\n" */, libc.VaList(bp, (*UnixFile)(unsafe.Pointer(pFile)).Fh)) } rc = full_fsync(tls, (*UnixFile)(unsafe.Pointer(pFile)).Fh, isFullsync, isDataOnly) if ((Xsqlite3_io_error_persist != 0) && (Xsqlite3_io_error_hit != 0)) || (libc.PostDecAtomicInt32(&Xsqlite3_io_error_pending, 1) == 1) { @@ -24044,7 +24457,7 @@ func unixSync(tls *libc.TLS, id uintptr, flags int32) int32 { /* sqlite3.c:37793 if rc != 0 { storeLastErrno(tls, pFile, *(*int32)(unsafe.Pointer(libc.X__errno_location(tls)))) - return unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(4) << 8)), ts+5456 /* "full_fsync" */, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, 37816) + return unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(4) << 8)), ts+5466 /* "full_fsync" */, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, 37816) } // Also fsync the directory containing the file if the DIRSYNC flag @@ -24054,7 +24467,7 @@ func unixSync(tls *libc.TLS, id uintptr, flags int32) int32 { /* sqlite3.c:37793 // var dirfd int32 at bp+32, 4 if Xsqlite3OSTrace != 0 { - Xsqlite3DebugPrintf(tls, ts+5467 /* "DIRSYNC %s (have..." */, libc.VaList(bp+8, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, HAVE_FULLFSYNC, isFullsync)) + Xsqlite3DebugPrintf(tls, ts+5477 /* "DIRSYNC %s (have..." */, libc.VaList(bp+8, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, HAVE_FULLFSYNC, isFullsync)) } rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 17*12 + 4 /* &.pCurrent */))))(tls, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, bp+32 /* &dirfd */) if rc == SQLITE_OK { @@ -24090,7 +24503,7 @@ func unixTruncate(tls *libc.TLS, id uintptr, nByte I64) int32 { /* sqlite3.c:378 rc = robust_ftruncate(tls, (*UnixFile)(unsafe.Pointer(pFile)).Fh, nByte) if rc != 0 { storeLastErrno(tls, pFile, *(*int32)(unsafe.Pointer(libc.X__errno_location(tls)))) - return unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(6) << 8)), ts+4679 /* "ftruncate" */, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, 37861) + return unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(6) << 8)), ts+4689 /* "ftruncate" */, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, 37861) } else { // If the file was just truncated to a size smaller than the currently @@ -24173,7 +24586,7 @@ func fcntlSizeHint(tls *libc.TLS, pFile uintptr, nByte I64) int32 { /* sqlite3.c if iWrite >= nSize { iWrite = (nSize - int64(1)) } - nWrite = seekAndWrite(tls, pFile, iWrite, ts+915 /* "" */, 1) + nWrite = seekAndWrite(tls, pFile, iWrite, ts+925 /* "" */, 1) if nWrite != 1 { return (SQLITE_IOERR | (int32(3) << 8)) } @@ -24186,7 +24599,7 @@ func fcntlSizeHint(tls *libc.TLS, pFile uintptr, nByte I64) int32 { /* sqlite3.c if (*UnixFile)(unsafe.Pointer(pFile)).FszChunk <= 0 { if robust_ftruncate(tls, (*UnixFile)(unsafe.Pointer(pFile)).Fh, nByte) != 0 { storeLastErrno(tls, pFile, *(*int32)(unsafe.Pointer(libc.X__errno_location(tls)))) - return unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(6) << 8)), ts+4679 /* "ftruncate" */, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, 37982) + return unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(6) << 8)), ts+4689 /* "ftruncate" */, (*UnixFile)(unsafe.Pointer(pFile)).FzPath, 37982) } } @@ -24260,7 +24673,7 @@ func unixFileControl(tls *libc.TLS, id uintptr, op int32, pArg uintptr) int32 { } case SQLITE_FCNTL_VFSNAME: { - *(*uintptr)(unsafe.Pointer(pArg)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp, (*Sqlite3_vfs)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pFile)).FpVfs)).FzName)) + *(*uintptr)(unsafe.Pointer(pArg)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp, (*Sqlite3_vfs)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pFile)).FpVfs)).FzName)) return SQLITE_OK } @@ -24546,7 +24959,7 @@ func unixLockSharedMemory(tls *libc.TLS, pDbFd uintptr, pShmNode uintptr) int32 // help detect if a -shm file truncation is legitimate or is the work // or a rogue process. if (rc == SQLITE_OK) && (robust_ftruncate(tls, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FhShm, int64(3)) != 0) { - rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(18) << 8)), ts+4679 /* "ftruncate" */, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FzFilename, 38591) + rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(18) << 8)), ts+4689 /* "ftruncate" */, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FzFilename, 38591) } } } else if int32((*flock)(unsafe.Pointer(bp+8 /* &lock */)).Fl_type) == F_WRLCK { @@ -24652,7 +25065,7 @@ __4: ; libc.Xmemset(tls, pShmNode, 0, (uint32(unsafe.Sizeof(unixShmNode{})) + uint32(nShmFilename))) zShm = libc.AssignPtrUintptr(pShmNode+8 /* &.zFilename */, (pShmNode + 1*68)) - Xsqlite3_snprintf(tls, nShmFilename, zShm, ts+5511 /* "%s-shm" */, libc.VaList(bp, zBasePath)) + Xsqlite3_snprintf(tls, nShmFilename, zShm, ts+5521 /* "%s-shm" */, libc.VaList(bp, zBasePath)) (*unixShmNode)(unsafe.Pointer(pShmNode)).FhShm = -1 (*UnixInodeInfo)(unsafe.Pointer((*UnixFile)(unsafe.Pointer(pDbFd)).FpInode)).FpShmNode = pShmNode @@ -24674,7 +25087,7 @@ __5: if !(int32((*UnixInodeInfo)(unsafe.Pointer(pInode)).FbProcessLock) == 0) { goto __7 } - if !(0 == Xsqlite3_uri_boolean(tls, (*UnixFile)(unsafe.Pointer(pDbFd)).FzPath, ts+5518 /* "readonly_shm" */, 0)) { + if !(0 == Xsqlite3_uri_boolean(tls, (*UnixFile)(unsafe.Pointer(pDbFd)).FzPath, ts+5528 /* "readonly_shm" */, 0)) { goto __8 } (*unixShmNode)(unsafe.Pointer(pShmNode)).FhShm = robust_open(tls, zShm, ((O_RDWR | O_CREAT) | 0400000), @@ -24689,7 +25102,7 @@ __8: if !((*unixShmNode)(unsafe.Pointer(pShmNode)).FhShm < 0) { goto __10 } - rc = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 38716), ts+4643 /* "open" */, zShm, 38716) + rc = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 38716), ts+4653 /* "open" */, zShm, 38716) goto shm_open_err __10: ; @@ -24856,11 +25269,11 @@ __11: goto __13 } *(*int32)(unsafe.Pointer(bp + 96 /* x */)) = 0 - if !(seekAndWriteFd(tls, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FhShm, (int64(((iPg*pgsz)+pgsz)-1)), ts+915 /* "" */, 1, bp+96 /* &x */) != 1) { + if !(seekAndWriteFd(tls, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FhShm, (int64(((iPg*pgsz)+pgsz)-1)), ts+925 /* "" */, 1, bp+96 /* &x */) != 1) { goto __14 } zFile = (*UnixShmNode)(unsafe.Pointer(pShmNode)).FzFilename - rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(19) << 8)), ts+4714 /* "write" */, zFile, 38860) + rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(19) << 8)), ts+4724 /* "write" */, zFile, 38860) goto shmpage_out __14: ; @@ -24908,7 +25321,7 @@ __16: if !(pMem == (libc.UintptrFromInt32(-1))) { goto __20 } - rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(21) << 8)), ts+4801 /* "mmap" */, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FzFilename, 38887) + rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(21) << 8)), ts+4811 /* "mmap" */, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FzFilename, 38887) goto shmpage_out __20: ; @@ -24950,10 +25363,10 @@ shmpage_out: if !(int32((*UnixShmNode)(unsafe.Pointer(pShmNode)).FnRegion) > iRegion) { goto __25 } - *(*uintptr)(unsafe.Pointer(libc.AtomicLoadUintptr(&pp))) = *(*uintptr)(unsafe.Pointer((*UnixShmNode)(unsafe.Pointer(pShmNode)).FapRegion + uintptr(iRegion)*4)) + *(*uintptr)(unsafe.Pointer(pp)) = *(*uintptr)(unsafe.Pointer((*UnixShmNode)(unsafe.Pointer(pShmNode)).FapRegion + uintptr(iRegion)*4)) goto __26 __25: - *(*uintptr)(unsafe.Pointer(libc.AtomicLoadUintptr(&pp))) = uintptr(0) + *(*uintptr)(unsafe.Pointer(pp)) = uintptr(0) __26: ; if !(((*UnixShmNode)(unsafe.Pointer(pShmNode)).FisReadonly != 0) && (rc == SQLITE_OK)) { @@ -25083,7 +25496,7 @@ func unixShmLock(tls *libc.TLS, fd uintptr, ofst int32, n int32, flags int32) in Xsqlite3_mutex_leave(tls, (*UnixShmNode)(unsafe.Pointer(pShmNode)).FpShmMutex) if Xsqlite3OSTrace != 0 { - Xsqlite3DebugPrintf(tls, ts+5531 /* "SHM-LOCK shmid-%..." */, libc.VaList(bp, int32((*UnixShm)(unsafe.Pointer(p)).Fid), libc.Xgetpid(tls), int32((*UnixShm)(unsafe.Pointer(p)).FsharedMask), int32((*UnixShm)(unsafe.Pointer(p)).FexclMask))) + Xsqlite3DebugPrintf(tls, ts+5541 /* "SHM-LOCK shmid-%..." */, libc.VaList(bp, int32((*UnixShm)(unsafe.Pointer(p)).Fid), libc.Xgetpid(tls), int32((*UnixShm)(unsafe.Pointer(p)).FsharedMask), int32((*UnixShm)(unsafe.Pointer(p)).FexclMask))) } return rc } @@ -25172,7 +25585,7 @@ func unixUnmapfile(tls *libc.TLS, pFd uintptr) { /* sqlite3.c:39165:13: */ // continue accessing the database using the xRead() and xWrite() // methods. func unixRemapfile(tls *libc.TLS, pFd uintptr, nNew I64) { /* sqlite3.c:39190:13: */ - var zErr uintptr = ts + 4801 /* "mmap" */ + var zErr uintptr = ts + 4811 /* "mmap" */ var h int32 = (*UnixFile)(unsafe.Pointer(pFd)).Fh // File descriptor open on db file var pOrig uintptr = (*UnixFile)(unsafe.Pointer(pFd)).FpMapRegion // Pointer to current file mapping var nOrig I64 = (*UnixFile)(unsafe.Pointer(pFd)).FmmapSizeActual // Size of pOrig region in bytes @@ -25189,7 +25602,7 @@ func unixRemapfile(tls *libc.TLS, pFd uintptr, nNew I64) { /* sqlite3.c:39190:13 } pNew = (*(*func(*libc.TLS, uintptr, Size_t, Size_t, int32, uintptr) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 24*12 + 4 /* &.pCurrent */))))(tls, pOrig, uint32(nReuse), uint32(nNew), MREMAP_MAYMOVE, 0) - zErr = ts + 4813 /* "mremap" */ + zErr = ts + 4823 /* "mremap" */ // The attempt to extend the existing mapping failed. Free it. if (pNew == (libc.UintptrFromInt32(-1))) || (pNew == uintptr(0)) { @@ -25415,7 +25828,7 @@ func fillInUnixFile(tls *libc.TLS, pVfs uintptr, h int32, pId uintptr, zFilename // No locking occurs in temporary files if Xsqlite3OSTrace != 0 { - Xsqlite3DebugPrintf(tls, ts+5572 /* "OPEN %-3d %s\n" */, libc.VaList(bp, h, zFilename)) + Xsqlite3DebugPrintf(tls, ts+5582 /* "OPEN %-3d %s\n" */, libc.VaList(bp, h, zFilename)) } (*UnixFile)(unsafe.Pointer(pNew)).Fh = h (*UnixFile)(unsafe.Pointer(pNew)).FpVfs = pVfs @@ -25428,17 +25841,19 @@ func fillInUnixFile(tls *libc.TLS, pVfs uintptr, h int32, pId uintptr, zFilename } return uintptr(0) }(), - ts+5589 /* "psow" */, SQLITE_POWERSAFE_OVERWRITE) != 0 { + ts+5599 /* "psow" */, SQLITE_POWERSAFE_OVERWRITE) != 0 { *(*uint16)(unsafe.Pointer(pNew + 18 /* &.ctrlFlags */)) |= uint16((UNIXFILE_PSOW)) } - if libc.Xstrcmp(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FzName, ts+5594 /* "unix-excl" */) == 0 { + if libc.Xstrcmp(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FzName, ts+5604 /* "unix-excl" */) == 0 { *(*uint16)(unsafe.Pointer(pNew + 18 /* &.ctrlFlags */)) |= uint16((UNIXFILE_EXCL)) } if (ctrlFlags & UNIXFILE_NOLOCK) != 0 { pLockingStyle = uintptr(unsafe.Pointer(&nolockIoMethods)) } else { - pLockingStyle = (**(**func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer((pVfs + 20 /* &.pAppData */))))(tls, zFilename, pNew) + pLockingStyle = (*(**struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData}))).f(tls, zFilename, pNew) } if pLockingStyle == uintptr(unsafe.Pointer(&posixIoMethods)) { @@ -25477,7 +25892,7 @@ func fillInUnixFile(tls *libc.TLS, pVfs uintptr, h int32, pId uintptr, zFilename if zLockFile == uintptr(0) { rc = SQLITE_NOMEM } else { - Xsqlite3_snprintf(tls, nFilename, zLockFile, ts+5604 /* "%s.lock" */, libc.VaList(bp+16, zFilename)) + Xsqlite3_snprintf(tls, nFilename, zLockFile, ts+5614 /* "%s.lock" */, libc.VaList(bp+16, zFilename)) } (*UnixFile)(unsafe.Pointer(pNew)).FlockingContext = zLockFile } @@ -25507,10 +25922,10 @@ func unixTempFileDir(tls *libc.TLS) uintptr { /* sqlite3.c:39856:19: */ var zDir uintptr = Xsqlite3_temp_directory if !(int32(azDirs[0]) != 0) { - azDirs[0] = libc.Xgetenv(tls, ts+5612 /* "SQLITE_TMPDIR" */) + azDirs[0] = libc.Xgetenv(tls, ts+5622 /* "SQLITE_TMPDIR" */) } if !(int32(azDirs[1]) != 0) { - azDirs[1] = libc.Xgetenv(tls, ts+5626 /* "TMPDIR" */) + azDirs[1] = libc.Xgetenv(tls, ts+5636 /* "TMPDIR" */) } for 1 != 0 { if (((zDir != uintptr(0)) && @@ -25530,10 +25945,10 @@ func unixTempFileDir(tls *libc.TLS) uintptr { /* sqlite3.c:39856:19: */ var azDirs = [6]uintptr{ uintptr(0), uintptr(0), - ts + 5633, /* "/var/tmp" */ - ts + 5642, /* "/usr/tmp" */ - ts + 5651, /* "/tmp" */ - ts + 928, /* "." */ + ts + 5643, /* "/var/tmp" */ + ts + 5652, /* "/usr/tmp" */ + ts + 5661, /* "/tmp" */ + ts + 938, /* "." */ } /* sqlite3.c:39857:21 */ // Create a temporary file name in zBuf. zBuf must be allocated @@ -25565,7 +25980,7 @@ func unixGetTempname(tls *libc.TLS, nBuf int32, zBuf uintptr) int32 { /* sqlite3 Xsqlite3_randomness(tls, int32(unsafe.Sizeof(U64(0))), bp+24 /* &r */) *(*int8)(unsafe.Pointer(zBuf + uintptr((nBuf - 2)))) = int8(0) - Xsqlite3_snprintf(tls, nBuf, zBuf, ts+5656, /* "%s/etilqs_%llx%c" */ + Xsqlite3_snprintf(tls, nBuf, zBuf, ts+5666, /* "%s/etilqs_%llx%c" */ libc.VaList(bp, zDir, *(*U64)(unsafe.Pointer(bp + 24 /* r */)), 0)) if (int32(*(*int8)(unsafe.Pointer(zBuf + uintptr((nBuf - 2))))) != 0) || ((libc.PostIncInt32(&iLimit, 1)) > 10) { return SQLITE_ERROR @@ -25721,7 +26136,7 @@ func findCreateFileMode(tls *libc.TLS, zPath uintptr, flags int32, pMode uintptr // filename, check for the "modeof" parameter. If present, interpret // its value as a filename and try to copy the mode, uid and gid from // that file. - var z uintptr = Xsqlite3_uri_parameter(tls, zPath, ts+5673 /* "modeof" */) + var z uintptr = Xsqlite3_uri_parameter(tls, zPath, ts+5683 /* "modeof" */) if z != 0 { rc = getFileMode(tls, z, pMode, pUid, pGid) } @@ -25919,7 +26334,7 @@ __14: if !(Xsqlite3OSTrace != 0) { goto __15 } - Xsqlite3DebugPrintf(tls, ts+5680 /* "OPENX %-3d %s ..." */, libc.VaList(bp, fd, zName, openFlags)) + Xsqlite3DebugPrintf(tls, ts+5690 /* "OPENX %-3d %s ..." */, libc.VaList(bp, fd, zName, openFlags)) __15: ; @@ -25953,7 +26368,7 @@ __16: if !(fd < 0) { goto __20 } - rc2 = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40257), ts+4643 /* "open" */, zName, 40257) + rc2 = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40257), ts+4653 /* "open" */, zName, 40257) if !(rc == SQLITE_OK) { goto __21 } @@ -26068,7 +26483,7 @@ func unixDelete(tls *libc.TLS, NotUsed uintptr, zPath uintptr, dirSync int32) in if (*(*int32)(unsafe.Pointer(libc.X__errno_location(tls)))) == ENOENT { rc = (SQLITE_IOERR | (int32(23) << 8)) } else { - rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(10) << 8)), ts+4753 /* "unlink" */, zPath, 40396) + rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(10) << 8)), ts+4763 /* "unlink" */, zPath, 40396) } return rc } @@ -26078,7 +26493,7 @@ func unixDelete(tls *libc.TLS, NotUsed uintptr, zPath uintptr, dirSync int32) in rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 17*12 + 4 /* &.pCurrent */))))(tls, zPath, bp /* &fd */) if rc == SQLITE_OK { if full_fsync(tls, *(*int32)(unsafe.Pointer(bp /* fd */)), 0, 0) != 0 { - rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(5) << 8)), ts+5701 /* "fsync" */, zPath, 40406) + rc = unixLogErrorAtLine(tls, (SQLITE_IOERR | (int32(5) << 8)), ts+5711 /* "fsync" */, zPath, 40406) } robust_close(tls, uintptr(0), *(*int32)(unsafe.Pointer(bp /* fd */)), 40408) } else { @@ -26157,7 +26572,7 @@ func mkFullPathname(tls *libc.TLS, zPath uintptr, zOut uintptr, nOut int32) int3 if int32(*(*int8)(unsafe.Pointer(zPath))) != '/' { if (*(*func(*libc.TLS, uintptr, Size_t) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 3*12 + 4 /* &.pCurrent */))))(tls, zOut, (uint32(nOut-2))) == uintptr(0) { - return unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40485), ts+4661 /* "getcwd" */, zPath, 40485) + return unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40485), ts+4671 /* "getcwd" */, zPath, 40485) } iOff = Xsqlite3Strlen30(tls, zOut) *(*int8)(unsafe.Pointer(zOut + uintptr(libc.PostIncInt32(&iOff, 1)))) = int8('/') @@ -26168,7 +26583,7 @@ func mkFullPathname(tls *libc.TLS, zPath uintptr, zOut uintptr, nOut int32) int3 *(*int8)(unsafe.Pointer(zOut + uintptr(iOff))) = int8(0) return Xsqlite3CantopenError(tls, 40494) } - Xsqlite3_snprintf(tls, (nOut - iOff), (zOut + uintptr(iOff)), ts+951 /* "%s" */, libc.VaList(bp, zPath)) + Xsqlite3_snprintf(tls, (nOut - iOff), (zOut + uintptr(iOff)), ts+961 /* "%s" */, libc.VaList(bp, zPath)) // Remove duplicate '/' characters. Except, two // at the beginning // of a pathname is allowed since this is important on windows. @@ -26247,7 +26662,7 @@ func unixFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zO if (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 27*12 + 4 /* &.pCurrent */))))(tls, zIn, bp /* &buf */) != 0 { if (*(*int32)(unsafe.Pointer(libc.X__errno_location(tls)))) != ENOENT { - rc = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40577), ts+4841 /* "lstat" */, zIn, 40577) + rc = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40577), ts+4851 /* "lstat" */, zIn, 40577) } } else { bLink = (libc.Bool32((((*stat)(unsafe.Pointer(bp /* &buf */)).Fst_mode) & X__mode_t(0170000)) == (X__mode_t(0120000)))) @@ -26267,7 +26682,7 @@ func unixFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zO if rc == SQLITE_OK { nByte = (*(*func(*libc.TLS, uintptr, uintptr, Size_t) Ssize_t)(unsafe.Pointer((uintptr(unsafe.Pointer(&aSyscall)) + 26*12 + 4 /* &.pCurrent */))))(tls, zIn, zDel, (uint32(nOut - 1))) if nByte < 0 { - rc = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40595), ts+4832 /* "readlink" */, zIn, 40595) + rc = unixLogErrorAtLine(tls, Xsqlite3CantopenError(tls, 40595), ts+4842 /* "readlink" */, zIn, 40595) } else { if int32(*(*int8)(unsafe.Pointer(zDel))) != '/' { var n int32 @@ -26335,10 +26750,13 @@ type Dl_serpath = struct { // This is the structure that must be passed (by reference) to `dlinfo' for // the RTLD_DI_SERINFO and RTLD_DI_SERINFOSIZE requests. type Dl_serinfo = struct { - Fdls_size Size_t - Fdls_cnt uint32 - Fdls_serpath [1]Dl_serpath -} /* dlfcn.h:184:3 */ + Fdls_size Size_t + Fdls_cnt uint32 + F__8 struct { + Fdls_serpath [0]Dl_serpath + _ [8]byte + } +} /* dlfcn.h:196:3 */ func unixDlOpen(tls *libc.TLS, NotUsed uintptr, zFilename uintptr) uintptr { /* sqlite3.c:40636:13: */ _ = NotUsed @@ -26359,7 +26777,7 @@ func unixDlError(tls *libc.TLS, NotUsed uintptr, nBuf int32, zBufOut uintptr) { unixEnterMutex(tls) zErr = libc.Xdlerror(tls) if zErr != 0 { - Xsqlite3_snprintf(tls, nBuf, zBufOut, ts+951 /* "%s" */, libc.VaList(bp, zErr)) + Xsqlite3_snprintf(tls, nBuf, zBufOut, ts+961 /* "%s" */, libc.VaList(bp, zErr)) } unixLeaveMutex(tls) } @@ -26385,7 +26803,9 @@ func unixDlSym(tls *libc.TLS, NotUsed uintptr, p uintptr, zSym uintptr) uintptr x = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr) uintptr }{libc.Xdlsym})) - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(&x)))(tls, p, zSym) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{x})).f(tls, p, zSym) } func unixDlClose(tls *libc.TLS, NotUsed uintptr, pHandle uintptr) { /* sqlite3.c:40681:13: */ @@ -26696,10 +27116,10 @@ func Xsqlite3_os_init(tls *libc.TLS) int32 { /* sqlite3.c:42038:16: */ } var aVfs = [4]Sqlite3_vfs{ - {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 5707 /* "unix" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, - {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 5712 /* "unix-none" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, - {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 5722 /* "unix-dotfile" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, - {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 5594 /* "unix-excl" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, + {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 5717 /* "unix" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, + {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 5722 /* "unix-none" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, + {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 5732 /* "unix-dotfile" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, + {FiVersion: 3 /* iVersion */, FszOsFile: int32(unsafe.Sizeof(UnixFile{})) /* szOsFile */, FmxPathname: MAX_PATHNAME /* pNext */, FzName: ts + 5604 /* "unix-excl" */ /* zName */, FpAppData: 0 /* pAppData */, FxOpen: 0 /* xOpen */, FxDelete: 0 /* xDelete */, FxAccess: 0 /* xAccess */, FxFullPathname: 0 /* xFullPathname */, FxDlOpen: 0 /* xDlOpen */, FxDlError: 0 /* xDlError */, FxDlSym: 0 /* xDlSym */, FxDlClose: 0 /* xDlClose */, FxRandomness: 0 /* xRandomness */, FxSleep: 0 /* xSleep */, FxCurrentTime: 0 /* xCurrentTime */, FxGetLastError: 0 /* xGetLastError */, FxCurrentTimeInt64: 0 /* xCurrentTimeInt64 */, FxSetSystemCall: 0 /* xSetSystemCall */, FxGetSystemCall: 0 /* xGetSystemCall */, FxNextSystemCall: 0 /* xNextSystemCall */}, } /* sqlite3.c:42091:22 */ // Shutdown the operating system interface. @@ -26791,7 +27211,7 @@ var memdb_g MemFS /* sqlite3.c:48620:3: */ var memdb_vfs = Sqlite3_vfs{ FiVersion: 2, // szOsFile (set when registered) FmxPathname: 1024, // pNext - FzName: ts + 5735, /* "memdb" */ // pAppData (set when registered) + FzName: ts + 5745, /* "memdb" */ // pAppData (set when registered) FxOpen: 0, /* memdbDelete, */ // xDelete FxAccess: 0, // xAccess FxFullPathname: 0, // xFullPathname @@ -27023,7 +27443,7 @@ func memdbFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int3 var rc int32 = SQLITE_NOTFOUND memdbEnter(tls, p) if op == SQLITE_FCNTL_VFSNAME { - *(*uintptr)(unsafe.Pointer(pArg)) = Xsqlite3_mprintf(tls, ts+5741 /* "memdb(%p,%lld)" */, libc.VaList(bp, (*MemStore)(unsafe.Pointer(p)).FaData, (*MemStore)(unsafe.Pointer(p)).Fsz)) + *(*uintptr)(unsafe.Pointer(pArg)) = Xsqlite3_mprintf(tls, ts+5751 /* "memdb(%p,%lld)" */, libc.VaList(bp, (*MemStore)(unsafe.Pointer(p)).FaData, (*MemStore)(unsafe.Pointer(p)).Fsz)) rc = SQLITE_OK } if op == SQLITE_FCNTL_SIZE_LIMIT { @@ -27080,7 +27500,9 @@ func memdbOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pFd uintptr, flags in var p uintptr = uintptr(0) var szName int32 if (flags & SQLITE_OPEN_MAIN_DB) == 0 { - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 24 /* &.xOpen */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName, pFd, flags, pOutFlags) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxOpen})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zName, pFd, flags, pOutFlags) } libc.Xmemset(tls, pFile, 0, uint32(unsafe.Sizeof(MemStore{}))) szName = Xsqlite3Strlen30(tls, zName) @@ -27166,50 +27588,66 @@ func memdbFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, z defer tls.Free(8) _ = pVfs - Xsqlite3_snprintf(tls, nOut, zOut, ts+951 /* "%s" */, libc.VaList(bp, zPath)) + Xsqlite3_snprintf(tls, nOut, zOut, ts+961 /* "%s" */, libc.VaList(bp, zPath)) return SQLITE_OK } // Open the dynamic library located at zPath and return a handle. func memdbDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* sqlite3.c:49147:13: */ - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 40 /* &.xDlOpen */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlOpen})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, zPath) } // Populate the buffer zErrMsg (size nByte bytes) with a human readable // utf-8 string describing the most recent error encountered associated // with dynamic libraries. func memdbDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zErrMsg uintptr) { /* sqlite3.c:49156:13: */ - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 44 /* &.xDlError */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zErrMsg) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlError})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zErrMsg) } // Return a pointer to the symbol zSymbol in the dynamic library pHandle. func memdbDlSym(tls *libc.TLS, pVfs uintptr, p uintptr, zSym uintptr) uintptr { /* sqlite3.c:49163:13: */ - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 48 /* &.xDlSym */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, p, zSym) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlSym})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, p, zSym) } // Close the dynamic library handle pHandle. func memdbDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* sqlite3.c:49170:13: */ - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 52 /* &.xDlClose */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, pHandle) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxDlClose})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, pHandle) } // Populate the buffer pointed to by zBufOut with nByte bytes of // random data. func memdbRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* sqlite3.c:49178:12: */ - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 56 /* &.xRandomness */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zBufOut) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxRandomness})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nByte, zBufOut) } // Sleep for nMicro microseconds. Return the number of microseconds // actually slept. func memdbSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* sqlite3.c:49186:12: */ - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 60 /* &.xSleep */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nMicro) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxSleep})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, nMicro) } func memdbGetLastError(tls *libc.TLS, pVfs uintptr, a int32, b uintptr) int32 { /* sqlite3.c:49199:12: */ - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 68 /* &.xGetLastError */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, a, b) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxGetLastError})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, a, b) } func memdbCurrentTimeInt64(tls *libc.TLS, pVfs uintptr, p uintptr) int32 { /* sqlite3.c:49202:12: */ - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData + 72 /* &.xCurrentTimeInt64 */))))(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, p) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData))).FxCurrentTimeInt64})).f(tls, (*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FpAppData, p) } // Translate a database connection pointer and schema name into a @@ -27283,7 +27721,7 @@ func Xsqlite3_serialize(tls *libc.TLS, db uintptr, zSchema uintptr, piSize uintp return uintptr(0) } szPage = Xsqlite3BtreeGetPageSize(tls, pBt) - zSql = Xsqlite3_mprintf(tls, ts+5756 /* "PRAGMA \"%w\".page..." */, libc.VaList(bp, zSchema)) + zSql = Xsqlite3_mprintf(tls, ts+5766 /* "PRAGMA \"%w\".page..." */, libc.VaList(bp, zSchema)) if zSql != 0 { rc = Xsqlite3_prepare_v2(tls, db, zSql, -1, bp+8 /* &pStmt */, uintptr(0)) } else { @@ -27356,7 +27794,7 @@ __1: goto end_deserialize __2: ; - zSql = Xsqlite3_mprintf(tls, ts+5779 /* "ATTACH x AS %Q" */, libc.VaList(bp, zSchema)) + zSql = Xsqlite3_mprintf(tls, ts+5789 /* "ATTACH x AS %Q" */, libc.VaList(bp, zSchema)) if !(zSql == uintptr(0)) { goto __3 } @@ -27956,7 +28394,9 @@ func pcacheManageDirtyList(tls *libc.TLS, pPage uintptr, addRemove U8) { /* sqli func pcacheUnpin(tls *libc.TLS, p uintptr) { /* sqlite3.c:50041:13: */ if (*PCache)(unsafe.Pointer((*PgHdr)(unsafe.Pointer(p)).FpCache)).FbPurgeable != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 32 /* &.xUnpin */))))(tls, (*PCache)(unsafe.Pointer((*PgHdr)(unsafe.Pointer(p)).FpCache)).FpCache, (*PgHdr)(unsafe.Pointer(p)).FpPage, 0) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxUnpin})).f(tls, (*PCache)(unsafe.Pointer((*PgHdr)(unsafe.Pointer(p)).FpCache)).FpCache, (*PgHdr)(unsafe.Pointer(p)).FpPage, 0) } } @@ -27991,13 +28431,15 @@ func Xsqlite3PcacheInitialize(tls *libc.TLS) int32 { /* sqlite3.c:50072:20: */ Xsqlite3PCacheSetDefault(tls) } - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 8 /* &.xInit */))))(tls, Xsqlite3Config.Fpcache2.FpArg) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxInit})).f(tls, Xsqlite3Config.Fpcache2.FpArg) } func Xsqlite3PcacheShutdown(tls *libc.TLS) { /* sqlite3.c:50082:21: */ if Xsqlite3Config.Fpcache2.FxShutdown != 0 { // IMPLEMENTATION-OF: R-26000-56589 The xShutdown() method may be NULL. - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 12 /* &.xShutdown */))))(tls, Xsqlite3Config.Fpcache2.FpArg) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxShutdown})).f(tls, Xsqlite3Config.Fpcache2.FpArg) } } @@ -28037,15 +28479,19 @@ func Xsqlite3PcacheSetPageSize(tls *libc.TLS, pCache uintptr, szPage int32) int3 if (*PCache)(unsafe.Pointer(pCache)).FszPage != 0 { var pNew uintptr - pNew = (*(*func(*libc.TLS, int32, int32, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 16 /* &.xCreate */))))(tls, + pNew = (*struct { + f func(*libc.TLS, int32, int32, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxCreate})).f(tls, szPage, (int32(uint32((*PCache)(unsafe.Pointer(pCache)).FszExtra) + (((uint32(unsafe.Sizeof(PgHdr{}))) + uint32(7)) & libc.Uint32FromInt32(libc.CplInt32(7))))), int32((*PCache)(unsafe.Pointer(pCache)).FbPurgeable)) if pNew == uintptr(0) { return SQLITE_NOMEM } - (*(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 20 /* &.xCachesize */))))(tls, pNew, numberOfCachePages(tls, pCache)) + (*struct { + f func(*libc.TLS, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxCachesize})).f(tls, pNew, numberOfCachePages(tls, pCache)) if (*PCache)(unsafe.Pointer(pCache)).FpCache != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 44 /* &.xDestroy */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxDestroy})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) } (*PCache)(unsafe.Pointer(pCache)).FpCache = pNew (*PCache)(unsafe.Pointer(pCache)).FszPage = szPage @@ -28088,7 +28534,9 @@ func Xsqlite3PcacheFetch(tls *libc.TLS, pCache uintptr, pgno Pgno, createFlag in // (createFlag==1 AND !(bPurgeable AND pDirty) eCreate = (createFlag & int32((*PCache)(unsafe.Pointer(pCache)).FeCreate)) - pRes = (*(*func(*libc.TLS, uintptr, uint32, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 28 /* &.xFetch */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, pgno, eCreate) + pRes = (*struct { + f func(*libc.TLS, uintptr, uint32, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxFetch})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, pgno, eCreate) return pRes } @@ -28128,14 +28576,18 @@ func Xsqlite3PcacheFetchStress(tls *libc.TLS, pCache uintptr, pgno Pgno, ppPage if pPg != 0 { var rc int32 - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pCache + 36 /* &.xStress */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpStress, pPg) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*PCache)(unsafe.Pointer(pCache)).FxStress})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpStress, pPg) if (rc != SQLITE_OK) && (rc != SQLITE_BUSY) { return rc } } } - *(*uintptr)(unsafe.Pointer(ppPage)) = (*(*func(*libc.TLS, uintptr, uint32, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 28 /* &.xFetch */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, pgno, 2) + *(*uintptr)(unsafe.Pointer(ppPage)) = (*struct { + f func(*libc.TLS, uintptr, uint32, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxFetch})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, pgno, 2) if *(*uintptr)(unsafe.Pointer(ppPage)) == uintptr(0) { return SQLITE_NOMEM } @@ -28213,7 +28665,9 @@ func Xsqlite3PcacheDrop(tls *libc.TLS, p uintptr) { /* sqlite3.c:50349:21: */ pcacheManageDirtyList(tls, p, uint8(PCACHE_DIRTYLIST_REMOVE)) } (*PCache)(unsafe.Pointer((*PgHdr)(unsafe.Pointer(p)).FpCache)).FnRefSum-- - (*(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 32 /* &.xUnpin */))))(tls, (*PCache)(unsafe.Pointer((*PgHdr)(unsafe.Pointer(p)).FpCache)).FpCache, (*PgHdr)(unsafe.Pointer(p)).FpPage, 1) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxUnpin})).f(tls, (*PCache)(unsafe.Pointer((*PgHdr)(unsafe.Pointer(p)).FpCache)).FpCache, (*PgHdr)(unsafe.Pointer(p)).FpPage, 1) } // Make sure the page is marked as dirty. If it isn't dirty already, @@ -28276,7 +28730,9 @@ func Xsqlite3PcacheClearSyncFlags(tls *libc.TLS, pCache uintptr) { /* sqlite3.c: func Xsqlite3PcacheMove(tls *libc.TLS, p uintptr, newPgno Pgno) { /* sqlite3.c:50433:21: */ var pCache uintptr = (*PgHdr)(unsafe.Pointer(p)).FpCache - (*(*func(*libc.TLS, uintptr, uintptr, uint32, uint32))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 36 /* &.xRekey */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, (*PgHdr)(unsafe.Pointer(p)).FpPage, (*PgHdr)(unsafe.Pointer(p)).Fpgno, newPgno) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uint32, uint32) + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxRekey})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, (*PgHdr)(unsafe.Pointer(p)).FpPage, (*PgHdr)(unsafe.Pointer(p)).Fpgno, newPgno) (*PgHdr)(unsafe.Pointer(p)).Fpgno = newPgno if ((int32((*PgHdr)(unsafe.Pointer(p)).Fflags) & PGHDR_DIRTY) != 0) && ((int32((*PgHdr)(unsafe.Pointer(p)).Fflags) & PGHDR_NEED_SYNC) != 0) { pcacheManageDirtyList(tls, p, uint8(PCACHE_DIRTYLIST_FRONT)) @@ -28308,21 +28764,25 @@ func Xsqlite3PcacheTruncate(tls *libc.TLS, pCache uintptr, pgno Pgno) { /* sqlit } if (pgno == Pgno(0)) && ((*PCache)(unsafe.Pointer(pCache)).FnRefSum != 0) { var pPage1 uintptr - pPage1 = (*(*func(*libc.TLS, uintptr, uint32, int32) uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 28 /* &.xFetch */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, uint32(1), 0) + pPage1 = (*struct { + f func(*libc.TLS, uintptr, uint32, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxFetch})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, uint32(1), 0) if pPage1 != 0 { // Page 1 is always available in cache, because // pCache->nRefSum>0 libc.Xmemset(tls, (*Sqlite3_pcache_page)(unsafe.Pointer(pPage1)).FpBuf, 0, uint32((*PCache)(unsafe.Pointer(pCache)).FszPage)) pgno = Pgno(1) } } - (*(*func(*libc.TLS, uintptr, uint32))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 40 /* &.xTruncate */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, (pgno + Pgno(1))) + (*struct { + f func(*libc.TLS, uintptr, uint32) + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxTruncate})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, (pgno + Pgno(1))) } } // Close a cache. func Xsqlite3PcacheClose(tls *libc.TLS, pCache uintptr) { /* sqlite3.c:50488:21: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 44 /* &.xDestroy */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxDestroy})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) } // Discard the contents of the cache. @@ -28438,7 +28898,9 @@ func Xsqlite3PcachePageRefcount(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:5 // Return the total number of pages in the cache. func Xsqlite3PcachePagecount(tls *libc.TLS, pCache uintptr) int32 { /* sqlite3.c:50605:20: */ - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 24 /* &.xPagecount */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxPagecount})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) } // Get the suggested cache-size value. @@ -28450,7 +28912,9 @@ func Xsqlite3PcacheGetCachesize(tls *libc.TLS, pCache uintptr) int32 { /* sqlite func Xsqlite3PcacheSetCachesize(tls *libc.TLS, pCache uintptr, mxPage int32) { /* sqlite3.c:50622:21: */ (*PCache)(unsafe.Pointer(pCache)).FszCache = mxPage - (*(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 20 /* &.xCachesize */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, + (*struct { + f func(*libc.TLS, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxCachesize})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache, numberOfCachePages(tls, pCache)) } @@ -28476,7 +28940,7 @@ func Xsqlite3PcacheSetSpillsize(tls *libc.TLS, p uintptr, mxPage int32) int32 { // Free up as much memory as possible from the page cache. func Xsqlite3PcacheShrink(tls *libc.TLS, pCache uintptr) { /* sqlite3.c:50651:21: */ - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3Config)) + 100 /* &.pcache2 */ + 48 /* &.xShrink */))))(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{Xsqlite3Config.Fpcache2.FxShrink})).f(tls, (*PCache)(unsafe.Pointer(pCache)).FpCache) } // Return the size of the header added by this middleware layer @@ -30158,7 +30622,7 @@ type Wal1 = struct { FsyncHeader U8 FpadToSectorBoundary U8 FbShmUnreliable U8 - _ [1]byte + F__ccgo_pad1 [1]byte Fhdr WalIndexHdr FminFrame U32 FiReCksum U32 @@ -32233,7 +32697,7 @@ func pager_playback_one_page(tls *libc.TLS, pPager uintptr, pOffset uintptr, pDo var pData uintptr pData = (*PgHdr)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 8 /* pPg */)))).FpData libc.Xmemcpy(tls, pData, aData, uint32((*Pager)(unsafe.Pointer(pPager)).FpageSize)) - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pPager + 200 /* &.xReiniter */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* pPg */))) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Pager)(unsafe.Pointer(pPager)).FxReiniter})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* pPg */))) // It used to be that sqlite3PcacheMakeClean(pPg) was called here. But // that call was dangerous and had no detectable benefit since the cache // is normally cleaned by sqlite3PcacheCleanAll() after rollback and so @@ -32854,7 +33318,7 @@ __26: if !((isHot != 0) && (nPlayback != 0)) { goto __27 } - Xsqlite3_log(tls, (SQLITE_NOTICE | (int32(2) << 8)), ts+5794, /* "recovered %d pag..." */ + Xsqlite3_log(tls, (SQLITE_NOTICE | (int32(2) << 8)), ts+5804, /* "recovered %d pag..." */ libc.VaList(bp, nPlayback, (*Pager)(unsafe.Pointer(pPager)).FzJournal)) __27: ; @@ -32968,7 +33432,7 @@ func pagerUndoCallback(tls *libc.TLS, pCtx uintptr, iPg Pgno) int32 { /* sqlite3 } else { rc = readDbPage(tls, pPg) if rc == SQLITE_OK { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pPager + 200 /* &.xReiniter */))))(tls, pPg) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Pager)(unsafe.Pointer(pPager)).FxReiniter})).f(tls, pPg) } Xsqlite3PagerUnrefNotNull(tls, pPg) } @@ -33707,7 +34171,9 @@ func pager_wait_on_lock(tls *libc.TLS, pPager uintptr, locktype int32) int32 { / // may be invoked during, according to the comment above // sqlite3PagerSetBusyhandler(). - for ok := true; ok; ok = ((rc == SQLITE_BUSY) && ((*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pPager + 172 /* &.xBusyHandler */))))(tls, (*Pager)(unsafe.Pointer(pPager)).FpBusyHandlerArg) != 0)) { + for ok := true; ok; ok = ((rc == SQLITE_BUSY) && ((*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Pager)(unsafe.Pointer(pPager)).FxBusyHandler})).f(tls, (*Pager)(unsafe.Pointer(pPager)).FpBusyHandlerArg) != 0)) { rc = pagerLockDb(tls, pPager, locktype) } return rc @@ -34623,7 +35089,7 @@ __15: (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FzJournal = pPtr libc.Xmemcpy(tls, pPtr, zPathname, uint32(nPathname)) pPtr += uintptr(nPathname) - libc.Xmemcpy(tls, pPtr, ts+5821 /* "-journal" */, uint32(8)) + libc.Xmemcpy(tls, pPtr, ts+5831 /* "-journal" */, uint32(8)) pPtr += (uintptr(8 + 1)) goto __19 __18: @@ -34638,7 +35104,7 @@ __19: (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FzWal = pPtr libc.Xmemcpy(tls, pPtr, zPathname, uint32(nPathname)) pPtr += uintptr(nPathname) - libc.Xmemcpy(tls, pPtr, ts+5830 /* "-wal" */, uint32(4)) + libc.Xmemcpy(tls, pPtr, ts+5840 /* "-wal" */, uint32(4)) pPtr += (uintptr(4 + 1)) goto __21 __20: @@ -34697,9 +35163,9 @@ __27: ; __26: ; - (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FnoLock = U8(Xsqlite3_uri_boolean(tls, (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FzFilename, ts+5835 /* "nolock" */, 0)) + (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FnoLock = U8(Xsqlite3_uri_boolean(tls, (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FzFilename, ts+5845 /* "nolock" */, 0)) if !(((iDc & SQLITE_IOCAP_IMMUTABLE) != 0) || - (Xsqlite3_uri_boolean(tls, (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FzFilename, ts+5842 /* "immutable" */, 0) != 0)) { + (Xsqlite3_uri_boolean(tls, (*Pager)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPager */)))).FzFilename, ts+5852 /* "immutable" */, 0) != 0)) { goto __30 } vfsFlags = vfsFlags | (SQLITE_OPEN_READONLY) @@ -35518,7 +35984,9 @@ func getPageError(tls *libc.TLS, pPager uintptr, pgno Pgno, ppPage uintptr, flag // Dispatch all page fetch requests to the appropriate getter method. func Xsqlite3PagerGet(tls *libc.TLS, pPager uintptr, pgno Pgno, ppPage uintptr, flags int32) int32 { /* sqlite3.c:58297:20: */ - return (*(*func(*libc.TLS, uintptr, Pgno, uintptr, int32) int32)(unsafe.Pointer((pPager + 204 /* &.xGet */))))(tls, pPager, pgno, ppPage, flags) + return (*struct { + f func(*libc.TLS, uintptr, Pgno, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Pager)(unsafe.Pointer(pPager)).FxGet})).f(tls, pPager, pgno, ppPage, flags) } // Acquire a page if it is already in the in-memory cache. Do @@ -37881,13 +38349,13 @@ func walIndexPageRealloc(tls *libc.TLS, pWal uintptr, iPage int32, ppPage uintpt var nByte Sqlite3_int64 = (Sqlite3_int64(uint32(unsafe.Sizeof(uintptr(0))) * (uint32(iPage + 1)))) var apNew uintptr libc.AtomicStoreUintptr(&apNew, uintptr(Xsqlite3Realloc(tls, (*Wal)(unsafe.Pointer(pWal)).FapWiData, uint64(nByte)))) - if !(libc.AtomicLoadUintptr(&apNew) != 0) { - *(*uintptr)(unsafe.Pointer(libc.AtomicLoadUintptr(&ppPage))) = uintptr(0) + if !(apNew != 0) { + *(*uintptr)(unsafe.Pointer(ppPage)) = uintptr(0) return SQLITE_NOMEM } - libc.Xmemset(tls, (libc.AtomicLoadUintptr(&apNew) + uintptr((*Wal)(unsafe.Pointer(pWal)).FnWiData)*4), 0, + libc.Xmemset(tls, (apNew + uintptr((*Wal)(unsafe.Pointer(pWal)).FnWiData)*4), 0, (uint32(unsafe.Sizeof(uintptr(0))) * (uint32((iPage + 1) - (*Wal)(unsafe.Pointer(pWal)).FnWiData)))) - (*Wal)(unsafe.Pointer(pWal)).FapWiData = libc.AtomicLoadUintptr(&apNew) + (*Wal)(unsafe.Pointer(pWal)).FapWiData = apNew (*Wal)(unsafe.Pointer(pWal)).FnWiData = (iPage + 1) } @@ -37914,14 +38382,14 @@ func walIndexPageRealloc(tls *libc.TLS, pWal uintptr, iPage int32, ppPage uintpt } } - *(*uintptr)(unsafe.Pointer(libc.AtomicLoadUintptr(&ppPage))) = *(*uintptr)(unsafe.Pointer((*Wal)(unsafe.Pointer(pWal)).FapWiData + uintptr(iPage)*4)) + *(*uintptr)(unsafe.Pointer(ppPage)) = *(*uintptr)(unsafe.Pointer((*Wal)(unsafe.Pointer(pWal)).FapWiData + uintptr(iPage)*4)) return rc } func walIndexPage(tls *libc.TLS, pWal uintptr, iPage int32, ppPage uintptr) int32 { /* sqlite3.c:60962:12: */ - if ((*Wal)(unsafe.Pointer(pWal)).FnWiData <= iPage) || ((libc.AssignPtrUintptr(libc.AtomicLoadUintptr(&ppPage), *(*uintptr)(unsafe.Pointer((*Wal)(unsafe.Pointer(pWal)).FapWiData + uintptr(iPage)*4)))) == uintptr(0)) { - return walIndexPageRealloc(tls, pWal, iPage, libc.AtomicLoadUintptr(&ppPage)) + if ((*Wal)(unsafe.Pointer(pWal)).FnWiData <= iPage) || ((libc.AssignPtrUintptr(ppPage, *(*uintptr)(unsafe.Pointer((*Wal)(unsafe.Pointer(pWal)).FapWiData + uintptr(iPage)*4)))) == uintptr(0)) { + return walIndexPageRealloc(tls, pWal, iPage, ppPage) } return SQLITE_OK } @@ -38006,9 +38474,9 @@ func walIndexWriteHdr(tls *libc.TLS, pWal uintptr) { /* sqlite3.c:61077:28: */ (*Wal)(unsafe.Pointer(pWal)).Fhdr.FiVersion = U32(WALINDEX_MAX_VERSION) walChecksumBytes(tls, 1, (pWal + 52 /* &.hdr */), nCksum, uintptr(0), pWal+52 /* &.hdr */ +40 /* &.aCksum */) // Possible TSAN false-positive. See tag-20200519-1 - libc.Xmemcpy(tls, (libc.AtomicLoadUintptr(&aHdr) + 1*48), (pWal + 52 /* &.hdr */), uint32(unsafe.Sizeof(WalIndexHdr{}))) + libc.Xmemcpy(tls, (aHdr + 1*48), (pWal + 52 /* &.hdr */), uint32(unsafe.Sizeof(WalIndexHdr{}))) walShmBarrier(tls, pWal) - libc.Xmemcpy(tls, (libc.AtomicLoadUintptr(&aHdr)), (pWal + 52 /* &.hdr */), uint32(unsafe.Sizeof(WalIndexHdr{}))) + libc.Xmemcpy(tls, (aHdr), (pWal + 52 /* &.hdr */), uint32(unsafe.Sizeof(WalIndexHdr{}))) } // This function encodes a single frame header and writes it to a buffer @@ -38570,9 +39038,9 @@ finished: // currently holding locks that exclude all other writers and // checkpointers. Then set the values of read-mark slots 1 through N. libc.AtomicStoreUintptr(&pInfo, uintptr(walCkptInfo(tls, pWal))) - (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfill = U32(0) - (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfillAttempted = (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame - *(*U32)(unsafe.Pointer((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */))) = U32(0) + (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfill = U32(0) + (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfillAttempted = (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame + *(*U32)(unsafe.Pointer((pInfo + 4 /* &.aReadMark */))) = U32(0) i = 1 __22: if !(i < (SQLITE_SHM_NLOCK - 3)) { @@ -38585,10 +39053,10 @@ __22: if !((i == 1) && ((*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame != 0)) { goto __27 } - *(*U32)(unsafe.Pointer((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + uintptr(i)*4)) = (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame + *(*U32)(unsafe.Pointer((pInfo + 4 /* &.aReadMark */) + uintptr(i)*4)) = (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame goto __28 __27: - *(*U32)(unsafe.Pointer((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + uintptr(i)*4)) = READMARK_NOT_USED + *(*U32)(unsafe.Pointer((pInfo + 4 /* &.aReadMark */) + uintptr(i)*4)) = READMARK_NOT_USED __28: ; walUnlockExclusive(tls, pWal, (3 + (i)), 1) @@ -38618,7 +39086,7 @@ __24: goto __30 } Xsqlite3_log(tls, (SQLITE_NOTICE | (int32(1) << 8)), - ts+5852, /* "recovered %d fra..." */ + ts+5862, /* "recovered %d fra..." */ libc.VaList(bp, (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame, (*Wal)(unsafe.Pointer(pWal)).FzWalName)) __30: ; @@ -38978,7 +39446,9 @@ func walIteratorInit(tls *libc.TLS, pWal uintptr, nBackfill U32, pp uintptr) int // lock is successfully obtained or the busy-handler returns 0. func walBusyLock(tls *libc.TLS, pWal uintptr, xBusy uintptr, pBusyArg uintptr, lockIdx int32, n int32) int32 { /* sqlite3.c:62195:12: */ var rc int32 - for ok := true; ok; ok = (((xBusy != 0) && (rc == SQLITE_BUSY)) && ((*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(&xBusy)))(tls, pBusyArg) != 0)) { + for ok := true; ok; ok = (((xBusy != 0) && (rc == SQLITE_BUSY)) && ((*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xBusy})).f(tls, pBusyArg) != 0)) { rc = walLockExclusive(tls, pWal, lockIdx, n) } return rc @@ -39018,11 +39488,11 @@ func walRestartHdr(tls *libc.TLS, pWal uintptr, salt1 U32) { /* sqlite3.c:62240: Xsqlite3Put4byte(tls, (aSalt), (U32(1) + Xsqlite3Get4byte(tls, (aSalt)))) libc.Xmemcpy(tls, ((pWal + 52 /* &.hdr */ + 32 /* &.aSalt */) + 1*4), bp /* &salt1 */, uint32(4)) walIndexWriteHdr(tls, pWal) - libc.AtomicStoreNInt32((libc.AtomicLoadUintptr(&pInfo) /* &.nBackfill */), int32(0), 0) - (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfillAttempted = U32(0) - *(*U32)(unsafe.Pointer((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + 1*4)) = U32(0) + libc.AtomicStoreNInt32((pInfo /* &.nBackfill */), int32(0), 0) + (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfillAttempted = U32(0) + *(*U32)(unsafe.Pointer((pInfo + 4 /* &.aReadMark */) + 1*4)) = U32(0) for i = 2; i < (SQLITE_SHM_NLOCK - 3); i++ { - *(*U32)(unsafe.Pointer((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + uintptr(i)*4)) = READMARK_NOT_USED + *(*U32)(unsafe.Pointer((pInfo + 4 /* &.aReadMark */) + uintptr(i)*4)) = READMARK_NOT_USED } } @@ -39090,7 +39560,7 @@ func walCheckpoint(tls *libc.TLS, pWal uintptr, db uintptr, eMode int32, xBusy u szPage = walPagesize(tls, pWal) libc.AtomicStoreUintptr(&pInfo, uintptr(walCkptInfo(tls, pWal))) - if !((*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfill < (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame) { + if !((*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfill < (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame) { goto __1 } @@ -39108,7 +39578,7 @@ __2: if !(i < (SQLITE_SHM_NLOCK - 3)) { goto __4 } - y = U32(libc.AtomicLoadNUint32(((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + uintptr(i)*4), 0)) + y = U32(libc.AtomicLoadNUint32(((pInfo + 4 /* &.aReadMark */) + uintptr(i)*4), 0)) if !(mxSafeFrame > y) { goto __5 } @@ -39123,7 +39593,7 @@ __2: } return READMARK_NOT_USED }() - libc.AtomicStoreNUint32(((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + uintptr(i)*4), uint32(iMark), 0) + libc.AtomicStoreNUint32(((pInfo + 4 /* &.aReadMark */) + uintptr(i)*4), uint32(iMark), 0) walUnlockExclusive(tls, pWal, (3 + (i)), 1) goto __7 __6: @@ -39150,10 +39620,10 @@ __4: ; // Allocate the iterator - if !((*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfill < mxSafeFrame) { + if !((*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfill < mxSafeFrame) { goto __10 } - rc = walIteratorInit(tls, pWal, (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfill, bp /* &pIter */) + rc = walIteratorInit(tls, pWal, (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfill, bp /* &pIter */) __10: ; @@ -39162,9 +39632,9 @@ __10: ((libc.AssignInt32(&rc, walBusyLock(tls, pWal, xBusy, pBusyArg, (3+(0)), 1))) == SQLITE_OK)) { goto __11 } - nBackfill = (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfill + nBackfill = (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfill - (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfillAttempted = mxSafeFrame + (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfillAttempted = mxSafeFrame // Sync the WAL to disk rc = Xsqlite3OsSync(tls, (*Wal)(unsafe.Pointer(pWal)).FpWalFd, (((sync_flags) >> 2) & 0x03)) @@ -39266,7 +39736,7 @@ __23: if !(rc == SQLITE_OK) { goto __25 } - libc.AtomicStoreNUint32((libc.AtomicLoadUintptr(&pInfo) /* &.nBackfill */), uint32(mxSafeFrame), 0) + libc.AtomicStoreNUint32((pInfo /* &.nBackfill */), uint32(mxSafeFrame), 0) __25: ; __22: @@ -39296,7 +39766,7 @@ __1: goto __27 } - if !((*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfill < (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame) { + if !((*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfill < (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame) { goto __28 } rc = SQLITE_BUSY @@ -39362,7 +39832,7 @@ func walLimitSize(tls *libc.TLS, pWal uintptr, nMax I64) { /* sqlite3.c:62473:13 } Xsqlite3EndBenignMalloc(tls) if rx != 0 { - Xsqlite3_log(tls, rx, ts+5889 /* "cannot limit WAL..." */, libc.VaList(bp, (*Wal)(unsafe.Pointer(pWal)).FzWalName)) + Xsqlite3_log(tls, rx, ts+5899 /* "cannot limit WAL..." */, libc.VaList(bp, (*Wal)(unsafe.Pointer(pWal)).FzWalName)) } } @@ -39469,9 +39939,9 @@ func walIndexTryHdr(tls *libc.TLS, pWal uintptr, pChanged uintptr) int32 { /* sq // shared among multiple processes and not all mutex implementions work // reliably in that environment. libc.AtomicStoreUintptr(&aHdr, uintptr(walIndexHdr(tls, pWal))) - libc.Xmemcpy(tls, bp /* &h1 */, (libc.AtomicLoadUintptr(&aHdr)), uint32(unsafe.Sizeof(WalIndexHdr{}))) // Possible TSAN false-positive + libc.Xmemcpy(tls, bp /* &h1 */, (aHdr), uint32(unsafe.Sizeof(WalIndexHdr{}))) // Possible TSAN false-positive walShmBarrier(tls, pWal) - libc.Xmemcpy(tls, bp+48 /* &h2 */, (libc.AtomicLoadUintptr(&aHdr) + 1*48), uint32(unsafe.Sizeof(WalIndexHdr{}))) + libc.Xmemcpy(tls, bp+48 /* &h2 */, (aHdr + 1*48), uint32(unsafe.Sizeof(WalIndexHdr{}))) if (libc.Xmemcmp(tls, bp /* &h1 */, bp+48 /* &h2 */, uint32(unsafe.Sizeof(WalIndexHdr{}))) != 0) { return 1 // Dirty read @@ -39548,7 +40018,7 @@ func walIndexReadHdr(tls *libc.TLS, pWal uintptr, pChanged uintptr) int32 { /* s // works, but may fail if the wal-index header is corrupt or currently // being modified by another thread or process. badHdr = func() int32 { - if libc.AtomicLoadPUintptr(bp /* page0 */) != 0 { + if *(*uintptr)(unsafe.Pointer(bp /* page0 */)) != 0 { return walIndexTryHdr(tls, pWal, pChanged) } return 1 @@ -39974,7 +40444,7 @@ func walTryBeginRead(tls *libc.TLS, pWal uintptr, pChanged uintptr, useWal int32 } libc.AtomicStoreUintptr(&pInfo, uintptr(walCkptInfo(tls, pWal))) - if (!(useWal != 0) && (U32(libc.AtomicLoadNUint32((libc.AtomicLoadUintptr(&pInfo) /* &.nBackfill */), 0)) == (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame)) && + if (!(useWal != 0) && (U32(libc.AtomicLoadNUint32((pInfo /* &.nBackfill */), 0)) == (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame)) && (((*Wal)(unsafe.Pointer(pWal)).FpSnapshot == uintptr(0)) || ((*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame == U32(0))) { // The WAL has been completely backfilled (or it is empty). // and can be safely ignored. @@ -40015,7 +40485,7 @@ func walTryBeginRead(tls *libc.TLS, pWal uintptr, pChanged uintptr, useWal int32 mxFrame = (*WalIndexHdr)(unsafe.Pointer((*Wal)(unsafe.Pointer(pWal)).FpSnapshot)).FmxFrame } for i = 1; i < (SQLITE_SHM_NLOCK - 3); i++ { - var thisMark U32 = U32(libc.AtomicLoadNUint32(((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + uintptr(i)*4), 0)) + var thisMark U32 = U32(libc.AtomicLoadNUint32(((pInfo + 4 /* &.aReadMark */) + uintptr(i)*4), 0)) if (mxReadMark <= thisMark) && (thisMark <= mxFrame) { mxReadMark = thisMark @@ -40027,7 +40497,7 @@ func walTryBeginRead(tls *libc.TLS, pWal uintptr, pChanged uintptr, useWal int32 for i = 1; i < (SQLITE_SHM_NLOCK - 3); i++ { rc = walLockExclusive(tls, pWal, (3 + (i)), 1) if rc == SQLITE_OK { - libc.AtomicStoreNUint32(((libc.AtomicLoadUintptr(&pInfo) + 4 /* &.aReadMark */) + uintptr(i)*4), uint32(mxFrame), 0) + libc.AtomicStoreNUint32(((pInfo + 4 /* &.aReadMark */) + uintptr(i)*4), uint32(mxFrame), 0) mxReadMark = mxFrame mxI = i walUnlockExclusive(tls, pWal, (3 + (i)), 1) @@ -40085,9 +40555,9 @@ func walTryBeginRead(tls *libc.TLS, pWal uintptr, pChanged uintptr, useWal int32 // that it can read version A from the database file. However, since // we can guarantee that the checkpointer that set nBackfill could not // see any pages past pWal->hdr.mxFrame, this problem does not come up. - (*Wal)(unsafe.Pointer(pWal)).FminFrame = (U32(libc.AtomicLoadNUint32((libc.AtomicLoadUintptr(&pInfo) /* &.nBackfill */), 0) + 1)) + (*Wal)(unsafe.Pointer(pWal)).FminFrame = (U32(libc.AtomicLoadNUint32((pInfo /* &.nBackfill */), 0) + 1)) walShmBarrier(tls, pWal) - if (U32(libc.AtomicLoadNUint32(((libc.AtomicLoadUintptr(&pInfo)+4 /* &.aReadMark */)+uintptr(mxI)*4), 0)) != mxReadMark) || + if (U32(libc.AtomicLoadNUint32(((pInfo+4 /* &.aReadMark */)+uintptr(mxI)*4), 0)) != mxReadMark) || (libc.Xmemcmp(tls, walIndexHdr(tls, pWal), (pWal+52 /* &.hdr */), uint32(unsafe.Sizeof(WalIndexHdr{}))) != 0) { walUnlockShared(tls, pWal, (3 + (mxI))) return -1 @@ -40135,8 +40605,8 @@ func Xsqlite3WalSnapshotRecover(tls *libc.TLS, pWal uintptr) int32 { /* sqlite3. if (pBuf1 == uintptr(0)) || (pBuf2 == uintptr(0)) { rc = SQLITE_NOMEM } else { - var i U32 = (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfillAttempted - for i = (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfillAttempted; i > U32(libc.AtomicLoadNUint32((libc.AtomicLoadUintptr(&pInfo) /* &.nBackfill */), 0)); i-- { + var i U32 = (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfillAttempted + for i = (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfillAttempted; i > U32(libc.AtomicLoadNUint32((pInfo /* &.nBackfill */), 0)); i-- { // var sLoc WalHashLoc at bp+8, 12 // Hash table location var pgno U32 // Page number in db file @@ -40163,7 +40633,7 @@ func Xsqlite3WalSnapshotRecover(tls *libc.TLS, pWal uintptr) int32 { /* sqlite3. } } - (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfillAttempted = (i - U32(1)) + (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfillAttempted = (i - U32(1)) } } @@ -40243,7 +40713,7 @@ func Xsqlite3WalBeginReadTransaction(tls *libc.TLS, pWal uintptr, pChanged uintp // with *pSnapshot and set *pChanged as appropriate for opening the // snapshot. if !(libc.Xmemcmp(tls, pSnapshot+32 /* &.aSalt */, pWal+52 /* &.hdr */ +32 /* &.aSalt */, uint32(unsafe.Sizeof([2]U32{}))) != 0) && - ((*WalIndexHdr)(unsafe.Pointer(pSnapshot)).FmxFrame >= (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfillAttempted) { + ((*WalIndexHdr)(unsafe.Pointer(pSnapshot)).FmxFrame >= (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfillAttempted) { libc.Xmemcpy(tls, (pWal + 52 /* &.hdr */), pSnapshot, uint32(unsafe.Sizeof(WalIndexHdr{}))) *(*int32)(unsafe.Pointer(pChanged)) = bChanged @@ -40482,7 +40952,9 @@ func Xsqlite3WalUndo(tls *libc.TLS, pWal uintptr, xUndo uintptr, pUndoCtx uintpt // page 1 is never written to the log until the transaction is // committed. As a result, the call to xUndo may not fail. - rc = (*(*func(*libc.TLS, uintptr, Pgno) int32)(unsafe.Pointer(&xUndo)))(tls, pUndoCtx, walFramePgno(tls, pWal, iFrame)) + rc = (*struct { + f func(*libc.TLS, uintptr, Pgno) int32 + })(unsafe.Pointer(&struct{ uintptr }{xUndo})).f(tls, pUndoCtx, walFramePgno(tls, pWal, iFrame)) } if iMax != (*Wal)(unsafe.Pointer(pWal)).Fhdr.FmxFrame { walCleanupHash(tls, pWal) @@ -40548,7 +41020,7 @@ func walRestartLog(tls *libc.TLS, pWal uintptr) int32 { /* sqlite3.c:63690:12: * if int32((*Wal)(unsafe.Pointer(pWal)).FreadLock) == 0 { var pInfo uintptr = walCkptInfo(tls, pWal) - if (*WalCkptInfo)(unsafe.Pointer(libc.AtomicLoadUintptr(&pInfo))).FnBackfill > U32(0) { + if (*WalCkptInfo)(unsafe.Pointer(pInfo)).FnBackfill > U32(0) { // var salt1 U32 at bp, 4 Xsqlite3_randomness(tls, 4, bp /* &salt1 */) @@ -41458,7 +41930,7 @@ type MemPage1 = struct { FchildPtrSize U8 Fmax1bytePayload U8 FnOverflow U8 - _ [1]byte + F__ccgo_pad1 [1]byte FmaxLocal U16 FminLocal U16 FcellOffset U16 @@ -41722,11 +42194,11 @@ type MemPage1 = struct { // Forward declarations type MemPage = MemPage1 /* sqlite3.c:64658:24 */ type BtLock1 = struct { - FpBtree uintptr - FiTable Pgno - FeLock U8 - _ [3]byte - FpNext uintptr + FpBtree uintptr + FiTable Pgno + FeLock U8 + F__ccgo_pad1 [3]byte + FpNext uintptr } /* sqlite3.c:1331:9 */ type BtLock = BtLock1 /* sqlite3.c:64659:23 */ @@ -42141,7 +42613,7 @@ func Xsqlite3BtreeLeaveCursor(tls *libc.TLS, pCur uintptr) { /* sqlite3.c:65443: // The header string that appears at the beginning of every // SQLite database. -var zMagicHeader = *(*[16]int8)(unsafe.Pointer(ts + 5915 /* "SQLite format 3" */)) /* sqlite3.c:65474:19 */ +var zMagicHeader = *(*[16]int8)(unsafe.Pointer(ts + 5925 /* "SQLite format 3" */)) /* sqlite3.c:65474:19 */ // Set this global variable to 1 to enable tracing using the TRACE // macro. @@ -43072,7 +43544,9 @@ func btreeParseCellPtrIndex(tls *libc.TLS, pPage uintptr, pCell uintptr, pInfo u } func btreeParseCell(tls *libc.TLS, pPage uintptr, iCell int32, pInfo uintptr) { /* sqlite3.c:66752:13: */ - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pPage + 80 /* &.xParseCell */))))(tls, pPage, ((*MemPage)(unsafe.Pointer((pPage))).FaData + uintptr((int32((*MemPage)(unsafe.Pointer((pPage))).FmaskPage) & int32(libc.X__builtin_bswap16(tls, *(*U16)(unsafe.Pointer(((*MemPage)(unsafe.Pointer((pPage))).FaCellIdx + uintptr((2 * (iCell))))))))))), pInfo) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxParseCell})).f(tls, pPage, ((*MemPage)(unsafe.Pointer((pPage))).FaData + uintptr((int32((*MemPage)(unsafe.Pointer((pPage))).FmaskPage) & int32(libc.X__builtin_bswap16(tls, *(*U16)(unsafe.Pointer(((*MemPage)(unsafe.Pointer((pPage))).FaCellIdx + uintptr((2 * (iCell))))))))))), pInfo) } // The following routines are implementations of the MemPage.xCellSize @@ -43153,7 +43627,9 @@ func ptrmapPutOvflPtr(tls *libc.TLS, pPage uintptr, pSrc uintptr, pCell uintptr, return } - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pPage + 80 /* &.xParseCell */))))(tls, pPage, pCell, bp /* &info */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxParseCell})).f(tls, pPage, pCell, bp /* &info */) if U32((*CellInfo)(unsafe.Pointer(bp /* &info */)).FnLocal) < (*CellInfo)(unsafe.Pointer(bp /* &info */)).FnPayload { var ovfl Pgno if (Uptr(((*MemPage)(unsafe.Pointer(pSrc)).FaDataEnd)) >= Uptr((pCell))) && (Uptr(((*MemPage)(unsafe.Pointer(pSrc)).FaDataEnd)) < Uptr((pCell + uintptr((*CellInfo)(unsafe.Pointer(bp /* &info */)).FnLocal)))) { @@ -43336,7 +43812,9 @@ __18: __21: ; - size = int32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((pPage + 76 /* &.xCellSize */))))(tls, pPage, (src + uintptr(pc)))) + size = int32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxCellSize})).f(tls, pPage, (src + uintptr(pc)))) cbrk = cbrk - (size) if !((cbrk < iCellStart) || ((pc + size) > usableSize)) { goto __22 @@ -43826,7 +44304,9 @@ func btreeCellSizeCheck(tls *libc.TLS, pPage uintptr) int32 { /* sqlite3.c:67431 if (pc < iCellFirst) || (pc > iCellLast) { return Xsqlite3CorruptError(tls, 67452) } - sz = int32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((pPage + 76 /* &.xCellSize */))))(tls, pPage, (data + uintptr(pc)))) + sz = int32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxCellSize})).f(tls, pPage, (data + uintptr(pc)))) if (pc + sz) > usableSize { return Xsqlite3CorruptError(tls, 67457) @@ -44181,7 +44661,7 @@ func Xsqlite3BtreeOpen(tls *libc.TLS, pVfs uintptr, zFilename uintptr, db uintpt mutexOpen = uintptr(0) rc = SQLITE_OK isTempDb = (libc.Bool32((zFilename == uintptr(0)) || (int32(*(*int8)(unsafe.Pointer(zFilename))) == 0))) - isMemdb = (libc.Bool32((((zFilename != 0) && (libc.Xstrcmp(tls, zFilename, ts+5931 /* ":memory:" */) == 0)) || + isMemdb = (libc.Bool32((((zFilename != 0) && (libc.Xstrcmp(tls, zFilename, ts+5941 /* ":memory:" */) == 0)) || ((isTempDb != 0) && (Xsqlite3TempInMemory(tls, db) != 0))) || ((vfsFlags & SQLITE_OPEN_MEMORY) != 0))) @@ -44664,7 +45144,7 @@ func Xsqlite3BtreeClose(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:68190:20: Xsqlite3PagerClose(tls, (*BtShared)(unsafe.Pointer(pBt)).FpPager, (*Btree)(unsafe.Pointer(p)).Fdb) if ((*BtShared)(unsafe.Pointer(pBt)).FxFreeSchema != 0) && ((*BtShared)(unsafe.Pointer(pBt)).FpSchema != 0) { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pBt + 56 /* &.xFreeSchema */))))(tls, (*BtShared)(unsafe.Pointer(pBt)).FpSchema) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*BtShared)(unsafe.Pointer(pBt)).FxFreeSchema})).f(tls, (*BtShared)(unsafe.Pointer(pBt)).FpSchema) } Xsqlite3DbFree(tls, uintptr(0), (*BtShared)(unsafe.Pointer(pBt)).FpSchema) freeTempSpace(tls, pBt) @@ -45055,7 +45535,7 @@ __10: // // The original design allowed these amounts to vary, but as of // version 3.6.0, we require them to be fixed. - if !(libc.Xmemcmp(tls, (page1+21), ts+5940 /* "@ " */, uint32(3)) != 0) { + if !(libc.Xmemcmp(tls, (page1+21), ts+5950 /* "@ " */, uint32(3)) != 0) { goto __14 } goto page1_init_failed @@ -45618,7 +46098,9 @@ func modifyPagePointer(tls *libc.TLS, pPage uintptr, iFrom Pgno, iTo Pgno, eType if int32(eType) == PTRMAP_OVERFLOW1 { // var info CellInfo at bp, 20 - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pPage + 80 /* &.xParseCell */))))(tls, pPage, pCell, bp /* &info */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxParseCell})).f(tls, pPage, pCell, bp /* &info */) if U32((*CellInfo)(unsafe.Pointer(bp /* &info */)).FnLocal) < (*CellInfo)(unsafe.Pointer(bp /* &info */)).FnPayload { if (pCell + uintptr((*CellInfo)(unsafe.Pointer(bp /* &info */)).FnSize)) > ((*MemPage)(unsafe.Pointer(pPage)).FaData + uintptr((*BtShared)(unsafe.Pointer((*MemPage)(unsafe.Pointer(pPage)).FpBt)).FusableSize)) { return Xsqlite3CorruptError(tls, 69109) @@ -47424,7 +47906,9 @@ __35: // Size of the pCell cell in bytes // single byte varint and the record fits entirely on the main // b-tree page. - c = (*(*func(*libc.TLS, int32, uintptr, uintptr) int32)(unsafe.Pointer(&xRecordCompare)))(tls, nCell, (pCell + 1), pIdxKey) + c = (*struct { + f func(*libc.TLS, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xRecordCompare})).f(tls, nCell, (pCell + 1), pIdxKey) goto __39 __38: if !(!((int32(*(*U8)(unsafe.Pointer(pCell + 1))) & 0x80) != 0) && @@ -47434,12 +47918,16 @@ __38: // The record-size field is a 2 byte varint and the record // fits entirely on the main b-tree page. - c = (*(*func(*libc.TLS, int32, uintptr, uintptr) int32)(unsafe.Pointer(&xRecordCompare)))(tls, nCell, (pCell + 2), pIdxKey) + c = (*struct { + f func(*libc.TLS, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xRecordCompare})).f(tls, nCell, (pCell + 2), pIdxKey) goto __41 __40: pCellBody = (pCell - uintptr((*MemPage)(unsafe.Pointer(pPage)).FchildPtrSize)) nOverrun = 18 // Size of the overrun padding - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pPage + 80 /* &.xParseCell */))))(tls, pPage, pCellBody, (pCur + 28 /* &.info */)) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxParseCell})).f(tls, pPage, pCellBody, (pCur + 28 /* &.info */)) nCell = int32((*BtCursor)(unsafe.Pointer(pCur)).Finfo.FnKey) // True if key size is 2^32 or more // Invalid key size: 0x80 0x80 0x00 @@ -49103,7 +49591,9 @@ func populateCellCache(tls *libc.TLS, p uintptr, idx int32, N int32) { /* sqlite for N > 0 { if int32(*(*U16)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FszCell + uintptr(idx)*2))) == 0 { - *(*U16)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FszCell + uintptr(idx)*2)) = (*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer(((*CellArray)(unsafe.Pointer(p)).FpRef + 76 /* &.xCellSize */))))(tls, (*CellArray)(unsafe.Pointer(p)).FpRef, *(*uintptr)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FapCell + uintptr(idx)*4))) + *(*U16)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FszCell + uintptr(idx)*2)) = (*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FpRef)).FxCellSize})).f(tls, (*CellArray)(unsafe.Pointer(p)).FpRef, *(*uintptr)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FapCell + uintptr(idx)*4))) } else { } @@ -49115,7 +49605,9 @@ func populateCellCache(tls *libc.TLS, p uintptr, idx int32, N int32) { /* sqlite // Return the size of the Nth element of the cell array func computeCellSize(tls *libc.TLS, p uintptr, N int32) U16 { /* sqlite3.c:72424:28: */ - *(*U16)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FszCell + uintptr(N)*2)) = (*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer(((*CellArray)(unsafe.Pointer(p)).FpRef + 76 /* &.xCellSize */))))(tls, (*CellArray)(unsafe.Pointer(p)).FpRef, *(*uintptr)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FapCell + uintptr(N)*4))) + *(*U16)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FszCell + uintptr(N)*2)) = (*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FpRef)).FxCellSize})).f(tls, (*CellArray)(unsafe.Pointer(p)).FpRef, *(*uintptr)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FapCell + uintptr(N)*4))) return *(*U16)(unsafe.Pointer((*CellArray)(unsafe.Pointer(p)).FszCell + uintptr(N)*2)) } @@ -49542,7 +50034,9 @@ func balance_quick(tls *libc.TLS, pParent uintptr, pPage uintptr, pSpace uintptr var pOut uintptr = (pSpace + 4) *(*uintptr)(unsafe.Pointer(bp + 8 /* pCell */)) = *(*uintptr)(unsafe.Pointer((pPage + 36 /* &.apOvfl */))) - *(*U16)(unsafe.Pointer(bp + 12 /* szCell */)) = (*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((pPage + 76 /* &.xCellSize */))))(tls, pPage, *(*uintptr)(unsafe.Pointer(bp + 8 /* pCell */))) + *(*U16)(unsafe.Pointer(bp + 12 /* szCell */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxCellSize})).f(tls, pPage, *(*uintptr)(unsafe.Pointer(bp + 8 /* pCell */))) var pStop uintptr // var b CellArray at bp+16, 64 @@ -49908,13 +50402,17 @@ __16: } *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4)) = *(*uintptr)(unsafe.Pointer((pParent + 36 /* &.apOvfl */))) *(*Pgno)(unsafe.Pointer(bp + 180 /* pgno */)) = Xsqlite3Get4byte(tls, *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4))) - *(*int32)(unsafe.Pointer(bp + 28 /* &szNew[0] */ + uintptr(i)*4)) = int32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((pParent + 76 /* &.xCellSize */))))(tls, pParent, *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4)))) + *(*int32)(unsafe.Pointer(bp + 28 /* &szNew[0] */ + uintptr(i)*4)) = int32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pParent)).FxCellSize})).f(tls, pParent, *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4)))) (*MemPage)(unsafe.Pointer(pParent)).FnOverflow = U8(0) goto __18 __17: *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4)) = ((*MemPage)(unsafe.Pointer((pParent))).FaData + uintptr((int32((*MemPage)(unsafe.Pointer((pParent))).FmaskPage) & int32(libc.X__builtin_bswap16(tls, *(*U16)(unsafe.Pointer(((*MemPage)(unsafe.Pointer((pParent))).FaCellIdx + uintptr((2 * ((i + nxDiv) - int32((*MemPage)(unsafe.Pointer(pParent)).FnOverflow)))))))))))) *(*Pgno)(unsafe.Pointer(bp + 180 /* pgno */)) = Xsqlite3Get4byte(tls, *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4))) - *(*int32)(unsafe.Pointer(bp + 28 /* &szNew[0] */ + uintptr(i)*4)) = int32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((pParent + 76 /* &.xCellSize */))))(tls, pParent, *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4)))) + *(*int32)(unsafe.Pointer(bp + 28 /* &szNew[0] */ + uintptr(i)*4)) = int32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pParent)).FxCellSize})).f(tls, pParent, *(*uintptr)(unsafe.Pointer(bp + 20 /* &apDiv[0] */ + uintptr(i)*4)))) // Drop the cell from the parent page. apDiv[i] still points to // the cell within the parent, even though it has been dropped. @@ -50176,7 +50674,9 @@ __46: if !(j < int32((*MemPage)(unsafe.Pointer(p)).FnOverflow)) { goto __48 } - *(*int32)(unsafe.Pointer(bp + 28 /* &szNew */ + uintptr(i)*4)) += (2 + int32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((p + 76 /* &.xCellSize */))))(tls, p, *(*uintptr)(unsafe.Pointer((p + 36 /* &.apOvfl */) + uintptr(j)*4))))) + *(*int32)(unsafe.Pointer(bp + 28 /* &szNew */ + uintptr(i)*4)) += (2 + int32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(p)).FxCellSize})).f(tls, p, *(*uintptr)(unsafe.Pointer((p + 36 /* &.apOvfl */) + uintptr(j)*4))))) goto __47 __47: j++ @@ -50680,7 +51180,9 @@ __118: goto __120 } j-- - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pNew2 + 80 /* &.xParseCell */))))(tls, pNew2, *(*uintptr)(unsafe.Pointer((*CellArray)(unsafe.Pointer(bp+72 /* &b */)).FapCell + uintptr(j)*4)), bp+236 /* &info */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pNew2)).FxParseCell})).f(tls, pNew2, *(*uintptr)(unsafe.Pointer((*CellArray)(unsafe.Pointer(bp+72 /* &b */)).FapCell + uintptr(j)*4)), bp+236 /* &info */) pCell1 = pTemp1 sz2 = (4 + Xsqlite3PutVarint(tls, (pCell1+4), uint64((*CellInfo)(unsafe.Pointer(bp+236 /* &info */)).FnKey))) pTemp1 = uintptr(0) @@ -50701,7 +51203,9 @@ __120: goto __122 } - sz2 = int32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((pParent + 76 /* &.xCellSize */))))(tls, pParent, pCell1)) + sz2 = int32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pParent)).FxCellSize})).f(tls, pParent, pCell1)) __122: ; __121: @@ -51497,7 +52001,9 @@ __25: if !(((*BtShared)(unsafe.Pointer(pBt)).FautoVacuum != 0) && (*(*int32)(unsafe.Pointer(bp + 76 /* szNew */)) > int32((*MemPage)(unsafe.Pointer(pPage)).FmaxLocal))) { goto __26 } - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pPage + 80 /* &.xParseCell */))))(tls, pPage, newCell, bp+52 /* &info */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxParseCell})).f(tls, pPage, newCell, bp+52 /* &info */) if !((*CellInfo)(unsafe.Pointer(bp+52 /* &info */)).FnPayload != U32((*CellInfo)(unsafe.Pointer(bp+52 /* &info */)).FnLocal)) { goto __27 } @@ -51538,7 +52044,9 @@ __31: libc.Xmemcpy(tls, newCell, oldCell, uint32(4)) __32: ; - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pPage + 80 /* &.xParseCell */))))(tls, pPage, oldCell, bp+80 /* &info1 */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxParseCell})).f(tls, pPage, oldCell, bp+80 /* &info1 */) if !(U32((*CellInfo)(unsafe.Pointer(bp+80 /* &info1 */)).FnLocal) != (*CellInfo)(unsafe.Pointer(bp+80 /* &info1 */)).FnPayload) { goto __33 } @@ -51907,7 +52415,9 @@ func Xsqlite3BtreeDelete(tls *libc.TLS, pCur uintptr, flags U8) int32 { /* sqlit if *(*int32)(unsafe.Pointer(bp + 20 /* rc */)) != 0 { return *(*int32)(unsafe.Pointer(bp + 20 /* rc */)) } - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pPage + 80 /* &.xParseCell */))))(tls, pPage, pCell, bp /* &info */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pPage)).FxParseCell})).f(tls, pPage, pCell, bp /* &info */) if U32((*CellInfo)(unsafe.Pointer(bp /* &info */)).FnLocal) != (*CellInfo)(unsafe.Pointer(bp /* &info */)).FnPayload { *(*int32)(unsafe.Pointer(bp + 20 /* rc */)) = clearCellOverflow(tls, pPage, pCell, bp /* &info */) } else { @@ -51945,7 +52455,9 @@ func Xsqlite3BtreeDelete(tls *libc.TLS, pCur uintptr, flags U8) int32 { /* sqlit if pCell < ((*MemPage)(unsafe.Pointer(pLeaf)).FaData + 4) { return Xsqlite3CorruptError(tls, 74681) } - nCell = int32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((pLeaf + 76 /* &.xCellSize */))))(tls, pLeaf, pCell)) + nCell = int32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(pLeaf)).FxCellSize})).f(tls, pLeaf, pCell)) pTmp = (*BtShared)(unsafe.Pointer(pBt)).FpTmpSpace @@ -52217,7 +52729,9 @@ __8: ; __7: ; - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp /* pPage */)) + 80 /* &.xParseCell */))))(tls, *(*uintptr)(unsafe.Pointer(bp /* pPage */)), pCell, bp+4 /* &info */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pPage */)))).FxParseCell})).f(tls, *(*uintptr)(unsafe.Pointer(bp /* pPage */)), pCell, bp+4 /* &info */) if !(U32((*CellInfo)(unsafe.Pointer(bp+4 /* &info */)).FnLocal) != (*CellInfo)(unsafe.Pointer(bp+4 /* &info */)).FnPayload) { goto __9 } @@ -52570,7 +53084,7 @@ func checkAppendMsg(tls *libc.TLS, pCheck uintptr, zFormat uintptr, va uintptr) (*IntegrityCk)(unsafe.Pointer(pCheck)).FnErr++ ap = va if (*IntegrityCk)(unsafe.Pointer(pCheck)).FerrMsg.FnChar != 0 { - Xsqlite3_str_append(tls, (pCheck + 40 /* &.errMsg */), ts+5944 /* "\n" */, 1) + Xsqlite3_str_append(tls, (pCheck + 40 /* &.errMsg */), ts+5954 /* "\n" */, 1) } if (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx != 0 { Xsqlite3_str_appendf(tls, (pCheck + 40 /* &.errMsg */), (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx, libc.VaList(bp, (*IntegrityCk)(unsafe.Pointer(pCheck)).Fv1, (*IntegrityCk)(unsafe.Pointer(pCheck)).Fv2)) @@ -52606,11 +53120,11 @@ func checkRef(tls *libc.TLS, pCheck uintptr, iPage Pgno) int32 { /* sqlite3.c:75 defer tls.Free(16) if (iPage > (*IntegrityCk)(unsafe.Pointer(pCheck)).FnPage) || (iPage == Pgno(0)) { - checkAppendMsg(tls, pCheck, ts+5946 /* "invalid page num..." */, libc.VaList(bp, iPage)) + checkAppendMsg(tls, pCheck, ts+5956 /* "invalid page num..." */, libc.VaList(bp, iPage)) return 1 } if getPageReferenced(tls, pCheck, iPage) != 0 { - checkAppendMsg(tls, pCheck, ts+5969 /* "2nd reference to..." */, libc.VaList(bp+8, iPage)) + checkAppendMsg(tls, pCheck, ts+5979 /* "2nd reference to..." */, libc.VaList(bp+8, iPage)) return 1 } if libc.AtomicLoadNInt32(((*IntegrityCk)(unsafe.Pointer(pCheck)).Fdb+284 /* &.u1 */ /* &.isInterrupted */), 0) != 0 { @@ -52637,13 +53151,13 @@ func checkPtrmap(tls *libc.TLS, pCheck uintptr, iChild Pgno, eType U8, iParent P if (rc == SQLITE_NOMEM) || (rc == (SQLITE_IOERR | (int32(12) << 8))) { (*IntegrityCk)(unsafe.Pointer(pCheck)).FbOomFault = 1 } - checkAppendMsg(tls, pCheck, ts+5994 /* "Failed to read p..." */, libc.VaList(bp, iChild)) + checkAppendMsg(tls, pCheck, ts+6004 /* "Failed to read p..." */, libc.VaList(bp, iChild)) return } if (int32(*(*U8)(unsafe.Pointer(bp + 48 /* ePtrmapType */))) != int32(eType)) || (*(*Pgno)(unsafe.Pointer(bp + 52 /* iPtrmapParent */)) != iParent) { checkAppendMsg(tls, pCheck, - ts+6023, /* "Bad ptr map entr..." */ + ts+6033, /* "Bad ptr map entr..." */ libc.VaList(bp+8, iChild, int32(eType), iParent, int32(*(*U8)(unsafe.Pointer(bp + 48 /* ePtrmapType */))), *(*Pgno)(unsafe.Pointer(bp + 52 /* iPtrmapParent */)))) } } @@ -52666,7 +53180,7 @@ func checkList(tls *libc.TLS, pCheck uintptr, isFreeList int32, iPage Pgno, N U3 } N-- if Xsqlite3PagerGet(tls, (*IntegrityCk)(unsafe.Pointer(pCheck)).FpPager, iPage, bp+40 /* &pOvflPage */, 0) != 0 { - checkAppendMsg(tls, pCheck, ts+6077 /* "failed to get pa..." */, libc.VaList(bp, iPage)) + checkAppendMsg(tls, pCheck, ts+6087 /* "failed to get pa..." */, libc.VaList(bp, iPage)) break } pOvflData = Xsqlite3PagerGetData(tls, *(*uintptr)(unsafe.Pointer(bp + 40 /* pOvflPage */))) @@ -52677,7 +53191,7 @@ func checkList(tls *libc.TLS, pCheck uintptr, isFreeList int32, iPage Pgno, N U3 } if n > (((*BtShared)(unsafe.Pointer((*IntegrityCk)(unsafe.Pointer(pCheck)).FpBt)).FusableSize / U32(4)) - U32(2)) { checkAppendMsg(tls, pCheck, - ts+6099 /* "freelist leaf co..." */, libc.VaList(bp+8, iPage)) + ts+6109 /* "freelist leaf co..." */, libc.VaList(bp+8, iPage)) N-- } else { for i = 0; i < int32(n); i++ { @@ -52703,12 +53217,12 @@ func checkList(tls *libc.TLS, pCheck uintptr, isFreeList int32, iPage Pgno, N U3 } if (N != 0) && (nErrAtStart == (*IntegrityCk)(unsafe.Pointer(pCheck)).FnErr) { checkAppendMsg(tls, pCheck, - ts+6138, /* "%s is %d but sho..." */ + ts+6148, /* "%s is %d but sho..." */ libc.VaList(bp+16, func() uintptr { if isFreeList != 0 { - return ts + 6164 /* "size" */ + return ts + 6174 /* "size" */ } - return ts + 6169 /* "overflow list le..." */ + return ts + 6179 /* "overflow list le..." */ }(), (expected-N), expected)) } @@ -52852,13 +53366,13 @@ __1: return 0 __2: ; - (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx = ts + 6190 /* "Page %u: " */ + (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx = ts + 6200 /* "Page %u: " */ (*IntegrityCk)(unsafe.Pointer(pCheck)).Fv1 = iPage if !((libc.AssignInt32(&rc, btreeGetPage(tls, pBt, iPage, bp+96 /* &pPage */, 0))) != 0) { goto __3 } checkAppendMsg(tls, pCheck, - ts+6200 /* "unable to get th..." */, libc.VaList(bp, rc)) + ts+6210 /* "unable to get th..." */, libc.VaList(bp, rc)) goto end_of_check __3: ; @@ -52872,7 +53386,7 @@ __3: } // The only possible error from InitPage checkAppendMsg(tls, pCheck, - ts+6238 /* "btreeInitPage() ..." */, libc.VaList(bp+8, rc)) + ts+6248 /* "btreeInitPage() ..." */, libc.VaList(bp+8, rc)) goto end_of_check __4: ; @@ -52880,7 +53394,7 @@ __4: goto __5 } - checkAppendMsg(tls, pCheck, ts+6276 /* "free space corru..." */, libc.VaList(bp+16, rc)) + checkAppendMsg(tls, pCheck, ts+6286 /* "free space corru..." */, libc.VaList(bp+16, rc)) goto end_of_check __5: ; @@ -52888,7 +53402,7 @@ __5: hdr = int32((*MemPage)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)))).FhdrOffset) // Set up for cell analysis - (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx = ts + 6298 /* "On tree page %u ..." */ + (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx = ts + 6308 /* "On tree page %u ..." */ contentOffset = (U32(((((int32(*(*U8)(unsafe.Pointer((data + uintptr((hdr + 5)))))) << 8) | int32(*(*U8)(unsafe.Pointer((data + uintptr((hdr + 5))) + 1)))) - 1) & 0xffff) + 1)) // Enforced by btreeInitPage() @@ -52910,7 +53424,7 @@ __5: if !((*BtShared)(unsafe.Pointer(pBt)).FautoVacuum != 0) { goto __8 } - (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx = ts + 6324 /* "On page %u at ri..." */ + (*IntegrityCk)(unsafe.Pointer(pCheck)).FzPfx = ts + 6334 /* "On page %u at ri..." */ checkPtrmap(tls, pCheck, uint32(pgno), uint8(PTRMAP_BTREE), iPage) __8: ; @@ -52941,18 +53455,20 @@ __9: if !((pc < contentOffset) || (pc > (usableSize - U32(4)))) { goto __12 } - checkAppendMsg(tls, pCheck, ts+6352, /* "Offset %d out of..." */ + checkAppendMsg(tls, pCheck, ts+6362, /* "Offset %d out of..." */ libc.VaList(bp+24, pc, contentOffset, (usableSize-U32(4)))) doCoverageCheck = 0 goto __10 __12: ; pCell = (data + uintptr(pc)) - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)) + 80 /* &.xParseCell */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)), pCell, bp+108 /* &info */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)))).FxParseCell})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)), pCell, bp+108 /* &info */) if !((pc + U32((*CellInfo)(unsafe.Pointer(bp+108 /* &info */)).FnSize)) > usableSize) { goto __13 } - checkAppendMsg(tls, pCheck, ts+6382 /* "Extends off end ..." */, 0) + checkAppendMsg(tls, pCheck, ts+6392 /* "Extends off end ..." */, 0) doCoverageCheck = 0 goto __10 __13: @@ -52970,7 +53486,7 @@ __13: }() != 0) { goto __15 } - checkAppendMsg(tls, pCheck, ts+6406 /* "Rowid %lld out o..." */, libc.VaList(bp+48, (*CellInfo)(unsafe.Pointer(bp+108 /* &info */)).FnKey)) + checkAppendMsg(tls, pCheck, ts+6416 /* "Rowid %lld out o..." */, libc.VaList(bp+48, (*CellInfo)(unsafe.Pointer(bp+108 /* &info */)).FnKey)) __15: ; *(*I64)(unsafe.Pointer(bp + 100 /* maxKey */)) = (*CellInfo)(unsafe.Pointer(bp + 108 /* &info */)).FnKey @@ -53011,7 +53527,7 @@ __20: if !(d2 != depth) { goto __21 } - checkAppendMsg(tls, pCheck, ts+6430 /* "Child page depth..." */, 0) + checkAppendMsg(tls, pCheck, ts+6440 /* "Child page depth..." */, 0) depth = d2 __21: ; @@ -53049,7 +53565,9 @@ __24: goto __26 } pc = U32(libc.X__builtin_bswap16(tls, *(*U16)(unsafe.Pointer((data + uintptr((cellStart + (i * 2)))))))) - size = U32((*(*func(*libc.TLS, uintptr, uintptr) U16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)) + 76 /* &.xCellSize */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)), (data + uintptr(pc)))) + size = U32((*struct { + f func(*libc.TLS, uintptr, uintptr) U16 + })(unsafe.Pointer(&struct{ uintptr }{(*MemPage)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)))).FxCellSize})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 96 /* pPage */)), (data + uintptr(pc)))) btreeHeapInsert(tls, heap, ((pc << 16) | ((pc + size) - U32(1)))) goto __25 __25: @@ -53109,7 +53627,7 @@ __29: goto __31 } checkAppendMsg(tls, pCheck, - ts+6455 /* "Multiple uses fo..." */, libc.VaList(bp+56, (*(*U32)(unsafe.Pointer(bp + 128 /* x */))>>16), iPage)) + ts+6465 /* "Multiple uses fo..." */, libc.VaList(bp+56, (*(*U32)(unsafe.Pointer(bp + 128 /* x */))>>16), iPage)) goto __30 goto __32 __31: @@ -53129,7 +53647,7 @@ __30: goto __33 } checkAppendMsg(tls, pCheck, - ts+6492, /* "Fragmentation of..." */ + ts+6502, /* "Fragmentation of..." */ libc.VaList(bp+72, nFrag, int32(*(*U8)(unsafe.Pointer(data + uintptr((hdr + 7))))), iPage)) __33: ; @@ -53258,7 +53776,7 @@ __6: if !(bCkFreelist != 0) { goto __7 } - (*IntegrityCk)(unsafe.Pointer(bp + 32 /* &sCheck */)).FzPfx = ts + 6544 /* "Main freelist: " */ + (*IntegrityCk)(unsafe.Pointer(bp + 32 /* &sCheck */)).FzPfx = ts + 6554 /* "Main freelist: " */ checkList(tls, bp+32 /* &sCheck */, 1, Xsqlite3Get4byte(tls, ((*MemPage)(unsafe.Pointer((*BtShared)(unsafe.Pointer(pBt)).FpPage1)).FaData+32)), Xsqlite3Get4byte(tls, ((*MemPage)(unsafe.Pointer((*BtShared)(unsafe.Pointer(pBt)).FpPage1)).FaData+36))) (*IntegrityCk)(unsafe.Pointer(bp + 32 /* &sCheck */)).FzPfx = uintptr(0) @@ -53296,7 +53814,7 @@ __13: goto __15 } checkAppendMsg(tls, bp+32, /* &sCheck */ - ts+6560, /* "max rootpage (%d..." */ + ts+6570, /* "max rootpage (%d..." */ libc.VaList(bp, mx, mxInHdr)) __15: ; @@ -53306,7 +53824,7 @@ __9: goto __16 } checkAppendMsg(tls, bp+32, /* &sCheck */ - ts+6605 /* "incremental_vacu..." */, 0) + ts+6615 /* "incremental_vacu..." */, 0) __16: ; __10: @@ -53356,13 +53874,13 @@ __23: if !((getPageReferenced(tls, bp+32 /* &sCheck */, i) == 0) && ((ptrmapPageno(tls, pBt, i) != i) || !(int32((*BtShared)(unsafe.Pointer(pBt)).FautoVacuum) != 0))) { goto __26 } - checkAppendMsg(tls, bp+32 /* &sCheck */, ts+6660 /* "Page %d is never..." */, libc.VaList(bp+16, i)) + checkAppendMsg(tls, bp+32 /* &sCheck */, ts+6670 /* "Page %d is never..." */, libc.VaList(bp+16, i)) __26: ; if !((getPageReferenced(tls, bp+32 /* &sCheck */, i) != 0) && ((ptrmapPageno(tls, pBt, i) == i) && ((*BtShared)(unsafe.Pointer(pBt)).FautoVacuum != 0))) { goto __27 } - checkAppendMsg(tls, bp+32 /* &sCheck */, ts+6682 /* "Pointer map page..." */, libc.VaList(bp+24, i)) + checkAppendMsg(tls, bp+32 /* &sCheck */, ts+6692 /* "Pointer map page..." */, libc.VaList(bp+24, i)) __27: ; goto __24 @@ -53681,7 +54199,7 @@ func findBtree(tls *libc.TLS, pErrorDb uintptr, pDb uintptr, zDb uintptr) uintpt libc.Xmemset(tls, bp+16 /* &sParse */, 0, uint32(unsafe.Sizeof(Parse{}))) (*Parse)(unsafe.Pointer(bp + 16 /* &sParse */)).Fdb = pDb if Xsqlite3OpenTempDatabase(tls, bp+16 /* &sParse */) != 0 { - Xsqlite3ErrorWithMsg(tls, pErrorDb, (*Parse)(unsafe.Pointer(bp+16 /* &sParse */)).Frc, ts+951 /* "%s" */, libc.VaList(bp, (*Parse)(unsafe.Pointer(bp+16 /* &sParse */)).FzErrMsg)) + Xsqlite3ErrorWithMsg(tls, pErrorDb, (*Parse)(unsafe.Pointer(bp+16 /* &sParse */)).Frc, ts+961 /* "%s" */, libc.VaList(bp, (*Parse)(unsafe.Pointer(bp+16 /* &sParse */)).FzErrMsg)) rc = SQLITE_ERROR } Xsqlite3DbFree(tls, pErrorDb, (*Parse)(unsafe.Pointer(bp+16 /* &sParse */)).FzErrMsg) @@ -53692,7 +54210,7 @@ func findBtree(tls *libc.TLS, pErrorDb uintptr, pDb uintptr, zDb uintptr) uintpt } if i < 0 { - Xsqlite3ErrorWithMsg(tls, pErrorDb, SQLITE_ERROR, ts+6716 /* "unknown database..." */, libc.VaList(bp+8, zDb)) + Xsqlite3ErrorWithMsg(tls, pErrorDb, SQLITE_ERROR, ts+6726 /* "unknown database..." */, libc.VaList(bp+8, zDb)) return uintptr(0) } @@ -53713,7 +54231,7 @@ func setDestPgsz(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:76336:12: */ // message in database handle db. func checkReadTransaction(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:76348:12: */ if Xsqlite3BtreeTxnState(tls, p) != SQLITE_TXN_NONE { - Xsqlite3ErrorWithMsg(tls, db, SQLITE_ERROR, ts+6736 /* "destination data..." */, 0) + Xsqlite3ErrorWithMsg(tls, db, SQLITE_ERROR, ts+6746 /* "destination data..." */, 0) return SQLITE_ERROR } return SQLITE_OK @@ -53740,7 +54258,7 @@ func Xsqlite3_backup_init(tls *libc.TLS, pDestDb uintptr, zDestDb uintptr, pSrcD if pSrcDb == pDestDb { Xsqlite3ErrorWithMsg(tls, - pDestDb, SQLITE_ERROR, ts+6767 /* "source and desti..." */, 0) + pDestDb, SQLITE_ERROR, ts+6777 /* "source and desti..." */, 0) p = uintptr(0) } else { // Allocate space for a new sqlite3_backup object... @@ -54354,7 +54872,7 @@ func vdbeMemRenderNum(tls *libc.TLS, sz int32, zBuf uintptr, p uintptr) { /* sql Xsqlite3Int64ToText(tls, *(*I64)(unsafe.Pointer(bp + 8 /* x */)), zBuf) } else { Xsqlite3StrAccumInit(tls, bp+16 /* &acc */, uintptr(0), zBuf, sz, 0) - Xsqlite3_str_appendf(tls, bp+16 /* &acc */, ts+6807, /* "%!.15g" */ + Xsqlite3_str_appendf(tls, bp+16 /* &acc */, ts+6817, /* "%!.15g" */ libc.VaList(bp, func() float64 { if (int32((*Mem)(unsafe.Pointer(p)).Fflags) & MEM_IntReal) != 0 { return float64(*(*I64)(unsafe.Pointer(p /* &.u */))) @@ -54434,7 +54952,7 @@ func Xsqlite3VdbeMemGrow(tls *libc.TLS, pMem uintptr, n int32, bPreserve int32) } if (int32((*Mem)(unsafe.Pointer(pMem)).Fflags) & MEM_Dyn) != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pMem + 36 /* &.xDel */))))(tls, (*Mem)(unsafe.Pointer(pMem)).Fz) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Mem)(unsafe.Pointer(pMem)).FxDel})).f(tls, (*Mem)(unsafe.Pointer(pMem)).Fz) } (*Mem)(unsafe.Pointer(pMem)).Fz = (*Mem)(unsafe.Pointer(pMem)).FzMalloc @@ -54596,7 +55114,7 @@ func Xsqlite3VdbeMemFinalize(tls *libc.TLS, pMem uintptr, pFunc uintptr) int32 { (*Sqlite3_context)(unsafe.Pointer(bp /* &ctx */)).FpOut = bp + 32 /* &t */ (*Sqlite3_context)(unsafe.Pointer(bp /* &ctx */)).FpMem = pMem (*Sqlite3_context)(unsafe.Pointer(bp /* &ctx */)).FpFunc = pFunc - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pFunc + 20 /* &.xFinalize */))))(tls, bp /* &ctx */) // IMP: R-24505-23230 + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*FuncDef)(unsafe.Pointer(pFunc)).FxFinalize})).f(tls, bp /* &ctx */) // IMP: R-24505-23230 if (*Mem)(unsafe.Pointer(pMem)).FszMalloc > 0 { Xsqlite3DbFreeNN(tls, (*Mem)(unsafe.Pointer(pMem)).Fdb, (*Mem)(unsafe.Pointer(pMem)).FzMalloc) @@ -54622,7 +55140,7 @@ func Xsqlite3VdbeMemAggValue(tls *libc.TLS, pAccum uintptr, pOut uintptr, pFunc (*Sqlite3_context)(unsafe.Pointer(bp /* &ctx */)).FpOut = pOut (*Sqlite3_context)(unsafe.Pointer(bp /* &ctx */)).FpMem = pAccum (*Sqlite3_context)(unsafe.Pointer(bp /* &ctx */)).FpFunc = pFunc - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pFunc + 24 /* &.xValue */))))(tls, bp /* &ctx */) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*FuncDef)(unsafe.Pointer(pFunc)).FxValue})).f(tls, bp /* &ctx */) return (*Sqlite3_context)(unsafe.Pointer(bp /* &ctx */)).FisError } @@ -54641,7 +55159,7 @@ func vdbeMemClearExternAndSetNull(tls *libc.TLS, p uintptr) { /* sqlite3.c:77496 } if (int32((*Mem)(unsafe.Pointer(p)).Fflags) & MEM_Dyn) != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((p + 36 /* &.xDel */))))(tls, (*Mem)(unsafe.Pointer(p)).Fz) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Mem)(unsafe.Pointer(p)).FxDel})).f(tls, (*Mem)(unsafe.Pointer(p)).Fz) } (*Mem)(unsafe.Pointer(p)).Fflags = U16(MEM_Null) } @@ -54848,7 +55366,7 @@ func Xsqlite3VdbeMemNumerify(tls *libc.TLS, pMem uintptr) int32 { /* sqlite3.c:7 rc = Xsqlite3AtoF(tls, (*Mem)(unsafe.Pointer(pMem)).Fz, (pMem /* &.u */ /* &.r */), (*Mem)(unsafe.Pointer(pMem)).Fn, (*Mem)(unsafe.Pointer(pMem)).Fenc) if (((rc == 0) || (rc == 1)) && (Xsqlite3Atoi64(tls, (*Mem)(unsafe.Pointer(pMem)).Fz, bp /* &ix */, (*Mem)(unsafe.Pointer(pMem)).Fn, (*Mem)(unsafe.Pointer(pMem)).Fenc) <= 1)) || - (Xsqlite3RealSameAsInt(tls, *(*float64)(unsafe.Pointer(pMem /* &.u */)), libc.AssignPtrInt64(bp /* ix */, I64(*(*float64)(unsafe.Pointer(pMem /* &.u */))))) != 0) { + (Xsqlite3RealSameAsInt(tls, *(*float64)(unsafe.Pointer(pMem /* &.u */)), libc.AssignPtrInt64(bp /* ix */, libc.Int64FromFloat64(*(*float64)(unsafe.Pointer(pMem /* &.u */))))) != 0) { *(*I64)(unsafe.Pointer(pMem /* &.u */)) = *(*Sqlite3_int64)(unsafe.Pointer(bp /* ix */)) (*Mem)(unsafe.Pointer(pMem)).Fflags = (U16((int32((*Mem)(unsafe.Pointer((pMem))).Fflags) & libc.CplInt32((MEM_TypeMask | MEM_Zero))) | MEM_Int)) } else { @@ -54995,7 +55513,7 @@ func Xsqlite3VdbeMemSetPointer(tls *libc.TLS, pMem uintptr, pPtr uintptr, zPType if zPType != 0 { return zPType } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }() (*Mem)(unsafe.Pointer(pMem)).Fz = pPtr (*Mem)(unsafe.Pointer(pMem)).Fflags = (U16(((MEM_Null | MEM_Dyn) | MEM_Subtype) | MEM_Term)) @@ -55502,12 +56020,14 @@ __9: libc.Xmemset(tls, bp+8 /* &ctx */, 0, uint32(unsafe.Sizeof(Sqlite3_context{}))) (*Sqlite3_context)(unsafe.Pointer(bp + 8 /* &ctx */)).FpOut = pVal (*Sqlite3_context)(unsafe.Pointer(bp + 8 /* &ctx */)).FpFunc = pFunc - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer((pFunc + 16 /* &.xSFunc */))))(tls, bp+8 /* &ctx */, nVal, apVal) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*FuncDef)(unsafe.Pointer(pFunc)).FxSFunc})).f(tls, bp+8 /* &ctx */, nVal, apVal) if !((*Sqlite3_context)(unsafe.Pointer(bp+8 /* &ctx */)).FisError != 0) { goto __10 } rc = (*Sqlite3_context)(unsafe.Pointer(bp + 8 /* &ctx */)).FisError - Xsqlite3ErrorMsg(tls, (*ValueNewStat4Ctx)(unsafe.Pointer(pCtx)).FpParse, ts+951 /* "%s" */, libc.VaList(bp, Xsqlite3_value_text(tls, pVal))) + Xsqlite3ErrorMsg(tls, (*ValueNewStat4Ctx)(unsafe.Pointer(pCtx)).FpParse, ts+961 /* "%s" */, libc.VaList(bp, Xsqlite3_value_text(tls, pVal))) goto __11 __10: Xsqlite3ValueApplyAffinity(tls, pVal, aff, uint8(SQLITE_UTF8)) @@ -55579,7 +56099,7 @@ func valueFromExpr(tls *libc.TLS, db uintptr, pExpr uintptr, enc U8, affinity U8 zVal = uintptr(0) *(*uintptr)(unsafe.Pointer(bp + 16 /* pVal */)) = uintptr(0) negInt = 1 - zNeg = ts + 915 /* "" */ + zNeg = ts + 925 /* "" */ rc = SQLITE_OK __1: @@ -55628,7 +56148,7 @@ __4: pExpr = (*Expr)(unsafe.Pointer(pExpr)).FpLeft op = int32((*Expr)(unsafe.Pointer(pExpr)).Fop) negInt = -1 - zNeg = ts + 6814 /* "-" */ + zNeg = ts + 6824 /* "-" */ __6: ; @@ -55648,7 +56168,7 @@ __9: Xsqlite3VdbeMemSetInt64(tls, *(*uintptr)(unsafe.Pointer(bp + 16 /* pVal */)), (I64(*(*int32)(unsafe.Pointer(pExpr + 8 /* &.u */))) * I64(negInt))) goto __11 __10: - zVal = Xsqlite3MPrintf(tls, db, ts+6816 /* "%s%s" */, libc.VaList(bp, zNeg, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)))) + zVal = Xsqlite3MPrintf(tls, db, ts+6826 /* "%s%s" */, libc.VaList(bp, zNeg, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)))) if !(zVal == uintptr(0)) { goto __12 } @@ -57162,8 +57682,8 @@ func Xsqlite3VdbeDisplayComment(tls *libc.TLS, db uintptr, pOp uintptr, zP4 uint var seenCom int32 = 0 var c int8 zSynopsis = libc.AssignAddUintptr(&zOpName, (uintptr(nOpName + 1))) - if libc.Xstrncmp(tls, zSynopsis, ts+6821 /* "IF " */, uint32(3)) == 0 { - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([50]int8{})), bp+96 /* &zAlt[0] */, ts+6825 /* "if %s goto P2" */, libc.VaList(bp, (zSynopsis+uintptr(3)))) + if libc.Xstrncmp(tls, zSynopsis, ts+6831 /* "IF " */, uint32(3)) == 0 { + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([50]int8{})), bp+96 /* &zAlt[0] */, ts+6835 /* "if %s goto P2" */, libc.VaList(bp, (zSynopsis+uintptr(3)))) zSynopsis = bp + 96 /* &zAlt[0] */ } for ii = 0; (int32(libc.AssignInt8(&c, *(*int8)(unsafe.Pointer(zSynopsis + uintptr(ii)))))) != 0; ii++ { @@ -57177,24 +57697,24 @@ func Xsqlite3VdbeDisplayComment(tls *libc.TLS, db uintptr, pOp uintptr, zP4 uint } else { var v1 int32 = translateP(tls, c, pOp) var v2 int32 - if libc.Xstrncmp(tls, ((zSynopsis+uintptr(ii))+uintptr(1)), ts+6839 /* "@P" */, uint32(2)) == 0 { + if libc.Xstrncmp(tls, ((zSynopsis+uintptr(ii))+uintptr(1)), ts+6849 /* "@P" */, uint32(2)) == 0 { ii = ii + (3) v2 = translateP(tls, *(*int8)(unsafe.Pointer(zSynopsis + uintptr(ii))), pOp) - if libc.Xstrncmp(tls, ((zSynopsis+uintptr(ii))+uintptr(1)), ts+6842 /* "+1" */, uint32(2)) == 0 { + if libc.Xstrncmp(tls, ((zSynopsis+uintptr(ii))+uintptr(1)), ts+6852 /* "+1" */, uint32(2)) == 0 { ii = ii + (2) v2++ } if v2 < 2 { - Xsqlite3_str_appendf(tls, bp+72 /* &x */, ts+6845 /* "%d" */, libc.VaList(bp+8, v1)) + Xsqlite3_str_appendf(tls, bp+72 /* &x */, ts+6855 /* "%d" */, libc.VaList(bp+8, v1)) } else { - Xsqlite3_str_appendf(tls, bp+72 /* &x */, ts+6848 /* "%d..%d" */, libc.VaList(bp+16, v1, ((v1+v2)-1))) + Xsqlite3_str_appendf(tls, bp+72 /* &x */, ts+6858 /* "%d..%d" */, libc.VaList(bp+16, v1, ((v1+v2)-1))) } - } else if libc.Xstrncmp(tls, ((zSynopsis+uintptr(ii))+uintptr(1)), ts+6855 /* "@NP" */, uint32(3)) == 0 { + } else if libc.Xstrncmp(tls, ((zSynopsis+uintptr(ii))+uintptr(1)), ts+6865 /* "@NP" */, uint32(3)) == 0 { var pCtx uintptr = *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)) if (int32((*Op)(unsafe.Pointer(pOp)).Fp4type) != (-16)) || (int32((*Sqlite3_context)(unsafe.Pointer(pCtx)).Fargc) == 1) { - Xsqlite3_str_appendf(tls, bp+72 /* &x */, ts+6845 /* "%d" */, libc.VaList(bp+32, v1)) + Xsqlite3_str_appendf(tls, bp+72 /* &x */, ts+6855 /* "%d" */, libc.VaList(bp+32, v1)) } else if int32((*Sqlite3_context)(unsafe.Pointer(pCtx)).Fargc) > 1 { - Xsqlite3_str_appendf(tls, bp+72 /* &x */, ts+6848 /* "%d..%d" */, libc.VaList(bp+40, v1, ((v1+int32((*Sqlite3_context)(unsafe.Pointer(pCtx)).Fargc))-1))) + Xsqlite3_str_appendf(tls, bp+72 /* &x */, ts+6858 /* "%d..%d" */, libc.VaList(bp+40, v1, ((v1+int32((*Sqlite3_context)(unsafe.Pointer(pCtx)).Fargc))-1))) } else if int32((*StrAccum)(unsafe.Pointer(bp+72 /* &x */)).FaccError) == 0 { *(*U32)(unsafe.Pointer(bp + 72 /* &x */ + 16 /* &.nChar */)) -= (U32(2)) @@ -57202,8 +57722,8 @@ func Xsqlite3VdbeDisplayComment(tls *libc.TLS, db uintptr, pOp uintptr, zP4 uint } ii = ii + (3) } else { - Xsqlite3_str_appendf(tls, bp+72 /* &x */, ts+6845 /* "%d" */, libc.VaList(bp+56, v1)) - if (libc.Xstrncmp(tls, ((zSynopsis+uintptr(ii))+uintptr(1)), ts+6859 /* "..P3" */, uint32(4)) == 0) && ((*Op)(unsafe.Pointer(pOp)).Fp3 == 0) { + Xsqlite3_str_appendf(tls, bp+72 /* &x */, ts+6855 /* "%d" */, libc.VaList(bp+56, v1)) + if (libc.Xstrncmp(tls, ((zSynopsis+uintptr(ii))+uintptr(1)), ts+6869 /* "..P3" */, uint32(4)) == 0) && ((*Op)(unsafe.Pointer(pOp)).Fp3 == 0) { ii = ii + (4) } } @@ -57213,7 +57733,7 @@ func Xsqlite3VdbeDisplayComment(tls *libc.TLS, db uintptr, pOp uintptr, zP4 uint } } if !(seenCom != 0) && ((*Op)(unsafe.Pointer(pOp)).FzComment != 0) { - Xsqlite3_str_appendf(tls, bp+72 /* &x */, ts+6864 /* "; %s" */, libc.VaList(bp+64, (*Op)(unsafe.Pointer(pOp)).FzComment)) + Xsqlite3_str_appendf(tls, bp+72 /* &x */, ts+6874 /* "; %s" */, libc.VaList(bp+64, (*Op)(unsafe.Pointer(pOp)).FzComment)) } } else if (*Op)(unsafe.Pointer(pOp)).FzComment != 0 { Xsqlite3_str_appendall(tls, bp+72 /* &x */, (*Op)(unsafe.Pointer(pOp)).FzComment) @@ -57240,34 +57760,34 @@ func Xsqlite3VdbeDisplayP4(tls *libc.TLS, db uintptr, pOp uintptr) uintptr { /* var j int32 var pKeyInfo uintptr = *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)) - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6869 /* "k(%d" */, libc.VaList(bp, int32((*KeyInfo)(unsafe.Pointer(pKeyInfo)).FnKeyField))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6879 /* "k(%d" */, libc.VaList(bp, int32((*KeyInfo)(unsafe.Pointer(pKeyInfo)).FnKeyField))) for j = 0; j < int32((*KeyInfo)(unsafe.Pointer(pKeyInfo)).FnKeyField); j++ { var pColl uintptr = *(*uintptr)(unsafe.Pointer((pKeyInfo + 20 /* &.aColl */) + uintptr(j)*4)) var zColl uintptr if pColl != 0 { zColl = (*CollSeq)(unsafe.Pointer(pColl)).FzName } else { - zColl = ts + 915 /* "" */ + zColl = ts + 925 /* "" */ } - if libc.Xstrcmp(tls, zColl, ts+478 /* "BINARY" */) == 0 { - zColl = ts + 6874 /* "B" */ + if libc.Xstrcmp(tls, zColl, ts+488 /* "BINARY" */) == 0 { + zColl = ts + 6884 /* "B" */ } - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6876, /* ",%s%s%s" */ + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6886, /* ",%s%s%s" */ libc.VaList(bp+8, func() uintptr { if (int32(*(*U8)(unsafe.Pointer((*KeyInfo)(unsafe.Pointer(pKeyInfo)).FaSortFlags + uintptr(j)))) & KEYINFO_ORDER_DESC) != 0 { - return ts + 6814 /* "-" */ + return ts + 6824 /* "-" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), func() uintptr { if (int32(*(*U8)(unsafe.Pointer((*KeyInfo)(unsafe.Pointer(pKeyInfo)).FaSortFlags + uintptr(j)))) & KEYINFO_ORDER_BIGNULL) != 0 { - return ts + 6884 /* "N." */ + return ts + 6894 /* "N." */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), zColl)) } - Xsqlite3_str_append(tls, bp+144 /* &x */, ts+6887 /* ")" */, 1) + Xsqlite3_str_append(tls, bp+144 /* &x */, ts+6897 /* ")" */, 1) break } @@ -57275,7 +57795,7 @@ func Xsqlite3VdbeDisplayP4(tls *libc.TLS, db uintptr, pOp uintptr) uintptr { /* { var pColl uintptr = *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)) - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6889 /* "%.18s-%s" */, libc.VaList(bp+32, (*CollSeq)(unsafe.Pointer(pColl)).FzName, + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6899 /* "%.18s-%s" */, libc.VaList(bp+32, (*CollSeq)(unsafe.Pointer(pColl)).FzName, encnames[(*CollSeq)(unsafe.Pointer(pColl)).Fenc])) break @@ -57283,32 +57803,32 @@ func Xsqlite3VdbeDisplayP4(tls *libc.TLS, db uintptr, pOp uintptr) uintptr { /* case -8: { var pDef uintptr = *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)) - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6898 /* "%s(%d)" */, libc.VaList(bp+48, (*FuncDef)(unsafe.Pointer(pDef)).FzName, int32((*FuncDef)(unsafe.Pointer(pDef)).FnArg))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6908 /* "%s(%d)" */, libc.VaList(bp+48, (*FuncDef)(unsafe.Pointer(pDef)).FzName, int32((*FuncDef)(unsafe.Pointer(pDef)).FnArg))) break } case -16: { var pDef uintptr = (*Sqlite3_context)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))).FpFunc - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6898 /* "%s(%d)" */, libc.VaList(bp+64, (*FuncDef)(unsafe.Pointer(pDef)).FzName, int32((*FuncDef)(unsafe.Pointer(pDef)).FnArg))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6908 /* "%s(%d)" */, libc.VaList(bp+64, (*FuncDef)(unsafe.Pointer(pDef)).FzName, int32((*FuncDef)(unsafe.Pointer(pDef)).FnArg))) break } case -14: { - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6905 /* "%lld" */, libc.VaList(bp+80, *(*I64)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6915 /* "%lld" */, libc.VaList(bp+80, *(*I64)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))))) break } case -3: { - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6845 /* "%d" */, libc.VaList(bp+88, *(*int32)(unsafe.Pointer(pOp + 16 /* &.p4 */)))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6855 /* "%d" */, libc.VaList(bp+88, *(*int32)(unsafe.Pointer(pOp + 16 /* &.p4 */)))) break } case -13: { - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+698 /* "%.16g" */, libc.VaList(bp+96, *(*float64)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+708 /* "%.16g" */, libc.VaList(bp+96, *(*float64)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))))) break } @@ -57318,14 +57838,14 @@ func Xsqlite3VdbeDisplayP4(tls *libc.TLS, db uintptr, pOp uintptr) uintptr { /* if (int32((*Mem)(unsafe.Pointer(pMem)).Fflags) & MEM_Str) != 0 { zP4 = (*Mem)(unsafe.Pointer(pMem)).Fz } else if (int32((*Mem)(unsafe.Pointer(pMem)).Fflags) & (MEM_Int | MEM_IntReal)) != 0 { - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6905 /* "%lld" */, libc.VaList(bp+104, *(*I64)(unsafe.Pointer(pMem /* &.u */)))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6915 /* "%lld" */, libc.VaList(bp+104, *(*I64)(unsafe.Pointer(pMem /* &.u */)))) } else if (int32((*Mem)(unsafe.Pointer(pMem)).Fflags) & MEM_Real) != 0 { - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+698 /* "%.16g" */, libc.VaList(bp+112, *(*float64)(unsafe.Pointer(pMem /* &.u */)))) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+708 /* "%.16g" */, libc.VaList(bp+112, *(*float64)(unsafe.Pointer(pMem /* &.u */)))) } else if (int32((*Mem)(unsafe.Pointer(pMem)).Fflags) & MEM_Null) != 0 { - zP4 = ts + 916 /* "NULL" */ + zP4 = ts + 926 /* "NULL" */ } else { - zP4 = ts + 6910 /* "(blob)" */ + zP4 = ts + 6920 /* "(blob)" */ } break @@ -57333,7 +57853,7 @@ func Xsqlite3VdbeDisplayP4(tls *libc.TLS, db uintptr, pOp uintptr) uintptr { /* case -12: { var pVtab uintptr = (*VTable)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))).FpVtab - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6917 /* "vtab:%p" */, libc.VaList(bp+120, pVtab)) + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6927 /* "vtab:%p" */, libc.VaList(bp+120, pVtab)) break } @@ -57344,20 +57864,20 @@ func Xsqlite3VdbeDisplayP4(tls *libc.TLS, db uintptr, pOp uintptr) uintptr { /* var n U32 = *(*U32)(unsafe.Pointer(ai)) // The first element of an INTARRAY is always the // count of the number of elements to follow for i = U32(1); i <= n; i++ { - Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6925 /* "%c%u" */, libc.VaList(bp+128, func() int32 { + Xsqlite3_str_appendf(tls, bp+144 /* &x */, ts+6935 /* "%c%u" */, libc.VaList(bp+128, func() int32 { if i == U32(1) { return '[' } return ',' }(), *(*U32)(unsafe.Pointer(ai + uintptr(i)*4)))) } - Xsqlite3_str_append(tls, bp+144 /* &x */, ts+6930 /* "]" */, 1) + Xsqlite3_str_append(tls, bp+144 /* &x */, ts+6940 /* "]" */, 1) break } case -4: { - zP4 = ts + 6932 /* "program" */ + zP4 = ts + 6942 /* "program" */ break } @@ -57389,7 +57909,7 @@ func Xsqlite3VdbeDisplayP4(tls *libc.TLS, db uintptr, pOp uintptr) uintptr { /* return Xsqlite3StrAccumFinish(tls, bp+144 /* &x */) } -var encnames = [4]uintptr{ts + 6940 /* "?" */, ts + 6942 /* "8" */, ts + 6944 /* "16LE" */, ts + 6949 /* "16BE" */} /* sqlite3.c:80570:25 */ +var encnames = [4]uintptr{ts + 6950 /* "?" */, ts + 6952 /* "8" */, ts + 6954 /* "16LE" */, ts + 6959 /* "16BE" */} /* sqlite3.c:80570:25 */ // Declare to the Vdbe that the BTree object at db->aDb[i] is used. // @@ -57934,8 +58454,8 @@ func Xsqlite3VdbeMakeReady(tls *libc.TLS, p uintptr, pParse uintptr) { /* sqlite } var azColName = [12]uintptr{ - ts + 6954 /* "addr" */, ts + 6959 /* "opcode" */, ts + 6966 /* "p1" */, ts + 6969 /* "p2" */, ts + 6972 /* "p3" */, ts + 6975 /* "p4" */, ts + 6978 /* "p5" */, ts + 6981, /* "comment" */ - ts + 6989 /* "id" */, ts + 6992 /* "parent" */, ts + 6999 /* "notused" */, ts + 7007, /* "detail" */ + ts + 6964 /* "addr" */, ts + 6969 /* "opcode" */, ts + 6976 /* "p1" */, ts + 6979 /* "p2" */, ts + 6982 /* "p3" */, ts + 6985 /* "p4" */, ts + 6988 /* "p5" */, ts + 6991, /* "comment" */ + ts + 6999 /* "id" */, ts + 7002 /* "parent" */, ts + 7009 /* "notused" */, ts + 7017, /* "detail" */ } /* sqlite3.c:81298:23 */ // Close a VDBE cursor and release all the resources that cursor @@ -57965,7 +58485,9 @@ func Xsqlite3VdbeFreeCursor(tls *libc.TLS, p uintptr, pCx uintptr) { /* sqlite3. var pModule uintptr = (*Sqlite3_vtab)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(pVCur)).FpVtab)).FpModule (*Sqlite3_vtab)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(pVCur)).FpVtab)).FnRef-- - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pModule + 28 /* &.xClose */))))(tls, pVCur) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule)).FxClose})).f(tls, pVCur) break } @@ -58134,7 +58656,9 @@ func vdbeCommit(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:81537 // If there are any write-transactions at all, invoke the commit hook if (needXcommit != 0) && ((*Sqlite3)(unsafe.Pointer(db)).FxCommitCallback != 0) { - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((db + 224 /* &.xCommitCallback */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpCommitArg) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxCommitCallback})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpCommitArg) if rc != 0 { return (SQLITE_CONSTRAINT | (int32(2) << 8)) } @@ -58183,7 +58707,7 @@ func vdbeCommit(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:81537 // Select a super-journal file name nMainFile = Xsqlite3Strlen30(tls, zMainFile) - zSuper = Xsqlite3MPrintf(tls, db, ts+7014 /* "%.4c%s%.16c" */, libc.VaList(bp, 0, zMainFile, 0)) + zSuper = Xsqlite3MPrintf(tls, db, ts+7024 /* "%.4c%s%.16c" */, libc.VaList(bp, 0, zMainFile, 0)) if zSuper == uintptr(0) { return SQLITE_NOMEM } @@ -58193,16 +58717,16 @@ func vdbeCommit(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:81537 if retryCount != 0 { if retryCount > 100 { - Xsqlite3_log(tls, SQLITE_FULL, ts+7026 /* "MJ delete: %s" */, libc.VaList(bp+24, zSuper)) + Xsqlite3_log(tls, SQLITE_FULL, ts+7036 /* "MJ delete: %s" */, libc.VaList(bp+24, zSuper)) Xsqlite3OsDelete(tls, pVfs, zSuper, 0) break } else if retryCount == 1 { - Xsqlite3_log(tls, SQLITE_FULL, ts+7040 /* "MJ collide: %s" */, libc.VaList(bp+32, zSuper)) + Xsqlite3_log(tls, SQLITE_FULL, ts+7050 /* "MJ collide: %s" */, libc.VaList(bp+32, zSuper)) } } retryCount++ Xsqlite3_randomness(tls, int32(unsafe.Sizeof(U32(0))), bp+56 /* &iRandom */) - Xsqlite3_snprintf(tls, 13, (zSuper + uintptr(nMainFile)), ts+7055, /* "-mj%06X9%02X" */ + Xsqlite3_snprintf(tls, 13, (zSuper + uintptr(nMainFile)), ts+7065, /* "-mj%06X9%02X" */ libc.VaList(bp+40, ((*(*U32)(unsafe.Pointer(bp + 56 /* iRandom */))>>8)&U32(0xffffff)), (*(*U32)(unsafe.Pointer(bp + 56 /* iRandom */))&U32(0xff)))) // The antipenultimate character of the super-journal name must // be "9" to avoid name collisions when using 8+3 filenames. @@ -58397,7 +58921,7 @@ func Xsqlite3VdbeCheckFk(tls *libc.TLS, p uintptr, deferred int32) int32 { /* sq (!(deferred != 0) && ((*Vdbe)(unsafe.Pointer(p)).FnFkConstraint > int64(0))) { (*Vdbe)(unsafe.Pointer(p)).Frc = (SQLITE_CONSTRAINT | (int32(3) << 8)) (*Vdbe)(unsafe.Pointer(p)).FerrorAction = U8(OE_Abort) - Xsqlite3VdbeError(tls, p, ts+7068 /* "FOREIGN KEY cons..." */, 0) + Xsqlite3VdbeError(tls, p, ts+7078 /* "FOREIGN KEY cons..." */, 0) return SQLITE_ERROR } return SQLITE_OK @@ -58679,7 +59203,7 @@ func Xsqlite3VdbeReset(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:82187:20: // called), set the database error in this case as well. Xsqlite3ErrorWithMsg(tls, db, (*Vdbe)(unsafe.Pointer(p)).Frc, func() uintptr { if (*Vdbe)(unsafe.Pointer(p)).FzErrMsg != 0 { - return ts + 951 /* "%s" */ + return ts + 961 /* "%s" */ } return uintptr(0) }(), libc.VaList(bp, (*Vdbe)(unsafe.Pointer(p)).FzErrMsg)) @@ -58732,7 +59256,7 @@ func Xsqlite3VdbeDeleteAuxData(tls *libc.TLS, db uintptr, pp uintptr, iOp int32, (((*AuxData)(unsafe.Pointer(pAux)).FiAuxArg > 31) || !((uint32(mask) & (uint32((uint32(1))) << ((*AuxData)(unsafe.Pointer(pAux)).FiAuxArg))) != 0))) { if (*AuxData)(unsafe.Pointer(pAux)).FxDeleteAux != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pAux + 12 /* &.xDeleteAux */))))(tls, (*AuxData)(unsafe.Pointer(pAux)).FpAux) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*AuxData)(unsafe.Pointer(pAux)).FxDeleteAux})).f(tls, (*AuxData)(unsafe.Pointer(pAux)).FpAux) } *(*uintptr)(unsafe.Pointer(pp)) = (*AuxData)(unsafe.Pointer(pAux)).FpNextAux Xsqlite3DbFree(tls, db, pAux) @@ -59275,7 +59799,9 @@ func vdbeCompareMemString(tls *libc.TLS, pMem1 uintptr, pMem2 uintptr, pColl uin if int32((*Mem)(unsafe.Pointer(pMem1)).Fenc) == int32((*CollSeq)(unsafe.Pointer(pColl)).Fenc) { // The strings are already in the correct encoding. Call the // comparison function directly - return (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer((pColl + 12 /* &.xCmp */))))(tls, (*CollSeq)(unsafe.Pointer(pColl)).FpUser, (*Mem)(unsafe.Pointer(pMem1)).Fn, (*Mem)(unsafe.Pointer(pMem1)).Fz, (*Mem)(unsafe.Pointer(pMem2)).Fn, (*Mem)(unsafe.Pointer(pMem2)).Fz) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*CollSeq)(unsafe.Pointer(pColl)).FxCmp})).f(tls, (*CollSeq)(unsafe.Pointer(pColl)).FpUser, (*Mem)(unsafe.Pointer(pMem1)).Fn, (*Mem)(unsafe.Pointer(pMem1)).Fz, (*Mem)(unsafe.Pointer(pMem2)).Fn, (*Mem)(unsafe.Pointer(pMem2)).Fz) } else { var rc int32 var v1 uintptr @@ -59296,7 +59822,9 @@ func vdbeCompareMemString(tls *libc.TLS, pMem1 uintptr, pMem2 uintptr, pColl uin } rc = 0 } else { - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer((pColl + 12 /* &.xCmp */))))(tls, (*CollSeq)(unsafe.Pointer(pColl)).FpUser, (*Mem)(unsafe.Pointer(bp /* &c1 */)).Fn, v1, (*Mem)(unsafe.Pointer(bp+40 /* &c2 */)).Fn, v2) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*CollSeq)(unsafe.Pointer(pColl)).FxCmp})).f(tls, (*CollSeq)(unsafe.Pointer(pColl)).FpUser, (*Mem)(unsafe.Pointer(bp /* &c1 */)).Fn, v1, (*Mem)(unsafe.Pointer(bp+40 /* &c2 */)).Fn, v2) } Xsqlite3VdbeMemRelease(tls, bp /* &c1 */) Xsqlite3VdbeMemRelease(tls, bp+40 /* &c2 */) @@ -60231,13 +60759,13 @@ func Xsqlite3NotPureFunc(tls *libc.TLS, pCtx uintptr) int32 { /* sqlite3.c:84023 var zContext uintptr var zMsg uintptr if (int32((*VdbeOp)(unsafe.Pointer(pOp)).Fp5) & NC_IsCheck) != 0 { - zContext = ts + 7098 /* "a CHECK constrai..." */ + zContext = ts + 7108 /* "a CHECK constrai..." */ } else if (int32((*VdbeOp)(unsafe.Pointer(pOp)).Fp5) & NC_GenCol) != 0 { - zContext = ts + 7117 /* "a generated colu..." */ + zContext = ts + 7127 /* "a generated colu..." */ } else { - zContext = ts + 7136 /* "an index" */ + zContext = ts + 7146 /* "an index" */ } - zMsg = Xsqlite3_mprintf(tls, ts+7145, /* "non-deterministi..." */ + zMsg = Xsqlite3_mprintf(tls, ts+7155, /* "non-deterministi..." */ libc.VaList(bp, (*FuncDef)(unsafe.Pointer((*Sqlite3_context)(unsafe.Pointer(pCtx)).FpFunc)).FzName, zContext)) Xsqlite3_result_error(tls, pCtx, zMsg, -1) Xsqlite3_free(tls, zMsg) @@ -60318,7 +60846,9 @@ func Xsqlite3VdbePreUpdateHook(tls *libc.TLS, v uintptr, pCsr uintptr, op int32, (*PreUpdate)(unsafe.Pointer(bp /* &preupdate */)).FiBlobWrite = iBlobWrite (*Sqlite3)(unsafe.Pointer(db)).FpPreUpdate = bp /* &preupdate */ - (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, Sqlite3_int64, Sqlite3_int64))(unsafe.Pointer((db + 252 /* &.xPreUpdateCallback */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpPreUpdateArg, db, op, zDb, zTbl, iKey1, iKey2) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, Sqlite3_int64, Sqlite3_int64) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxPreUpdateCallback})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpPreUpdateArg, db, op, zDb, zTbl, iKey1, iKey2) (*Sqlite3)(unsafe.Pointer(db)).FpPreUpdate = uintptr(0) Xsqlite3DbFree(tls, db, (*PreUpdate)(unsafe.Pointer(bp /* &preupdate */)).FaRecord) vdbeFreeUnpacked(tls, db, (int32((*PreUpdate)(unsafe.Pointer(bp /* &preupdate */)).Fkeyinfo.FnKeyField) + 1), (*PreUpdate)(unsafe.Pointer(bp /* &preupdate */)).FpUnpacked) @@ -60368,7 +60898,7 @@ func Xsqlite3_expired(tls *libc.TLS, pStmt uintptr) int32 { /* sqlite3.c:84185:1 // invalid). Return false if it is ok. func vdbeSafety(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:84196:12: */ if (*Vdbe)(unsafe.Pointer(p)).Fdb == uintptr(0) { - Xsqlite3_log(tls, SQLITE_MISUSE, ts+7181 /* "API called with ..." */, 0) + Xsqlite3_log(tls, SQLITE_MISUSE, ts+7191 /* "API called with ..." */, 0) return 1 } else { return 0 @@ -60378,7 +60908,7 @@ func vdbeSafety(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:84196:12: */ func vdbeSafetyNotNull(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:84204:12: */ if p == uintptr(0) { - Xsqlite3_log(tls, SQLITE_MISUSE, ts+7226 /* "API called with ..." */, 0) + Xsqlite3_log(tls, SQLITE_MISUSE, ts+7236 /* "API called with ..." */, 0) return 1 } else { return vdbeSafety(tls, p) @@ -60399,10 +60929,14 @@ func invokeProfileCallback(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c: Xsqlite3OsCurrentTimeInt64(tls, (*Sqlite3)(unsafe.Pointer(db)).FpVfs, bp /* &iNow */) *(*Sqlite3_int64)(unsafe.Pointer(bp + 8 /* iElapse */)) = ((*(*Sqlite3_int64)(unsafe.Pointer(bp /* iNow */)) - (*Vdbe)(unsafe.Pointer(p)).FstartTime) * int64(1000000)) if (*Sqlite3)(unsafe.Pointer(db)).FxProfile != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, U64))(unsafe.Pointer((db + 212 /* &.xProfile */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpProfileArg, (*Vdbe)(unsafe.Pointer(p)).FzSql, uint64(*(*Sqlite3_int64)(unsafe.Pointer(bp + 8 /* iElapse */)))) + (*struct { + f func(*libc.TLS, uintptr, uintptr, U64) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxProfile})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpProfileArg, (*Vdbe)(unsafe.Pointer(p)).FzSql, uint64(*(*Sqlite3_int64)(unsafe.Pointer(bp + 8 /* iElapse */)))) } if (int32((*Sqlite3)(unsafe.Pointer(db)).FmTrace) & SQLITE_TRACE_PROFILE) != 0 { - (*(*func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((db + 204 /* &.trace */ /* &.xV2 */))))(tls, uint32(SQLITE_TRACE_PROFILE), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, bp+8 /* &iElapse */) + (*struct { + f func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(db + 204 /* &.trace */))})).f(tls, uint32(SQLITE_TRACE_PROFILE), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, bp+8 /* &iElapse */) } (*Vdbe)(unsafe.Pointer(p)).FstartTime = int64(0) } @@ -60712,7 +61246,7 @@ func invokeValueDestructor(tls *libc.TLS, p uintptr, xDel uintptr, pCtx uintptr) } else if xDel == (libc.UintptrFromInt32(-1)) { // noop } else { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDel)))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDel})).f(tls, p) } Xsqlite3_result_error_toobig(tls, pCtx) return SQLITE_TOOBIG @@ -60848,7 +61382,7 @@ func Xsqlite3_result_error_code(tls *libc.TLS, pCtx uintptr, errCode int32) { /* func Xsqlite3_result_error_toobig(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:84708:17: */ (*Sqlite3_context)(unsafe.Pointer(pCtx)).FisError = SQLITE_TOOBIG - Xsqlite3VdbeMemSetStr(tls, (*Sqlite3_context)(unsafe.Pointer(pCtx)).FpOut, ts+7266 /* "string or blob t..." */, int64(-1), + Xsqlite3VdbeMemSetStr(tls, (*Sqlite3_context)(unsafe.Pointer(pCtx)).FpOut, ts+7276 /* "string or blob t..." */, int64(-1), uint8(SQLITE_UTF8), uintptr(0)) } @@ -60884,7 +61418,9 @@ func doWalCallbacks(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:84742:12: */ nEntry = Xsqlite3PagerWalCallback(tls, Xsqlite3BtreePager(tls, pBt)) Xsqlite3BtreeLeave(tls, pBt) if ((nEntry > 0) && ((*Sqlite3)(unsafe.Pointer(db)).FxWalCallback != 0)) && (rc == SQLITE_OK) { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32) int32)(unsafe.Pointer((db + 260 /* &.xWalCallback */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpWalArg, db, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i)*16)).FzDbSName, nEntry) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxWalCallback})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpWalArg, db, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i)*16)).FzDbSName, nEntry) } } } @@ -61291,7 +61827,7 @@ __6: if !((*AuxData)(unsafe.Pointer(pAuxData)).FxDeleteAux != 0) { goto __10 } - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pAuxData + 12 /* &.xDeleteAux */))))(tls, (*AuxData)(unsafe.Pointer(pAuxData)).FpAux) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*AuxData)(unsafe.Pointer(pAuxData)).FxDeleteAux})).f(tls, (*AuxData)(unsafe.Pointer(pAuxData)).FpAux) __10: ; __7: @@ -61305,7 +61841,7 @@ failed: if !(xDelete != 0) { goto __11 } - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDelete)))(tls, pAux) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDelete})).f(tls, pAux) __11: } @@ -61599,7 +62135,7 @@ func vdbeUnbind(tls *libc.TLS, p uintptr, i int32) int32 { /* sqlite3.c:85487:12 Xsqlite3Error(tls, (*Vdbe)(unsafe.Pointer(p)).Fdb, SQLITE_MISUSE) Xsqlite3_mutex_leave(tls, (*Sqlite3)(unsafe.Pointer((*Vdbe)(unsafe.Pointer(p)).Fdb)).Fmutex) Xsqlite3_log(tls, SQLITE_MISUSE, - ts+7289 /* "bind on a busy p..." */, libc.VaList(bp, (*Vdbe)(unsafe.Pointer(p)).FzSql)) + ts+7299 /* "bind on a busy p..." */, libc.VaList(bp, (*Vdbe)(unsafe.Pointer(p)).FzSql)) return Xsqlite3MisuseError(tls, 85498) } if (i < 1) || (i > int32((*Vdbe)(unsafe.Pointer(p)).FnVar)) { @@ -61654,7 +62190,7 @@ func bindText(tls *libc.TLS, pStmt uintptr, i int32, zData uintptr, nData I64, x } Xsqlite3_mutex_leave(tls, (*Sqlite3)(unsafe.Pointer((*Vdbe)(unsafe.Pointer(p)).Fdb)).Fmutex) } else if (xDel != (uintptr(0))) && (xDel != (libc.UintptrFromInt32(-1))) { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDel)))(tls, zData) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDel})).f(tls, zData) } return rc } @@ -61713,7 +62249,7 @@ func Xsqlite3_bind_pointer(tls *libc.TLS, pStmt uintptr, i int32, pPtr uintptr, Xsqlite3VdbeMemSetPointer(tls, ((*Vdbe)(unsafe.Pointer(p)).FaVar + uintptr((i-1))*40), pPtr, zPTtype, xDestructor) Xsqlite3_mutex_leave(tls, (*Sqlite3)(unsafe.Pointer((*Vdbe)(unsafe.Pointer(p)).Fdb)).Fmutex) } else if xDestructor != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDestructor)))(tls, pPtr) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDestructor})).f(tls, pPtr) } return rc } @@ -62376,7 +62912,7 @@ func Xsqlite3VdbeExpandSql(tls *libc.TLS, p uintptr, zRawSql uintptr) uintptr { var zStart uintptr = zRawSql for (int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zRawSql, 1)))) != '\n') && (*(*int8)(unsafe.Pointer(zRawSql)) != 0) { } - Xsqlite3_str_append(tls, bp+48 /* &out */, ts+7329 /* "-- " */, 3) + Xsqlite3_str_append(tls, bp+48 /* &out */, ts+7339 /* "-- " */, 3) Xsqlite3_str_append(tls, bp+48 /* &out */, zStart, ((int32(zRawSql) - int32(zStart)) / 1)) } @@ -62414,11 +62950,11 @@ func Xsqlite3VdbeExpandSql(tls *libc.TLS, p uintptr, zRawSql uintptr) uintptr { pVar = ((*Vdbe)(unsafe.Pointer(p)).FaVar + uintptr((*(*int32)(unsafe.Pointer(bp + 176 /* idx */))-1))*40) if (int32((*Mem)(unsafe.Pointer(pVar)).Fflags) & MEM_Null) != 0 { - Xsqlite3_str_append(tls, bp+48 /* &out */, ts+916 /* "NULL" */, 4) + Xsqlite3_str_append(tls, bp+48 /* &out */, ts+926 /* "NULL" */, 4) } else if (int32((*Mem)(unsafe.Pointer(pVar)).Fflags) & (MEM_Int | MEM_IntReal)) != 0 { - Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+6905 /* "%lld" */, libc.VaList(bp, *(*I64)(unsafe.Pointer(pVar /* &.u */)))) + Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+6915 /* "%lld" */, libc.VaList(bp, *(*I64)(unsafe.Pointer(pVar /* &.u */)))) } else if (int32((*Mem)(unsafe.Pointer(pVar)).Fflags) & MEM_Real) != 0 { - Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+6807 /* "%!.15g" */, libc.VaList(bp+8, *(*float64)(unsafe.Pointer(pVar /* &.u */)))) + Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+6817 /* "%!.15g" */, libc.VaList(bp+8, *(*float64)(unsafe.Pointer(pVar /* &.u */)))) } else if (int32((*Mem)(unsafe.Pointer(pVar)).Fflags) & MEM_Str) != 0 { var nOut int32 // Number of bytes of the string text to include in output var enc U8 = (*Sqlite3)(unsafe.Pointer(db)).Fenc @@ -62433,21 +62969,21 @@ func Xsqlite3VdbeExpandSql(tls *libc.TLS, p uintptr, zRawSql uintptr) uintptr { pVar = bp + 180 /* &utf8 */ } nOut = (*Mem)(unsafe.Pointer(pVar)).Fn - Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+7333 /* "'%.*q'" */, libc.VaList(bp+16, nOut, (*Mem)(unsafe.Pointer(pVar)).Fz)) + Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+7343 /* "'%.*q'" */, libc.VaList(bp+16, nOut, (*Mem)(unsafe.Pointer(pVar)).Fz)) if int32(enc) != SQLITE_UTF8 { Xsqlite3VdbeMemRelease(tls, bp+180 /* &utf8 */) } } else if (int32((*Mem)(unsafe.Pointer(pVar)).Fflags) & MEM_Zero) != 0 { - Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+7340 /* "zeroblob(%d)" */, libc.VaList(bp+32, *(*int32)(unsafe.Pointer(pVar /* &.u */)))) + Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+7350 /* "zeroblob(%d)" */, libc.VaList(bp+32, *(*int32)(unsafe.Pointer(pVar /* &.u */)))) } else { var nOut int32 // Number of bytes of the blob to include in output - Xsqlite3_str_append(tls, bp+48 /* &out */, ts+7353 /* "x'" */, 2) + Xsqlite3_str_append(tls, bp+48 /* &out */, ts+7363 /* "x'" */, 2) nOut = (*Mem)(unsafe.Pointer(pVar)).Fn for i = 0; i < nOut; i++ { - Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+7356 /* "%02x" */, libc.VaList(bp+40, (int32(*(*int8)(unsafe.Pointer((*Mem)(unsafe.Pointer(pVar)).Fz + uintptr(i))))&0xff))) + Xsqlite3_str_appendf(tls, bp+48 /* &out */, ts+7366 /* "%02x" */, libc.VaList(bp+40, (int32(*(*int8)(unsafe.Pointer((*Mem)(unsafe.Pointer(pVar)).Fz + uintptr(i))))&0xff))) } - Xsqlite3_str_append(tls, bp+48 /* &out */, ts+7361 /* "'" */, 1) + Xsqlite3_str_append(tls, bp+48 /* &out */, ts+7371 /* "'" */, 1) } } } @@ -65979,7 +66515,9 @@ __187: } nProgressLimit = nProgressLimit + (U64((*Sqlite3)(unsafe.Pointer(db)).FnProgressOps)) - if !((*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((db + 356 /* &.xProgress */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpProgressArg) != 0) { + if !((*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxProgress})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpProgressArg) != 0) { goto __189 } nProgressLimit = (uint64(0xffffffff) | (U64((uint64(0xffffffff))) << 32)) @@ -66169,19 +66707,19 @@ __192: goto __195 } - Xsqlite3VdbeError(tls, p, ts+7363 /* "%s constraint fa..." */, libc.VaList(bp, azType[(int32((*Op)(unsafe.Pointer(pOp)).Fp5)-1)])) + Xsqlite3VdbeError(tls, p, ts+7373 /* "%s constraint fa..." */, libc.VaList(bp, azType[(int32((*Op)(unsafe.Pointer(pOp)).Fp5)-1)])) if !(*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)) != 0) { goto __197 } - (*Vdbe)(unsafe.Pointer(p)).FzErrMsg = Xsqlite3MPrintf(tls, db, ts+7384 /* "%z: %s" */, libc.VaList(bp+8, (*Vdbe)(unsafe.Pointer(p)).FzErrMsg, *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))) + (*Vdbe)(unsafe.Pointer(p)).FzErrMsg = Xsqlite3MPrintf(tls, db, ts+7394 /* "%z: %s" */, libc.VaList(bp+8, (*Vdbe)(unsafe.Pointer(p)).FzErrMsg, *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))) __197: ; goto __196 __195: - Xsqlite3VdbeError(tls, p, ts+951 /* "%s" */, libc.VaList(bp+24, *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))) + Xsqlite3VdbeError(tls, p, ts+961 /* "%s" */, libc.VaList(bp+24, *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))) __196: ; - Xsqlite3_log(tls, (*Op)(unsafe.Pointer(pOp)).Fp1, ts+7391 /* "abort at %d in [..." */, libc.VaList(bp+32, pcx, (*Vdbe)(unsafe.Pointer(p)).FzSql, (*Vdbe)(unsafe.Pointer(p)).FzErrMsg)) + Xsqlite3_log(tls, (*Op)(unsafe.Pointer(pOp)).Fp1, ts+7401 /* "abort at %d in [..." */, libc.VaList(bp+32, pcx, (*Vdbe)(unsafe.Pointer(p)).FzSql, (*Vdbe)(unsafe.Pointer(p)).FzErrMsg)) __194: ; rc = Xsqlite3VdbeHalt(tls, p) @@ -66581,7 +67119,9 @@ __222: if !((int32((*Sqlite3)(unsafe.Pointer(db)).FmTrace) & SQLITE_TRACE_ROW) != 0) { goto __223 } - (*(*func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((db + 204 /* &.trace */ /* &.xV2 */))))(tls, uint32(SQLITE_TRACE_ROW), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, uintptr(0)) + (*struct { + f func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(db + 204 /* &.trace */))})).f(tls, uint32(SQLITE_TRACE_ROW), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, uintptr(0)) __223: ; @@ -68732,7 +69272,7 @@ __76: } // A new savepoint cannot be created if there are active write // statements (i.e. open read/write incremental blob handles). - Xsqlite3VdbeError(tls, p, ts+7415 /* "cannot open save..." */, 0) + Xsqlite3VdbeError(tls, p, ts+7425 /* "cannot open save..." */, 0) rc = SQLITE_BUSY goto __450 __449: @@ -68805,7 +69345,7 @@ __457: if !(!(pSavepoint != 0)) { goto __458 } - Xsqlite3VdbeError(tls, p, ts+7466 /* "no such savepoin..." */, libc.VaList(bp+56, zName)) + Xsqlite3VdbeError(tls, p, ts+7476 /* "no such savepoin..." */, libc.VaList(bp+56, zName)) rc = SQLITE_ERROR goto __459 __458: @@ -68815,7 +69355,7 @@ __458: // It is not possible to release (commit) a savepoint if there are // active write statements. Xsqlite3VdbeError(tls, p, - ts+7488 /* "cannot release s..." */, 0) + ts+7498 /* "cannot release s..." */, 0) rc = SQLITE_BUSY goto __461 __460: @@ -69020,7 +69560,7 @@ __490: // If this instruction implements a COMMIT and other VMs are writing // return an error indicating that the other VMs must complete first. Xsqlite3VdbeError(tls, p, - ts+7542 /* "cannot commit tr..." */, 0) + ts+7552 /* "cannot commit tr..." */, 0) rc = SQLITE_BUSY goto abort_due_to_error goto __493 @@ -69063,13 +69603,13 @@ __488: Xsqlite3VdbeError(tls, p, func() uintptr { if !(desiredAutoCommit != 0) { - return ts + 7597 /* "cannot start a t..." */ + return ts + 7607 /* "cannot start a t..." */ } return func() uintptr { if iRollback != 0 { - return ts + 7645 /* "cannot rollback ..." */ + return ts + 7655 /* "cannot rollback ..." */ } - return ts + 7688 /* "cannot commit - ..." */ + return ts + 7698 /* "cannot commit - ..." */ }() }(), 0) @@ -69187,7 +69727,7 @@ __500: // version is checked to ensure that the schema has not changed since the // SQL statement was prepared. Xsqlite3DbFree(tls, db, (*Vdbe)(unsafe.Pointer(p)).FzErrMsg) - (*Vdbe)(unsafe.Pointer(p)).FzErrMsg = Xsqlite3DbStrDup(tls, db, ts+7729 /* "database schema ..." */) + (*Vdbe)(unsafe.Pointer(p)).FzErrMsg = Xsqlite3DbStrDup(tls, db, ts+7739 /* "database schema ..." */) // If the schema-cookie from the database file matches the cookie // stored with the in-memory representation of the schema, do // not reload the schema from the database file. @@ -69569,7 +70109,7 @@ __86: // Only used when number of columns is zero (*Mem)(unsafe.Pointer(aMem + uintptr((*Op)(unsafe.Pointer(pOp)).Fp3)*40)).Fn = 0 - (*Mem)(unsafe.Pointer(aMem + uintptr((*Op)(unsafe.Pointer(pOp)).Fp3)*40)).Fz = ts + 915 /* "" */ + (*Mem)(unsafe.Pointer(aMem + uintptr((*Op)(unsafe.Pointer(pOp)).Fp3)*40)).Fz = ts + 925 /* "" */ __526: ; pCx1 = *(*uintptr)(unsafe.Pointer((*Vdbe)(unsafe.Pointer(p)).FapCsr + uintptr((*Op)(unsafe.Pointer(pOp)).Fp1)*4)) @@ -70890,7 +71430,9 @@ __642: goto __643 } - (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, Sqlite_int64))(unsafe.Pointer((db + 240 /* &.xUpdateCallback */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpUpdateArg, + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, Sqlite_int64) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxUpdateCallback})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpUpdateArg, func() int32 { if (int32((*Op)(unsafe.Pointer(pOp)).Fp5) & OPFLAG_ISUPDATE) != 0 { return SQLITE_UPDATE @@ -71038,7 +71580,9 @@ __650: if !(((*Sqlite3)(unsafe.Pointer(db)).FxUpdateCallback != 0) && (((*Table)(unsafe.Pointer((pTab1))).FtabFlags & U32(TF_WithoutRowid)) == U32(0))) { goto __652 } - (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, Sqlite_int64))(unsafe.Pointer((db + 240 /* &.xUpdateCallback */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpUpdateArg, SQLITE_DELETE, zDb1, (*Table)(unsafe.Pointer(pTab1)).FzName, + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, Sqlite_int64) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxUpdateCallback})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpUpdateArg, SQLITE_DELETE, zDb1, (*Table)(unsafe.Pointer(pTab1)).FzName, (*VdbeCursor)(unsafe.Pointer(pC11)).FmovetoTarget) __652: @@ -71232,7 +71776,9 @@ __662: pVtab = (*Sqlite3_vtab_cursor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pC15 + 40 /* &.uc */)))).FpVtab pModule = (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FpModule - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pModule + 48 /* &.xRowid */))))(tls, *(*uintptr)(unsafe.Pointer(pC15 + 40 /* &.uc */)), bp+420 /* &v3 */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule)).FxRowid})).f(tls, *(*uintptr)(unsafe.Pointer(pC15 + 40 /* &.uc */)), bp+420 /* &v3 */) Xsqlite3VtabImportErrmsg(tls, p, pVtab) if !(rc != 0) { goto __666 @@ -71535,7 +72081,9 @@ __123: // jump // The Next opcode is only used after SeekGT, SeekGE, Rewind, and Found. // The Prev opcode is only used after SeekLT, SeekLE, and Last. - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pOp + 16 /* &.p4 */ /* &.xAdvance */))))(tls, *(*uintptr)(unsafe.Pointer(pC20 + 40 /* &.uc */)), (*Op)(unsafe.Pointer(pOp)).Fp3) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */))})).f(tls, *(*uintptr)(unsafe.Pointer(pC20 + 40 /* &.uc */)), (*Op)(unsafe.Pointer(pOp)).Fp3) next_tail: (*VdbeCursor)(unsafe.Pointer(pC20)).FcacheStatus = U32(CACHE_STALE) @@ -71711,7 +72259,7 @@ __691: if !((*Op)(unsafe.Pointer(pOp)).Fp5 != 0) { goto __694 } - rc = Xsqlite3ReportError(tls, (SQLITE_CORRUPT | (int32(3) << 8)), 92446, ts+7757 /* "index corruption" */) + rc = Xsqlite3ReportError(tls, (SQLITE_CORRUPT | (int32(3) << 8)), 92446, ts+7767 /* "index corruption" */) goto abort_due_to_error __694: ; @@ -72144,14 +72692,14 @@ __139: goto __723 __722: - zSchema = ts + 7774 /* "sqlite_master" */ + zSchema = ts + 7784 /* "sqlite_master" */ (*InitData)(unsafe.Pointer(bp + 568 /* &initData */)).Fdb = db (*InitData)(unsafe.Pointer(bp + 568 /* &initData */)).FiDb = iDb3 (*InitData)(unsafe.Pointer(bp + 568 /* &initData */)).FpzErrMsg = (p + 120 /* &.zErrMsg */) (*InitData)(unsafe.Pointer(bp + 568 /* &initData */)).FmInitFlags = U32(0) (*InitData)(unsafe.Pointer(bp + 568 /* &initData */)).FmxPage = Xsqlite3BtreeLastPage(tls, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb3)*16)).FpBt) zSql = Xsqlite3MPrintf(tls, db, - ts+7788, /* "SELECT*FROM\"%w\"...." */ + ts+7798, /* "SELECT*FROM\"%w\"...." */ libc.VaList(bp+64, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb3)*16)).FzDbSName, zSchema, *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)))) if !(zSql == uintptr(0)) { goto __724 @@ -72484,7 +73032,7 @@ __744: goto __749 } rc = SQLITE_ERROR - Xsqlite3VdbeError(tls, p, ts+7831 /* "too many levels ..." */, 0) + Xsqlite3VdbeError(tls, p, ts+7841 /* "too many levels ..." */, 0) goto abort_due_to_error __749: ; @@ -72916,10 +73464,14 @@ __779: if !((*Op)(unsafe.Pointer(pOp)).Fp1 != 0) { goto __783 } - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(((*Sqlite3_context)(unsafe.Pointer(pCtx1)).FpFunc + 28 /* &.xInverse */))))(tls, pCtx1, int32((*Sqlite3_context)(unsafe.Pointer(pCtx1)).Fargc), pCtx1+28 /* &.argv */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*FuncDef)(unsafe.Pointer((*Sqlite3_context)(unsafe.Pointer(pCtx1)).FpFunc)).FxInverse})).f(tls, pCtx1, int32((*Sqlite3_context)(unsafe.Pointer(pCtx1)).Fargc), pCtx1+28 /* &.argv */) goto __784 __783: - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(((*Sqlite3_context)(unsafe.Pointer(pCtx1)).FpFunc + 16 /* &.xSFunc */))))(tls, pCtx1, int32((*Sqlite3_context)(unsafe.Pointer(pCtx1)).Fargc), pCtx1+28 /* &.argv */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*FuncDef)(unsafe.Pointer((*Sqlite3_context)(unsafe.Pointer(pCtx1)).FpFunc)).FxSFunc})).f(tls, pCtx1, int32((*Sqlite3_context)(unsafe.Pointer(pCtx1)).Fargc), pCtx1+28 /* &.argv */) __784: ; // IMP: R-24505-23230 @@ -72929,7 +73481,7 @@ __784: if !((*Sqlite3_context)(unsafe.Pointer(pCtx1)).FisError > 0) { goto __786 } - Xsqlite3VdbeError(tls, p, ts+951 /* "%s" */, libc.VaList(bp+88, Xsqlite3_value_text(tls, (*Sqlite3_context)(unsafe.Pointer(pCtx1)).FpOut))) + Xsqlite3VdbeError(tls, p, ts+961 /* "%s" */, libc.VaList(bp+88, Xsqlite3_value_text(tls, (*Sqlite3_context)(unsafe.Pointer(pCtx1)).FpOut))) rc = (*Sqlite3_context)(unsafe.Pointer(pCtx1)).FisError __786: ; @@ -73007,7 +73559,7 @@ __791: if !(rc != 0) { goto __792 } - Xsqlite3VdbeError(tls, p, ts+951 /* "%s" */, libc.VaList(bp+96, Xsqlite3_value_text(tls, pMem4))) + Xsqlite3VdbeError(tls, p, ts+961 /* "%s" */, libc.VaList(bp+96, Xsqlite3_value_text(tls, pMem4))) goto abort_due_to_error __792: ; @@ -73122,12 +73674,12 @@ __801: } rc = SQLITE_ERROR Xsqlite3VdbeError(tls, p, - ts+7868, /* "cannot change %s..." */ + ts+7878, /* "cannot change %s..." */ libc.VaList(bp+104, func() uintptr { if eNew == PAGER_JOURNALMODE_WAL { - return ts + 7920 /* "into" */ + return ts + 7930 /* "into" */ } - return ts + 7925 /* "out of" */ + return ts + 7935 /* "out of" */ }())) goto abort_due_to_error goto __804 @@ -73330,7 +73882,7 @@ __169: goto __819 } z1 = *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)) - Xsqlite3VdbeError(tls, p, ts+7932 /* "database table i..." */, libc.VaList(bp+112, z1)) + Xsqlite3VdbeError(tls, p, ts+7942 /* "database table i..." */, libc.VaList(bp+112, z1)) __819: ; goto abort_due_to_error @@ -73430,7 +73982,9 @@ __173: __825: ; pModule1 = (*Sqlite3_vtab)(unsafe.Pointer(pVtab1)).FpModule - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pModule1 + 24 /* &.xOpen */))))(tls, pVtab1, bp+668 /* &pVCur */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule1)).FxOpen})).f(tls, pVtab1, bp+668 /* &pVCur */) Xsqlite3VtabImportErrmsg(tls, p, pVtab1) if !(rc != 0) { goto __826 @@ -73452,7 +74006,9 @@ __826: goto __828 __827: ; - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pModule1 + 28 /* &.xClose */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 668 /* pVCur */))) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule1)).FxClose})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 668 /* pVCur */))) goto no_mem __828: ; @@ -73507,7 +74063,9 @@ __830: goto __831 __831: ; - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer((pModule2 + 32 /* &.xFilter */))))(tls, pVCur1, iQuery, *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)), nArg, apArg) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule2)).FxFilter})).f(tls, pVCur1, iQuery, *(*uintptr)(unsafe.Pointer(pOp + 16 /* &.p4 */)), nArg, apArg) Xsqlite3VtabImportErrmsg(tls, p, pVtab2) if !(rc != 0) { goto __832 @@ -73515,7 +74073,9 @@ __831: goto abort_due_to_error __832: ; - res13 = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pModule2 + 40 /* &.xEof */))))(tls, pVCur1) + res13 = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule2)).FxEof})).f(tls, pVCur1) (*VdbeCursor)(unsafe.Pointer(pCur3)).FnullRow = U8(0) if !(res13 != 0) { @@ -73569,12 +74129,14 @@ __835: (*Mem)(unsafe.Pointer(pDest2)).Fflags = (U16((int32((*Mem)(unsafe.Pointer((pDest2))).Fflags) & libc.CplInt32((MEM_TypeMask | MEM_Zero))) | MEM_Null)) __836: ; - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pModule3 + 44 /* &.xColumn */))))(tls, *(*uintptr)(unsafe.Pointer(pCur4 + 40 /* &.uc */)), bp+672 /* &sContext */, (*Op)(unsafe.Pointer(pOp)).Fp2) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule3)).FxColumn})).f(tls, *(*uintptr)(unsafe.Pointer(pCur4 + 40 /* &.uc */)), bp+672 /* &sContext */, (*Op)(unsafe.Pointer(pOp)).Fp2) Xsqlite3VtabImportErrmsg(tls, p, pVtab3) if !((*Sqlite3_context)(unsafe.Pointer(bp+672 /* &sContext */)).FisError > 0) { goto __837 } - Xsqlite3VdbeError(tls, p, ts+951 /* "%s" */, libc.VaList(bp+120, Xsqlite3_value_text(tls, pDest2))) + Xsqlite3VdbeError(tls, p, ts+961 /* "%s" */, libc.VaList(bp+120, Xsqlite3_value_text(tls, pDest2))) rc = (*Sqlite3_context)(unsafe.Pointer(bp + 672 /* &sContext */)).FisError __837: ; @@ -73620,7 +74182,9 @@ __840: // xNext(). Instead, if an error occurs, true is returned (indicating that // data is available) and the error code returned when xColumn or // some other method is next invoked on the save virtual table cursor. - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pModule4 + 36 /* &.xNext */))))(tls, *(*uintptr)(unsafe.Pointer(pCur5 + 40 /* &.uc */))) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule4)).FxNext})).f(tls, *(*uintptr)(unsafe.Pointer(pCur5 + 40 /* &.uc */))) Xsqlite3VtabImportErrmsg(tls, p, pVtab4) if !(rc != 0) { goto __841 @@ -73628,7 +74192,9 @@ __840: goto abort_due_to_error __841: ; - res14 = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pModule4 + 40 /* &.xEof */))))(tls, *(*uintptr)(unsafe.Pointer(pCur5 + 40 /* &.uc */))) + res14 = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule4)).FxEof})).f(tls, *(*uintptr)(unsafe.Pointer(pCur5 + 40 /* &.uc */))) if !(!(res14 != 0)) { goto __842 @@ -73658,7 +74224,9 @@ __177: goto abort_due_to_error __843: ; - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_vtab)(unsafe.Pointer(pVtab5)).FpModule + 76 /* &.xRename */))))(tls, pVtab5, (*Mem)(unsafe.Pointer(pName)).Fz) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer((*Sqlite3_vtab)(unsafe.Pointer(pVtab5)).FpModule)).FxRename})).f(tls, pVtab5, (*Mem)(unsafe.Pointer(pName)).Fz) if !(isLegacy == 0) { goto __844 } @@ -73744,7 +74312,9 @@ __850: __851: ; (*Sqlite3)(unsafe.Pointer(db)).FvtabOnConflict = U8((*Op)(unsafe.Pointer(pOp)).Fp5) - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pModule5 + 52 /* &.xUpdate */))))(tls, pVtab6, nArg1, apArg1, bp+704 /* &rowid1 */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule5)).FxUpdate})).f(tls, pVtab6, nArg1, apArg1, bp+704 /* &rowid1 */) (*Sqlite3)(unsafe.Pointer(db)).FvtabOnConflict = vtabOnConflict Xsqlite3VtabImportErrmsg(tls, p, pVtab6) if !((rc == SQLITE_OK) && ((*Op)(unsafe.Pointer(pOp)).Fp1 != 0)) { @@ -73898,7 +74468,9 @@ __860: (*Mem)(unsafe.Pointer(pOut)).Fflags = (U16((int32((*Mem)(unsafe.Pointer((pOut))).Fflags) & libc.CplInt32((MEM_TypeMask | MEM_Zero))) | MEM_Null)) - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(((*Sqlite3_context)(unsafe.Pointer(pCtx2)).FpFunc + 16 /* &.xSFunc */))))(tls, pCtx2, int32((*Sqlite3_context)(unsafe.Pointer(pCtx2)).Fargc), pCtx2+28 /* &.argv */) // IMP: R-24505-23230 + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*FuncDef)(unsafe.Pointer((*Sqlite3_context)(unsafe.Pointer(pCtx2)).FpFunc)).FxSFunc})).f(tls, pCtx2, int32((*Sqlite3_context)(unsafe.Pointer(pCtx2)).Fargc), pCtx2+28 /* &.argv */) // IMP: R-24505-23230 // If the function returned an error, throw an exception if !((*Sqlite3_context)(unsafe.Pointer(pCtx2)).FisError != 0) { @@ -73907,7 +74479,7 @@ __860: if !((*Sqlite3_context)(unsafe.Pointer(pCtx2)).FisError > 0) { goto __865 } - Xsqlite3VdbeError(tls, p, ts+951 /* "%s" */, libc.VaList(bp+128, Xsqlite3_value_text(tls, pOut))) + Xsqlite3VdbeError(tls, p, ts+961 /* "%s" */, libc.VaList(bp+128, Xsqlite3_value_text(tls, pOut))) rc = (*Sqlite3_context)(unsafe.Pointer(pCtx2)).FisError __865: ; @@ -73991,19 +74563,25 @@ __184: goto __870 } z2 = Xsqlite3VdbeExpandSql(tls, p, zTrace) - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((db + 204 /* &.trace */ /* &.xLegacy */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, z2) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(db + 204 /* &.trace */))})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, z2) Xsqlite3_free(tls, z2) goto __871 __870: if !((*Sqlite3)(unsafe.Pointer(db)).FnVdbeExec > 1) { goto __872 } - z3 = Xsqlite3MPrintf(tls, db, ts+7961 /* "-- %s" */, libc.VaList(bp+136, zTrace)) - (*(*func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((db + 204 /* &.trace */ /* &.xV2 */))))(tls, uint32(SQLITE_TRACE_STMT), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, z3) + z3 = Xsqlite3MPrintf(tls, db, ts+7971 /* "-- %s" */, libc.VaList(bp+136, zTrace)) + (*struct { + f func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(db + 204 /* &.trace */))})).f(tls, uint32(SQLITE_TRACE_STMT), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, z3) Xsqlite3DbFree(tls, db, z3) goto __873 __872: - (*(*func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((db + 204 /* &.trace */ /* &.xV2 */))))(tls, uint32(SQLITE_TRACE_STMT), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, zTrace) + (*struct { + f func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(db + 204 /* &.trace */))})).f(tls, uint32(SQLITE_TRACE_STMT), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, p, zTrace) __873: ; __871: @@ -74101,13 +74679,13 @@ __881: if !(((*Vdbe)(unsafe.Pointer(p)).FzErrMsg == uintptr(0)) && (rc != (SQLITE_IOERR | (int32(12) << 8)))) { goto __883 } - Xsqlite3VdbeError(tls, p, ts+951 /* "%s" */, libc.VaList(bp+144, Xsqlite3ErrStr(tls, rc))) + Xsqlite3VdbeError(tls, p, ts+961 /* "%s" */, libc.VaList(bp+144, Xsqlite3ErrStr(tls, rc))) __883: ; (*Vdbe)(unsafe.Pointer(p)).Frc = rc Xsqlite3SystemError(tls, db, rc) - Xsqlite3_log(tls, rc, ts+7967, /* "statement aborts..." */ + Xsqlite3_log(tls, rc, ts+7977, /* "statement aborts..." */ libc.VaList(bp+152, ((int32(pOp)-int32(aOp))/24), (*Vdbe)(unsafe.Pointer(p)).FzSql, (*Vdbe)(unsafe.Pointer(p)).FzErrMsg)) Xsqlite3VdbeHalt(tls, p) if !(rc == (SQLITE_IOERR | (int32(12) << 8))) { @@ -74133,7 +74711,9 @@ __886: goto __887 } nProgressLimit = nProgressLimit + (U64((*Sqlite3)(unsafe.Pointer(db)).FnProgressOps)) - if !((*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((db + 356 /* &.xProgress */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpProgressArg) != 0) { + if !((*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxProgress})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpProgressArg) != 0) { goto __888 } nProgressLimit = (uint64(0xffffffff) | (U64((uint64(0xffffffff))) << 32)) @@ -74152,14 +74732,14 @@ __887: // Jump to here if a string or blob larger than SQLITE_MAX_LENGTH // is encountered. too_big: - Xsqlite3VdbeError(tls, p, ts+7266 /* "string or blob t..." */, 0) + Xsqlite3VdbeError(tls, p, ts+7276 /* "string or blob t..." */, 0) rc = SQLITE_TOOBIG goto abort_due_to_error // Jump to here if a malloc() fails. no_mem: Xsqlite3OomFault(tls, db) - Xsqlite3VdbeError(tls, p, ts+7999 /* "out of memory" */, 0) + Xsqlite3VdbeError(tls, p, ts+8009 /* "out of memory" */, 0) rc = SQLITE_NOMEM goto abort_due_to_error @@ -74172,8 +74752,8 @@ abort_due_to_interrupt: return int32(0) } -var azType = [4]uintptr{ts + 8013 /* "NOT NULL" */, ts + 8022 /* "UNIQUE" */, ts + 8029, /* "CHECK" */ - ts + 8035 /* "FOREIGN KEY" */} /* sqlite3.c:87624:25 */ +var azType = [4]uintptr{ts + 8023 /* "NOT NULL" */, ts + 8032 /* "UNIQUE" */, ts + 8039, /* "CHECK" */ + ts + 8045 /* "FOREIGN KEY" */} /* sqlite3.c:87624:25 */ var and_logic = [9]uint8{uint8(0), uint8(0), uint8(0), uint8(0), uint8(1), uint8(2), uint8(0), uint8(2), uint8(2)} /* sqlite3.c:88844:32 */ var or_logic = [9]uint8{uint8(0), uint8(1), uint8(2), uint8(1), uint8(1), uint8(1), uint8(2), uint8(1), uint8(2)} /* sqlite3.c:88847:32 */ var aFlag1 = [2]U16{U16(MEM_Blob), (U16(MEM_Str | MEM_Term))} /* sqlite3.c:89315:24 */ @@ -74199,15 +74779,15 @@ var vfsFlags int32 = ((((SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE) | SQLITE_OP // Valid sqlite3_blob* handles point to Incrblob structures. type Incrblob1 = struct { - FnByte int32 - FiOffset int32 - FiCol U16 - _ [2]byte - FpCsr uintptr - FpStmt uintptr - Fdb uintptr - FzDb uintptr - FpTab uintptr + FnByte int32 + FiOffset int32 + FiCol U16 + F__ccgo_pad1 [2]byte + FpCsr uintptr + FpStmt uintptr + Fdb uintptr + FzDb uintptr + FpTab uintptr } /* sqlite3.c:94829:9 */ //************* End of vdbe.c *********************************************** @@ -74280,16 +74860,16 @@ func blobSeekToRow(tls *libc.TLS, p uintptr, iRow Sqlite3_int64, pzErr uintptr) } if type1 < U32(12) { - zErr = Xsqlite3MPrintf(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb, ts+8047, /* "cannot open valu..." */ + zErr = Xsqlite3MPrintf(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb, ts+8057, /* "cannot open valu..." */ libc.VaList(bp, func() uintptr { if type1 == U32(0) { - return ts + 8076 /* "null" */ + return ts + 8086 /* "null" */ } return func() uintptr { if type1 == U32(7) { - return ts + 8081 /* "real" */ + return ts + 8091 /* "real" */ } - return ts + 8086 /* "integer" */ + return ts + 8096 /* "integer" */ }() }())) rc = SQLITE_ERROR @@ -74309,10 +74889,10 @@ func blobSeekToRow(tls *libc.TLS, p uintptr, iRow Sqlite3_int64, pzErr uintptr) rc = Xsqlite3_finalize(tls, (*Incrblob)(unsafe.Pointer(p)).FpStmt) (*Incrblob)(unsafe.Pointer(p)).FpStmt = uintptr(0) if rc == SQLITE_OK { - zErr = Xsqlite3MPrintf(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb, ts+8094 /* "no such rowid: %..." */, libc.VaList(bp+8, iRow)) + zErr = Xsqlite3MPrintf(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb, ts+8104 /* "no such rowid: %..." */, libc.VaList(bp+8, iRow)) rc = SQLITE_ERROR } else { - zErr = Xsqlite3MPrintf(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb, ts+951 /* "%s" */, libc.VaList(bp+16, Xsqlite3_errmsg(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb))) + zErr = Xsqlite3MPrintf(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb, ts+961 /* "%s" */, libc.VaList(bp+16, Xsqlite3_errmsg(tls, (*Incrblob)(unsafe.Pointer(p)).Fdb))) } } @@ -74375,21 +74955,21 @@ __4: goto __5 } pTab = uintptr(0) - Xsqlite3ErrorMsg(tls, bp+48 /* &sParse */, ts+8114 /* "cannot open virt..." */, libc.VaList(bp, zTable)) + Xsqlite3ErrorMsg(tls, bp+48 /* &sParse */, ts+8124 /* "cannot open virt..." */, libc.VaList(bp, zTable)) __5: ; if !((pTab != 0) && !(((*Table)(unsafe.Pointer((pTab))).FtabFlags & U32(TF_WithoutRowid)) == U32(0))) { goto __6 } pTab = uintptr(0) - Xsqlite3ErrorMsg(tls, bp+48 /* &sParse */, ts+8144 /* "cannot open tabl..." */, libc.VaList(bp+8, zTable)) + Xsqlite3ErrorMsg(tls, bp+48 /* &sParse */, ts+8154 /* "cannot open tabl..." */, libc.VaList(bp+8, zTable)) __6: ; if !((pTab != 0) && ((*Table)(unsafe.Pointer(pTab)).FpSelect != 0)) { goto __7 } pTab = uintptr(0) - Xsqlite3ErrorMsg(tls, bp+48 /* &sParse */, ts+8180 /* "cannot open view..." */, libc.VaList(bp+16, zTable)) + Xsqlite3ErrorMsg(tls, bp+48 /* &sParse */, ts+8190 /* "cannot open view..." */, libc.VaList(bp+16, zTable)) __7: ; if !(!(pTab != 0)) { @@ -74434,7 +75014,7 @@ __12: goto __14 } Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */))) - *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */)) = Xsqlite3MPrintf(tls, db, ts+8201 /* "no such column: ..." */, libc.VaList(bp+24, zColumn)) + *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */)) = Xsqlite3MPrintf(tls, db, ts+8211 /* "no such column: ..." */, libc.VaList(bp+24, zColumn)) rc = SQLITE_ERROR Xsqlite3BtreeLeaveAll(tls, db) goto blob_open_out @@ -74463,7 +75043,7 @@ __20: if !((*sColMap)(unsafe.Pointer((pFKey+36 /* &.aCol */)+uintptr(j)*8)).FiFrom == iCol) { goto __23 } - zFault = ts + 8222 /* "foreign key" */ + zFault = ts + 8232 /* "foreign key" */ __23: ; goto __21 @@ -74496,7 +75076,7 @@ __27: if !((int32(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(j1)*2))) == iCol) || (int32(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(j1)*2))) == (-2))) { goto __30 } - zFault = ts + 8234 /* "indexed" */ + zFault = ts + 8244 /* "indexed" */ __30: ; goto __28 @@ -74517,7 +75097,7 @@ __26: goto __31 } Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */))) - *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */)) = Xsqlite3MPrintf(tls, db, ts+8242 /* "cannot open %s c..." */, libc.VaList(bp+32, zFault)) + *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */)) = Xsqlite3MPrintf(tls, db, ts+8252 /* "cannot open %s c..." */, libc.VaList(bp+32, zFault)) rc = SQLITE_ERROR Xsqlite3BtreeLeaveAll(tls, db) goto blob_open_out @@ -74626,7 +75206,7 @@ __38: ; Xsqlite3ErrorWithMsg(tls, db, rc, func() uintptr { if *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */)) != 0 { - return ts + 951 /* "%s" */ + return ts + 961 /* "%s" */ } return uintptr(0) }(), libc.VaList(bp+40, *(*uintptr)(unsafe.Pointer(bp + 320 /* zErr */)))) @@ -74716,7 +75296,9 @@ func blobReadWrite(tls *libc.TLS, pBlob uintptr, z uintptr, n int32, iOffset int v, *(*uintptr)(unsafe.Pointer((*Vdbe)(unsafe.Pointer(v)).FapCsr)), SQLITE_DELETE, (*Incrblob)(unsafe.Pointer(p)).FzDb, (*Incrblob)(unsafe.Pointer(p)).FpTab, iKey, -1, int32((*Incrblob)(unsafe.Pointer(p)).FiCol)) } - rc = (*(*func(*libc.TLS, uintptr, U32, U32, uintptr) int32)(unsafe.Pointer(&xCall)))(tls, (*Incrblob)(unsafe.Pointer(p)).FpCsr, (uint32(iOffset + (*Incrblob)(unsafe.Pointer(p)).FiOffset)), uint32(n), z) + rc = (*struct { + f func(*libc.TLS, uintptr, U32, U32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xCall})).f(tls, (*Incrblob)(unsafe.Pointer(p)).FpCsr, (uint32(iOffset + (*Incrblob)(unsafe.Pointer(p)).FiOffset)), uint32(n), z) Xsqlite3BtreeLeaveCursor(tls, (*Incrblob)(unsafe.Pointer(p)).FpCsr) if rc == SQLITE_ABORT { Xsqlite3VdbeFinalize(tls, v) @@ -74791,7 +75373,7 @@ func Xsqlite3_blob_reopen(tls *libc.TLS, pBlob uintptr, iRow Sqlite3_int64) int3 if rc != SQLITE_OK { Xsqlite3ErrorWithMsg(tls, db, rc, func() uintptr { if *(*uintptr)(unsafe.Pointer(bp + 8 /* zErr */)) != 0 { - return ts + 951 /* "%s" */ + return ts + 961 /* "%s" */ } return uintptr(0) }(), libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErr */)))) @@ -76015,7 +76597,9 @@ func vdbeSorterMerge(tls *libc.TLS, pTask uintptr, p1 uintptr, p2 uintptr) uintp for { var res int32 - res = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr, int32) int32)(unsafe.Pointer((pTask + 32 /* &.xCompare */))))(tls, + res = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SortSubtask)(unsafe.Pointer(pTask)).FxCompare})).f(tls, pTask, bp+4 /* &bCached */, ((p1) + uintptr(1)*8), (*SorterRecord)(unsafe.Pointer(p1)).FnVal, ((p2) + uintptr(1)*8), (*SorterRecord)(unsafe.Pointer(p2)).FnVal) if res <= 0 { @@ -76286,7 +76870,9 @@ func vdbeMergeEngineStep(tls *libc.TLS, pMerger uintptr, pbEof uintptr) int32 { } else if (*PmaReader)(unsafe.Pointer(pReadr2)).FpFd == uintptr(0) { iRes = -1 } else { - iRes = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr, int32) int32)(unsafe.Pointer((pTask + 32 /* &.xCompare */))))(tls, pTask, bp, /* &bCached */ + iRes = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SortSubtask)(unsafe.Pointer(pTask)).FxCompare})).f(tls, pTask, bp, /* &bCached */ (*PmaReader)(unsafe.Pointer(pReadr1)).FaKey, (*PmaReader)(unsafe.Pointer(pReadr1)).FnKey, (*PmaReader)(unsafe.Pointer(pReadr2)).FaKey, (*PmaReader)(unsafe.Pointer(pReadr2)).FnKey) } @@ -76695,7 +77281,9 @@ func vdbeMergeEngineCompare(tls *libc.TLS, pMerger uintptr, iOut int32) { /* sql *(*int32)(unsafe.Pointer(bp /* bCached */)) = 0 var res int32 // from vdbeSortSubtaskMain() - res = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr, int32) int32)(unsafe.Pointer((pTask + 32 /* &.xCompare */))))(tls, + res = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SortSubtask)(unsafe.Pointer(pTask)).FxCompare})).f(tls, pTask, bp /* &bCached */, (*PmaReader)(unsafe.Pointer(p1)).FaKey, (*PmaReader)(unsafe.Pointer(p1)).FnKey, (*PmaReader)(unsafe.Pointer(p2)).FaKey, (*PmaReader)(unsafe.Pointer(p2)).FnKey) if res <= 0 { iRes = i1 @@ -77406,11 +77994,11 @@ func bytecodevtabConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, ar *(*[2]uintptr)(unsafe.Pointer(bp /* azSchema */)) = [2]uintptr{ // bytecode() schema - ts + 8276, /* "CREATE TABLE x(a..." */ + ts + 8286, /* "CREATE TABLE x(a..." */ // Tables_used() schema - ts + 8388, /* "CREATE TABLE x(t..." */ + ts + 8398, /* "CREATE TABLE x(t..." */ } rc = Xsqlite3_declare_vtab(tls, db, *(*uintptr)(unsafe.Pointer(bp /* &azSchema[0] */ + uintptr(isTabUsed)*4))) @@ -77534,7 +78122,7 @@ func bytecodevtabColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 var pTab uintptr = (*HashElem)(unsafe.Pointer(k)).Fdata if !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) && ((*Table)(unsafe.Pointer(pTab)).Ftnum == iRoot) { (*Bytecodevtab_cursor)(unsafe.Pointer(pCur)).FzName = (*Table)(unsafe.Pointer(pTab)).FzName - (*Bytecodevtab_cursor)(unsafe.Pointer(pCur)).FzType = ts + 8469 /* "table" */ + (*Bytecodevtab_cursor)(unsafe.Pointer(pCur)).FzType = ts + 8479 /* "table" */ break } } @@ -77543,7 +78131,7 @@ func bytecodevtabColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 var pIdx uintptr = (*HashElem)(unsafe.Pointer(k)).Fdata if (*Index)(unsafe.Pointer(pIdx)).Ftnum == iRoot { (*Bytecodevtab_cursor)(unsafe.Pointer(pCur)).FzName = (*Index)(unsafe.Pointer(pIdx)).FzName - (*Bytecodevtab_cursor)(unsafe.Pointer(pCur)).FzType = ts + 8475 /* "index" */ + (*Bytecodevtab_cursor)(unsafe.Pointer(pCur)).FzType = ts + 8485 /* "index" */ } } } @@ -77593,7 +78181,7 @@ func bytecodevtabColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 } else if *(*uintptr)(unsafe.Pointer(aOp + 16 /* &.p4 */)) != uintptr(0) { Xsqlite3_result_text(tls, ctx, (*(*uintptr)(unsafe.Pointer(aOp + 16 /* &.p4 */)) + uintptr(3)), -1, uintptr(0)) } else { - Xsqlite3_result_text(tls, ctx, ts+8481 /* "(FK)" */, 4, uintptr(0)) + Xsqlite3_result_text(tls, ctx, ts+8491 /* "(FK)" */, 4, uintptr(0)) } break @@ -77648,16 +78236,16 @@ func bytecodevtabFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr (*Bytecodevtab_cursor)(unsafe.Pointer(pCur)).FneedFinalize = 1 } } else { - (*Bytecodevtab_cursor)(unsafe.Pointer(pCur)).FpStmt = Xsqlite3_value_pointer(tls, *(*uintptr)(unsafe.Pointer(argv)), ts+8486 /* "stmt-pointer" */) + (*Bytecodevtab_cursor)(unsafe.Pointer(pCur)).FpStmt = Xsqlite3_value_pointer(tls, *(*uintptr)(unsafe.Pointer(argv)), ts+8496 /* "stmt-pointer" */) } if (*Bytecodevtab_cursor)(unsafe.Pointer(pCur)).FpStmt == uintptr(0) { (*Bytecodevtab)(unsafe.Pointer(pVTab)).Fbase.FzErrMsg = Xsqlite3_mprintf(tls, - ts+8499, /* "argument to %s()..." */ + ts+8509, /* "argument to %s()..." */ libc.VaList(bp, func() uintptr { if (*Bytecodevtab)(unsafe.Pointer(pVTab)).FbTablesUsed != 0 { - return ts + 8545 /* "tables_used" */ + return ts + 8555 /* "tables_used" */ } - return ts + 8557 /* "bytecode" */ + return ts + 8567 /* "bytecode" */ }())) rc = SQLITE_ERROR } else { @@ -77736,9 +78324,9 @@ func Xsqlite3VdbeBytecodeVtabInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3. *(*uintptr)(unsafe.Pointer(bp)) = db var rc int32 - rc = Xsqlite3_create_module(tls, *(*uintptr)(unsafe.Pointer(bp /* db */)), ts+8557 /* "bytecode" */, uintptr(unsafe.Pointer(&bytecodevtabModule)), uintptr(0)) + rc = Xsqlite3_create_module(tls, *(*uintptr)(unsafe.Pointer(bp /* db */)), ts+8567 /* "bytecode" */, uintptr(unsafe.Pointer(&bytecodevtabModule)), uintptr(0)) if rc == SQLITE_OK { - rc = Xsqlite3_create_module(tls, *(*uintptr)(unsafe.Pointer(bp /* db */)), ts+8545 /* "tables_used" */, uintptr(unsafe.Pointer(&bytecodevtabModule)), bp /* &db */) + rc = Xsqlite3_create_module(tls, *(*uintptr)(unsafe.Pointer(bp /* db */)), ts+8555 /* "tables_used" */, uintptr(unsafe.Pointer(&bytecodevtabModule)), bp /* &db */) } return rc } @@ -78177,7 +78765,9 @@ func walkExpr(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3. var rc int32 for 1 != 0 { - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pWalker + 4 /* &.xExprCallback */))))(tls, pWalker, pExpr) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Walker)(unsafe.Pointer(pWalker)).FxExprCallback})).f(tls, pWalker, pExpr) if rc != 0 { return (rc & WRC_Abort) } @@ -78361,7 +78951,9 @@ func Xsqlite3WalkSelect(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sq return WRC_Continue } for ok := true; ok; ok = (p != uintptr(0)) { - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pWalker + 8 /* &.xSelectCallback */))))(tls, pWalker, p) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Walker)(unsafe.Pointer(pWalker)).FxSelectCallback})).f(tls, pWalker, p) if rc != 0 { return (rc & WRC_Abort) } @@ -78370,7 +78962,9 @@ func Xsqlite3WalkSelect(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sq return WRC_Abort } if (*Walker)(unsafe.Pointer(pWalker)).FxSelectCallback2 != 0 { - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pWalker + 12 /* &.xSelectCallback2 */))))(tls, pWalker, p) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Walker)(unsafe.Pointer(pWalker)).FxSelectCallback2})).f(tls, pWalker, p) } p = (*Select)(unsafe.Pointer(p)).FpPrior } @@ -78718,7 +79312,7 @@ __5: goto __6 __6: ; - if !((i == (*Sqlite3)(unsafe.Pointer(db)).FnDb) && (Xsqlite3StrICmp(tls, ts+8566 /* "main" */, zDb) == 0)) { + if !((i == (*Sqlite3)(unsafe.Pointer(db)).FnDb) && (Xsqlite3StrICmp(tls, ts+8576 /* "main" */, zDb) == 0)) { goto __8 } // This branch is taken when the main database has been renamed @@ -78921,14 +79515,14 @@ __40: ; goto __39 __38: - if !(((op != TK_DELETE) && (zTab != 0)) && (Xsqlite3StrICmp(tls, ts+8571 /* "new" */, zTab) == 0)) { + if !(((op != TK_DELETE) && (zTab != 0)) && (Xsqlite3StrICmp(tls, ts+8581 /* "new" */, zTab) == 0)) { goto __41 } (*Expr)(unsafe.Pointer(pExpr)).FiTable = 1 pTab = (*Parse)(unsafe.Pointer(pParse)).FpTriggerTab goto __42 __41: - if !(((op != TK_INSERT) && (zTab != 0)) && (Xsqlite3StrICmp(tls, ts+8575 /* "old" */, zTab) == 0)) { + if !(((op != TK_INSERT) && (zTab != 0)) && (Xsqlite3StrICmp(tls, ts+8585 /* "old" */, zTab) == 0)) { goto __43 } (*Expr)(unsafe.Pointer(pExpr)).FiTable = 0 @@ -78945,7 +79539,7 @@ __37: goto __44 } pUpsert = *(*uintptr)(unsafe.Pointer(pNC + 8 /* &.uNC */)) - if !((pUpsert != 0) && (Xsqlite3StrICmp(tls, ts+8579 /* "excluded" */, zTab) == 0)) { + if !((pUpsert != 0) && (Xsqlite3StrICmp(tls, ts+8589 /* "excluded" */, zTab) == 0)) { goto __45 } pTab = (*SrcItem)(unsafe.Pointer(((*Upsert)(unsafe.Pointer(pUpsert)).FpUpsertSrc + 8 /* &.a */))).FpTab @@ -79122,7 +79716,7 @@ __66: if !((((*NameContext)(unsafe.Pointer(pNC)).FncFlags & NC_AllowAgg) == 0) && (((*Expr)(unsafe.Pointer((pOrig))).Fflags & (U32(EP_Agg))) != U32(0))) { goto __70 } - Xsqlite3ErrorMsg(tls, pParse, ts+8588 /* "misuse of aliase..." */, libc.VaList(bp, zAs)) + Xsqlite3ErrorMsg(tls, pParse, ts+8598 /* "misuse of aliase..." */, libc.VaList(bp, zAs)) return WRC_Abort __70: ; @@ -79130,14 +79724,14 @@ __70: ((((*NameContext)(unsafe.Pointer(pNC)).FncFlags & NC_AllowWin) == 0) || (pNC != pTopNC))) { goto __71 } - Xsqlite3ErrorMsg(tls, pParse, ts+8619 /* "misuse of aliase..." */, libc.VaList(bp+8, zAs)) + Xsqlite3ErrorMsg(tls, pParse, ts+8629 /* "misuse of aliase..." */, libc.VaList(bp+8, zAs)) return WRC_Abort __71: ; if !(Xsqlite3ExprVectorSize(tls, pOrig) != 1) { goto __72 } - Xsqlite3ErrorMsg(tls, pParse, ts+8656 /* "row value misuse..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+8666 /* "row value misuse..." */, 0) return WRC_Abort __72: ; @@ -79213,7 +79807,7 @@ __11: // a huge amount of legacy SQL that uses it. So for now, we just // issue a warning. Xsqlite3_log(tls, SQLITE_WARNING, - ts+8674 /* "double-quoted st..." */, libc.VaList(bp+16, zCol)) + ts+8684 /* "double-quoted st..." */, libc.VaList(bp+16, zCol)) (*Expr)(unsafe.Pointer(pExpr)).Fop = U8(TK_STRING) *(*uintptr)(unsafe.Pointer(pExpr + 44 /* &.y */)) = uintptr(0) return WRC_Prune @@ -79234,23 +79828,23 @@ __75: goto __78 } if cnt == 0 { - zErr = ts + 8709 /* "no such column" */ + zErr = ts + 8719 /* "no such column" */ } else { - zErr = ts + 8724 /* "ambiguous column..." */ + zErr = ts + 8734 /* "ambiguous column..." */ } if !(zDb != 0) { goto __79 } - Xsqlite3ErrorMsg(tls, pParse, ts+8746 /* "%s: %s.%s.%s" */, libc.VaList(bp+24, zErr, zDb, zTab, zCol)) + Xsqlite3ErrorMsg(tls, pParse, ts+8756 /* "%s: %s.%s.%s" */, libc.VaList(bp+24, zErr, zDb, zTab, zCol)) goto __80 __79: if !(zTab != 0) { goto __81 } - Xsqlite3ErrorMsg(tls, pParse, ts+8759 /* "%s: %s.%s" */, libc.VaList(bp+56, zErr, zTab, zCol)) + Xsqlite3ErrorMsg(tls, pParse, ts+8769 /* "%s: %s.%s" */, libc.VaList(bp+56, zErr, zTab, zCol)) goto __82 __81: - Xsqlite3ErrorMsg(tls, pParse, ts+8769 /* "%s: %s" */, libc.VaList(bp+80, zErr, zCol)) + Xsqlite3ErrorMsg(tls, pParse, ts+8779 /* "%s: %s" */, libc.VaList(bp+80, zErr, zCol)) __82: ; __80: @@ -79384,15 +79978,15 @@ func notValidImpl(tls *libc.TLS, pParse uintptr, pNC uintptr, zMsg uintptr, pExp bp := tls.Alloc(16) defer tls.Free(16) - var zIn uintptr = ts + 8776 /* "partial index WH..." */ + var zIn uintptr = ts + 8786 /* "partial index WH..." */ if ((*NameContext)(unsafe.Pointer(pNC)).FncFlags & NC_IdxExpr) != 0 { - zIn = ts + 8804 /* "index expression..." */ + zIn = ts + 8814 /* "index expression..." */ } else if ((*NameContext)(unsafe.Pointer(pNC)).FncFlags & NC_IsCheck) != 0 { - zIn = ts + 8822 /* "CHECK constraint..." */ + zIn = ts + 8832 /* "CHECK constraint..." */ } else if ((*NameContext)(unsafe.Pointer(pNC)).FncFlags & NC_GenCol) != 0 { - zIn = ts + 8840 /* "generated column..." */ + zIn = ts + 8850 /* "generated column..." */ } - Xsqlite3ErrorMsg(tls, pParse, ts+8858 /* "%s prohibited in..." */, libc.VaList(bp, zMsg, zIn)) + Xsqlite3ErrorMsg(tls, pParse, ts+8868 /* "%s prohibited in..." */, libc.VaList(bp, zMsg, zIn)) if pExpr != 0 { (*Expr)(unsafe.Pointer(pExpr)).Fop = U8(TK_NULL) } @@ -79414,7 +80008,7 @@ func exprProbability(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:99948:12: */ if *(*float64)(unsafe.Pointer(bp /* r */)) > 1.0 { return -1 } - return (int32(*(*float64)(unsafe.Pointer(bp /* r */)) * 134217728.0)) + return (libc.Int32FromFloat64(*(*float64)(unsafe.Pointer(bp /* r */)) * 134217728.0)) } // This routine is callback for sqlite3WalkExpr(). @@ -79500,10 +80094,10 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s Xsqlite3WalkExpr(tls, pWalker, (*Expr)(unsafe.Pointer(pExpr)).FpLeft) if (0 == Xsqlite3ExprCanBeNull(tls, (*Expr)(unsafe.Pointer(pExpr)).FpLeft)) && !(int32((*Parse)(unsafe.Pointer(pParse)).FeParseMode) >= PARSE_MODE_RENAME) { if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_NOTNULL { - *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)) = ts + 8878 /* "true" */ + *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)) = ts + 8888 /* "true" */ *(*U32)(unsafe.Pointer(pExpr + 4 /* &.flags */)) |= (U32(EP_IsTrue)) } else { - *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)) = ts + 8883 /* "false" */ + *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)) = ts + 8893 /* "false" */ *(*U32)(unsafe.Pointer(pExpr + 4 /* &.flags */)) |= (U32(EP_IsFalse)) } (*Expr)(unsafe.Pointer(pExpr)).Fop = U8(TK_TRUEFALSE) @@ -79556,7 +80150,7 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s var pLeft uintptr = (*Expr)(unsafe.Pointer(pExpr)).FpLeft if ((*NameContext)(unsafe.Pointer((pNC))).FncFlags & (NC_IdxExpr | NC_GenCol)) != 0 { - notValidImpl(tls, pParse, pNC, ts+8889 /* "the \".\" operator" */, uintptr(0)) + notValidImpl(tls, pParse, pNC, ts+8899 /* "the \".\" operator" */, uintptr(0)) } pRight = (*Expr)(unsafe.Pointer(pExpr)).FpRight @@ -79623,7 +80217,7 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s if (*Expr)(unsafe.Pointer(pExpr)).FiTable < 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+8906 /* "second argument ..." */, 0) + ts+8916 /* "second argument ..." */, 0) (*NameContext)(unsafe.Pointer(pNC)).FnNcErr++ } } else { @@ -79648,7 +80242,7 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s var auth int32 = Xsqlite3AuthCheck(tls, pParse, SQLITE_FUNCTION, uintptr(0), (*FuncDef)(unsafe.Pointer(pDef)).FzName, uintptr(0)) if auth != SQLITE_OK { if auth == SQLITE_DENY { - Xsqlite3ErrorMsg(tls, pParse, ts+8977, /* "not authorized t..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+8987, /* "not authorized t..." */ libc.VaList(bp, (*FuncDef)(unsafe.Pointer(pDef)).FzName)) (*NameContext)(unsafe.Pointer(pNC)).FnNcErr++ } @@ -79672,7 +80266,7 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s // in a CHECK constraint. SQLServer, MySQL, and PostgreSQL all // all this. if ((*NameContext)(unsafe.Pointer((pNC))).FncFlags & ((NC_IdxExpr | NC_PartIdx) | NC_GenCol)) != 0 { - notValidImpl(tls, pParse, pNC, ts+9012 /* "non-deterministi..." */, uintptr(0)) + notValidImpl(tls, pParse, pNC, ts+9022 /* "non-deterministi..." */, uintptr(0)) } } else { @@ -79701,30 +80295,30 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s if ((pDef != 0) && ((*FuncDef)(unsafe.Pointer(pDef)).FxValue == uintptr(0))) && (pWin != 0) { Xsqlite3ErrorMsg(tls, pParse, - ts+9040 /* "%.*s() may not b..." */, libc.VaList(bp+8, nId, zId)) + ts+9050 /* "%.*s() may not b..." */, libc.VaList(bp+8, nId, zId)) (*NameContext)(unsafe.Pointer(pNC)).FnNcErr++ } else if (((is_agg != 0) && (((*NameContext)(unsafe.Pointer(pNC)).FncFlags & NC_AllowAgg) == 0)) || (((is_agg != 0) && (((*FuncDef)(unsafe.Pointer(pDef)).FfuncFlags & U32(SQLITE_FUNC_WINDOW)) != 0)) && !(pWin != 0))) || (((is_agg != 0) && (pWin != 0)) && (((*NameContext)(unsafe.Pointer(pNC)).FncFlags & NC_AllowWin) == 0)) { var zType uintptr if (((*FuncDef)(unsafe.Pointer(pDef)).FfuncFlags & U32(SQLITE_FUNC_WINDOW)) != 0) || (pWin != 0) { - zType = ts + 9084 /* "window" */ + zType = ts + 9094 /* "window" */ } else { - zType = ts + 9091 /* "aggregate" */ + zType = ts + 9101 /* "aggregate" */ } - Xsqlite3ErrorMsg(tls, pParse, ts+9101 /* "misuse of %s fun..." */, libc.VaList(bp+24, zType, nId, zId)) + Xsqlite3ErrorMsg(tls, pParse, ts+9111 /* "misuse of %s fun..." */, libc.VaList(bp+24, zType, nId, zId)) (*NameContext)(unsafe.Pointer(pNC)).FnNcErr++ is_agg = 0 } else if (no_such_func != 0) && (int32((*Sqlite3)(unsafe.Pointer((*Parse)(unsafe.Pointer(pParse)).Fdb)).Finit.Fbusy) == 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+9130 /* "no such function..." */, libc.VaList(bp+48, nId, zId)) + Xsqlite3ErrorMsg(tls, pParse, ts+9140 /* "no such function..." */, libc.VaList(bp+48, nId, zId)) (*NameContext)(unsafe.Pointer(pNC)).FnNcErr++ } else if wrong_num_args != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+9153, /* "wrong number of ..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+9163, /* "wrong number of ..." */ libc.VaList(bp+64, nId, zId)) (*NameContext)(unsafe.Pointer(pNC)).FnNcErr++ } else if (is_agg == 0) && (((*Expr)(unsafe.Pointer((pExpr))).Fflags & (U32(EP_WinFunc))) != U32(0)) { Xsqlite3ErrorMsg(tls, pParse, - ts+9198, /* "FILTER may not b..." */ + ts+9208, /* "FILTER may not b..." */ libc.VaList(bp+80, nId, zId)) (*NameContext)(unsafe.Pointer(pNC)).FnNcErr++ } @@ -79799,7 +80393,7 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s var nRef int32 = (*NameContext)(unsafe.Pointer(pNC)).FnRef if ((*NameContext)(unsafe.Pointer((pNC))).FncFlags & (((NC_IsCheck | NC_PartIdx) | NC_IdxExpr) | NC_GenCol)) != 0 { - notValidImpl(tls, pParse, pNC, ts+9247 /* "subqueries" */, pExpr) + notValidImpl(tls, pParse, pNC, ts+9257 /* "subqueries" */, pExpr) } Xsqlite3WalkSelect(tls, pWalker, *(*uintptr)(unsafe.Pointer(pExpr + 20 /* &.x */))) @@ -79816,7 +80410,7 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s { if ((*NameContext)(unsafe.Pointer((pNC))).FncFlags & (((NC_IsCheck | NC_PartIdx) | NC_IdxExpr) | NC_GenCol)) != 0 { - notValidImpl(tls, pParse, pNC, ts+9258 /* "parameters" */, pExpr) + notValidImpl(tls, pParse, pNC, ts+9268 /* "parameters" */, pExpr) } break @@ -79876,7 +80470,7 @@ func resolveExprStep(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* s } if nLeft != nRight { - Xsqlite3ErrorMsg(tls, pParse, ts+8656 /* "row value misuse..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+8666 /* "row value misuse..." */, 0) } break @@ -79981,7 +80575,7 @@ func resolveOutOfRangeError(tls *libc.TLS, pParse uintptr, zType uintptr, i int3 Xsqlite3ErrorMsg(tls, pParse, - ts+9269 /* "%r %s BY term ou..." */, libc.VaList(bp, i, zType, mx)) + ts+9279 /* "%r %s BY term ou..." */, libc.VaList(bp, i, zType, mx)) } // Analyze the ORDER BY clause in a compound SELECT statement. Modify @@ -80013,7 +80607,7 @@ func resolveCompoundOrderBy(tls *libc.TLS, pParse uintptr, pSelect uintptr) int3 } db = (*Parse)(unsafe.Pointer(pParse)).Fdb if (*ExprList)(unsafe.Pointer(pOrderBy)).FnExpr > *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 2*4)) { - Xsqlite3ErrorMsg(tls, pParse, ts+9325 /* "too many terms i..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+9335 /* "too many terms i..." */, 0) return 1 } for i = 0; i < (*ExprList)(unsafe.Pointer(pOrderBy)).FnExpr; i++ { @@ -80048,7 +80642,7 @@ func resolveCompoundOrderBy(tls *libc.TLS, pParse uintptr, pSelect uintptr) int3 } if Xsqlite3ExprIsInteger(tls, pE, bp+8 /* &iCol */) != 0 { if (*(*int32)(unsafe.Pointer(bp + 8 /* iCol */)) <= 0) || (*(*int32)(unsafe.Pointer(bp + 8 /* iCol */)) > (*ExprList)(unsafe.Pointer(pEList)).FnExpr) { - resolveOutOfRangeError(tls, pParse, ts+9359 /* "ORDER" */, (i + 1), (*ExprList)(unsafe.Pointer(pEList)).FnExpr) + resolveOutOfRangeError(tls, pParse, ts+9369 /* "ORDER" */, (i + 1), (*ExprList)(unsafe.Pointer(pEList)).FnExpr) return 1 } } else { @@ -80119,7 +80713,7 @@ func resolveCompoundOrderBy(tls *libc.TLS, pParse uintptr, pSelect uintptr) int3 for i = 0; i < (*ExprList)(unsafe.Pointer(pOrderBy)).FnExpr; i++ { if (int32(*(*uint8)(unsafe.Pointer(((pOrderBy + 8 /* &.a */) + uintptr(i)*20) + 12 /* &.done */)) & 0x4 >> 2)) == 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+9365 /* "%r ORDER BY term..." */, libc.VaList(bp, (i+1))) + ts+9375 /* "%r ORDER BY term..." */, libc.VaList(bp, (i+1))) return 1 } } @@ -80147,7 +80741,7 @@ func Xsqlite3ResolveOrderGroupBy(tls *libc.TLS, pParse uintptr, pSelect uintptr, return 0 } if (*ExprList)(unsafe.Pointer(pOrderBy)).FnExpr > *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 2*4)) { - Xsqlite3ErrorMsg(tls, pParse, ts+9426 /* "too many terms i..." */, libc.VaList(bp, zType)) + Xsqlite3ErrorMsg(tls, pParse, ts+9436 /* "too many terms i..." */, libc.VaList(bp, zType)) return 1 } pEList = (*Select)(unsafe.Pointer(pSelect)).FpEList @@ -80436,7 +81030,7 @@ func resolveSelectStep(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sql *(*int32)(unsafe.Pointer(bp /* &sNC */ + 24 /* &.ncFlags */)) |= (NC_UEList) if (*Select)(unsafe.Pointer(p)).FpHaving != 0 { if !(pGroupBy != 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+9457 /* "a GROUP BY claus..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+9467 /* "a GROUP BY claus..." */, 0) return WRC_Abort } if Xsqlite3ResolveExprNames(tls, bp /* &sNC */, (*Select)(unsafe.Pointer(p)).FpHaving) != 0 { @@ -80493,7 +81087,7 @@ func resolveSelectStep(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sql // resolve those symbols on the incorrect ORDER BY for consistency. if (((*Select)(unsafe.Pointer(p)).FpOrderBy != uintptr(0)) && (isCompound <= nCompound)) && // Defer right-most ORDER BY of a compound - (resolveOrderGroupBy(tls, bp /* &sNC */, p, (*Select)(unsafe.Pointer(p)).FpOrderBy, ts+9359 /* "ORDER" */) != 0) { + (resolveOrderGroupBy(tls, bp /* &sNC */, p, (*Select)(unsafe.Pointer(p)).FpOrderBy, ts+9369 /* "ORDER" */) != 0) { return WRC_Abort } if (*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0 { @@ -80506,7 +81100,7 @@ func resolveSelectStep(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sql if pGroupBy != 0 { var pItem uintptr - if (resolveOrderGroupBy(tls, bp /* &sNC */, p, pGroupBy, ts+9501 /* "GROUP" */) != 0) || ((*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0) { + if (resolveOrderGroupBy(tls, bp /* &sNC */, p, pGroupBy, ts+9511 /* "GROUP" */) != 0) || ((*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0) { return WRC_Abort } i = 0 @@ -80518,7 +81112,7 @@ func resolveSelectStep(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sql { if ((*Expr)(unsafe.Pointer(((*ExprList_item)(unsafe.Pointer(pItem)).FpExpr))).Fflags & (U32(EP_Agg))) != U32(0) { Xsqlite3ErrorMsg(tls, pParse, - ts+9507 /* "aggregate functi..." */, 0) + ts+9517 /* "aggregate functi..." */, 0) return WRC_Abort } @@ -81288,7 +81882,7 @@ func codeVectorCompare(tls *libc.TLS, pParse uintptr, pExpr uintptr, dest int32, return } if nLeft != Xsqlite3ExprVectorSize(tls, pRight) { - Xsqlite3ErrorMsg(tls, pParse, ts+8656 /* "row value misuse..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+8666 /* "row value misuse..." */, 0) return } @@ -81364,7 +81958,7 @@ func Xsqlite3ExprCheckHeight(tls *libc.TLS, pParse uintptr, nHeight int32) int32 var mxHeight int32 = *(*int32)(unsafe.Pointer(((*Parse)(unsafe.Pointer(pParse)).Fdb + 108 /* &.aLimit */) + 3*4)) if nHeight > mxHeight { Xsqlite3ErrorMsg(tls, pParse, - ts+9566 /* "Expression tree ..." */, libc.VaList(bp, mxHeight)) + ts+9576 /* "Expression tree ..." */, libc.VaList(bp, mxHeight)) rc = SQLITE_ERROR } return rc @@ -81605,7 +82199,7 @@ func Xsqlite3ExprAnd(tls *libc.TLS, pParse uintptr, pLeft uintptr, pRight uintpt !(int32((*Parse)(unsafe.Pointer(pParse)).FeParseMode) >= PARSE_MODE_RENAME) { Xsqlite3ExprDeferredDelete(tls, pParse, pLeft) Xsqlite3ExprDeferredDelete(tls, pParse, pRight) - return Xsqlite3Expr(tls, db, TK_INTEGER, ts+9614 /* "0" */) + return Xsqlite3Expr(tls, db, TK_INTEGER, ts+9624 /* "0" */) } else { return Xsqlite3PExpr(tls, pParse, TK_AND, pLeft, pRight) } @@ -81627,7 +82221,7 @@ func Xsqlite3ExprFunction(tls *libc.TLS, pParse uintptr, pList uintptr, pToken u return uintptr(0) } if (pList != 0) && ((*ExprList)(unsafe.Pointer(pList)).FnExpr > *(*int32)(unsafe.Pointer(((*Parse)(unsafe.Pointer(pParse)).Fdb + 108 /* &.aLimit */) + 6*4))) { - Xsqlite3ErrorMsg(tls, pParse, ts+9616 /* "too many argumen..." */, libc.VaList(bp, pToken)) + Xsqlite3ErrorMsg(tls, pParse, ts+9626 /* "too many argumen..." */, libc.VaList(bp, pToken)) } *(*uintptr)(unsafe.Pointer(pNew + 20 /* &.x */)) = pList *(*U32)(unsafe.Pointer(pNew + 4 /* &.flags */)) |= (U32(EP_HasFunc)) @@ -81661,7 +82255,7 @@ func Xsqlite3ExprFunctionUsable(tls *libc.TLS, pParse uintptr, pExpr uintptr, pD // is tagged with SQLITE_FUNC_UNSAFE) and // SQLITE_DBCONFIG_TRUSTED_SCHEMA is off (meaning // that the schema is possibly tainted). - Xsqlite3ErrorMsg(tls, pParse, ts+9650 /* "unsafe use of %s..." */, libc.VaList(bp, (*FuncDef)(unsafe.Pointer(pDef)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+9660 /* "unsafe use of %s..." */, libc.VaList(bp, (*FuncDef)(unsafe.Pointer(pDef)).FzName)) } } } @@ -81714,7 +82308,7 @@ func Xsqlite3ExprAssignVarNumber(tls *libc.TLS, pParse uintptr, pExpr uintptr, n } if ((bOk == 0) || (*(*I64)(unsafe.Pointer(bp + 8 /* i */)) < int64(1))) || (*(*I64)(unsafe.Pointer(bp + 8 /* i */)) > I64(*(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 9*4)))) { - Xsqlite3ErrorMsg(tls, pParse, ts+9669, /* "variable number ..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+9679, /* "variable number ..." */ libc.VaList(bp, *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 9*4)))) return } @@ -81741,7 +82335,7 @@ func Xsqlite3ExprAssignVarNumber(tls *libc.TLS, pParse uintptr, pExpr uintptr, n } (*Expr)(unsafe.Pointer(pExpr)).FiColumn = x if int32(x) > *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 9*4)) { - Xsqlite3ErrorMsg(tls, pParse, ts+9712 /* "too many SQL var..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+9722 /* "too many SQL var..." */, 0) } } @@ -82410,7 +83004,7 @@ __2: if !((int32((*Expr)(unsafe.Pointer(pExpr)).Fop) != TK_SELECT) && ((*IdList)(unsafe.Pointer(pColumns)).FnId != (libc.AssignInt32(&n, Xsqlite3ExprVectorSize(tls, pExpr))))) { goto __3 } - Xsqlite3ErrorMsg(tls, pParse, ts+9735, /* "%d columns assig..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+9745, /* "%d columns assig..." */ libc.VaList(bp, (*IdList)(unsafe.Pointer(pColumns)).FnId, n)) goto vector_append_error __3: @@ -82545,7 +83139,7 @@ func Xsqlite3ExprListCheckLength(tls *libc.TLS, pParse uintptr, pEList uintptr, var mx int32 = *(*int32)(unsafe.Pointer(((*Parse)(unsafe.Pointer(pParse)).Fdb + 108 /* &.aLimit */) + 2*4)) if (pEList != 0) && ((*ExprList)(unsafe.Pointer(pEList)).FnExpr > mx) { - Xsqlite3ErrorMsg(tls, pParse, ts+9765 /* "too many columns..." */, libc.VaList(bp, zObject)) + Xsqlite3ErrorMsg(tls, pParse, ts+9775 /* "too many columns..." */, libc.VaList(bp, zObject)) } } @@ -82600,10 +83194,10 @@ func Xsqlite3SelectWalkFail(tls *libc.TLS, pWalker uintptr, NotUsed uintptr) int // "false" EP_IsFalse // anything else 0 func Xsqlite3IsTrueOrFalse(tls *libc.TLS, zIn uintptr) U32 { /* sqlite3.c:103208:20: */ - if Xsqlite3StrICmp(tls, zIn, ts+8878 /* "true" */) == 0 { + if Xsqlite3StrICmp(tls, zIn, ts+8888 /* "true" */) == 0 { return U32(EP_IsTrue) } - if Xsqlite3StrICmp(tls, zIn, ts+8883 /* "false" */) == 0 { + if Xsqlite3StrICmp(tls, zIn, ts+8893 /* "false" */) == 0 { return U32(EP_IsFalse) } return U32(0) @@ -83048,13 +83642,13 @@ func Xsqlite3ExprNeedsNoAffinityChange(tls *libc.TLS, p uintptr, aff int8) int32 // Return TRUE if the given string is a row-id column name. func Xsqlite3IsRowid(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:103650:20: */ - if Xsqlite3StrICmp(tls, z, ts+9788 /* "_ROWID_" */) == 0 { + if Xsqlite3StrICmp(tls, z, ts+9798 /* "_ROWID_" */) == 0 { return 1 } - if Xsqlite3StrICmp(tls, z, ts+9796 /* "ROWID" */) == 0 { + if Xsqlite3StrICmp(tls, z, ts+9806 /* "ROWID" */) == 0 { return 1 } - if Xsqlite3StrICmp(tls, z, ts+9802 /* "OID" */) == 0 { + if Xsqlite3StrICmp(tls, z, ts+9812 /* "OID" */) == 0 { return 1 } return 0 @@ -83132,7 +83726,7 @@ func sqlite3SetHasNullFlag(tls *libc.TLS, v uintptr, iCur int32, regHasNull int3 addr1 = Xsqlite3VdbeAddOp1(tls, v, OP_Rewind, iCur) Xsqlite3VdbeAddOp3(tls, v, OP_Column, iCur, 0, regHasNull) Xsqlite3VdbeChangeP5(tls, v, uint16(OPFLAG_TYPEOFARG)) - Xsqlite3VdbeComment(tls, v, ts+9806 /* "first_entry_in(%..." */, libc.VaList(bp, iCur)) + Xsqlite3VdbeComment(tls, v, ts+9816 /* "first_entry_in(%..." */, libc.VaList(bp, iCur)) Xsqlite3VdbeJumpHere(tls, v, addr1) } @@ -83285,7 +83879,7 @@ func Xsqlite3FindInIndex(tls *libc.TLS, pParse uintptr, pX uintptr, inFlags U32, Xsqlite3OpenTable(tls, pParse, iTab, iDb, pTab, OP_OpenRead) eType = IN_INDEX_ROWID - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+9825 /* "USING ROWID SEAR..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+9835 /* "USING ROWID SEAR..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) Xsqlite3VdbeJumpHere(tls, v, iAddr) } else { var pIdx uintptr // Iterator variable @@ -83376,10 +83970,10 @@ func Xsqlite3FindInIndex(tls *libc.TLS, pParse uintptr, pX uintptr, inFlags U32, if colUsed == ((Bitmask((uint64(1))) << (nExpr)) - uint64(1)) { // If we reach this point, that means the index pIdx is usable var iAddr int32 = Xsqlite3VdbeAddOp0(tls, v, OP_Once) - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+9872 /* "USING INDEX %s F..." */, libc.VaList(bp+8, (*Index)(unsafe.Pointer(pIdx)).FzName)) + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+9882 /* "USING INDEX %s F..." */, libc.VaList(bp+8, (*Index)(unsafe.Pointer(pIdx)).FzName)) Xsqlite3VdbeAddOp3(tls, v, OP_OpenRead, iTab, int32((*Index)(unsafe.Pointer(pIdx)).Ftnum), iDb) Xsqlite3VdbeSetP4KeyInfo(tls, pParse, pIdx) - Xsqlite3VdbeComment(tls, v, ts+951 /* "%s" */, libc.VaList(bp+16, (*Index)(unsafe.Pointer(pIdx)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+961 /* "%s" */, libc.VaList(bp+16, (*Index)(unsafe.Pointer(pIdx)).FzName)) eType = (IN_INDEX_INDEX_ASC + int32(*(*U8)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaSortOrder)))) @@ -83483,7 +84077,7 @@ func Xsqlite3SubselectError(tls *libc.TLS, pParse uintptr, nActual int32, nExpec defer tls.Free(16) if (*Parse)(unsafe.Pointer(pParse)).FnErr == 0 { - var zFmt uintptr = ts + 9903 /* "sub-select retur..." */ + var zFmt uintptr = ts + 9913 /* "sub-select retur..." */ Xsqlite3ErrorMsg(tls, pParse, zFmt, libc.VaList(bp, nActual, nExpect)) } } @@ -83501,7 +84095,7 @@ func Xsqlite3VectorErrorMsg(tls *libc.TLS, pParse uintptr, pExpr uintptr) { /* s if ((*Expr)(unsafe.Pointer(pExpr)).Fflags & U32(EP_xIsSelect)) != 0 { Xsqlite3SubselectError(tls, pParse, (*ExprList)(unsafe.Pointer((*Select)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pExpr + 20 /* &.x */)))).FpEList)).FnExpr, 1) } else { - Xsqlite3ErrorMsg(tls, pParse, ts+8656 /* "row value misuse..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+8666 /* "row value misuse..." */, 0) } } @@ -83554,7 +84148,7 @@ func Xsqlite3CodeRhsOfIN(tls *libc.TLS, pParse uintptr, pExpr uintptr, iTab int3 if ((*Expr)(unsafe.Pointer((pExpr))).Fflags & (U32(EP_Subrtn))) != U32(0) { addrOnce = Xsqlite3VdbeAddOp0(tls, v, OP_Once) if ((*Expr)(unsafe.Pointer((pExpr))).Fflags & (U32(EP_xIsSelect))) != U32(0) { - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+9947 /* "REUSE LIST SUBQU..." */, libc.VaList(bp, (*Select)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pExpr + 20 /* &.x */)))).FselId)) + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+9957 /* "REUSE LIST SUBQU..." */, libc.VaList(bp, (*Select)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pExpr + 20 /* &.x */)))).FselId)) } Xsqlite3VdbeAddOp2(tls, v, OP_Gosub, *(*int32)(unsafe.Pointer(pExpr + 44 /* &.y */ /* &.sub */ + 4 /* &.regReturn */)), *(*int32)(unsafe.Pointer(pExpr + 44 /* &.y */ /* &.sub */ /* &.iAddr */))) @@ -83568,7 +84162,7 @@ func Xsqlite3CodeRhsOfIN(tls *libc.TLS, pParse uintptr, pExpr uintptr, iTab int3 *(*int32)(unsafe.Pointer(pExpr + 44 /* &.y */ /* &.sub */ + 4 /* &.regReturn */)) = libc.PreIncInt32(&(*Parse)(unsafe.Pointer(pParse)).FnMem, 1) *(*int32)(unsafe.Pointer(pExpr + 44 /* &.y */ /* &.sub */ /* &.iAddr */)) = (Xsqlite3VdbeAddOp2(tls, v, OP_Integer, 0, *(*int32)(unsafe.Pointer(pExpr + 44 /* &.y */ /* &.sub */ + 4 /* &.regReturn */))) + 1) - Xsqlite3VdbeComment(tls, v, ts+9970 /* "return address" */, 0) + Xsqlite3VdbeComment(tls, v, ts+9980 /* "return address" */, 0) addrOnce = Xsqlite3VdbeAddOp0(tls, v, OP_Once) } @@ -83582,9 +84176,9 @@ func Xsqlite3CodeRhsOfIN(tls *libc.TLS, pParse uintptr, pExpr uintptr, iTab int3 (*Expr)(unsafe.Pointer(pExpr)).FiTable = iTab addr = Xsqlite3VdbeAddOp2(tls, v, OP_OpenEphemeral, (*Expr)(unsafe.Pointer(pExpr)).FiTable, nVal) if ((*Expr)(unsafe.Pointer((pExpr))).Fflags & (U32(EP_xIsSelect))) != U32(0) { - Xsqlite3VdbeComment(tls, v, ts+9985 /* "Result of SELECT..." */, libc.VaList(bp+8, (*Select)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pExpr + 20 /* &.x */)))).FselId)) + Xsqlite3VdbeComment(tls, v, ts+9995 /* "Result of SELECT..." */, libc.VaList(bp+8, (*Select)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pExpr + 20 /* &.x */)))).FselId)) } else { - Xsqlite3VdbeComment(tls, v, ts+10005 /* "RHS of IN operat..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+10015 /* "RHS of IN operat..." */, 0) } pKeyInfo = Xsqlite3KeyInfoAlloc(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, nVal, 1) @@ -83596,11 +84190,11 @@ func Xsqlite3CodeRhsOfIN(tls *libc.TLS, pParse uintptr, pExpr uintptr, iTab int3 var pSelect uintptr = *(*uintptr)(unsafe.Pointer(pExpr + 20 /* &.x */)) var pEList uintptr = (*Select)(unsafe.Pointer(pSelect)).FpEList - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+10024 /* "%sLIST SUBQUERY ..." */, libc.VaList(bp+16, func() uintptr { + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+10034 /* "%sLIST SUBQUERY ..." */, libc.VaList(bp+16, func() uintptr { if addrOnce != 0 { - return ts + 915 /* "" */ + return ts + 925 /* "" */ } - return ts + 10043 /* "CORRELATED " */ + return ts + 10053 /* "CORRELATED " */ }(), (*Select)(unsafe.Pointer(pSelect)).FselId)) // If the LHS and RHS of the IN operator do not match, that // error will have been caught long before we reach this point. @@ -83746,7 +84340,7 @@ func Xsqlite3CodeSubselect(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { // If this routine has already been coded, then invoke it as a // subroutine. if ((*Expr)(unsafe.Pointer((pExpr))).Fflags & (U32(EP_Subrtn))) != U32(0) { - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+10055 /* "REUSE SUBQUERY %..." */, libc.VaList(bp, (*Select)(unsafe.Pointer(pSel)).FselId)) + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+10065 /* "REUSE SUBQUERY %..." */, libc.VaList(bp, (*Select)(unsafe.Pointer(pSel)).FselId)) Xsqlite3VdbeAddOp2(tls, v, OP_Gosub, *(*int32)(unsafe.Pointer(pExpr + 44 /* &.y */ /* &.sub */ + 4 /* &.regReturn */)), *(*int32)(unsafe.Pointer(pExpr + 44 /* &.y */ /* &.sub */ /* &.iAddr */))) return (*Expr)(unsafe.Pointer(pExpr)).FiTable @@ -83756,7 +84350,7 @@ func Xsqlite3CodeSubselect(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { *(*U32)(unsafe.Pointer(pExpr + 4 /* &.flags */)) |= (U32(EP_Subrtn)) *(*int32)(unsafe.Pointer(pExpr + 44 /* &.y */ /* &.sub */ + 4 /* &.regReturn */)) = libc.PreIncInt32(&(*Parse)(unsafe.Pointer(pParse)).FnMem, 1) *(*int32)(unsafe.Pointer(pExpr + 44 /* &.y */ /* &.sub */ /* &.iAddr */)) = (Xsqlite3VdbeAddOp2(tls, v, OP_Integer, 0, *(*int32)(unsafe.Pointer(pExpr + 44 /* &.y */ /* &.sub */ + 4 /* &.regReturn */))) + 1) - Xsqlite3VdbeComment(tls, v, ts+9970 /* "return address" */, 0) + Xsqlite3VdbeComment(tls, v, ts+9980 /* "return address" */, 0) // The evaluation of the EXISTS/SELECT must be repeated every time it // is encountered if any of the following is true: @@ -83780,11 +84374,11 @@ func Xsqlite3CodeSubselect(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { // // In both cases, the query is augmented with "LIMIT 1". Any // preexisting limit is discarded in place of the new LIMIT 1. - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+10073 /* "%sSCALAR SUBQUER..." */, libc.VaList(bp+8, func() uintptr { + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+10083 /* "%sSCALAR SUBQUER..." */, libc.VaList(bp+8, func() uintptr { if addrOnce != 0 { - return ts + 915 /* "" */ + return ts + 925 /* "" */ } - return ts + 10043 /* "CORRELATED " */ + return ts + 10053 /* "CORRELATED " */ }(), (*Select)(unsafe.Pointer(pSel)).FselId)) if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_SELECT { nReg = (*ExprList)(unsafe.Pointer((*Select)(unsafe.Pointer(pSel)).FpEList)).FnExpr @@ -83798,17 +84392,17 @@ func Xsqlite3CodeSubselect(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { (*SelectDest)(unsafe.Pointer(bp + 24 /* &dest */)).FiSdst = (*SelectDest)(unsafe.Pointer(bp + 24 /* &dest */)).FiSDParm (*SelectDest)(unsafe.Pointer(bp + 24 /* &dest */)).FnSdst = nReg Xsqlite3VdbeAddOp3(tls, v, OP_Null, 0, (*SelectDest)(unsafe.Pointer(bp+24 /* &dest */)).FiSDParm, (((*SelectDest)(unsafe.Pointer(bp+24 /* &dest */)).FiSDParm + nReg) - 1)) - Xsqlite3VdbeComment(tls, v, ts+10094 /* "Init subquery re..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+10104 /* "Init subquery re..." */, 0) } else { (*SelectDest)(unsafe.Pointer(bp + 24 /* &dest */)).FeDest = U8(SRT_Exists) Xsqlite3VdbeAddOp2(tls, v, OP_Integer, 0, (*SelectDest)(unsafe.Pointer(bp+24 /* &dest */)).FiSDParm) - Xsqlite3VdbeComment(tls, v, ts+10115 /* "Init EXISTS resu..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+10125 /* "Init EXISTS resu..." */, 0) } if (*Select)(unsafe.Pointer(pSel)).FpLimit != 0 { // The subquery already has a limit. If the pre-existing limit is X // then make the new limit X<>0 so that the new limit is either 1 or 0 var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb - pLimit = Xsqlite3Expr(tls, db, TK_INTEGER, ts+9614 /* "0" */) + pLimit = Xsqlite3Expr(tls, db, TK_INTEGER, ts+9624 /* "0" */) if pLimit != 0 { (*Expr)(unsafe.Pointer(pLimit)).FaffExpr = int8(SQLITE_AFF_NUMERIC) pLimit = Xsqlite3PExpr(tls, pParse, TK_NE, @@ -83818,7 +84412,7 @@ func Xsqlite3CodeSubselect(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { (*Expr)(unsafe.Pointer((*Select)(unsafe.Pointer(pSel)).FpLimit)).FpLeft = pLimit } else { // If there is no pre-existing limit add a limit of 1 - pLimit = Xsqlite3Expr(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, TK_INTEGER, ts+10134 /* "1" */) + pLimit = Xsqlite3Expr(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, TK_INTEGER, ts+10144 /* "1" */) (*Select)(unsafe.Pointer(pSel)).FpLimit = Xsqlite3PExpr(tls, pParse, TK_LIMIT, pLimit, uintptr(0)) } (*Select)(unsafe.Pointer(pSel)).FiLimit = 0 @@ -83953,7 +84547,7 @@ __2: // the RHS has not yet been coded. v = (*Parse)(unsafe.Pointer(pParse)).FpVdbe // OOM detected prior to this routine - Xsqlite3VdbeNoopComment(tls, v, ts+10136 /* "begin IN expr" */, 0) + Xsqlite3VdbeNoopComment(tls, v, ts+10146 /* "begin IN expr" */, 0) eType = Xsqlite3FindInIndex(tls, pParse, pExpr, (uint32(IN_INDEX_MEMBERSHIP | IN_INDEX_NOOP_OK)), func() uintptr { @@ -84258,7 +84852,7 @@ sqlite3ExprCodeIN_finished: Xsqlite3ReleaseTempReg(tls, pParse, rLhs) __40: ; - Xsqlite3VdbeComment(tls, v, ts+10150 /* "end IN expr" */, 0) + Xsqlite3VdbeComment(tls, v, ts+10160 /* "end IN expr" */, 0) sqlite3ExprCodeIN_oom_error: Xsqlite3DbFree(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, aiMap) Xsqlite3DbFree(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, zAff) @@ -84310,12 +84904,12 @@ func codeInteger(tls *libc.TLS, pParse uintptr, pExpr uintptr, negFlag int32, iM c = Xsqlite3DecOrHexToI64(tls, z, bp+16 /* &value */) if (((c == 3) && !(negFlag != 0)) || (c == 2)) || ((negFlag != 0) && (*(*I64)(unsafe.Pointer(bp + 16 /* value */)) == ((int64(-1)) - (int64(0xffffffff) | (I64((int64(0x7fffffff))) << 32))))) { - if Xsqlite3_strnicmp(tls, z, ts+10162 /* "0x" */, 2) == 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+10165 /* "hex literal too ..." */, libc.VaList(bp, func() uintptr { + if Xsqlite3_strnicmp(tls, z, ts+10172 /* "0x" */, 2) == 0 { + Xsqlite3ErrorMsg(tls, pParse, ts+10175 /* "hex literal too ..." */, libc.VaList(bp, func() uintptr { if negFlag != 0 { - return ts + 6814 /* "-" */ + return ts + 6824 /* "-" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), z)) } else { codeReal(tls, v, z, negFlag, iMem) @@ -84390,7 +84984,7 @@ func Xsqlite3ExprCodeGetColumnOfTable(tls *libc.TLS, v uintptr, pTab uintptr, iT } else if (int32((*Column)(unsafe.Pointer((libc.AssignUintptr(&pCol, ((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(iCol)*20))))).FcolFlags) & COLFLAG_VIRTUAL) != 0 { var pParse uintptr = Xsqlite3VdbeParser(tls, v) if (int32((*Column)(unsafe.Pointer(pCol)).FcolFlags) & COLFLAG_BUSY) != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+10191 /* "generated column..." */, libc.VaList(bp, (*Column)(unsafe.Pointer(pCol)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+10201 /* "generated column..." */, libc.VaList(bp, (*Column)(unsafe.Pointer(pCol)).FzName)) } else { var savedSelfTab int32 = (*Parse)(unsafe.Pointer(pParse)).FiSelfTab *(*U16)(unsafe.Pointer(pCol + 16 /* &.colFlags */)) |= U16((COLFLAG_BUSY)) @@ -84881,10 +85475,10 @@ __56: if !(int32((*AggInfo_col)(unsafe.Pointer(pCol)).FiColumn) < 0) { goto __59 } - Xsqlite3VdbeComment(tls, v, ts+10221 /* "%s.rowid" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+10231 /* "%s.rowid" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) goto __60 __59: - Xsqlite3VdbeComment(tls, v, ts+10230 /* "%s.%s" */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr((*AggInfo_col)(unsafe.Pointer(pCol)).FiColumn)*20)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+10240 /* "%s.%s" */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr((*AggInfo_col)(unsafe.Pointer(pCol)).FiColumn)*20)).FzName)) if !(int32((*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr((*AggInfo_col)(unsafe.Pointer(pCol)).FiColumn)*20)).Faffinity) == SQLITE_AFF_REAL) { goto __61 } @@ -84949,7 +85543,7 @@ __69: if !((int32((*Column)(unsafe.Pointer(pCol1)).FcolFlags) & COLFLAG_BUSY) != 0) { goto __72 } - Xsqlite3ErrorMsg(tls, pParse, ts+10191, /* "generated column..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+10201, /* "generated column..." */ libc.VaList(bp+24, (*Column)(unsafe.Pointer(pCol1)).FzName)) return 0 __72: @@ -85201,7 +85795,7 @@ __41: goto __87 } - Xsqlite3ErrorMsg(tls, pParse, ts+10236 /* "misuse of aggreg..." */, libc.VaList(bp+32, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)))) + Xsqlite3ErrorMsg(tls, pParse, ts+10246 /* "misuse of aggreg..." */, libc.VaList(bp+32, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)))) goto __88 __87: return (*AggInfo_func)(unsafe.Pointer((*AggInfo)(unsafe.Pointer(pInfo)).FaFunc + uintptr((*Expr)(unsafe.Pointer(pExpr)).FiAgg)*20)).FiMem @@ -85243,7 +85837,7 @@ __90: if !((pDef == uintptr(0)) || ((*FuncDef)(unsafe.Pointer(pDef)).FxFinalize != uintptr(0))) { goto __91 } - Xsqlite3ErrorMsg(tls, pParse, ts+10262 /* "unknown function..." */, libc.VaList(bp+40, zId)) + Xsqlite3ErrorMsg(tls, pParse, ts+10272 /* "unknown function..." */, libc.VaList(bp+40, zId)) goto __3 __91: ; @@ -85437,7 +86031,7 @@ __122: ((*Expr)(unsafe.Pointer(pExpr)).FiTable != (libc.AssignInt32(&n1, Xsqlite3ExprVectorSize(tls, (*Expr)(unsafe.Pointer(pExpr)).FpLeft))))) { goto __123 } - Xsqlite3ErrorMsg(tls, pParse, ts+9735, /* "%d columns assig..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+9745, /* "%d columns assig..." */ libc.VaList(bp+48, (*Expr)(unsafe.Pointer(pExpr)).FiTable, n1)) __123: ; @@ -85504,14 +86098,14 @@ __51: int32(Xsqlite3TableColumnToStorage(tls, pTab2, int16(iCol1)))) Xsqlite3VdbeAddOp2(tls, v, OP_Param, p1, target) - Xsqlite3VdbeComment(tls, v, ts+10285 /* "r[%d]=%s.%s" */, libc.VaList(bp+64, target, func() uintptr { + Xsqlite3VdbeComment(tls, v, ts+10295 /* "r[%d]=%s.%s" */, libc.VaList(bp+64, target, func() uintptr { if (*Expr)(unsafe.Pointer(pExpr)).FiTable != 0 { - return ts + 8571 /* "new" */ + return ts + 8581 /* "new" */ } - return ts + 8575 /* "old" */ + return ts + 8585 /* "old" */ }(), func() uintptr { if int32((*Expr)(unsafe.Pointer(pExpr)).FiColumn) < 0 { - return ts + 10297 /* "rowid" */ + return ts + 10307 /* "rowid" */ } return (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pExpr + 44 /* &.y */)))).FaCol + uintptr(iCol1)*20)).FzName }())) @@ -85530,7 +86124,7 @@ __124: goto __3 __52: - Xsqlite3ErrorMsg(tls, pParse, ts+8656 /* "row value misuse..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+8666 /* "row value misuse..." */, 0) goto __3 // TK_IF_NULL_ROW Expr nodes are inserted ahead of expressions @@ -85654,7 +86248,7 @@ __55: goto __134 } Xsqlite3ErrorMsg(tls, pParse, - ts+10303 /* "RAISE() may only..." */, 0) + ts+10313 /* "RAISE() may only..." */, 0) return 0 __134: ; @@ -85693,7 +86287,7 @@ __3: return inReg } -var zAff = *(*[8]int8)(unsafe.Pointer(ts + 10353 /* "B\x00C\x00D\x00E" */)) /* sqlite3.c:105169:29 */ +var zAff = *(*[8]int8)(unsafe.Pointer(ts + 10363 /* "B\x00C\x00D\x00E" */)) /* sqlite3.c:105169:29 */ // Generate code that will evaluate expression pExpr just one time // per prepared statement execution. @@ -85977,7 +86571,9 @@ func exprCodeBetween(tls *libc.TLS, pParse uintptr, pExpr uintptr, dest int32, x (*Expr)(unsafe.Pointer(bp + 52 /* &compRight */)).FpRight = (*ExprList_item)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(pExpr + 20 /* &.x */)) + 8 /* &.a */) + 1*20)).FpExpr exprToRegister(tls, pDel, exprCodeVector(tls, pParse, pDel, bp+156 /* ®Free1 */)) if xJump != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, int32, int32))(unsafe.Pointer(&xJump)))(tls, pParse, bp+104 /* &exprAnd */, dest, jumpIfNull) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, int32) + })(unsafe.Pointer(&struct{ uintptr }{xJump})).f(tls, pParse, bp+104 /* &exprAnd */, dest, jumpIfNull) } else { // Mark the expression is being from the ON or USING clause of a join // so that the sqlite3ExprCodeTarget() routine will not attempt to move @@ -87530,11 +88126,11 @@ func isAlterableTable(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 { /* sq bp := tls.Alloc(8) defer tls.Free(8) - if ((0 == Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+10361 /* "sqlite_" */, 7)) || + if ((0 == Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+10371 /* "sqlite_" */, 7)) || (((*Table)(unsafe.Pointer(pTab)).FtabFlags & U32(TF_Eponymous)) != U32(0))) || ((((*Table)(unsafe.Pointer(pTab)).FtabFlags & U32(TF_Shadow)) != U32(0)) && (Xsqlite3ReadOnlyShadowTables(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb) != 0)) { - Xsqlite3ErrorMsg(tls, pParse, ts+10369 /* "table %s may not..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+10379 /* "table %s may not..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) return 1 } return 0 @@ -87552,14 +88148,14 @@ func renameTestSchema(tls *libc.TLS, pParse uintptr, zDb uintptr, bTemp int32, z (*Parse)(unsafe.Pointer(pParse)).FcolNamesSet = U8(1) Xsqlite3NestedParse(tls, pParse, - ts+10397, /* "SELECT 1 FROM \"%..." */ + ts+10407, /* "SELECT 1 FROM \"%..." */ libc.VaList(bp, zDb, zDb, bTemp, zWhen, bNoDQS)) if bTemp == 0 { Xsqlite3NestedParse(tls, pParse, - ts+10572, /* "SELECT 1 FROM te..." */ + ts+10582, /* "SELECT 1 FROM te..." */ libc.VaList(bp+40, zDb, zWhen, bNoDQS)) } } @@ -87575,11 +88171,11 @@ func renameFixQuotes(tls *libc.TLS, pParse uintptr, zDb uintptr, bTemp int32) { Xsqlite3NestedParse(tls, pParse, - ts+10746 /* "UPDATE \"%w\".sqli..." */, libc.VaList(bp, zDb, zDb)) + ts+10756 /* "UPDATE \"%w\".sqli..." */, libc.VaList(bp, zDb, zDb)) if bTemp == 0 { Xsqlite3NestedParse(tls, pParse, - ts+10893 /* "UPDATE temp.sqli..." */, 0) + ts+10903 /* "UPDATE temp.sqli..." */, 0) } } @@ -87653,7 +88249,7 @@ __3: goto __4 } Xsqlite3ErrorMsg(tls, pParse, - ts+11044 /* "there is already..." */, libc.VaList(bp, zName)) + ts+11054 /* "there is already..." */, libc.VaList(bp, zName)) goto exit_rename_table __4: ; @@ -87666,7 +88262,7 @@ __4: goto exit_rename_table __5: ; - if !(SQLITE_OK != Xsqlite3CheckObjectName(tls, pParse, zName, ts+8469 /* "table" */, zName)) { + if !(SQLITE_OK != Xsqlite3CheckObjectName(tls, pParse, zName, ts+8479 /* "table" */, zName)) { goto __6 } goto exit_rename_table @@ -87676,7 +88272,7 @@ __6: if !((*Table)(unsafe.Pointer(pTab)).FpSelect != 0) { goto __7 } - Xsqlite3ErrorMsg(tls, pParse, ts+11103 /* "view %s may not ..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+11113 /* "view %s may not ..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) goto exit_rename_table __7: ; @@ -87729,24 +88325,24 @@ __12: // the schema to use the new table name. Xsqlite3NestedParse(tls, pParse, - ts+11130 /* "UPDATE \"%w\".sqli..." */, libc.VaList(bp+16, zDb, zDb, zTabName, zName, (libc.Bool32(iDb == 1)), zTabName)) + ts+11140 /* "UPDATE \"%w\".sqli..." */, libc.VaList(bp+16, zDb, zDb, zTabName, zName, (libc.Bool32(iDb == 1)), zTabName)) // Update the tbl_name and name columns of the sqlite_schema table // as required. Xsqlite3NestedParse(tls, pParse, - ts+11314, /* "UPDATE %Q.sqlite..." */ + ts+11324, /* "UPDATE %Q.sqlite..." */ libc.VaList(bp+64, zDb, zName, zName, zName, nTabName, zTabName)) // If the sqlite_sequence table exists in this database, then update // it with the new table name. - if !(Xsqlite3FindTable(tls, db, ts+11619 /* "sqlite_sequence" */, zDb) != 0) { + if !(Xsqlite3FindTable(tls, db, ts+11629 /* "sqlite_sequence" */, zDb) != 0) { goto __13 } Xsqlite3NestedParse(tls, pParse, - ts+11635, /* "UPDATE \"%w\".sqli..." */ + ts+11645, /* "UPDATE \"%w\".sqli..." */ libc.VaList(bp+112, zDb, zName, (*Table)(unsafe.Pointer(pTab)).FzName)) __13: ; @@ -87759,7 +88355,7 @@ __13: } Xsqlite3NestedParse(tls, pParse, - ts+11693 /* "UPDATE sqlite_te..." */, libc.VaList(bp+136, zDb, zTabName, zName, zTabName, zDb, zName)) + ts+11703 /* "UPDATE sqlite_te..." */, libc.VaList(bp+136, zDb, zTabName, zName, zTabName, zDb, zName)) __14: ; @@ -87777,7 +88373,7 @@ __15: ; renameReloadSchema(tls, pParse, iDb, uint16(INITFLAG_AlterRename)) - renameTestSchema(tls, pParse, zDb, (libc.Bool32(iDb == 1)), ts+11958 /* "after rename" */, 0) + renameTestSchema(tls, pParse, zDb, (libc.Bool32(iDb == 1)), ts+11968 /* "after rename" */, 0) exit_rename_table: Xsqlite3SrcListDelete(tls, db, pSrc) @@ -87792,7 +88388,7 @@ func sqlite3ErrorIfNotEmpty(tls *libc.TLS, pParse uintptr, zDb uintptr, zTab uin defer tls.Free(24) Xsqlite3NestedParse(tls, pParse, - ts+11971, /* "SELECT raise(ABO..." */ + ts+11981, /* "SELECT raise(ABO..." */ libc.VaList(bp, zErr, zDb, zTab)) } @@ -87840,12 +88436,12 @@ func Xsqlite3AlterFinishAddColumn(tls *libc.TLS, pParse uintptr, pColDef uintptr // If there is a NOT NULL constraint, then the default value for the // column must not be NULL. if (int32((*Column)(unsafe.Pointer(pCol)).FcolFlags) & COLFLAG_PRIMKEY) != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+12009 /* "Cannot add a PRI..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+12019 /* "Cannot add a PRI..." */, 0) return } if (*Table)(unsafe.Pointer(pNew)).FpIndex != 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+12041 /* "Cannot add a UNI..." */, 0) + ts+12051 /* "Cannot add a UNI..." */, 0) return } if (int32((*Column)(unsafe.Pointer(pCol)).FcolFlags) & COLFLAG_GENERATED) == 0 { @@ -87858,11 +88454,11 @@ func Xsqlite3AlterFinishAddColumn(tls *libc.TLS, pParse uintptr, pColDef uintptr } if ((((*Sqlite3)(unsafe.Pointer(db)).Fflags & uint64(SQLITE_ForeignKeys)) != 0) && ((*Table)(unsafe.Pointer(pNew)).FpFKey != 0)) && (pDflt != 0) { sqlite3ErrorIfNotEmpty(tls, pParse, zDb, zTab, - ts+12068 /* "Cannot add a REF..." */) + ts+12078 /* "Cannot add a REF..." */) } if ((*Column)(unsafe.Pointer(pCol)).FnotNull != 0) && !(pDflt != 0) { sqlite3ErrorIfNotEmpty(tls, pParse, zDb, zTab, - ts+12127 /* "Cannot add a NOT..." */) + ts+12137 /* "Cannot add a NOT..." */) } // Ensure the default expression is something that sqlite3ValueFromExpr() @@ -87878,12 +88474,12 @@ func Xsqlite3AlterFinishAddColumn(tls *libc.TLS, pParse uintptr, pColDef uintptr } if !(*(*uintptr)(unsafe.Pointer(bp + 40 /* pVal */)) != 0) { sqlite3ErrorIfNotEmpty(tls, pParse, zDb, zTab, - ts+12180 /* "Cannot add a col..." */) + ts+12190 /* "Cannot add a col..." */) } Xsqlite3ValueFree(tls, *(*uintptr)(unsafe.Pointer(bp + 40 /* pVal */))) } } else if (int32((*Column)(unsafe.Pointer(pCol)).FcolFlags) & COLFLAG_STORED) != 0 { - sqlite3ErrorIfNotEmpty(tls, pParse, zDb, zTab, ts+12226 /* "cannot add a STO..." */) + sqlite3ErrorIfNotEmpty(tls, pParse, zDb, zTab, ts+12236 /* "cannot add a STO..." */) } // Modify the CREATE TABLE statement. @@ -87899,7 +88495,7 @@ func Xsqlite3AlterFinishAddColumn(tls *libc.TLS, pParse uintptr, pColDef uintptr // have to use printf() to translate between these units: Xsqlite3NestedParse(tls, pParse, - ts+12253, /* "UPDATE \"%w\".sqli..." */ + ts+12263, /* "UPDATE \"%w\".sqli..." */ libc.VaList(bp, zDb, (*Table)(unsafe.Pointer(pNew)).FaddColOffset, zCol, (*Table)(unsafe.Pointer(pNew)).FaddColOffset, zTab)) Xsqlite3DbFree(tls, db, zCol) @@ -87970,7 +88566,7 @@ __2: if !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) { goto __3 } - Xsqlite3ErrorMsg(tls, pParse, ts+12399 /* "virtual tables m..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+12409 /* "virtual tables m..." */, 0) goto exit_begin_add_column __3: ; @@ -87979,7 +88575,7 @@ __3: if !((*Table)(unsafe.Pointer(pTab)).FpSelect != 0) { goto __4 } - Xsqlite3ErrorMsg(tls, pParse, ts+12433 /* "Cannot add a col..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+12443 /* "Cannot add a col..." */, 0) goto exit_begin_add_column __4: ; @@ -88014,7 +88610,7 @@ __6: nAlloc = ((((int32((*Table)(unsafe.Pointer(pNew)).FnCol) - 1) / 8) * 8) + 8) (*Table)(unsafe.Pointer(pNew)).FaCol = Xsqlite3DbMallocZero(tls, db, (uint64(uint32(unsafe.Sizeof(Column{})) * uint32(nAlloc)))) - (*Table)(unsafe.Pointer(pNew)).FzName = Xsqlite3MPrintf(tls, db, ts+12463 /* "sqlite_altertab_..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + (*Table)(unsafe.Pointer(pNew)).FzName = Xsqlite3MPrintf(tls, db, ts+12473 /* "sqlite_altertab_..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) if !(!(int32((*Table)(unsafe.Pointer(pNew)).FaCol) != 0) || !(int32((*Table)(unsafe.Pointer(pNew)).FzName) != 0)) { goto __7 } @@ -88061,18 +88657,18 @@ func isRealTable(tls *libc.TLS, pParse uintptr, pTab uintptr, bDrop int32) int32 var zType uintptr = uintptr(0) if (*Table)(unsafe.Pointer(pTab)).FpSelect != 0 { - zType = ts + 12482 /* "view" */ + zType = ts + 12492 /* "view" */ } if (*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0 { - zType = ts + 12487 /* "virtual table" */ + zType = ts + 12497 /* "virtual table" */ } if zType != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+12501, /* "cannot %s %s \"%s..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+12511, /* "cannot %s %s \"%s..." */ libc.VaList(bp, func() uintptr { if bDrop != 0 { - return ts + 12519 /* "drop column from" */ + return ts + 12529 /* "drop column from" */ } - return ts + 12536 /* "rename columns o..." */ + return ts + 12546 /* "rename columns o..." */ }(), zType, (*Table)(unsafe.Pointer(pTab)).FzName)) return 1 @@ -88165,13 +88761,13 @@ __8: if !(iCol == int32((*Table)(unsafe.Pointer(pTab)).FnCol)) { goto __10 } - Xsqlite3ErrorMsg(tls, pParse, ts+8201 /* "no such column: ..." */, libc.VaList(bp, zOld)) + Xsqlite3ErrorMsg(tls, pParse, ts+8211 /* "no such column: ..." */, libc.VaList(bp, zOld)) goto exit_rename_column __10: ; // Ensure the schema contains no double-quoted strings - renameTestSchema(tls, pParse, zDb, (libc.Bool32(iSchema == 1)), ts+915 /* "" */, 0) + renameTestSchema(tls, pParse, zDb, (libc.Bool32(iSchema == 1)), ts+925 /* "" */, 0) renameFixQuotes(tls, pParse, zDb, (libc.Bool32(iSchema == 1))) // Do the rename operation using a recursive UPDATE statement that @@ -88189,19 +88785,19 @@ __11: bQuote = (int32(Xsqlite3CtypeMap[uint8(*(*int8)(unsafe.Pointer((*Token)(unsafe.Pointer(pNew)).Fz)))]) & 0x80) Xsqlite3NestedParse(tls, pParse, - ts+12554, /* "UPDATE \"%w\".sqli..." */ + ts+12564, /* "UPDATE \"%w\".sqli..." */ libc.VaList(bp+8, zDb, zDb, (*Table)(unsafe.Pointer(pTab)).FzName, iCol, zNew, bQuote, (libc.Bool32(iSchema == 1)), (*Table)(unsafe.Pointer(pTab)).FzName)) Xsqlite3NestedParse(tls, pParse, - ts+12772, /* "UPDATE temp.sqli..." */ + ts+12782, /* "UPDATE temp.sqli..." */ libc.VaList(bp+72, zDb, (*Table)(unsafe.Pointer(pTab)).FzName, iCol, zNew, bQuote)) // Drop and reload the database schema. renameReloadSchema(tls, pParse, iSchema, uint16(INITFLAG_AlterRename)) - renameTestSchema(tls, pParse, zDb, (libc.Bool32(iSchema == 1)), ts+11958 /* "after rename" */, 1) + renameTestSchema(tls, pParse, zDb, (libc.Bool32(iSchema == 1)), ts+11968 /* "after rename" */, 1) exit_rename_column: Xsqlite3SrcListDelete(tls, db, pSrc) @@ -88496,12 +89092,12 @@ func renameColumnParseError(tls *libc.TLS, pCtx uintptr, zWhen uintptr, pType ui var zN uintptr = Xsqlite3_value_text(tls, pObject) var zErr uintptr - zErr = Xsqlite3_mprintf(tls, ts+12903, /* "error in %s %s%s..." */ + zErr = Xsqlite3_mprintf(tls, ts+12913, /* "error in %s %s%s..." */ libc.VaList(bp, zT, zN, func() uintptr { if *(*int8)(unsafe.Pointer(zWhen)) != 0 { - return ts + 12926 /* " " */ + return ts + 12936 /* " " */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), zWhen, (*Parse)(unsafe.Pointer(pParse)).FzErrMsg)) Xsqlite3_result_error(tls, pCtx, zErr, -1) @@ -88610,7 +89206,7 @@ func renameEditSql(tls *libc.TLS, pCtx uintptr, pRename uintptr, zSql uintptr, z // ALTER TABLE statement was quoted (bQuote==1), then set zNew to // point to zQuot so that all substitutions are made using the // quoted version of the new column name. - zQuot = Xsqlite3MPrintf(tls, db, ts+12928 /* "\"%w\" " */, libc.VaList(bp, zNew)) + zQuot = Xsqlite3MPrintf(tls, db, ts+12938 /* "\"%w\" " */, libc.VaList(bp, zNew)) if zQuot == uintptr(0) { return SQLITE_NOMEM } else { @@ -88660,12 +89256,12 @@ func renameEditSql(tls *libc.TLS, pCtx uintptr, pRename uintptr, zSql uintptr, z libc.Xmemcpy(tls, zBuf1, (*RenameToken)(unsafe.Pointer(pBest)).Ft.Fz, (*RenameToken)(unsafe.Pointer(pBest)).Ft.Fn) *(*int8)(unsafe.Pointer(zBuf1 + uintptr((*RenameToken)(unsafe.Pointer(pBest)).Ft.Fn))) = int8(0) Xsqlite3Dequote(tls, zBuf1) - Xsqlite3_snprintf(tls, (int32(nSql * int64(2))), zBuf2, ts+12934 /* "%Q%s" */, libc.VaList(bp+8, zBuf1, + Xsqlite3_snprintf(tls, (int32(nSql * int64(2))), zBuf2, ts+12944 /* "%Q%s" */, libc.VaList(bp+8, zBuf1, func() uintptr { if int32(*(*int8)(unsafe.Pointer((*RenameToken)(unsafe.Pointer(pBest)).Ft.Fz + uintptr((*RenameToken)(unsafe.Pointer(pBest)).Ft.Fn)))) == '\'' { - return ts + 12926 /* " " */ + return ts + 12936 /* " " */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }())) zReplace = zBuf2 nReplace = U32(Xsqlite3Strlen30(tls, zReplace)) @@ -89170,7 +89766,7 @@ renameColumnFunc_done: if !((*Parse)(unsafe.Pointer(bp+20 /* &sParse */)).FzErrMsg != 0) { goto __44 } - renameColumnParseError(tls, context, ts+915 /* "" */, *(*uintptr)(unsafe.Pointer(argv + 1*4)), *(*uintptr)(unsafe.Pointer(argv + 2*4)), bp+20 /* &sParse */) + renameColumnParseError(tls, context, ts+925 /* "" */, *(*uintptr)(unsafe.Pointer(argv + 1*4)), *(*uintptr)(unsafe.Pointer(argv + 2*4)), bp+20 /* &sParse */) goto __45 __44: Xsqlite3_result_error_code(tls, context, rc) @@ -89350,7 +89946,7 @@ func renameTableFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr } if rc != SQLITE_OK { if (*Parse)(unsafe.Pointer(bp+48 /* &sParse */)).FzErrMsg != 0 { - renameColumnParseError(tls, context, ts+915 /* "" */, *(*uintptr)(unsafe.Pointer(argv + 1*4)), *(*uintptr)(unsafe.Pointer(argv + 2*4)), bp+48 /* &sParse */) + renameColumnParseError(tls, context, ts+925 /* "" */, *(*uintptr)(unsafe.Pointer(argv + 1*4)), *(*uintptr)(unsafe.Pointer(argv + 2*4)), bp+48 /* &sParse */) } else { Xsqlite3_result_error_code(tls, context, rc) } @@ -89632,7 +90228,7 @@ __6: __4: ; - zNew = Xsqlite3MPrintf(tls, db, ts+12939 /* "%.*s%s" */, libc.VaList(bp, ((int32((*RenameToken)(unsafe.Pointer(pCol)).Ft.Fz)-int32(zSql))/1), zSql, zEnd)) + zNew = Xsqlite3MPrintf(tls, db, ts+12949 /* "%.*s%s" */, libc.VaList(bp, ((int32((*RenameToken)(unsafe.Pointer(pCol)).Ft.Fz)-int32(zSql))/1), zSql, zEnd)) Xsqlite3_result_text(tls, context, zNew, -1, libc.UintptrFromInt32(-1)) Xsqlite3_free(tls, zNew) @@ -89720,7 +90316,7 @@ __5: if !(iCol < 0) { goto __6 } - Xsqlite3ErrorMsg(tls, pParse, ts+8201 /* "no such column: ..." */, libc.VaList(bp, zCol)) + Xsqlite3ErrorMsg(tls, pParse, ts+8211 /* "no such column: ..." */, libc.VaList(bp, zCol)) goto exit_drop_column __6: ; @@ -89730,12 +90326,12 @@ __6: if !((int32((*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(iCol)*20)).FcolFlags) & (COLFLAG_PRIMKEY | COLFLAG_UNIQUE)) != 0) { goto __7 } - Xsqlite3ErrorMsg(tls, pParse, ts+12946, /* "cannot drop %s c..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+12956, /* "cannot drop %s c..." */ libc.VaList(bp+8, func() uintptr { if (int32((*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(iCol)*20)).FcolFlags) & COLFLAG_PRIMKEY) != 0 { - return ts + 12974 /* "PRIMARY KEY" */ + return ts + 12984 /* "PRIMARY KEY" */ } - return ts + 8022 /* "UNIQUE" */ + return ts + 8032 /* "UNIQUE" */ }(), zCol)) goto exit_drop_column @@ -89746,7 +90342,7 @@ __7: if !(int32((*Table)(unsafe.Pointer(pTab)).FnCol) <= 1) { goto __8 } - Xsqlite3ErrorMsg(tls, pParse, ts+12986 /* "cannot drop colu..." */, libc.VaList(bp+24, zCol)) + Xsqlite3ErrorMsg(tls, pParse, ts+12996 /* "cannot drop colu..." */, libc.VaList(bp+24, zCol)) goto exit_drop_column __8: ; @@ -89755,15 +90351,15 @@ __8: iDb = Xsqlite3SchemaToIndex(tls, db, (*Table)(unsafe.Pointer(pTab)).FpSchema) zDb = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16)).FzDbSName - renameTestSchema(tls, pParse, zDb, (libc.Bool32(iDb == 1)), ts+915 /* "" */, 0) + renameTestSchema(tls, pParse, zDb, (libc.Bool32(iDb == 1)), ts+925 /* "" */, 0) renameFixQuotes(tls, pParse, zDb, (libc.Bool32(iDb == 1))) Xsqlite3NestedParse(tls, pParse, - ts+13034 /* "UPDATE \"%w\".sqli..." */, libc.VaList(bp+32, zDb, iDb, iCol, (*Table)(unsafe.Pointer(pTab)).FzName)) + ts+13044 /* "UPDATE \"%w\".sqli..." */, libc.VaList(bp+32, zDb, iDb, iCol, (*Table)(unsafe.Pointer(pTab)).FzName)) // Drop and reload the database schema. renameReloadSchema(tls, pParse, iDb, uint16(INITFLAG_AlterDrop)) - renameTestSchema(tls, pParse, zDb, (libc.Bool32(iDb == 1)), ts+13155 /* "after drop colum..." */, 1) + renameTestSchema(tls, pParse, zDb, (libc.Bool32(iDb == 1)), ts+13165 /* "after drop colum..." */, 1) // Edit rows of table on disk if !(((*Parse)(unsafe.Pointer(pParse)).FnErr == 0) && ((int32((*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(iCol)*20)).FcolFlags) & COLFLAG_VIRTUAL) == 0)) { @@ -89874,11 +90470,11 @@ func Xsqlite3AlterFunctions(tls *libc.TLS) { /* sqlite3.c:109584:21: */ } var aAlterTableFuncs = [5]FuncDef{ - {FnArg: int8(9), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13173 /* "sqlite_rename_co..." */}, - {FnArg: int8(7), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13194 /* "sqlite_rename_ta..." */}, - {FnArg: int8(7), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13214 /* "sqlite_rename_te..." */}, - {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13233 /* "sqlite_drop_colu..." */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13252 /* "sqlite_rename_qu..." */}} /* sqlite3.c:109585:18 */ + {FnArg: int8(9), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13183 /* "sqlite_rename_co..." */}, + {FnArg: int8(7), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13204 /* "sqlite_rename_ta..." */}, + {FnArg: int8(7), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13224 /* "sqlite_rename_te..." */}, + {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13243 /* "sqlite_drop_colu..." */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13262 /* "sqlite_rename_qu..." */}} /* sqlite3.c:109585:18 */ //************* End of alter.c ********************************************** //************* Begin file analyze.c **************************************** @@ -90075,7 +90671,7 @@ func openStatTable(tls *libc.TLS, pParse uintptr, iDb int32, iStatCur int32, zWh // of the new table in register pParse->regRoot. This is important // because the OpenWrite opcode below will be needing it. Xsqlite3NestedParse(tls, pParse, - ts+13275 /* "CREATE TABLE %Q...." */, libc.VaList(bp, (*Db)(unsafe.Pointer(pDb)).FzDbSName, zTab, aTable[i].FzCols)) + ts+13285 /* "CREATE TABLE %Q...." */, libc.VaList(bp, (*Db)(unsafe.Pointer(pDb)).FzDbSName, zTab, aTable[i].FzCols)) *(*U32)(unsafe.Pointer(bp + 76 /* &aRoot[0] */ + uintptr(i)*4)) = U32((*Parse)(unsafe.Pointer(pParse)).FregRoot) *(*U8)(unsafe.Pointer(bp + 72 /* &aCreateTbl[0] */ + uintptr(i))) = U8(OPFLAG_P2ISREG) } @@ -90087,10 +90683,10 @@ func openStatTable(tls *libc.TLS, pParse uintptr, iDb int32, iStatCur int32, zWh Xsqlite3TableLock(tls, pParse, iDb, *(*U32)(unsafe.Pointer(bp + 76 /* &aRoot[0] */ + uintptr(i)*4)), uint8(1), zTab) if zWhere != 0 { Xsqlite3NestedParse(tls, pParse, - ts+13298, /* "DELETE FROM %Q.%..." */ + ts+13308, /* "DELETE FROM %Q.%..." */ libc.VaList(bp+24, (*Db)(unsafe.Pointer(pDb)).FzDbSName, zTab, zWhereType, zWhere)) } else if (*Sqlite3)(unsafe.Pointer(db)).FxPreUpdateCallback != 0 { - Xsqlite3NestedParse(tls, pParse, ts+13328 /* "DELETE FROM %Q.%..." */, libc.VaList(bp+56, (*Db)(unsafe.Pointer(pDb)).FzDbSName, zTab)) + Xsqlite3NestedParse(tls, pParse, ts+13338 /* "DELETE FROM %Q.%..." */, libc.VaList(bp+56, (*Db)(unsafe.Pointer(pDb)).FzDbSName, zTab)) } else { // The sqlite_stat[134] table already exists. Delete all rows. Xsqlite3VdbeAddOp2(tls, v, OP_Clear, int32(*(*U32)(unsafe.Pointer(bp + 76 /* &aRoot[0] */ + uintptr(i)*4))), iDb) @@ -90111,9 +90707,9 @@ var aTable = [3]struct { FzName uintptr FzCols uintptr }{ - {FzName: ts + 13346 /* "sqlite_stat1" */, FzCols: ts + 13359 /* "tbl,idx,stat" */}, - {FzName: ts + 13372 /* "sqlite_stat4" */, FzCols: ts + 13385 /* "tbl,idx,neq,nlt,..." */}, - {FzName: ts + 13413 /* "sqlite_stat3" */}, + {FzName: ts + 13356 /* "sqlite_stat1" */, FzCols: ts + 13369 /* "tbl,idx,stat" */}, + {FzName: ts + 13382 /* "sqlite_stat4" */, FzCols: ts + 13395 /* "tbl,idx,neq,nlt,..." */}, + {FzName: ts + 13423 /* "sqlite_stat3" */}, } /* sqlite3.c:109773:5 */ // Recommended number of samples for sqlite_stat4 @@ -90122,24 +90718,24 @@ var aTable = [3]struct { // share an instance of the following structure to hold their state // information. type StatAccum1 = struct { - Fdb uintptr - FnEst TRowcnt - FnRow TRowcnt - FnLimit int32 - FnCol int32 - FnKeyCol int32 - FnSkipAhead U8 - _ [3]byte - Fcurrent StatSample - FnPSample TRowcnt - FmxSample int32 - FiPrn U32 - FaBest uintptr - FiMin int32 - FnSample int32 - FnMaxEqZero int32 - FiGet int32 - Fa uintptr + Fdb uintptr + FnEst TRowcnt + FnRow TRowcnt + FnLimit int32 + FnCol int32 + FnKeyCol int32 + FnSkipAhead U8 + F__ccgo_pad1 [3]byte + Fcurrent StatSample + FnPSample TRowcnt + FmxSample int32 + FiPrn U32 + FaBest uintptr + FiMin int32 + FnSample int32 + FnMaxEqZero int32 + FiGet int32 + Fa uintptr } /* sqlite3.c:109861:9 */ // Recommended number of samples for sqlite_stat4 @@ -90149,15 +90745,15 @@ type StatAccum1 = struct { // information. type StatAccum = StatAccum1 /* sqlite3.c:109861:26 */ type StatSample1 = struct { - FanEq uintptr - FanDLt uintptr - FanLt uintptr - Fu struct{ FiRowid I64 } - FnRowid U32 - FisPSample U8 - _ [3]byte - FiCol int32 - FiHash U32 + FanEq uintptr + FanDLt uintptr + FanLt uintptr + Fu struct{ FiRowid I64 } + FnRowid U32 + FisPSample U8 + F__ccgo_pad1 [3]byte + FiCol int32 + FiHash U32 } /* sqlite3.c:109861:9 */ type StatSample = StatSample1 /* sqlite3.c:109862:27 */ @@ -90343,7 +90939,7 @@ var statInitFuncdef = FuncDef{ FnArg: int8(4), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 13426 /* "stat_init" */} /* sqlite3.c:110084:22 */ + FzName: ts + 13436 /* "stat_init" */} /* sqlite3.c:110084:22 */ // pNew and pOld are both candidate non-periodic samples selected for // the same column (pNew->iCol==pOld->iCol). Ignoring this column and @@ -90661,7 +91257,7 @@ var statPushFuncdef = FuncDef{ FnArg: (int8(2 + IsStat4)), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 13436 /* "stat_push" */} /* sqlite3.c:110374:22 */ + FzName: ts + 13446 /* "stat_push" */} /* sqlite3.c:110374:22 */ // Implementation of the stat_get(P,J) SQL function. This routine is // used to query statistical information that has been gathered into @@ -90718,7 +91314,7 @@ func statGet(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli return } - Xsqlite3_snprintf(tls, 24, zRet, ts+13446, /* "%llu" */ + Xsqlite3_snprintf(tls, 24, zRet, ts+13456, /* "%llu" */ libc.VaList(bp, func() uint64 { if (*StatAccum)(unsafe.Pointer(p)).FnSkipAhead != 0 { return U64((*StatAccum)(unsafe.Pointer(p)).FnEst) @@ -90729,7 +91325,7 @@ func statGet(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli for i = 0; i < (*StatAccum)(unsafe.Pointer(p)).FnKeyCol; i++ { var nDistinct U64 = (U64(*(*TRowcnt)(unsafe.Pointer((*StatAccum)(unsafe.Pointer(p)).Fcurrent.FanDLt + uintptr(i)*4)) + TRowcnt(1))) var iVal U64 = (((U64((*StatAccum)(unsafe.Pointer(p)).FnRow) + nDistinct) - uint64(1)) / nDistinct) - Xsqlite3_snprintf(tls, 24, z, ts+13451 /* " %llu" */, libc.VaList(bp+8, iVal)) + Xsqlite3_snprintf(tls, 24, z, ts+13461 /* " %llu" */, libc.VaList(bp+8, iVal)) z += uintptr(Xsqlite3Strlen30(tls, z)) } @@ -90778,7 +91374,7 @@ func statGet(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli var i int32 var z uintptr = zRet for i = 0; i < (*StatAccum)(unsafe.Pointer(p)).FnCol; i++ { - Xsqlite3_snprintf(tls, 24, z, ts+13457 /* "%llu " */, libc.VaList(bp+16, U64(*(*TRowcnt)(unsafe.Pointer(aCnt + uintptr(i)*4))))) + Xsqlite3_snprintf(tls, 24, z, ts+13467 /* "%llu " */, libc.VaList(bp+16, U64(*(*TRowcnt)(unsafe.Pointer(aCnt + uintptr(i)*4))))) z += uintptr(Xsqlite3Strlen30(tls, z)) } @@ -90795,7 +91391,7 @@ var statGetFuncdef = FuncDef{ FnArg: (int8(1 + IsStat4)), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 13463 /* "stat_get" */} /* sqlite3.c:110526:22 */ + FzName: ts + 13473 /* "stat_get" */} /* sqlite3.c:110526:22 */ func callStatGet(tls *libc.TLS, pParse uintptr, regStat int32, iParam int32, regOut int32) { /* sqlite3.c:110538:13: */ Xsqlite3VdbeAddOp2(tls, (*Parse)(unsafe.Pointer(pParse)).FpVdbe, OP_Integer, iParam, (regStat + 1)) @@ -90814,11 +91410,11 @@ func analyzeVdbeCommentIndexWithColumnName(tls *libc.TLS, v uintptr, pIdx uintpt i = int32(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(k)*2))) if i == (-1) { - Xsqlite3VdbeComment(tls, v, ts+10221 /* "%s.rowid" */, libc.VaList(bp, (*Index)(unsafe.Pointer(pIdx)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+10231 /* "%s.rowid" */, libc.VaList(bp, (*Index)(unsafe.Pointer(pIdx)).FzName)) } else if i == (-2) { - Xsqlite3VdbeComment(tls, v, ts+13472 /* "%s.expr(%d)" */, libc.VaList(bp+8, (*Index)(unsafe.Pointer(pIdx)).FzName, k)) + Xsqlite3VdbeComment(tls, v, ts+13482 /* "%s.expr(%d)" */, libc.VaList(bp+8, (*Index)(unsafe.Pointer(pIdx)).FzName, k)) } else { - Xsqlite3VdbeComment(tls, v, ts+10230 /* "%s.%s" */, libc.VaList(bp+24, (*Index)(unsafe.Pointer(pIdx)).FzName, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FpTable)).FaCol+uintptr(i)*20)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+10240 /* "%s.%s" */, libc.VaList(bp+24, (*Index)(unsafe.Pointer(pIdx)).FzName, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FpTable)).FaCol+uintptr(i)*20)).FzName)) } } @@ -90863,7 +91459,7 @@ func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintp // Do not gather statistics on views or virtual tables return } - if Xsqlite3_strlike(tls, ts+13484 /* "sqlite\\_%" */, (*Table)(unsafe.Pointer(pTab)).FzName, uint32('\\')) == 0 { + if Xsqlite3_strlike(tls, ts+13494 /* "sqlite\\_%" */, (*Table)(unsafe.Pointer(pTab)).FzName, uint32('\\')) == 0 { // Do not gather statistics on system tables return } @@ -90881,7 +91477,7 @@ func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintp return } (*Table)(unsafe.Pointer(pStat1)).FzName = (pStat1 + 1*76) - libc.Xmemcpy(tls, (*Table)(unsafe.Pointer(pStat1)).FzName, ts+13346 /* "sqlite_stat1" */, uint32(13)) + libc.Xmemcpy(tls, (*Table)(unsafe.Pointer(pStat1)).FzName, ts+13356 /* "sqlite_stat1" */, uint32(13)) (*Table)(unsafe.Pointer(pStat1)).FnCol = int16(3) (*Table)(unsafe.Pointer(pStat1)).FiPKey = int16(-1) Xsqlite3VdbeAddOp4(tls, (*Parse)(unsafe.Pointer(pParse)).FpVdbe, OP_Noop, 0, 0, 0, pStat1, -17) @@ -90932,7 +91528,7 @@ func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintp // Populate the register containing the index name. Xsqlite3VdbeLoadString(tls, v, regIdxname, zIdxName) - Xsqlite3VdbeComment(tls, v, ts+13494 /* "Analysis for %s...." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, zIdxName)) + Xsqlite3VdbeComment(tls, v, ts+13504 /* "Analysis for %s...." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, zIdxName)) // Pseudo-code for loop that calls stat_push(): // @@ -90979,7 +91575,7 @@ func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintp Xsqlite3VdbeAddOp3(tls, v, OP_OpenRead, iIdxCur, int32((*Index)(unsafe.Pointer(pIdx)).Ftnum), iDb) Xsqlite3VdbeSetP4KeyInfo(tls, pParse, pIdx) - Xsqlite3VdbeComment(tls, v, ts+951 /* "%s" */, libc.VaList(bp+16, (*Index)(unsafe.Pointer(pIdx)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+961 /* "%s" */, libc.VaList(bp+16, (*Index)(unsafe.Pointer(pIdx)).FzName)) // Invoke the stat_init() function. The arguments are: // @@ -91116,7 +91712,7 @@ func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintp // Add the entry to the stat1 table. callStatGet(tls, pParse, regStat, STAT_GET_STAT1, regStat1) - Xsqlite3VdbeAddOp4(tls, v, OP_MakeRecord, regTabname, 3, regTemp, ts+13513 /* "BBB" */, 0) + Xsqlite3VdbeAddOp4(tls, v, OP_MakeRecord, regTabname, 3, regTemp, ts+13523 /* "BBB" */, 0) Xsqlite3VdbeAddOp2(tls, v, OP_NewRowid, iStatCur, regNewRowid) Xsqlite3VdbeAddOp3(tls, v, OP_Insert, iStatCur, regTemp, regNewRowid) Xsqlite3VdbeChangeP4(tls, v, -1, pStat1, -6) @@ -91173,12 +91769,12 @@ func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintp // Create a single sqlite_stat1 entry containing NULL as the index // name and the row count as the content. if (pOnlyIdx == uintptr(0)) && (needTableCnt != 0) { - Xsqlite3VdbeComment(tls, v, ts+951 /* "%s" */, libc.VaList(bp+24, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+961 /* "%s" */, libc.VaList(bp+24, (*Table)(unsafe.Pointer(pTab)).FzName)) Xsqlite3VdbeAddOp2(tls, v, OP_Count, iTabCur, regStat1) jZeroRows = Xsqlite3VdbeAddOp1(tls, v, OP_IfNot, regStat1) Xsqlite3VdbeAddOp2(tls, v, OP_Null, 0, regIdxname) - Xsqlite3VdbeAddOp4(tls, v, OP_MakeRecord, regTabname, 3, regTemp, ts+13513 /* "BBB" */, 0) + Xsqlite3VdbeAddOp4(tls, v, OP_MakeRecord, regTabname, 3, regTemp, ts+13523 /* "BBB" */, 0) Xsqlite3VdbeAddOp2(tls, v, OP_NewRowid, iStatCur, regNewRowid) Xsqlite3VdbeAddOp3(tls, v, OP_Insert, iStatCur, regTemp, regNewRowid) Xsqlite3VdbeChangeP5(tls, v, uint16(OPFLAG_APPEND)) @@ -91231,9 +91827,9 @@ func analyzeTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintptr) iStatCur = (*Parse)(unsafe.Pointer(pParse)).FnTab *(*int32)(unsafe.Pointer(pParse + 40 /* &.nTab */)) += (3) if pOnlyIdx != 0 { - openStatTable(tls, pParse, iDb, iStatCur, (*Index)(unsafe.Pointer(pOnlyIdx)).FzName, ts+13517 /* "idx" */) + openStatTable(tls, pParse, iDb, iStatCur, (*Index)(unsafe.Pointer(pOnlyIdx)).FzName, ts+13527 /* "idx" */) } else { - openStatTable(tls, pParse, iDb, iStatCur, (*Table)(unsafe.Pointer(pTab)).FzName, ts+13521 /* "tbl" */) + openStatTable(tls, pParse, iDb, iStatCur, (*Table)(unsafe.Pointer(pTab)).FzName, ts+13531 /* "tbl" */) } analyzeOneTable(tls, pParse, pTab, pOnlyIdx, iStatCur, ((*Parse)(unsafe.Pointer(pParse)).FnMem + 1), (*Parse)(unsafe.Pointer(pParse)).FnTab) loadAnalysis(tls, pParse, iDb) @@ -91328,7 +91924,7 @@ func decodeIntArray(tls *libc.TLS, zIntArray uintptr, nOut int32, aOut uintptr, var v TRowcnt if z == uintptr(0) { - z = ts + 915 /* "" */ + z = ts + 925 /* "" */ } for i = 0; (*(*int8)(unsafe.Pointer(z)) != 0) && (i < nOut); i++ { v = TRowcnt(0) @@ -91350,15 +91946,15 @@ func decodeIntArray(tls *libc.TLS, zIntArray uintptr, nOut int32, aOut uintptr, libc.SetBitFieldPtr16Uint32(pIndex+56 /* &.bUnordered */, uint32(0), 2, 0x4) libc.SetBitFieldPtr16Uint32(pIndex+56 /* &.noSkipScan */, uint32(0), 6, 0x40) for *(*int8)(unsafe.Pointer(z)) != 0 { - if Xsqlite3_strglob(tls, ts+13525 /* "unordered*" */, z) == 0 { + if Xsqlite3_strglob(tls, ts+13535 /* "unordered*" */, z) == 0 { libc.SetBitFieldPtr16Uint32(pIndex+56 /* &.bUnordered */, uint32(1), 2, 0x4) - } else if Xsqlite3_strglob(tls, ts+13536 /* "sz=[0-9]*" */, z) == 0 { + } else if Xsqlite3_strglob(tls, ts+13546 /* "sz=[0-9]*" */, z) == 0 { var sz int32 = Xsqlite3Atoi(tls, (z + uintptr(3))) if sz < 2 { sz = 2 } (*Index)(unsafe.Pointer(pIndex)).FszIdxRow = Xsqlite3LogEst(tls, uint64(sz)) - } else if Xsqlite3_strglob(tls, ts+13546 /* "noskipscan*" */, z) == 0 { + } else if Xsqlite3_strglob(tls, ts+13556 /* "noskipscan*" */, z) == 0 { libc.SetBitFieldPtr16Uint32(pIndex+56 /* &.noSkipScan */, uint32(1), 6, 0x40) } for (int32(*(*int8)(unsafe.Pointer(z))) != 0) && (int32(*(*int8)(unsafe.Pointer(z))) != ' ') { @@ -91677,10 +92273,10 @@ func loadStatTbl(tls *libc.TLS, db uintptr, zSql1 uintptr, zSql2 uintptr, zDb ui func loadStat4(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:111438:12: */ var rc int32 = SQLITE_OK // Result codes from subroutines - if Xsqlite3FindTable(tls, db, ts+13372 /* "sqlite_stat4" */, zDb) != 0 { + if Xsqlite3FindTable(tls, db, ts+13382 /* "sqlite_stat4" */, zDb) != 0 { rc = loadStatTbl(tls, db, - ts+13558, /* "SELECT idx,count..." */ - ts+13612, /* "SELECT idx,neq,n..." */ + ts+13568, /* "SELECT idx,count..." */ + ts+13622, /* "SELECT idx,neq,n..." */ zDb) } return rc @@ -91731,9 +92327,9 @@ func Xsqlite3AnalysisLoad(tls *libc.TLS, db uintptr, iDb int32) int32 { /* sqlit // Load new statistics out of the sqlite_stat1 table (*AnalysisInfo)(unsafe.Pointer(bp + 8 /* &sInfo */)).Fdb = db (*AnalysisInfo)(unsafe.Pointer(bp + 8 /* &sInfo */)).FzDatabase = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16)).FzDbSName - if Xsqlite3FindTable(tls, db, ts+13346 /* "sqlite_stat1" */, (*AnalysisInfo)(unsafe.Pointer(bp+8 /* &sInfo */)).FzDatabase) != uintptr(0) { + if Xsqlite3FindTable(tls, db, ts+13356 /* "sqlite_stat1" */, (*AnalysisInfo)(unsafe.Pointer(bp+8 /* &sInfo */)).FzDatabase) != uintptr(0) { zSql = Xsqlite3MPrintf(tls, db, - ts+13664 /* "SELECT tbl,idx,s..." */, libc.VaList(bp, (*AnalysisInfo)(unsafe.Pointer(bp+8 /* &sInfo */)).FzDatabase)) + ts+13674 /* "SELECT tbl,idx,s..." */, libc.VaList(bp, (*AnalysisInfo)(unsafe.Pointer(bp+8 /* &sInfo */)).FzDatabase)) if zSql == uintptr(0) { rc = SQLITE_NOMEM } else { @@ -91825,7 +92421,7 @@ func resolveAttachExpr(tls *libc.TLS, pName uintptr, pExpr uintptr) int32 { /* s // database iDb attached to handle db. func Xsqlite3DbIsNamed(tls *libc.TLS, db uintptr, iDb int32, zName uintptr) int32 { /* sqlite3.c:111595:20: */ return (libc.Bool32((Xsqlite3StrICmp(tls, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, zName) == 0) || - ((iDb == 0) && (Xsqlite3StrICmp(tls, ts+8566 /* "main" */, zName) == 0)))) + ((iDb == 0) && (Xsqlite3StrICmp(tls, ts+8576 /* "main" */, zName) == 0)))) } // An SQL user-function registered to do the work of an ATTACH statement. The @@ -91876,13 +92472,13 @@ func attachFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { / if !(zFile == uintptr(0)) { goto __1 } - zFile = ts + 915 /* "" */ + zFile = ts + 925 /* "" */ __1: ; if !(zName == uintptr(0)) { goto __2 } - zName = ts + 915 /* "" */ + zName = ts + 925 /* "" */ __2: ; @@ -91892,7 +92488,7 @@ __2: // This is not a real ATTACH. Instead, this routine is being called // from sqlite3_deserialize() to close database db->init.iDb and // reopen it as a MemDB - *(*uintptr)(unsafe.Pointer(bp + 28 /* pVfs */)) = Xsqlite3_vfs_find(tls, ts+5735 /* "memdb" */) + *(*uintptr)(unsafe.Pointer(bp + 28 /* pVfs */)) = Xsqlite3_vfs_find(tls, ts+5745 /* "memdb" */) if !(*(*uintptr)(unsafe.Pointer(bp + 28 /* pVfs */)) == uintptr(0)) { goto __5 } @@ -91908,7 +92504,7 @@ __6: ; (*Db)(unsafe.Pointer(pNew)).FpBt = uintptr(0) (*Db)(unsafe.Pointer(pNew)).FpSchema = uintptr(0) - rc = Xsqlite3BtreeOpen(tls, *(*uintptr)(unsafe.Pointer(bp + 28 /* pVfs */)), ts+13705 /* "x\x00" */, db, (pNew + 4 /* &.pBt */), 0, SQLITE_OPEN_MAIN_DB) + rc = Xsqlite3BtreeOpen(tls, *(*uintptr)(unsafe.Pointer(bp + 28 /* pVfs */)), ts+13715 /* "x\x00" */, db, (pNew + 4 /* &.pBt */), 0, SQLITE_OPEN_MAIN_DB) goto __4 __3: // This is a real ATTACH @@ -91921,7 +92517,7 @@ __3: if !((*Sqlite3)(unsafe.Pointer(db)).FnDb >= (*(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 7*4)) + 2)) { goto __7 } - *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+13708, /* "too many attache..." */ + *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+13718, /* "too many attache..." */ libc.VaList(bp, *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 7*4)))) goto attach_error __7: @@ -91935,7 +92531,7 @@ __8: if !(Xsqlite3DbIsNamed(tls, db, i, zName) != 0) { goto __11 } - *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+13745 /* "database %s is a..." */, libc.VaList(bp+8, zName)) + *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+13755 /* "database %s is a..." */, libc.VaList(bp+8, zName)) goto attach_error __11: ; @@ -92006,7 +92602,7 @@ __4: goto __18 } rc = SQLITE_ERROR - *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+13775 /* "database is alre..." */, 0) + *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+13785 /* "database is alre..." */, 0) goto __19 __18: if !(rc == SQLITE_OK) { @@ -92023,7 +92619,7 @@ __21: goto __23 } *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, - ts+13804 /* "attached databas..." */, 0) + ts+13814 /* "attached databas..." */, 0) rc = SQLITE_ERROR __23: ; @@ -92093,13 +92689,13 @@ __29: } Xsqlite3OomFault(tls, db) Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */))) - *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+7999 /* "out of memory" */, 0) + *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+8009 /* "out of memory" */, 0) goto __31 __30: if !(*(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) == uintptr(0)) { goto __32 } - *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+13872 /* "unable to open d..." */, libc.VaList(bp+16, zFile)) + *(*uintptr)(unsafe.Pointer(bp + 40 /* zErrDyn */)) = Xsqlite3MPrintf(tls, db, ts+13882 /* "unable to open d..." */, libc.VaList(bp+16, zFile)) __32: ; __31: @@ -92155,7 +92751,7 @@ func detachFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { / if !(zName == uintptr(0)) { goto __1 } - zName = ts + 915 /* "" */ + zName = ts + 925 /* "" */ __1: ; i = 0 @@ -92187,14 +92783,14 @@ __4: if !(i >= (*Sqlite3)(unsafe.Pointer(db)).FnDb) { goto __7 } - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([128]int8{})), bp+24 /* &zErr[0] */, ts+13900 /* "no such database..." */, libc.VaList(bp, zName)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([128]int8{})), bp+24 /* &zErr[0] */, ts+13910 /* "no such database..." */, libc.VaList(bp, zName)) goto detach_error __7: ; if !(i < 2) { goto __8 } - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([128]int8{})), bp+24 /* &zErr[0] */, ts+13921 /* "cannot detach da..." */, libc.VaList(bp+8, zName)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([128]int8{})), bp+24 /* &zErr[0] */, ts+13931 /* "cannot detach da..." */, libc.VaList(bp+8, zName)) goto detach_error __8: ; @@ -92202,7 +92798,7 @@ __8: (Xsqlite3BtreeIsInBackup(tls, (*Db)(unsafe.Pointer(pDb)).FpBt) != 0)) { goto __9 } - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([128]int8{})), bp+24 /* &zErr[0] */, ts+13947 /* "database %s is l..." */, libc.VaList(bp+16, zName)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([128]int8{})), bp+24 /* &zErr[0] */, ts+13957 /* "database %s is l..." */, libc.VaList(bp+16, zName)) goto detach_error __9: ; @@ -92325,7 +92921,7 @@ var detach_func = FuncDef{ FnArg: int8(1), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 13969 /* "sqlite_detach" */} /* sqlite3.c:111944:24 */ + FzName: ts + 13979 /* "sqlite_detach" */} /* sqlite3.c:111944:24 */ // Called by the parser to compile an ATTACH statement. // @@ -92338,7 +92934,7 @@ var attach_func = FuncDef{ FnArg: int8(3), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 13983 /* "sqlite_attach" */} /* sqlite3.c:111964:24 */ + FzName: ts + 13993 /* "sqlite_attach" */} /* sqlite3.c:111964:24 */ // Expression callback used by sqlite3FixAAAA() routines. func fixExprCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:111982:12: */ @@ -92353,7 +92949,7 @@ func fixExprCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:111 if (*Sqlite3)(unsafe.Pointer((*Parse)(unsafe.Pointer((*DbFixer)(unsafe.Pointer(pFix)).FpParse)).Fdb)).Finit.Fbusy != 0 { (*Expr)(unsafe.Pointer(pExpr)).Fop = U8(TK_NULL) } else { - Xsqlite3ErrorMsg(tls, (*DbFixer)(unsafe.Pointer(pFix)).FpParse, ts+13997 /* "%s cannot use va..." */, libc.VaList(bp, (*DbFixer)(unsafe.Pointer(pFix)).FzType)) + Xsqlite3ErrorMsg(tls, (*DbFixer)(unsafe.Pointer(pFix)).FpParse, ts+14007 /* "%s cannot use va..." */, libc.VaList(bp, (*DbFixer)(unsafe.Pointer(pFix)).FzType)) return WRC_Abort } } @@ -92386,7 +92982,7 @@ __1: if (*SrcItem)(unsafe.Pointer(pItem)).FzDatabase != 0 { if iDb != Xsqlite3FindDbName(tls, db, (*SrcItem)(unsafe.Pointer(pItem)).FzDatabase) { Xsqlite3ErrorMsg(tls, (*DbFixer)(unsafe.Pointer(pFix)).FpParse, - ts+14021, /* "%s %T cannot ref..." */ + ts+14031, /* "%s %T cannot ref..." */ libc.VaList(bp, (*DbFixer)(unsafe.Pointer(pFix)).FzType, (*DbFixer)(unsafe.Pointer(pFix)).FpName, (*SrcItem)(unsafe.Pointer(pItem)).FzDatabase)) return WRC_Abort } @@ -92585,7 +93181,7 @@ func Xsqlite3_set_authorizer(tls *libc.TLS, db uintptr, xAuth uintptr, pArg uint // Write an error message into pParse->zErrMsg that explains that the // user-supplied authorization function returned an illegal value. func sqliteAuthBadReturnCode(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:112233:13: */ - Xsqlite3ErrorMsg(tls, pParse, ts+14067 /* "authorizer malfu..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+14077 /* "authorizer malfu..." */, 0) (*Parse)(unsafe.Pointer(pParse)).Frc = SQLITE_ERROR } @@ -92607,13 +93203,15 @@ func Xsqlite3AuthReadCol(tls *libc.TLS, pParse uintptr, zTab uintptr, zCol uintp if (*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy != 0 { return SQLITE_OK } - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((db + 348 /* &.xAuth */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpAuthArg, SQLITE_READ, zTab, zCol, zDb, (*Parse)(unsafe.Pointer(pParse)).FzAuthContext) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxAuth})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpAuthArg, SQLITE_READ, zTab, zCol, zDb, (*Parse)(unsafe.Pointer(pParse)).FzAuthContext) if rc == SQLITE_DENY { - var z uintptr = Xsqlite3_mprintf(tls, ts+10230 /* "%s.%s" */, libc.VaList(bp, zTab, zCol)) + var z uintptr = Xsqlite3_mprintf(tls, ts+10240 /* "%s.%s" */, libc.VaList(bp, zTab, zCol)) if ((*Sqlite3)(unsafe.Pointer(db)).FnDb > 2) || (iDb != 0) { - z = Xsqlite3_mprintf(tls, ts+14090 /* "%s.%z" */, libc.VaList(bp+16, zDb, z)) + z = Xsqlite3_mprintf(tls, ts+14100 /* "%s.%z" */, libc.VaList(bp+16, zDb, z)) } - Xsqlite3ErrorMsg(tls, pParse, ts+14096 /* "access to %z is ..." */, libc.VaList(bp+32, z)) + Xsqlite3ErrorMsg(tls, pParse, ts+14106 /* "access to %z is ..." */, libc.VaList(bp+32, z)) (*Parse)(unsafe.Pointer(pParse)).Frc = SQLITE_AUTH } else if (rc != SQLITE_IGNORE) && (rc != SQLITE_OK) { sqliteAuthBadReturnCode(tls, pParse) @@ -92665,7 +93263,7 @@ func Xsqlite3AuthRead(tls *libc.TLS, pParse uintptr, pExpr uintptr, pSchema uint zCol = (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr((*Table)(unsafe.Pointer(pTab)).FiPKey)*20)).FzName } else { - zCol = ts + 9796 /* "ROWID" */ + zCol = ts + 9806 /* "ROWID" */ } if SQLITE_IGNORE == Xsqlite3AuthReadCol(tls, pParse, (*Table)(unsafe.Pointer(pTab)).FzName, zCol, iDb) { @@ -92695,9 +93293,11 @@ func Xsqlite3AuthCheck(tls *libc.TLS, pParse uintptr, code int32, zArg1 uintptr, // The following testcase() macros show that any of the 3rd through 6th // parameters can be either NULL or a string. - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((db + 348 /* &.xAuth */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpAuthArg, code, zArg1, zArg2, zArg3, (*Parse)(unsafe.Pointer(pParse)).FzAuthContext) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxAuth})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpAuthArg, code, zArg1, zArg2, zArg3, (*Parse)(unsafe.Pointer(pParse)).FzAuthContext) if rc == SQLITE_DENY { - Xsqlite3ErrorMsg(tls, pParse, ts+14123 /* "not authorized" */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+14133 /* "not authorized" */, 0) (*Parse)(unsafe.Pointer(pParse)).Frc = SQLITE_AUTH } else if (rc != SQLITE_OK) && (rc != SQLITE_IGNORE) { rc = SQLITE_DENY @@ -92882,7 +93482,7 @@ func Xsqlite3FinishCoding(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:112554:2 if int32((*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy) == 0 { Xsqlite3VdbeChangeP5(tls, v, uint16(1)) } - Xsqlite3VdbeComment(tls, v, ts+14138 /* "usesStmtJournal=..." */, libc.VaList(bp, (libc.Bool32(((*Parse)(unsafe.Pointer(pParse)).FmayAbort != 0) && ((*Parse)(unsafe.Pointer(pParse)).FisMultiWrite != 0))))) + Xsqlite3VdbeComment(tls, v, ts+14148 /* "usesStmtJournal=..." */, libc.VaList(bp, (libc.Bool32(((*Parse)(unsafe.Pointer(pParse)).FmayAbort != 0) && ((*Parse)(unsafe.Pointer(pParse)).FisMultiWrite != 0))))) } for i = 0; i < (*Parse)(unsafe.Pointer(pParse)).FnVtabLock; i++ { var vtab uintptr = Xsqlite3GetVTable(tls, db, *(*uintptr)(unsafe.Pointer((*Parse)(unsafe.Pointer(pParse)).FapVtabLock + uintptr(i)*4))) @@ -93010,25 +93610,25 @@ func Xsqlite3FindTable(tls *libc.TLS, db uintptr, zName uintptr, zDatabase uintp if i >= (*Sqlite3)(unsafe.Pointer(db)).FnDb { // No match against the official names. But always match "main" // to schema 0 as a legacy fallback. - if Xsqlite3StrICmp(tls, zDatabase, ts+8566 /* "main" */) == 0 { + if Xsqlite3StrICmp(tls, zDatabase, ts+8576 /* "main" */) == 0 { i = 0 } else { return uintptr(0) } } p = Xsqlite3HashFind(tls, ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i)*16)).FpSchema + 8 /* &.tblHash */), zName) - if (p == uintptr(0)) && (Xsqlite3_strnicmp(tls, zName, ts+10361 /* "sqlite_" */, 7) == 0) { + if (p == uintptr(0)) && (Xsqlite3_strnicmp(tls, zName, ts+10371 /* "sqlite_" */, 7) == 0) { if i == 1 { - if ((Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+14157 /* "sqlite_temp_sche..." */ +7)) == 0) || - (Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+14176 /* "sqlite_schema" */ +7)) == 0)) || - (Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+7774 /* "sqlite_master" */ +7)) == 0) { + if ((Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+14167 /* "sqlite_temp_sche..." */ +7)) == 0) || + (Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+14186 /* "sqlite_schema" */ +7)) == 0)) || + (Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+7784 /* "sqlite_master" */ +7)) == 0) { p = Xsqlite3HashFind(tls, ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*16)).FpSchema + 8 /* &.tblHash */), - ts+14190 /* "sqlite_temp_mast..." */) + ts+14200 /* "sqlite_temp_mast..." */) } } else { - if Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+14176 /* "sqlite_schema" */ +7)) == 0 { + if Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+14186 /* "sqlite_schema" */ +7)) == 0 { p = Xsqlite3HashFind(tls, ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i)*16)).FpSchema + 8 /* &.tblHash */), - ts+7774 /* "sqlite_master" */) + ts+7784 /* "sqlite_master" */) } } } @@ -93051,12 +93651,12 @@ func Xsqlite3FindTable(tls *libc.TLS, db uintptr, zName uintptr, zDatabase uintp break } } - if (p == uintptr(0)) && (Xsqlite3_strnicmp(tls, zName, ts+10361 /* "sqlite_" */, 7) == 0) { - if Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+14176 /* "sqlite_schema" */ +7)) == 0 { - p = Xsqlite3HashFind(tls, ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb)).FpSchema + 8 /* &.tblHash */), ts+7774 /* "sqlite_master" */) - } else if Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+14157 /* "sqlite_temp_sche..." */ +7)) == 0 { + if (p == uintptr(0)) && (Xsqlite3_strnicmp(tls, zName, ts+10371 /* "sqlite_" */, 7) == 0) { + if Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+14186 /* "sqlite_schema" */ +7)) == 0 { + p = Xsqlite3HashFind(tls, ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb)).FpSchema + 8 /* &.tblHash */), ts+7784 /* "sqlite_master" */) + } else if Xsqlite3StrICmp(tls, (zName+uintptr(7)), (ts+14167 /* "sqlite_temp_sche..." */ +7)) == 0 { p = Xsqlite3HashFind(tls, ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*16)).FpSchema + 8 /* &.tblHash */), - ts+14190 /* "sqlite_temp_mast..." */) + ts+14200 /* "sqlite_temp_mast..." */) } } } @@ -93092,7 +93692,7 @@ func Xsqlite3LocateTable(tls *libc.TLS, pParse uintptr, flags U32, zName uintptr // can be an eponymous virtual table. if (int32((*Parse)(unsafe.Pointer(pParse)).FdisableVtab) == 0) && (int32((*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy) == 0) { var pMod uintptr = Xsqlite3HashFind(tls, (db + 372 /* &.aModule */), zName) - if (pMod == uintptr(0)) && (Xsqlite3_strnicmp(tls, zName, ts+14209 /* "pragma_" */, 7) == 0) { + if (pMod == uintptr(0)) && (Xsqlite3_strnicmp(tls, zName, ts+14219 /* "pragma_" */, 7) == 0) { pMod = Xsqlite3PragmaVtabRegister(tls, db, zName) } if (pMod != 0) && (Xsqlite3VtabEponymousTableInit(tls, pParse, pMod) != 0) { @@ -93110,14 +93710,14 @@ func Xsqlite3LocateTable(tls *libc.TLS, pParse uintptr, flags U32, zName uintptr if p == uintptr(0) { var zMsg uintptr if (flags & U32(LOCATE_VIEW)) != 0 { - zMsg = ts + 14217 /* "no such view" */ + zMsg = ts + 14227 /* "no such view" */ } else { - zMsg = ts + 14230 /* "no such table" */ + zMsg = ts + 14240 /* "no such table" */ } if zDbase != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+8759 /* "%s: %s.%s" */, libc.VaList(bp, zMsg, zDbase, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+8769 /* "%s: %s.%s" */, libc.VaList(bp, zMsg, zDbase, zName)) } else { - Xsqlite3ErrorMsg(tls, pParse, ts+8769 /* "%s: %s" */, libc.VaList(bp+24, zMsg, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+8779 /* "%s: %s" */, libc.VaList(bp+24, zMsg, zName)) } } else { @@ -93430,7 +94030,7 @@ func Xsqlite3NameFromToken(tls *libc.TLS, db uintptr, pName uintptr) uintptr { / // writing. The table is opened using cursor 0. func Xsqlite3OpenSchemaTable(tls *libc.TLS, p uintptr, iDb int32) { /* sqlite3.c:113223:21: */ var v uintptr = Xsqlite3GetVdbe(tls, p) - Xsqlite3TableLock(tls, p, iDb, uint32(SCHEMA_ROOT), uint8(1), ts+7774 /* "sqlite_master" */) + Xsqlite3TableLock(tls, p, iDb, uint32(SCHEMA_ROOT), uint8(1), ts+7784 /* "sqlite_master" */) Xsqlite3VdbeAddOp4Int(tls, v, OP_OpenWrite, 0, SCHEMA_ROOT, iDb, 5) if (*Parse)(unsafe.Pointer(p)).FnTab == 0 { (*Parse)(unsafe.Pointer(p)).FnTab = 1 @@ -93457,7 +94057,7 @@ func Xsqlite3FindDbName(tls *libc.TLS, db uintptr, zName uintptr) int32 { /* sql } // "main" is always an acceptable alias for the primary database // even if it has been renamed using SQLITE_DBCONFIG_MAINDBNAME. - if (i == 0) && (0 == Xsqlite3_stricmp(tls, ts+8566 /* "main" */, zName)) { + if (i == 0) && (0 == Xsqlite3_stricmp(tls, ts+8576 /* "main" */, zName)) { goto __3 } @@ -93510,13 +94110,13 @@ func Xsqlite3TwoPartName(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 u if (*Token)(unsafe.Pointer(pName2)).Fn > uint32(0) { if (*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+14244 /* "corrupt database" */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+14254 /* "corrupt database" */, 0) return -1 } *(*uintptr)(unsafe.Pointer(pUnqual)) = pName2 iDb = Xsqlite3FindDb(tls, db, pName1) if iDb < 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+14261 /* "unknown database..." */, libc.VaList(bp, pName1)) + Xsqlite3ErrorMsg(tls, pParse, ts+14271 /* "unknown database..." */, libc.VaList(bp, pName1)) return -1 } } else { @@ -93557,13 +94157,13 @@ func Xsqlite3CheckObjectName(tls *libc.TLS, pParse uintptr, zName uintptr, zType if ((Xsqlite3_stricmp(tls, zType, *(*uintptr)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).Finit.FazInit))) != 0) || (Xsqlite3_stricmp(tls, zName, *(*uintptr)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).Finit.FazInit + 1*4))) != 0)) || (Xsqlite3_stricmp(tls, zTblName, *(*uintptr)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).Finit.FazInit + 2*4))) != 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+915 /* "" */, 0) // corruptSchema() will supply the error + Xsqlite3ErrorMsg(tls, pParse, ts+925 /* "" */, 0) // corruptSchema() will supply the error return SQLITE_ERROR } } else { - if ((int32((*Parse)(unsafe.Pointer(pParse)).Fnested) == 0) && (0 == Xsqlite3_strnicmp(tls, zName, ts+10361 /* "sqlite_" */, 7))) || + if ((int32((*Parse)(unsafe.Pointer(pParse)).Fnested) == 0) && (0 == Xsqlite3_strnicmp(tls, zName, ts+10371 /* "sqlite_" */, 7))) || ((Xsqlite3ReadOnlyShadowTables(tls, db) != 0) && (Xsqlite3ShadowTableName(tls, db, zName) != 0)) { - Xsqlite3ErrorMsg(tls, pParse, ts+14281, /* "object name rese..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+14291, /* "object name rese..." */ libc.VaList(bp, zName)) return SQLITE_ERROR } @@ -93732,9 +94332,9 @@ func Xsqlite3StartTable(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 ui iDb = int32((*Sqlite3)(unsafe.Pointer(db)).Finit.FiDb) zName = Xsqlite3DbStrDup(tls, db, func() uintptr { if (!(0 != 0)) && (iDb == 1) { - return ts + 14190 /* "sqlite_temp_mast..." */ + return ts + 14200 /* "sqlite_temp_mast..." */ } - return ts + 7774 /* "sqlite_master" */ + return ts + 7784 /* "sqlite_master" */ }()) *(*uintptr)(unsafe.Pointer(bp + 16 /* pName */)) = pName1 goto __2 @@ -93752,7 +94352,7 @@ __3: } // If creating a temp table, the name may not be qualified. Unless // the database name is "temp" anyway. - Xsqlite3ErrorMsg(tls, pParse, ts+14323 /* "temporary table ..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+14333 /* "temporary table ..." */, 0) return __4: ; @@ -93780,9 +94380,9 @@ __7: ; if !(Xsqlite3CheckObjectName(tls, pParse, zName, func() uintptr { if isView != 0 { - return ts + 12482 /* "view" */ + return ts + 12492 /* "view" */ } - return ts + 8469 /* "table" */ + return ts + 8479 /* "table" */ }(), zName) != 0) { goto __8 } @@ -93799,9 +94399,9 @@ __9: zDb = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16)).FzDbSName if !(Xsqlite3AuthCheck(tls, pParse, SQLITE_INSERT, func() uintptr { if (!(0 != 0)) && (isTemp == 1) { - return ts + 14190 /* "sqlite_temp_mast..." */ + return ts + 14200 /* "sqlite_temp_mast..." */ } - return ts + 7774 /* "sqlite_master" */ + return ts + 7784 /* "sqlite_master" */ }(), uintptr(0), zDb) != 0) { goto __10 } @@ -93839,7 +94439,7 @@ __13: if !(!(noErr != 0)) { goto __15 } - Xsqlite3ErrorMsg(tls, pParse, ts+14364 /* "table %T already..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 16 /* pName */)))) + Xsqlite3ErrorMsg(tls, pParse, ts+14374 /* "table %T already..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 16 /* pName */)))) goto __16 __15: ; @@ -93853,7 +94453,7 @@ __14: if !(Xsqlite3FindIndex(tls, db, zName, zDb1) != uintptr(0)) { goto __17 } - Xsqlite3ErrorMsg(tls, pParse, ts+14388 /* "there is already..." */, libc.VaList(bp+8, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+14398 /* "there is already..." */, libc.VaList(bp+8, zName)) goto begin_table_error __17: ; @@ -93969,7 +94569,7 @@ var nullRow = [6]int8{int8(6), int8(0), int8(0), int8(0), int8(0), int8(0)} /* s func sqlite3DeleteReturning(tls *libc.TLS, db uintptr, pRet uintptr) { /* sqlite3.c:113716:13: */ var pHash uintptr pHash = ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*16)).FpSchema + 40 /* &.trigHash */) - Xsqlite3HashInsert(tls, pHash, ts+14423 /* "sqlite_returning" */, uintptr(0)) + Xsqlite3HashInsert(tls, pHash, ts+14433 /* "sqlite_returning" */, uintptr(0)) Xsqlite3ExprListDelete(tls, db, (*Returning)(unsafe.Pointer(pRet)).FpReturnEL) Xsqlite3DbFree(tls, db, pRet) } @@ -93993,7 +94593,7 @@ func Xsqlite3AddReturning(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sql var pHash uintptr var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if (*Parse)(unsafe.Pointer(pParse)).FpNewTrigger != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+14440 /* "cannot use RETUR..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+14450 /* "cannot use RETUR..." */, 0) } else { } @@ -94014,7 +94614,7 @@ func Xsqlite3AddReturning(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sql if (*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0 { return } - (*Returning)(unsafe.Pointer(pRet)).FretTrig.FzName = ts + 14423 /* "sqlite_returning" */ + (*Returning)(unsafe.Pointer(pRet)).FretTrig.FzName = ts + 14433 /* "sqlite_returning" */ (*Returning)(unsafe.Pointer(pRet)).FretTrig.Fop = U8(TK_RETURNING) (*Returning)(unsafe.Pointer(pRet)).FretTrig.Ftr_tm = U8(TRIGGER_AFTER) (*Returning)(unsafe.Pointer(pRet)).FretTrig.FbReturning = U8(1) @@ -94026,7 +94626,7 @@ func Xsqlite3AddReturning(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sql (*Returning)(unsafe.Pointer(pRet)).FretTStep.FpExprList = pList pHash = ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*16)).FpSchema + 40 /* &.trigHash */) - if Xsqlite3HashInsert(tls, pHash, ts+14423 /* "sqlite_returning" */, (pRet+8 /* &.retTrig */)) == + if Xsqlite3HashInsert(tls, pHash, ts+14433 /* "sqlite_returning" */, (pRet+8 /* &.retTrig */)) == (pRet + 8 /* &.retTrig */) { Xsqlite3OomFault(tls, db) } @@ -94054,7 +94654,7 @@ func Xsqlite3AddColumn(tls *libc.TLS, pParse uintptr, pName uintptr, pType uintp return } if (int32((*Table)(unsafe.Pointer(p)).FnCol) + 1) > *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 2*4)) { - Xsqlite3ErrorMsg(tls, pParse, ts+14474 /* "too many columns..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(p)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+14484 /* "too many columns..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(p)).FzName)) return } z = Xsqlite3DbMallocRaw(tls, db, (uint64(((*Token)(unsafe.Pointer(pName)).Fn + (*Token)(unsafe.Pointer(pType)).Fn) + uint32(2)))) @@ -94070,7 +94670,7 @@ func Xsqlite3AddColumn(tls *libc.TLS, pParse uintptr, pName uintptr, pType uintp hName = Xsqlite3StrIHash(tls, z) for i = 0; i < int32((*Table)(unsafe.Pointer(p)).FnCol); i++ { if (int32((*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(p)).FaCol+uintptr(i)*20)).FhName) == int32(hName)) && (Xsqlite3StrICmp(tls, z, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(p)).FaCol+uintptr(i)*20)).FzName) == 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+14497 /* "duplicate column..." */, libc.VaList(bp+8, z)) + Xsqlite3ErrorMsg(tls, pParse, ts+14507 /* "duplicate column..." */, libc.VaList(bp+8, z)) Xsqlite3DbFree(tls, db, z) return } @@ -94244,11 +94844,11 @@ func Xsqlite3AddDefaultValue(tls *libc.TLS, pParse uintptr, pExpr uintptr, zStar var isInit int32 = (libc.Bool32(((*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy != 0) && (int32((*Sqlite3)(unsafe.Pointer(db)).Finit.FiDb) != 1))) pCol = ((*Table)(unsafe.Pointer(p)).FaCol + uintptr((int32((*Table)(unsafe.Pointer(p)).FnCol)-1))*20) if !(Xsqlite3ExprIsConstantOrFunction(tls, pExpr, uint8(isInit)) != 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+14523, /* "default value of..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+14533, /* "default value of..." */ libc.VaList(bp, (*Column)(unsafe.Pointer(pCol)).FzName)) } else if (int32((*Column)(unsafe.Pointer(pCol)).FcolFlags) & COLFLAG_GENERATED) != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+14568 /* "cannot use DEFAU..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+14578 /* "cannot use DEFAU..." */, 0) } else { // A copy of pExpr is used instead of the original, as pExpr contains // tokens that point to volatile memory. @@ -94298,7 +94898,7 @@ func makeColumnPartOfPrimaryKey(tls *libc.TLS, pParse uintptr, pCol uintptr) { / if (int32((*Column)(unsafe.Pointer(pCol)).FcolFlags) & COLFLAG_GENERATED) != 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+14609 /* "generated column..." */, 0) + ts+14619 /* "generated column..." */, 0) } } @@ -94343,7 +94943,7 @@ __1: goto __2 } Xsqlite3ErrorMsg(tls, pParse, - ts+14661 /* "table \"%s\" has m..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + ts+14671 /* "table \"%s\" has m..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) goto primary_key_exit __2: ; @@ -94403,7 +95003,7 @@ __4: ; if !((((nTerm == 1) && (pCol != 0)) && - (Xsqlite3StrICmp(tls, Xsqlite3ColumnType(tls, pCol, ts+915 /* "" */), ts+14702 /* "INTEGER" */) == 0)) && + (Xsqlite3StrICmp(tls, Xsqlite3ColumnType(tls, pCol, ts+925 /* "" */), ts+14712 /* "INTEGER" */) == 0)) && (sortOrder != SQLITE_SO_DESC)) { goto __13 } @@ -94431,7 +95031,7 @@ __13: goto __17 } Xsqlite3ErrorMsg(tls, pParse, - ts+14710 /* "AUTOINCREMENT is..." */, 0) + ts+14720 /* "AUTOINCREMENT is..." */, 0) goto __18 __17: Xsqlite3CreateIndex(tls, pParse, uintptr(0), uintptr(0), uintptr(0), pList, onError, uintptr(0), @@ -94535,7 +95135,7 @@ __1: if !(int32((*Parse)(unsafe.Pointer(pParse)).FeParseMode) == PARSE_MODE_DECLARE_VTAB) { goto __2 } - Xsqlite3ErrorMsg(tls, pParse, ts+14766 /* "virtual tables c..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+14776 /* "virtual tables c..." */, 0) goto generated_done __2: ; @@ -94548,13 +95148,13 @@ __3: if !(pType != 0) { goto __4 } - if !(((*Token)(unsafe.Pointer(pType)).Fn == uint32(7)) && (Xsqlite3_strnicmp(tls, ts+14809 /* "virtual" */, (*Token)(unsafe.Pointer(pType)).Fz, 7) == 0)) { + if !(((*Token)(unsafe.Pointer(pType)).Fn == uint32(7)) && (Xsqlite3_strnicmp(tls, ts+14819 /* "virtual" */, (*Token)(unsafe.Pointer(pType)).Fz, 7) == 0)) { goto __5 } // no-op goto __6 __5: - if !(((*Token)(unsafe.Pointer(pType)).Fn == uint32(6)) && (Xsqlite3_strnicmp(tls, ts+14817 /* "stored" */, (*Token)(unsafe.Pointer(pType)).Fz, 6) == 0)) { + if !(((*Token)(unsafe.Pointer(pType)).Fn == uint32(6)) && (Xsqlite3_strnicmp(tls, ts+14827 /* "stored" */, (*Token)(unsafe.Pointer(pType)).Fz, 6) == 0)) { goto __7 } eType = U8(COLFLAG_STORED) @@ -94587,7 +95187,7 @@ __10: goto generated_done generated_error: - Xsqlite3ErrorMsg(tls, pParse, ts+14824, /* "error in generat..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+14834, /* "error in generat..." */ libc.VaList(bp, (*Column)(unsafe.Pointer(pCol)).FzName)) generated_done: Xsqlite3ExprDelete(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, pExpr) @@ -94729,13 +95329,13 @@ __3: ; n = n + (identLength(tls, (*Table)(unsafe.Pointer(p)).FzName)) if n < 50 { - zSep = ts + 915 /* "" */ - zSep2 = ts + 14855 /* "," */ - zEnd = ts + 6887 /* ")" */ + zSep = ts + 925 /* "" */ + zSep2 = ts + 14865 /* "," */ + zEnd = ts + 6897 /* ")" */ } else { - zSep = ts + 14857 /* "\n " */ - zSep2 = ts + 14861 /* ",\n " */ - zEnd = ts + 14866 /* "\n)" */ + zSep = ts + 14867 /* "\n " */ + zSep2 = ts + 14871 /* ",\n " */ + zEnd = ts + 14876 /* "\n)" */ } n = n + (35 + (6 * int32((*Table)(unsafe.Pointer(p)).FnCol))) zStmt = Xsqlite3DbMallocRaw(tls, uintptr(0), uint64(n)) @@ -94743,7 +95343,7 @@ __3: Xsqlite3OomFault(tls, db) return uintptr(0) } - Xsqlite3_snprintf(tls, n, zStmt, ts+14869 /* "CREATE TABLE " */, 0) + Xsqlite3_snprintf(tls, n, zStmt, ts+14879 /* "CREATE TABLE " */, 0) *(*int32)(unsafe.Pointer(bp + 8 /* k */)) = Xsqlite3Strlen30(tls, zStmt) identPut(tls, zStmt, bp+8 /* &k */, (*Table)(unsafe.Pointer(p)).FzName) *(*int8)(unsafe.Pointer(zStmt + uintptr(libc.PostIncInt32(&*(*int32)(unsafe.Pointer(bp + 8 /* k */)), 1)))) = int8('(') @@ -94777,16 +95377,16 @@ __5: goto __6 __6: ; - Xsqlite3_snprintf(tls, (n - *(*int32)(unsafe.Pointer(bp + 8 /* k */))), (zStmt + uintptr(*(*int32)(unsafe.Pointer(bp + 8 /* k */)))), ts+951 /* "%s" */, libc.VaList(bp, zEnd)) + Xsqlite3_snprintf(tls, (n - *(*int32)(unsafe.Pointer(bp + 8 /* k */))), (zStmt + uintptr(*(*int32)(unsafe.Pointer(bp + 8 /* k */)))), ts+961 /* "%s" */, libc.VaList(bp, zEnd)) return zStmt } var azType1 = [5]uintptr{ - /* SQLITE_AFF_BLOB */ ts + 915, /* "" */ - /* SQLITE_AFF_TEXT */ ts + 14883, /* " TEXT" */ - /* SQLITE_AFF_NUMERIC */ ts + 14889, /* " NUM" */ - /* SQLITE_AFF_INTEGER */ ts + 14894, /* " INT" */ - /* SQLITE_AFF_REAL */ ts + 14899, /* " REAL" */ + /* SQLITE_AFF_BLOB */ ts + 925, /* "" */ + /* SQLITE_AFF_TEXT */ ts + 14893, /* " TEXT" */ + /* SQLITE_AFF_NUMERIC */ ts + 14899, /* " NUM" */ + /* SQLITE_AFF_INTEGER */ ts + 14904, /* " INT" */ + /* SQLITE_AFF_REAL */ ts + 14909, /* " REAL" */ } /* sqlite3.c:114391:23 */ // Resize an Index object to hold N columns total. Return SQLITE_OK @@ -95147,7 +95747,9 @@ func Xsqlite3IsShadowTableOf(tls *libc.TLS, db uintptr, pTab uintptr, zName uint if (*Sqlite3_module)(unsafe.Pointer((*Module)(unsafe.Pointer(pMod)).FpModule)).FxShadowName == uintptr(0) { return 0 } - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Module)(unsafe.Pointer(pMod)).FpModule + 92 /* &.xShadowName */))))(tls, ((zName + uintptr(nName)) + uintptr(1))) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer((*Module)(unsafe.Pointer(pMod)).FpModule)).FxShadowName})).f(tls, ((zName + uintptr(nName)) + uintptr(1))) } // Return true if zName is a shadow table name in the current database @@ -95223,7 +95825,7 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr // table itself. So mark it read-only. if (*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy != 0 { if pSelect != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+915 /* "" */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+925 /* "" */, 0) return } (*Table)(unsafe.Pointer(p)).Ftnum = (*Sqlite3)(unsafe.Pointer(db)).Finit.FnewTnum @@ -95236,11 +95838,11 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr if (int32(tabOpts) & TF_WithoutRowid) != 0 { if ((*Table)(unsafe.Pointer(p)).FtabFlags & U32(TF_Autoincrement)) != 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+14905 /* "AUTOINCREMENT no..." */, 0) + ts+14915 /* "AUTOINCREMENT no..." */, 0) return } if ((*Table)(unsafe.Pointer(p)).FtabFlags & U32(TF_HasPrimaryKey)) == U32(0) { - Xsqlite3ErrorMsg(tls, pParse, ts+14955 /* "PRIMARY KEY miss..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(p)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+14965 /* "PRIMARY KEY miss..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(p)).FzName)) return } *(*U32)(unsafe.Pointer(p + 36 /* &.tabFlags */)) |= (U32(TF_WithoutRowid | TF_NoVisibleRowid)) @@ -95284,7 +95886,7 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr } } if nNG == 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+14987 /* "must have at lea..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+14997 /* "must have at lea..." */, 0) return } } @@ -95317,12 +95919,12 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr // Initialize zType for the new view or table. if (*Table)(unsafe.Pointer(p)).FpSelect == uintptr(0) { // A regular table - zType = ts + 8469 /* "table" */ - zType2 = ts + 15031 /* "TABLE" */ + zType = ts + 8479 /* "table" */ + zType2 = ts + 15041 /* "TABLE" */ } else { // A view - zType = ts + 12482 /* "view" */ - zType2 = ts + 15037 /* "VIEW" */ + zType = ts + 12492 /* "view" */ + zType2 = ts + 15047 /* "VIEW" */ } // If this is a CREATE TABLE xx AS SELECT ..., execute the SELECT @@ -95403,7 +96005,7 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr n = int32(uint32(n) + ((*Token)(unsafe.Pointer(pEnd2)).Fn)) } zStmt = Xsqlite3MPrintf(tls, db, - ts+15042 /* "CREATE %s %.*s" */, libc.VaList(bp+8, zType2, n, (*Parse)(unsafe.Pointer(pParse)).FsNameToken.Fz)) + ts+15052 /* "CREATE %s %.*s" */, libc.VaList(bp+8, zType2, n, (*Parse)(unsafe.Pointer(pParse)).FsNameToken.Fz)) } // A slot for the record has already been allocated in the @@ -95411,7 +96013,7 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr // the information we've collected. Xsqlite3NestedParse(tls, pParse, - ts+15057, /* "UPDATE %Q.sqlite..." */ + ts+15067, /* "UPDATE %Q.sqlite..." */ libc.VaList(bp+32, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, zType, (*Table)(unsafe.Pointer(p)).FzName, @@ -95429,14 +96031,14 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr if (*Schema)(unsafe.Pointer((*Db)(unsafe.Pointer(pDb)).FpSchema)).FpSeqTab == uintptr(0) { Xsqlite3NestedParse(tls, pParse, - ts+15155, /* "CREATE TABLE %Q...." */ + ts+15165, /* "CREATE TABLE %Q...." */ libc.VaList(bp+88, (*Db)(unsafe.Pointer(pDb)).FzDbSName)) } } // Reparse everything to update our internal data structures Xsqlite3VdbeAddParseSchemaOp(tls, v, iDb, - Xsqlite3MPrintf(tls, db, ts+15197 /* "tbl_name='%q' AN..." */, libc.VaList(bp+96, (*Table)(unsafe.Pointer(p)).FzName)), uint16(0)) + Xsqlite3MPrintf(tls, db, ts+15207 /* "tbl_name='%q' AN..." */, libc.VaList(bp+96, (*Table)(unsafe.Pointer(p)).FzName)), uint16(0)) } // Add the table to the in-memory representation of the database. @@ -95457,7 +96059,7 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr // then record a pointer to this table in the main database structure // so that INSERT can find the table easily. - if libc.Xstrcmp(tls, (*Table)(unsafe.Pointer(p)).FzName, ts+11619 /* "sqlite_sequence" */) == 0 { + if libc.Xstrcmp(tls, (*Table)(unsafe.Pointer(p)).FzName, ts+11629 /* "sqlite_sequence" */) == 0 { (*Schema)(unsafe.Pointer((*Table)(unsafe.Pointer(p)).FpSchema)).FpSeqTab = p } @@ -95494,7 +96096,7 @@ func Xsqlite3CreateView(tls *libc.TLS, pParse uintptr, pBegin uintptr, pName1 ui if !(int32((*Parse)(unsafe.Pointer(pParse)).FnVar) > 0) { goto __1 } - Xsqlite3ErrorMsg(tls, pParse, ts+15231 /* "parameters are n..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+15241 /* "parameters are n..." */, 0) goto create_view_fail __1: ; @@ -95516,7 +96118,7 @@ __2: Xsqlite3TwoPartName(tls, pParse, pName1, pName2, bp /* &pName */) iDb = Xsqlite3SchemaToIndex(tls, db, (*Table)(unsafe.Pointer(p)).FpSchema) - Xsqlite3FixInit(tls, bp+4 /* &sFix */, pParse, iDb, ts+12482 /* "view" */, *(*uintptr)(unsafe.Pointer(bp /* pName */))) + Xsqlite3FixInit(tls, bp+4 /* &sFix */, pParse, iDb, ts+12492 /* "view" */, *(*uintptr)(unsafe.Pointer(bp /* pName */))) if !(Xsqlite3FixSelect(tls, bp+4 /* &sFix */, pSelect) != 0) { goto __3 } @@ -95633,7 +96235,7 @@ func Xsqlite3ViewGetColumnNames(tls *libc.TLS, pParse uintptr, pTable uintptr) i // CREATE TEMP VIEW ex1 AS SELECT a FROM ex1; // SELECT * FROM temp.ex1; if int32((*Table)(unsafe.Pointer(pTable)).FnCol) < 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+15267 /* "view %s is circu..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTable)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+15277 /* "view %s is circu..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTable)).FzName)) return 1 } @@ -95775,7 +96377,7 @@ func destroyRootPage(tls *libc.TLS, pParse uintptr, iTable int32, iDb int32) { / var v uintptr = Xsqlite3GetVdbe(tls, pParse) var r1 int32 = Xsqlite3GetTempReg(tls, pParse) if iTable < 2 { - Xsqlite3ErrorMsg(tls, pParse, ts+15297 /* "corrupt schema" */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+15307 /* "corrupt schema" */, 0) } Xsqlite3VdbeAddOp3(tls, v, OP_Destroy, iTable, r1, iDb) Xsqlite3MayAbort(tls, pParse) @@ -95789,7 +96391,7 @@ func destroyRootPage(tls *libc.TLS, pParse uintptr, iTable int32, iDb int32) { / // token for additional information. Xsqlite3NestedParse(tls, pParse, - ts+15312, /* "UPDATE %Q.sqlite..." */ + ts+15322, /* "UPDATE %Q.sqlite..." */ libc.VaList(bp, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer((*Parse)(unsafe.Pointer(pParse)).Fdb)).FaDb+uintptr(iDb)*16)).FzDbSName, iTable, r1, r1)) Xsqlite3ReleaseTempReg(tls, pParse, r1) } @@ -95853,10 +96455,10 @@ func sqlite3ClearStatTables(tls *libc.TLS, pParse uintptr, iDb int32, zType uint for i = 1; i <= 4; i++ { // var zTab [24]int8 at bp+40, 24 - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([24]int8{})), bp+40 /* &zTab[0] */, ts+15379 /* "sqlite_stat%d" */, libc.VaList(bp, i)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([24]int8{})), bp+40 /* &zTab[0] */, ts+15389 /* "sqlite_stat%d" */, libc.VaList(bp, i)) if Xsqlite3FindTable(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, bp+40 /* &zTab[0] */, zDbName) != 0 { Xsqlite3NestedParse(tls, pParse, - ts+13298, /* "DELETE FROM %Q.%..." */ + ts+13308, /* "DELETE FROM %Q.%..." */ libc.VaList(bp+8, zDbName, bp+40 /* &zTab[0] */, zType, zName)) } } @@ -95896,7 +96498,7 @@ func Xsqlite3CodeDropTable(tls *libc.TLS, pParse uintptr, pTab uintptr, iDb int3 // move as a result of the drop (can happen in auto-vacuum mode). if ((*Table)(unsafe.Pointer(pTab)).FtabFlags & U32(TF_Autoincrement)) != 0 { Xsqlite3NestedParse(tls, pParse, - ts+15393, /* "DELETE FROM %Q.s..." */ + ts+15403, /* "DELETE FROM %Q.s..." */ libc.VaList(bp, (*Db)(unsafe.Pointer(pDb)).FzDbSName, (*Table)(unsafe.Pointer(pTab)).FzName)) } @@ -95908,7 +96510,7 @@ func Xsqlite3CodeDropTable(tls *libc.TLS, pParse uintptr, pTab uintptr, iDb int3 // database. Xsqlite3NestedParse(tls, pParse, - ts+15438, /* "DELETE FROM %Q.s..." */ + ts+15448, /* "DELETE FROM %Q.s..." */ libc.VaList(bp+16, (*Db)(unsafe.Pointer(pDb)).FzDbSName, (*Table)(unsafe.Pointer(pTab)).FzName)) if !(isView != 0) && !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) { destroyTable(tls, pParse, pTab) @@ -95938,11 +96540,11 @@ func Xsqlite3ReadOnlyShadowTables(tls *libc.TLS, db uintptr) int32 { /* sqlite3. // Return true if it is not allowed to drop the given table func tableMayNotBeDropped(tls *libc.TLS, db uintptr, pTab uintptr) int32 { /* sqlite3.c:115607:12: */ - if Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+10361 /* "sqlite_" */, 7) == 0 { - if Xsqlite3_strnicmp(tls, ((*Table)(unsafe.Pointer(pTab)).FzName+uintptr(7)), ts+4668 /* "stat" */, 4) == 0 { + if Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+10371 /* "sqlite_" */, 7) == 0 { + if Xsqlite3_strnicmp(tls, ((*Table)(unsafe.Pointer(pTab)).FzName+uintptr(7)), ts+4678 /* "stat" */, 4) == 0 { return 0 } - if Xsqlite3_strnicmp(tls, ((*Table)(unsafe.Pointer(pTab)).FzName+uintptr(7)), ts+9258 /* "parameters" */, 10) == 0 { + if Xsqlite3_strnicmp(tls, ((*Table)(unsafe.Pointer(pTab)).FzName+uintptr(7)), ts+9268 /* "parameters" */, 10) == 0 { return 0 } return 1 @@ -96023,9 +96625,9 @@ __7: zTab = func() uintptr { if (!(0 != 0)) && (iDb == 1) { - return ts + 14190 /* "sqlite_temp_mast..." */ + return ts + 14200 /* "sqlite_temp_mast..." */ } - return ts + 7774 /* "sqlite_master" */ + return ts + 7784 /* "sqlite_master" */ }() zDb = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16)).FzDbSName zArg2 = uintptr(0) @@ -96085,7 +96687,7 @@ __18: if !(tableMayNotBeDropped(tls, db, pTab) != 0) { goto __19 } - Xsqlite3ErrorMsg(tls, pParse, ts+15505 /* "table %s may not..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+15515 /* "table %s may not..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) goto exit_drop_table __19: ; @@ -96095,14 +96697,14 @@ __19: if !((isView != 0) && ((*Table)(unsafe.Pointer(pTab)).FpSelect == uintptr(0))) { goto __20 } - Xsqlite3ErrorMsg(tls, pParse, ts+15533 /* "use DROP TABLE t..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+15543 /* "use DROP TABLE t..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) goto exit_drop_table __20: ; if !(!(isView != 0) && ((*Table)(unsafe.Pointer(pTab)).FpSelect != 0)) { goto __21 } - Xsqlite3ErrorMsg(tls, pParse, ts+15567 /* "use DROP VIEW to..." */, libc.VaList(bp+16, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+15577 /* "use DROP VIEW to..." */, libc.VaList(bp+16, (*Table)(unsafe.Pointer(pTab)).FzName)) goto exit_drop_table __21: ; @@ -96117,7 +96719,7 @@ __21: if !(!(isView != 0)) { goto __23 } - sqlite3ClearStatTables(tls, pParse, iDb, ts+13521 /* "tbl" */, (*Table)(unsafe.Pointer(pTab)).FzName) + sqlite3ClearStatTables(tls, pParse, iDb, ts+13531 /* "tbl" */, (*Table)(unsafe.Pointer(pTab)).FzName) Xsqlite3FkDropTable(tls, pParse, pName, pTab) __23: ; @@ -96182,7 +96784,7 @@ __4: goto __5 } Xsqlite3ErrorMsg(tls, pParse, - ts+15599, /* "foreign key on %..." */ + ts+15609, /* "foreign key on %..." */ libc.VaList(bp, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(p)).FaCol+uintptr(iCol)*20)).FzName, pTo)) goto fk_end __5: @@ -96195,7 +96797,7 @@ __2: } Xsqlite3ErrorMsg(tls, pParse, - ts+15662 /* "number of column..." */, 0) + ts+15672 /* "number of column..." */, 0) goto fk_end goto __7 __6: @@ -96279,7 +96881,7 @@ __21: goto __23 } Xsqlite3ErrorMsg(tls, pParse, - ts+15756, /* "unknown column \"..." */ + ts+15766, /* "unknown column \"..." */ libc.VaList(bp+16, (*ExprList_item)(unsafe.Pointer((pFromCol+8 /* &.a */)+uintptr(i)*20)).FzEName)) goto fk_end __23: @@ -96529,12 +97131,12 @@ func Xsqlite3HasExplicitNulls(tls *libc.TLS, pParse uintptr, pList uintptr) int3 for i = 0; i < (*ExprList)(unsafe.Pointer(pList)).FnExpr; i++ { if (uint32(int32(*(*uint8)(unsafe.Pointer((pList + 8 /* &.a */) + uintptr(i)*20 + 12 /* &.bNulls */)) & 0x20 >> 5))) != 0 { var sf U8 = (*ExprList_item)(unsafe.Pointer((pList + 8 /* &.a */) + uintptr(i)*20)).FsortFlags - Xsqlite3ErrorMsg(tls, pParse, ts+15802, /* "unsupported use ..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+15812, /* "unsupported use ..." */ libc.VaList(bp, func() uintptr { if (int32(sf) == 0) || (int32(sf) == 3) { - return ts + 15830 /* "FIRST" */ + return ts + 15840 /* "FIRST" */ } - return ts + 15836 /* "LAST" */ + return ts + 15846 /* "LAST" */ }())) return 1 } @@ -96692,7 +97294,7 @@ __9: __8: ; - Xsqlite3FixInit(tls, bp+132 /* &sFix */, pParse, iDb, ts+8475 /* "index" */, *(*uintptr)(unsafe.Pointer(bp + 128 /* pName */))) + Xsqlite3FixInit(tls, bp+132 /* &sFix */, pParse, iDb, ts+8485 /* "index" */, *(*uintptr)(unsafe.Pointer(bp + 128 /* pName */))) if !(Xsqlite3FixSrcList(tls, bp+132 /* &sFix */, pTblName) != 0) { goto __10 } @@ -96713,7 +97315,7 @@ __11: goto __12 } Xsqlite3ErrorMsg(tls, pParse, - ts+15841, /* "cannot create a ..." */ + ts+15851, /* "cannot create a ..." */ libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) goto exit_create_index __12: @@ -96740,26 +97342,26 @@ __6: ; pDb = ((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16) - if !(((Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+10361 /* "sqlite_" */, 7) == 0) && + if !(((Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+10371 /* "sqlite_" */, 7) == 0) && (int32((*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy) == 0)) && (pTblName != uintptr(0))) { goto __15 } - Xsqlite3ErrorMsg(tls, pParse, ts+15891 /* "table %s may not..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+15901 /* "table %s may not..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) goto exit_create_index __15: ; if !((*Table)(unsafe.Pointer(pTab)).FpSelect != 0) { goto __16 } - Xsqlite3ErrorMsg(tls, pParse, ts+15919 /* "views may not be..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+15929 /* "views may not be..." */, 0) goto exit_create_index __16: ; if !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) { goto __17 } - Xsqlite3ErrorMsg(tls, pParse, ts+15944 /* "virtual tables m..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+15954 /* "virtual tables m..." */, 0) goto exit_create_index __17: ; @@ -96786,7 +97388,7 @@ __17: __20: ; - if !(SQLITE_OK != Xsqlite3CheckObjectName(tls, pParse, zName, ts+8475 /* "index" */, (*Table)(unsafe.Pointer(pTab)).FzName)) { + if !(SQLITE_OK != Xsqlite3CheckObjectName(tls, pParse, zName, ts+8485 /* "index" */, (*Table)(unsafe.Pointer(pTab)).FzName)) { goto __21 } goto exit_create_index @@ -96801,7 +97403,7 @@ __21: if !(Xsqlite3FindTable(tls, db, zName, uintptr(0)) != uintptr(0)) { goto __24 } - Xsqlite3ErrorMsg(tls, pParse, ts+15978 /* "there is already..." */, libc.VaList(bp+16, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+15988 /* "there is already..." */, libc.VaList(bp+16, zName)) goto exit_create_index __24: ; @@ -96813,7 +97415,7 @@ __23: if !(!(ifNotExist != 0)) { goto __26 } - Xsqlite3ErrorMsg(tls, pParse, ts+16012 /* "index %s already..." */, libc.VaList(bp+24, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+16022 /* "index %s already..." */, libc.VaList(bp+24, zName)) goto __27 __26: ; @@ -96842,7 +97444,7 @@ __29: goto __30 __30: ; - zName = Xsqlite3MPrintf(tls, db, ts+16036 /* "sqlite_autoindex..." */, libc.VaList(bp+32, (*Table)(unsafe.Pointer(pTab)).FzName, n)) + zName = Xsqlite3MPrintf(tls, db, ts+16046 /* "sqlite_autoindex..." */, libc.VaList(bp+32, (*Table)(unsafe.Pointer(pTab)).FzName, n)) if !(zName == uintptr(0)) { goto __31 } @@ -96871,9 +97473,9 @@ __19: zDb = (*Db)(unsafe.Pointer(pDb)).FzDbSName if !(Xsqlite3AuthCheck(tls, pParse, SQLITE_INSERT, func() uintptr { if (!(0 != 0)) && (iDb == 1) { - return ts + 14190 /* "sqlite_temp_mast..." */ + return ts + 14200 /* "sqlite_temp_mast..." */ } - return ts + 7774 /* "sqlite_master" */ + return ts + 7784 /* "sqlite_master" */ }(), uintptr(0), zDb) != 0) { goto __34 } @@ -96917,7 +97519,7 @@ __39: Xsqlite3ExprListSetSortOrder(tls, pList, sortOrder, -1) goto __38 __37: - Xsqlite3ExprListCheckLength(tls, pParse, pList, ts+8475 /* "index" */) + Xsqlite3ExprListCheckLength(tls, pParse, pList, ts+8485 /* "index" */) if !((*Parse)(unsafe.Pointer(pParse)).FnErr != 0) { goto __40 } @@ -97034,7 +97636,7 @@ __53: goto __56 } Xsqlite3ErrorMsg(tls, pParse, - ts+16059 /* "expressions proh..." */, 0) + ts+16069 /* "expressions proh..." */, 0) goto exit_create_index __56: ; @@ -97263,7 +97865,7 @@ __88: goto __93 } Xsqlite3ErrorMsg(tls, pParse, - ts+16120 /* "conflicting ON C..." */, libc.VaList(bp+48, 0)) + ts+16130 /* "conflicting ON C..." */, libc.VaList(bp+48, 0)) __93: ; if !(int32((*Index)(unsafe.Pointer(pIdx)).FonError) == OE_Default) { @@ -97319,7 +97921,7 @@ __81: if !(Xsqlite3IndexHasDuplicateRootPage(tls, pIndex) != 0) { goto __101 } - Xsqlite3ErrorMsg(tls, pParse, ts+16162 /* "invalid rootpage" */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+16172 /* "invalid rootpage" */, 0) (*Parse)(unsafe.Pointer(pParse)).Frc = Xsqlite3CorruptError(tls, 116514) goto exit_create_index __101: @@ -97377,12 +97979,12 @@ __104: __107: ; // A named index with an explicit CREATE INDEX statement - zStmt = Xsqlite3MPrintf(tls, db, ts+16179, /* "CREATE%s INDEX %..." */ + zStmt = Xsqlite3MPrintf(tls, db, ts+16189, /* "CREATE%s INDEX %..." */ libc.VaList(bp+56, func() uintptr { if onError == OE_None { - return ts + 915 /* "" */ + return ts + 925 /* "" */ } - return ts + 16199 /* " UNIQUE" */ + return ts + 16209 /* " UNIQUE" */ }(), n1, (*Token)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 128 /* pName */)))).Fz)) goto __106 __105: @@ -97394,7 +97996,7 @@ __106: // Add an entry in sqlite_schema for this index Xsqlite3NestedParse(tls, pParse, - ts+16207, /* "INSERT INTO %Q.s..." */ + ts+16217, /* "INSERT INTO %Q.s..." */ libc.VaList(bp+80, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, (*Index)(unsafe.Pointer(pIndex)).FzName, (*Table)(unsafe.Pointer(pTab)).FzName, @@ -97410,7 +98012,7 @@ __106: sqlite3RefillIndex(tls, pParse, pIndex, iMem) Xsqlite3ChangeCookie(tls, pParse, iDb) Xsqlite3VdbeAddParseSchemaOp(tls, v, iDb, - Xsqlite3MPrintf(tls, db, ts+16266 /* "name='%q' AND ty..." */, libc.VaList(bp+120, (*Index)(unsafe.Pointer(pIndex)).FzName)), uint16(0)) + Xsqlite3MPrintf(tls, db, ts+16276 /* "name='%q' AND ty..." */, libc.VaList(bp+120, (*Index)(unsafe.Pointer(pIndex)).FzName)), uint16(0)) Xsqlite3VdbeAddOp2(tls, v, OP_Expire, 0, 1) __108: ; @@ -97594,7 +98196,7 @@ __2: if !(!(ifExists != 0)) { goto __4 } - Xsqlite3ErrorMsg(tls, pParse, ts+16293 /* "no such index: %..." */, libc.VaList(bp, pName+8 /* &.a */)) + Xsqlite3ErrorMsg(tls, pParse, ts+16303 /* "no such index: %..." */, libc.VaList(bp, pName+8 /* &.a */)) goto __5 __4: Xsqlite3CodeVerifyNamedSchema(tls, pParse, (*SrcItem)(unsafe.Pointer((pName + 8 /* &.a */))).FzDatabase) @@ -97609,7 +98211,7 @@ __3: goto __6 } Xsqlite3ErrorMsg(tls, pParse, - ts+16311 /* "index associated..." */, libc.VaList(bp+8, 0)) + ts+16321 /* "index associated..." */, libc.VaList(bp+8, 0)) goto exit_drop_index __6: ; @@ -97620,9 +98222,9 @@ __6: zDb = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16)).FzDbSName zTab = func() uintptr { if (!(0 != 0)) && (iDb == 1) { - return ts + 14190 /* "sqlite_temp_mast..." */ + return ts + 14200 /* "sqlite_temp_mast..." */ } - return ts + 7774 /* "sqlite_master" */ + return ts + 7784 /* "sqlite_master" */ }() if !(Xsqlite3AuthCheck(tls, pParse, SQLITE_DELETE, zTab, uintptr(0), zDb) != 0) { goto __7 @@ -97650,9 +98252,9 @@ __9: } Xsqlite3BeginWriteOperation(tls, pParse, 1, iDb) Xsqlite3NestedParse(tls, pParse, - ts+16384, /* "DELETE FROM %Q.s..." */ + ts+16394, /* "DELETE FROM %Q.s..." */ libc.VaList(bp+16, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, (*Index)(unsafe.Pointer(pIndex)).FzName)) - sqlite3ClearStatTables(tls, pParse, iDb, ts+13517 /* "idx" */, (*Index)(unsafe.Pointer(pIndex)).FzName) + sqlite3ClearStatTables(tls, pParse, iDb, ts+13527 /* "idx" */, (*Index)(unsafe.Pointer(pIndex)).FzName) Xsqlite3ChangeCookie(tls, pParse, iDb) destroyRootPage(tls, pParse, int32((*Index)(unsafe.Pointer(pIndex)).Ftnum), iDb) Xsqlite3VdbeAddOp4(tls, v, OP_DropIndex, iDb, 0, 0, (*Index)(unsafe.Pointer(pIndex)).FzName, 0) @@ -97803,7 +98405,7 @@ func Xsqlite3SrcListEnlarge(tls *libc.TLS, pParse uintptr, pSrc uintptr, nExtra var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if ((*SrcList)(unsafe.Pointer(pSrc)).FnSrc + nExtra) >= SQLITE_MAX_SRCLIST { - Xsqlite3ErrorMsg(tls, pParse, ts+16444, /* "too many FROM cl..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+16454, /* "too many FROM cl..." */ libc.VaList(bp, SQLITE_MAX_SRCLIST)) return uintptr(0) } @@ -98015,12 +98617,12 @@ func Xsqlite3SrcListAppendFromTerm(tls *libc.TLS, pParse uintptr, p uintptr, pTa if !(!(p != 0) && ((pOn != 0) || (pUsing != 0))) { goto __1 } - Xsqlite3ErrorMsg(tls, pParse, ts+16480, /* "a JOIN clause is..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+16490, /* "a JOIN clause is..." */ libc.VaList(bp, func() uintptr { if pOn != 0 { - return ts + 16516 /* "ON" */ + return ts + 16526 /* "ON" */ } - return ts + 16519 /* "USING" */ + return ts + 16529 /* "USING" */ }())) goto append_from_error __1: @@ -98148,7 +98750,7 @@ func Xsqlite3BeginTransaction(tls *libc.TLS, pParse uintptr, type1 int32) { /* s db = (*Parse)(unsafe.Pointer(pParse)).Fdb - if Xsqlite3AuthCheck(tls, pParse, SQLITE_TRANSACTION, ts+16525 /* "BEGIN" */, uintptr(0), uintptr(0)) != 0 { + if Xsqlite3AuthCheck(tls, pParse, SQLITE_TRANSACTION, ts+16535 /* "BEGIN" */, uintptr(0), uintptr(0)) != 0 { return } v = Xsqlite3GetVdbe(tls, pParse) @@ -98184,9 +98786,9 @@ func Xsqlite3EndTransaction(tls *libc.TLS, pParse uintptr, eType int32) { /* sql if Xsqlite3AuthCheck(tls, pParse, SQLITE_TRANSACTION, func() uintptr { if isRollback != 0 { - return ts + 16531 /* "ROLLBACK" */ + return ts + 16541 /* "ROLLBACK" */ } - return ts + 16540 /* "COMMIT" */ + return ts + 16550 /* "COMMIT" */ }(), uintptr(0), uintptr(0)) != 0 { return } @@ -98211,7 +98813,7 @@ func Xsqlite3Savepoint(tls *libc.TLS, pParse uintptr, op int32, pName uintptr) { } } -var az = [3]uintptr{ts + 16525 /* "BEGIN" */, ts + 16547 /* "RELEASE" */, ts + 16531 /* "ROLLBACK" */} /* sqlite3.c:117293:23 */ +var az = [3]uintptr{ts + 16535 /* "BEGIN" */, ts + 16557 /* "RELEASE" */, ts + 16541 /* "ROLLBACK" */} /* sqlite3.c:117293:23 */ // Make sure the TEMP database is open and available for use. Return // the number of errors. Leave any error messages in the pParse structure. @@ -98227,7 +98829,7 @@ func Xsqlite3OpenTempDatabase(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3. rc = Xsqlite3BtreeOpen(tls, (*Sqlite3)(unsafe.Pointer(db)).FpVfs, uintptr(0), db, bp /* &pBt */, 0, flags) if rc != SQLITE_OK { Xsqlite3ErrorMsg(tls, pParse, - ts+16555 /* "unable to open a..." */, 0) + ts+16565 /* "unable to open a..." */, 0) (*Parse)(unsafe.Pointer(pParse)).Frc = rc return 1 } @@ -98370,17 +98972,17 @@ func Xsqlite3UniqueConstraint(tls *libc.TLS, pParse uintptr, onError int32, pIdx Xsqlite3StrAccumInit(tls, bp+8 /* &errMsg */, (*Parse)(unsafe.Pointer(pParse)).Fdb, uintptr(0), 0, *(*int32)(unsafe.Pointer(((*Parse)(unsafe.Pointer(pParse)).Fdb + 108 /* &.aLimit */)))) if (*Index)(unsafe.Pointer(pIdx)).FaColExpr != 0 { - Xsqlite3_str_appendf(tls, bp+8 /* &errMsg */, ts+16625 /* "index '%q'" */, libc.VaList(bp, (*Index)(unsafe.Pointer(pIdx)).FzName)) + Xsqlite3_str_appendf(tls, bp+8 /* &errMsg */, ts+16635 /* "index '%q'" */, libc.VaList(bp, (*Index)(unsafe.Pointer(pIdx)).FzName)) } else { for j = 0; j < int32((*Index)(unsafe.Pointer(pIdx)).FnKeyCol); j++ { var zCol uintptr zCol = (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(j)*2)))*20)).FzName if j != 0 { - Xsqlite3_str_append(tls, bp+8 /* &errMsg */, ts+16636 /* ", " */, 2) + Xsqlite3_str_append(tls, bp+8 /* &errMsg */, ts+16646 /* ", " */, 2) } Xsqlite3_str_appendall(tls, bp+8 /* &errMsg */, (*Table)(unsafe.Pointer(pTab)).FzName) - Xsqlite3_str_append(tls, bp+8 /* &errMsg */, ts+928 /* "." */, 1) + Xsqlite3_str_append(tls, bp+8 /* &errMsg */, ts+938 /* "." */, 1) Xsqlite3_str_appendall(tls, bp+8 /* &errMsg */, zCol) } } @@ -98403,11 +99005,11 @@ func Xsqlite3RowidConstraint(tls *libc.TLS, pParse uintptr, onError int32, pTab var zMsg uintptr var rc int32 if int32((*Table)(unsafe.Pointer(pTab)).FiPKey) >= 0 { - zMsg = Xsqlite3MPrintf(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, ts+10230 /* "%s.%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, + zMsg = Xsqlite3MPrintf(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, ts+10240 /* "%s.%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr((*Table)(unsafe.Pointer(pTab)).FiPKey)*20)).FzName)) rc = (SQLITE_CONSTRAINT | (int32(6) << 8)) } else { - zMsg = Xsqlite3MPrintf(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, ts+10221 /* "%s.rowid" */, libc.VaList(bp+16, (*Table)(unsafe.Pointer(pTab)).FzName)) + zMsg = Xsqlite3MPrintf(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, ts+10231 /* "%s.rowid" */, libc.VaList(bp+16, (*Table)(unsafe.Pointer(pTab)).FzName)) rc = (SQLITE_CONSTRAINT | (int32(10) << 8)) } Xsqlite3HaltConstraint(tls, pParse, rc, onError, zMsg, int8(-7), @@ -98550,7 +99152,7 @@ func Xsqlite3Reindex(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintp sqlite3RefillIndex(tls, pParse, pIndex, -1) return } - Xsqlite3ErrorMsg(tls, pParse, ts+16639 /* "unable to identi..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+16649 /* "unable to identi..." */, 0) } // Return a KeyInfo structure that is appropriate for the given Index. @@ -98660,7 +99262,7 @@ func Xsqlite3WithAdd(tls *libc.TLS, pParse uintptr, pWith uintptr, pCte uintptr) var i int32 for i = 0; i < (*With)(unsafe.Pointer(pWith)).FnCte; i++ { if Xsqlite3StrICmp(tls, zName, (*Cte)(unsafe.Pointer((pWith+12 /* &.a */)+uintptr(i)*24)).FzName) == 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+16685 /* "duplicate WITH t..." */, libc.VaList(bp, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+16695 /* "duplicate WITH t..." */, libc.VaList(bp, zName)) } } } @@ -98721,7 +99323,9 @@ func callCollNeeded(tls *libc.TLS, db uintptr, enc int32, zName uintptr) { /* sq if !(zExternal != 0) { return } - (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer((db + 268 /* &.xCollNeeded */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpCollNeededArg, db, enc, zExternal) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpCollNeededArg, db, enc, zExternal) Xsqlite3DbFree(tls, db, zExternal) } if (*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded16 != 0 { @@ -98730,7 +99334,9 @@ func callCollNeeded(tls *libc.TLS, db uintptr, enc int32, zName uintptr) { /* sq Xsqlite3ValueSetStr(tls, pTmp, -1, zName, uint8(SQLITE_UTF8), uintptr(0)) zExternal = Xsqlite3ValueText(tls, pTmp, uint8(SQLITE_UTF16LE)) if zExternal != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer((db + 272 /* &.xCollNeeded16 */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpCollNeededArg, db, int32((*Sqlite3)(unsafe.Pointer(db)).Fenc), zExternal) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded16})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpCollNeededArg, db, int32((*Sqlite3)(unsafe.Pointer(db)).Fenc), zExternal) } Xsqlite3ValueFree(tls, pTmp) } @@ -98894,7 +99500,7 @@ func Xsqlite3GetCollSeq(tls *libc.TLS, pParse uintptr, enc U8, pColl uintptr, zN } if p == uintptr(0) { - Xsqlite3ErrorMsg(tls, pParse, ts+16715 /* "no such collatio..." */, libc.VaList(bp, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+16725 /* "no such collatio..." */, libc.VaList(bp, zName)) (*Parse)(unsafe.Pointer(pParse)).Frc = (SQLITE_ERROR | (int32(1) << 8)) } return p @@ -99260,11 +99866,11 @@ func Xsqlite3IsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr, viewOk int3 defer tls.Free(16) if tabIsReadOnly(tls, pParse, pTab) != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+16746 /* "table %s may not..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+16756 /* "table %s may not..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) return 1 } if !(viewOk != 0) && ((*Table)(unsafe.Pointer(pTab)).FpSelect != 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+16775 /* "cannot modify %s..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+16785 /* "cannot modify %s..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) return 1 } return 0 @@ -99857,7 +100463,7 @@ __60: } Xsqlite3VdbeAddOp2(tls, v, OP_ChngCntRow, memCnt, 1) Xsqlite3VdbeSetNumCols(tls, v, 1) - Xsqlite3VdbeSetColName(tls, v, 0, COLNAME_NAME, ts+16813 /* "rows deleted" */, uintptr(0)) + Xsqlite3VdbeSetColName(tls, v, 0, COLNAME_NAME, ts+16823 /* "rows deleted" */, uintptr(0)) __61: ; @@ -100002,7 +100608,7 @@ func Xsqlite3GenerateRowDelete(tls *libc.TLS, pParse uintptr, pTab uintptr, pTri } return 0 }()) - if (int32((*Parse)(unsafe.Pointer(pParse)).Fnested) == 0) || (0 == Xsqlite3_stricmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+13346 /* "sqlite_stat1" */)) { + if (int32((*Parse)(unsafe.Pointer(pParse)).Fnested) == 0) || (0 == Xsqlite3_stricmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+13356 /* "sqlite_stat1" */)) { Xsqlite3VdbeAppendP4(tls, v, pTab, -6) } if int32(eMode) != ONEPASS_OFF { @@ -100280,7 +100886,7 @@ func typeofFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { / Xsqlite3_result_text(tls, context, azType2[i], -1, uintptr(0)) } -var azType2 = [5]uintptr{ts + 8086 /* "integer" */, ts + 8081 /* "real" */, ts + 16826 /* "text" */, ts + 16831 /* "blob" */, ts + 8076 /* "null" */} /* sqlite3.c:119398:21 */ +var azType2 = [5]uintptr{ts + 8096 /* "integer" */, ts + 8091 /* "real" */, ts + 16836 /* "text" */, ts + 16841 /* "blob" */, ts + 8086 /* "null" */} /* sqlite3.c:119398:21 */ // Implementation of the length() function func lengthFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119418:13: */ @@ -100344,7 +100950,7 @@ func absFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli // IMP: R-31676-45509 If X is the integer -9223372036854775808 // then abs(X) throws an integer overflow error since there is no // equivalent positive 64-bit two complement value. - Xsqlite3_result_error(tls, context, ts+16836 /* "integer overflow" */, -1) + Xsqlite3_result_error(tls, context, ts+16846 /* "integer overflow" */, -1) return } iVal = -iVal @@ -100675,14 +101281,14 @@ func roundFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq if (*(*float64)(unsafe.Pointer(bp + 16 /* r */)) < -4503599627370496.0) || (*(*float64)(unsafe.Pointer(bp + 16 /* r */)) > +4503599627370496.0) { // The value has no fractional part so there is nothing to round } else if n == 0 { - *(*float64)(unsafe.Pointer(bp + 16 /* r */)) = float64((Sqlite_int64(*(*float64)(unsafe.Pointer(bp + 16 /* r */)) + (func() float64 { + *(*float64)(unsafe.Pointer(bp + 16 /* r */)) = float64((libc.Int64FromFloat64(*(*float64)(unsafe.Pointer(bp + 16 /* r */)) + (func() float64 { if *(*float64)(unsafe.Pointer(bp + 16 /* r */)) < float64(0) { return -0.5 } return +0.5 }())))) } else { - zBuf = Xsqlite3_mprintf(tls, ts+16853 /* "%.*f" */, libc.VaList(bp, n, *(*float64)(unsafe.Pointer(bp + 16 /* r */)))) + zBuf = Xsqlite3_mprintf(tls, ts+16863 /* "%.*f" */, libc.VaList(bp, n, *(*float64)(unsafe.Pointer(bp + 16 /* r */)))) if zBuf == uintptr(0) { Xsqlite3_result_error_nomem(tls, context) return @@ -101134,7 +101740,7 @@ func likeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql nPat = Xsqlite3_value_bytes(tls, *(*uintptr)(unsafe.Pointer(argv))) if nPat > *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 8*4)) { - Xsqlite3_result_error(tls, context, ts+16858 /* "LIKE or GLOB pat..." */, -1) + Xsqlite3_result_error(tls, context, ts+16868 /* "LIKE or GLOB pat..." */, -1) return } if argc == 3 { @@ -101146,7 +101752,7 @@ func likeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql } if Xsqlite3Utf8CharLen(tls, *(*uintptr)(unsafe.Pointer(bp /* zEsc */)), -1) != 1 { Xsqlite3_result_error(tls, context, - ts+16891 /* "ESCAPE expressio..." */, -1) + ts+16901 /* "ESCAPE expressio..." */, -1) return } escape = Xsqlite3Utf8Read(tls, bp /* &zEsc */) @@ -101213,7 +101819,7 @@ func errlogFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s _ = argc _ = context - Xsqlite3_log(tls, Xsqlite3_value_int(tls, *(*uintptr)(unsafe.Pointer(argv))), ts+951 /* "%s" */, libc.VaList(bp, Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv + 1*4))))) + Xsqlite3_log(tls, Xsqlite3_value_int(tls, *(*uintptr)(unsafe.Pointer(argv))), ts+961 /* "%s" */, libc.VaList(bp, Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv + 1*4))))) } // Implementation of the sqlite_compileoption_used() function. @@ -101270,10 +101876,10 @@ func quoteFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq // var zBuf [50]int8 at bp+16, 50 r1 = Xsqlite3_value_double(tls, *(*uintptr)(unsafe.Pointer(argv))) - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([50]int8{})), bp+16 /* &zBuf[0] */, ts+6807 /* "%!.15g" */, libc.VaList(bp, r1)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([50]int8{})), bp+16 /* &zBuf[0] */, ts+6817 /* "%!.15g" */, libc.VaList(bp, r1)) Xsqlite3AtoF(tls, bp+16 /* &zBuf[0] */, bp+68 /* &r2 */, 20, uint8(SQLITE_UTF8)) if r1 != *(*float64)(unsafe.Pointer(bp + 68 /* r2 */)) { - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([50]int8{})), bp+16 /* &zBuf[0] */, ts+16936 /* "%!.20e" */, libc.VaList(bp+8, r1)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([50]int8{})), bp+16 /* &zBuf[0] */, ts+16946 /* "%!.20e" */, libc.VaList(bp+8, r1)) } Xsqlite3_result_text(tls, context, bp+16 /* &zBuf[0] */, -1, libc.UintptrFromInt32(-1)) break @@ -101347,7 +101953,7 @@ func quoteFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq default: { - Xsqlite3_result_text(tls, context, ts+916 /* "NULL" */, 4, uintptr(0)) + Xsqlite3_result_text(tls, context, ts+926 /* "NULL" */, 4, uintptr(0)) break } @@ -101658,7 +102264,7 @@ func trimFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql } var lenOne = [1]uint32{uint32(1)} /* sqlite3.c:120648:27 */ -var azOne = [1]uintptr{uintptr(ts + 12926 /* " " */)} /* sqlite3.c:120649:26 */ +var azOne = [1]uintptr{uintptr(ts + 12936 /* " " */)} /* sqlite3.c:120649:26 */ // IMP: R-25361-16150 This function is omitted from SQLite by default. It // is only available if the SQLITE_SOUNDEX compile-time option is used @@ -101679,7 +102285,7 @@ func soundexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* zIn = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv))) if zIn == uintptr(0) { - zIn = ts + 915 /* "" */ + zIn = ts + 925 /* "" */ } for i = 0; (*(*U8)(unsafe.Pointer(zIn + uintptr(i))) != 0) && !((int32(Xsqlite3CtypeMap[*(*U8)(unsafe.Pointer(zIn + uintptr(i)))]) & 0x02) != 0); i++ { } @@ -101705,7 +102311,7 @@ func soundexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* } else { // IMP: R-64894-50321 The string "?000" is returned if the argument // is NULL or contains no ASCII alphabetic characters. - Xsqlite3_result_text(tls, context, ts+16943 /* "?000" */, 4, uintptr(0)) + Xsqlite3_result_text(tls, context, ts+16953 /* "?000" */, 4, uintptr(0)) } } @@ -101733,7 +102339,7 @@ func loadExt(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli // Disallow the load_extension() SQL function unless the SQLITE_LoadExtFunc // flag is set. See the sqlite3_enable_load_extension() API. if ((*Sqlite3)(unsafe.Pointer(db)).Fflags & uint64(SQLITE_LoadExtFunc)) == uint64(0) { - Xsqlite3_result_error(tls, context, ts+14123 /* "not authorized" */, -1) + Xsqlite3_result_error(tls, context, ts+14133 /* "not authorized" */, -1) return } @@ -101751,12 +102357,12 @@ func loadExt(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli // An instance of the following structure holds the context of a // sum() or avg() aggregate computation. type SumCtx1 = struct { - FrSum float64 - FiSum I64 - Fcnt I64 - Foverflow U8 - Fapprox U8 - _ [2]byte + FrSum float64 + FiSum I64 + Fcnt I64 + Foverflow U8 + Fapprox U8 + F__ccgo_pad1 [2]byte } /* sqlite3.c:120823:9 */ // An instance of the following structure holds the context of a @@ -101821,7 +102427,7 @@ func sumFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120889:13: */ p = Xsqlite3_aggregate_context(tls, context, 0) if (p != 0) && ((*SumCtx)(unsafe.Pointer(p)).Fcnt > int64(0)) { if (*SumCtx)(unsafe.Pointer(p)).Foverflow != 0 { - Xsqlite3_result_error(tls, context, ts+16836 /* "integer overflow" */, -1) + Xsqlite3_result_error(tls, context, ts+16846 /* "integer overflow" */, -1) } else if (*SumCtx)(unsafe.Pointer(p)).Fapprox != 0 { Xsqlite3_result_double(tls, context, (*SumCtx)(unsafe.Pointer(p)).FrSum) } else { @@ -101975,7 +102581,7 @@ func groupConcatStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { zSep = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv + 1*4))) nSep = Xsqlite3_value_bytes(tls, *(*uintptr)(unsafe.Pointer(argv + 1*4))) } else { - zSep = ts + 14855 /* "," */ + zSep = ts + 14865 /* "," */ nSep = 1 } if zSep != 0 { @@ -102053,7 +102659,7 @@ func groupConcatValue(tls *libc.TLS, context uintptr) { /* sqlite3.c:121112:13: // of the built-in functions above are part of the global function set. // This routine only deals with those that are not global. func Xsqlite3RegisterPerConnectionBuiltinFunctions(tls *libc.TLS, db uintptr) { /* sqlite3.c:121135:21: */ - var rc int32 = Xsqlite3_overload_function(tls, db, ts+16948 /* "MATCH" */, 2) + var rc int32 = Xsqlite3_overload_function(tls, db, ts+16958 /* "MATCH" */, 2) if rc == SQLITE_NOMEM { Xsqlite3OomFault(tls, db) @@ -102073,14 +102679,14 @@ func Xsqlite3RegisterLikeFunctions(tls *libc.TLS, db uintptr, caseSensitive int3 pInfo = uintptr(unsafe.Pointer(&likeInfoNorm)) flags = SQLITE_FUNC_LIKE } - Xsqlite3CreateFunc(tls, db, ts+16954 /* "like" */, 2, SQLITE_UTF8, pInfo, *(*uintptr)(unsafe.Pointer(&struct { + Xsqlite3CreateFunc(tls, db, ts+16964 /* "like" */, 2, SQLITE_UTF8, pInfo, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{likeFunc})), uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0)) - Xsqlite3CreateFunc(tls, db, ts+16954 /* "like" */, 3, SQLITE_UTF8, pInfo, *(*uintptr)(unsafe.Pointer(&struct { + Xsqlite3CreateFunc(tls, db, ts+16964 /* "like" */, 3, SQLITE_UTF8, pInfo, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{likeFunc})), uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0)) - *(*U32)(unsafe.Pointer(Xsqlite3FindFunction(tls, db, ts+16954 /* "like" */, 2, uint8(SQLITE_UTF8), uint8(0)) + 4 /* &.funcFlags */)) |= (U32(flags)) - *(*U32)(unsafe.Pointer(Xsqlite3FindFunction(tls, db, ts+16954 /* "like" */, 3, uint8(SQLITE_UTF8), uint8(0)) + 4 /* &.funcFlags */)) |= (U32(flags)) + *(*U32)(unsafe.Pointer(Xsqlite3FindFunction(tls, db, ts+16964 /* "like" */, 2, uint8(SQLITE_UTF8), uint8(0)) + 4 /* &.funcFlags */)) |= (U32(flags)) + *(*U32)(unsafe.Pointer(Xsqlite3FindFunction(tls, db, ts+16964 /* "like" */, 3, uint8(SQLITE_UTF8), uint8(0)) + 4 /* &.funcFlags */)) |= (U32(flags)) } // pExpr points to an expression which implements a function. If @@ -102185,76 +102791,76 @@ func Xsqlite3RegisterBuiltinFunctions(tls *libc.TLS) { /* sqlite3.c:121427:21: * var aBuiltinFunc = [68]FuncDef{ //**** Functions only available with SQLITE_TESTCTRL_INTERNAL_FUNCTIONS **** - {FnArg: int8(2), FfuncFlags: (U32(((((SQLITE_UTF8 | SQLITE_FUNC_INTERNAL) | SQLITE_FUNC_TEST) | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_implies_nonnull_row), FxSFunc: 0, FzName: ts + 16959 /* "implies_nonnull_..." */}, - {FnArg: int8(2), FfuncFlags: (U32(((((SQLITE_UTF8 | SQLITE_FUNC_INTERNAL) | SQLITE_FUNC_TEST) | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_expr_compare), FxSFunc: 0, FzName: ts + 16979 /* "expr_compare" */}, - {FnArg: int8(2), FfuncFlags: (U32(((((SQLITE_UTF8 | SQLITE_FUNC_INTERNAL) | SQLITE_FUNC_TEST) | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_expr_implies_expr), FxSFunc: 0, FzName: ts + 16992 /* "expr_implies_exp..." */}, + {FnArg: int8(2), FfuncFlags: (U32(((((SQLITE_UTF8 | SQLITE_FUNC_INTERNAL) | SQLITE_FUNC_TEST) | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_implies_nonnull_row), FxSFunc: 0, FzName: ts + 16969 /* "implies_nonnull_..." */}, + {FnArg: int8(2), FfuncFlags: (U32(((((SQLITE_UTF8 | SQLITE_FUNC_INTERNAL) | SQLITE_FUNC_TEST) | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_expr_compare), FxSFunc: 0, FzName: ts + 16989 /* "expr_compare" */}, + {FnArg: int8(2), FfuncFlags: (U32(((((SQLITE_UTF8 | SQLITE_FUNC_INTERNAL) | SQLITE_FUNC_TEST) | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_expr_implies_expr), FxSFunc: 0, FzName: ts + 17002 /* "expr_implies_exp..." */}, //**** Regular functions **** - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17010 /* "soundex" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_DIRECTONLY) | SQLITE_FUNC_UNSAFE)), FxSFunc: 0, FzName: ts + 17018 /* "load_extension" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_DIRECTONLY) | SQLITE_FUNC_UNSAFE)), FxSFunc: 0, FzName: ts + 17018 /* "load_extension" */}, - {FnArg: int8(1), FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 17033 /* "sqlite_compileop..." */}, - {FnArg: int8(1), FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 17059 /* "sqlite_compileop..." */}, - {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (SQLITE_FUNC_UNLIKELY))), FpUserData: uintptr(INLINEFUNC_unlikely), FxSFunc: 0, FzName: ts + 17084 /* "unlikely" */}, - {FnArg: int8(2), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (SQLITE_FUNC_UNLIKELY))), FpUserData: uintptr(INLINEFUNC_unlikely), FxSFunc: 0, FzName: ts + 17093 /* "likelihood" */}, - {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (SQLITE_FUNC_UNLIKELY))), FpUserData: uintptr(INLINEFUNC_unlikely), FxSFunc: 0, FzName: ts + 17104 /* "likely" */}, - {FnArg: int8(1), FfuncFlags: (U32((((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_OFFSET) | SQLITE_FUNC_TYPEOF)), FxSFunc: 0, FzName: ts + 17111 /* "sqlite_offset" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FxSFunc: 0, FzName: ts + 17125 /* "ltrim" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FxSFunc: 0, FzName: ts + 17125 /* "ltrim" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(2), FxSFunc: 0, FzName: ts + 17131 /* "rtrim" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(2), FxSFunc: 0, FzName: ts + 17131 /* "rtrim" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(3), FxSFunc: 0, FzName: ts + 17137 /* "trim" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(3), FxSFunc: 0, FzName: ts + 17137 /* "trim" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17142 /* "min" */}, - {FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FzName: ts + 17142 /* "min" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (1 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_MINMAX)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FzName: ts + 17142 /* "min" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FxSFunc: 0, FzName: ts + 17146 /* "max" */}, - {FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FzName: ts + 17146 /* "max" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (1 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_MINMAX)), FpUserData: uintptr(1), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FzName: ts + 17146 /* "max" */}, - {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_TYPEOF)), FxSFunc: 0, FzName: ts + 17150 /* "typeof" */}, - {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_LENGTH)), FxSFunc: 0, FzName: ts + 17157 /* "length" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17164 /* "instr" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17170 /* "printf" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17177 /* "unicode" */}, - {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17185 /* "char" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17190 /* "abs" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17194 /* "round" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17194 /* "round" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17200 /* "upper" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17206 /* "lower" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17212 /* "hex" */}, - {FnArg: int8(2), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FxSFunc: 0, FzName: ts + 17216 /* "ifnull" */}, - {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17223 /* "random" */}, - {FnArg: int8(1), FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17230 /* "randomblob" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17241 /* "nullif" */}, - {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 17248 /* "sqlite_version" */}, - {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 17263 /* "sqlite_source_id" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17280 /* "sqlite_log" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17291 /* "quote" */}, - {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17297 /* "last_insert_rowi..." */}, - {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17315 /* "changes" */}, - {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17323 /* "total_changes" */}, - {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17337 /* "replace" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17345 /* "zeroblob" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17354 /* "substr" */}, - {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17354 /* "substr" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17361 /* "substring" */}, - {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17361 /* "substring" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 17371 /* "sum" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 17375 /* "total" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 17381 /* "avg" */}, - {FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_COUNT)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 17385 /* "count" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 17385 /* "count" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 17391 /* "group_concat" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 17391 /* "group_concat" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17020 /* "soundex" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_DIRECTONLY) | SQLITE_FUNC_UNSAFE)), FxSFunc: 0, FzName: ts + 17028 /* "load_extension" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_DIRECTONLY) | SQLITE_FUNC_UNSAFE)), FxSFunc: 0, FzName: ts + 17028 /* "load_extension" */}, + {FnArg: int8(1), FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 17043 /* "sqlite_compileop..." */}, + {FnArg: int8(1), FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 17069 /* "sqlite_compileop..." */}, + {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (SQLITE_FUNC_UNLIKELY))), FpUserData: uintptr(INLINEFUNC_unlikely), FxSFunc: 0, FzName: ts + 17094 /* "unlikely" */}, + {FnArg: int8(2), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (SQLITE_FUNC_UNLIKELY))), FpUserData: uintptr(INLINEFUNC_unlikely), FxSFunc: 0, FzName: ts + 17103 /* "likelihood" */}, + {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (SQLITE_FUNC_UNLIKELY))), FpUserData: uintptr(INLINEFUNC_unlikely), FxSFunc: 0, FzName: ts + 17114 /* "likely" */}, + {FnArg: int8(1), FfuncFlags: (U32((((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_OFFSET) | SQLITE_FUNC_TYPEOF)), FxSFunc: 0, FzName: ts + 17121 /* "sqlite_offset" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FxSFunc: 0, FzName: ts + 17135 /* "ltrim" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FxSFunc: 0, FzName: ts + 17135 /* "ltrim" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(2), FxSFunc: 0, FzName: ts + 17141 /* "rtrim" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(2), FxSFunc: 0, FzName: ts + 17141 /* "rtrim" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(3), FxSFunc: 0, FzName: ts + 17147 /* "trim" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(3), FxSFunc: 0, FzName: ts + 17147 /* "trim" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17152 /* "min" */}, + {FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FzName: ts + 17152 /* "min" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (1 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_MINMAX)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FzName: ts + 17152 /* "min" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FxSFunc: 0, FzName: ts + 17156 /* "max" */}, + {FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FpUserData: uintptr(1), FzName: ts + 17156 /* "max" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (1 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_MINMAX)), FpUserData: uintptr(1), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FzName: ts + 17156 /* "max" */}, + {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_TYPEOF)), FxSFunc: 0, FzName: ts + 17160 /* "typeof" */}, + {FnArg: int8(1), FfuncFlags: (U32(((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_LENGTH)), FxSFunc: 0, FzName: ts + 17167 /* "length" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17174 /* "instr" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17180 /* "printf" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17187 /* "unicode" */}, + {FnArg: int8(-1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17195 /* "char" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17200 /* "abs" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17204 /* "round" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17204 /* "round" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17210 /* "upper" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17216 /* "lower" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17222 /* "hex" */}, + {FnArg: int8(2), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FxSFunc: 0, FzName: ts + 17226 /* "ifnull" */}, + {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17233 /* "random" */}, + {FnArg: int8(1), FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17240 /* "randomblob" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (1 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17251 /* "nullif" */}, + {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 17258 /* "sqlite_version" */}, + {FfuncFlags: (U32(SQLITE_FUNC_SLOCHNG | SQLITE_UTF8)), FxSFunc: 0, FzName: ts + 17273 /* "sqlite_source_id" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17290 /* "sqlite_log" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17301 /* "quote" */}, + {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17307 /* "last_insert_rowi..." */}, + {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17325 /* "changes" */}, + {FfuncFlags: (U32(SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17333 /* "total_changes" */}, + {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17347 /* "replace" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17355 /* "zeroblob" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17364 /* "substr" */}, + {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17364 /* "substr" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17371 /* "substring" */}, + {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17371 /* "substring" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 17381 /* "sum" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 17385 /* "total" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 17391 /* "avg" */}, + {FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | SQLITE_FUNC_COUNT)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 17395 /* "count" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 17395 /* "count" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 17401 /* "group_concat" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_UTF8 | (0 * SQLITE_FUNC_NEEDCOLL)) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: ts + 17401 /* "group_concat" */}, - {FnArg: int8(2), FfuncFlags: (U32(((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | SQLITE_FUNC_LIKE) | SQLITE_FUNC_CASE)), FpUserData: 0, FxSFunc: 0, FzName: ts + 17404 /* "glob" */}, - {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | SQLITE_FUNC_LIKE)), FpUserData: 0, FxSFunc: 0, FzName: ts + 16954 /* "like" */}, - {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | SQLITE_FUNC_LIKE)), FpUserData: 0, FxSFunc: 0, FzName: ts + 16954 /* "like" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FzName: ts + 17409 /* "coalesce" */}, - {FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FzName: ts + 17409 /* "coalesce" */}, - {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17418 /* "sign" */}, - {FnArg: int8(-1), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FxSFunc: 0, FzName: ts + 17409 /* "coalesce" */}, - {FnArg: int8(3), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_iif), FxSFunc: 0, FzName: ts + 17423 /* "iif" */}} /* sqlite3.c:121438:18 */ + {FnArg: int8(2), FfuncFlags: (U32(((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | SQLITE_FUNC_LIKE) | SQLITE_FUNC_CASE)), FpUserData: 0, FxSFunc: 0, FzName: ts + 17414 /* "glob" */}, + {FnArg: int8(2), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | SQLITE_FUNC_LIKE)), FpUserData: 0, FxSFunc: 0, FzName: ts + 16964 /* "like" */}, + {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | SQLITE_FUNC_LIKE)), FpUserData: 0, FxSFunc: 0, FzName: ts + 16964 /* "like" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FzName: ts + 17419 /* "coalesce" */}, + {FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FzName: ts + 17419 /* "coalesce" */}, + {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 17428 /* "sign" */}, + {FnArg: int8(-1), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FxSFunc: 0, FzName: ts + 17419 /* "coalesce" */}, + {FnArg: int8(3), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(INLINEFUNC_iif), FxSFunc: 0, FzName: ts + 17433 /* "iif" */}} /* sqlite3.c:121438:18 */ //************* End of func.c *********************************************** //************* Begin file fkey.c ******************************************* @@ -102540,7 +103146,7 @@ func Xsqlite3FkLocateIndex(tls *libc.TLS, pParse uintptr, pParent uintptr, pFKey if !(pIdx != 0) { if !(int32((*Parse)(unsafe.Pointer(pParse)).FdisableTriggers) != 0) { Xsqlite3ErrorMsg(tls, pParse, - ts+17427, /* "foreign key mism..." */ + ts+17437, /* "foreign key mism..." */ libc.VaList(bp, (*Table)(unsafe.Pointer((*FKey)(unsafe.Pointer(pFKey)).FpFrom)).FzName, (*FKey)(unsafe.Pointer(pFKey)).FzTo)) } Xsqlite3DbFree(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, aiCol) @@ -103436,8 +104042,8 @@ func fkActionTrigger(tls *libc.TLS, pParse uintptr, pTab uintptr, pFKey uintptr, } for i = 0; i < (*FKey)(unsafe.Pointer(pFKey)).FnCol; i++ { - *(*Token)(unsafe.Pointer(bp + 24 /* tOld */)) = Token{Fz: ts + 8575 /* "old" */, Fn: uint32(3)} // Literal "old" token - *(*Token)(unsafe.Pointer(bp + 32 /* tNew */)) = Token{Fz: ts + 8571 /* "new" */, Fn: uint32(3)} // Literal "new" token + *(*Token)(unsafe.Pointer(bp + 24 /* tOld */)) = Token{Fz: ts + 8585 /* "old" */, Fn: uint32(3)} // Literal "old" token + *(*Token)(unsafe.Pointer(bp + 32 /* tNew */)) = Token{Fz: ts + 8581 /* "new" */, Fn: uint32(3)} // Literal "new" token // var tFromCol Token at bp+16, 8 // Name of column in child table // var tToCol Token at bp+8, 8 @@ -103525,7 +104131,7 @@ func fkActionTrigger(tls *libc.TLS, pParse uintptr, pTab uintptr, pFKey uintptr, (*Token)(unsafe.Pointer(bp + 40 /* &tFrom */)).Fz = zFrom (*Token)(unsafe.Pointer(bp + 40 /* &tFrom */)).Fn = uint32(nFrom) - pRaise = Xsqlite3Expr(tls, db, TK_RAISE, ts+7068 /* "FOREIGN KEY cons..." */) + pRaise = Xsqlite3Expr(tls, db, TK_RAISE, ts+7078 /* "FOREIGN KEY cons..." */) if pRaise != 0 { (*Expr)(unsafe.Pointer(pRaise)).FaffExpr = int8(OE_Abort) } @@ -103704,13 +104310,13 @@ func Xsqlite3OpenTable(tls *libc.TLS, pParse uintptr, iCur int32, iDb int32, pTa }(), (*Table)(unsafe.Pointer(pTab)).FzName) if ((*Table)(unsafe.Pointer((pTab))).FtabFlags & U32(TF_WithoutRowid)) == U32(0) { Xsqlite3VdbeAddOp4Int(tls, v, opcode, iCur, int32((*Table)(unsafe.Pointer(pTab)).Ftnum), iDb, int32((*Table)(unsafe.Pointer(pTab)).FnNVCol)) - Xsqlite3VdbeComment(tls, v, ts+951 /* "%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+961 /* "%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) } else { var pPk uintptr = Xsqlite3PrimaryKeyIndex(tls, pTab) Xsqlite3VdbeAddOp3(tls, v, opcode, iCur, int32((*Index)(unsafe.Pointer(pPk)).Ftnum), iDb) Xsqlite3VdbeSetP4KeyInfo(tls, pParse, pPk) - Xsqlite3VdbeComment(tls, v, ts+951 /* "%s" */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+961 /* "%s" */, libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) } } @@ -103958,7 +104564,7 @@ func Xsqlite3ComputeGeneratedColumns(tls *libc.TLS, pParse uintptr, iRegStore in } } if pRedo != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+10191 /* "generated column..." */, libc.VaList(bp, (*Column)(unsafe.Pointer(pRedo)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+10201 /* "generated column..." */, libc.VaList(bp, (*Column)(unsafe.Pointer(pRedo)).FzName)) } (*Parse)(unsafe.Pointer(pParse)).FiSelfTab = 0 } @@ -104522,7 +105128,7 @@ __23: goto __24 } Xsqlite3ErrorMsg(tls, pParse, - ts+17472, /* "cannot INSERT in..." */ + ts+17482, /* "cannot INSERT in..." */ libc.VaList(bp, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(j)*20)).FzName)) goto insert_cleanup __24: @@ -104547,7 +105153,7 @@ __20: bIdListInOrder = U8(0) goto __27 __26: - Xsqlite3ErrorMsg(tls, pParse, ts+17513, /* "table %S has no ..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+17523, /* "table %S has no ..." */ libc.VaList(bp+8, pTabList+8 /* &.a */, (*IdList_item)(unsafe.Pointer((*IdList)(unsafe.Pointer(pColumn)).Fa+uintptr(i)*8)).FzName)) (*Parse)(unsafe.Pointer(pParse)).FcheckSchema = U8(1) goto insert_cleanup @@ -104717,7 +105323,7 @@ __42: goto __47 } Xsqlite3ErrorMsg(tls, pParse, - ts+17545, /* "table %S has %d ..." */ + ts+17555, /* "table %S has %d ..." */ libc.VaList(bp+24, pTabList+8 /* &.a */, (int32((*Table)(unsafe.Pointer(pTab)).FnCol)-nHidden), nColumn)) goto insert_cleanup __47: @@ -104727,7 +105333,7 @@ __36: if !((pColumn != uintptr(0)) && (nColumn != (*IdList)(unsafe.Pointer(pColumn)).FnId)) { goto __48 } - Xsqlite3ErrorMsg(tls, pParse, ts+17597 /* "%d values for %d..." */, libc.VaList(bp+48, nColumn, (*IdList)(unsafe.Pointer(pColumn)).FnId)) + Xsqlite3ErrorMsg(tls, pParse, ts+17607 /* "%d values for %d..." */, libc.VaList(bp+48, nColumn, (*IdList)(unsafe.Pointer(pColumn)).FnId)) goto insert_cleanup __48: ; @@ -104783,7 +105389,7 @@ __50: if !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) { goto __56 } - Xsqlite3ErrorMsg(tls, pParse, ts+17622, /* "UPSERT not imple..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+17632, /* "UPSERT not imple..." */ libc.VaList(bp+64, (*Table)(unsafe.Pointer(pTab)).FzName)) goto insert_cleanup __56: @@ -104791,7 +105397,7 @@ __56: if !((*Table)(unsafe.Pointer(pTab)).FpSelect != 0) { goto __57 } - Xsqlite3ErrorMsg(tls, pParse, ts+17668 /* "cannot UPSERT a ..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+17678 /* "cannot UPSERT a ..." */, 0) goto insert_cleanup __57: ; @@ -105271,7 +105877,7 @@ __122: } Xsqlite3VdbeAddOp2(tls, v, OP_ChngCntRow, regRowCount, 1) Xsqlite3VdbeSetNumCols(tls, v, 1) - Xsqlite3VdbeSetColName(tls, v, 0, COLNAME_NAME, ts+17689 /* "rows inserted" */, uintptr(0)) + Xsqlite3VdbeSetColName(tls, v, 0, COLNAME_NAME, ts+17699 /* "rows inserted" */, uintptr(0)) __123: ; @@ -105614,7 +106220,7 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt fallthrough case OE_Fail: { - var zMsg uintptr = Xsqlite3MPrintf(tls, db, ts+10230 /* "%s.%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, + var zMsg uintptr = Xsqlite3MPrintf(tls, db, ts+10240 /* "%s.%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, (*Column)(unsafe.Pointer(pCol)).FzName)) Xsqlite3VdbeAddOp3(tls, v, OP_HaltIfNull, (SQLITE_CONSTRAINT | (int32(5) << 8)), onError, iReg) @@ -105865,7 +106471,7 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt // initialize it to zero. regTrigCnt = libc.PreIncInt32(&(*Parse)(unsafe.Pointer(pParse)).FnMem, 1) Xsqlite3VdbeAddOp2(tls, v, OP_Integer, 0, regTrigCnt) - Xsqlite3VdbeComment(tls, v, ts+17703 /* "trigger count" */, 0) + Xsqlite3VdbeComment(tls, v, ts+17713 /* "trigger count" */, 0) lblRecheckOk = Xsqlite3VdbeMakeLabel(tls, pParse) addrRecheck = lblRecheckOk } @@ -105910,7 +106516,7 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt (onError != int32(overrideError))) && // Rules for other constraints are different ((*Table)(unsafe.Pointer(pTab)).FpIndex != 0) { ipkTop = (Xsqlite3VdbeAddOp0(tls, v, OP_Goto) + 1) - Xsqlite3VdbeComment(tls, v, ts+17717 /* "defer IPK REPLAC..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+17727 /* "defer IPK REPLAC..." */, 0) } if isUpdate != 0 { @@ -105924,7 +106530,7 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt // Check to see if the new rowid already exists in the table. Skip // the following conflict logic if it does not. - Xsqlite3VdbeNoopComment(tls, v, ts+17746 /* "uniqueness check..." */, 0) + Xsqlite3VdbeNoopComment(tls, v, ts+17756 /* "uniqueness check..." */, 0) Xsqlite3VdbeAddOp3(tls, v, OP_NotExists, iDataCur, addrRowidOk, regNewData) @@ -106044,7 +106650,7 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt Xsqlite3TableAffinity(tls, v, pTab, (regNewData + 1)) bAffinityDone = U8(1) } - Xsqlite3VdbeNoopComment(tls, v, ts+17773 /* "prep index %s" */, libc.VaList(bp+16, (*Index)(unsafe.Pointer(pIdx)).FzName)) + Xsqlite3VdbeNoopComment(tls, v, ts+17783 /* "prep index %s" */, libc.VaList(bp+16, (*Index)(unsafe.Pointer(pIdx)).FzName)) iThisCur = (iIdxCur + *(*int32)(unsafe.Pointer(bp + 88 /* ix */))) // Skip partial indices for which the WHERE clause is not true @@ -106066,20 +106672,20 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt (*Parse)(unsafe.Pointer(pParse)).FiSelfTab = -(regNewData + 1) Xsqlite3ExprCodeCopy(tls, pParse, (*ExprList_item)(unsafe.Pointer(((*Index)(unsafe.Pointer(pIdx)).FaColExpr+8 /* &.a */)+uintptr(i)*20)).FpExpr, (regIdx + i)) (*Parse)(unsafe.Pointer(pParse)).FiSelfTab = 0 - Xsqlite3VdbeComment(tls, v, ts+17787 /* "%s column %d" */, libc.VaList(bp+24, (*Index)(unsafe.Pointer(pIdx)).FzName, i)) + Xsqlite3VdbeComment(tls, v, ts+17797 /* "%s column %d" */, libc.VaList(bp+24, (*Index)(unsafe.Pointer(pIdx)).FzName, i)) } else if (iField == (-1)) || (iField == int32((*Table)(unsafe.Pointer(pTab)).FiPKey)) { x = regNewData Xsqlite3VdbeAddOp2(tls, v, OP_IntCopy, x, (regIdx + i)) - Xsqlite3VdbeComment(tls, v, ts+10297 /* "rowid" */, 0) + Xsqlite3VdbeComment(tls, v, ts+10307 /* "rowid" */, 0) } else { x = ((int32(Xsqlite3TableColumnToStorage(tls, pTab, int16(iField))) + regNewData) + 1) Xsqlite3VdbeAddOp2(tls, v, OP_SCopy, x, (regIdx + i)) - Xsqlite3VdbeComment(tls, v, ts+951 /* "%s" */, libc.VaList(bp+40, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(iField)*20)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+961 /* "%s" */, libc.VaList(bp+40, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(iField)*20)).FzName)) } } Xsqlite3VdbeAddOp3(tls, v, OP_MakeRecord, regIdx, int32((*Index)(unsafe.Pointer(pIdx)).FnColumn), *(*int32)(unsafe.Pointer(aRegIdx + uintptr(*(*int32)(unsafe.Pointer(bp + 88 /* ix */)))*4))) - Xsqlite3VdbeComment(tls, v, ts+17800 /* "for %s" */, libc.VaList(bp+48, (*Index)(unsafe.Pointer(pIdx)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+17810 /* "for %s" */, libc.VaList(bp+48, (*Index)(unsafe.Pointer(pIdx)).FzName)) // In an UPDATE operation, if this index is the PRIMARY KEY index // of a WITHOUT ROWID table and there has been no change the @@ -106152,7 +106758,7 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt x = int32(Xsqlite3TableColumnToIndex(tls, pIdx, *(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pPk)).FaiColumn + uintptr(i)*2)))) Xsqlite3VdbeAddOp3(tls, v, OP_Column, iThisCur, x, (regR + i)) - Xsqlite3VdbeComment(tls, v, ts+10230 /* "%s.%s" */, libc.VaList(bp+56, (*Table)(unsafe.Pointer(pTab)).FzName, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pPk)).FaiColumn + uintptr(i)*2)))*20)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+10240 /* "%s.%s" */, libc.VaList(bp+56, (*Table)(unsafe.Pointer(pTab)).FzName, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pPk)).FaiColumn + uintptr(i)*2)))*20)).FzName)) } } if isUpdate != 0 { @@ -106246,7 +106852,7 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt Xsqlite3VdbeAddOp2(tls, v, OP_AddImm, regTrigCnt, 1) // incr trigger cnt addrBypass = Xsqlite3VdbeAddOp0(tls, v, OP_Goto) // Bypass recheck - Xsqlite3VdbeComment(tls, v, ts+17807 /* "bypass recheck" */, 0) + Xsqlite3VdbeComment(tls, v, ts+17817 /* "bypass recheck" */, 0) // Here we insert code that will be invoked after all constraint // checks have run, if and only if one or more replace triggers @@ -106315,7 +106921,7 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt // If the IPK constraint is a REPLACE, run it last if ipkTop != 0 { Xsqlite3VdbeGoto(tls, v, ipkTop) - Xsqlite3VdbeComment(tls, v, ts+17822 /* "Do IPK REPLACE" */, 0) + Xsqlite3VdbeComment(tls, v, ts+17832 /* "Do IPK REPLACE" */, 0) Xsqlite3VdbeJumpHere(tls, v, ipkBottom) } @@ -106531,7 +107137,7 @@ __1: Xsqlite3VdbeAddOp3(tls, v, op, iIdxCur, int32((*Index)(unsafe.Pointer(pIdx)).Ftnum), iDb) Xsqlite3VdbeSetP4KeyInfo(tls, pParse, pIdx) Xsqlite3VdbeChangeP5(tls, v, uint16(p5)) - Xsqlite3VdbeComment(tls, v, ts+951 /* "%s" */, libc.VaList(bp, (*Index)(unsafe.Pointer(pIdx)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+961 /* "%s" */, libc.VaList(bp, (*Index)(unsafe.Pointer(pIdx)).FzName)) } } @@ -106912,11 +107518,11 @@ func xferOptimization(tls *libc.TLS, pParse uintptr, pDest uintptr, pSelect uint Xsqlite3VdbeAddOp3(tls, v, OP_OpenRead, iSrc, int32((*Index)(unsafe.Pointer(pSrcIdx)).Ftnum), iDbSrc) Xsqlite3VdbeSetP4KeyInfo(tls, pParse, pSrcIdx) - Xsqlite3VdbeComment(tls, v, ts+951 /* "%s" */, libc.VaList(bp, (*Index)(unsafe.Pointer(pSrcIdx)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+961 /* "%s" */, libc.VaList(bp, (*Index)(unsafe.Pointer(pSrcIdx)).FzName)) Xsqlite3VdbeAddOp3(tls, v, OP_OpenWrite, iDest, int32((*Index)(unsafe.Pointer(pDestIdx)).Ftnum), iDbDest) Xsqlite3VdbeSetP4KeyInfo(tls, pParse, pDestIdx) Xsqlite3VdbeChangeP5(tls, v, uint16(OPFLAG_BULKCSR)) - Xsqlite3VdbeComment(tls, v, ts+951 /* "%s" */, libc.VaList(bp+8, (*Index)(unsafe.Pointer(pDestIdx)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+961 /* "%s" */, libc.VaList(bp+8, (*Index)(unsafe.Pointer(pDestIdx)).FzName)) addr1 = Xsqlite3VdbeAddOp2(tls, v, OP_Rewind, iSrc, 0) if ((*Sqlite3)(unsafe.Pointer(db)).FmDbFlags & U32(DBFLAG_Vacuum)) != 0 { // This INSERT command is part of a VACUUM operation, which guarantees @@ -107033,7 +107639,7 @@ __1: if !(zSql == uintptr(0)) { goto __2 } - zSql = ts + 915 /* "" */ + zSql = ts + 925 /* "" */ __2: ; @@ -107133,7 +107739,9 @@ __18: *(*uintptr)(unsafe.Pointer(azVals + uintptr(i)*4)) = uintptr(0) __15: ; - if !((*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(&xCallback)))(tls, pArg, nCol, azVals, azCols) != 0) { + if !((*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xCallback})).f(tls, pArg, nCol, azVals, azCols) != 0) { goto __20 } // EVIDENCE-OF: R-38229-40159 If the callback function to @@ -107594,7 +108202,7 @@ __1: if !(pzErrMsg != 0) { goto __3 } - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+14123 /* "not authorized" */, 0) + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+14133 /* "not authorized" */, 0) __3: ; return SQLITE_ERROR @@ -107604,7 +108212,7 @@ __2: if zProc != 0 { zEntry = zProc } else { - zEntry = ts + 17837 /* "sqlite3_extensio..." */ + zEntry = ts + 17847 /* "sqlite3_extensio..." */ } // tag-20210611-1. Some dlopen() implementations will segfault if given @@ -107624,7 +108232,7 @@ __5: if !((ii < (int32(uint32(unsafe.Sizeof(azEndings)) / uint32(unsafe.Sizeof(uintptr(0)))))) && (handle == uintptr(0))) { goto __7 } - zAltFile = Xsqlite3_mprintf(tls, ts+10230 /* "%s.%s" */, libc.VaList(bp, zFile, azEndings[ii])) + zAltFile = Xsqlite3_mprintf(tls, ts+10240 /* "%s.%s" */, libc.VaList(bp, zFile, azEndings[ii])) if !(zAltFile == uintptr(0)) { goto __8 } @@ -107670,7 +108278,7 @@ __9: return SQLITE_NOMEM __11: ; - libc.Xmemcpy(tls, zAltEntry, ts+17860 /* "sqlite3_" */, uint32(8)) + libc.Xmemcpy(tls, zAltEntry, ts+17870 /* "sqlite3_" */, uint32(8)) iFile = (ncFile - 1) __12: if !((iFile >= 0) && !((int32(*(*int8)(unsafe.Pointer(zFile + uintptr(iFile))))) == '/')) { @@ -107684,7 +108292,7 @@ __13: __14: ; iFile++ - if !(Xsqlite3_strnicmp(tls, (zFile+uintptr(iFile)), ts+17869 /* "lib" */, 3) == 0) { + if !(Xsqlite3_strnicmp(tls, (zFile+uintptr(iFile)), ts+17879 /* "lib" */, 3) == 0) { goto __15 } iFile = iFile + (3) @@ -107708,7 +108316,7 @@ __17: goto __18 __18: ; - libc.Xmemcpy(tls, (zAltEntry + uintptr(iEntry)), ts+17873 /* "_init" */, uint32(6)) + libc.Xmemcpy(tls, (zAltEntry + uintptr(iEntry)), ts+17883 /* "_init" */, uint32(6)) zEntry = zAltEntry xInit = Xsqlite3OsDlSym(tls, pVfs, handle, zEntry) __10: @@ -107726,7 +108334,7 @@ __10: } // zErrmsg would be NULL if not so Xsqlite3_snprintf(tls, int32(nMsg), *(*uintptr)(unsafe.Pointer(bp + 56 /* zErrmsg */)), - ts+17879 /* "no entry point [..." */, libc.VaList(bp+16, zEntry, zFile)) + ts+17889 /* "no entry point [..." */, libc.VaList(bp+16, zEntry, zFile)) Xsqlite3OsDlError(tls, pVfs, (int32(nMsg - uint64(1))), *(*uintptr)(unsafe.Pointer(bp + 56 /* zErrmsg */))) __22: ; @@ -107738,7 +108346,9 @@ __21: __20: ; Xsqlite3_free(tls, zAltEntry) - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(&xInit)))(tls, db, bp+56 /* &zErrmsg */, uintptr(unsafe.Pointer(&sqlite3Apis))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xInit})).f(tls, db, bp+56 /* &zErrmsg */, uintptr(unsafe.Pointer(&sqlite3Apis))) if !(rc != 0) { goto __23 } @@ -107751,7 +108361,7 @@ __24: if !(pzErrMsg != 0) { goto __25 } - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+17922 /* "error during ini..." */, libc.VaList(bp+32, *(*uintptr)(unsafe.Pointer(bp + 56 /* zErrmsg */)))) + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+17932 /* "error during ini..." */, libc.VaList(bp+32, *(*uintptr)(unsafe.Pointer(bp + 56 /* zErrmsg */)))) __25: ; Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 56 /* zErrmsg */))) @@ -107791,7 +108401,7 @@ extension_not_found: } // zErrmsg would be NULL if not so Xsqlite3_snprintf(tls, int32(nMsg), *(*uintptr)(unsafe.Pointer(bp + 56 /* zErrmsg */)), - ts+17954 /* "unable to open s..." */, libc.VaList(bp+40, FILENAME_MAX, zFile)) + ts+17964 /* "unable to open s..." */, libc.VaList(bp+40, FILENAME_MAX, zFile)) Xsqlite3OsDlError(tls, pVfs, (int32(nMsg - uint64(1))), *(*uintptr)(unsafe.Pointer(bp + 56 /* zErrmsg */))) __29: ; @@ -107801,7 +108411,7 @@ __28: } var azEndings = [1]uintptr{ - ts + 17991, /* "so" */ + ts + 18001, /* "so" */ } /* sqlite3.c:127457:21 */ func Xsqlite3_load_extension(tls *libc.TLS, db uintptr, zFile uintptr, zProc uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:127590:16: */ @@ -107965,9 +108575,11 @@ func Xsqlite3AutoLoadExtensions(tls *libc.TLS, db uintptr) { /* sqlite3.c:127761 } Xsqlite3_mutex_leave(tls, mutex) *(*uintptr)(unsafe.Pointer(bp + 8 /* zErrmsg */)) = uintptr(0) - if (xInit != 0) && ((libc.AssignInt32(&rc, (*(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(&xInit)))(tls, db, bp+8 /* &zErrmsg */, pThunk))) != 0) { + if (xInit != 0) && ((libc.AssignInt32(&rc, (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xInit})).f(tls, db, bp+8 /* &zErrmsg */, pThunk))) != 0) { Xsqlite3ErrorWithMsg(tls, db, rc, - ts+17994 /* "automatic extens..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErrmsg */)))) + ts+18004 /* "automatic extens..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErrmsg */)))) go1 = 0 } Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErrmsg */))) @@ -108012,61 +108624,61 @@ func Xsqlite3AutoLoadExtensions(tls *libc.TLS, db uintptr) { /* sqlite3.c:127761 // or that return single-column results where the name of the // result column is different from the name of the pragma var pragCName = [51]uintptr{ - /* 0 */ ts + 6989, /* "id" */ // Used by: foreign_key_list - /* 1 */ ts + 18033, /* "seq" */ - /* 2 */ ts + 8469, /* "table" */ - /* 3 */ ts + 18037, /* "from" */ - /* 4 */ ts + 18042, /* "to" */ - /* 5 */ ts + 18045, /* "on_update" */ - /* 6 */ ts + 18055, /* "on_delete" */ - /* 7 */ ts + 18065, /* "match" */ - /* 8 */ ts + 18071, /* "cid" */ // Used by: table_xinfo - /* 9 */ ts + 18075, /* "name" */ - /* 10 */ ts + 18080, /* "type" */ - /* 11 */ ts + 18085, /* "notnull" */ - /* 12 */ ts + 18093, /* "dflt_value" */ - /* 13 */ ts + 18104, /* "pk" */ - /* 14 */ ts + 18107, /* "hidden" */ + /* 0 */ ts + 6999, /* "id" */ // Used by: foreign_key_list + /* 1 */ ts + 18043, /* "seq" */ + /* 2 */ ts + 8479, /* "table" */ + /* 3 */ ts + 18047, /* "from" */ + /* 4 */ ts + 18052, /* "to" */ + /* 5 */ ts + 18055, /* "on_update" */ + /* 6 */ ts + 18065, /* "on_delete" */ + /* 7 */ ts + 18075, /* "match" */ + /* 8 */ ts + 18081, /* "cid" */ // Used by: table_xinfo + /* 9 */ ts + 18085, /* "name" */ + /* 10 */ ts + 18090, /* "type" */ + /* 11 */ ts + 18095, /* "notnull" */ + /* 12 */ ts + 18103, /* "dflt_value" */ + /* 13 */ ts + 18114, /* "pk" */ + /* 14 */ ts + 18117, /* "hidden" */ // table_info reuses 8 - /* 15 */ ts + 18114, /* "seqno" */ // Used by: index_xinfo - /* 16 */ ts + 18071, /* "cid" */ - /* 17 */ ts + 18075, /* "name" */ - /* 18 */ ts + 18120, /* "desc" */ - /* 19 */ ts + 18125, /* "coll" */ - /* 20 */ ts + 18130, /* "key" */ - /* 21 */ ts + 18075, /* "name" */ // Used by: function_list - /* 22 */ ts + 18134, /* "builtin" */ - /* 23 */ ts + 18080, /* "type" */ - /* 24 */ ts + 18142, /* "enc" */ - /* 25 */ ts + 18146, /* "narg" */ - /* 26 */ ts + 18151, /* "flags" */ - /* 27 */ ts + 13521, /* "tbl" */ // Used by: stats - /* 28 */ ts + 13517, /* "idx" */ - /* 29 */ ts + 18157, /* "wdth" */ - /* 30 */ ts + 18162, /* "hght" */ - /* 31 */ ts + 18167, /* "flgs" */ - /* 32 */ ts + 18033, /* "seq" */ // Used by: index_list - /* 33 */ ts + 18075, /* "name" */ - /* 34 */ ts + 18172, /* "unique" */ - /* 35 */ ts + 18179, /* "origin" */ - /* 36 */ ts + 18186, /* "partial" */ - /* 37 */ ts + 8469, /* "table" */ // Used by: foreign_key_check - /* 38 */ ts + 10297, /* "rowid" */ - /* 39 */ ts + 6992, /* "parent" */ - /* 40 */ ts + 18194, /* "fkid" */ + /* 15 */ ts + 18124, /* "seqno" */ // Used by: index_xinfo + /* 16 */ ts + 18081, /* "cid" */ + /* 17 */ ts + 18085, /* "name" */ + /* 18 */ ts + 18130, /* "desc" */ + /* 19 */ ts + 18135, /* "coll" */ + /* 20 */ ts + 18140, /* "key" */ + /* 21 */ ts + 18085, /* "name" */ // Used by: function_list + /* 22 */ ts + 18144, /* "builtin" */ + /* 23 */ ts + 18090, /* "type" */ + /* 24 */ ts + 18152, /* "enc" */ + /* 25 */ ts + 18156, /* "narg" */ + /* 26 */ ts + 18161, /* "flags" */ + /* 27 */ ts + 13531, /* "tbl" */ // Used by: stats + /* 28 */ ts + 13527, /* "idx" */ + /* 29 */ ts + 18167, /* "wdth" */ + /* 30 */ ts + 18172, /* "hght" */ + /* 31 */ ts + 18177, /* "flgs" */ + /* 32 */ ts + 18043, /* "seq" */ // Used by: index_list + /* 33 */ ts + 18085, /* "name" */ + /* 34 */ ts + 18182, /* "unique" */ + /* 35 */ ts + 18189, /* "origin" */ + /* 36 */ ts + 18196, /* "partial" */ + /* 37 */ ts + 8479, /* "table" */ // Used by: foreign_key_check + /* 38 */ ts + 10307, /* "rowid" */ + /* 39 */ ts + 7002, /* "parent" */ + /* 40 */ ts + 18204, /* "fkid" */ // index_info reuses 15 - /* 41 */ ts + 18033, /* "seq" */ // Used by: database_list - /* 42 */ ts + 18075, /* "name" */ - /* 43 */ ts + 18199, /* "file" */ - /* 44 */ ts + 18204, /* "busy" */ // Used by: wal_checkpoint - /* 45 */ ts + 18209, /* "log" */ - /* 46 */ ts + 18213, /* "checkpointed" */ + /* 41 */ ts + 18043, /* "seq" */ // Used by: database_list + /* 42 */ ts + 18085, /* "name" */ + /* 43 */ ts + 18209, /* "file" */ + /* 44 */ ts + 18214, /* "busy" */ // Used by: wal_checkpoint + /* 45 */ ts + 18219, /* "log" */ + /* 46 */ ts + 18223, /* "checkpointed" */ // collation_list reuses 32 - /* 47 */ ts + 18226, /* "database" */ // Used by: lock_status - /* 48 */ ts + 18235, /* "status" */ - /* 49 */ ts + 18242, /* "cache_size" */ // Used by: default_cache_size + /* 47 */ ts + 18236, /* "database" */ // Used by: lock_status + /* 48 */ ts + 18245, /* "status" */ + /* 49 */ ts + 18252, /* "cache_size" */ // Used by: default_cache_size // module_list pragma_list reuses 9 - /* 50 */ ts + 18253, /* "timeout" */ // Used by: busy_timeout + /* 50 */ ts + 18263, /* "timeout" */ // Used by: busy_timeout } /* sqlite3.c:127901:19 */ // Definitions of all built-in pragmas @@ -108082,238 +108694,238 @@ type PragmaName1 = struct { // Definitions of all built-in pragmas type PragmaName = PragmaName1 /* sqlite3.c:127967:3 */ var aPragmaName = [66]PragmaName{ - { /* zName: */ FzName: ts + 18261, /* "analysis_limit" */ + { /* zName: */ FzName: ts + 18271, /* "analysis_limit" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_ANALYSIS_LIMIT), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0)}, - { /* zName: */ FzName: ts + 18276, /* "application_id" */ + { /* zName: */ FzName: ts + 18286, /* "application_id" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_HEADER_VALUE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_NoColumns1 | PragFlg_Result0)), /* iArg: */ FiArg: uint64(BTREE_APPLICATION_ID)}, - { /* zName: */ FzName: ts + 18291, /* "auto_vacuum" */ + { /* zName: */ FzName: ts + 18301, /* "auto_vacuum" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_AUTO_VACUUM), /* ePragFlg: */ FmPragFlg: (U8(((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_SchemaReq) | PragFlg_NoColumns1))}, - { /* zName: */ FzName: ts + 18303, /* "automatic_index" */ + { /* zName: */ FzName: ts + 18313, /* "automatic_index" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_AutoIndex)}, - { /* zName: */ FzName: ts + 18319, /* "busy_timeout" */ + { /* zName: */ FzName: ts + 18329, /* "busy_timeout" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_BUSY_TIMEOUT), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0), /* ColNames: */ FiPragCName: U8(50), FnPragCName: U8(1)}, - { /* zName: */ FzName: ts + 18242, /* "cache_size" */ + { /* zName: */ FzName: ts + 18252, /* "cache_size" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_CACHE_SIZE), /* ePragFlg: */ FmPragFlg: (U8(((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_SchemaReq) | PragFlg_NoColumns1))}, - { /* zName: */ FzName: ts + 18332, /* "cache_spill" */ + { /* zName: */ FzName: ts + 18342, /* "cache_spill" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_CACHE_SPILL), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_Result0 | PragFlg_SchemaReq) | PragFlg_NoColumns1))}, - { /* zName: */ FzName: ts + 18344, /* "case_sensitive_l..." */ + { /* zName: */ FzName: ts + 18354, /* "case_sensitive_l..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_CASE_SENSITIVE_LIKE), /* ePragFlg: */ FmPragFlg: U8(PragFlg_NoColumns)}, - { /* zName: */ FzName: ts + 18364, /* "cell_size_check" */ + { /* zName: */ FzName: ts + 18374, /* "cell_size_check" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_CellSizeCk)}, - { /* zName: */ FzName: ts + 18380, /* "checkpoint_fullf..." */ + { /* zName: */ FzName: ts + 18390, /* "checkpoint_fullf..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_CkptFullFSync)}, - { /* zName: */ FzName: ts + 18401, /* "collation_list" */ + { /* zName: */ FzName: ts + 18411, /* "collation_list" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_COLLATION_LIST), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0), /* ColNames: */ FiPragCName: U8(32), FnPragCName: U8(2)}, - { /* zName: */ FzName: ts + 18416, /* "compile_options" */ + { /* zName: */ FzName: ts + 18426, /* "compile_options" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_COMPILE_OPTIONS), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0)}, - { /* zName: */ FzName: ts + 18432, /* "count_changes" */ + { /* zName: */ FzName: ts + 18442, /* "count_changes" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: (U64((uint64(0x00001))) << 32)}, - { /* zName: */ FzName: ts + 18446, /* "data_version" */ + { /* zName: */ FzName: ts + 18456, /* "data_version" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_HEADER_VALUE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_ReadOnly | PragFlg_Result0)), /* iArg: */ FiArg: uint64(BTREE_DATA_VERSION)}, - { /* zName: */ FzName: ts + 18459, /* "database_list" */ + { /* zName: */ FzName: ts + 18469, /* "database_list" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_DATABASE_LIST), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_NeedSchema | PragFlg_Result0)), /* ColNames: */ FiPragCName: U8(41), FnPragCName: U8(3)}, - { /* zName: */ FzName: ts + 18473, /* "default_cache_si..." */ + { /* zName: */ FzName: ts + 18483, /* "default_cache_si..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_DEFAULT_CACHE_SIZE), /* ePragFlg: */ FmPragFlg: (U8(((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_SchemaReq) | PragFlg_NoColumns1)), /* ColNames: */ FiPragCName: U8(49), FnPragCName: U8(1)}, - { /* zName: */ FzName: ts + 18492, /* "defer_foreign_ke..." */ + { /* zName: */ FzName: ts + 18502, /* "defer_foreign_ke..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_DeferFKs)}, - { /* zName: */ FzName: ts + 18511, /* "empty_result_cal..." */ + { /* zName: */ FzName: ts + 18521, /* "empty_result_cal..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_NullCallback)}, - { /* zName: */ FzName: ts + 18534, /* "encoding" */ + { /* zName: */ FzName: ts + 18544, /* "encoding" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_ENCODING), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1))}, - { /* zName: */ FzName: ts + 18543, /* "foreign_key_chec..." */ + { /* zName: */ FzName: ts + 18553, /* "foreign_key_chec..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FOREIGN_KEY_CHECK), /* ePragFlg: */ FmPragFlg: (U8(((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_Result1) | PragFlg_SchemaOpt)), /* ColNames: */ FiPragCName: U8(37), FnPragCName: U8(4)}, - { /* zName: */ FzName: ts + 18561, /* "foreign_key_list" */ + { /* zName: */ FzName: ts + 18571, /* "foreign_key_list" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FOREIGN_KEY_LIST), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result1) | PragFlg_SchemaOpt)), FnPragCName: U8(8)}, - { /* zName: */ FzName: ts + 18578, /* "foreign_keys" */ + { /* zName: */ FzName: ts + 18588, /* "foreign_keys" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_ForeignKeys)}, - { /* zName: */ FzName: ts + 18591, /* "freelist_count" */ + { /* zName: */ FzName: ts + 18601, /* "freelist_count" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_HEADER_VALUE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_ReadOnly | PragFlg_Result0))}, - { /* zName: */ FzName: ts + 18606, /* "full_column_name..." */ + { /* zName: */ FzName: ts + 18616, /* "full_column_name..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_FullColNames)}, - { /* zName: */ FzName: ts + 18624, /* "fullfsync" */ + { /* zName: */ FzName: ts + 18634, /* "fullfsync" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_FullFSync)}, - { /* zName: */ FzName: ts + 18634, /* "function_list" */ + { /* zName: */ FzName: ts + 18644, /* "function_list" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FUNCTION_LIST), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0), /* ColNames: */ FiPragCName: U8(21), FnPragCName: U8(6)}, - { /* zName: */ FzName: ts + 18648, /* "hard_heap_limit" */ + { /* zName: */ FzName: ts + 18658, /* "hard_heap_limit" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_HARD_HEAP_LIMIT), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0)}, - { /* zName: */ FzName: ts + 18664, /* "ignore_check_con..." */ + { /* zName: */ FzName: ts + 18674, /* "ignore_check_con..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_IgnoreChecks)}, - { /* zName: */ FzName: ts + 18689, /* "incremental_vacu..." */ + { /* zName: */ FzName: ts + 18699, /* "incremental_vacu..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_INCREMENTAL_VACUUM), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_NeedSchema | PragFlg_NoColumns))}, - { /* zName: */ FzName: ts + 18708, /* "index_info" */ + { /* zName: */ FzName: ts + 18718, /* "index_info" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_INDEX_INFO), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result1) | PragFlg_SchemaOpt)), /* ColNames: */ FiPragCName: U8(15), FnPragCName: U8(3)}, - { /* zName: */ FzName: ts + 18719, /* "index_list" */ + { /* zName: */ FzName: ts + 18729, /* "index_list" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_INDEX_LIST), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result1) | PragFlg_SchemaOpt)), /* ColNames: */ FiPragCName: U8(32), FnPragCName: U8(5)}, - { /* zName: */ FzName: ts + 18730, /* "index_xinfo" */ + { /* zName: */ FzName: ts + 18740, /* "index_xinfo" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_INDEX_INFO), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result1) | PragFlg_SchemaOpt)), /* ColNames: */ FiPragCName: U8(15), FnPragCName: U8(6), /* iArg: */ FiArg: uint64(1)}, - { /* zName: */ FzName: ts + 18742, /* "integrity_check" */ + { /* zName: */ FzName: ts + 18752, /* "integrity_check" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_INTEGRITY_CHECK), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_Result1))}, - { /* zName: */ FzName: ts + 18758, /* "journal_mode" */ + { /* zName: */ FzName: ts + 18768, /* "journal_mode" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_JOURNAL_MODE), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_SchemaReq))}, - { /* zName: */ FzName: ts + 18771, /* "journal_size_lim..." */ + { /* zName: */ FzName: ts + 18781, /* "journal_size_lim..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_JOURNAL_SIZE_LIMIT), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_SchemaReq))}, - { /* zName: */ FzName: ts + 18790, /* "legacy_alter_tab..." */ + { /* zName: */ FzName: ts + 18800, /* "legacy_alter_tab..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_LegacyAlter)}, - { /* zName: */ FzName: ts + 18809, /* "lock_status" */ + { /* zName: */ FzName: ts + 18819, /* "lock_status" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_LOCK_STATUS), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0), /* ColNames: */ FiPragCName: U8(47), FnPragCName: U8(2)}, - { /* zName: */ FzName: ts + 18821, /* "locking_mode" */ + { /* zName: */ FzName: ts + 18831, /* "locking_mode" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_LOCKING_MODE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_SchemaReq))}, - { /* zName: */ FzName: ts + 18834, /* "max_page_count" */ + { /* zName: */ FzName: ts + 18844, /* "max_page_count" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_PAGE_COUNT), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_SchemaReq))}, - { /* zName: */ FzName: ts + 18849, /* "mmap_size" */ + { /* zName: */ FzName: ts + 18859, /* "mmap_size" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_MMAP_SIZE)}, - { /* zName: */ FzName: ts + 18859, /* "module_list" */ + { /* zName: */ FzName: ts + 18869, /* "module_list" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_MODULE_LIST), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0), /* ColNames: */ FiPragCName: U8(9), FnPragCName: U8(1)}, - { /* zName: */ FzName: ts + 18871, /* "optimize" */ + { /* zName: */ FzName: ts + 18881, /* "optimize" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_OPTIMIZE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result1 | PragFlg_NeedSchema))}, - { /* zName: */ FzName: ts + 18880, /* "page_count" */ + { /* zName: */ FzName: ts + 18890, /* "page_count" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_PAGE_COUNT), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_SchemaReq))}, - { /* zName: */ FzName: ts + 18891, /* "page_size" */ + { /* zName: */ FzName: ts + 18901, /* "page_size" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_PAGE_SIZE), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_Result0 | PragFlg_SchemaReq) | PragFlg_NoColumns1))}, - { /* zName: */ FzName: ts + 18901, /* "pragma_list" */ + { /* zName: */ FzName: ts + 18911, /* "pragma_list" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_PRAGMA_LIST), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0), /* ColNames: */ FiPragCName: U8(9), FnPragCName: U8(1)}, - { /* zName: */ FzName: ts + 18913, /* "query_only" */ + { /* zName: */ FzName: ts + 18923, /* "query_only" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_QueryOnly)}, - { /* zName: */ FzName: ts + 18924, /* "quick_check" */ + { /* zName: */ FzName: ts + 18934, /* "quick_check" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_INTEGRITY_CHECK), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_Result1))}, - { /* zName: */ FzName: ts + 18936, /* "read_uncommitted" */ + { /* zName: */ FzName: ts + 18946, /* "read_uncommitted" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_ReadUncommit)}, - { /* zName: */ FzName: ts + 18953, /* "recursive_trigge..." */ + { /* zName: */ FzName: ts + 18963, /* "recursive_trigge..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_RecTriggers)}, - { /* zName: */ FzName: ts + 18972, /* "reverse_unordere..." */ + { /* zName: */ FzName: ts + 18982, /* "reverse_unordere..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_ReverseOrder)}, - { /* zName: */ FzName: ts + 18998, /* "schema_version" */ + { /* zName: */ FzName: ts + 19008, /* "schema_version" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_HEADER_VALUE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_NoColumns1 | PragFlg_Result0)), /* iArg: */ FiArg: uint64(BTREE_SCHEMA_VERSION)}, - { /* zName: */ FzName: ts + 19013, /* "secure_delete" */ + { /* zName: */ FzName: ts + 19023, /* "secure_delete" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_SECURE_DELETE), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0)}, - { /* zName: */ FzName: ts + 19027, /* "short_column_nam..." */ + { /* zName: */ FzName: ts + 19037, /* "short_column_nam..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_ShortColNames)}, - { /* zName: */ FzName: ts + 19046, /* "shrink_memory" */ + { /* zName: */ FzName: ts + 19056, /* "shrink_memory" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_SHRINK_MEMORY), /* ePragFlg: */ FmPragFlg: U8(PragFlg_NoColumns)}, - { /* zName: */ FzName: ts + 19060, /* "soft_heap_limit" */ + { /* zName: */ FzName: ts + 19070, /* "soft_heap_limit" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_SOFT_HEAP_LIMIT), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0)}, - { /* zName: */ FzName: ts + 19076, /* "synchronous" */ + { /* zName: */ FzName: ts + 19086, /* "synchronous" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_SYNCHRONOUS), /* ePragFlg: */ FmPragFlg: (U8(((PragFlg_NeedSchema | PragFlg_Result0) | PragFlg_SchemaReq) | PragFlg_NoColumns1))}, - { /* zName: */ FzName: ts + 19088, /* "table_info" */ + { /* zName: */ FzName: ts + 19098, /* "table_info" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_TABLE_INFO), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result1) | PragFlg_SchemaOpt)), /* ColNames: */ FiPragCName: U8(8), FnPragCName: U8(6)}, - { /* zName: */ FzName: ts + 19099, /* "table_xinfo" */ + { /* zName: */ FzName: ts + 19109, /* "table_xinfo" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_TABLE_INFO), /* ePragFlg: */ FmPragFlg: (U8((PragFlg_NeedSchema | PragFlg_Result1) | PragFlg_SchemaOpt)), /* ColNames: */ FiPragCName: U8(8), FnPragCName: U8(7), /* iArg: */ FiArg: uint64(1)}, - { /* zName: */ FzName: ts + 19111, /* "temp_store" */ + { /* zName: */ FzName: ts + 19121, /* "temp_store" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_TEMP_STORE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1))}, - { /* zName: */ FzName: ts + 19122, /* "temp_store_direc..." */ + { /* zName: */ FzName: ts + 19132, /* "temp_store_direc..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_TEMP_STORE_DIRECTORY), /* ePragFlg: */ FmPragFlg: U8(PragFlg_NoColumns1)}, - { /* zName: */ FzName: ts + 19143, /* "threads" */ + { /* zName: */ FzName: ts + 19153, /* "threads" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_THREADS), /* ePragFlg: */ FmPragFlg: U8(PragFlg_Result0)}, - { /* zName: */ FzName: ts + 19151, /* "trusted_schema" */ + { /* zName: */ FzName: ts + 19161, /* "trusted_schema" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: uint64(SQLITE_TrustedSchema)}, - { /* zName: */ FzName: ts + 19166, /* "user_version" */ + { /* zName: */ FzName: ts + 19176, /* "user_version" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_HEADER_VALUE), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_NoColumns1 | PragFlg_Result0)), /* iArg: */ FiArg: uint64(BTREE_USER_VERSION)}, - { /* zName: */ FzName: ts + 19179, /* "wal_autocheckpoi..." */ + { /* zName: */ FzName: ts + 19189, /* "wal_autocheckpoi..." */ /* ePragTyp: */ FePragTyp: U8(PragTyp_WAL_AUTOCHECKPOINT)}, - { /* zName: */ FzName: ts + 19198, /* "wal_checkpoint" */ + { /* zName: */ FzName: ts + 19208, /* "wal_checkpoint" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_WAL_CHECKPOINT), /* ePragFlg: */ FmPragFlg: U8(PragFlg_NeedSchema), /* ColNames: */ FiPragCName: U8(44), FnPragCName: U8(3)}, - { /* zName: */ FzName: ts + 19213, /* "writable_schema" */ + { /* zName: */ FzName: ts + 19223, /* "writable_schema" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: (uint64(SQLITE_WriteSchema | SQLITE_NoSchemaError))}, @@ -108350,7 +108962,7 @@ func getSafetyLevel(tls *libc.TLS, z uintptr, omitFull int32, dflt U8) U8 { /* s return dflt } -var zText = *(*[25]int8)(unsafe.Pointer(ts + 19229 /* "onoffalseyestrue..." */)) /* sqlite3.c:128499:21 */ +var zText = *(*[25]int8)(unsafe.Pointer(ts + 19239 /* "onoffalseyestrue..." */)) /* sqlite3.c:128499:21 */ var iOffset = [8]U8{U8(0), U8(1), U8(2), U8(4), U8(9), U8(12), U8(15), U8(20)} /* sqlite3.c:128500:19 */ var iLength = [8]U8{U8(2), U8(2), U8(3), U8(5), U8(3), U8(4), U8(5), U8(4)} /* sqlite3.c:128501:19 */ var iValue = [8]U8{U8(1), U8(0), U8(0), U8(0), U8(1), U8(1), U8(3), U8(2)} /* sqlite3.c:128502:19 */ @@ -108367,10 +108979,10 @@ func Xsqlite3GetBoolean(tls *libc.TLS, z uintptr, dflt U8) U8 { /* sqlite3.c:128 // Interpret the given string as a locking mode value. func getLockingMode(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:128535:12: */ if z != 0 { - if 0 == Xsqlite3StrICmp(tls, z, ts+19254 /* "exclusive" */) { + if 0 == Xsqlite3StrICmp(tls, z, ts+19264 /* "exclusive" */) { return PAGER_LOCKINGMODE_EXCLUSIVE } - if 0 == Xsqlite3StrICmp(tls, z, ts+19264 /* "normal" */) { + if 0 == Xsqlite3StrICmp(tls, z, ts+19274 /* "normal" */) { return PAGER_LOCKINGMODE_NORMAL } } @@ -108383,13 +108995,13 @@ func getLockingMode(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:128535:12: */ // acceptable, as are their numeric equivalents: 0, 1 and 2 respectively. func getAutoVacuum(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:128550:12: */ var i int32 - if 0 == Xsqlite3StrICmp(tls, z, ts+19271 /* "none" */) { + if 0 == Xsqlite3StrICmp(tls, z, ts+19281 /* "none" */) { return BTREE_AUTOVACUUM_NONE } - if 0 == Xsqlite3StrICmp(tls, z, ts+19276 /* "full" */) { + if 0 == Xsqlite3StrICmp(tls, z, ts+19286 /* "full" */) { return BTREE_AUTOVACUUM_FULL } - if 0 == Xsqlite3StrICmp(tls, z, ts+19281 /* "incremental" */) { + if 0 == Xsqlite3StrICmp(tls, z, ts+19291 /* "incremental" */) { return BTREE_AUTOVACUUM_INCR } i = Xsqlite3Atoi(tls, z) @@ -108407,9 +109019,9 @@ func getAutoVacuum(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:128550:12: */ func getTempStore(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:128566:12: */ if (int32(*(*int8)(unsafe.Pointer(z))) >= '0') && (int32(*(*int8)(unsafe.Pointer(z))) <= '2') { return (int32(*(*int8)(unsafe.Pointer(z))) - '0') - } else if Xsqlite3StrICmp(tls, z, ts+18199 /* "file" */) == 0 { + } else if Xsqlite3StrICmp(tls, z, ts+18209 /* "file" */) == 0 { return 1 - } else if Xsqlite3StrICmp(tls, z, ts+19293 /* "memory" */) == 0 { + } else if Xsqlite3StrICmp(tls, z, ts+19303 /* "memory" */) == 0 { return 2 } else { return 0 @@ -108425,7 +109037,7 @@ func invalidateTempStorage(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:1 if !(int32((*Sqlite3)(unsafe.Pointer(db)).FautoCommit) != 0) || (Xsqlite3BtreeTxnState(tls, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*16)).FpBt) != SQLITE_TXN_NONE) { Xsqlite3ErrorMsg(tls, pParse, - ts+19300 /* "temporary storag..." */, 0) + ts+19310 /* "temporary storag..." */, 0) return SQLITE_ERROR } Xsqlite3BtreeClose(tls, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*16)).FpBt) @@ -108525,19 +109137,19 @@ func actionName(tls *libc.TLS, action U8) uintptr { /* sqlite3.c:128694:19: */ var zName uintptr switch int32(action) { case OE_SetNull: - zName = ts + 19362 /* "SET NULL" */ + zName = ts + 19372 /* "SET NULL" */ break case OE_SetDflt: - zName = ts + 19371 /* "SET DEFAULT" */ + zName = ts + 19381 /* "SET DEFAULT" */ break case OE_Cascade: - zName = ts + 19383 /* "CASCADE" */ + zName = ts + 19393 /* "CASCADE" */ break case OE_Restrict: - zName = ts + 19391 /* "RESTRICT" */ + zName = ts + 19401 /* "RESTRICT" */ break default: - zName = ts + 19400 /* "NO ACTION" */ + zName = ts + 19410 /* "NO ACTION" */ break } return zName @@ -108555,7 +109167,7 @@ func Xsqlite3JournalModename(tls *libc.TLS, eMode int32) uintptr { /* sqlite3.c: } var azModeName = [6]uintptr{ - ts + 19410 /* "delete" */, ts + 19417 /* "persist" */, ts + 19425 /* "off" */, ts + 19429 /* "truncate" */, ts + 19293 /* "memory" */, ts + 19438, /* "wal" */ + ts + 19420 /* "delete" */, ts + 19427 /* "persist" */, ts + 19435 /* "off" */, ts + 19439 /* "truncate" */, ts + 19303 /* "memory" */, ts + 19448, /* "wal" */ } /* sqlite3.c:128715:15 */ // Locate a pragma in the aPragmaName[] array. @@ -108601,13 +109213,13 @@ func pragmaFunclistLine(tls *libc.TLS, v uintptr, p uintptr, isBuiltin int32, sh continue } if (*FuncDef)(unsafe.Pointer(p)).FxValue != uintptr(0) { - zType = ts + 19442 /* "w" */ + zType = ts + 19452 /* "w" */ } else if (*FuncDef)(unsafe.Pointer(p)).FxFinalize != uintptr(0) { - zType = ts + 19444 /* "a" */ + zType = ts + 19454 /* "a" */ } else { - zType = ts + 19446 /* "s" */ + zType = ts + 19456 /* "s" */ } - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19448, /* "sissii" */ + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19458, /* "sissii" */ libc.VaList(bp, (*FuncDef)(unsafe.Pointer(p)).FzName, isBuiltin, zType, azEnc[((*FuncDef)(unsafe.Pointer(p)).FfuncFlags&U32(SQLITE_FUNC_ENCMASK))], int32((*FuncDef)(unsafe.Pointer(p)).FnArg), @@ -108616,7 +109228,7 @@ func pragmaFunclistLine(tls *libc.TLS, v uintptr, p uintptr, isBuiltin int32, sh } var mask U32 = (U32((((SQLITE_DETERMINISTIC | SQLITE_DIRECTONLY) | SQLITE_SUBTYPE) | SQLITE_INNOCUOUS) | SQLITE_FUNC_INTERNAL)) /* sqlite3.c:128765:22 */ -var azEnc = [4]uintptr{uintptr(0), ts + 19455 /* "utf8" */, ts + 19460 /* "utf16le" */, ts + 19468 /* "utf16be" */} /* sqlite3.c:128772:23 */ +var azEnc = [4]uintptr{uintptr(0), ts + 19465 /* "utf8" */, ts + 19470 /* "utf16le" */, ts + 19478 /* "utf16be" */} /* sqlite3.c:128772:23 */ // Helper subroutine for PRAGMA integrity_check: // @@ -108884,7 +109496,7 @@ __4: if !(minusFlag != 0) { goto __5 } - zRight = Xsqlite3MPrintf(tls, db, ts+19476 /* "-%T" */, libc.VaList(bp, pValue)) + zRight = Xsqlite3MPrintf(tls, db, ts+19486 /* "-%T" */, libc.VaList(bp, pValue)) goto __6 __5: zRight = Xsqlite3NameFromToken(tls, db, pValue) @@ -108939,7 +109551,7 @@ __8: if !(*(*uintptr)(unsafe.Pointer(bp + 380 /* &aFcntl[0] */)) != 0) { goto __10 } - Xsqlite3ErrorMsg(tls, pParse, ts+951 /* "%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 380 /* &aFcntl[0] */)))) + Xsqlite3ErrorMsg(tls, pParse, ts+961 /* "%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 380 /* &aFcntl[0] */)))) Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 380 /* &aFcntl[0] */))) __10: ; @@ -109515,7 +110127,7 @@ __18: if !(zRight != 0) { goto __63 } - if !(Xsqlite3_stricmp(tls, zRight, ts+19480 /* "fast" */) == 0) { + if !(Xsqlite3_stricmp(tls, zRight, ts+19490 /* "fast" */) == 0) { goto __64 } b = 2 @@ -109604,7 +110216,7 @@ __71: // PRAGMA [schema.]locking_mode // PRAGMA [schema.]locking_mode = (normal|exclusive) __20: - zRet = ts + 19264 /* "normal" */ + zRet = ts + 19274 /* "normal" */ eMode = getLockingMode(tls, zRight) if !(((*Token)(unsafe.Pointer(pId2)).Fn == uint32(0)) && (eMode == -1)) { @@ -109645,7 +110257,7 @@ __78: if !(eMode == PAGER_LOCKINGMODE_EXCLUSIVE) { goto __83 } - zRet = ts + 19254 /* "exclusive" */ + zRet = ts + 19264 /* "exclusive" */ __83: ; returnSingleText(tls, v, zRet) @@ -110010,7 +110622,7 @@ __123: if !((rc != SQLITE_OK) || (*(*int32)(unsafe.Pointer(bp + 428 /* res */)) == 0)) { goto __126 } - Xsqlite3ErrorMsg(tls, pParse, ts+19485 /* "not a writable d..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+19495 /* "not a writable d..." */, 0) goto pragma_out __126: ; @@ -110028,7 +110640,7 @@ __127: if !(*(*int8)(unsafe.Pointer(zRight)) != 0) { goto __128 } - Xsqlite3_temp_directory = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp+16, zRight)) + Xsqlite3_temp_directory = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp+16, zRight)) goto __129 __128: Xsqlite3_temp_directory = uintptr(0) @@ -110056,7 +110668,7 @@ __130: goto __132 } Xsqlite3ErrorMsg(tls, pParse, - ts+19510 /* "Safety level may..." */, 0) + ts+19520 /* "Safety level may..." */, 0) goto __133 __132: if !(iDb != 1) { @@ -110215,13 +110827,13 @@ __154: Xsqlite3VdbeMultiLoad(tls, v, 1, func() uintptr { if (*PragmaName)(unsafe.Pointer(pPragma)).FiArg != 0 { - return ts + 19563 /* "issisii" */ + return ts + 19573 /* "issisii" */ } - return ts + 19571 /* "issisi" */ + return ts + 19581 /* "issisi" */ }(), libc.VaList(bp+24, (i-nHidden), (*Column)(unsafe.Pointer(pCol)).FzName, - Xsqlite3ColumnType(tls, pCol, ts+915 /* "" */), + Xsqlite3ColumnType(tls, pCol, ts+925 /* "" */), func() int32 { if (*Column)(unsafe.Pointer(pCol)).FnotNull != 0 { return 1 @@ -110296,7 +110908,7 @@ __166: goto __168 } cnum = *(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(i1)*2)) - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19578 /* "iisX" */, libc.VaList(bp+80, i1, int32(cnum), + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19588 /* "iisX" */, libc.VaList(bp+80, i1, int32(cnum), func() uintptr { if int32(cnum) < 0 { return uintptr(0) @@ -110306,7 +110918,7 @@ __166: if !((*PragmaName)(unsafe.Pointer(pPragma)).FiArg != 0) { goto __169 } - Xsqlite3VdbeMultiLoad(tls, v, 4, ts+19583, /* "isiX" */ + Xsqlite3VdbeMultiLoad(tls, v, 4, ts+19593, /* "isiX" */ libc.VaList(bp+104, int32(*(*U8)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaSortOrder + uintptr(i1)))), *(*uintptr)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FazColl + uintptr(i1)*4)), (libc.Bool32(i1 < int32((*Index)(unsafe.Pointer(pIdx)).FnKeyCol))))) @@ -110343,8 +110955,8 @@ __172: if !(pIdx1 != 0) { goto __174 } - *(*[3]uintptr)(unsafe.Pointer(bp + 432 /* azOrigin */)) = [3]uintptr{ts + 19588 /* "c" */, ts + 19590 /* "u" */, ts + 18104 /* "pk" */} - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19592, /* "isisi" */ + *(*[3]uintptr)(unsafe.Pointer(bp + 432 /* azOrigin */)) = [3]uintptr{ts + 19598 /* "c" */, ts + 19600 /* "u" */, ts + 18114 /* "pk" */} + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19602, /* "isisi" */ libc.VaList(bp+128, i2, (*Index)(unsafe.Pointer(pIdx1)).FzName, (libc.Bool32(int32((*Index)(unsafe.Pointer((pIdx1))).FonError) != OE_None)), @@ -110378,7 +110990,7 @@ __175: __178: ; - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19598, /* "iss" */ + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19608, /* "iss" */ libc.VaList(bp+168, i3, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i3)*16)).FzDbSName, Xsqlite3BtreeGetFilename(tls, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i3)*16)).FpBt))) @@ -110401,7 +111013,7 @@ __179: goto __181 } pColl = (*HashElem)(unsafe.Pointer(p)).Fdata - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19602 /* "is" */, libc.VaList(bp+192, libc.PostIncInt32(&i4, 1), (*CollSeq)(unsafe.Pointer(pColl)).FzName)) + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19612 /* "is" */, libc.VaList(bp+192, libc.PostIncInt32(&i4, 1), (*CollSeq)(unsafe.Pointer(pColl)).FzName)) goto __180 __180: p = (*HashElem)(unsafe.Pointer(p)).Fnext @@ -110465,7 +111077,7 @@ __191: goto __193 } pMod = (*HashElem)(unsafe.Pointer(j1)).Fdata - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19446 /* "s" */, libc.VaList(bp+208, (*Module)(unsafe.Pointer(pMod)).FzName)) + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19456 /* "s" */, libc.VaList(bp+208, (*Module)(unsafe.Pointer(pMod)).FzName)) goto __192 __192: j1 = (*HashElem)(unsafe.Pointer(j1)).Fnext @@ -110482,7 +111094,7 @@ __194: if !(i6 < (int32(uint32(unsafe.Sizeof(aPragmaName)) / uint32(unsafe.Sizeof(PragmaName{}))))) { goto __196 } - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19446 /* "s" */, libc.VaList(bp+216, aPragmaName[i6].FzName)) + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19456 /* "s" */, libc.VaList(bp+216, aPragmaName[i6].FzName)) goto __195 __195: i6++ @@ -110518,7 +111130,7 @@ __202: if !(j2 < (*FKey)(unsafe.Pointer(pFK)).FnCol) { goto __204 } - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19605, /* "iissssss" */ + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19615, /* "iissssss" */ libc.VaList(bp+224, i7, j2, (*FKey)(unsafe.Pointer(pFK)).FzTo, @@ -110526,7 +111138,7 @@ __202: (*sColMap)(unsafe.Pointer((pFK+36 /* &.aCol */)+uintptr(j2)*8)).FzCol, actionName(tls, *(*U8)(unsafe.Pointer((pFK + 25 /* &.aAction */) + 1))), // ON UPDATE actionName(tls, *(*U8)(unsafe.Pointer((pFK + 25 /* &.aAction */)))), // ON DELETE - ts+4906 /* "NONE" */)) + ts+4916 /* "NONE" */)) goto __203 __203: j2++ @@ -110719,7 +111331,7 @@ __231: Xsqlite3VdbeAddOp2(tls, v, OP_Null, 0, (regResult + 1)) __232: ; - Xsqlite3VdbeMultiLoad(tls, v, (regResult + 2), ts+19614 /* "siX" */, libc.VaList(bp+288, (*FKey)(unsafe.Pointer(pFK1)).FzTo, (i8-1))) + Xsqlite3VdbeMultiLoad(tls, v, (regResult + 2), ts+19624 /* "siX" */, libc.VaList(bp+288, (*FKey)(unsafe.Pointer(pFK1)).FzTo, (i8-1))) Xsqlite3VdbeAddOp2(tls, v, OP_ResultRow, regResult, 4) Xsqlite3VdbeResolveLabel(tls, v, addrOk) Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 448 /* aiCols */))) @@ -110985,7 +111597,7 @@ __259: Xsqlite3VdbeChangeP5(tls, v, uint16(U8(i9))) addr1 = Xsqlite3VdbeAddOp1(tls, v, OP_IsNull, 2) Xsqlite3VdbeAddOp4(tls, v, OP_String8, 0, 3, 0, - Xsqlite3MPrintf(tls, db, ts+19618 /* "*** in database ..." */, libc.VaList(bp+304, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i9)*16)).FzDbSName)), + Xsqlite3MPrintf(tls, db, ts+19628 /* "*** in database ..." */, libc.VaList(bp+304, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i9)*16)).FzDbSName)), -7) Xsqlite3VdbeAddOp3(tls, v, OP_Concat, 2, 3, 3) integrityCheckResultRow(tls, v) @@ -111075,7 +111687,7 @@ __278: __279: ; jmp2 = Xsqlite3VdbeAddOp1(tls, v, OP_NotNull, 3) - zErr = Xsqlite3MPrintf(tls, db, ts+19642 /* "NULL value in %s..." */, libc.VaList(bp+312, (*Table)(unsafe.Pointer(pTab7)).FzName, + zErr = Xsqlite3MPrintf(tls, db, ts+19652 /* "NULL value in %s..." */, libc.VaList(bp+312, (*Table)(unsafe.Pointer(pTab7)).FzName, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab7)).FaCol+uintptr(j4)*20)).FzName)) Xsqlite3VdbeAddOp4(tls, v, OP_String8, 0, 3, 0, zErr, -7) integrityCheckResultRow(tls, v) @@ -111115,7 +111727,7 @@ __284: SQLITE_JUMPIFNULL) Xsqlite3VdbeResolveLabel(tls, v, addrCkFault) (*Parse)(unsafe.Pointer(pParse)).FiSelfTab = 0 - zErr1 = Xsqlite3MPrintf(tls, db, ts+19662, /* "CHECK constraint..." */ + zErr1 = Xsqlite3MPrintf(tls, db, ts+19672, /* "CHECK constraint..." */ libc.VaList(bp+328, (*Table)(unsafe.Pointer(pTab7)).FzName)) Xsqlite3VdbeAddOp4(tls, v, OP_String8, 0, 3, 0, zErr1, -7) integrityCheckResultRow(tls, v) @@ -111149,9 +111761,9 @@ __289: // Verify that an index entry exists for the current table row jmp21 = Xsqlite3VdbeAddOp4Int(tls, v, OP_Found, (*(*int32)(unsafe.Pointer(bp + 460 /* iIdxCur */)) + j4), ckUniq, r1, int32((*Index)(unsafe.Pointer(pIdx5)).FnColumn)) - Xsqlite3VdbeLoadString(tls, v, 3, ts+19692 /* "row " */) + Xsqlite3VdbeLoadString(tls, v, 3, ts+19702 /* "row " */) Xsqlite3VdbeAddOp3(tls, v, OP_Concat, 7, 3, 3) - Xsqlite3VdbeLoadString(tls, v, 4, ts+19697 /* " missing from in..." */) + Xsqlite3VdbeLoadString(tls, v, 4, ts+19707 /* " missing from in..." */) Xsqlite3VdbeAddOp3(tls, v, OP_Concat, 4, 3, 3) jmp5 = Xsqlite3VdbeLoadString(tls, v, 4, (*Index)(unsafe.Pointer(pIdx5)).FzName) Xsqlite3VdbeAddOp3(tls, v, OP_Concat, 4, 3, 3) @@ -111191,7 +111803,7 @@ __293: Xsqlite3VdbeJumpHere(tls, v, jmp6) Xsqlite3VdbeAddOp4Int(tls, v, OP_IdxGT, (*(*int32)(unsafe.Pointer(bp + 460 /* iIdxCur */)) + j4), uniqOk, r1, int32((*Index)(unsafe.Pointer(pIdx5)).FnKeyCol)) - Xsqlite3VdbeLoadString(tls, v, 3, ts+19718 /* "non-unique entry..." */) + Xsqlite3VdbeLoadString(tls, v, 3, ts+19728 /* "non-unique entry..." */) Xsqlite3VdbeGoto(tls, v, jmp5) Xsqlite3VdbeResolveLabel(tls, v, uniqOk) __290: @@ -111213,7 +111825,7 @@ __285: if !(!(isQuick != 0)) { goto __295 } - Xsqlite3VdbeLoadString(tls, v, 2, ts+19745 /* "wrong # of entri..." */) + Xsqlite3VdbeLoadString(tls, v, 2, ts+19755 /* "wrong # of entri..." */) j4 = 0 pIdx5 = (*Table)(unsafe.Pointer(pTab7)).FpIndex __296: @@ -111264,7 +111876,7 @@ __241: } (*VdbeOp)(unsafe.Pointer(aOp2)).Fp2 = (1 - *(*int32)(unsafe.Pointer(bp + 452 /* mxErr */))) (*VdbeOp)(unsafe.Pointer(aOp2 + 2*24)).Fp4type = int8(-1) - *(*uintptr)(unsafe.Pointer(aOp2 + 2*24 + 16 /* &.p4 */)) = ts + 5228 /* "ok" */ + *(*uintptr)(unsafe.Pointer(aOp2 + 2*24 + 16 /* &.p4 */)) = ts + 5238 /* "ok" */ (*VdbeOp)(unsafe.Pointer(aOp2 + 5*24)).Fp4type = int8(-1) *(*uintptr)(unsafe.Pointer(aOp2 + 5*24 + 16 /* &.p4 */)) = Xsqlite3ErrStr(tls, SQLITE_CORRUPT) __300: @@ -111342,7 +111954,7 @@ __307: if !(!(int32((*EncName)(unsafe.Pointer(pEnc)).FzName) != 0)) { goto __309 } - Xsqlite3ErrorMsg(tls, pParse, ts+19774 /* "unsupported enco..." */, libc.VaList(bp+336, zRight)) + Xsqlite3ErrorMsg(tls, pParse, ts+19784 /* "unsupported enco..." */, libc.VaList(bp+336, zRight)) __309: ; __304: @@ -111454,19 +112066,19 @@ __47: if !(zRight != 0) { goto __316 } - if !(Xsqlite3StrICmp(tls, zRight, ts+19276 /* "full" */) == 0) { + if !(Xsqlite3StrICmp(tls, zRight, ts+19286 /* "full" */) == 0) { goto __317 } eMode2 = SQLITE_CHECKPOINT_FULL goto __318 __317: - if !(Xsqlite3StrICmp(tls, zRight, ts+19799 /* "restart" */) == 0) { + if !(Xsqlite3StrICmp(tls, zRight, ts+19809 /* "restart" */) == 0) { goto __319 } eMode2 = SQLITE_CHECKPOINT_RESTART goto __320 __319: - if !(Xsqlite3StrICmp(tls, zRight, ts+19429 /* "truncate" */) == 0) { + if !(Xsqlite3StrICmp(tls, zRight, ts+19439 /* "truncate" */) == 0) { goto __321 } eMode2 = SQLITE_CHECKPOINT_TRUNCATE @@ -111653,7 +112265,7 @@ __336: __338: ; - zSubSql = Xsqlite3MPrintf(tls, db, ts+19807, /* "ANALYZE \"%w\".\"%w..." */ + zSubSql = Xsqlite3MPrintf(tls, db, ts+19817, /* "ANALYZE \"%w\".\"%w..." */ libc.VaList(bp+344, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, (*Table)(unsafe.Pointer(pTab8)).FzName)) if !((opMask & U32(0x01)) != 0) { goto __339 @@ -111788,7 +112400,7 @@ __347: if !(i11 < (*Sqlite3)(unsafe.Pointer(db)).FnDb) { goto __349 } - zState = ts + 19825 /* "unknown" */ + zState = ts + 19835 /* "unknown" */ if !((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i11)*16)).FzDbSName == uintptr(0)) { goto __350 } @@ -111799,7 +112411,7 @@ __350: if !((pBt3 == uintptr(0)) || (Xsqlite3BtreePager(tls, pBt3) == uintptr(0))) { goto __351 } - zState = ts + 19833 /* "closed" */ + zState = ts + 19843 /* "closed" */ goto __352 __351: if !(Xsqlite3_file_control(tls, db, func() uintptr { @@ -111816,7 +112428,7 @@ __353: ; __352: ; - Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19840 /* "ss" */, libc.VaList(bp+360, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i11)*16)).FzDbSName, zState)) + Xsqlite3VdbeMultiLoad(tls, v, 1, ts+19850 /* "ss" */, libc.VaList(bp+360, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(i11)*16)).FzDbSName, zState)) goto __348 __348: i11++ @@ -111847,9 +112459,9 @@ pragma_out: } type EncName = struct { - FzName uintptr - Fenc U8 - _ [3]byte + FzName uintptr + Fenc U8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:130282:18 */ var iLn3 int32 = 0 /* sqlite3.c:128958:22 */ @@ -111883,14 +112495,14 @@ var endCode = [7]VdbeOpList{ {Fopcode: U8(OP_Goto), Fp2: int8(3)}, // 6 } /* sqlite3.c:130233:31 */ var encnames1 = [9]EncName{ - {FzName: ts + 19843 /* "UTF8" */, Fenc: U8(SQLITE_UTF8)}, - {FzName: ts + 19848 /* "UTF-8" */, Fenc: U8(SQLITE_UTF8)}, // Must be element [1] - {FzName: ts + 19854 /* "UTF-16le" */, Fenc: U8(SQLITE_UTF16LE)}, // Must be element [2] - {FzName: ts + 19863 /* "UTF-16be" */, Fenc: U8(SQLITE_UTF16BE)}, // Must be element [3] - {FzName: ts + 19872 /* "UTF16le" */, Fenc: U8(SQLITE_UTF16LE)}, - {FzName: ts + 19880 /* "UTF16be" */, Fenc: U8(SQLITE_UTF16BE)}, - {FzName: ts + 19888 /* "UTF-16" */}, // SQLITE_UTF16NATIVE - {FzName: ts + 19895 /* "UTF16" */}, // SQLITE_UTF16NATIVE + {FzName: ts + 19853 /* "UTF8" */, Fenc: U8(SQLITE_UTF8)}, + {FzName: ts + 19858 /* "UTF-8" */, Fenc: U8(SQLITE_UTF8)}, // Must be element [1] + {FzName: ts + 19864 /* "UTF-16le" */, Fenc: U8(SQLITE_UTF16LE)}, // Must be element [2] + {FzName: ts + 19873 /* "UTF-16be" */, Fenc: U8(SQLITE_UTF16BE)}, // Must be element [3] + {FzName: ts + 19882 /* "UTF16le" */, Fenc: U8(SQLITE_UTF16LE)}, + {FzName: ts + 19890 /* "UTF16be" */, Fenc: U8(SQLITE_UTF16BE)}, + {FzName: ts + 19898 /* "UTF-16" */}, // SQLITE_UTF16NATIVE + {FzName: ts + 19905 /* "UTF16" */}, // SQLITE_UTF16NATIVE {}, } /* sqlite3.c:130285:7 */ var setCookie = [2]VdbeOpList{ @@ -111903,19 +112515,19 @@ var readCookie = [3]VdbeOpList{ {Fopcode: U8(OP_ResultRow), Fp1: int8(1), Fp2: int8(1)}, } /* sqlite3.c:130380:31 */ var azLockName = [5]uintptr{ - ts + 19901 /* "unlocked" */, ts + 19910 /* "shared" */, ts + 19917 /* "reserved" */, ts + 19926 /* "pending" */, ts + 19254, /* "exclusive" */ + ts + 19911 /* "unlocked" */, ts + 19920 /* "shared" */, ts + 19927 /* "reserved" */, ts + 19936 /* "pending" */, ts + 19264, /* "exclusive" */ } /* sqlite3.c:130688:23 */ // **************************************************************************** // // Implementation of an eponymous virtual table that runs a pragma. // type PragmaVtab1 = struct { - Fbase Sqlite3_vtab - Fdb uintptr - FpName uintptr - FnHidden U8 - FiHidden U8 - _ [2]byte + Fbase Sqlite3_vtab + Fdb uintptr + FpName uintptr + FnHidden U8 + FiHidden U8 + F__ccgo_pad1 [2]byte } /* sqlite3.c:130740:9 */ // **************************************************************************** @@ -111950,7 +112562,7 @@ func pragmaVtabConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv _ = argc _ = argv Xsqlite3StrAccumInit(tls, bp+32 /* &acc */, uintptr(0), bp+56 /* &zBuf[0] */, int32(unsafe.Sizeof([200]int8{})), 0) - Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+19934 /* "CREATE TABLE x" */) + Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+19944 /* "CREATE TABLE x" */) i = 0 j = int32((*PragmaName)(unsafe.Pointer(pPragma)).FiPragCName) __1: @@ -111958,7 +112570,7 @@ __1: goto __3 } { - Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+19949 /* "%c\"%s\"" */, libc.VaList(bp, int32(cSep), pragCName[j])) + Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+19959 /* "%c\"%s\"" */, libc.VaList(bp, int32(cSep), pragCName[j])) cSep = int8(',') } @@ -111971,19 +112583,19 @@ __2: __3: ; if i == 0 { - Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+19956 /* "(\"%s\"" */, libc.VaList(bp+16, (*PragmaName)(unsafe.Pointer(pPragma)).FzName)) + Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+19966 /* "(\"%s\"" */, libc.VaList(bp+16, (*PragmaName)(unsafe.Pointer(pPragma)).FzName)) i++ } j = 0 if (int32((*PragmaName)(unsafe.Pointer(pPragma)).FmPragFlg) & PragFlg_Result1) != 0 { - Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+19962 /* ",arg HIDDEN" */) + Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+19972 /* ",arg HIDDEN" */) j++ } if (int32((*PragmaName)(unsafe.Pointer(pPragma)).FmPragFlg) & (PragFlg_SchemaOpt | PragFlg_SchemaReq)) != 0 { - Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+19974 /* ",schema HIDDEN" */) + Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+19984 /* ",schema HIDDEN" */) j++ } - Xsqlite3_str_append(tls, bp+32 /* &acc */, ts+6887 /* ")" */, 1) + Xsqlite3_str_append(tls, bp+32 /* &acc */, ts+6897 /* ")" */, 1) Xsqlite3StrAccumFinish(tls, bp+32 /* &acc */) rc = Xsqlite3_declare_vtab(tls, db, bp+56 /* &zBuf[0] */) @@ -111999,7 +112611,7 @@ __3: (*PragmaVtab)(unsafe.Pointer(pTab)).FnHidden = U8(j) } } else { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp+24, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp+24, Xsqlite3_errmsg(tls, db))) } *(*uintptr)(unsafe.Pointer(ppVtab)) = pTab @@ -112162,7 +112774,7 @@ __1: var zText uintptr = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*4))) if zText != 0 { - *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */) + uintptr(j)*4)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp, zText)) + *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */) + uintptr(j)*4)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp, zText)) if *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */) + uintptr(j)*4)) == uintptr(0) { return SQLITE_NOMEM } @@ -112178,13 +112790,13 @@ __2: __3: ; Xsqlite3StrAccumInit(tls, bp+32 /* &acc */, uintptr(0), uintptr(0), 0, *(*int32)(unsafe.Pointer(((*PragmaVtab)(unsafe.Pointer(pTab)).Fdb + 108 /* &.aLimit */) + 1*4))) - Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+19989 /* "PRAGMA " */) + Xsqlite3_str_appendall(tls, bp+32 /* &acc */, ts+19999 /* "PRAGMA " */) if *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */) + 1*4)) != 0 { - Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+19997 /* "%Q." */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */) + 1*4)))) + Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+20007 /* "%Q." */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */) + 1*4)))) } Xsqlite3_str_appendall(tls, bp+32 /* &acc */, (*PragmaName)(unsafe.Pointer((*PragmaVtab)(unsafe.Pointer(pTab)).FpName)).FzName) if *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */))) != 0 { - Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+20001 /* "=%Q" */, libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */))))) + Xsqlite3_str_appendf(tls, bp+32 /* &acc */, ts+20011 /* "=%Q" */, libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer((pCsr + 16 /* &.azArg */))))) } zSql = Xsqlite3StrAccumFinish(tls, bp+32 /* &acc */) if zSql == uintptr(0) { @@ -112193,7 +112805,7 @@ __3: rc = Xsqlite3_prepare_v2(tls, (*PragmaVtab)(unsafe.Pointer(pTab)).Fdb, zSql, -1, (pCsr + 4 /* &.pPragma */), uintptr(0)) Xsqlite3_free(tls, zSql) if rc != SQLITE_OK { - (*PragmaVtab)(unsafe.Pointer(pTab)).Fbase.FzErrMsg = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp+24, Xsqlite3_errmsg(tls, (*PragmaVtab)(unsafe.Pointer(pTab)).Fdb))) + (*PragmaVtab)(unsafe.Pointer(pTab)).Fbase.FzErrMsg = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp+24, Xsqlite3_errmsg(tls, (*PragmaVtab)(unsafe.Pointer(pTab)).Fdb))) return rc } return pragmaVtabNext(tls, pVtabCursor) @@ -112286,12 +112898,12 @@ func corruptSchema(tls *libc.TLS, pData uintptr, azObj uintptr, zExtra uintptr) // A error message has already been generated. Do not overwrite it } else if ((*InitData)(unsafe.Pointer(pData)).FmInitFlags & (U32(INITFLAG_AlterRename | INITFLAG_AlterDrop))) != 0 { *(*uintptr)(unsafe.Pointer((*InitData)(unsafe.Pointer(pData)).FpzErrMsg)) = Xsqlite3MPrintf(tls, db, - ts+20005 /* "error in %s %s a..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(azObj)), *(*uintptr)(unsafe.Pointer(azObj + 1*4)), + ts+20015 /* "error in %s %s a..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(azObj)), *(*uintptr)(unsafe.Pointer(azObj + 1*4)), func() uintptr { if ((*InitData)(unsafe.Pointer(pData)).FmInitFlags & U32(INITFLAG_AlterRename)) != 0 { - return ts + 20033 /* "rename" */ + return ts + 20043 /* "rename" */ } - return ts + 20040 /* "drop column" */ + return ts + 20050 /* "drop column" */ }(), zExtra)) (*InitData)(unsafe.Pointer(pData)).Frc = SQLITE_ERROR @@ -112303,11 +112915,11 @@ func corruptSchema(tls *libc.TLS, pData uintptr, azObj uintptr, zExtra uintptr) if *(*uintptr)(unsafe.Pointer(azObj + 1*4)) != 0 { zObj = *(*uintptr)(unsafe.Pointer(azObj + 1*4)) } else { - zObj = ts + 6940 /* "?" */ + zObj = ts + 6950 /* "?" */ } - z = Xsqlite3MPrintf(tls, db, ts+20052 /* "malformed databa..." */, libc.VaList(bp+32, zObj)) + z = Xsqlite3MPrintf(tls, db, ts+20062 /* "malformed databa..." */, libc.VaList(bp+32, zObj)) if (zExtra != 0) && (*(*int8)(unsafe.Pointer(zExtra)) != 0) { - z = Xsqlite3MPrintf(tls, db, ts+20083 /* "%z - %s" */, libc.VaList(bp+40, z, zExtra)) + z = Xsqlite3MPrintf(tls, db, ts+20093 /* "%z - %s" */, libc.VaList(bp+40, z, zExtra)) } *(*uintptr)(unsafe.Pointer((*InitData)(unsafe.Pointer(pData)).FpzErrMsg)) = z (*InitData)(unsafe.Pointer(pData)).Frc = Xsqlite3CorruptError(tls, 131096) @@ -112384,7 +112996,7 @@ func Xsqlite3InitCallback(tls *libc.TLS, pInit uintptr, argc int32, argv uintptr if (Xsqlite3GetUInt32(tls, *(*uintptr)(unsafe.Pointer(argv + 3*4)), (db+160 /* &.init */ /* &.newTnum */)) == 0) || (((*Sqlite3)(unsafe.Pointer(db)).Finit.FnewTnum > (*InitData)(unsafe.Pointer(pData)).FmxPage) && ((*InitData)(unsafe.Pointer(pData)).FmxPage > Pgno(0))) { if Xsqlite3Config.FbExtraSchemaChecks != 0 { - corruptSchema(tls, pData, argv, ts+16162 /* "invalid rootpage" */) + corruptSchema(tls, pData, argv, ts+16172 /* "invalid rootpage" */) } } libc.SetBitFieldPtr8Uint32(db+160 /* &.init */ +8 /* &.orphanTrigger */, uint32(0), 0, 0x1) @@ -112421,13 +113033,13 @@ func Xsqlite3InitCallback(tls *libc.TLS, pInit uintptr, argc int32, argv uintptr var pIndex uintptr pIndex = Xsqlite3FindIndex(tls, db, *(*uintptr)(unsafe.Pointer(argv + 1*4)), (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName) if pIndex == uintptr(0) { - corruptSchema(tls, pData, argv, ts+20091 /* "orphan index" */) + corruptSchema(tls, pData, argv, ts+20101 /* "orphan index" */) } else if (((Xsqlite3GetUInt32(tls, *(*uintptr)(unsafe.Pointer(argv + 3*4)), (pIndex+44 /* &.tnum */)) == 0) || ((*Index)(unsafe.Pointer(pIndex)).Ftnum < Pgno(2))) || ((*Index)(unsafe.Pointer(pIndex)).Ftnum > (*InitData)(unsafe.Pointer(pData)).FmxPage)) || (Xsqlite3IndexHasDuplicateRootPage(tls, pIndex) != 0) { if Xsqlite3Config.FbExtraSchemaChecks != 0 { - corruptSchema(tls, pData, argv, ts+16162 /* "invalid rootpage" */) + corruptSchema(tls, pData, argv, ts+16172 /* "invalid rootpage" */) } } } @@ -112470,16 +113082,16 @@ func Xsqlite3InitOne(tls *libc.TLS, db uintptr, iDb int32, pzErrMsg uintptr, mFl // table name will be inserted automatically by the parser so we can just // use the abbreviation "x" here. The parser will also automatically tag // the schema table as read-only. - *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */)) = ts + 8469 /* "table" */ + *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */)) = ts + 8479 /* "table" */ *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 1*4)) = libc.AssignUintptr(&zSchemaTabName, func() uintptr { if (!(0 != 0)) && (iDb == 1) { - return ts + 14190 /* "sqlite_temp_mast..." */ + return ts + 14200 /* "sqlite_temp_mast..." */ } - return ts + 7774 /* "sqlite_master" */ + return ts + 7784 /* "sqlite_master" */ }()) *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 2*4)) = *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 1*4)) - *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 3*4)) = ts + 10134 /* "1" */ - *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 4*4)) = ts + 20104 /* "CREATE TABLE x(t..." */ + *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 3*4)) = ts + 10144 /* "1" */ + *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 4*4)) = ts + 20114 /* "CREATE TABLE x(t..." */ *(*uintptr)(unsafe.Pointer(bp + 16 /* &azArg[0] */ + 5*4)) = uintptr(0) (*InitData)(unsafe.Pointer(bp + 40 /* &initData */)).Fdb = db (*InitData)(unsafe.Pointer(bp + 40 /* &initData */)).FiDb = iDb @@ -112592,7 +113204,7 @@ __10: goto __13 } Xsqlite3SetString(tls, pzErrMsg, db, - ts+13804 /* "attached databas..." */) + ts+13814 /* "attached databas..." */) rc = SQLITE_ERROR goto initone_error_out __13: @@ -112632,7 +113244,7 @@ __16: if !(int32((*Schema)(unsafe.Pointer((*Db)(unsafe.Pointer(pDb)).FpSchema)).Ffile_format) > SQLITE_MAX_FILE_FORMAT) { goto __17 } - Xsqlite3SetString(tls, pzErrMsg, db, ts+20176 /* "unsupported file..." */) + Xsqlite3SetString(tls, pzErrMsg, db, ts+20186 /* "unsupported file..." */) rc = SQLITE_ERROR goto initone_error_out __17: @@ -112654,7 +113266,7 @@ __18: (*InitData)(unsafe.Pointer(bp + 40 /* &initData */)).FmxPage = Xsqlite3BtreeLastPage(tls, (*Db)(unsafe.Pointer(pDb)).FpBt) zSql = Xsqlite3MPrintf(tls, db, - ts+20200, /* "SELECT*FROM\"%w\"...." */ + ts+20210, /* "SELECT*FROM\"%w\"...." */ libc.VaList(bp, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, zSchemaTabName)) xAuth = (*Sqlite3)(unsafe.Pointer(db)).FxAuth @@ -112877,7 +113489,9 @@ func Xsqlite3ParserReset(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:131614:21 for (*Parse)(unsafe.Pointer(pParse)).FpCleanup != 0 { var pCleanup uintptr = (*Parse)(unsafe.Pointer(pParse)).FpCleanup (*Parse)(unsafe.Pointer(pParse)).FpCleanup = (*ParseCleanup)(unsafe.Pointer(pCleanup)).FpNext - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pCleanup + 8 /* &.xCleanup */))))(tls, db, (*ParseCleanup)(unsafe.Pointer(pCleanup)).FpPtr) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*ParseCleanup)(unsafe.Pointer(pCleanup)).FxCleanup})).f(tls, db, (*ParseCleanup)(unsafe.Pointer(pCleanup)).FpPtr) Xsqlite3DbFreeNN(tls, db, pCleanup) } Xsqlite3DbFree(tls, db, (*Parse)(unsafe.Pointer(pParse)).FaLabel) @@ -112931,7 +113545,9 @@ func Xsqlite3ParserAddCleanup(tls *libc.TLS, pParse uintptr, xCleanup uintptr, p (*ParseCleanup)(unsafe.Pointer(pCleanup)).FpPtr = pPtr (*ParseCleanup)(unsafe.Pointer(pCleanup)).FxCleanup = xCleanup } else { - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(&xCleanup)))(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, pPtr) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{xCleanup})).f(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, pPtr) pPtr = uintptr(0) } return pPtr @@ -113014,7 +113630,7 @@ __3: goto __7 } zDb = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(i)*16)).FzDbSName - Xsqlite3ErrorWithMsg(tls, db, rc, ts+20234 /* "database schema ..." */, libc.VaList(bp, zDb)) + Xsqlite3ErrorWithMsg(tls, db, rc, ts+20244 /* "database schema ..." */, libc.VaList(bp, zDb)) goto end_prepare __7: @@ -113042,7 +113658,7 @@ __2: if !(nBytes > mxLen) { goto __10 } - Xsqlite3ErrorWithMsg(tls, db, SQLITE_TOOBIG, ts+20264 /* "statement too lo..." */, 0) + Xsqlite3ErrorWithMsg(tls, db, SQLITE_TOOBIG, ts+20274 /* "statement too lo..." */, 0) rc = Xsqlite3ApiExit(tls, db, SQLITE_TOOBIG) goto end_prepare __10: @@ -113105,7 +113721,7 @@ __19: if !(*(*uintptr)(unsafe.Pointer(bp + 288 /* zErrMsg */)) != 0) { goto __20 } - Xsqlite3ErrorWithMsg(tls, db, rc, ts+951 /* "%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 288 /* zErrMsg */)))) + Xsqlite3ErrorWithMsg(tls, db, rc, ts+961 /* "%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 288 /* zErrMsg */)))) Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 288 /* zErrMsg */))) goto __21 __20: @@ -113338,11 +113954,11 @@ func Xsqlite3_prepare16_v3(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32 // how to process the DISTINCT keyword, to simplify passing that information // into the selectInnerLoop() routine. type DistinctCtx1 = struct { - FisTnct U8 - FeTnctType U8 - _ [2]byte - FtabTnct int32 - FaddrTnct int32 + FisTnct U8 + FeTnctType U8 + F__ccgo_pad1 [2]byte + FtabTnct int32 + FaddrTnct int32 } /* sqlite3.c:132093:9 */ //************* End of prepare.c ******************************************** @@ -113392,7 +114008,7 @@ type SortCtx1 = struct { FlabelDone int32 FlabelOBLopt int32 FsortFlags U8 - _ [3]byte + F__ccgo_pad1 [3]byte FpDeferredRowLoad uintptr } /* sqlite3.c:132119:9 */ @@ -113414,9 +114030,9 @@ type SortCtx1 = struct { // extracted from the sorter. type SortCtx = SortCtx1 /* sqlite3.c:132119:24 */ type RowLoadInfo1 = struct { - FregResult int32 - FecelFlags U8 - _ [3]byte + FregResult int32 + FecelFlags U8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:132119:9 */ // Delete all the content of a Select structure. Deallocate the structure @@ -113580,24 +114196,24 @@ func Xsqlite3JoinType(tls *libc.TLS, pParse uintptr, pA uintptr, pB uintptr, pC } } if ((jointype & (JT_INNER | JT_OUTER)) == (JT_INNER | JT_OUTER)) || ((jointype & JT_ERROR) != 0) { - var zSp uintptr = ts + 12926 /* " " */ + var zSp uintptr = ts + 12936 /* " " */ if pC == uintptr(0) { zSp++ } Xsqlite3ErrorMsg(tls, pParse, - ts+20283 /* "unknown or unsup..." */, libc.VaList(bp, pA, pB, zSp, pC)) + ts+20293 /* "unknown or unsup..." */, libc.VaList(bp, pA, pB, zSp, pC)) jointype = JT_INNER } else if ((jointype & JT_OUTER) != 0) && ((jointype & (JT_LEFT | JT_RIGHT)) != JT_LEFT) { Xsqlite3ErrorMsg(tls, pParse, - ts+20327 /* "RIGHT and FULL O..." */, 0) + ts+20337 /* "RIGHT and FULL O..." */, 0) jointype = JT_INNER } return jointype } -var zKeyText = *(*[34]int8)(unsafe.Pointer(ts + 20382 /* "naturaleftouteri..." */)) /* sqlite3.c:132284:21 */ +var zKeyText = *(*[34]int8)(unsafe.Pointer(ts + 20392 /* "naturaleftouteri..." */)) /* sqlite3.c:132284:21 */ var aKeyword = [7]struct { Fi U8 FnChar U8 @@ -113803,7 +114419,7 @@ __1: if (int32((*SrcItem)(unsafe.Pointer(pRight)).Ffg.Fjointype) & JT_NATURAL) != 0 { if ((*SrcItem)(unsafe.Pointer(pRight)).FpOn != 0) || ((*SrcItem)(unsafe.Pointer(pRight)).FpUsing != 0) { Xsqlite3ErrorMsg(tls, pParse, - ts+20416 /* "a NATURAL join m..." */, libc.VaList(bp, 0)) + ts+20426 /* "a NATURAL join m..." */, libc.VaList(bp, 0)) return 1 } for j = 0; j < int32((*Table)(unsafe.Pointer(pRightTab)).FnCol); j++ { @@ -113827,7 +114443,7 @@ __1: // Disallow both ON and USING clauses in the same join if ((*SrcItem)(unsafe.Pointer(pRight)).FpOn != 0) && ((*SrcItem)(unsafe.Pointer(pRight)).FpUsing != 0) { Xsqlite3ErrorMsg(tls, pParse, - ts+20466 /* "cannot have both..." */, 0) + ts+20476 /* "cannot have both..." */, 0) return 1 } @@ -113862,7 +114478,7 @@ __1: if (iRightCol < 0) || !(tableAndColumnIndex(tls, pSrc, (i+1), zName, bp+24 /* &iLeft */, bp+28 /* &iLeftCol */, 0) != 0) { Xsqlite3ErrorMsg(tls, pParse, - ts+20521 /* "cannot join usin..." */, libc.VaList(bp+8, zName)) + ts+20531 /* "cannot join usin..." */, libc.VaList(bp+8, zName)) return 1 } addWhereTerm(tls, pParse, pSrc, *(*int32)(unsafe.Pointer(bp + 24 /* iLeft */)), *(*int32)(unsafe.Pointer(bp + 28 /* iLeftCol */)), (i + 1), iRightCol, @@ -114057,7 +114673,7 @@ func pushOntoSorter(tls *libc.TLS, pParse uintptr, pSort uintptr, pSelect uintpt func codeOffset(tls *libc.TLS, v uintptr, iOffset int32, iContinue int32) { /* sqlite3.c:132803:13: */ if iOffset > 0 { Xsqlite3VdbeAddOp3(tls, v, OP_IfPos, iOffset, iContinue, 1) - Xsqlite3VdbeComment(tls, v, ts+20585 /* "OFFSET" */, 0) + Xsqlite3VdbeComment(tls, v, ts+20595 /* "OFFSET" */, 0) } } @@ -114271,7 +114887,7 @@ func selectInnerLoop(tls *libc.TLS, pParse uintptr, p uintptr, srcTab int32, pSo if srcTab >= 0 { for i = 0; i < nResultCol; i++ { Xsqlite3VdbeAddOp3(tls, v, OP_Column, srcTab, i, (regResult + i)) - Xsqlite3VdbeComment(tls, v, ts+951 /* "%s" */, libc.VaList(bp, (*ExprList_item)(unsafe.Pointer(((*Select)(unsafe.Pointer(p)).FpEList+8 /* &.a */)+uintptr(i)*20)).FzEName)) + Xsqlite3VdbeComment(tls, v, ts+961 /* "%s" */, libc.VaList(bp, (*ExprList_item)(unsafe.Pointer(((*Select)(unsafe.Pointer(p)).FpEList+8 /* &.a */)+uintptr(i)*20)).FzEName)) } } else if eDest != SRT_Exists { // If the destination is an EXISTS(...) expression, the actual @@ -114653,16 +115269,16 @@ func Xsqlite3SelectOpName(tls *libc.TLS, id int32) uintptr { /* sqlite3.c:133540 var z uintptr switch id { case TK_ALL: - z = ts + 20592 /* "UNION ALL" */ + z = ts + 20602 /* "UNION ALL" */ break case TK_INTERSECT: - z = ts + 20602 /* "INTERSECT" */ + z = ts + 20612 /* "INTERSECT" */ break case TK_EXCEPT: - z = ts + 20612 /* "EXCEPT" */ + z = ts + 20622 /* "EXCEPT" */ break default: - z = ts + 20619 /* "UNION" */ + z = ts + 20629 /* "UNION" */ break } return z @@ -114680,7 +115296,7 @@ func explainTempTable(tls *libc.TLS, pParse uintptr, zUsage uintptr) { /* sqlite bp := tls.Alloc(8) defer tls.Free(8) - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+20625 /* "USE TEMP B-TREE ..." */, libc.VaList(bp, zUsage)) + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+20635 /* "USE TEMP B-TREE ..." */, libc.VaList(bp, zUsage)) } // Assign expression b to lvalue a. A second, no-op, version of this macro @@ -114774,7 +115390,7 @@ func generateSortTail(tls *libc.TLS, pParse uintptr, p uintptr, pSort uintptr, n iRead = libc.PostDecInt32(&iCol, 1) } Xsqlite3VdbeAddOp3(tls, v, OP_Column, iSortTab, iRead, (regRow + i)) - Xsqlite3VdbeComment(tls, v, ts+951 /* "%s" */, libc.VaList(bp, (*ExprList_item)(unsafe.Pointer(aOutEx+uintptr(i)*20)).FzEName)) + Xsqlite3VdbeComment(tls, v, ts+961 /* "%s" */, libc.VaList(bp, (*ExprList_item)(unsafe.Pointer(aOutEx+uintptr(i)*20)).FzEName)) } } @@ -114950,8 +115566,8 @@ func columnTypeImpl(tls *libc.TLS, pNC uintptr, pExpr uintptr, pzOrigDb uintptr, } if iCol < 0 { - zType = ts + 14702 /* "INTEGER" */ - *(*uintptr)(unsafe.Pointer(bp + 40 /* zOrigCol */)) = ts + 10297 /* "rowid" */ + zType = ts + 14712 /* "INTEGER" */ + *(*uintptr)(unsafe.Pointer(bp + 40 /* zOrigCol */)) = ts + 10307 /* "rowid" */ } else { *(*uintptr)(unsafe.Pointer(bp + 40 /* zOrigCol */)) = (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(iCol)*20)).FzName zType = Xsqlite3ColumnType(tls, ((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(iCol)*20), uintptr(0)) @@ -115104,13 +115720,13 @@ func Xsqlite3GenerateColumnNames(tls *libc.TLS, pParse uintptr, pSelect uintptr) } if iCol < 0 { - zCol = ts + 10297 /* "rowid" */ + zCol = ts + 10307 /* "rowid" */ } else { zCol = (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(iCol)*20)).FzName } if fullName != 0 { var zName uintptr = uintptr(0) - zName = Xsqlite3MPrintf(tls, db, ts+10230 /* "%s.%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, zCol)) + zName = Xsqlite3MPrintf(tls, db, ts+10240 /* "%s.%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, zCol)) Xsqlite3VdbeSetColName(tls, v, i, COLNAME_NAME, zName, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3OomFault}))) } else { Xsqlite3VdbeSetColName(tls, v, i, COLNAME_NAME, zCol, libc.UintptrFromInt32(-1)) @@ -115118,7 +115734,7 @@ func Xsqlite3GenerateColumnNames(tls *libc.TLS, pParse uintptr, pSelect uintptr) } else { var z uintptr = (*ExprList_item)(unsafe.Pointer((pEList + 8 /* &.a */) + uintptr(i)*20)).FzEName if z == uintptr(0) { - z = Xsqlite3MPrintf(tls, db, ts+20648 /* "column%d" */, libc.VaList(bp+16, (i+1))) + z = Xsqlite3MPrintf(tls, db, ts+20658 /* "column%d" */, libc.VaList(bp+16, (i+1))) } else { z = Xsqlite3DbStrDup(tls, db, z) } @@ -115207,7 +115823,7 @@ __1: if iCol >= 0 { zName = (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(iCol)*20)).FzName } else { - zName = ts + 10297 /* "rowid" */ + zName = ts + 10307 /* "rowid" */ } } else if int32((*Expr)(unsafe.Pointer(pColExpr)).Fop) == TK_ID { @@ -115220,7 +115836,7 @@ __1: if (zName != 0) && !(Xsqlite3IsTrueOrFalse(tls, zName) != 0) { zName = Xsqlite3DbStrDup(tls, db, zName) } else { - zName = Xsqlite3MPrintf(tls, db, ts+20648 /* "column%d" */, libc.VaList(bp, (i+1))) + zName = Xsqlite3MPrintf(tls, db, ts+20658 /* "column%d" */, libc.VaList(bp, (i+1))) } // Make sure the column name is unique. If the name is not unique, @@ -115235,7 +115851,7 @@ __1: nName = j } } - zName = Xsqlite3MPrintf(tls, db, ts+20657 /* "%.*z:%u" */, libc.VaList(bp+8, nName, zName, libc.PreIncUint32(&*(*U32)(unsafe.Pointer(bp + 48 /* cnt */)), 1))) + zName = Xsqlite3MPrintf(tls, db, ts+20667 /* "%.*z:%u" */, libc.VaList(bp+8, nName, zName, libc.PreIncUint32(&*(*U32)(unsafe.Pointer(bp + 48 /* cnt */)), 1))) if *(*U32)(unsafe.Pointer(bp + 48 /* cnt */)) > U32(3) { Xsqlite3_randomness(tls, int32(unsafe.Sizeof(U32(0))), bp+48 /* &cnt */) } @@ -115436,7 +116052,7 @@ func computeLimitRegisters(tls *libc.TLS, pParse uintptr, p uintptr, iBreak int3 if Xsqlite3ExprIsInteger(tls, (*Expr)(unsafe.Pointer(pLimit)).FpLeft, bp /* &n */) != 0 { Xsqlite3VdbeAddOp2(tls, v, OP_Integer, *(*int32)(unsafe.Pointer(bp /* n */)), iLimit) - Xsqlite3VdbeComment(tls, v, ts+20665 /* "LIMIT counter" */, 0) + Xsqlite3VdbeComment(tls, v, ts+20675 /* "LIMIT counter" */, 0) if *(*int32)(unsafe.Pointer(bp /* n */)) == 0 { Xsqlite3VdbeGoto(tls, v, iBreak) } else if (*(*int32)(unsafe.Pointer(bp /* n */)) >= 0) && (int32((*Select)(unsafe.Pointer(p)).FnSelectRow) > int32(Xsqlite3LogEst(tls, U64(*(*int32)(unsafe.Pointer(bp /* n */)))))) { @@ -115446,7 +116062,7 @@ func computeLimitRegisters(tls *libc.TLS, pParse uintptr, p uintptr, iBreak int3 } else { Xsqlite3ExprCode(tls, pParse, (*Expr)(unsafe.Pointer(pLimit)).FpLeft, iLimit) Xsqlite3VdbeAddOp1(tls, v, OP_MustBeInt, iLimit) - Xsqlite3VdbeComment(tls, v, ts+20665 /* "LIMIT counter" */, 0) + Xsqlite3VdbeComment(tls, v, ts+20675 /* "LIMIT counter" */, 0) Xsqlite3VdbeAddOp2(tls, v, OP_IfNot, iLimit, iBreak) } if (*Expr)(unsafe.Pointer(pLimit)).FpRight != 0 { @@ -115454,9 +116070,9 @@ func computeLimitRegisters(tls *libc.TLS, pParse uintptr, p uintptr, iBreak int3 (*Parse)(unsafe.Pointer(pParse)).FnMem++ // Allocate an extra register for limit+offset Xsqlite3ExprCode(tls, pParse, (*Expr)(unsafe.Pointer(pLimit)).FpRight, iOffset) Xsqlite3VdbeAddOp1(tls, v, OP_MustBeInt, iOffset) - Xsqlite3VdbeComment(tls, v, ts+20679 /* "OFFSET counter" */, 0) + Xsqlite3VdbeComment(tls, v, ts+20689 /* "OFFSET counter" */, 0) Xsqlite3VdbeAddOp3(tls, v, OP_OffsetLimit, iLimit, (iOffset + 1), iOffset) - Xsqlite3VdbeComment(tls, v, ts+20694 /* "LIMIT+OFFSET" */, 0) + Xsqlite3VdbeComment(tls, v, ts+20704 /* "LIMIT+OFFSET" */, 0) } } } @@ -115592,7 +116208,7 @@ func generateWithRecursiveQuery(tls *libc.TLS, pParse uintptr, p uintptr, pDest if !((*Select)(unsafe.Pointer(p)).FpWin != 0) { goto __1 } - Xsqlite3ErrorMsg(tls, pParse, ts+20707 /* "cannot use windo..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+20717 /* "cannot use windo..." */, 0) return __1: ; @@ -115676,7 +116292,7 @@ __9: Xsqlite3VdbeAddOp2(tls, v, OP_OpenEphemeral, iQueue, nCol) __10: ; - Xsqlite3VdbeComment(tls, v, ts+20756 /* "Queue table" */, 0) + Xsqlite3VdbeComment(tls, v, ts+20766 /* "Queue table" */, 0) if !(iDistinct != 0) { goto __11 } @@ -115703,7 +116319,7 @@ __12: if !(((*Select)(unsafe.Pointer(pFirstRec)).FselFlags & U32(SF_Aggregate)) != 0) { goto __15 } - Xsqlite3ErrorMsg(tls, pParse, ts+20768 /* "recursive aggreg..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+20778 /* "recursive aggreg..." */, 0) goto end_of_recursive_query __15: ; @@ -115725,7 +116341,7 @@ __14: // Store the results of the setup-query in Queue. pSetup = (*Select)(unsafe.Pointer(pFirstRec)).FpPrior (*Select)(unsafe.Pointer(pSetup)).FpNext = uintptr(0) - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20810 /* "SETUP" */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20820 /* "SETUP" */, 0) rc = Xsqlite3Select(tls, pParse, pSetup, bp /* &destQueue */) (*Select)(unsafe.Pointer(pSetup)).FpNext = p if !(rc != 0) { @@ -115768,7 +116384,7 @@ __20: // Execute the recursive SELECT taking the single row in Current as // the value for the recursive-table. Store the results in the Queue. (*Select)(unsafe.Pointer(pFirstRec)).FpPrior = uintptr(0) - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20816 /* "RECURSIVE STEP" */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20826 /* "RECURSIVE STEP" */, 0) Xsqlite3Select(tls, pParse, p, bp /* &destQueue */) (*Select)(unsafe.Pointer(pFirstRec)).FpPrior = pSetup @@ -115818,11 +116434,11 @@ func multiSelectValues(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) p = (*Select)(unsafe.Pointer(p)).FpPrior nRow = nRow + (bShowAll) } - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+20831 /* "SCAN %d CONSTANT..." */, libc.VaList(bp, nRow, func() uintptr { + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+20841 /* "SCAN %d CONSTANT..." */, libc.VaList(bp, nRow, func() uintptr { if nRow == 1 { - return ts + 915 /* "" */ + return ts + 925 /* "" */ } - return ts + 20854 /* "S" */ + return ts + 20864 /* "S" */ }())) for p != 0 { selectInnerLoop(tls, pParse, p, -1, uintptr(0), uintptr(0), pDest, 1, 1) @@ -115974,8 +116590,8 @@ __6: if !((*Select)(unsafe.Pointer(pPrior)).FpPrior == uintptr(0)) { goto __8 } - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20856 /* "COMPOUND QUERY" */, 0) - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20871 /* "LEFT-MOST SUBQUE..." */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20866 /* "COMPOUND QUERY" */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20881 /* "LEFT-MOST SUBQUE..." */, 0) __8: ; @@ -116014,7 +116630,7 @@ __14: goto __15 } addr = Xsqlite3VdbeAddOp1(tls, v, OP_IfNot, (*Select)(unsafe.Pointer(p)).FiLimit) - Xsqlite3VdbeComment(tls, v, ts+20890 /* "Jump ahead if LI..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+20900 /* "Jump ahead if LI..." */, 0) if !((*Select)(unsafe.Pointer(p)).FiOffset != 0) { goto __16 } @@ -116024,7 +116640,7 @@ __16: ; __15: ; - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20592 /* "UNION ALL" */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20602 /* "UNION ALL" */, 0) rc = Xsqlite3Select(tls, pParse, p, bp+16 /* &dest */) @@ -116100,7 +116716,7 @@ __23: pLimit = (*Select)(unsafe.Pointer(p)).FpLimit (*Select)(unsafe.Pointer(p)).FpLimit = uintptr(0) (*SelectDest)(unsafe.Pointer(bp + 48 /* &uniondest */)).FeDest = op - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20918 /* "%s USING TEMP B-..." */, libc.VaList(bp, Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(p)).Fop)))) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20928 /* "%s USING TEMP B-..." */, libc.VaList(bp, Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(p)).Fop)))) rc = Xsqlite3Select(tls, pParse, p, bp+48 /* &uniondest */) @@ -116172,7 +116788,7 @@ __26: pLimit1 = (*Select)(unsafe.Pointer(p)).FpLimit (*Select)(unsafe.Pointer(p)).FpLimit = uintptr(0) (*SelectDest)(unsafe.Pointer(bp + 76 /* &intersectdest */)).FiSDParm = tab2 - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20918 /* "%s USING TEMP B-..." */, libc.VaList(bp+8, Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(p)).Fop)))) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+20928 /* "%s USING TEMP B-..." */, libc.VaList(bp+8, Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(p)).Fop)))) rc = Xsqlite3Select(tls, pParse, p, bp+76 /* &intersectdest */) @@ -116333,10 +116949,10 @@ func Xsqlite3SelectWrongNumTermsError(tls *libc.TLS, pParse uintptr, p uintptr) defer tls.Free(8) if ((*Select)(unsafe.Pointer(p)).FselFlags & U32(SF_Values)) != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+20939 /* "all VALUES must ..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+20949 /* "all VALUES must ..." */, 0) } else { Xsqlite3ErrorMsg(tls, pParse, - ts+20985, /* "SELECTs to the l..." */ + ts+20995, /* "SELECTs to the l..." */ libc.VaList(bp, Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(p)).Fop)))) } } @@ -116716,9 +117332,9 @@ func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) // Separate the left and the right query from one another (*Select)(unsafe.Pointer(p)).FpPrior = uintptr(0) (*Select)(unsafe.Pointer(pPrior)).FpNext = uintptr(0) - Xsqlite3ResolveOrderGroupBy(tls, pParse, p, (*Select)(unsafe.Pointer(p)).FpOrderBy, ts+9359 /* "ORDER" */) + Xsqlite3ResolveOrderGroupBy(tls, pParse, p, (*Select)(unsafe.Pointer(p)).FpOrderBy, ts+9369 /* "ORDER" */) if (*Select)(unsafe.Pointer(pPrior)).FpPrior == uintptr(0) { - Xsqlite3ResolveOrderGroupBy(tls, pParse, pPrior, (*Select)(unsafe.Pointer(pPrior)).FpOrderBy, ts+9359 /* "ORDER" */) + Xsqlite3ResolveOrderGroupBy(tls, pParse, pPrior, (*Select)(unsafe.Pointer(pPrior)).FpOrderBy, ts+9369 /* "ORDER" */) } // Compute the limit registers @@ -116747,15 +117363,15 @@ func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) Xsqlite3SelectDestInit(tls, bp+8 /* &destA */, SRT_Coroutine, regAddrA) Xsqlite3SelectDestInit(tls, bp+36 /* &destB */, SRT_Coroutine, regAddrB) - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+21067 /* "MERGE (%s)" */, libc.VaList(bp, Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(p)).Fop)))) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+21077 /* "MERGE (%s)" */, libc.VaList(bp, Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(p)).Fop)))) // Generate a coroutine to evaluate the SELECT statement to the // left of the compound operator - the "A" select. addrSelectA = (Xsqlite3VdbeCurrentAddr(tls, v) + 1) addr1 = Xsqlite3VdbeAddOp3(tls, v, OP_InitCoroutine, regAddrA, 0, addrSelectA) - Xsqlite3VdbeComment(tls, v, ts+21078 /* "left SELECT" */, 0) + Xsqlite3VdbeComment(tls, v, ts+21088 /* "left SELECT" */, 0) (*Select)(unsafe.Pointer(pPrior)).FiLimit = regLimitA - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+21090 /* "LEFT" */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+21100 /* "LEFT" */, 0) Xsqlite3Select(tls, pParse, pPrior, bp+8 /* &destA */) Xsqlite3VdbeEndCoroutine(tls, v, regAddrA) Xsqlite3VdbeJumpHere(tls, v, addr1) @@ -116764,12 +117380,12 @@ func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) // the right - the "B" select addrSelectB = (Xsqlite3VdbeCurrentAddr(tls, v) + 1) addr1 = Xsqlite3VdbeAddOp3(tls, v, OP_InitCoroutine, regAddrB, 0, addrSelectB) - Xsqlite3VdbeComment(tls, v, ts+21095 /* "right SELECT" */, 0) + Xsqlite3VdbeComment(tls, v, ts+21105 /* "right SELECT" */, 0) savedLimit = (*Select)(unsafe.Pointer(p)).FiLimit savedOffset = (*Select)(unsafe.Pointer(p)).FiOffset (*Select)(unsafe.Pointer(p)).FiLimit = regLimitB (*Select)(unsafe.Pointer(p)).FiOffset = 0 - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+21108 /* "RIGHT" */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+21118 /* "RIGHT" */, 0) Xsqlite3Select(tls, pParse, p, bp+36 /* &destB */) (*Select)(unsafe.Pointer(p)).FiLimit = savedLimit (*Select)(unsafe.Pointer(p)).FiOffset = savedOffset @@ -116777,7 +117393,7 @@ func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) // Generate a subroutine that outputs the current row of the A // select as the next output row of the compound select. - Xsqlite3VdbeNoopComment(tls, v, ts+21114 /* "Output routine f..." */, 0) + Xsqlite3VdbeNoopComment(tls, v, ts+21124 /* "Output routine f..." */, 0) addrOutA = generateOutputSubroutine(tls, pParse, p, bp+8 /* &destA */, pDest, regOutA, regPrev, pKeyDup, labelEnd) @@ -116785,7 +117401,7 @@ func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) // Generate a subroutine that outputs the current row of the B // select as the next output row of the compound select. if (op == TK_ALL) || (op == TK_UNION) { - Xsqlite3VdbeNoopComment(tls, v, ts+21135 /* "Output routine f..." */, 0) + Xsqlite3VdbeNoopComment(tls, v, ts+21145 /* "Output routine f..." */, 0) addrOutB = generateOutputSubroutine(tls, pParse, p, bp+36 /* &destB */, pDest, regOutB, regPrev, pKeyDup, labelEnd) @@ -116797,7 +117413,7 @@ func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) if (op == TK_EXCEPT) || (op == TK_INTERSECT) { addrEofA_noB = libc.AssignInt32(&addrEofA, labelEnd) } else { - Xsqlite3VdbeNoopComment(tls, v, ts+21156 /* "eof-A subroutine" */, 0) + Xsqlite3VdbeNoopComment(tls, v, ts+21166 /* "eof-A subroutine" */, 0) addrEofA = Xsqlite3VdbeAddOp2(tls, v, OP_Gosub, regOutB, addrOutB) addrEofA_noB = Xsqlite3VdbeAddOp2(tls, v, OP_Yield, regAddrB, labelEnd) @@ -116813,14 +117429,14 @@ func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) (*Select)(unsafe.Pointer(p)).FnSelectRow = (*Select)(unsafe.Pointer(pPrior)).FnSelectRow } } else { - Xsqlite3VdbeNoopComment(tls, v, ts+21173 /* "eof-B subroutine" */, 0) + Xsqlite3VdbeNoopComment(tls, v, ts+21183 /* "eof-B subroutine" */, 0) addrEofB = Xsqlite3VdbeAddOp2(tls, v, OP_Gosub, regOutA, addrOutA) Xsqlite3VdbeAddOp2(tls, v, OP_Yield, regAddrA, labelEnd) Xsqlite3VdbeGoto(tls, v, addrEofB) } // Generate code to handle the case of AB - Xsqlite3VdbeNoopComment(tls, v, ts+21226 /* "A-gt-B subroutin..." */, 0) + Xsqlite3VdbeNoopComment(tls, v, ts+21236 /* "A-gt-B subroutin..." */, 0) addrAgtB = Xsqlite3VdbeCurrentAddr(tls, v) if (op == TK_ALL) || (op == TK_UNION) { Xsqlite3VdbeAddOp2(tls, v, OP_Gosub, regOutB, addrOutB) @@ -116965,7 +117581,7 @@ func substExpr(tls *libc.TLS, pSubst uintptr, pExpr uintptr) uintptr { /* sqlite if pColl != 0 { return (*CollSeq)(unsafe.Pointer(pColl)).FzName } - return ts + 478 /* "BINARY" */ + return ts + 488 /* "BINARY" */ }()) } *(*U32)(unsafe.Pointer(pExpr + 4 /* &.flags */)) &= (libc.Uint32FromInt32(libc.CplInt32(EP_Collate))) @@ -118178,12 +118794,12 @@ func minMaxQuery(tls *libc.TLS, db uintptr, pFunc uintptr, ppMinMax uintptr) U8 return U8(eRet) } zFunc = *(*uintptr)(unsafe.Pointer(pFunc + 8 /* &.u */)) - if Xsqlite3StrICmp(tls, zFunc, ts+17142 /* "min" */) == 0 { + if Xsqlite3StrICmp(tls, zFunc, ts+17152 /* "min" */) == 0 { eRet = WHERE_ORDERBY_MIN if Xsqlite3ExprCanBeNull(tls, (*ExprList_item)(unsafe.Pointer((pEList+8 /* &.a */))).FpExpr) != 0 { sortFlags = U8(KEYINFO_ORDER_BIGNULL) } - } else if Xsqlite3StrICmp(tls, zFunc, ts+17146 /* "max" */) == 0 { + } else if Xsqlite3StrICmp(tls, zFunc, ts+17156 /* "max" */) == 0 { eRet = WHERE_ORDERBY_MAX sortFlags = U8(KEYINFO_ORDER_DESC) } else { @@ -118252,7 +118868,7 @@ func Xsqlite3IndexedByLookup(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 for pIdx = (*Table)(unsafe.Pointer(pTab)).FpIndex; (pIdx != 0) && (Xsqlite3StrICmp(tls, (*Index)(unsafe.Pointer(pIdx)).FzName, zIndexedBy) != 0); pIdx = (*Index)(unsafe.Pointer(pIdx)).FpNext { } if !(pIdx != 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+21244 /* "no such index: %..." */, libc.VaList(bp, zIndexedBy, 0)) + Xsqlite3ErrorMsg(tls, pParse, ts+21254 /* "no such index: %..." */, libc.VaList(bp, zIndexedBy, 0)) (*Parse)(unsafe.Pointer(pParse)).FcheckSchema = U8(1) return SQLITE_ERROR } @@ -118363,7 +118979,7 @@ func cannotBeFunction(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* s defer tls.Free(8) if (uint32(int32(*(*uint16)(unsafe.Pointer(pFrom + 36 /* &.fg */ + 4 /* &.isTabFunc */)) & 0x4 >> 2))) != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+21262 /* "'%s' is not a fu..." */, libc.VaList(bp, (*SrcItem)(unsafe.Pointer(pFrom)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+21272 /* "'%s' is not a fu..." */, libc.VaList(bp, (*SrcItem)(unsafe.Pointer(pFrom)).FzName)) return 1 } return 0 @@ -118551,7 +119167,7 @@ func resolveFromTermToCte(tls *libc.TLS, pParse uintptr, pWalker uintptr, pFrom libc.SetBitFieldPtr16Uint32(pItem+36 /* &.fg */ +4 /* &.isRecursive */, uint32(1), 5, 0x20) if ((*Select)(unsafe.Pointer(pRecTerm)).FselFlags & U32(SF_Recursive)) != 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+21285 /* "multiple referen..." */, libc.VaList(bp+8, (*Cte)(unsafe.Pointer(pCte)).FzName)) + ts+21295 /* "multiple referen..." */, libc.VaList(bp+8, (*Cte)(unsafe.Pointer(pCte)).FzName)) return 2 } *(*U32)(unsafe.Pointer(pRecTerm + 4 /* &.selFlags */)) |= (U32(SF_Recursive)) @@ -118567,7 +119183,7 @@ func resolveFromTermToCte(tls *libc.TLS, pParse uintptr, pWalker uintptr, pFrom pRecTerm = (*Select)(unsafe.Pointer(pRecTerm)).FpPrior } - (*Cte)(unsafe.Pointer(pCte)).FzCteErr = ts + 21328 /* "circular referen..." */ + (*Cte)(unsafe.Pointer(pCte)).FzCteErr = ts + 21338 /* "circular referen..." */ pSavedWith = (*Parse)(unsafe.Pointer(pParse)).FpWith (*Parse)(unsafe.Pointer(pParse)).FpWith = *(*uintptr)(unsafe.Pointer(bp + 40 /* pWith */)) if ((*Select)(unsafe.Pointer(pSel)).FselFlags & U32(SF_Recursive)) != 0 { @@ -118593,7 +119209,7 @@ func resolveFromTermToCte(tls *libc.TLS, pParse uintptr, pWalker uintptr, pFrom pEList = (*Select)(unsafe.Pointer(pLeft)).FpEList if (*Cte)(unsafe.Pointer(pCte)).FpCols != 0 { if (pEList != 0) && ((*ExprList)(unsafe.Pointer(pEList)).FnExpr != (*ExprList)(unsafe.Pointer((*Cte)(unsafe.Pointer(pCte)).FpCols)).FnExpr) { - Xsqlite3ErrorMsg(tls, pParse, ts+21351, /* "table %s has %d ..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+21361, /* "table %s has %d ..." */ libc.VaList(bp+16, (*Cte)(unsafe.Pointer(pCte)).FzName, (*ExprList)(unsafe.Pointer(pEList)).FnExpr, (*ExprList)(unsafe.Pointer((*Cte)(unsafe.Pointer(pCte)).FpCols)).FnExpr)) (*Parse)(unsafe.Pointer(pParse)).FpWith = pSavedWith return 2 @@ -118604,9 +119220,9 @@ func resolveFromTermToCte(tls *libc.TLS, pParse uintptr, pWalker uintptr, pFrom Xsqlite3ColumnsFromExprList(tls, pParse, pEList, (pTab + 42 /* &.nCol */), (pTab + 4 /* &.aCol */)) if bMayRecursive != 0 { if ((*Select)(unsafe.Pointer(pSel)).FselFlags & U32(SF_Recursive)) != 0 { - (*Cte)(unsafe.Pointer(pCte)).FzCteErr = ts + 21389 /* "multiple recursi..." */ + (*Cte)(unsafe.Pointer(pCte)).FzCteErr = ts + 21399 /* "multiple recursi..." */ } else { - (*Cte)(unsafe.Pointer(pCte)).FzCteErr = ts + 21423 /* "recursive refere..." */ + (*Cte)(unsafe.Pointer(pCte)).FzCteErr = ts + 21433 /* "recursive refere..." */ } Xsqlite3WalkSelect(tls, pWalker, pSel) } @@ -118654,7 +119270,7 @@ func Xsqlite3ExpandSubquery(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 if (*SrcItem)(unsafe.Pointer(pFrom)).FzAlias != 0 { (*Table)(unsafe.Pointer(pTab)).FzName = Xsqlite3DbStrDup(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, (*SrcItem)(unsafe.Pointer(pFrom)).FzAlias) } else { - (*Table)(unsafe.Pointer(pTab)).FzName = Xsqlite3MPrintf(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, ts+21461 /* "subquery_%u" */, libc.VaList(bp, (*Select)(unsafe.Pointer(pSel)).FselId)) + (*Table)(unsafe.Pointer(pTab)).FzName = Xsqlite3MPrintf(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, ts+21471 /* "subquery_%u" */, libc.VaList(bp, (*Select)(unsafe.Pointer(pSel)).FselId)) } for (*Select)(unsafe.Pointer(pSel)).FpPrior != 0 { pSel = (*Select)(unsafe.Pointer(pSel)).FpPrior @@ -118781,7 +119397,7 @@ __1: return WRC_Abort } if (*Table)(unsafe.Pointer(pTab)).FnTabRef >= U32(0xffff) { - Xsqlite3ErrorMsg(tls, pParse, ts+21473, /* "too many referen..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+21483, /* "too many referen..." */ libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) (*SrcItem)(unsafe.Pointer(pFrom)).FpTab = uintptr(0) return WRC_Abort @@ -118800,7 +119416,7 @@ __1: if (((*Table)(unsafe.Pointer(pTab)).FpSelect != 0) && (((*Sqlite3)(unsafe.Pointer(db)).Fflags & uint64(SQLITE_EnableView)) == uint64(0))) && ((*Table)(unsafe.Pointer(pTab)).FpSchema != (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*16)).FpSchema) { - Xsqlite3ErrorMsg(tls, pParse, ts+21512, /* "access to view \"..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+21522, /* "access to view \"..." */ libc.VaList(bp+8, (*Table)(unsafe.Pointer(pTab)).FzName)) } @@ -118808,7 +119424,7 @@ __1: ((uint32(int32(*(*uint16)(unsafe.Pointer((pFrom + 36 /* &.fg */) + 4 /* &.fromDDL */)) & 0x40 >> 6))) != 0)) && ((*Table)(unsafe.Pointer(pTab)).FpVTable != uintptr(0))) && (int32((*VTable)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FpVTable)).FeVtabRisk) > (libc.Bool32(((*Sqlite3)(unsafe.Pointer(db)).Fflags & uint64(SQLITE_TrustedSchema)) != uint64(0)))) { - Xsqlite3ErrorMsg(tls, pParse, ts+21543, /* "unsafe use of vi..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+21553, /* "unsafe use of vi..." */ libc.VaList(bp+16, (*Table)(unsafe.Pointer(pTab)).FzName)) } (*SrcItem)(unsafe.Pointer(pFrom)).FpSelect = Xsqlite3SelectDup(tls, db, (*Table)(unsafe.Pointer(pTab)).FpSelect, 0) @@ -118923,7 +119539,7 @@ __3: if iDb >= 0 { zSchemaName = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16)).FzDbSName } else { - zSchemaName = ts + 21576 /* "*" */ + zSchemaName = ts + 21586 /* "*" */ } } for j = 0; j < int32((*Table)(unsafe.Pointer(pTab)).FnCol); j++ { @@ -118972,7 +119588,7 @@ __3: pExpr = Xsqlite3PExpr(tls, pParse, TK_DOT, pLeft, pExpr) } if longNames != 0 { - zColname = Xsqlite3MPrintf(tls, db, ts+10230 /* "%s.%s" */, libc.VaList(bp+24, zTabName, zName)) + zColname = Xsqlite3MPrintf(tls, db, ts+10240 /* "%s.%s" */, libc.VaList(bp+24, zTabName, zName)) zToFree = zColname } } else { @@ -118988,7 +119604,7 @@ __3: (*ExprList_item)(unsafe.Pointer(pX)).FzEName = Xsqlite3DbStrDup(tls, db, (*ExprList_item)(unsafe.Pointer(((*Select)(unsafe.Pointer(pSub)).FpEList+8 /* &.a */)+uintptr(j)*20)).FzEName) } else { - (*ExprList_item)(unsafe.Pointer(pX)).FzEName = Xsqlite3MPrintf(tls, db, ts+21578, /* "%s.%s.%s" */ + (*ExprList_item)(unsafe.Pointer(pX)).FzEName = Xsqlite3MPrintf(tls, db, ts+21588, /* "%s.%s.%s" */ libc.VaList(bp+40, zSchemaName, zTabName, zColname)) } @@ -119008,9 +119624,9 @@ __3: ; if !(tableSeen != 0) { if zTName != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+21587 /* "no such table: %..." */, libc.VaList(bp+64, zTName)) + Xsqlite3ErrorMsg(tls, pParse, ts+21597 /* "no such table: %..." */, libc.VaList(bp+64, zTName)) } else { - Xsqlite3ErrorMsg(tls, pParse, ts+21605 /* "no tables specif..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+21615 /* "no tables specif..." */, 0) } } } @@ -119020,7 +119636,7 @@ __3: } if (*Select)(unsafe.Pointer(p)).FpEList != 0 { if (*ExprList)(unsafe.Pointer((*Select)(unsafe.Pointer(p)).FpEList)).FnExpr > *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 2*4)) { - Xsqlite3ErrorMsg(tls, pParse, ts+21625 /* "too many columns..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+21635 /* "too many columns..." */, 0) return WRC_Abort } if (elistFlags & (U32(EP_HasFunc | EP_Subquery))) != U32(0) { @@ -119208,13 +119824,13 @@ __1: if (*(*uintptr)(unsafe.Pointer(pE + 20 /* &.x */)) == uintptr(0)) || ((*ExprList)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pE + 20 /* &.x */)))).FnExpr != 1) { Xsqlite3ErrorMsg(tls, pParse, - ts+21656 /* "DISTINCT aggrega..." */, 0) + ts+21666 /* "DISTINCT aggrega..." */, 0) (*AggInfo_func)(unsafe.Pointer(pFunc)).FiDistinct = -1 } else { var pKeyInfo uintptr = Xsqlite3KeyInfoFromExprList(tls, pParse, *(*uintptr)(unsafe.Pointer(pE + 20 /* &.x */)), 0, 0) (*AggInfo_func)(unsafe.Pointer(pFunc)).FiDistAddr = Xsqlite3VdbeAddOp4(tls, v, OP_OpenEphemeral, (*AggInfo_func)(unsafe.Pointer(pFunc)).FiDistinct, 0, 0, pKeyInfo, -9) - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+21707 /* "USE TEMP B-TREE ..." */, libc.VaList(bp, (*FuncDef)(unsafe.Pointer((*AggInfo_func)(unsafe.Pointer(pFunc)).FpFunc)).FzName)) + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+21717 /* "USE TEMP B-TREE ..." */, libc.VaList(bp, (*FuncDef)(unsafe.Pointer((*AggInfo_func)(unsafe.Pointer(pFunc)).FpFunc)).FzName)) } } @@ -119414,19 +120030,19 @@ func explainSimpleCount(tls *libc.TLS, pParse uintptr, pTab uintptr, pIdx uintpt if int32((*Parse)(unsafe.Pointer(pParse)).Fexplain) == 2 { var bCover int32 = (libc.Bool32((pIdx != uintptr(0)) && ((((*Table)(unsafe.Pointer((pTab))).FtabFlags & U32(TF_WithoutRowid)) == U32(0)) || !((int32(*(*uint16)(unsafe.Pointer((pIdx) + 56 /* &.idxType */)) & 0x3 >> 0)) == SQLITE_IDXTYPE_PRIMARYKEY)))) - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+21740, /* "SCAN %s%s%s" */ + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+21750, /* "SCAN %s%s%s" */ libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, func() uintptr { if bCover != 0 { - return ts + 21752 /* " USING COVERING ..." */ + return ts + 21762 /* " USING COVERING ..." */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), func() uintptr { if bCover != 0 { return (*Index)(unsafe.Pointer(pIdx)).FzName } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }())) } } @@ -119446,7 +120062,7 @@ func havingToWhereExprCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { if (Xsqlite3ExprIsConstantOrGroupBy(tls, (*Walker)(unsafe.Pointer(pWalker)).FpParse, pExpr, (*Select)(unsafe.Pointer(pS)).FpGroupBy) != 0) && ((libc.Bool32(((*Expr)(unsafe.Pointer((pExpr))).Fflags & (U32(EP_FromJoin | EP_IsFalse))) == U32(EP_IsFalse))) == 0) { var db uintptr = (*Parse)(unsafe.Pointer((*Walker)(unsafe.Pointer(pWalker)).FpParse)).Fdb - var pNew uintptr = Xsqlite3Expr(tls, db, TK_INTEGER, ts+10134 /* "1" */) + var pNew uintptr = Xsqlite3Expr(tls, db, TK_INTEGER, ts+10144 /* "1" */) if pNew != 0 { var pWhere uintptr = (*Select)(unsafe.Pointer(pS)).FpWhere { @@ -119748,7 +120364,7 @@ __7: goto __10 } Xsqlite3ErrorMsg(tls, pParse, - ts+21775, /* "target object/al..." */ + ts+21785, /* "target object/al..." */ libc.VaList(bp, func() uintptr { if (*SrcItem)(unsafe.Pointer(p0)).FzAlias != 0 { return (*SrcItem)(unsafe.Pointer(p0)).FzAlias @@ -119828,7 +120444,7 @@ __17: if !(int32((*Table)(unsafe.Pointer(pTab)).FnCol) != (*ExprList)(unsafe.Pointer((*Select)(unsafe.Pointer(pSub)).FpEList)).FnExpr) { goto __18 } - Xsqlite3ErrorMsg(tls, pParse, ts+21829, /* "expected %d colu..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+21839, /* "expected %d colu..." */ libc.VaList(bp+8, int32((*Table)(unsafe.Pointer(pTab)).FnCol), (*Table)(unsafe.Pointer(pTab)).FzName, (*ExprList)(unsafe.Pointer((*Select)(unsafe.Pointer(pSub)).FpEList)).FnExpr)) goto select_end __18: @@ -119969,7 +120585,7 @@ __29: if !(((*SrcItem)(unsafe.Pointer(pItem1)).FcolUsed == uint64(0)) && ((*SrcItem)(unsafe.Pointer(pItem1)).FzName != uintptr(0))) { goto __32 } - Xsqlite3AuthCheck(tls, pParse, SQLITE_READ, (*SrcItem)(unsafe.Pointer(pItem1)).FzName, ts+915 /* "" */, (*SrcItem)(unsafe.Pointer(pItem1)).FzDatabase) + Xsqlite3AuthCheck(tls, pParse, SQLITE_READ, (*SrcItem)(unsafe.Pointer(pItem1)).FzName, ts+925 /* "" */, (*SrcItem)(unsafe.Pointer(pItem1)).FzDatabase) __32: ; @@ -120031,10 +120647,10 @@ __35: (*SrcItem)(unsafe.Pointer(pItem1)).FregReturn = libc.PreIncInt32(&(*Parse)(unsafe.Pointer(pParse)).FnMem, 1) Xsqlite3VdbeAddOp3(tls, v, OP_InitCoroutine, (*SrcItem)(unsafe.Pointer(pItem1)).FregReturn, 0, addrTop) - Xsqlite3VdbeComment(tls, v, ts+21869 /* "%!S" */, libc.VaList(bp+32, pItem1)) + Xsqlite3VdbeComment(tls, v, ts+21879 /* "%!S" */, libc.VaList(bp+32, pItem1)) (*SrcItem)(unsafe.Pointer(pItem1)).FaddrFillSub = addrTop Xsqlite3SelectDestInit(tls, bp+120 /* &dest */, SRT_Coroutine, (*SrcItem)(unsafe.Pointer(pItem1)).FregReturn) - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+21873 /* "CO-ROUTINE %!S" */, libc.VaList(bp+40, pItem1)) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+21883 /* "CO-ROUTINE %!S" */, libc.VaList(bp+40, pItem1)) Xsqlite3Select(tls, pParse, pSub1, bp+120 /* &dest */) (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pItem1)).FpTab)).FnRowLogEst = (*Select)(unsafe.Pointer(pSub1)).FnSelectRow libc.SetBitFieldPtr16Uint32(pItem1+36 /* &.fg */ +4 /* &.viaCoroutine */, uint32(1), 4, 0x10) @@ -120089,14 +120705,14 @@ __41: // a trigger, then we only need to compute the value of the subquery // once. onceAddr = Xsqlite3VdbeAddOp0(tls, v, OP_Once) - Xsqlite3VdbeComment(tls, v, ts+21888 /* "materialize %!S" */, libc.VaList(bp+48, pItem1)) + Xsqlite3VdbeComment(tls, v, ts+21898 /* "materialize %!S" */, libc.VaList(bp+48, pItem1)) goto __45 __44: - Xsqlite3VdbeNoopComment(tls, v, ts+21888 /* "materialize %!S" */, libc.VaList(bp+56, pItem1)) + Xsqlite3VdbeNoopComment(tls, v, ts+21898 /* "materialize %!S" */, libc.VaList(bp+56, pItem1)) __45: ; Xsqlite3SelectDestInit(tls, bp+120 /* &dest */, SRT_EphemTab, (*SrcItem)(unsafe.Pointer(pItem1)).FiCursor) - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+21904 /* "MATERIALIZE %!S" */, libc.VaList(bp+64, pItem1)) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+21914 /* "MATERIALIZE %!S" */, libc.VaList(bp+64, pItem1)) Xsqlite3Select(tls, pParse, pSub1, bp+120 /* &dest */) (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pItem1)).FpTab)).FnRowLogEst = (*Select)(unsafe.Pointer(pSub1)).FnSelectRow if !(onceAddr != 0) { @@ -120106,7 +120722,7 @@ __45: __46: ; retAddr = Xsqlite3VdbeAddOp1(tls, v, OP_Return, (*SrcItem)(unsafe.Pointer(pItem1)).FregReturn) - Xsqlite3VdbeComment(tls, v, ts+21920 /* "end %!S" */, libc.VaList(bp+72, pItem1)) + Xsqlite3VdbeComment(tls, v, ts+21930 /* "end %!S" */, libc.VaList(bp+72, pItem1)) Xsqlite3VdbeChangeP1(tls, v, topAddr, retAddr) Xsqlite3ClearTempRegCache(tls, pParse) if !(((uint32(int32(*(*uint16)(unsafe.Pointer((pItem1 + 36 /* &.fg */) + 4 /* &.isCte */)) & 0x80 >> 7))) != 0) && ((int32(*(*uint16)(unsafe.Pointer((pItem1 + 36 /* &.fg */) + 4 /* &.isCorrelated */)) & 0x8 >> 3)) == 0)) { @@ -120319,12 +120935,12 @@ __65: Xsqlite3VdbeAddOp2(tls, v, OP_Goto, 0, iBreak) Xsqlite3VdbeResolveLabel(tls, v, addrGosub) - Xsqlite3VdbeNoopComment(tls, v, ts+21928 /* "inner-loop subro..." */, 0) + Xsqlite3VdbeNoopComment(tls, v, ts+21938 /* "inner-loop subro..." */, 0) (*SortCtx)(unsafe.Pointer(bp + 80 /* &sSort */)).FlabelOBLopt = 0 selectInnerLoop(tls, pParse, p, -1, bp+80 /* &sSort */, bp+148 /* &sDistinct */, pDest, iCont, iBreak) Xsqlite3VdbeResolveLabel(tls, v, iCont) Xsqlite3VdbeAddOp1(tls, v, OP_Return, regGosub) - Xsqlite3VdbeComment(tls, v, ts+21950 /* "end inner-loop s..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+21960 /* "end inner-loop s..." */, 0) Xsqlite3VdbeResolveLabel(tls, v, iBreak) goto __67 __66: @@ -120578,7 +121194,7 @@ __95: iBMem = ((*Parse)(unsafe.Pointer(pParse)).FnMem + 1) *(*int32)(unsafe.Pointer(pParse + 44 /* &.nMem */)) += ((*ExprList)(unsafe.Pointer(pGroupBy)).FnExpr) Xsqlite3VdbeAddOp2(tls, v, OP_Integer, 0, iAbortFlag) - Xsqlite3VdbeComment(tls, v, ts+21976 /* "clear abort flag" */, 0) + Xsqlite3VdbeComment(tls, v, ts+21986 /* "clear abort flag" */, 0) Xsqlite3VdbeAddOp3(tls, v, OP_Null, 0, iAMem, ((iAMem + (*ExprList)(unsafe.Pointer(pGroupBy)).FnExpr) - 1)) // Begin a loop that will extract all source rows in GROUP BY order. @@ -120616,9 +121232,9 @@ __97: explainTempTable(tls, pParse, func() uintptr { if ((*DistinctCtx)(unsafe.Pointer(bp+148 /* &sDistinct */)).FisTnct != 0) && (((*Select)(unsafe.Pointer(p)).FselFlags & U32(SF_Distinct)) == U32(0)) { - return ts + 21993 /* "DISTINCT" */ + return ts + 22003 /* "DISTINCT" */ } - return ts + 22002 /* "GROUP BY" */ + return ts + 22012 /* "GROUP BY" */ }()) groupBySort = 1 @@ -120680,7 +121296,7 @@ __105: sortOut = Xsqlite3GetTempReg(tls, pParse) Xsqlite3VdbeAddOp3(tls, v, OP_OpenPseudo, sortPTab, sortOut, nCol) Xsqlite3VdbeAddOp2(tls, v, OP_SorterSort, (*AggInfo)(unsafe.Pointer(pAggInfo)).FsortingIdx, addrEnd) - Xsqlite3VdbeComment(tls, v, ts+22011 /* "GROUP BY sort" */, 0) + Xsqlite3VdbeComment(tls, v, ts+22021 /* "GROUP BY sort" */, 0) (*AggInfo)(unsafe.Pointer(pAggInfo)).FuseSortingIdx = U8(1) __98: ; @@ -120750,18 +121366,18 @@ __111: // for the next GROUP BY batch. Xsqlite3ExprCodeMove(tls, pParse, iBMem, iAMem, (*ExprList)(unsafe.Pointer(pGroupBy)).FnExpr) Xsqlite3VdbeAddOp2(tls, v, OP_Gosub, regOutputRow, addrOutputRow) - Xsqlite3VdbeComment(tls, v, ts+22025 /* "output one row" */, 0) + Xsqlite3VdbeComment(tls, v, ts+22035 /* "output one row" */, 0) Xsqlite3VdbeAddOp2(tls, v, OP_IfPos, iAbortFlag, addrEnd) - Xsqlite3VdbeComment(tls, v, ts+22040 /* "check abort flag" */, 0) + Xsqlite3VdbeComment(tls, v, ts+22050 /* "check abort flag" */, 0) Xsqlite3VdbeAddOp2(tls, v, OP_Gosub, regReset, addrReset) - Xsqlite3VdbeComment(tls, v, ts+22057 /* "reset accumulato..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+22067 /* "reset accumulato..." */, 0) // Update the aggregate accumulators based on the content of // the current row Xsqlite3VdbeJumpHere(tls, v, addr1) updateAccumulator(tls, pParse, iUseFlag, pAggInfo, eDist) Xsqlite3VdbeAddOp2(tls, v, OP_Integer, 1, iUseFlag) - Xsqlite3VdbeComment(tls, v, ts+22075 /* "indicate data in..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+22085 /* "indicate data in..." */, 0) // End of the loop if !(groupBySort != 0) { @@ -120780,7 +121396,7 @@ __115: // Output the final row of result Xsqlite3VdbeAddOp2(tls, v, OP_Gosub, regOutputRow, addrOutputRow) - Xsqlite3VdbeComment(tls, v, ts+22104 /* "output final row" */, 0) + Xsqlite3VdbeComment(tls, v, ts+22114 /* "output final row" */, 0) // Jump over the subroutines Xsqlite3VdbeGoto(tls, v, addrEnd) @@ -120793,13 +121409,13 @@ __115: // order to signal the caller to abort. addrSetAbort = Xsqlite3VdbeCurrentAddr(tls, v) Xsqlite3VdbeAddOp2(tls, v, OP_Integer, 1, iAbortFlag) - Xsqlite3VdbeComment(tls, v, ts+22121 /* "set abort flag" */, 0) + Xsqlite3VdbeComment(tls, v, ts+22131 /* "set abort flag" */, 0) Xsqlite3VdbeAddOp1(tls, v, OP_Return, regOutputRow) Xsqlite3VdbeResolveLabel(tls, v, addrOutputRow) addrOutputRow = Xsqlite3VdbeCurrentAddr(tls, v) Xsqlite3VdbeAddOp2(tls, v, OP_IfPos, iUseFlag, (addrOutputRow + 2)) - Xsqlite3VdbeComment(tls, v, ts+22136 /* "Groupby result g..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+22146 /* "Groupby result g..." */, 0) Xsqlite3VdbeAddOp1(tls, v, OP_Return, regOutputRow) finalizeAggFunctions(tls, pParse, pAggInfo) Xsqlite3ExprIfFalse(tls, pParse, pHaving, (addrOutputRow + 1), SQLITE_JUMPIFNULL) @@ -120807,13 +121423,13 @@ __115: bp+148 /* &sDistinct */, pDest, (addrOutputRow + 1), addrSetAbort) Xsqlite3VdbeAddOp1(tls, v, OP_Return, regOutputRow) - Xsqlite3VdbeComment(tls, v, ts+22173 /* "end groupby resu..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+22183 /* "end groupby resu..." */, 0) // Generate a subroutine that will reset the group-by accumulator Xsqlite3VdbeResolveLabel(tls, v, addrReset) resetAccumulator(tls, pParse, pAggInfo) Xsqlite3VdbeAddOp2(tls, v, OP_Integer, 0, iUseFlag) - Xsqlite3VdbeComment(tls, v, ts+22202 /* "indicate accumul..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+22212 /* "indicate accumul..." */, 0) Xsqlite3VdbeAddOp1(tls, v, OP_Return, regReset) if !(eDist != WHERE_DISTINCT_NOOP) { @@ -121035,7 +121651,7 @@ __58: if !(int32((*DistinctCtx)(unsafe.Pointer(bp+148 /* &sDistinct */)).FeTnctType) == WHERE_DISTINCT_UNORDERED) { goto __140 } - explainTempTable(tls, pParse, ts+21993 /* "DISTINCT" */) + explainTempTable(tls, pParse, ts+22003 /* "DISTINCT" */) __140: ; @@ -121047,9 +121663,9 @@ __140: explainTempTable(tls, pParse, func() uintptr { if (*SortCtx)(unsafe.Pointer(bp+80 /* &sSort */)).FnOBSat > 0 { - return ts + 22229 /* "RIGHT PART OF OR..." */ + return ts + 22239 /* "RIGHT PART OF OR..." */ } - return ts + 22252 /* "ORDER BY" */ + return ts + 22262 /* "ORDER BY" */ }()) generateSortTail(tls, pParse, p, bp+80 /* &sSort */, (*ExprList)(unsafe.Pointer(pEList)).FnExpr, pDest) @@ -121182,7 +121798,7 @@ __7: if !(i < nCol) { goto __9 } - z = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(colv + uintptr(i)*4)))) + z = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(colv + uintptr(i)*4)))) if !(z == uintptr(0)) { goto __10 } @@ -121204,7 +121820,7 @@ __5: } Xsqlite3_free(tls, (*TabResult)(unsafe.Pointer(p)).FzErrMsg) (*TabResult)(unsafe.Pointer(p)).FzErrMsg = Xsqlite3_mprintf(tls, - ts+22261 /* "sqlite3_get_tabl..." */, 0) + ts+22271 /* "sqlite3_get_tabl..." */, 0) (*TabResult)(unsafe.Pointer(p)).Frc = SQLITE_ERROR return 1 __11: @@ -121303,7 +121919,7 @@ func Xsqlite3_get_table(tls *libc.TLS, db uintptr, zSql uintptr, pazResult uintp if (*TabResult)(unsafe.Pointer(bp+8 /* &res */)).FzErrMsg != 0 { if pzErrMsg != 0 { Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(pzErrMsg))) - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp, (*TabResult)(unsafe.Pointer(bp+8 /* &res */)).FzErrMsg)) + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp, (*TabResult)(unsafe.Pointer(bp+8 /* &res */)).FzErrMsg)) } Xsqlite3_free(tls, (*TabResult)(unsafe.Pointer(bp+8 /* &res */)).FzErrMsg) } @@ -121464,7 +122080,7 @@ func Xsqlite3BeginTrigger(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 if !((*Token)(unsafe.Pointer(pName2)).Fn > uint32(0)) { goto __3 } - Xsqlite3ErrorMsg(tls, pParse, ts+22326 /* "temporary trigge..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+22336 /* "temporary trigge..." */, 0) goto trigger_cleanup __3: ; @@ -121525,7 +122141,7 @@ __7: __8: ; - Xsqlite3FixInit(tls, bp+36 /* &sFix */, pParse, iDb, ts+22372 /* "trigger" */, *(*uintptr)(unsafe.Pointer(bp + 32 /* pName */))) + Xsqlite3FixInit(tls, bp+36 /* &sFix */, pParse, iDb, ts+22382 /* "trigger" */, *(*uintptr)(unsafe.Pointer(bp + 32 /* pName */))) if !(Xsqlite3FixSrcList(tls, bp+36 /* &sFix */, pTableName) != 0) { goto __9 } @@ -121543,7 +122159,7 @@ __10: if !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) { goto __11 } - Xsqlite3ErrorMsg(tls, pParse, ts+22380 /* "cannot create tr..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+22390 /* "cannot create tr..." */, 0) goto trigger_orphan_error __11: ; @@ -121558,7 +122174,7 @@ __11: goto trigger_cleanup __12: ; - if !(Xsqlite3CheckObjectName(tls, pParse, zName, ts+22372 /* "trigger" */, (*Table)(unsafe.Pointer(pTab)).FzName) != 0) { + if !(Xsqlite3CheckObjectName(tls, pParse, zName, ts+22382 /* "trigger" */, (*Table)(unsafe.Pointer(pTab)).FzName) != 0) { goto __13 } goto trigger_cleanup @@ -121574,7 +122190,7 @@ __13: if !(!(noErr != 0)) { goto __16 } - Xsqlite3ErrorMsg(tls, pParse, ts+22421 /* "trigger %T alrea..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 32 /* pName */)))) + Xsqlite3ErrorMsg(tls, pParse, ts+22431 /* "trigger %T alrea..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 32 /* pName */)))) goto __17 __16: ; @@ -121588,10 +122204,10 @@ __14: ; // Do not create a trigger on a system table - if !(Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+10361 /* "sqlite_" */, 7) == 0) { + if !(Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+10371 /* "sqlite_" */, 7) == 0) { goto __18 } - Xsqlite3ErrorMsg(tls, pParse, ts+22447 /* "cannot create tr..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+22457 /* "cannot create tr..." */, 0) goto trigger_cleanup __18: ; @@ -121601,12 +122217,12 @@ __18: if !(((*Table)(unsafe.Pointer(pTab)).FpSelect != 0) && (tr_tm != TK_INSTEAD)) { goto __19 } - Xsqlite3ErrorMsg(tls, pParse, ts+22485, /* "cannot create %s..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+22495, /* "cannot create %s..." */ libc.VaList(bp+8, func() uintptr { if tr_tm == TK_BEFORE { - return ts + 22522 /* "BEFORE" */ + return ts + 22532 /* "BEFORE" */ } - return ts + 22529 /* "AFTER" */ + return ts + 22539 /* "AFTER" */ }(), pTableName+8 /* &.a */)) goto trigger_orphan_error __19: @@ -121615,7 +122231,7 @@ __19: goto __20 } Xsqlite3ErrorMsg(tls, pParse, - ts+22535 /* "cannot create IN..." */, libc.VaList(bp+24, pTableName+8 /* &.a */)) + ts+22545 /* "cannot create IN..." */, libc.VaList(bp+24, pTableName+8 /* &.a */)) goto trigger_orphan_error __20: ; @@ -121645,9 +122261,9 @@ __23: ; if !(Xsqlite3AuthCheck(tls, pParse, SQLITE_INSERT, func() uintptr { if (!(0 != 0)) && (iTabDb == 1) { - return ts + 14190 /* "sqlite_temp_mast..." */ + return ts + 14200 /* "sqlite_temp_mast..." */ } - return ts + 7774 /* "sqlite_master" */ + return ts + 7784 /* "sqlite_master" */ }(), uintptr(0), zDb) != 0) { goto __24 } @@ -121781,7 +122397,7 @@ __2: __3: ; Xsqlite3TokenInit(tls, bp+40 /* &nameToken */, (*Trigger)(unsafe.Pointer(pTrig)).FzName) - Xsqlite3FixInit(tls, bp+48 /* &sFix */, pParse, iDb, ts+22372 /* "trigger" */, bp+40 /* &nameToken */) + Xsqlite3FixInit(tls, bp+48 /* &sFix */, pParse, iDb, ts+22382 /* "trigger" */, bp+40 /* &nameToken */) if !((Xsqlite3FixTriggerStep(tls, bp+48 /* &sFix */, (*Trigger)(unsafe.Pointer(pTrig)).Fstep_list) != 0) || (Xsqlite3FixExpr(tls, bp+48 /* &sFix */, (*Trigger)(unsafe.Pointer(pTrig)).FpWhen) != 0)) { goto __4 @@ -121818,13 +122434,13 @@ __8: Xsqlite3NestedParse(tls, pParse, - ts+22581, /* "INSERT INTO %Q.s..." */ + ts+22591, /* "INSERT INTO %Q.s..." */ libc.VaList(bp, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, zName, (*Trigger)(unsafe.Pointer(pTrig)).Ftable, z)) Xsqlite3DbFree(tls, db, z) Xsqlite3ChangeCookie(tls, pParse, iDb) Xsqlite3VdbeAddParseSchemaOp(tls, v, iDb, - Xsqlite3MPrintf(tls, db, ts+22656 /* "type='trigger' A..." */, libc.VaList(bp+32, zName)), uint16(0)) + Xsqlite3MPrintf(tls, db, ts+22666 /* "type='trigger' A..." */, libc.VaList(bp+32, zName)), uint16(0)) __7: ; __6: @@ -122090,7 +122706,7 @@ __5: if !(!(noErr != 0)) { goto __9 } - Xsqlite3ErrorMsg(tls, pParse, ts+22685 /* "no such trigger:..." */, libc.VaList(bp, pName+8 /* &.a */)) + Xsqlite3ErrorMsg(tls, pParse, ts+22695 /* "no such trigger:..." */, libc.VaList(bp, pName+8 /* &.a */)) goto __10 __9: Xsqlite3CodeVerifyNamedSchema(tls, pParse, zDb) @@ -122131,9 +122747,9 @@ func Xsqlite3DropTriggerPtr(tls *libc.TLS, pParse uintptr, pTrigger uintptr) { / var zDb uintptr = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*16)).FzDbSName var zTab uintptr = func() uintptr { if (!(0 != 0)) && (iDb == 1) { - return ts + 14190 /* "sqlite_temp_mast..." */ + return ts + 14200 /* "sqlite_temp_mast..." */ } - return ts + 7774 /* "sqlite_master" */ + return ts + 7784 /* "sqlite_master" */ }() if iDb == 1 { code = SQLITE_DROP_TEMP_TRIGGER @@ -122146,7 +122762,7 @@ func Xsqlite3DropTriggerPtr(tls *libc.TLS, pParse uintptr, pTrigger uintptr) { / // Generate code to destroy the database record of the trigger. if (libc.AssignUintptr(&v, Xsqlite3GetVdbe(tls, pParse))) != uintptr(0) { Xsqlite3NestedParse(tls, pParse, - ts+22705, /* "DELETE FROM %Q.s..." */ + ts+22715, /* "DELETE FROM %Q.s..." */ libc.VaList(bp, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, (*Trigger)(unsafe.Pointer(pTrigger)).FzName)) Xsqlite3ChangeCookie(tls, pParse, iDb) Xsqlite3VdbeAddOp4(tls, v, OP_DropTrigger, iDb, 0, 0, (*Trigger)(unsafe.Pointer(pTrigger)).FzName, 0) @@ -122265,12 +122881,12 @@ __9: goto __15 } Xsqlite3ErrorMsg(tls, pParse, - ts+22767, /* "%s RETURNING is ..." */ + ts+22777, /* "%s RETURNING is ..." */ libc.VaList(bp, func() uintptr { if op == TK_DELETE { - return ts + 22815 /* "DELETE" */ + return ts + 22825 /* "DELETE" */ } - return ts + 22822 /* "UPDATE" */ + return ts + 22832 /* "UPDATE" */ }())) __15: ; @@ -122366,7 +122982,7 @@ func isAsteriskTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr) int32 { /* sql if int32((*Expr)(unsafe.Pointer((*Expr)(unsafe.Pointer(pTerm)).FpRight)).Fop) != TK_ASTERISK { return 0 } - Xsqlite3ErrorMsg(tls, pParse, ts+22829 /* "RETURNING may no..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+22839 /* "RETURNING may no..." */, 0) return 1 } @@ -122507,7 +123123,7 @@ func codeTriggerProgram(tls *libc.TLS, pParse uintptr, pStepList uintptr, orconf if (*TriggerStep)(unsafe.Pointer(pStep)).FzSpan != 0 { Xsqlite3VdbeAddOp4(tls, v, OP_Trace, 0x7fffffff, 1, 0, - Xsqlite3MPrintf(tls, db, ts+7961 /* "-- %s" */, libc.VaList(bp, (*TriggerStep)(unsafe.Pointer(pStep)).FzSpan)), + Xsqlite3MPrintf(tls, db, ts+7971 /* "-- %s" */, libc.VaList(bp, (*TriggerStep)(unsafe.Pointer(pStep)).FzSpan)), -7) } @@ -122566,19 +123182,19 @@ func codeTriggerProgram(tls *libc.TLS, pParse uintptr, pStepList uintptr, orconf func onErrorText(tls *libc.TLS, onError int32) uintptr { /* sqlite3.c:140731:19: */ switch onError { case OE_Abort: - return ts + 22871 /* "abort" */ + return ts + 22881 /* "abort" */ case OE_Rollback: - return ts + 22877 /* "rollback" */ + return ts + 22887 /* "rollback" */ case OE_Fail: - return ts + 22886 /* "fail" */ + return ts + 22896 /* "fail" */ case OE_Replace: - return ts + 17337 /* "replace" */ + return ts + 17347 /* "replace" */ case OE_Ignore: - return ts + 22891 /* "ignore" */ + return ts + 22901 /* "ignore" */ case OE_Default: - return ts + 22898 /* "default" */ + return ts + 22908 /* "default" */ } - return ts + 22906 /* "n/a" */ + return ts + 22916 /* "n/a" */ } // Parse context structure pFrom has just been used to create a sub-vdbe @@ -122654,30 +123270,30 @@ func codeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintpt v = Xsqlite3GetVdbe(tls, pSubParse) if v != 0 { - Xsqlite3VdbeComment(tls, v, ts+22910 /* "Start: %s.%s (%s..." */, libc.VaList(bp, (*Trigger)(unsafe.Pointer(pTrigger)).FzName, onErrorText(tls, orconf), func() uintptr { + Xsqlite3VdbeComment(tls, v, ts+22920 /* "Start: %s.%s (%s..." */, libc.VaList(bp, (*Trigger)(unsafe.Pointer(pTrigger)).FzName, onErrorText(tls, orconf), func() uintptr { if int32((*Trigger)(unsafe.Pointer(pTrigger)).Ftr_tm) == TRIGGER_BEFORE { - return ts + 22522 /* "BEFORE" */ + return ts + 22532 /* "BEFORE" */ } - return ts + 22529 /* "AFTER" */ + return ts + 22539 /* "AFTER" */ }(), func() uintptr { if int32((*Trigger)(unsafe.Pointer(pTrigger)).Fop) == TK_UPDATE { - return ts + 22822 /* "UPDATE" */ + return ts + 22832 /* "UPDATE" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), func() uintptr { if int32((*Trigger)(unsafe.Pointer(pTrigger)).Fop) == TK_INSERT { - return ts + 22941 /* "INSERT" */ + return ts + 22951 /* "INSERT" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), func() uintptr { if int32((*Trigger)(unsafe.Pointer(pTrigger)).Fop) == TK_DELETE { - return ts + 22815 /* "DELETE" */ + return ts + 22825 /* "DELETE" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), (*Table)(unsafe.Pointer(pTab)).FzName)) if (*Trigger)(unsafe.Pointer(pTrigger)).FzName != 0 { Xsqlite3VdbeChangeP4(tls, v, -1, - Xsqlite3MPrintf(tls, db, ts+22948 /* "-- TRIGGER %s" */, libc.VaList(bp+56, (*Trigger)(unsafe.Pointer(pTrigger)).FzName)), -7) + Xsqlite3MPrintf(tls, db, ts+22958 /* "-- TRIGGER %s" */, libc.VaList(bp+56, (*Trigger)(unsafe.Pointer(pTrigger)).FzName)), -7) } // If one was specified, code the WHEN clause. If it evaluates to false @@ -122701,7 +123317,7 @@ func codeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintpt Xsqlite3VdbeResolveLabel(tls, v, iEndTrigger) } Xsqlite3VdbeAddOp0(tls, v, OP_Halt) - Xsqlite3VdbeComment(tls, v, ts+22962 /* "End: %s.%s" */, libc.VaList(bp+64, (*Trigger)(unsafe.Pointer(pTrigger)).FzName, onErrorText(tls, orconf))) + Xsqlite3VdbeComment(tls, v, ts+22972 /* "End: %s.%s" */, libc.VaList(bp+64, (*Trigger)(unsafe.Pointer(pTrigger)).FzName, onErrorText(tls, orconf))) transferParseError(tls, pParse, pSubParse) if (int32((*Sqlite3)(unsafe.Pointer(db)).FmallocFailed) == 0) && ((*Parse)(unsafe.Pointer(pParse)).FnErr == 0) { @@ -122768,11 +123384,11 @@ func Xsqlite3CodeRowTriggerDirect(tls *libc.TLS, pParse uintptr, p uintptr, pTab Xsqlite3VdbeAddOp4(tls, v, OP_Program, reg, ignoreJump, libc.PreIncInt32(&(*Parse)(unsafe.Pointer(pParse)).FnMem, 1), (*TriggerPrg)(unsafe.Pointer(pPrg)).FpProgram, -4) - Xsqlite3VdbeComment(tls, v, ts+22973 /* "Call: %s.%s" */, libc.VaList(bp, func() uintptr { + Xsqlite3VdbeComment(tls, v, ts+22983 /* "Call: %s.%s" */, libc.VaList(bp, func() uintptr { if (*Trigger)(unsafe.Pointer(p)).FzName != 0 { return (*Trigger)(unsafe.Pointer(p)).FzName } - return ts + 22985 /* "fkey" */ + return ts + 22995 /* "fkey" */ }(), onErrorText(tls, orconf))) // Set the P5 operand of the OP_Program instruction to non-zero if @@ -122935,7 +123551,7 @@ func Xsqlite3ColumnDefault(tls *libc.TLS, v uintptr, pTab uintptr, i int32, iReg *(*uintptr)(unsafe.Pointer(bp + 16 /* pValue */)) = uintptr(0) var enc U8 = (*Sqlite3)(unsafe.Pointer(Xsqlite3VdbeDb(tls, v))).Fenc var pCol uintptr = ((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(i)*20) - Xsqlite3VdbeComment(tls, v, ts+10230 /* "%s.%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, (*Column)(unsafe.Pointer(pCol)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+10240 /* "%s.%s" */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, (*Column)(unsafe.Pointer(pCol)).FzName)) Xsqlite3ValueFromExpr(tls, Xsqlite3VdbeDb(tls, v), (*Column)(unsafe.Pointer(pCol)).FpDflt, enc, uint8((*Column)(unsafe.Pointer(pCol)).Faffinity), bp+16 /* &pValue */) @@ -123391,7 +124007,7 @@ __25: } Xsqlite3ErrorMsg(tls, pParse, - ts+22990, /* "cannot UPDATE ge..." */ + ts+23000, /* "cannot UPDATE ge..." */ libc.VaList(bp, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(j)*20)).FzName)) goto update_cleanup __27: @@ -123423,7 +124039,7 @@ __21: iRowidExpr = i goto __30 __29: - Xsqlite3ErrorMsg(tls, pParse, ts+23026 /* "no such column: ..." */, libc.VaList(bp+8, (*ExprList_item)(unsafe.Pointer((pChanges+8 /* &.a */)+uintptr(i)*20)).FzEName)) + Xsqlite3ErrorMsg(tls, pParse, ts+23036 /* "no such column: ..." */, libc.VaList(bp+8, (*ExprList_item)(unsafe.Pointer((pChanges+8 /* &.a */)+uintptr(i)*20)).FzEName)) (*Parse)(unsafe.Pointer(pParse)).FcheckSchema = U8(1) goto update_cleanup __30: @@ -123434,7 +124050,7 @@ __28: rc = Xsqlite3AuthCheck(tls, pParse, SQLITE_UPDATE, (*Table)(unsafe.Pointer(pTab)).FzName, func() uintptr { if j < 0 { - return ts + 9796 /* "ROWID" */ + return ts + 9806 /* "ROWID" */ } return (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(j)*20)).FzName }(), @@ -124465,7 +125081,7 @@ __168: } Xsqlite3VdbeAddOp2(tls, v, OP_ChngCntRow, regRowCount, 1) Xsqlite3VdbeSetNumCols(tls, v, 1) - Xsqlite3VdbeSetColName(tls, v, 0, COLNAME_NAME, ts+23045 /* "rows updated" */, uintptr(0)) + Xsqlite3VdbeSetColName(tls, v, 0, COLNAME_NAME, ts+23055 /* "rows updated" */, uintptr(0)) __169: ; @@ -124852,10 +125468,10 @@ __1: if (nClause == 0) && ((*Upsert)(unsafe.Pointer(pUpsert)).FpNextUpsert == uintptr(0)) { *(*int8)(unsafe.Pointer(bp + 152 /* &zWhich[0] */)) = int8(0) } else { - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([16]int8{})), bp+152 /* &zWhich[0] */, ts+23058 /* "%r " */, libc.VaList(bp, (nClause+1))) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([16]int8{})), bp+152 /* &zWhich[0] */, ts+23068 /* "%r " */, libc.VaList(bp, (nClause+1))) } Xsqlite3ErrorMsg(tls, pParse, - ts+23062 /* "%sON CONFLICT cl..." */, libc.VaList(bp+8, bp+152 /* &zWhich[0] */)) + ts+23072 /* "%sON CONFLICT cl..." */, libc.VaList(bp+8, bp+152 /* &zWhich[0] */)) return SQLITE_ERROR } @@ -124925,7 +125541,7 @@ func Xsqlite3UpsertDoUpdate(tls *libc.TLS, pParse uintptr, pUpsert uintptr, pTab iDataCur = (*Upsert)(unsafe.Pointer(pUpsert)).FiDataCur pUpsert = Xsqlite3UpsertOfIndex(tls, pTop, pIdx) - Xsqlite3VdbeNoopComment(tls, v, ts+23135 /* "Begin DO UPDATE ..." */, 0) + Xsqlite3VdbeNoopComment(tls, v, ts+23145 /* "Begin DO UPDATE ..." */, 0) if (pIdx != 0) && (iCur != iDataCur) { if ((*Table)(unsafe.Pointer((pTab))).FtabFlags & U32(TF_WithoutRowid)) == U32(0) { var regRowid int32 = Xsqlite3GetTempReg(tls, pParse) @@ -124943,13 +125559,13 @@ func Xsqlite3UpsertDoUpdate(tls *libc.TLS, pParse uintptr, pUpsert uintptr, pTab k = int32(Xsqlite3TableColumnToIndex(tls, pIdx, *(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pPk)).FaiColumn + uintptr(i)*2)))) Xsqlite3VdbeAddOp3(tls, v, OP_Column, iCur, k, (iPk + i)) - Xsqlite3VdbeComment(tls, v, ts+10230 /* "%s.%s" */, libc.VaList(bp, (*Index)(unsafe.Pointer(pIdx)).FzName, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pPk)).FaiColumn + uintptr(i)*2)))*20)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+10240 /* "%s.%s" */, libc.VaList(bp, (*Index)(unsafe.Pointer(pIdx)).FzName, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pPk)).FaiColumn + uintptr(i)*2)))*20)).FzName)) } i = Xsqlite3VdbeAddOp4Int(tls, v, OP_Found, iDataCur, 0, iPk, nPk) Xsqlite3VdbeAddOp4(tls, v, OP_Halt, SQLITE_CORRUPT, OE_Abort, 0, - ts+14244 /* "corrupt database" */, -1) + ts+14254 /* "corrupt database" */, -1) Xsqlite3MayAbort(tls, pParse) Xsqlite3VdbeJumpHere(tls, v, i) } @@ -124965,7 +125581,7 @@ func Xsqlite3UpsertDoUpdate(tls *libc.TLS, pParse uintptr, pUpsert uintptr, pTab } Xsqlite3Update(tls, pParse, pSrc, Xsqlite3ExprListDup(tls, db, (*Upsert)(unsafe.Pointer(pUpsert)).FpUpsertSet, 0), Xsqlite3ExprDup(tls, db, (*Upsert)(unsafe.Pointer(pUpsert)).FpUpsertWhere, 0), OE_Abort, uintptr(0), uintptr(0), pUpsert) - Xsqlite3VdbeNoopComment(tls, v, ts+23161 /* "End DO UPDATE of..." */, 0) + Xsqlite3VdbeNoopComment(tls, v, ts+23171 /* "End DO UPDATE of..." */, 0) } //************* End of upsert.c ********************************************* @@ -125017,7 +125633,7 @@ func execSql(tls *libc.TLS, db uintptr, pzErrMsg uintptr, zSql uintptr) int32 { // then run VACUUM to get those statements to execute at inappropriate // times. if (zSubSql != 0) && - ((libc.Xstrncmp(tls, zSubSql, ts+23185 /* "CRE" */, uint32(3)) == 0) || (libc.Xstrncmp(tls, zSubSql, ts+23189 /* "INS" */, uint32(3)) == 0)) { + ((libc.Xstrncmp(tls, zSubSql, ts+23195 /* "CRE" */, uint32(3)) == 0) || (libc.Xstrncmp(tls, zSubSql, ts+23199 /* "INS" */, uint32(3)) == 0)) { rc = execSql(tls, db, pzErrMsg, zSubSql) if rc != SQLITE_OK { break @@ -125167,14 +125783,14 @@ func Xsqlite3RunVacuum(tls *libc.TLS, pzErrMsg uintptr, db uintptr, iDb int32, p if !(!(int32((*Sqlite3)(unsafe.Pointer(db)).FautoCommit) != 0)) { goto __1 } - Xsqlite3SetString(tls, pzErrMsg, db, ts+23193 /* "cannot VACUUM fr..." */) + Xsqlite3SetString(tls, pzErrMsg, db, ts+23203 /* "cannot VACUUM fr..." */) return SQLITE_ERROR // IMP: R-12218-18073 __1: ; if !((*Sqlite3)(unsafe.Pointer(db)).FnVdbeActive > 1) { goto __2 } - Xsqlite3SetString(tls, pzErrMsg, db, ts+23233 /* "cannot VACUUM - ..." */) + Xsqlite3SetString(tls, pzErrMsg, db, ts+23243 /* "cannot VACUUM - ..." */) return SQLITE_ERROR // IMP: R-15610-35227 __2: ; @@ -125185,7 +125801,7 @@ __2: if !(Xsqlite3_value_type(tls, pOut) != SQLITE_TEXT) { goto __5 } - Xsqlite3SetString(tls, pzErrMsg, db, ts+23276 /* "non-text filenam..." */) + Xsqlite3SetString(tls, pzErrMsg, db, ts+23286 /* "non-text filenam..." */) return SQLITE_ERROR __5: ; @@ -125194,7 +125810,7 @@ __5: *(*uint32)(unsafe.Pointer(db + 56 /* &.openFlags */)) |= (uint32(SQLITE_OPEN_CREATE | SQLITE_OPEN_READWRITE)) goto __4 __3: - zOut = ts + 915 /* "" */ + zOut = ts + 925 /* "" */ __4: ; @@ -125230,7 +125846,7 @@ __4: // time to parse and run the PRAGMA to turn journalling off than it does // to write the journal header file. nDb = (*Sqlite3)(unsafe.Pointer(db)).FnDb - rc = execSqlF(tls, db, pzErrMsg, ts+23294 /* "ATTACH %Q AS vac..." */, libc.VaList(bp, zOut)) + rc = execSqlF(tls, db, pzErrMsg, ts+23304 /* "ATTACH %Q AS vac..." */, libc.VaList(bp, zOut)) (*Sqlite3)(unsafe.Pointer(db)).FopenFlags = saved_openFlags if !(rc != SQLITE_OK) { goto __6 @@ -125251,7 +125867,7 @@ __6: goto __8 } rc = SQLITE_ERROR - Xsqlite3SetString(tls, pzErrMsg, db, ts+23317 /* "output file alre..." */) + Xsqlite3SetString(tls, pzErrMsg, db, ts+23327 /* "output file alre..." */) goto end_of_vacuum __8: ; @@ -125267,7 +125883,7 @@ __7: // Begin a transaction and take an exclusive lock on the main database // file. This is done before the sqlite3BtreeGetPageSize(pMain) call below, // to ensure that we do not try to change the page-size on a WAL database. - rc = execSql(tls, db, pzErrMsg, ts+16525 /* "BEGIN" */) + rc = execSql(tls, db, pzErrMsg, ts+16535 /* "BEGIN" */) if !(rc != SQLITE_OK) { goto __9 } @@ -125318,7 +125934,7 @@ __12: (*Sqlite3)(unsafe.Pointer(db)).Finit.FiDb = U8(nDb) // force new CREATE statements into vacuum_db rc = execSqlF(tls, db, pzErrMsg, - ts+23344, /* "SELECT sql FROM ..." */ + ts+23354, /* "SELECT sql FROM ..." */ libc.VaList(bp+8, zDbMain)) if !(rc != SQLITE_OK) { goto __13 @@ -125328,7 +125944,7 @@ __13: ; rc = execSqlF(tls, db, pzErrMsg, - ts+23452, /* "SELECT sql FROM ..." */ + ts+23462, /* "SELECT sql FROM ..." */ libc.VaList(bp+16, zDbMain)) if !(rc != SQLITE_OK) { goto __14 @@ -125343,7 +125959,7 @@ __14: // the contents to the temporary database. rc = execSqlF(tls, db, pzErrMsg, - ts+23506, /* "SELECT'INSERT IN..." */ + ts+23516, /* "SELECT'INSERT IN..." */ libc.VaList(bp+24, zDbMain)) *(*U32)(unsafe.Pointer(db + 24 /* &.mDbFlags */)) &= (libc.Uint32FromInt32(libc.CplInt32(DBFLAG_Vacuum))) @@ -125360,7 +125976,7 @@ __15: // from the schema table. rc = execSqlF(tls, db, pzErrMsg, - ts+23657, /* "INSERT INTO vacu..." */ + ts+23667, /* "INSERT INTO vacu..." */ libc.VaList(bp+32, zDbMain)) if !(rc != 0) { goto __16 @@ -125528,7 +126144,7 @@ func createModule(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAu Xsqlite3VtabCreateModule(tls, db, zName, pModule, pAux, xDestroy) rc = Xsqlite3ApiExit(tls, db, rc) if (rc != SQLITE_OK) && (xDestroy != 0) { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDestroy)))(tls, pAux) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDestroy})).f(tls, pAux) } Xsqlite3_mutex_leave(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) return rc @@ -125572,7 +126188,7 @@ func Xsqlite3VtabModuleUnref(tls *libc.TLS, db uintptr, pMod uintptr) { /* sqlit (*Module)(unsafe.Pointer(pMod)).FnRefModule-- if (*Module)(unsafe.Pointer(pMod)).FnRefModule == 0 { if (*Module)(unsafe.Pointer(pMod)).FxDestroy != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pMod + 16 /* &.xDestroy */))))(tls, (*Module)(unsafe.Pointer(pMod)).FpAux) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Module)(unsafe.Pointer(pMod)).FxDestroy})).f(tls, (*Module)(unsafe.Pointer(pMod)).FpAux) } Xsqlite3DbFree(tls, db, pMod) @@ -125610,7 +126226,9 @@ func Xsqlite3VtabUnlock(tls *libc.TLS, pVTab uintptr) { /* sqlite3.c:143352:21: var p uintptr = (*VTable)(unsafe.Pointer(pVTab)).FpVtab Xsqlite3VtabModuleUnref(tls, (*VTable)(unsafe.Pointer(pVTab)).Fdb, (*VTable)(unsafe.Pointer(pVTab)).FpMod) if p != 0 { - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_vtab)(unsafe.Pointer(p)).FpModule + 16 /* &.xDisconnect */))))(tls, p) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer((*Sqlite3_vtab)(unsafe.Pointer(p)).FpModule)).FxDisconnect})).f(tls, p) } Xsqlite3DbFree(tls, db, pVTab) } @@ -125740,7 +126358,7 @@ func addModuleArgument(tls *libc.TLS, pParse uintptr, pTable uintptr, zArg uintp var azModuleArg uintptr var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if ((*Table)(unsafe.Pointer(pTable)).FnModuleArg + 3) >= *(*int32)(unsafe.Pointer((db + 108 /* &.aLimit */) + 2*4)) { - Xsqlite3ErrorMsg(tls, pParse, ts+14474 /* "too many columns..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTable)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+14484 /* "too many columns..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTable)).FzName)) } azModuleArg = Xsqlite3DbRealloc(tls, db, (*Table)(unsafe.Pointer(pTable)).FazModuleArg, uint64(nBytes)) if azModuleArg == uintptr(0) { @@ -125834,7 +126452,7 @@ func Xsqlite3VtabFinishParse(tls *libc.TLS, pParse uintptr, pEnd uintptr) { /* s if pEnd != 0 { (*Parse)(unsafe.Pointer(pParse)).FsNameToken.Fn = (uint32(((int32((*Token)(unsafe.Pointer(pEnd)).Fz) - int32((*Parse)(unsafe.Pointer(pParse)).FsNameToken.Fz)) / 1)) + (*Token)(unsafe.Pointer(pEnd)).Fn) } - zStmt = Xsqlite3MPrintf(tls, db, ts+23787 /* "CREATE VIRTUAL T..." */, libc.VaList(bp, (pParse+180 /* &.sNameToken */))) + zStmt = Xsqlite3MPrintf(tls, db, ts+23797 /* "CREATE VIRTUAL T..." */, libc.VaList(bp, (pParse+180 /* &.sNameToken */))) // A slot for the record has already been allocated in the // schema table. We just need to update that slot with all @@ -125846,7 +126464,7 @@ func Xsqlite3VtabFinishParse(tls *libc.TLS, pParse uintptr, pEnd uintptr) { /* s iDb = Xsqlite3SchemaToIndex(tls, db, (*Table)(unsafe.Pointer(pTab)).FpSchema) Xsqlite3NestedParse(tls, pParse, - ts+23811, /* "UPDATE %Q.sqlite..." */ + ts+23821, /* "UPDATE %Q.sqlite..." */ libc.VaList(bp+8, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*16)).FzDbSName, (*Table)(unsafe.Pointer(pTab)).FzName, (*Table)(unsafe.Pointer(pTab)).FzName, @@ -125856,7 +126474,7 @@ func Xsqlite3VtabFinishParse(tls *libc.TLS, pParse uintptr, pEnd uintptr) { /* s Xsqlite3ChangeCookie(tls, pParse, iDb) Xsqlite3VdbeAddOp0(tls, v, OP_Expire) - zWhere = Xsqlite3MPrintf(tls, db, ts+23910 /* "name=%Q AND sql=..." */, libc.VaList(bp+48, (*Table)(unsafe.Pointer(pTab)).FzName, zStmt)) + zWhere = Xsqlite3MPrintf(tls, db, ts+23920 /* "name=%Q AND sql=..." */, libc.VaList(bp+48, (*Table)(unsafe.Pointer(pTab)).FzName, zStmt)) Xsqlite3VdbeAddParseSchemaOp(tls, v, iDb, zWhere, uint16(0)) Xsqlite3DbFree(tls, db, zStmt) @@ -125921,7 +126539,7 @@ func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, for pCtx = (*Sqlite3)(unsafe.Pointer(db)).FpVtabCtx; pCtx != 0; pCtx = (*VtabCtx)(unsafe.Pointer(pCtx)).FpPrior { if (*VtabCtx)(unsafe.Pointer(pCtx)).FpTab == pTab { *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, - ts+23929 /* "vtable construct..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) + ts+23939 /* "vtable construct..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName)) return SQLITE_LOCKED } } @@ -125951,7 +126569,9 @@ func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, (*VtabCtx)(unsafe.Pointer(bp + 32 /* &sCtx */)).FpPrior = (*Sqlite3)(unsafe.Pointer(db)).FpVtabCtx (*VtabCtx)(unsafe.Pointer(bp + 32 /* &sCtx */)).FbDeclared = 0 (*Sqlite3)(unsafe.Pointer(db)).FpVtabCtx = bp + 32 /* &sCtx */ - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(&xConstruct)))(tls, db, (*Module)(unsafe.Pointer(pMod)).FpAux, nArg, azArg, (pVTable + 8 /* &.pVtab */), bp+48 /* &zErr */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xConstruct})).f(tls, db, (*Module)(unsafe.Pointer(pMod)).FpAux, nArg, azArg, (pVTable + 8 /* &.pVtab */), bp+48 /* &zErr */) (*Sqlite3)(unsafe.Pointer(db)).FpVtabCtx = (*VtabCtx)(unsafe.Pointer(bp + 32 /* &sCtx */)).FpPrior if rc == SQLITE_NOMEM { Xsqlite3OomFault(tls, db) @@ -125959,9 +126579,9 @@ func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, if SQLITE_OK != rc { if *(*uintptr)(unsafe.Pointer(bp + 48 /* zErr */)) == uintptr(0) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, ts+23971 /* "vtable construct..." */, libc.VaList(bp+8, zModuleName)) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, ts+23981 /* "vtable construct..." */, libc.VaList(bp+8, zModuleName)) } else { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, ts+951 /* "%s" */, libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer(bp + 48 /* zErr */)))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, ts+961 /* "%s" */, libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer(bp + 48 /* zErr */)))) Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 48 /* zErr */))) } Xsqlite3DbFree(tls, db, pVTable) @@ -125973,7 +126593,7 @@ func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, (*Module)(unsafe.Pointer(pMod)).FnRefModule++ (*VTable)(unsafe.Pointer(pVTable)).FnRef = 1 if (*VtabCtx)(unsafe.Pointer(bp+32 /* &sCtx */)).FbDeclared == 0 { - var zFormat uintptr = ts + 24001 /* "vtable construct..." */ + var zFormat uintptr = ts + 24011 /* "vtable construct..." */ *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, zFormat, libc.VaList(bp+24, (*Table)(unsafe.Pointer(pTab)).FzName)) Xsqlite3VtabUnlock(tls, pVTable) rc = SQLITE_ERROR @@ -125989,12 +126609,12 @@ func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, (*Table)(unsafe.Pointer(pTab)).FpVTable = pVTable for iCol = 0; iCol < int32((*Table)(unsafe.Pointer(pTab)).FnCol); iCol++ { - var zType uintptr = Xsqlite3ColumnType(tls, ((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(iCol)*20), ts+915 /* "" */) + var zType uintptr = Xsqlite3ColumnType(tls, ((*Table)(unsafe.Pointer(pTab)).FaCol + uintptr(iCol)*20), ts+925 /* "" */) var nType int32 var i int32 = 0 nType = Xsqlite3Strlen30(tls, zType) for i = 0; i < nType; i++ { - if ((0 == Xsqlite3_strnicmp(tls, ts+18107 /* "hidden" */, (zType+uintptr(i)), 6)) && + if ((0 == Xsqlite3_strnicmp(tls, ts+18117 /* "hidden" */, (zType+uintptr(i)), 6)) && ((i == 0) || (int32(*(*int8)(unsafe.Pointer(zType + uintptr((i - 1))))) == ' '))) && ((int32(*(*int8)(unsafe.Pointer(zType + uintptr((i + 6))))) == 0) || (int32(*(*int8)(unsafe.Pointer(zType + uintptr((i + 6))))) == ' ')) { break @@ -126053,13 +126673,13 @@ func Xsqlite3VtabCallConnect(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 if !(pMod != 0) { var zModule uintptr = *(*uintptr)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FazModuleArg)) - Xsqlite3ErrorMsg(tls, pParse, ts+24047 /* "no such module: ..." */, libc.VaList(bp, zModule)) + Xsqlite3ErrorMsg(tls, pParse, ts+24057 /* "no such module: ..." */, libc.VaList(bp, zModule)) rc = SQLITE_ERROR } else { *(*uintptr)(unsafe.Pointer(bp + 16 /* zErr */)) = uintptr(0) rc = vtabCallConstructor(tls, db, pTab, pMod, (*Sqlite3_module)(unsafe.Pointer((*Module)(unsafe.Pointer(pMod)).FpModule)).FxConnect, bp+16 /* &zErr */) if rc != SQLITE_OK { - Xsqlite3ErrorMsg(tls, pParse, ts+951 /* "%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 16 /* zErr */)))) + Xsqlite3ErrorMsg(tls, pParse, ts+961 /* "%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 16 /* zErr */)))) (*Parse)(unsafe.Pointer(pParse)).Frc = rc } Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 16 /* zErr */))) @@ -126121,7 +126741,7 @@ func Xsqlite3VtabCallCreate(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr, // invoke it now. If the module has not been registered, return an // error. Otherwise, do nothing. if ((pMod == uintptr(0)) || ((*Sqlite3_module)(unsafe.Pointer((*Module)(unsafe.Pointer(pMod)).FpModule)).FxCreate == uintptr(0))) || ((*Sqlite3_module)(unsafe.Pointer((*Module)(unsafe.Pointer(pMod)).FpModule)).FxDestroy == uintptr(0)) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, ts+24047 /* "no such module: ..." */, libc.VaList(bp, zMod)) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3MPrintf(tls, db, ts+24057 /* "no such module: ..." */, libc.VaList(bp, zMod)) rc = SQLITE_ERROR } else { rc = vtabCallConstructor(tls, db, pTab, pMod, (*Sqlite3_module)(unsafe.Pointer((*Module)(unsafe.Pointer(pMod)).FpModule)).FxCreate, pzErr) @@ -126198,7 +126818,7 @@ func Xsqlite3_declare_vtab(tls *libc.TLS, db uintptr, zCreateTable uintptr) int3 } else { Xsqlite3ErrorWithMsg(tls, db, SQLITE_ERROR, func() uintptr { if *(*uintptr)(unsafe.Pointer(bp + 280 /* zErr */)) != 0 { - return ts + 951 /* "%s" */ + return ts + 961 /* "%s" */ } return uintptr(0) }(), libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 280 /* zErr */)))) @@ -126244,7 +126864,9 @@ func Xsqlite3VtabCallDestroy(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr) } (*Table)(unsafe.Pointer(pTab)).FnTabRef++ - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(&xDestroy)))(tls, (*VTable)(unsafe.Pointer(p)).FpVtab) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xDestroy})).f(tls, (*VTable)(unsafe.Pointer(p)).FpVtab) // Remove the sqlite3_vtab* from the aVTrans[] array, if applicable if rc == SQLITE_OK { @@ -126276,7 +126898,9 @@ func callFinaliser(tls *libc.TLS, db uintptr, offset int32) { /* sqlite3.c:14407 var x uintptr x = *(*uintptr)(unsafe.Pointer(((*Sqlite3_vtab)(unsafe.Pointer(p)).FpModule + uintptr(offset)))) if x != 0 { - (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(&x)))(tls, p) + (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{x})).f(tls, p) } } (*VTable)(unsafe.Pointer(pVTab)).FiSavepoint = 0 @@ -126302,7 +126926,9 @@ func Xsqlite3VtabSync(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c var x uintptr var pVtab uintptr = (*VTable)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(aVTrans + uintptr(i)*4)))).FpVtab if (pVtab != 0) && ((libc.AssignUintptr(&x, (*Sqlite3_module)(unsafe.Pointer((*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FpModule)).FxSync)) != uintptr(0)) { - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(&x)))(tls, pVtab) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{x})).f(tls, pVtab) Xsqlite3VtabImportErrmsg(tls, p, pVtab) } } @@ -126360,13 +126986,17 @@ func Xsqlite3VtabBegin(tls *libc.TLS, db uintptr, pVTab uintptr) int32 { /* sqli // sqlite3.aVTrans[] array. rc = growVTrans(tls, db) if rc == SQLITE_OK { - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pModule + 56 /* &.xBegin */))))(tls, (*VTable)(unsafe.Pointer(pVTab)).FpVtab) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule)).FxBegin})).f(tls, (*VTable)(unsafe.Pointer(pVTab)).FpVtab) if rc == SQLITE_OK { var iSvpt int32 = ((*Sqlite3)(unsafe.Pointer(db)).FnStatement + (*Sqlite3)(unsafe.Pointer(db)).FnSavepoint) addToVTrans(tls, db, pVTab) if (iSvpt != 0) && ((*Sqlite3_module)(unsafe.Pointer(pModule)).FxSavepoint != 0) { (*VTable)(unsafe.Pointer(pVTab)).FiSavepoint = iSvpt - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pModule + 80 /* &.xSavepoint */))))(tls, (*VTable)(unsafe.Pointer(pVTab)).FpVtab, (iSvpt - 1)) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pModule)).FxSavepoint})).f(tls, (*VTable)(unsafe.Pointer(pVTab)).FpVtab, (iSvpt - 1)) } } } @@ -126413,7 +127043,9 @@ func Xsqlite3VtabSavepoint(tls *libc.TLS, db uintptr, op int32, iSavepoint int32 break } if (xMethod != 0) && ((*VTable)(unsafe.Pointer(pVTab)).FiSavepoint > iSavepoint) { - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(&xMethod)))(tls, (*VTable)(unsafe.Pointer(pVTab)).FpVtab, iSavepoint) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xMethod})).f(tls, (*VTable)(unsafe.Pointer(pVTab)).FpVtab, iSavepoint) } Xsqlite3VtabUnlock(tls, pVTab) } @@ -126472,7 +127104,9 @@ func Xsqlite3VtabOverloadFunction(tls *libc.TLS, db uintptr, pDef uintptr, nArg // Though undocumented, we have historically always invoked xFindFunction // with an all lower-case function name. Continue in this tradition to // avoid any chance of an incompatibility. - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pMod + 72 /* &.xFindFunction */))))(tls, pVtab, nArg, (*FuncDef)(unsafe.Pointer(pDef)).FzName, bp /* &xSFunc */, bp+4 /* &pArg */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pMod)).FxFindFunction})).f(tls, pVtab, nArg, (*FuncDef)(unsafe.Pointer(pDef)).FzName, bp /* &xSFunc */, bp+4 /* &pArg */) if rc == 0 { return pDef } @@ -126570,7 +127204,7 @@ func Xsqlite3VtabEponymousTableInit(tls *libc.TLS, pParse uintptr, pMod uintptr) addModuleArgument(tls, pParse, pTab, Xsqlite3DbStrDup(tls, db, (*Table)(unsafe.Pointer(pTab)).FzName)) rc = vtabCallConstructor(tls, db, pTab, pMod, (*Sqlite3_module)(unsafe.Pointer(pModule)).FxConnect, bp+8 /* &zErr */) if rc != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+951 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErr */)))) + Xsqlite3ErrorMsg(tls, pParse, ts+961 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErr */)))) Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErr */))) Xsqlite3VtabEponymousTableClear(tls, db, pMod) return 0 @@ -126700,15 +127334,15 @@ func Xsqlite3_vtab_config(tls *libc.TLS, db uintptr, op int32, va uintptr) int32 // Forward references type WhereClause1 = struct { - FpWInfo uintptr - FpOuter uintptr - Fop U8 - FhasOr U8 - _ [2]byte - FnTerm int32 - FnSlot int32 - Fa uintptr - FaStatic [8]WhereTerm + FpWInfo uintptr + FpOuter uintptr + Fop U8 + FhasOr U8 + F__ccgo_pad1 [2]byte + FnTerm int32 + FnSlot int32 + Fa uintptr + FaStatic [8]WhereTerm } /* sqlite3.c:14936:9 */ //************* End of vtab.c *********************************************** @@ -126816,7 +127450,7 @@ type WhereLoop1 = struct { FnLTerm U16 FnSkip U16 FnLSlot U16 - _ [2]byte + F__ccgo_pad1 [2]byte FaLTerm uintptr FpNextLoop uintptr FaLTermSpace [3]uintptr @@ -126824,14 +127458,14 @@ type WhereLoop1 = struct { type WhereLoop = WhereLoop1 /* sqlite3.c:144522:26 */ type WherePath1 = struct { - FmaskLoop Bitmask - FrevLoop Bitmask - FnRow LogEst - FrCost LogEst - FrUnsorted LogEst - FisOrdered I8 - _ [1]byte - FaLoop uintptr + FmaskLoop Bitmask + FrevLoop Bitmask + FnRow LogEst + FrCost LogEst + FrUnsorted LogEst + FisOrdered I8 + F__ccgo_pad1 [1]byte + FaLoop uintptr } /* sqlite3.c:144523:9 */ type WherePath = WherePath1 /* sqlite3.c:144523:26 */ @@ -126857,34 +127491,34 @@ type WhereTerm1 = struct { type WhereTerm = WhereTerm1 /* sqlite3.c:144524:26 */ type WhereLoopBuilder1 = struct { - FpWInfo uintptr - FpWC uintptr - FpOrderBy uintptr - FpNew uintptr - FpOrSet uintptr - FpRec uintptr - FnRecValid int32 - FbldFlags1 uint8 - FbldFlags2 uint8 - _ [2]byte - FiPlanLimit uint32 + FpWInfo uintptr + FpWC uintptr + FpOrderBy uintptr + FpNew uintptr + FpOrSet uintptr + FpRec uintptr + FnRecValid int32 + FbldFlags1 uint8 + FbldFlags2 uint8 + F__ccgo_pad1 [2]byte + FiPlanLimit uint32 } /* sqlite3.c:144525:9 */ type WhereLoopBuilder = WhereLoopBuilder1 /* sqlite3.c:144525:33 */ type WhereScan1 = struct { - FpOrigWC uintptr - FpWC uintptr - FzCollName uintptr - FpIdxExpr uintptr - Fidxaff int8 - FnEquiv uint8 - FiEquiv uint8 - _ [1]byte - FopMask U32 - Fk int32 - FaiCur [11]int32 - FaiColumn [11]I16 - _ [2]byte + FpOrigWC uintptr + FpWC uintptr + FzCollName uintptr + FpIdxExpr uintptr + Fidxaff int8 + FnEquiv uint8 + FiEquiv uint8 + F__ccgo_pad1 [1]byte + FopMask U32 + Fk int32 + FaiCur [11]int32 + FaiColumn [11]I16 + F__ccgo_pad2 [2]byte } /* sqlite3.c:144526:9 */ type WhereScan = WhereScan1 /* sqlite3.c:144526:26 */ @@ -126896,9 +127530,9 @@ type WhereOrCost1 = struct { type WhereOrCost = WhereOrCost1 /* sqlite3.c:144527:28 */ type WhereOrSet1 = struct { - Fn U16 - _ [2]byte - Fa [3]WhereOrCost + Fn U16 + F__ccgo_pad1 [2]byte + Fa [3]WhereOrCost } /* sqlite3.c:144525:9 */ type WhereOrSet = WhereOrSet1 /* sqlite3.c:144528:27 */ @@ -126917,12 +127551,12 @@ type WhereOrSet = WhereOrSet1 /* sqlite3.c:144528:27 */ // the loop nested order, with WhereInfo.a[0] being the outer loop and // WhereInfo.a[WhereInfo.nLevel-1] being the inner loop. type InLoop = struct { - FiCur int32 - FaddrInTop int32 - FiBase int32 - FnPrefix int32 - FeEndLoopOp U8 - _ [3]byte + FiCur int32 + FaddrInTop int32 + FiBase int32 + FnPrefix int32 + FeEndLoopOp U8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:144567:7 */ // Allowed values for WhereLoopBuider.bldFlags @@ -126996,10 +127630,10 @@ type WhereExprMod = WhereExprMod1 /* sqlite3.c:144931:29 */ func explainIndexColumnName(tls *libc.TLS, pIdx uintptr, i int32) uintptr { /* sqlite3.c:145112:19: */ i = int32(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(i)*2))) if i == (-2) { - return ts + 24066 /* "" */ + return ts + 24076 /* "" */ } if i == (-1) { - return ts + 10297 /* "rowid" */ + return ts + 10307 /* "rowid" */ } return (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FpTable)).FaCol + uintptr(i)*20)).FzName } @@ -127014,35 +127648,35 @@ func explainAppendTerm(tls *libc.TLS, pStr uintptr, pIdx uintptr, nTerm int32, i var i int32 if bAnd != 0 { - Xsqlite3_str_append(tls, pStr, ts+24073 /* " AND " */, 5) + Xsqlite3_str_append(tls, pStr, ts+24083 /* " AND " */, 5) } if nTerm > 1 { - Xsqlite3_str_append(tls, pStr, ts+24079 /* "(" */, 1) + Xsqlite3_str_append(tls, pStr, ts+24089 /* "(" */, 1) } for i = 0; i < nTerm; i++ { if i != 0 { - Xsqlite3_str_append(tls, pStr, ts+14855 /* "," */, 1) + Xsqlite3_str_append(tls, pStr, ts+14865 /* "," */, 1) } Xsqlite3_str_appendall(tls, pStr, explainIndexColumnName(tls, pIdx, (iTerm+i))) } if nTerm > 1 { - Xsqlite3_str_append(tls, pStr, ts+6887 /* ")" */, 1) + Xsqlite3_str_append(tls, pStr, ts+6897 /* ")" */, 1) } Xsqlite3_str_append(tls, pStr, zOp, 1) if nTerm > 1 { - Xsqlite3_str_append(tls, pStr, ts+24079 /* "(" */, 1) + Xsqlite3_str_append(tls, pStr, ts+24089 /* "(" */, 1) } for i = 0; i < nTerm; i++ { if i != 0 { - Xsqlite3_str_append(tls, pStr, ts+14855 /* "," */, 1) + Xsqlite3_str_append(tls, pStr, ts+14865 /* "," */, 1) } - Xsqlite3_str_append(tls, pStr, ts+6940 /* "?" */, 1) + Xsqlite3_str_append(tls, pStr, ts+6950 /* "?" */, 1) } if nTerm > 1 { - Xsqlite3_str_append(tls, pStr, ts+6887 /* ")" */, 1) + Xsqlite3_str_append(tls, pStr, ts+6897 /* ")" */, 1) } } @@ -127071,29 +127705,29 @@ func explainIndexRange(tls *libc.TLS, pStr uintptr, pLoop uintptr) { /* sqlite3. if (int32(nEq) == 0) && (((*WhereLoop)(unsafe.Pointer(pLoop)).FwsFlags & (U32(WHERE_BTM_LIMIT | WHERE_TOP_LIMIT))) == U32(0)) { return } - Xsqlite3_str_append(tls, pStr, ts+24081 /* " (" */, 2) + Xsqlite3_str_append(tls, pStr, ts+24091 /* " (" */, 2) for i = 0; i < int32(nEq); i++ { var z uintptr = explainIndexColumnName(tls, pIndex, i) if i != 0 { - Xsqlite3_str_append(tls, pStr, ts+24073 /* " AND " */, 5) + Xsqlite3_str_append(tls, pStr, ts+24083 /* " AND " */, 5) } Xsqlite3_str_appendf(tls, pStr, func() uintptr { if i >= int32(nSkip) { - return ts + 24084 /* "%s=?" */ + return ts + 24094 /* "%s=?" */ } - return ts + 24089 /* "ANY(%s)" */ + return ts + 24099 /* "ANY(%s)" */ }(), libc.VaList(bp, z)) } j = i if ((*WhereLoop)(unsafe.Pointer(pLoop)).FwsFlags & U32(WHERE_BTM_LIMIT)) != 0 { - explainAppendTerm(tls, pStr, pIndex, int32(*(*U16)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.btree */ + 2 /* &.nBtm */))), j, i, ts+24097 /* ">" */) + explainAppendTerm(tls, pStr, pIndex, int32(*(*U16)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.btree */ + 2 /* &.nBtm */))), j, i, ts+24107 /* ">" */) i = 1 } if ((*WhereLoop)(unsafe.Pointer(pLoop)).FwsFlags & U32(WHERE_TOP_LIMIT)) != 0 { - explainAppendTerm(tls, pStr, pIndex, int32(*(*U16)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.btree */ + 4 /* &.nTop */))), j, i, ts+24099 /* "<" */) + explainAppendTerm(tls, pStr, pIndex, int32(*(*U16)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.btree */ + 4 /* &.nTop */))), j, i, ts+24109 /* "<" */) } - Xsqlite3_str_append(tls, pStr, ts+6887 /* ")" */, 1) + Xsqlite3_str_append(tls, pStr, ts+6897 /* ")" */, 1) } // This function is a no-op unless currently processing an EXPLAIN QUERY PLAN @@ -127138,11 +127772,11 @@ func Xsqlite3WhereExplainOneScan(tls *libc.TLS, pParse uintptr, pTabList uintptr Xsqlite3StrAccumInit(tls, bp+48 /* &str */, db, bp+72 /* &zBuf[0] */, int32(unsafe.Sizeof([100]int8{})), SQLITE_MAX_LENGTH) (*StrAccum)(unsafe.Pointer(bp + 48 /* &str */)).FprintfFlags = U8(SQLITE_PRINTF_INTERNAL) - Xsqlite3_str_appendf(tls, bp+48 /* &str */, ts+24101 /* "%s %S" */, libc.VaList(bp, func() uintptr { + Xsqlite3_str_appendf(tls, bp+48 /* &str */, ts+24111 /* "%s %S" */, libc.VaList(bp, func() uintptr { if isSearch != 0 { - return ts + 24107 /* "SEARCH" */ + return ts + 24117 /* "SEARCH" */ } - return ts + 24114 /* "SCAN" */ + return ts + 24124 /* "SCAN" */ }(), pItem)) if (flags & (U32(WHERE_IPK | WHERE_VIRTUALTABLE))) == U32(0) { var zFmt uintptr = uintptr(0) @@ -127152,38 +127786,38 @@ func Xsqlite3WhereExplainOneScan(tls *libc.TLS, pParse uintptr, pTabList uintptr if !(((*Table)(unsafe.Pointer(((*SrcItem)(unsafe.Pointer(pItem)).FpTab))).FtabFlags & U32(TF_WithoutRowid)) == U32(0)) && ((int32(*(*uint16)(unsafe.Pointer((pIdx) + 56 /* &.idxType */)) & 0x3 >> 0)) == SQLITE_IDXTYPE_PRIMARYKEY) { if isSearch != 0 { - zFmt = ts + 12974 /* "PRIMARY KEY" */ + zFmt = ts + 12984 /* "PRIMARY KEY" */ } } else if (flags & U32(WHERE_PARTIALIDX)) != 0 { - zFmt = ts + 24119 /* "AUTOMATIC PARTIA..." */ + zFmt = ts + 24129 /* "AUTOMATIC PARTIA..." */ } else if (flags & U32(WHERE_AUTO_INDEX)) != 0 { - zFmt = ts + 24152 /* "AUTOMATIC COVERI..." */ + zFmt = ts + 24162 /* "AUTOMATIC COVERI..." */ } else if (flags & U32(WHERE_IDX_ONLY)) != 0 { - zFmt = ts + 24177 /* "COVERING INDEX %..." */ + zFmt = ts + 24187 /* "COVERING INDEX %..." */ } else { - zFmt = ts + 24195 /* "INDEX %s" */ + zFmt = ts + 24205 /* "INDEX %s" */ } if zFmt != 0 { - Xsqlite3_str_append(tls, bp+48 /* &str */, ts+24204 /* " USING " */, 7) + Xsqlite3_str_append(tls, bp+48 /* &str */, ts+24214 /* " USING " */, 7) Xsqlite3_str_appendf(tls, bp+48 /* &str */, zFmt, libc.VaList(bp+16, (*Index)(unsafe.Pointer(pIdx)).FzName)) explainIndexRange(tls, bp+48 /* &str */, pLoop) } } else if ((flags & U32(WHERE_IPK)) != U32(0)) && ((flags & U32(WHERE_CONSTRAINT)) != U32(0)) { var zRangeOp uintptr if (flags & (U32(WHERE_COLUMN_EQ | WHERE_COLUMN_IN))) != 0 { - zRangeOp = ts + 24212 /* "=" */ + zRangeOp = ts + 24222 /* "=" */ } else if (flags & U32(WHERE_BOTH_LIMIT)) == U32(WHERE_BOTH_LIMIT) { - zRangeOp = ts + 24214 /* ">? AND rowid<" */ + zRangeOp = ts + 24224 /* ">? AND rowid<" */ } else if (flags & U32(WHERE_BTM_LIMIT)) != 0 { - zRangeOp = ts + 24097 /* ">" */ + zRangeOp = ts + 24107 /* ">" */ } else { - zRangeOp = ts + 24099 /* "<" */ + zRangeOp = ts + 24109 /* "<" */ } Xsqlite3_str_appendf(tls, bp+48, /* &str */ - ts+24228 /* " USING INTEGER P..." */, libc.VaList(bp+24, zRangeOp)) + ts+24238 /* " USING INTEGER P..." */, libc.VaList(bp+24, zRangeOp)) } else if (flags & U32(WHERE_VIRTUALTABLE)) != U32(0) { - Xsqlite3_str_appendf(tls, bp+48 /* &str */, ts+24266, /* " VIRTUAL TABLE I..." */ + Xsqlite3_str_appendf(tls, bp+48 /* &str */, ts+24276, /* " VIRTUAL TABLE I..." */ libc.VaList(bp+32, *(*int32)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.vtab */ /* &.idxNum */)), *(*uintptr)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.vtab */ + 8 /* &.idxStr */)))) } zMsg = Xsqlite3StrAccumFinish(tls, bp+48 /* &str */) @@ -127640,7 +128274,7 @@ func codeAllEqualityTerms(tls *libc.TLS, pParse uintptr, pLevel uintptr, bRev in return OP_Rewind }(), iIdxCur) - Xsqlite3VdbeComment(tls, v, ts+24293 /* "begin skip-scan ..." */, libc.VaList(bp, (*Index)(unsafe.Pointer(pIdx)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+24303 /* "begin skip-scan ..." */, libc.VaList(bp, (*Index)(unsafe.Pointer(pIdx)).FzName)) j = Xsqlite3VdbeAddOp0(tls, v, OP_Goto) (*WhereLevel)(unsafe.Pointer(pLevel)).FaddrSkip = Xsqlite3VdbeAddOp4Int(tls, v, func() int32 { if bRev != 0 { @@ -127654,7 +128288,7 @@ func codeAllEqualityTerms(tls *libc.TLS, pParse uintptr, pLevel uintptr, bRev in for j = 0; j < int32(nSkip); j++ { Xsqlite3VdbeAddOp3(tls, v, OP_Column, iIdxCur, j, (regBase + j)) - Xsqlite3VdbeComment(tls, v, ts+951 /* "%s" */, libc.VaList(bp+8, explainIndexColumnName(tls, pIdx, j))) + Xsqlite3VdbeComment(tls, v, ts+961 /* "%s" */, libc.VaList(bp+8, explainIndexColumnName(tls, pIdx, j))) } } @@ -127999,7 +128633,7 @@ func Xsqlite3WhereCodeOneLoopStart(tls *libc.TLS, pParse uintptr, v uintptr, pWI if (int32((*WhereLevel)(unsafe.Pointer(pLevel)).FiFrom) > 0) && ((int32((*SrcItem)(unsafe.Pointer(pTabItem)).Ffg.Fjointype) & JT_LEFT) != 0) { (*WhereLevel)(unsafe.Pointer(pLevel)).FiLeftJoin = libc.PreIncInt32(&(*Parse)(unsafe.Pointer(pParse)).FnMem, 1) Xsqlite3VdbeAddOp2(tls, v, OP_Integer, 0, (*WhereLevel)(unsafe.Pointer(pLevel)).FiLeftJoin) - Xsqlite3VdbeComment(tls, v, ts+24315 /* "init LEFT JOIN n..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+24325 /* "init LEFT JOIN n..." */, 0) } // Compute a safe address to jump to if we discover that the table for @@ -128014,7 +128648,7 @@ func Xsqlite3WhereCodeOneLoopStart(tls *libc.TLS, pParse uintptr, v uintptr, pWI Xsqlite3VdbeAddOp3(tls, v, OP_InitCoroutine, regYield, 0, (*SrcItem)(unsafe.Pointer(pTabItem)).FaddrFillSub) (*WhereLevel)(unsafe.Pointer(pLevel)).Fp2 = Xsqlite3VdbeAddOp2(tls, v, OP_Yield, regYield, addrBrk) - Xsqlite3VdbeComment(tls, v, ts+24344 /* "next row of %s" */, libc.VaList(bp, (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pTabItem)).FpTab)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+24354 /* "next row of %s" */, libc.VaList(bp, (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pTabItem)).FpTab)).FzName)) (*WhereLevel)(unsafe.Pointer(pLevel)).Fop = U8(OP_Goto) } else if ((*WhereLoop)(unsafe.Pointer(pLoop)).FwsFlags & U32(WHERE_VIRTUALTABLE)) != U32(0) { // Case 1: The table is a virtual-table. Use the VFilter and VNext @@ -128194,7 +128828,7 @@ func Xsqlite3WhereCodeOneLoopStart(tls *libc.TLS, pParse uintptr, v uintptr, pWI op = int32(*(*U8)(unsafe.Pointer(bp + 16 /* &aMoveOp[0] */ + uintptr((int32((*Expr)(unsafe.Pointer(pX)).Fop) - TK_GT))))) } Xsqlite3VdbeAddOp3(tls, v, op, iCur, addrBrk, r1) - Xsqlite3VdbeComment(tls, v, ts+18104 /* "pk" */, 0) + Xsqlite3VdbeComment(tls, v, ts+18114 /* "pk" */, 0) Xsqlite3ReleaseTempReg(tls, pParse, *(*int32)(unsafe.Pointer(bp + 20 /* rTemp */))) } else { @@ -128413,7 +129047,7 @@ func Xsqlite3WhereCodeOneLoopStart(tls *libc.TLS, pParse uintptr, v uintptr, pWI } else { if regBignull != 0 { Xsqlite3VdbeAddOp2(tls, v, OP_Integer, 1, regBignull) - Xsqlite3VdbeComment(tls, v, ts+24359 /* "NULL-scan pass c..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+24369 /* "NULL-scan pass c..." */, 0) } op = int32(aStartOp[(((start_constraints << 2) + (startEq << 1)) + bRev)]) @@ -128487,7 +129121,7 @@ func Xsqlite3WhereCodeOneLoopStart(tls *libc.TLS, pParse uintptr, v uintptr, pWI if regBignull != 0 { // Except, skip the end-of-range check while doing the NULL-scan Xsqlite3VdbeAddOp2(tls, v, OP_IfNot, regBignull, (Xsqlite3VdbeCurrentAddr(tls, v) + 3)) - Xsqlite3VdbeComment(tls, v, ts+24378 /* "If NULL-scan 2nd..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+24388 /* "If NULL-scan 2nd..." */, 0) } op = int32(aEndOp[((bRev * 2) + endEq)]) @@ -128502,7 +129136,7 @@ func Xsqlite3WhereCodeOneLoopStart(tls *libc.TLS, pParse uintptr, v uintptr, pWI // the NULLs Xsqlite3VdbeAddOp2(tls, v, OP_If, regBignull, (Xsqlite3VdbeCurrentAddr(tls, v) + 2)) - Xsqlite3VdbeComment(tls, v, ts+24400 /* "If NULL-scan 1st..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+24410 /* "If NULL-scan 1st..." */, 0) op = int32(aEndOp[((bRev * 2) + int32(bSeekPastNull))]) Xsqlite3VdbeAddOp4Int(tls, v, op, iIdxCur, addrNxt, regBase, @@ -128748,7 +129382,7 @@ func Xsqlite3WhereCodeOneLoopStart(tls *libc.TLS, pParse uintptr, v uintptr, pWI // Run a separate WHERE clause for each term of the OR clause. After // eliminating duplicates from other WHERE clauses, the action for each // sub-WHERE clause is to to invoke the main loop body as a subroutine. - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+24422 /* "MULTI-INDEX OR" */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+24432 /* "MULTI-INDEX OR" */, 0) for ii = 0; ii < (*WhereClause)(unsafe.Pointer(pOrWc)).FnTerm; ii++ { var pOrTerm uintptr = ((*WhereClause)(unsafe.Pointer(pOrWc)).Fa + uintptr(ii)*48) if ((*WhereTerm)(unsafe.Pointer(pOrTerm)).FleftCursor == iCur) || ((int32((*WhereTerm)(unsafe.Pointer(pOrTerm)).FeOperator) & WO_AND) != 0) { @@ -128767,7 +129401,7 @@ func Xsqlite3WhereCodeOneLoopStart(tls *libc.TLS, pParse uintptr, v uintptr, pWI pOrExpr = pAndExpr } // Loop through table entries that match term pOrTerm. - Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+24437 /* "INDEX %d" */, libc.VaList(bp+8, (ii+1))) + Xsqlite3VdbeExplain(tls, pParse, uint8(1), ts+24447 /* "INDEX %d" */, libc.VaList(bp+8, (ii+1))) pSubWInfo = Xsqlite3WhereBegin(tls, pParse, pOrTab, pOrExpr, uintptr(0), uintptr(0), uint16(WHERE_OR_SUBCLAUSE), iCovCur) @@ -129072,7 +129706,7 @@ __6: if (*WhereLevel)(unsafe.Pointer(pLevel)).FiLeftJoin != 0 { (*WhereLevel)(unsafe.Pointer(pLevel)).FaddrFirst = Xsqlite3VdbeCurrentAddr(tls, v) Xsqlite3VdbeAddOp2(tls, v, OP_Integer, 1, (*WhereLevel)(unsafe.Pointer(pLevel)).FiLeftJoin) - Xsqlite3VdbeComment(tls, v, ts+24446 /* "record LEFT JOIN..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+24456 /* "record LEFT JOIN..." */, 0) pTerm = (*WhereClause)(unsafe.Pointer(pWC)).Fa j = 0 __7: @@ -129466,7 +130100,9 @@ func isAuxiliaryVtabOperator(tls *libc.TLS, db uintptr, pExpr uintptr, peOp2 uin pMod = (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FpModule if (*Sqlite3_module)(unsafe.Pointer(pMod)).FxFindFunction != uintptr(0) { - i = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pMod + 72 /* &.xFindFunction */))))(tls, pVtab, 2, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)), bp /* &xNotUsed */, bp+4 /* &pNotUsed */) + i = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer(pMod)).FxFindFunction})).f(tls, pVtab, 2, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)), bp /* &xNotUsed */, bp+4 /* &pNotUsed */) if i >= SQLITE_INDEX_CONSTRAINT_FUNCTION { *(*uint8)(unsafe.Pointer(peOp2)) = uint8(i) *(*uintptr)(unsafe.Pointer(ppRight)) = (*ExprList_item)(unsafe.Pointer((pList + 8 /* &.a */) + 1*20)).FpExpr @@ -129510,16 +130146,16 @@ func isAuxiliaryVtabOperator(tls *libc.TLS, db uintptr, pExpr uintptr, peOp2 uin } type Op2 = struct { - FzOp uintptr - FeOp2 uint8 - _ [3]byte + FzOp uintptr + FeOp2 uint8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:147955:18 */ var aOp = [4]Op2{ - {FzOp: ts + 18065 /* "match" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_MATCH)}, - {FzOp: ts + 17404 /* "glob" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_GLOB)}, - {FzOp: ts + 16954 /* "like" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_LIKE)}, - {FzOp: ts + 24467 /* "regexp" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_REGEXP)}, + {FzOp: ts + 18075 /* "match" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_MATCH)}, + {FzOp: ts + 17414 /* "glob" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_GLOB)}, + {FzOp: ts + 16964 /* "like" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_LIKE)}, + {FzOp: ts + 24477 /* "regexp" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_REGEXP)}, } /* sqlite3.c:147958:7 */ // If the pBase expression originated in the ON or USING clause of @@ -130220,7 +130856,7 @@ func exprAnalyze(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* s extraRight = (x - uint64(1)) // ON clause terms may not be used with an index // on left table of a LEFT JOIN. Ticket #3015 if (prereqAll >> 1) >= x { - Xsqlite3ErrorMsg(tls, pParse, ts+24474 /* "ON clause refere..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+24484 /* "ON clause refere..." */, 0) return } } @@ -130296,7 +130932,7 @@ func exprAnalyze(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* s (*WhereTerm)(unsafe.Pointer(pNew)).FeOperator = (U16((int32(operatorMask(tls, int32((*Expr)(unsafe.Pointer(pDup)).Fop))) + int32(eExtraOp)) & int32(opMask))) } else if (op == TK_ISNULL) && (0 == Xsqlite3ExprCanBeNull(tls, pLeft)) { (*Expr)(unsafe.Pointer(pExpr)).Fop = U8(TK_TRUEFALSE) - *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)) = ts + 8883 /* "false" */ + *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)) = ts + 8893 /* "false" */ *(*U32)(unsafe.Pointer(pExpr + 4 /* &.flags */)) |= (U32(EP_IsFalse)) (*WhereTerm)(unsafe.Pointer(pTerm)).FprereqAll = uint64(0) (*WhereTerm)(unsafe.Pointer(pTerm)).FeOperator = U16(0) @@ -130397,7 +131033,7 @@ func exprAnalyze(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* s } zCollSeqName = func() uintptr { if *(*int32)(unsafe.Pointer(bp + 16 /* noCase */)) != 0 { - return ts + 24515 /* "NOCASE" */ + return ts + 24525 /* "NOCASE" */ } return uintptr(unsafe.Pointer(&Xsqlite3StrBINARY)) }() @@ -130699,7 +131335,7 @@ func Xsqlite3WhereTabFuncArgs(tls *libc.TLS, pParse uintptr, pItem uintptr, pWC k++ } if k >= int32((*Table)(unsafe.Pointer(pTab)).FnCol) { - Xsqlite3ErrorMsg(tls, pParse, ts+24522, /* "too many argumen..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+24532, /* "too many argumen..." */ libc.VaList(bp, (*Table)(unsafe.Pointer(pTab)).FzName, j)) return } @@ -131522,7 +132158,7 @@ __4: goto __6 } Xsqlite3_log(tls, (SQLITE_WARNING | (int32(1) << 8)), - ts+24558 /* "automatic index ..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTable)).FzName, + ts+24568 /* "automatic index ..." */, libc.VaList(bp, (*Table)(unsafe.Pointer(pTable)).FzName, (*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTable)).FaCol+uintptr(iCol)*20)).FzName)) sentWarning = U8(1) __6: @@ -131603,7 +132239,7 @@ __13: __14: ; *(*uintptr)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.btree */ + 8 /* &.pIndex */)) = pIdx - (*Index)(unsafe.Pointer(pIdx)).FzName = ts + 24584 /* "auto-index" */ + (*Index)(unsafe.Pointer(pIdx)).FzName = ts + 24594 /* "auto-index" */ (*Index)(unsafe.Pointer(pIdx)).FpTable = pTable n = 0 idxCols = uint64(0) @@ -131700,7 +132336,7 @@ __24: (*WhereLevel)(unsafe.Pointer(pLevel)).FiIdxCur = libc.PostIncInt32(&(*Parse)(unsafe.Pointer(pParse)).FnTab, 1) Xsqlite3VdbeAddOp2(tls, v, OP_OpenAutoindex, (*WhereLevel)(unsafe.Pointer(pLevel)).FiIdxCur, (nKeyCol + 1)) Xsqlite3VdbeSetP4KeyInfo(tls, pParse, pIdx) - Xsqlite3VdbeComment(tls, v, ts+17800 /* "for %s" */, libc.VaList(bp+16, (*Table)(unsafe.Pointer(pTable)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+17810 /* "for %s" */, libc.VaList(bp+16, (*Table)(unsafe.Pointer(pTable)).FzName)) // Fill the automatic index with content pTabItem = (((*WhereInfo)(unsafe.Pointer((*WhereClause)(unsafe.Pointer(pWC)).FpWInfo)).FpTabList + 8 /* &.a */) + uintptr((*WhereLevel)(unsafe.Pointer(pLevel)).FiFrom)*72) @@ -131712,7 +132348,7 @@ __24: Xsqlite3VdbeAddOp3(tls, v, OP_InitCoroutine, regYield, 0, (*SrcItem)(unsafe.Pointer(pTabItem)).FaddrFillSub) addrTop = Xsqlite3VdbeAddOp1(tls, v, OP_Yield, regYield) - Xsqlite3VdbeComment(tls, v, ts+24344 /* "next row of %s" */, libc.VaList(bp+24, (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pTabItem)).FpTab)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+24354 /* "next row of %s" */, libc.VaList(bp+24, (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pTabItem)).FpTab)).FzName)) goto __29 __28: addrTop = Xsqlite3VdbeAddOp1(tls, v, OP_Rewind, (*WhereLevel)(unsafe.Pointer(pLevel)).FiTabCur) @@ -131838,7 +132474,7 @@ __3: ((uint32(unsafe.Sizeof(sqlite3_index_constraint{})) + uint32(unsafe.Sizeof(sqlite3_index_constraint_usage{}))) * uint32(nTerm))) + (uint32(unsafe.Sizeof(sqlite3_index_orderby{})) * uint32(nOrderBy))) + uint32(unsafe.Sizeof(HiddenIndexInfo1{}))))) if pIdxInfo == uintptr(0) { - Xsqlite3ErrorMsg(tls, pParse, ts+7999 /* "out of memory" */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+8009 /* "out of memory" */, 0) return uintptr(0) } pHidden = (pIdxInfo + 1*64) @@ -131959,15 +132595,17 @@ func vtabBestIndex(tls *libc.TLS, pParse uintptr, pTab uintptr, p uintptr) int32 var pVtab uintptr = (*VTable)(unsafe.Pointer(Xsqlite3GetVTable(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, pTab))).FpVtab var rc int32 - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FpModule + 12 /* &.xBestIndex */))))(tls, pVtab, p) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_module)(unsafe.Pointer((*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FpModule)).FxBestIndex})).f(tls, pVtab, p) if (rc != SQLITE_OK) && (rc != SQLITE_CONSTRAINT) { if rc == SQLITE_NOMEM { Xsqlite3OomFault(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb) } else if !(int32((*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg) != 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+951 /* "%s" */, libc.VaList(bp, Xsqlite3ErrStr(tls, rc))) + Xsqlite3ErrorMsg(tls, pParse, ts+961 /* "%s" */, libc.VaList(bp, Xsqlite3ErrStr(tls, rc))) } else { - Xsqlite3ErrorMsg(tls, pParse, ts+951 /* "%s" */, libc.VaList(bp+8, (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg)) + Xsqlite3ErrorMsg(tls, pParse, ts+961 /* "%s" */, libc.VaList(bp+8, (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg)) } } Xsqlite3_free(tls, (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg) @@ -134017,7 +134655,7 @@ __4: (j >= (*WhereClause)(unsafe.Pointer(pWC)).FnTerm)) || (*(*uintptr)(unsafe.Pointer((*WhereLoop)(unsafe.Pointer(pNew)).FaLTerm + uintptr(iTerm)*4)) != uintptr(0))) || (int32((*sqlite3_index_constraint)(unsafe.Pointer(pIdxCons)).Fusable) == 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+24595 /* "%s.xBestIndex ma..." */, libc.VaList(bp, (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pSrc)).FpTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+24605 /* "%s.xBestIndex ma..." */, libc.VaList(bp, (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pSrc)).FpTab)).FzName)) return SQLITE_ERROR } @@ -134065,7 +134703,7 @@ __6: if *(*uintptr)(unsafe.Pointer((*WhereLoop)(unsafe.Pointer(pNew)).FaLTerm + uintptr(i)*4)) == uintptr(0) { // The non-zero argvIdx values must be contiguous. Raise an // error if they are not - Xsqlite3ErrorMsg(tls, pParse, ts+24595 /* "%s.xBestIndex ma..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pSrc)).FpTab)).FzName)) + Xsqlite3ErrorMsg(tls, pParse, ts+24605 /* "%s.xBestIndex ma..." */, libc.VaList(bp+8, (*Table)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pSrc)).FpTab)).FzName)) return SQLITE_ERROR } @@ -134454,7 +135092,7 @@ __1: if (rc != 0) || ((*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0) { if rc == SQLITE_DONE { // We hit the query planner search limit set by iPlanLimit - Xsqlite3_log(tls, SQLITE_WARNING, ts+24621 /* "abbreviated quer..." */, 0) + Xsqlite3_log(tls, SQLITE_WARNING, ts+24631 /* "abbreviated quer..." */, 0) rc = SQLITE_OK } else { goto __3 @@ -135223,7 +135861,7 @@ __3: } if nFrom == 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+24656 /* "no query solutio..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+24666 /* "no query solutio..." */, 0) Xsqlite3DbFreeNN(tls, db, pSpace) return SQLITE_ERROR } @@ -135604,7 +136242,7 @@ __2: if !((*SrcList)(unsafe.Pointer(pTabList)).FnSrc > (int32(uint32(unsafe.Sizeof(Bitmask(0))) * uint32(8)))) { goto __3 } - Xsqlite3ErrorMsg(tls, pParse, ts+24674 /* "at most %d table..." */, libc.VaList(bp, (int32(uint32(unsafe.Sizeof(Bitmask(0)))*uint32(8))))) + Xsqlite3ErrorMsg(tls, pParse, ts+24684 /* "at most %d table..." */, libc.VaList(bp, (int32(uint32(unsafe.Sizeof(Bitmask(0)))*uint32(8))))) return uintptr(0) __3: ; @@ -135679,7 +136317,7 @@ __7: (*WhereInfo)(unsafe.Pointer(pWInfo)).FeDistinct = U8(WHERE_DISTINCT_UNIQUE) __8: ; - Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+24702 /* "SCAN CONSTANT RO..." */, 0) + Xsqlite3VdbeExplain(tls, pParse, uint8(0), ts+24712 /* "SCAN CONSTANT RO..." */, 0) goto __6 __5: // Assign a bit from the bitmask to every term in the FROM clause. @@ -136203,7 +136841,7 @@ __74: Xsqlite3VdbeChangeP5(tls, v, uint16(OPFLAG_SEEKEQ)) __82: ; - Xsqlite3VdbeComment(tls, v, ts+951 /* "%s" */, libc.VaList(bp+8, (*Index)(unsafe.Pointer(pIx)).FzName)) + Xsqlite3VdbeComment(tls, v, ts+961 /* "%s" */, libc.VaList(bp+8, (*Index)(unsafe.Pointer(pIx)).FzName)) __81: ; __72: @@ -136371,9 +137009,9 @@ func Xsqlite3WhereEnd(tls *libc.TLS, pWInfo uintptr) { /* sqlite3.c:154626:21: * } { - Xsqlite3VdbeJumpHere(tls, v, ((*InLoop)(unsafe.Pointer(pIn)).FaddrInTop + 1)) - if int32((*InLoop)(unsafe.Pointer(pIn)).FeEndLoopOp) != OP_Noop { - if (*InLoop)(unsafe.Pointer(pIn)).FnPrefix != 0 { + Xsqlite3VdbeJumpHere(tls, v, (*(*int32)(unsafe.Pointer(pIn + 4)) + 1)) + if int32(*(*U8)(unsafe.Pointer(pIn + 16))) != OP_Noop { + if *(*int32)(unsafe.Pointer(pIn + 12)) != 0 { var bEarlyOut int32 = (libc.Bool32((((*WhereLoop)(unsafe.Pointer(pLoop)).FwsFlags & U32(WHERE_VIRTUALTABLE)) == U32(0)) && (((*WhereLoop)(unsafe.Pointer(pLoop)).FwsFlags & U32(WHERE_IN_EARLYOUT)) != U32(0)))) if (*WhereLevel)(unsafe.Pointer(pLevel)).FiLeftJoin != 0 { @@ -136385,26 +137023,26 @@ func Xsqlite3WhereEnd(tls *libc.TLS, pWInfo uintptr) { /* sqlite3.c:154626:21: * // return the null-row. So, if the cursor is not open yet, // jump over the OP_Next or OP_Prev instruction about to // be coded. - Xsqlite3VdbeAddOp2(tls, v, OP_IfNotOpen, (*InLoop)(unsafe.Pointer(pIn)).FiCur, + Xsqlite3VdbeAddOp2(tls, v, OP_IfNotOpen, *(*int32)(unsafe.Pointer(pIn)), ((Xsqlite3VdbeCurrentAddr(tls, v) + 2) + bEarlyOut)) } if bEarlyOut != 0 { Xsqlite3VdbeAddOp4Int(tls, v, OP_IfNoHope, (*WhereLevel)(unsafe.Pointer(pLevel)).FiIdxCur, (Xsqlite3VdbeCurrentAddr(tls, v) + 2), - (*InLoop)(unsafe.Pointer(pIn)).FiBase, (*InLoop)(unsafe.Pointer(pIn)).FnPrefix) + *(*int32)(unsafe.Pointer(pIn + 8)), *(*int32)(unsafe.Pointer(pIn + 12))) // Retarget the OP_IsNull against the left operand of IN so // it jumps past the OP_IfNoHope. This is because the // OP_IsNull also bypasses the OP_Affinity opcode that is // required by OP_IfNoHope. - Xsqlite3VdbeJumpHere(tls, v, ((*InLoop)(unsafe.Pointer(pIn)).FaddrInTop + 1)) + Xsqlite3VdbeJumpHere(tls, v, (*(*int32)(unsafe.Pointer(pIn + 4)) + 1)) } } - Xsqlite3VdbeAddOp2(tls, v, int32((*InLoop)(unsafe.Pointer(pIn)).FeEndLoopOp), (*InLoop)(unsafe.Pointer(pIn)).FiCur, (*InLoop)(unsafe.Pointer(pIn)).FaddrInTop) + Xsqlite3VdbeAddOp2(tls, v, int32(*(*U8)(unsafe.Pointer(pIn + 16))), *(*int32)(unsafe.Pointer(pIn)), *(*int32)(unsafe.Pointer(pIn + 4))) } - Xsqlite3VdbeJumpHere(tls, v, ((*InLoop)(unsafe.Pointer(pIn)).FaddrInTop - 1)) + Xsqlite3VdbeJumpHere(tls, v, (*(*int32)(unsafe.Pointer(pIn + 4)) - 1)) } goto __2 @@ -136418,7 +137056,7 @@ func Xsqlite3WhereEnd(tls *libc.TLS, pWInfo uintptr) { /* sqlite3.c:154626:21: * Xsqlite3VdbeResolveLabel(tls, v, (*WhereLevel)(unsafe.Pointer(pLevel)).FaddrBrk) if (*WhereLevel)(unsafe.Pointer(pLevel)).FaddrSkip != 0 { Xsqlite3VdbeGoto(tls, v, (*WhereLevel)(unsafe.Pointer(pLevel)).FaddrSkip) - Xsqlite3VdbeComment(tls, v, ts+24720 /* "next skip-scan o..." */, libc.VaList(bp, (*Index)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.btree */ + 8 /* &.pIndex */)))).FzName)) + Xsqlite3VdbeComment(tls, v, ts+24730 /* "next skip-scan o..." */, libc.VaList(bp, (*Index)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pLoop + 24 /* &.u */ /* &.btree */ + 8 /* &.pIndex */)))).FzName)) Xsqlite3VdbeJumpHere(tls, v, (*WhereLevel)(unsafe.Pointer(pLevel)).FaddrSkip) Xsqlite3VdbeJumpHere(tls, v, ((*WhereLevel)(unsafe.Pointer(pLevel)).FaddrSkip - 2)) } @@ -136817,7 +137455,7 @@ __1: error_out: Xsqlite3_result_error(tls, - pCtx, ts+24741 /* "second argument ..." */, -1) + pCtx, ts+24751 /* "second argument ..." */, -1) } func nth_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:155162:13: */ @@ -136966,7 +137604,7 @@ func ntileStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* (*NtileCtx)(unsafe.Pointer(p)).FnParam = Xsqlite3_value_int64(tls, *(*uintptr)(unsafe.Pointer(apArg))) if (*NtileCtx)(unsafe.Pointer(p)).FnParam <= int64(0) { Xsqlite3_result_error(tls, - pCtx, ts+24797 /* "argument of ntil..." */, -1) + pCtx, ts+24807 /* "argument of ntil..." */, -1) } } (*NtileCtx)(unsafe.Pointer(p)).FnTotal++ @@ -137062,17 +137700,17 @@ func last_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:155441:1 // comparison of the zName pointer. Example: // // if( pFuncDef->zName==row_valueName ){ ... } -var row_numberName = *(*[11]int8)(unsafe.Pointer(ts + 24842 /* "row_number" */)) /* sqlite3.c:155459:19 */ -var dense_rankName = *(*[11]int8)(unsafe.Pointer(ts + 24853 /* "dense_rank" */)) /* sqlite3.c:155460:19 */ -var rankName = *(*[5]int8)(unsafe.Pointer(ts + 24864 /* "rank" */)) /* sqlite3.c:155461:19 */ -var percent_rankName = *(*[13]int8)(unsafe.Pointer(ts + 24869 /* "percent_rank" */)) /* sqlite3.c:155462:19 */ -var cume_distName = *(*[10]int8)(unsafe.Pointer(ts + 24882 /* "cume_dist" */)) /* sqlite3.c:155463:19 */ -var ntileName = *(*[6]int8)(unsafe.Pointer(ts + 24892 /* "ntile" */)) /* sqlite3.c:155464:19 */ -var last_valueName = *(*[11]int8)(unsafe.Pointer(ts + 24898 /* "last_value" */)) /* sqlite3.c:155465:19 */ -var nth_valueName = *(*[10]int8)(unsafe.Pointer(ts + 24909 /* "nth_value" */)) /* sqlite3.c:155466:19 */ -var first_valueName = *(*[12]int8)(unsafe.Pointer(ts + 24919 /* "first_value" */)) /* sqlite3.c:155467:19 */ -var leadName = *(*[5]int8)(unsafe.Pointer(ts + 24931 /* "lead" */)) /* sqlite3.c:155468:19 */ -var lagName = *(*[4]int8)(unsafe.Pointer(ts + 24936 /* "lag" */)) /* sqlite3.c:155469:19 */ +var row_numberName = *(*[11]int8)(unsafe.Pointer(ts + 24852 /* "row_number" */)) /* sqlite3.c:155459:19 */ +var dense_rankName = *(*[11]int8)(unsafe.Pointer(ts + 24863 /* "dense_rank" */)) /* sqlite3.c:155460:19 */ +var rankName = *(*[5]int8)(unsafe.Pointer(ts + 24874 /* "rank" */)) /* sqlite3.c:155461:19 */ +var percent_rankName = *(*[13]int8)(unsafe.Pointer(ts + 24879 /* "percent_rank" */)) /* sqlite3.c:155462:19 */ +var cume_distName = *(*[10]int8)(unsafe.Pointer(ts + 24892 /* "cume_dist" */)) /* sqlite3.c:155463:19 */ +var ntileName = *(*[6]int8)(unsafe.Pointer(ts + 24902 /* "ntile" */)) /* sqlite3.c:155464:19 */ +var last_valueName = *(*[11]int8)(unsafe.Pointer(ts + 24908 /* "last_value" */)) /* sqlite3.c:155465:19 */ +var nth_valueName = *(*[10]int8)(unsafe.Pointer(ts + 24919 /* "nth_value" */)) /* sqlite3.c:155466:19 */ +var first_valueName = *(*[12]int8)(unsafe.Pointer(ts + 24929 /* "first_value" */)) /* sqlite3.c:155467:19 */ +var leadName = *(*[5]int8)(unsafe.Pointer(ts + 24941 /* "lead" */)) /* sqlite3.c:155468:19 */ +var lagName = *(*[4]int8)(unsafe.Pointer(ts + 24946 /* "lag" */)) /* sqlite3.c:155469:19 */ // No-op implementations of xStep() and xFinalize(). Used as place-holders // for built-in window functions that never call those interfaces. @@ -137136,7 +137774,7 @@ func windowFind(tls *libc.TLS, pParse uintptr, pList uintptr, zName uintptr) uin } } if p == uintptr(0) { - Xsqlite3ErrorMsg(tls, pParse, ts+24940 /* "no such window: ..." */, libc.VaList(bp, zName)) + Xsqlite3ErrorMsg(tls, pParse, ts+24950 /* "no such window: ..." */, libc.VaList(bp, zName)) } return p } @@ -137180,12 +137818,12 @@ func Xsqlite3WindowUpdate(tls *libc.TLS, pParse uintptr, pList uintptr, pWin uin (((*Window)(unsafe.Pointer(pWin)).FpStart != 0) || ((*Window)(unsafe.Pointer(pWin)).FpEnd != 0))) && (((*Window)(unsafe.Pointer(pWin)).FpOrderBy == uintptr(0)) || ((*ExprList)(unsafe.Pointer((*Window)(unsafe.Pointer(pWin)).FpOrderBy)).FnExpr != 1)) { Xsqlite3ErrorMsg(tls, pParse, - ts+24959 /* "RANGE with offse..." */, 0) + ts+24969 /* "RANGE with offse..." */, 0) } else if ((*FuncDef)(unsafe.Pointer(pFunc)).FfuncFlags & U32(SQLITE_FUNC_WINDOW)) != 0 { var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if (*Window)(unsafe.Pointer(pWin)).FpFilter != 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+25030 /* "FILTER clause ma..." */, 0) + ts+25040 /* "FILTER clause ma..." */, 0) } else { *(*[8]WindowUpdate)(unsafe.Pointer(bp /* aUp */)) = [8]WindowUpdate{ {FzFunc: uintptr(unsafe.Pointer(&row_numberName)), FeFrmType: TK_ROWS, FeStart: TK_UNBOUNDED, FeEnd: TK_CURRENT}, @@ -137208,7 +137846,7 @@ func Xsqlite3WindowUpdate(tls *libc.TLS, pParse uintptr, pList uintptr, pWin uin (*Window)(unsafe.Pointer(pWin)).FeEnd = U8((*WindowUpdate)(unsafe.Pointer(bp /* &aUp */ + uintptr(i)*16)).FeEnd) (*Window)(unsafe.Pointer(pWin)).FeExclude = U8(0) if int32((*Window)(unsafe.Pointer(pWin)).FeStart) == TK_FOLLOWING { - (*Window)(unsafe.Pointer(pWin)).FpStart = Xsqlite3Expr(tls, db, TK_INTEGER, ts+10134 /* "1" */) + (*Window)(unsafe.Pointer(pWin)).FpStart = Xsqlite3Expr(tls, db, TK_INTEGER, ts+10144 /* "1" */) } break } @@ -137449,7 +138087,7 @@ func disallowAggregatesInOrderByCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr if (int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_AGG_FUNCTION) && ((*Expr)(unsafe.Pointer(pExpr)).FpAggInfo == uintptr(0)) { Xsqlite3ErrorMsg(tls, (*Walker)(unsafe.Pointer(pWalker)).FpParse, - ts+10236 /* "misuse of aggreg..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)))) + ts+10246 /* "misuse of aggreg..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(pExpr + 8 /* &.u */)))) } return WRC_Continue } @@ -137579,7 +138217,7 @@ func Xsqlite3WindowRewrite(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* // keep everything legal in this case. if *(*uintptr)(unsafe.Pointer(bp + 28 /* pSublist */)) == uintptr(0) { *(*uintptr)(unsafe.Pointer(bp + 28 /* pSublist */)) = Xsqlite3ExprListAppend(tls, pParse, uintptr(0), - Xsqlite3Expr(tls, db, TK_INTEGER, ts+9614 /* "0" */)) + Xsqlite3Expr(tls, db, TK_INTEGER, ts+9624 /* "0" */)) } pSub = Xsqlite3SelectNew(tls, @@ -137719,7 +138357,7 @@ __1: ((eStart == TK_FOLLOWING) && ((eEnd == TK_PRECEDING) || (eEnd == TK_CURRENT)))) { goto __2 } - Xsqlite3ErrorMsg(tls, pParse, ts+25093 /* "unsupported fram..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+25103 /* "unsupported fram..." */, 0) goto windowAllocErr __2: ; @@ -137785,15 +138423,15 @@ func Xsqlite3WindowChain(tls *libc.TLS, pParse uintptr, pWin uintptr, pList uint var zErr uintptr = uintptr(0) // Check for errors if (*Window)(unsafe.Pointer(pWin)).FpPartition != 0 { - zErr = ts + 25125 /* "PARTITION clause" */ + zErr = ts + 25135 /* "PARTITION clause" */ } else if ((*Window)(unsafe.Pointer(pExist)).FpOrderBy != 0) && ((*Window)(unsafe.Pointer(pWin)).FpOrderBy != 0) { - zErr = ts + 25142 /* "ORDER BY clause" */ + zErr = ts + 25152 /* "ORDER BY clause" */ } else if int32((*Window)(unsafe.Pointer(pExist)).FbImplicitFrame) == 0 { - zErr = ts + 25158 /* "frame specificat..." */ + zErr = ts + 25168 /* "frame specificat..." */ } if zErr != 0 { Xsqlite3ErrorMsg(tls, pParse, - ts+25178 /* "cannot override ..." */, libc.VaList(bp, zErr, (*Window)(unsafe.Pointer(pWin)).FzBase)) + ts+25188 /* "cannot override ..." */, libc.VaList(bp, zErr, (*Window)(unsafe.Pointer(pWin)).FzBase)) } else { (*Window)(unsafe.Pointer(pWin)).FpPartition = Xsqlite3ExprListDup(tls, db, (*Window)(unsafe.Pointer(pExist)).FpPartition, 0) if (*Window)(unsafe.Pointer(pExist)).FpOrderBy != 0 { @@ -137816,7 +138454,7 @@ func Xsqlite3WindowAttach(tls *libc.TLS, pParse uintptr, p uintptr, pWin uintptr (*Window)(unsafe.Pointer(pWin)).FpOwner = p if (((*Expr)(unsafe.Pointer(p)).Fflags & U32(EP_Distinct)) != 0) && (int32((*Window)(unsafe.Pointer(pWin)).FeFrmType) != TK_FILTER) { Xsqlite3ErrorMsg(tls, pParse, - ts+25211 /* "DISTINCT is not ..." */, 0) + ts+25221 /* "DISTINCT is not ..." */, 0) } } else { Xsqlite3WindowDelete(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, pWin) @@ -137967,7 +138605,7 @@ func windowCheckValue(tls *libc.TLS, pParse uintptr, reg int32, eCond int32) { / Xsqlite3VdbeAddOp2(tls, v, OP_Integer, 0, regZero) if eCond >= WINDOW_STARTING_NUM { var regString int32 = Xsqlite3GetTempReg(tls, pParse) - Xsqlite3VdbeAddOp4(tls, v, OP_String8, 0, regString, 0, ts+915 /* "" */, -1) + Xsqlite3VdbeAddOp4(tls, v, OP_String8, 0, regString, 0, ts+925 /* "" */, -1) Xsqlite3VdbeAddOp3(tls, v, OP_Ge, regString, (Xsqlite3VdbeCurrentAddr(tls, v) + 2), reg) Xsqlite3VdbeChangeP5(tls, v, (uint16(SQLITE_AFF_NUMERIC | SQLITE_JUMPIFNULL))) @@ -137989,11 +138627,11 @@ func windowCheckValue(tls *libc.TLS, pParse uintptr, reg int32, eCond int32) { / } var azErr = [5]uintptr{ - ts + 25258, /* "frame starting o..." */ - ts + 25311, /* "frame ending off..." */ - ts + 24741, /* "second argument ..." */ - ts + 25362, /* "frame starting o..." */ - ts + 25414, /* "frame ending off..." */ + ts + 25268, /* "frame starting o..." */ + ts + 25321, /* "frame ending off..." */ + ts + 24751, /* "second argument ..." */ + ts + 25372, /* "frame starting o..." */ + ts + 25424, /* "frame ending off..." */ } /* sqlite3.c:156372:21 */ var aOp1 = [5]int32{OP_Ge, OP_Ge, OP_Gt, OP_Ge, OP_Ge} /* sqlite3.c:156379:14 */ @@ -138594,7 +139232,7 @@ func windowCodeRangeTest(tls *libc.TLS, p uintptr, op int32, csr1 int32, regVal // the add/subtract is skipped for these, as required. If reg1 is a NULL, // then the arithmetic is performed, but since adding or subtracting from // NULL is always NULL anyway, this case is handled as required too. - Xsqlite3VdbeAddOp4(tls, v, OP_String8, 0, regString, 0, ts+915 /* "" */, -1) + Xsqlite3VdbeAddOp4(tls, v, OP_String8, 0, regString, 0, ts+925 /* "" */, -1) addrGe = Xsqlite3VdbeAddOp3(tls, v, OP_Ge, regString, 0, reg1) if ((op == OP_Ge) && (arith == OP_Add)) || ((op == OP_Le) && (arith == OP_Subtract)) { @@ -139311,7 +139949,7 @@ func Xsqlite3WindowCodeStep(tls *libc.TLS, pParse uintptr, p uintptr, pWInfo uin Xsqlite3VdbeAddOp3(tls, v, OP_Jump, (addr + 2), (addr + 4), (addr + 2)) addrGosubFlush = Xsqlite3VdbeAddOp1(tls, v, OP_Gosub, regFlushPart) - Xsqlite3VdbeComment(tls, v, ts+25464 /* "call flush_parti..." */, 0) + Xsqlite3VdbeComment(tls, v, ts+25474 /* "call flush_parti..." */, 0) Xsqlite3VdbeAddOp3(tls, v, OP_Copy, regNewPart, (*Window)(unsafe.Pointer(pMWin)).FregPart, (nPart - 1)) } @@ -139607,19 +140245,19 @@ func parserDoubleLinkSelect(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlit } cnt++ if ((*Select)(unsafe.Pointer(pLoop)).FpOrderBy != 0) || ((*Select)(unsafe.Pointer(pLoop)).FpLimit != 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+25485, /* "%s clause should..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+25495, /* "%s clause should..." */ libc.VaList(bp, func() uintptr { if (*Select)(unsafe.Pointer(pLoop)).FpOrderBy != uintptr(0) { - return ts + 22252 /* "ORDER BY" */ + return ts + 22262 /* "ORDER BY" */ } - return ts + 25527 /* "LIMIT" */ + return ts + 25537 /* "LIMIT" */ }(), Xsqlite3SelectOpName(tls, int32((*Select)(unsafe.Pointer(pNext)).Fop)))) break } } if ((((*Select)(unsafe.Pointer(p)).FselFlags & U32(SF_MultiValue)) == U32(0)) && ((libc.AssignInt32(&mxSelect, *(*int32)(unsafe.Pointer(((*Parse)(unsafe.Pointer(pParse)).Fdb + 108 /* &.aLimit */) + 4*4)))) > 0)) && (cnt > mxSelect) { - Xsqlite3ErrorMsg(tls, pParse, ts+25533 /* "too many terms i..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+25543 /* "too many terms i..." */, 0) } } @@ -139699,7 +140337,7 @@ func parserAddExprIdListTerm(tls *libc.TLS, pParse uintptr, pPrior uintptr, pIdT var p uintptr = Xsqlite3ExprListAppend(tls, pParse, pPrior, uintptr(0)) if ((hasCollate != 0) || (sortOrder != -1)) && (int32((*Sqlite3)(unsafe.Pointer((*Parse)(unsafe.Pointer(pParse)).Fdb)).Finit.Fbusy) == 0) { - Xsqlite3ErrorMsg(tls, pParse, ts+25567, /* "syntax error aft..." */ + Xsqlite3ErrorMsg(tls, pParse, ts+25577, /* "syntax error aft..." */ libc.VaList(bp, (*Token)(unsafe.Pointer(pIdToken)).Fn, (*Token)(unsafe.Pointer(pIdToken)).Fz)) } Xsqlite3ExprListSetName(tls, pParse, p, pIdToken, 1) @@ -140924,7 +141562,7 @@ func yyStackOverflow(tls *libc.TLS, yypParser uintptr) { /* sqlite3.c:160618:13: // stack every overflows //******* Begin %stack_overflow code ***************************************** - Xsqlite3ErrorMsg(tls, pParse, ts+25605 /* "parser stack ove..." */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+25615 /* "parser stack ove..." */, 0) //******* End %stack_overflow code ******************************************* (*YyParser)(unsafe.Pointer(yypParser)).FpParse = pParse @@ -141903,11 +142541,11 @@ func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead in break case uint32(22): /* table_options ::= WITHOUT nm */ { - if ((*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fn == uint32(5)) && (Xsqlite3_strnicmp(tls, (*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fz, ts+10297 /* "rowid" */, 5) == 0) { + if ((*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fn == uint32(5)) && (Xsqlite3_strnicmp(tls, (*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fz, ts+10307 /* "rowid" */, 5) == 0) { *(*int32)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-1)*12 + 4 /* &.minor */)) = (TF_WithoutRowid | TF_NoVisibleRowid) } else { *(*int32)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-1)*12 + 4 /* &.minor */)) = 0 - Xsqlite3ErrorMsg(tls, pParse, ts+25627 /* "unknown table op..." */, libc.VaList(bp, (*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fn, (*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fz)) + Xsqlite3ErrorMsg(tls, pParse, ts+25637 /* "unknown table op..." */, libc.VaList(bp, (*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fn, (*Token)(unsafe.Pointer(yymsp+4 /* &.minor */)).Fz)) } } break @@ -142642,7 +143280,7 @@ func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead in case uint32(155): /* cmd ::= with UPDATE orconf xfullname indexed_opt SET setlist from where_opt_ret */ { Xsqlite3SrcListIndexedBy(tls, pParse, *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-5)*12 + 4 /* &.minor */)), (yymsp + libc.UintptrFromInt32(-4)*12 + 4 /* &.minor */ /* &.yy0 */)) - Xsqlite3ExprListCheckLength(tls, pParse, *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-2)*12 + 4 /* &.minor */)), ts+25654 /* "set list" */) + Xsqlite3ExprListCheckLength(tls, pParse, *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-2)*12 + 4 /* &.minor */)), ts+25664 /* "set list" */) *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-5)*12 + 4 /* &.minor */)) = Xsqlite3SrcListAppendList(tls, pParse, *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-5)*12 + 4 /* &.minor */)), *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-1)*12 + 4 /* &.minor */))) Xsqlite3Update(tls, pParse, *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-5)*12 + 4 /* &.minor */)), *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-2)*12 + 4 /* &.minor */)), *(*uintptr)(unsafe.Pointer(yymsp + 4 /* &.minor */)), *(*int32)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-6)*12 + 4 /* &.minor */)), uintptr(0), uintptr(0), uintptr(0)) } @@ -142795,7 +143433,7 @@ func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead in *(*Token)(unsafe.Pointer(bp + 68 /* t */)) = *(*Token)(unsafe.Pointer(yymsp + 4 /* &.minor */)) //A-overwrites-X if int32((*Parse)(unsafe.Pointer(pParse)).Fnested) == 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+25663 /* "near \"%T\": synta..." */, libc.VaList(bp+16, bp+68 /* &t */)) + Xsqlite3ErrorMsg(tls, pParse, ts+25673 /* "near \"%T\": synta..." */, libc.VaList(bp+16, bp+68 /* &t */)) *(*uintptr)(unsafe.Pointer(yymsp + 4 /* &.minor */)) = uintptr(0) } else { *(*uintptr)(unsafe.Pointer(yymsp + 4 /* &.minor */)) = Xsqlite3PExpr(tls, pParse, TK_REGISTER, uintptr(0), uintptr(0)) @@ -142999,9 +143637,9 @@ func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead in Xsqlite3ExprUnmapAndDelete(tls, pParse, *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-4)*12 + 4 /* &.minor */))) *(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-4)*12 + 4 /* &.minor */)) = Xsqlite3Expr(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, TK_INTEGER, func() uintptr { if *(*int32)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-3)*12 + 4 /* &.minor */)) != 0 { - return ts + 10134 /* "1" */ + return ts + 10144 /* "1" */ } - return ts + 9614 /* "0" */ + return ts + 9624 /* "0" */ }()) } else if ((*ExprList)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-1)*12 + 4 /* &.minor */)))).FnExpr == 1) && (Xsqlite3ExprIsConstant(tls, (*ExprList_item)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-1)*12 + 4 /* &.minor */))+8 /* &.a */))).FpExpr) != 0) { var pRHS uintptr = (*ExprList_item)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-1)*12 + 4 /* &.minor */)) + 8 /* &.a */))).FpExpr @@ -143276,21 +143914,21 @@ func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead in *(*Token)(unsafe.Pointer(yymsp + libc.UintptrFromInt32(-2)*12 + 4 /* &.minor */)) = *(*Token)(unsafe.Pointer(yymsp + 4 /* &.minor */)) Xsqlite3ErrorMsg(tls, pParse, - ts+25687 /* "qualified table ..." */, 0) + ts+25697 /* "qualified table ..." */, 0) } break case uint32(266): /* tridxby ::= INDEXED BY nm */ { Xsqlite3ErrorMsg(tls, pParse, - ts+25782 /* "the INDEXED BY c..." */, 0) + ts+25792 /* "the INDEXED BY c..." */, 0) } break case uint32(267): /* tridxby ::= NOT INDEXED */ { Xsqlite3ErrorMsg(tls, pParse, - ts+25866 /* "the NOT INDEXED ..." */, 0) + ts+25876 /* "the NOT INDEXED ..." */, 0) } break case uint32(268): /* trigger_cmd ::= UPDATE orconf trnm tridxby SET setlist from where_opt scanpt */ @@ -143739,9 +144377,9 @@ func yy_syntax_error(tls *libc.TLS, yypParser uintptr, yymajor int32, yyminor To _ = yymajor // Silence some compiler warnings if *(*int8)(unsafe.Pointer((*Token)(unsafe.Pointer(bp + 8 /* &yyminor */)).Fz)) != 0 { - Xsqlite3ErrorMsg(tls, pParse, ts+25663 /* "near \"%T\": synta..." */, libc.VaList(bp, bp+8 /* &yyminor */)) + Xsqlite3ErrorMsg(tls, pParse, ts+25673 /* "near \"%T\": synta..." */, libc.VaList(bp, bp+8 /* &yyminor */)) } else { - Xsqlite3ErrorMsg(tls, pParse, ts+25951 /* "incomplete input" */, 0) + Xsqlite3ErrorMsg(tls, pParse, ts+25961 /* "incomplete input" */, 0) } //*********** End %syntax_error code ***************************************** @@ -144948,7 +145586,7 @@ func Xsqlite3RunParser(tls *libc.TLS, pParse uintptr, zSql uintptr, pzErrMsg uin *(*int32)(unsafe.Pointer(bp + 1252 /* tokenType */)) = analyzeFilterKeyword(tls, (zSql + 6), lastTokenParsed) } else { - Xsqlite3ErrorMsg(tls, pParse, ts+25968 /* "unrecognized tok..." */, libc.VaList(bp, n, zSql)) + Xsqlite3ErrorMsg(tls, pParse, ts+25978 /* "unrecognized tok..." */, libc.VaList(bp, n, zSql)) break } } @@ -144968,12 +145606,12 @@ func Xsqlite3RunParser(tls *libc.TLS, pParse uintptr, zSql uintptr, pzErrMsg uin (*Parse)(unsafe.Pointer(pParse)).Frc = SQLITE_NOMEM } if (((*Parse)(unsafe.Pointer(pParse)).Frc != SQLITE_OK) && ((*Parse)(unsafe.Pointer(pParse)).Frc != SQLITE_DONE)) && ((*Parse)(unsafe.Pointer(pParse)).FzErrMsg == uintptr(0)) { - (*Parse)(unsafe.Pointer(pParse)).FzErrMsg = Xsqlite3MPrintf(tls, db, ts+951 /* "%s" */, libc.VaList(bp+16, Xsqlite3ErrStr(tls, (*Parse)(unsafe.Pointer(pParse)).Frc))) + (*Parse)(unsafe.Pointer(pParse)).FzErrMsg = Xsqlite3MPrintf(tls, db, ts+961 /* "%s" */, libc.VaList(bp+16, Xsqlite3ErrStr(tls, (*Parse)(unsafe.Pointer(pParse)).Frc))) } if (*Parse)(unsafe.Pointer(pParse)).FzErrMsg != 0 { *(*uintptr)(unsafe.Pointer(pzErrMsg)) = (*Parse)(unsafe.Pointer(pParse)).FzErrMsg - Xsqlite3_log(tls, (*Parse)(unsafe.Pointer(pParse)).Frc, ts+25995, /* "%s in \"%s\"" */ + Xsqlite3_log(tls, (*Parse)(unsafe.Pointer(pParse)).Frc, ts+26005, /* "%s in \"%s\"" */ libc.VaList(bp+24, *(*uintptr)(unsafe.Pointer(pzErrMsg)), (*Parse)(unsafe.Pointer(pParse)).FzTail)) (*Parse)(unsafe.Pointer(pParse)).FzErrMsg = uintptr(0) nErr++ @@ -145185,7 +145823,7 @@ func Xsqlite3_complete(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:164796: fallthrough case 'C': { - if (nId == 6) && (Xsqlite3_strnicmp(tls, zSql, ts+26006 /* "create" */, 6) == 0) { + if (nId == 6) && (Xsqlite3_strnicmp(tls, zSql, ts+26016 /* "create" */, 6) == 0) { token = U8(TkCREATE) } else { token = U8(TkOTHER) @@ -145198,11 +145836,11 @@ func Xsqlite3_complete(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:164796: fallthrough case 'T': { - if (nId == 7) && (Xsqlite3_strnicmp(tls, zSql, ts+22372 /* "trigger" */, 7) == 0) { + if (nId == 7) && (Xsqlite3_strnicmp(tls, zSql, ts+22382 /* "trigger" */, 7) == 0) { token = U8(TkTRIGGER) - } else if (nId == 4) && (Xsqlite3_strnicmp(tls, zSql, ts+26013 /* "temp" */, 4) == 0) { + } else if (nId == 4) && (Xsqlite3_strnicmp(tls, zSql, ts+26023 /* "temp" */, 4) == 0) { token = U8(TkTEMP) - } else if (nId == 9) && (Xsqlite3_strnicmp(tls, zSql, ts+26018 /* "temporary" */, 9) == 0) { + } else if (nId == 9) && (Xsqlite3_strnicmp(tls, zSql, ts+26028 /* "temporary" */, 9) == 0) { token = U8(TkTEMP) } else { token = U8(TkOTHER) @@ -145215,9 +145853,9 @@ func Xsqlite3_complete(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:164796: fallthrough case 'E': { - if (nId == 3) && (Xsqlite3_strnicmp(tls, zSql, ts+26028 /* "end" */, 3) == 0) { + if (nId == 3) && (Xsqlite3_strnicmp(tls, zSql, ts+26038 /* "end" */, 3) == 0) { token = U8(TkEND) - } else if (nId == 7) && (Xsqlite3_strnicmp(tls, zSql, ts+26032 /* "explain" */, 7) == 0) { + } else if (nId == 7) && (Xsqlite3_strnicmp(tls, zSql, ts+26042 /* "explain" */, 7) == 0) { token = U8(TkEXPLAIN) } else { token = U8(TkOTHER) @@ -146170,7 +146808,7 @@ func functionDestroy(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:166213 if pDestructor != 0 { (*FuncDestructor)(unsafe.Pointer(pDestructor)).FnRef-- if (*FuncDestructor)(unsafe.Pointer(pDestructor)).FnRef == 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pDestructor + 4 /* &.xDestroy */))))(tls, (*FuncDestructor)(unsafe.Pointer(pDestructor)).FpUserData) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*FuncDestructor)(unsafe.Pointer(pDestructor)).FxDestroy})).f(tls, (*FuncDestructor)(unsafe.Pointer(pDestructor)).FpUserData) Xsqlite3DbFree(tls, db, pDestructor) } } @@ -146232,7 +146870,9 @@ func sqlite3Close(tls *libc.TLS, db uintptr, forceZombie int32) int32 { /* sqlit } Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) if (int32((*Sqlite3)(unsafe.Pointer(db)).FmTrace) & SQLITE_TRACE_CLOSE) != 0 { - (*(*func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((db + 204 /* &.trace */ /* &.xV2 */))))(tls, uint32(SQLITE_TRACE_CLOSE), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, db, uintptr(0)) + (*struct { + f func(*libc.TLS, U32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(db + 204 /* &.trace */))})).f(tls, uint32(SQLITE_TRACE_CLOSE), (*Sqlite3)(unsafe.Pointer(db)).FpTraceArg, db, uintptr(0)) } // Force xDisconnect calls on all virtual tables @@ -146250,7 +146890,7 @@ func sqlite3Close(tls *libc.TLS, db uintptr, forceZombie int32) int32 { /* sqlit // SQLITE_BUSY if the connection can not be closed immediately. if !(forceZombie != 0) && (connectionIsBusy(tls, db) != 0) { Xsqlite3ErrorWithMsg(tls, db, SQLITE_BUSY, - ts+26040 /* "unable to close ..." */, 0) + ts+26050 /* "unable to close ..." */, 0) Xsqlite3_mutex_leave(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) return SQLITE_BUSY } @@ -146381,7 +147021,7 @@ func Xsqlite3LeaveMutexAndCloseZombie(tls *libc.TLS, db uintptr) { /* sqlite3.c: // Invoke any destructors registered for collation sequence user data. for j = 0; j < 3; j++ { if (*CollSeq)(unsafe.Pointer(pColl+uintptr(j)*20)).FxDel != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pColl + uintptr(j)*20 + 16 /* &.xDel */))))(tls, (*CollSeq)(unsafe.Pointer(pColl+uintptr(j)*20)).FpUser) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*CollSeq)(unsafe.Pointer(pColl + uintptr(j)*20)).FxDel})).f(tls, (*CollSeq)(unsafe.Pointer(pColl+uintptr(j)*20)).FpUser) } } Xsqlite3DbFree(tls, db, pColl) @@ -146462,7 +147102,7 @@ func Xsqlite3RollbackAll(tls *libc.TLS, db uintptr, tripCode int32) { /* sqlite3 // If one has been configured, invoke the rollback-hook callback if ((*Sqlite3)(unsafe.Pointer(db)).FxRollbackCallback != 0) && ((inTrans != 0) || !(int32((*Sqlite3)(unsafe.Pointer(db)).FautoCommit) != 0)) { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((db + 232 /* &.xRollbackCallback */))))(tls, (*Sqlite3)(unsafe.Pointer(db)).FpRollbackArg) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3)(unsafe.Pointer(db)).FxRollbackCallback})).f(tls, (*Sqlite3)(unsafe.Pointer(db)).FpRollbackArg) } } @@ -146483,259 +147123,259 @@ __1: { switch rc { case SQLITE_OK: - zName = ts + 26108 /* "SQLITE_OK" */ + zName = ts + 26118 /* "SQLITE_OK" */ break case SQLITE_ERROR: - zName = ts + 26118 /* "SQLITE_ERROR" */ + zName = ts + 26128 /* "SQLITE_ERROR" */ break case (SQLITE_ERROR | (int32(3) << 8)): - zName = ts + 26131 /* "SQLITE_ERROR_SNA..." */ + zName = ts + 26141 /* "SQLITE_ERROR_SNA..." */ break case SQLITE_INTERNAL: - zName = ts + 26153 /* "SQLITE_INTERNAL" */ + zName = ts + 26163 /* "SQLITE_INTERNAL" */ break case SQLITE_PERM: - zName = ts + 26169 /* "SQLITE_PERM" */ + zName = ts + 26179 /* "SQLITE_PERM" */ break case SQLITE_ABORT: - zName = ts + 26181 /* "SQLITE_ABORT" */ + zName = ts + 26191 /* "SQLITE_ABORT" */ break case (SQLITE_ABORT | (int32(2) << 8)): - zName = ts + 26194 /* "SQLITE_ABORT_ROL..." */ + zName = ts + 26204 /* "SQLITE_ABORT_ROL..." */ break case SQLITE_BUSY: - zName = ts + 26216 /* "SQLITE_BUSY" */ + zName = ts + 26226 /* "SQLITE_BUSY" */ break case (SQLITE_BUSY | (int32(1) << 8)): - zName = ts + 26228 /* "SQLITE_BUSY_RECO..." */ + zName = ts + 26238 /* "SQLITE_BUSY_RECO..." */ break case (SQLITE_BUSY | (int32(2) << 8)): - zName = ts + 26249 /* "SQLITE_BUSY_SNAP..." */ + zName = ts + 26259 /* "SQLITE_BUSY_SNAP..." */ break case SQLITE_LOCKED: - zName = ts + 26270 /* "SQLITE_LOCKED" */ + zName = ts + 26280 /* "SQLITE_LOCKED" */ break case (SQLITE_LOCKED | (int32(1) << 8)): - zName = ts + 26284 /* "SQLITE_LOCKED_SH..." */ + zName = ts + 26294 /* "SQLITE_LOCKED_SH..." */ break case SQLITE_NOMEM: - zName = ts + 26310 /* "SQLITE_NOMEM" */ + zName = ts + 26320 /* "SQLITE_NOMEM" */ break case SQLITE_READONLY: - zName = ts + 26323 /* "SQLITE_READONLY" */ + zName = ts + 26333 /* "SQLITE_READONLY" */ break case (SQLITE_READONLY | (int32(1) << 8)): - zName = ts + 26339 /* "SQLITE_READONLY_..." */ + zName = ts + 26349 /* "SQLITE_READONLY_..." */ break case (SQLITE_READONLY | (int32(5) << 8)): - zName = ts + 26364 /* "SQLITE_READONLY_..." */ + zName = ts + 26374 /* "SQLITE_READONLY_..." */ break case (SQLITE_READONLY | (int32(3) << 8)): - zName = ts + 26389 /* "SQLITE_READONLY_..." */ + zName = ts + 26399 /* "SQLITE_READONLY_..." */ break case (SQLITE_READONLY | (int32(4) << 8)): - zName = ts + 26414 /* "SQLITE_READONLY_..." */ + zName = ts + 26424 /* "SQLITE_READONLY_..." */ break case (SQLITE_READONLY | (int32(6) << 8)): - zName = ts + 26438 /* "SQLITE_READONLY_..." */ + zName = ts + 26448 /* "SQLITE_READONLY_..." */ break case SQLITE_INTERRUPT: - zName = ts + 26464 /* "SQLITE_INTERRUPT" */ + zName = ts + 26474 /* "SQLITE_INTERRUPT" */ break case SQLITE_IOERR: - zName = ts + 26481 /* "SQLITE_IOERR" */ + zName = ts + 26491 /* "SQLITE_IOERR" */ break case (SQLITE_IOERR | (int32(1) << 8)): - zName = ts + 26494 /* "SQLITE_IOERR_REA..." */ + zName = ts + 26504 /* "SQLITE_IOERR_REA..." */ break case (SQLITE_IOERR | (int32(2) << 8)): - zName = ts + 26512 /* "SQLITE_IOERR_SHO..." */ + zName = ts + 26522 /* "SQLITE_IOERR_SHO..." */ break case (SQLITE_IOERR | (int32(3) << 8)): - zName = ts + 26536 /* "SQLITE_IOERR_WRI..." */ + zName = ts + 26546 /* "SQLITE_IOERR_WRI..." */ break case (SQLITE_IOERR | (int32(4) << 8)): - zName = ts + 26555 /* "SQLITE_IOERR_FSY..." */ + zName = ts + 26565 /* "SQLITE_IOERR_FSY..." */ break case (SQLITE_IOERR | (int32(5) << 8)): - zName = ts + 26574 /* "SQLITE_IOERR_DIR..." */ + zName = ts + 26584 /* "SQLITE_IOERR_DIR..." */ break case (SQLITE_IOERR | (int32(6) << 8)): - zName = ts + 26597 /* "SQLITE_IOERR_TRU..." */ + zName = ts + 26607 /* "SQLITE_IOERR_TRU..." */ break case (SQLITE_IOERR | (int32(7) << 8)): - zName = ts + 26619 /* "SQLITE_IOERR_FST..." */ + zName = ts + 26629 /* "SQLITE_IOERR_FST..." */ break case (SQLITE_IOERR | (int32(8) << 8)): - zName = ts + 26638 /* "SQLITE_IOERR_UNL..." */ + zName = ts + 26648 /* "SQLITE_IOERR_UNL..." */ break case (SQLITE_IOERR | (int32(9) << 8)): - zName = ts + 26658 /* "SQLITE_IOERR_RDL..." */ + zName = ts + 26668 /* "SQLITE_IOERR_RDL..." */ break case (SQLITE_IOERR | (int32(10) << 8)): - zName = ts + 26678 /* "SQLITE_IOERR_DEL..." */ + zName = ts + 26688 /* "SQLITE_IOERR_DEL..." */ break case (SQLITE_IOERR | (int32(12) << 8)): - zName = ts + 26698 /* "SQLITE_IOERR_NOM..." */ + zName = ts + 26708 /* "SQLITE_IOERR_NOM..." */ break case (SQLITE_IOERR | (int32(13) << 8)): - zName = ts + 26717 /* "SQLITE_IOERR_ACC..." */ + zName = ts + 26727 /* "SQLITE_IOERR_ACC..." */ break case (SQLITE_IOERR | (int32(14) << 8)): - zName = ts + 26737 /* "SQLITE_IOERR_CHE..." */ + zName = ts + 26747 /* "SQLITE_IOERR_CHE..." */ break case (SQLITE_IOERR | (int32(15) << 8)): - zName = ts + 26768 /* "SQLITE_IOERR_LOC..." */ + zName = ts + 26778 /* "SQLITE_IOERR_LOC..." */ break case (SQLITE_IOERR | (int32(16) << 8)): - zName = ts + 26786 /* "SQLITE_IOERR_CLO..." */ + zName = ts + 26796 /* "SQLITE_IOERR_CLO..." */ break case (SQLITE_IOERR | (int32(17) << 8)): - zName = ts + 26805 /* "SQLITE_IOERR_DIR..." */ + zName = ts + 26815 /* "SQLITE_IOERR_DIR..." */ break case (SQLITE_IOERR | (int32(18) << 8)): - zName = ts + 26828 /* "SQLITE_IOERR_SHM..." */ + zName = ts + 26838 /* "SQLITE_IOERR_SHM..." */ break case (SQLITE_IOERR | (int32(19) << 8)): - zName = ts + 26849 /* "SQLITE_IOERR_SHM..." */ + zName = ts + 26859 /* "SQLITE_IOERR_SHM..." */ break case (SQLITE_IOERR | (int32(20) << 8)): - zName = ts + 26870 /* "SQLITE_IOERR_SHM..." */ + zName = ts + 26880 /* "SQLITE_IOERR_SHM..." */ break case (SQLITE_IOERR | (int32(21) << 8)): - zName = ts + 26891 /* "SQLITE_IOERR_SHM..." */ + zName = ts + 26901 /* "SQLITE_IOERR_SHM..." */ break case (SQLITE_IOERR | (int32(22) << 8)): - zName = ts + 26911 /* "SQLITE_IOERR_SEE..." */ + zName = ts + 26921 /* "SQLITE_IOERR_SEE..." */ break case (SQLITE_IOERR | (int32(23) << 8)): - zName = ts + 26929 /* "SQLITE_IOERR_DEL..." */ + zName = ts + 26939 /* "SQLITE_IOERR_DEL..." */ break case (SQLITE_IOERR | (int32(24) << 8)): - zName = ts + 26955 /* "SQLITE_IOERR_MMA..." */ + zName = ts + 26965 /* "SQLITE_IOERR_MMA..." */ break case (SQLITE_IOERR | (int32(25) << 8)): - zName = ts + 26973 /* "SQLITE_IOERR_GET..." */ + zName = ts + 26983 /* "SQLITE_IOERR_GET..." */ break case (SQLITE_IOERR | (int32(26) << 8)): - zName = ts + 26998 /* "SQLITE_IOERR_CON..." */ + zName = ts + 27008 /* "SQLITE_IOERR_CON..." */ break case SQLITE_CORRUPT: - zName = ts + 27020 /* "SQLITE_CORRUPT" */ + zName = ts + 27030 /* "SQLITE_CORRUPT" */ break case (SQLITE_CORRUPT | (int32(1) << 8)): - zName = ts + 27035 /* "SQLITE_CORRUPT_V..." */ + zName = ts + 27045 /* "SQLITE_CORRUPT_V..." */ break case SQLITE_NOTFOUND: - zName = ts + 27055 /* "SQLITE_NOTFOUND" */ + zName = ts + 27065 /* "SQLITE_NOTFOUND" */ break case SQLITE_FULL: - zName = ts + 27071 /* "SQLITE_FULL" */ + zName = ts + 27081 /* "SQLITE_FULL" */ break case SQLITE_CANTOPEN: - zName = ts + 27083 /* "SQLITE_CANTOPEN" */ + zName = ts + 27093 /* "SQLITE_CANTOPEN" */ break case (SQLITE_CANTOPEN | (int32(1) << 8)): - zName = ts + 27099 /* "SQLITE_CANTOPEN_..." */ + zName = ts + 27109 /* "SQLITE_CANTOPEN_..." */ break case (SQLITE_CANTOPEN | (int32(2) << 8)): - zName = ts + 27125 /* "SQLITE_CANTOPEN_..." */ + zName = ts + 27135 /* "SQLITE_CANTOPEN_..." */ break case (SQLITE_CANTOPEN | (int32(3) << 8)): - zName = ts + 27147 /* "SQLITE_CANTOPEN_..." */ + zName = ts + 27157 /* "SQLITE_CANTOPEN_..." */ break case (SQLITE_CANTOPEN | (int32(4) << 8)): - zName = ts + 27172 /* "SQLITE_CANTOPEN_..." */ + zName = ts + 27182 /* "SQLITE_CANTOPEN_..." */ break case (SQLITE_CANTOPEN | (int32(6) << 8)): - zName = ts + 27197 /* "SQLITE_CANTOPEN_..." */ + zName = ts + 27207 /* "SQLITE_CANTOPEN_..." */ break case SQLITE_PROTOCOL: - zName = ts + 27221 /* "SQLITE_PROTOCOL" */ + zName = ts + 27231 /* "SQLITE_PROTOCOL" */ break case SQLITE_EMPTY: - zName = ts + 27237 /* "SQLITE_EMPTY" */ + zName = ts + 27247 /* "SQLITE_EMPTY" */ break case SQLITE_SCHEMA: - zName = ts + 27250 /* "SQLITE_SCHEMA" */ + zName = ts + 27260 /* "SQLITE_SCHEMA" */ break case SQLITE_TOOBIG: - zName = ts + 27264 /* "SQLITE_TOOBIG" */ + zName = ts + 27274 /* "SQLITE_TOOBIG" */ break case SQLITE_CONSTRAINT: - zName = ts + 27278 /* "SQLITE_CONSTRAIN..." */ + zName = ts + 27288 /* "SQLITE_CONSTRAIN..." */ break case (SQLITE_CONSTRAINT | (int32(8) << 8)): - zName = ts + 27296 /* "SQLITE_CONSTRAIN..." */ + zName = ts + 27306 /* "SQLITE_CONSTRAIN..." */ break case (SQLITE_CONSTRAINT | (int32(7) << 8)): - zName = ts + 27321 /* "SQLITE_CONSTRAIN..." */ + zName = ts + 27331 /* "SQLITE_CONSTRAIN..." */ break case (SQLITE_CONSTRAINT | (int32(3) << 8)): - zName = ts + 27347 /* "SQLITE_CONSTRAIN..." */ + zName = ts + 27357 /* "SQLITE_CONSTRAIN..." */ break case (SQLITE_CONSTRAINT | (int32(1) << 8)): - zName = ts + 27376 /* "SQLITE_CONSTRAIN..." */ + zName = ts + 27386 /* "SQLITE_CONSTRAIN..." */ break case (SQLITE_CONSTRAINT | (int32(6) << 8)): - zName = ts + 27400 /* "SQLITE_CONSTRAIN..." */ + zName = ts + 27410 /* "SQLITE_CONSTRAIN..." */ break case (SQLITE_CONSTRAINT | (int32(5) << 8)): - zName = ts + 27429 /* "SQLITE_CONSTRAIN..." */ + zName = ts + 27439 /* "SQLITE_CONSTRAIN..." */ break case (SQLITE_CONSTRAINT | (int32(2) << 8)): - zName = ts + 27455 /* "SQLITE_CONSTRAIN..." */ + zName = ts + 27465 /* "SQLITE_CONSTRAIN..." */ break case (SQLITE_CONSTRAINT | (int32(9) << 8)): - zName = ts + 27484 /* "SQLITE_CONSTRAIN..." */ + zName = ts + 27494 /* "SQLITE_CONSTRAIN..." */ break case (SQLITE_CONSTRAINT | (int32(4) << 8)): - zName = ts + 27507 /* "SQLITE_CONSTRAIN..." */ + zName = ts + 27517 /* "SQLITE_CONSTRAIN..." */ break case (SQLITE_CONSTRAINT | (int32(10) << 8)): - zName = ts + 27534 /* "SQLITE_CONSTRAIN..." */ + zName = ts + 27544 /* "SQLITE_CONSTRAIN..." */ break case SQLITE_MISMATCH: - zName = ts + 27558 /* "SQLITE_MISMATCH" */ + zName = ts + 27568 /* "SQLITE_MISMATCH" */ break case SQLITE_MISUSE: - zName = ts + 27574 /* "SQLITE_MISUSE" */ + zName = ts + 27584 /* "SQLITE_MISUSE" */ break case SQLITE_NOLFS: - zName = ts + 27588 /* "SQLITE_NOLFS" */ + zName = ts + 27598 /* "SQLITE_NOLFS" */ break case SQLITE_AUTH: - zName = ts + 27601 /* "SQLITE_AUTH" */ + zName = ts + 27611 /* "SQLITE_AUTH" */ break case SQLITE_FORMAT: - zName = ts + 27613 /* "SQLITE_FORMAT" */ + zName = ts + 27623 /* "SQLITE_FORMAT" */ break case SQLITE_RANGE: - zName = ts + 27627 /* "SQLITE_RANGE" */ + zName = ts + 27637 /* "SQLITE_RANGE" */ break case SQLITE_NOTADB: - zName = ts + 27640 /* "SQLITE_NOTADB" */ + zName = ts + 27650 /* "SQLITE_NOTADB" */ break case SQLITE_ROW: - zName = ts + 27654 /* "SQLITE_ROW" */ + zName = ts + 27664 /* "SQLITE_ROW" */ break case SQLITE_NOTICE: - zName = ts + 27665 /* "SQLITE_NOTICE" */ + zName = ts + 27675 /* "SQLITE_NOTICE" */ break case (SQLITE_NOTICE | (int32(1) << 8)): - zName = ts + 27679 /* "SQLITE_NOTICE_RE..." */ + zName = ts + 27689 /* "SQLITE_NOTICE_RE..." */ break case (SQLITE_NOTICE | (int32(2) << 8)): - zName = ts + 27705 /* "SQLITE_NOTICE_RE..." */ + zName = ts + 27715 /* "SQLITE_NOTICE_RE..." */ break case SQLITE_WARNING: - zName = ts + 27736 /* "SQLITE_WARNING" */ + zName = ts + 27746 /* "SQLITE_WARNING" */ break case (SQLITE_WARNING | (int32(1) << 8)): - zName = ts + 27751 /* "SQLITE_WARNING_A..." */ + zName = ts + 27761 /* "SQLITE_WARNING_A..." */ break case SQLITE_DONE: - zName = ts + 27776 /* "SQLITE_DONE" */ + zName = ts + 27786 /* "SQLITE_DONE" */ break } @@ -146749,7 +147389,7 @@ __2: __3: ; if zName == uintptr(0) { - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof(zBuf)), uintptr(unsafe.Pointer(&zBuf)), ts+27788 /* "SQLITE_UNKNOWN(%..." */, libc.VaList(bp, origRc)) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof(zBuf)), uintptr(unsafe.Pointer(&zBuf)), ts+27798 /* "SQLITE_UNKNOWN(%..." */, libc.VaList(bp, origRc)) zName = uintptr(unsafe.Pointer(&zBuf)) } return zName @@ -146760,23 +147400,23 @@ var zBuf [50]int8 /* sqlite3.c:166643:17: */ // Return a static string that describes the kind of error specified in the // argument. func Xsqlite3ErrStr(tls *libc.TLS, rc int32) uintptr { /* sqlite3.c:166655:27: */ - var zErr uintptr = ts + 27807 /* "unknown error" */ + var zErr uintptr = ts + 27817 /* "unknown error" */ switch rc { case (SQLITE_ABORT | (int32(2) << 8)): { - zErr = ts + 27821 /* "abort due to ROL..." */ + zErr = ts + 27831 /* "abort due to ROL..." */ break } case SQLITE_ROW: { - zErr = ts + 27843 /* "another row avai..." */ + zErr = ts + 27853 /* "another row avai..." */ break } case SQLITE_DONE: { - zErr = ts + 27865 /* "no more rows ava..." */ + zErr = ts + 27875 /* "no more rows ava..." */ break } @@ -146794,35 +147434,35 @@ func Xsqlite3ErrStr(tls *libc.TLS, rc int32) uintptr { /* sqlite3.c:166655:27: * } var aMsg = [29]uintptr{ - /* SQLITE_OK */ ts + 27888, /* "not an error" */ - /* SQLITE_ERROR */ ts + 27901, /* "SQL logic error" */ + /* SQLITE_OK */ ts + 27898, /* "not an error" */ + /* SQLITE_ERROR */ ts + 27911, /* "SQL logic error" */ /* SQLITE_INTERNAL */ uintptr(0), - /* SQLITE_PERM */ ts + 27917, /* "access permissio..." */ - /* SQLITE_ABORT */ ts + 27942, /* "query aborted" */ - /* SQLITE_BUSY */ ts + 27956, /* "database is lock..." */ - /* SQLITE_LOCKED */ ts + 27975, /* "database table i..." */ - /* SQLITE_NOMEM */ ts + 7999, /* "out of memory" */ - /* SQLITE_READONLY */ ts + 28000, /* "attempt to write..." */ - /* SQLITE_INTERRUPT */ ts + 28037, /* "interrupted" */ - /* SQLITE_IOERR */ ts + 28049, /* "disk I/O error" */ - /* SQLITE_CORRUPT */ ts + 28064, /* "database disk im..." */ - /* SQLITE_NOTFOUND */ ts + 28097, /* "unknown operatio..." */ - /* SQLITE_FULL */ ts + 28115, /* "database or disk..." */ - /* SQLITE_CANTOPEN */ ts + 28140, /* "unable to open d..." */ - /* SQLITE_PROTOCOL */ ts + 28169, /* "locking protocol" */ + /* SQLITE_PERM */ ts + 27927, /* "access permissio..." */ + /* SQLITE_ABORT */ ts + 27952, /* "query aborted" */ + /* SQLITE_BUSY */ ts + 27966, /* "database is lock..." */ + /* SQLITE_LOCKED */ ts + 27985, /* "database table i..." */ + /* SQLITE_NOMEM */ ts + 8009, /* "out of memory" */ + /* SQLITE_READONLY */ ts + 28010, /* "attempt to write..." */ + /* SQLITE_INTERRUPT */ ts + 28047, /* "interrupted" */ + /* SQLITE_IOERR */ ts + 28059, /* "disk I/O error" */ + /* SQLITE_CORRUPT */ ts + 28074, /* "database disk im..." */ + /* SQLITE_NOTFOUND */ ts + 28107, /* "unknown operatio..." */ + /* SQLITE_FULL */ ts + 28125, /* "database or disk..." */ + /* SQLITE_CANTOPEN */ ts + 28150, /* "unable to open d..." */ + /* SQLITE_PROTOCOL */ ts + 28179, /* "locking protocol" */ /* SQLITE_EMPTY */ uintptr(0), - /* SQLITE_SCHEMA */ ts + 7729, /* "database schema ..." */ - /* SQLITE_TOOBIG */ ts + 7266, /* "string or blob t..." */ - /* SQLITE_CONSTRAINT */ ts + 28186, /* "constraint faile..." */ - /* SQLITE_MISMATCH */ ts + 28204, /* "datatype mismatc..." */ - /* SQLITE_MISUSE */ ts + 28222, /* "bad parameter or..." */ + /* SQLITE_SCHEMA */ ts + 7739, /* "database schema ..." */ + /* SQLITE_TOOBIG */ ts + 7276, /* "string or blob t..." */ + /* SQLITE_CONSTRAINT */ ts + 28196, /* "constraint faile..." */ + /* SQLITE_MISMATCH */ ts + 28214, /* "datatype mismatc..." */ + /* SQLITE_MISUSE */ ts + 28232, /* "bad parameter or..." */ /* SQLITE_NOLFS */ uintptr(0), - /* SQLITE_AUTH */ ts + 28256, /* "authorization de..." */ + /* SQLITE_AUTH */ ts + 28266, /* "authorization de..." */ /* SQLITE_FORMAT */ uintptr(0), - /* SQLITE_RANGE */ ts + 28277, /* "column index out..." */ - /* SQLITE_NOTADB */ ts + 28303, /* "file is not a da..." */ - /* SQLITE_NOTICE */ ts + 28326, /* "notification mes..." */ - /* SQLITE_WARNING */ ts + 28347, /* "warning message" */ + /* SQLITE_RANGE */ ts + 28287, /* "column index out..." */ + /* SQLITE_NOTADB */ ts + 28313, /* "file is not a da..." */ + /* SQLITE_NOTICE */ ts + 28336, /* "notification mes..." */ + /* SQLITE_WARNING */ ts + 28357, /* "warning message" */ } /* sqlite3.c:166656:20 */ // This routine implements a busy callback that sleeps and tries @@ -146870,7 +147510,9 @@ func Xsqlite3InvokeBusyHandler(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:16 if ((*BusyHandler)(unsafe.Pointer(p)).FxBusyHandler == uintptr(0)) || ((*BusyHandler)(unsafe.Pointer(p)).FnBusy < 0) { return 0 } - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((p /* &.xBusyHandler */))))(tls, (*BusyHandler)(unsafe.Pointer(p)).FpBusyArg, (*BusyHandler)(unsafe.Pointer(p)).FnBusy) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*BusyHandler)(unsafe.Pointer(p)).FxBusyHandler})).f(tls, (*BusyHandler)(unsafe.Pointer(p)).FpBusyArg, (*BusyHandler)(unsafe.Pointer(p)).FnBusy) if rc == 0 { (*BusyHandler)(unsafe.Pointer(p)).FnBusy = -1 } else { @@ -146987,7 +147629,7 @@ func Xsqlite3CreateFunc(tls *libc.TLS, db uintptr, zFunctionName uintptr, nArg i if ((p != 0) && (((*FuncDef)(unsafe.Pointer(p)).FfuncFlags & U32(SQLITE_FUNC_ENCMASK)) == U32(enc))) && (int32((*FuncDef)(unsafe.Pointer(p)).FnArg) == nArg) { if (*Sqlite3)(unsafe.Pointer(db)).FnVdbeActive != 0 { Xsqlite3ErrorWithMsg(tls, db, SQLITE_BUSY, - ts+28363 /* "unable to delete..." */, 0) + ts+28373 /* "unable to delete..." */, 0) return SQLITE_BUSY } else { @@ -147049,7 +147691,7 @@ func createFunctionApi(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc goto __2 } Xsqlite3OomFault(tls, db) - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDestroy)))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDestroy})).f(tls, p) goto out __2: ; @@ -147064,7 +147706,7 @@ __1: goto __3 } - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDestroy)))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDestroy})).f(tls, p) Xsqlite3_free(tls, pArg) __3: ; @@ -147120,7 +147762,7 @@ func sqlite3InvalidFunction(tls *libc.TLS, context uintptr, NotUsed int32, NotUs _ = NotUsed _ = NotUsed2 zErr = Xsqlite3_mprintf(tls, - ts+28426 /* "unable to use fu..." */, libc.VaList(bp, zName)) + ts+28436 /* "unable to use fu..." */, libc.VaList(bp, zName)) Xsqlite3_result_error(tls, context, zErr, -1) Xsqlite3_free(tls, zErr) } @@ -147342,7 +147984,7 @@ func Xsqlite3_wal_checkpoint_v2(tls *libc.TLS, db uintptr, zDb uintptr, eMode in } if iDb < 0 { rc = SQLITE_ERROR - Xsqlite3ErrorWithMsg(tls, db, SQLITE_ERROR, ts+28477 /* "unknown database..." */, libc.VaList(bp, zDb)) + Xsqlite3ErrorWithMsg(tls, db, SQLITE_ERROR, ts+28487 /* "unknown database..." */, libc.VaList(bp, zDb)) } else { (*Sqlite3)(unsafe.Pointer(db)).FbusyHandler.FnBusy = 0 rc = Xsqlite3Checkpoint(tls, db, iDb, eMode, pnLog, pnCkpt) @@ -147561,7 +148203,7 @@ func createCollation(tls *libc.TLS, db uintptr, zName uintptr, enc U8, pCtx uint if (pColl != 0) && ((*CollSeq)(unsafe.Pointer(pColl)).FxCmp != 0) { if (*Sqlite3)(unsafe.Pointer(db)).FnVdbeActive != 0 { Xsqlite3ErrorWithMsg(tls, db, SQLITE_BUSY, - ts+28498 /* "unable to delete..." */, 0) + ts+28508 /* "unable to delete..." */, 0) return SQLITE_BUSY } Xsqlite3ExpirePreparedStatements(tls, db, 0) @@ -147578,7 +148220,7 @@ func createCollation(tls *libc.TLS, db uintptr, zName uintptr, enc U8, pCtx uint var p uintptr = (aColl + uintptr(j)*20) if int32((*CollSeq)(unsafe.Pointer(p)).Fenc) == int32((*CollSeq)(unsafe.Pointer(pColl)).Fenc) { if (*CollSeq)(unsafe.Pointer(p)).FxDel != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((p + 16 /* &.xDel */))))(tls, (*CollSeq)(unsafe.Pointer(p)).FpUser) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*CollSeq)(unsafe.Pointer(p)).FxDel})).f(tls, (*CollSeq)(unsafe.Pointer(p)).FpUser) } (*CollSeq)(unsafe.Pointer(p)).FxCmp = uintptr(0) } @@ -147704,7 +148346,7 @@ func Xsqlite3ParseUri(tls *libc.TLS, zDefaultVfs uintptr, zUri uintptr, pFlags u if !(((((flags & uint32(SQLITE_OPEN_URI)) != 0) || // IMP: R-48725-32206 (Xsqlite3Config.FbOpenUri != 0)) && // IMP: R-51689-46548 - (nUri >= 5)) && (libc.Xmemcmp(tls, zUri, ts+28566 /* "file:" */, uint32(5)) == 0)) { + (nUri >= 5)) && (libc.Xmemcmp(tls, zUri, ts+28576 /* "file:" */, uint32(5)) == 0)) { goto __1 } // Input character index iOut = 0 // Output character index @@ -147752,10 +148394,10 @@ __8: goto __8 __9: ; - if !((iIn != 7) && ((iIn != 16) || (libc.Xmemcmp(tls, ts+28572 /* "localhost" */, (zUri+7), uint32(9)) != 0))) { + if !((iIn != 7) && ((iIn != 16) || (libc.Xmemcmp(tls, ts+28582 /* "localhost" */, (zUri+7), uint32(9)) != 0))) { goto __10 } - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+28582, /* "invalid uri auth..." */ + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+28592, /* "invalid uri auth..." */ libc.VaList(bp, (iIn-7), (zUri+7))) rc = SQLITE_ERROR goto parse_uri_out @@ -147877,7 +148519,7 @@ __27: zVal = (zOpt + uintptr((nOpt + 1))) nVal = Xsqlite3Strlen30(tls, zVal) - if !((nOpt == 3) && (libc.Xmemcmp(tls, ts+28610 /* "vfs" */, zOpt, uint32(3)) == 0)) { + if !((nOpt == 3) && (libc.Xmemcmp(tls, ts+28620 /* "vfs" */, zOpt, uint32(3)) == 0)) { goto __29 } zVfs = zVal @@ -147888,17 +148530,17 @@ __29: mask = 0 limit = 0 - if !((nOpt == 5) && (libc.Xmemcmp(tls, ts+28614 /* "cache" */, zOpt, uint32(5)) == 0)) { + if !((nOpt == 5) && (libc.Xmemcmp(tls, ts+28624 /* "cache" */, zOpt, uint32(5)) == 0)) { goto __31 } mask = (SQLITE_OPEN_SHAREDCACHE | SQLITE_OPEN_PRIVATECACHE) aMode = uintptr(unsafe.Pointer(&aCacheMode)) limit = mask - zModeType = ts + 28614 /* "cache" */ + zModeType = ts + 28624 /* "cache" */ __31: ; - if !((nOpt == 4) && (libc.Xmemcmp(tls, ts+28620 /* "mode" */, zOpt, uint32(4)) == 0)) { + if !((nOpt == 4) && (libc.Xmemcmp(tls, ts+28630 /* "mode" */, zOpt, uint32(4)) == 0)) { goto __32 } @@ -147906,7 +148548,7 @@ __31: SQLITE_OPEN_CREATE) | SQLITE_OPEN_MEMORY) aMode = uintptr(unsafe.Pointer(&aOpenMode)) limit = (int32(uint32(mask) & flags)) - zModeType = ts + 4654 /* "access" */ + zModeType = ts + 4664 /* "access" */ __32: ; @@ -147937,7 +148579,7 @@ __36: if !(mode == 0) { goto __38 } - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+28625 /* "no such %s mode:..." */, libc.VaList(bp+16, zModeType, zVal)) + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+28635 /* "no such %s mode:..." */, libc.VaList(bp+16, zModeType, zVal)) rc = SQLITE_ERROR goto parse_uri_out __38: @@ -147945,7 +148587,7 @@ __38: if !((mode & libc.CplInt32(SQLITE_OPEN_MEMORY)) > limit) { goto __39 } - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+28645, /* "%s mode not allo..." */ + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+28655, /* "%s mode not allo..." */ libc.VaList(bp+32, zModeType, zVal)) rc = SQLITE_PERM goto parse_uri_out @@ -147988,7 +148630,7 @@ __2: if !(*(*uintptr)(unsafe.Pointer(ppVfs)) == uintptr(0)) { goto __42 } - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+28669 /* "no such vfs: %s" */, libc.VaList(bp+48, zVfs)) + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+28679 /* "no such vfs: %s" */, libc.VaList(bp+48, zVfs)) rc = SQLITE_ERROR __42: ; @@ -148011,15 +148653,15 @@ type OpenMode = struct { } /* sqlite3.c:168064:9 */ var aCacheMode = [3]OpenMode{ - {Fz: ts + 19910 /* "shared" */, Fmode: SQLITE_OPEN_SHAREDCACHE}, - {Fz: ts + 28685 /* "private" */, Fmode: SQLITE_OPEN_PRIVATECACHE}, + {Fz: ts + 19920 /* "shared" */, Fmode: SQLITE_OPEN_SHAREDCACHE}, + {Fz: ts + 28695 /* "private" */, Fmode: SQLITE_OPEN_PRIVATECACHE}, {}, } /* sqlite3.c:168073:34 */ var aOpenMode = [5]OpenMode{ - {Fz: ts + 28693 /* "ro" */, Fmode: SQLITE_OPEN_READONLY}, - {Fz: ts + 28696 /* "rw" */, Fmode: SQLITE_OPEN_READWRITE}, - {Fz: ts + 28699 /* "rwc" */, Fmode: (SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE)}, - {Fz: ts + 19293 /* "memory" */, Fmode: SQLITE_OPEN_MEMORY}, + {Fz: ts + 28703 /* "ro" */, Fmode: SQLITE_OPEN_READONLY}, + {Fz: ts + 28706 /* "rw" */, Fmode: SQLITE_OPEN_READWRITE}, + {Fz: ts + 28709 /* "rwc" */, Fmode: (SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE)}, + {Fz: ts + 19303 /* "memory" */, Fmode: SQLITE_OPEN_MEMORY}, {}, } /* sqlite3.c:168085:34 */ @@ -148201,10 +148843,10 @@ __12: createCollation(tls, db, uintptr(unsafe.Pointer(&Xsqlite3StrBINARY)), uint8(SQLITE_UTF16LE), uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32 }{binCollFunc})), uintptr(0)) - createCollation(tls, db, ts+24515 /* "NOCASE" */, uint8(SQLITE_UTF8), uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + createCollation(tls, db, ts+24525 /* "NOCASE" */, uint8(SQLITE_UTF8), uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32 }{nocaseCollatingFunc})), uintptr(0)) - createCollation(tls, db, ts+28703 /* "RTRIM" */, uint8(SQLITE_UTF8), uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + createCollation(tls, db, ts+28713 /* "RTRIM" */, uint8(SQLITE_UTF8), uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32 }{rtrimCollFunc})), uintptr(0)) if !((*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0) { @@ -148250,7 +148892,7 @@ __19: ; Xsqlite3ErrorWithMsg(tls, db, rc, func() uintptr { if *(*uintptr)(unsafe.Pointer(bp + 16 /* zErrMsg */)) != 0 { - return ts + 951 /* "%s" */ + return ts + 961 /* "%s" */ } return uintptr(0) }(), libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 16 /* zErrMsg */)))) @@ -148288,9 +148930,9 @@ __22: // The default safety_level for the main database is FULL; for the temp // database it is OFF. This matches the pager layer defaults. - (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb)).FzDbSName = ts + 8566 /* "main" */ + (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb)).FzDbSName = ts + 8576 /* "main" */ (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb)).Fsafety_level = (U8(SQLITE_DEFAULT_SYNCHRONOUS + 1)) - (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + 1*16)).FzDbSName = ts + 26013 /* "temp" */ + (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + 1*16)).FzDbSName = ts + 26023 /* "temp" */ (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + 1*16)).Fsafety_level = U8(PAGER_SYNCHRONOUS_OFF) (*Sqlite3)(unsafe.Pointer(db)).Fmagic = SQLITE_MAGIC_OPEN @@ -148408,7 +149050,7 @@ func Xsqlite3_open16(tls *libc.TLS, zFilename uintptr, ppDb uintptr) int32 { /* return rc } if zFilename == uintptr(0) { - zFilename = ts + 28709 /* "\x00\x00" */ + zFilename = ts + 28719 /* "\x00\x00" */ } pVal = Xsqlite3ValueNew(tls, uintptr(0)) Xsqlite3ValueSetStr(tls, pVal, -1, zFilename, uint8(SQLITE_UTF16LE), uintptr(0)) @@ -148511,24 +149153,24 @@ func Xsqlite3ReportError(tls *libc.TLS, iErr int32, lineno int32, zType uintptr) bp := tls.Alloc(24) defer tls.Free(24) - Xsqlite3_log(tls, iErr, ts+28712, /* "%s at line %d of..." */ + Xsqlite3_log(tls, iErr, ts+28722, /* "%s at line %d of..." */ libc.VaList(bp, zType, lineno, (uintptr(20)+Xsqlite3_sourceid(tls)))) return iErr } func Xsqlite3CorruptError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:168711:20: */ - return Xsqlite3ReportError(tls, SQLITE_CORRUPT, lineno, ts+28737 /* "database corrupt..." */) + return Xsqlite3ReportError(tls, SQLITE_CORRUPT, lineno, ts+28747 /* "database corrupt..." */) } func Xsqlite3MisuseError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:168715:20: */ - return Xsqlite3ReportError(tls, SQLITE_MISUSE, lineno, ts+28757 /* "misuse" */) + return Xsqlite3ReportError(tls, SQLITE_MISUSE, lineno, ts+28767 /* "misuse" */) } func Xsqlite3CantopenError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:168719:20: */ - return Xsqlite3ReportError(tls, SQLITE_CANTOPEN, lineno, ts+28764 /* "cannot open file" */) + return Xsqlite3ReportError(tls, SQLITE_CANTOPEN, lineno, ts+28774 /* "cannot open file" */) } // This is a convenience routine that makes sure that all thread-specific @@ -148655,7 +149297,7 @@ __4: autoinc = (libc.Bool32((int32((*Table)(unsafe.Pointer(pTab)).FiPKey) == iCol) && (((*Table)(unsafe.Pointer(pTab)).FtabFlags & U32(TF_Autoincrement)) != U32(0)))) goto __13 __12: - zDataType = ts + 14702 /* "INTEGER" */ + zDataType = ts + 14712 /* "INTEGER" */ primarykey = 1 __13: ; @@ -148707,14 +149349,14 @@ __19: goto __20 } Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(bp + 24 /* zErrMsg */))) - *(*uintptr)(unsafe.Pointer(bp + 24 /* zErrMsg */)) = Xsqlite3MPrintf(tls, db, ts+28781 /* "no such table co..." */, libc.VaList(bp, zTableName, + *(*uintptr)(unsafe.Pointer(bp + 24 /* zErrMsg */)) = Xsqlite3MPrintf(tls, db, ts+28791 /* "no such table co..." */, libc.VaList(bp, zTableName, zColumnName)) rc = SQLITE_ERROR __20: ; Xsqlite3ErrorWithMsg(tls, db, rc, func() uintptr { if *(*uintptr)(unsafe.Pointer(bp + 24 /* zErrMsg */)) != 0 { - return ts + 951 /* "%s" */ + return ts + 961 /* "%s" */ } return uintptr(0) }(), libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer(bp + 24 /* zErrMsg */)))) @@ -148941,7 +149583,7 @@ func Xsqlite3_test_control(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlit { var x int32 = 0 - rc = libc.AtomicLoadInt32(&x) + rc = x break } @@ -149513,7 +150155,7 @@ func Xsqlite3_compileoption_used(tls *libc.TLS, zOptName uintptr) int32 { /* sql azCompileOpt = Xsqlite3CompileOptions(tls, bp /* &nOpt */) - if Xsqlite3_strnicmp(tls, zOptName, ts+28809 /* "SQLITE_" */, 7) == 0 { + if Xsqlite3_strnicmp(tls, zOptName, ts+28819 /* "SQLITE_" */, 7) == 0 { zOptName += uintptr(7) } n = Xsqlite3Strlen30(tls, zOptName) @@ -149653,7 +150295,9 @@ func Xsqlite3_unlock_notify(tls *libc.TLS, db uintptr, xNotify uintptr, pArg uin // The blocking transaction has been concluded. Or there never was a // blocking transaction. In either case, invoke the notify callback // immediately. - (*(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(&xNotify)))(tls, bp /* &pArg */, 1) + (*struct { + f func(*libc.TLS, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{xNotify})).f(tls, bp /* &pArg */, 1) } else { var p uintptr @@ -149674,7 +150318,7 @@ func Xsqlite3_unlock_notify(tls *libc.TLS, db uintptr, xNotify uintptr, pArg uin Xsqlite3ErrorWithMsg(tls, db, rc, func() uintptr { if rc != 0 { - return ts + 28817 /* "database is dead..." */ + return ts + 28827 /* "database is dead..." */ } return uintptr(0) }(), 0) @@ -149740,7 +150384,9 @@ func Xsqlite3ConnectionUnlocked(tls *libc.TLS, db uintptr) { /* sqlite3.c:170018 if (*Sqlite3)(unsafe.Pointer(p)).FpUnlockConnection == db { if ((*Sqlite3)(unsafe.Pointer(p)).FxUnlockNotify != xUnlockNotify) && (nArg != 0) { - (*(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(&xUnlockNotify)))(tls, aArg, nArg) + (*struct { + f func(*libc.TLS, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{xUnlockNotify})).f(tls, aArg, nArg) nArg = 0 } @@ -149778,7 +150424,9 @@ func Xsqlite3ConnectionUnlocked(tls *libc.TLS, db uintptr) { /* sqlite3.c:170018 // reduce the applications ability to prioritize multiple // connections. But it is the best that can be done under the // circumstances. - (*(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(&xUnlockNotify)))(tls, aArg, nArg) + (*struct { + f func(*libc.TLS, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{xUnlockNotify})).f(tls, aArg, nArg) nArg = 0 } } @@ -149802,7 +150450,9 @@ func Xsqlite3ConnectionUnlocked(tls *libc.TLS, db uintptr) { /* sqlite3.c:170018 } if nArg != 0 { - (*(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(&xUnlockNotify)))(tls, aArg, nArg) + (*struct { + f func(*libc.TLS, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{xUnlockNotify})).f(tls, aArg, nArg) } Xsqlite3_free(tls, aDyn) leaveMutex(tls) // Leave STATIC_MAIN mutex @@ -150431,24 +151081,24 @@ var jsonIsSpace = [256]int8{ // Objects type JsonString1 = struct { - FpCtx uintptr - FzBuf uintptr - FnAlloc U64 - FnUsed U64 - FbStatic U8 - FbErr U8 - FzSpace [100]int8 - _ [2]byte + FpCtx uintptr + FzBuf uintptr + FnAlloc U64 + FnUsed U64 + FbStatic U8 + FbErr U8 + FzSpace [100]int8 + F__ccgo_pad1 [2]byte } /* sqlite3.c:189736:9 */ // Objects type JsonString = JsonString1 /* sqlite3.c:189736:27 */ type JsonNode1 = struct { - FeType U8 - FjnFlags U8 - _ [2]byte - Fn U32 - Fu struct{ FzJContent uintptr } + FeType U8 + FjnFlags U8 + F__ccgo_pad1 [2]byte + Fn U32 + Fu struct{ FzJContent uintptr } } /* sqlite3.c:189737:9 */ type JsonNode = JsonNode1 /* sqlite3.c:189737:25 */ @@ -150473,7 +151123,7 @@ type JsonParse = JsonParse1 /* sqlite3.c:189738:26 */ // Names of the various JSON types: var jsonType = [8]uintptr{ - ts + 8076 /* "null" */, ts + 8878 /* "true" */, ts + 8883 /* "false" */, ts + 8086 /* "integer" */, ts + 8081 /* "real" */, ts + 16826 /* "text" */, ts + 28840 /* "array" */, ts + 28846, /* "object" */ + ts + 8086 /* "null" */, ts + 8888 /* "true" */, ts + 8893 /* "false" */, ts + 8096 /* "integer" */, ts + 8091 /* "real" */, ts + 16836 /* "text" */, ts + 28850 /* "array" */, ts + 28856, /* "object" */ } /* sqlite3.c:189771:19 */ // Maximum nesting depth of JSON for this implementation. @@ -150653,7 +151303,7 @@ __10: *(*int8)(unsafe.Pointer((*JsonString)(unsafe.Pointer(p)).FzBuf + uintptr(libc.PostIncUint64(&(*JsonString)(unsafe.Pointer(p)).FnUsed, 1)))) = int8('0') *(*int8)(unsafe.Pointer((*JsonString)(unsafe.Pointer(p)).FzBuf + uintptr(libc.PostIncUint64(&(*JsonString)(unsafe.Pointer(p)).FnUsed, 1)))) = int8('0') *(*int8)(unsafe.Pointer((*JsonString)(unsafe.Pointer(p)).FzBuf + uintptr(libc.PostIncUint64(&(*JsonString)(unsafe.Pointer(p)).FnUsed, 1)))) = (int8('0' + (int32(c) >> 4))) - c = uint8(*(*int8)(unsafe.Pointer(ts + 28853 /* "0123456789abcdef" */ + uintptr((int32(c) & 0xf))))) + c = uint8(*(*int8)(unsafe.Pointer(ts + 28863 /* "0123456789abcdef" */ + uintptr((int32(c) & 0xf))))) __8: ; __6: @@ -150681,7 +151331,7 @@ func jsonAppendValue(tls *libc.TLS, p uintptr, pValue uintptr) { /* sqlite3.c:18 switch Xsqlite3_value_type(tls, pValue) { case SQLITE_NULL: { - jsonAppendRaw(tls, p, ts+8076 /* "null" */, uint32(4)) + jsonAppendRaw(tls, p, ts+8086 /* "null" */, uint32(4)) break } @@ -150710,7 +151360,7 @@ func jsonAppendValue(tls *libc.TLS, p uintptr, pValue uintptr) { /* sqlite3.c:18 default: { if int32((*JsonString)(unsafe.Pointer(p)).FbErr) == 0 { - Xsqlite3_result_error(tls, (*JsonString)(unsafe.Pointer(p)).FpCtx, ts+28870 /* "JSON cannot hold..." */, -1) + Xsqlite3_result_error(tls, (*JsonString)(unsafe.Pointer(p)).FpCtx, ts+28880 /* "JSON cannot hold..." */, -1) (*JsonString)(unsafe.Pointer(p)).FbErr = U8(2) jsonReset(tls, p) } @@ -150787,19 +151437,19 @@ func jsonRenderNode(tls *libc.TLS, pNode uintptr, pOut uintptr, aReplace uintptr default: { - jsonAppendRaw(tls, pOut, ts+8076 /* "null" */, uint32(4)) + jsonAppendRaw(tls, pOut, ts+8086 /* "null" */, uint32(4)) break } case JSON_TRUE: { - jsonAppendRaw(tls, pOut, ts+8878 /* "true" */, uint32(4)) + jsonAppendRaw(tls, pOut, ts+8888 /* "true" */, uint32(4)) break } case JSON_FALSE: { - jsonAppendRaw(tls, pOut, ts+8883 /* "false" */, uint32(5)) + jsonAppendRaw(tls, pOut, ts+8893 /* "false" */, uint32(5)) break } @@ -151365,17 +152015,17 @@ func jsonParseValue(tls *libc.TLS, pParse uintptr, i U32) int32 { /* sqlite3.c:1 } return (int32(j + U32(1))) } else if ((int32(c) == 'n') && - (libc.Xstrncmp(tls, (z+uintptr(i)), ts+8076 /* "null" */, uint32(4)) == 0)) && + (libc.Xstrncmp(tls, (z+uintptr(i)), ts+8086 /* "null" */, uint32(4)) == 0)) && !((int32(Xsqlite3CtypeMap[uint8(*(*int8)(unsafe.Pointer(z + uintptr((i + U32(4))))))]) & 0x06) != 0) { jsonParseAddNode(tls, pParse, uint32(JSON_NULL), uint32(0), uintptr(0)) return (int32(i + U32(4))) } else if ((int32(c) == 't') && - (libc.Xstrncmp(tls, (z+uintptr(i)), ts+8878 /* "true" */, uint32(4)) == 0)) && + (libc.Xstrncmp(tls, (z+uintptr(i)), ts+8888 /* "true" */, uint32(4)) == 0)) && !((int32(Xsqlite3CtypeMap[uint8(*(*int8)(unsafe.Pointer(z + uintptr((i + U32(4))))))]) & 0x06) != 0) { jsonParseAddNode(tls, pParse, uint32(JSON_TRUE), uint32(0), uintptr(0)) return (int32(i + U32(4))) } else if ((int32(c) == 'f') && - (libc.Xstrncmp(tls, (z+uintptr(i)), ts+8883 /* "false" */, uint32(5)) == 0)) && + (libc.Xstrncmp(tls, (z+uintptr(i)), ts+8893 /* "false" */, uint32(5)) == 0)) && !((int32(Xsqlite3CtypeMap[uint8(*(*int8)(unsafe.Pointer(z + uintptr((i + U32(5))))))]) & 0x06) != 0) { jsonParseAddNode(tls, pParse, uint32(JSON_FALSE), uint32(0), uintptr(0)) return (int32(i + U32(5))) @@ -151483,7 +152133,7 @@ func jsonParse(tls *libc.TLS, pParse uintptr, pCtx uintptr, zJson uintptr) int32 if (*JsonParse)(unsafe.Pointer(pParse)).Foom != 0 { Xsqlite3_result_error_nomem(tls, pCtx) } else { - Xsqlite3_result_error(tls, pCtx, ts+28899 /* "malformed JSON" */, -1) + Xsqlite3_result_error(tls, pCtx, ts+28909 /* "malformed JSON" */, -1) } } jsonParseReset(tls, pParse) @@ -151803,7 +152453,7 @@ func jsonLookupAppend(tls *libc.TLS, pParse uintptr, zPath uintptr, pApnd uintpt } if int32(*(*int8)(unsafe.Pointer(zPath))) == '.' { jsonParseAddNode(tls, pParse, uint32(JSON_OBJECT), uint32(0), uintptr(0)) - } else if libc.Xstrncmp(tls, zPath, ts+28914 /* "[0]" */, uint32(3)) == 0 { + } else if libc.Xstrncmp(tls, zPath, ts+28924 /* "[0]" */, uint32(3)) == 0 { jsonParseAddNode(tls, pParse, uint32(JSON_ARRAY), uint32(0), uintptr(0)) } else { return uintptr(0) @@ -151820,7 +152470,7 @@ func jsonPathSyntaxError(tls *libc.TLS, zErr uintptr) uintptr { /* sqlite3.c:190 bp := tls.Alloc(8) defer tls.Free(8) - return Xsqlite3_mprintf(tls, ts+28918 /* "JSON path error ..." */, libc.VaList(bp, zErr)) + return Xsqlite3_mprintf(tls, ts+28928 /* "JSON path error ..." */, libc.VaList(bp, zErr)) } // Do a node lookup using zPath. Return a pointer to the node on success. @@ -151887,7 +152537,7 @@ func jsonWrongNumArgs(tls *libc.TLS, pCtx uintptr, zFuncName uintptr) { /* sqlit bp := tls.Alloc(8) defer tls.Free(8) - var zMsg uintptr = Xsqlite3_mprintf(tls, ts+28944, /* "json_%s() needs ..." */ + var zMsg uintptr = Xsqlite3_mprintf(tls, ts+28954, /* "json_%s() needs ..." */ libc.VaList(bp, zFuncName)) Xsqlite3_result_error(tls, pCtx, zMsg, -1) Xsqlite3_free(tls, zMsg) @@ -152031,7 +152681,7 @@ func jsonExtractFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* if pNode != 0 { jsonRenderNode(tls, pNode, bp /* &jx */, uintptr(0)) } else { - jsonAppendRaw(tls, bp /* &jx */, ts+8076 /* "null" */, uint32(4)) + jsonAppendRaw(tls, bp /* &jx */, ts+8086 /* "null" */, uint32(4)) } } else if pNode != 0 { jsonReturn(tls, pNode, ctx, uintptr(0)) @@ -152159,14 +152809,14 @@ func jsonObjectFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* s if (argc & 1) != 0 { Xsqlite3_result_error(tls, ctx, - ts+28987 /* "json_object() re..." */, -1) + ts+28997 /* "json_object() re..." */, -1) return } jsonInit(tls, bp /* &jx */, ctx) jsonAppendChar(tls, bp /* &jx */, int8('{')) for i = 0; i < argc; i = i + (2) { if Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*4))) != SQLITE_TEXT { - Xsqlite3_result_error(tls, ctx, ts+29038 /* "json_object() la..." */, -1) + Xsqlite3_result_error(tls, ctx, ts+29048 /* "json_object() la..." */, -1) jsonReset(tls, bp /* &jx */) return } @@ -152274,7 +152924,7 @@ __1: if !((argc & 1) == 0) { goto __2 } - jsonWrongNumArgs(tls, ctx, ts+17337 /* "replace" */) + jsonWrongNumArgs(tls, ctx, ts+17347 /* "replace" */) return __2: ; @@ -152360,9 +153010,9 @@ __1: } jsonWrongNumArgs(tls, ctx, func() uintptr { if bIsSet != 0 { - return ts + 29072 /* "set" */ + return ts + 29082 /* "set" */ } - return ts + 29076 /* "insert" */ + return ts + 29086 /* "insert" */ }()) return __2: @@ -152510,7 +153160,7 @@ func jsonArrayCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c: (*JsonString)(unsafe.Pointer(pStr)).FnUsed-- } } else { - Xsqlite3_result_text(tls, ctx, ts+29083 /* "[]" */, 2, uintptr(0)) + Xsqlite3_result_text(tls, ctx, ts+29093 /* "[]" */, 2, uintptr(0)) } Xsqlite3_result_subtype(tls, ctx, uint32(JSON_SUBTYPE)) } @@ -152615,7 +153265,7 @@ func jsonObjectCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c (*JsonString)(unsafe.Pointer(pStr)).FnUsed-- } } else { - Xsqlite3_result_text(tls, ctx, ts+29086 /* "{}" */, 2, uintptr(0)) + Xsqlite3_result_text(tls, ctx, ts+29096 /* "{}" */, 2, uintptr(0)) } Xsqlite3_result_subtype(tls, ctx, uint32(JSON_SUBTYPE)) } @@ -152633,17 +153283,17 @@ func jsonObjectFinal(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:191673:13: */ // The json_each virtual table // type JsonEachCursor1 = struct { - Fbase Sqlite3_vtab_cursor - FiRowid U32 - FiBegin U32 - Fi U32 - FiEnd U32 - FeType U8 - FbRecursive U8 - _ [2]byte - FzJson uintptr - FzRoot uintptr - FsParse JsonParse + Fbase Sqlite3_vtab_cursor + FiRowid U32 + FiBegin U32 + Fi U32 + FiEnd U32 + FeType U8 + FbRecursive U8 + F__ccgo_pad1 [2]byte + FzJson uintptr + FzRoot uintptr + FsParse JsonParse } /* sqlite3.c:191683:9 */ // *************************************************************************** @@ -152668,7 +153318,7 @@ func jsonEachConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv u _ = pAux rc = Xsqlite3_declare_vtab(tls, db, - ts+29089 /* "CREATE TABLE x(k..." */) + ts+29099 /* "CREATE TABLE x(k..." */) if rc == SQLITE_OK { pNew = libc.AssignPtrUintptr(ppVtab, Xsqlite3_malloc(tls, int32(unsafe.Sizeof(Sqlite3_vtab{})))) if pNew == uintptr(0) { @@ -152806,14 +153456,14 @@ func jsonEachComputePath(tls *libc.TLS, p uintptr, pStr uintptr, i U32) { /* sql pNode = ((*JsonEachCursor)(unsafe.Pointer(p)).FsParse.FaNode + uintptr(i)*12) pUp = ((*JsonEachCursor)(unsafe.Pointer(p)).FsParse.FaNode + uintptr(iUp)*12) if int32((*JsonNode)(unsafe.Pointer(pUp)).FeType) == JSON_ARRAY { - jsonPrintf(tls, 30, pStr, ts+29172 /* "[%d]" */, libc.VaList(bp, *(*U32)(unsafe.Pointer(pUp + 8 /* &.u */)))) + jsonPrintf(tls, 30, pStr, ts+29182 /* "[%d]" */, libc.VaList(bp, *(*U32)(unsafe.Pointer(pUp + 8 /* &.u */)))) } else { if (int32((*JsonNode)(unsafe.Pointer(pNode)).FjnFlags) & JNODE_LABEL) == 0 { pNode -= 12 } - jsonPrintf(tls, (int32((*JsonNode)(unsafe.Pointer(pNode)).Fn + U32(1))), pStr, ts+29177 /* ".%.*s" */, libc.VaList(bp+8, ((*JsonNode)(unsafe.Pointer(pNode)).Fn-U32(2)), (*(*uintptr)(unsafe.Pointer(pNode + 8 /* &.u */))+uintptr(1)))) + jsonPrintf(tls, (int32((*JsonNode)(unsafe.Pointer(pNode)).Fn + U32(1))), pStr, ts+29187 /* ".%.*s" */, libc.VaList(bp+8, ((*JsonNode)(unsafe.Pointer(pNode)).Fn-U32(2)), (*(*uintptr)(unsafe.Pointer(pNode + 8 /* &.u */))+uintptr(1)))) } } @@ -152906,9 +153556,9 @@ func jsonEachColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* jsonAppendChar(tls, bp+24 /* &x */, int8('$')) } if int32((*JsonEachCursor)(unsafe.Pointer(p)).FeType) == JSON_ARRAY { - jsonPrintf(tls, 30, bp+24 /* &x */, ts+29172 /* "[%d]" */, libc.VaList(bp, (*JsonEachCursor)(unsafe.Pointer(p)).FiRowid)) + jsonPrintf(tls, 30, bp+24 /* &x */, ts+29182 /* "[%d]" */, libc.VaList(bp, (*JsonEachCursor)(unsafe.Pointer(p)).FiRowid)) } else if int32((*JsonEachCursor)(unsafe.Pointer(p)).FeType) == JSON_OBJECT { - jsonPrintf(tls, int32((*JsonNode)(unsafe.Pointer(pThis)).Fn), bp+24 /* &x */, ts+29177 /* ".%.*s" */, libc.VaList(bp+8, ((*JsonNode)(unsafe.Pointer(pThis)).Fn-U32(2)), (*(*uintptr)(unsafe.Pointer(pThis + 8 /* &.u */))+uintptr(1)))) + jsonPrintf(tls, int32((*JsonNode)(unsafe.Pointer(pThis)).Fn), bp+24 /* &x */, ts+29187 /* ".%.*s" */, libc.VaList(bp+8, ((*JsonNode)(unsafe.Pointer(pThis)).Fn-U32(2)), (*(*uintptr)(unsafe.Pointer(pThis + 8 /* &.u */))+uintptr(1)))) } } jsonResult(tls, bp+24 /* &x */) @@ -152932,7 +153582,7 @@ func jsonEachColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* { var zRoot uintptr = (*JsonEachCursor)(unsafe.Pointer(p)).FzRoot if zRoot == uintptr(0) { - zRoot = ts + 29183 /* "$" */ + zRoot = ts + 29193 /* "$" */ } Xsqlite3_result_text(tls, ctx, zRoot, -1, uintptr(0)) break @@ -153064,7 +153714,7 @@ func jsonEachFilter(tls *libc.TLS, cur uintptr, idxNum int32, idxStr uintptr, ar var rc int32 = SQLITE_NOMEM if int32((*JsonEachCursor)(unsafe.Pointer(p)).FsParse.Foom) == 0 { Xsqlite3_free(tls, (*Sqlite3_vtab)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(cur)).FpVtab)).FzErrMsg) - (*Sqlite3_vtab)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(cur)).FpVtab)).FzErrMsg = Xsqlite3_mprintf(tls, ts+28899 /* "malformed JSON" */, 0) + (*Sqlite3_vtab)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(cur)).FpVtab)).FzErrMsg = Xsqlite3_mprintf(tls, ts+28909 /* "malformed JSON" */, 0) if (*Sqlite3_vtab)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(cur)).FpVtab)).FzErrMsg != 0 { rc = SQLITE_ERROR } @@ -153204,21 +153854,21 @@ var aFunc = [15]struct { Fflag int32 FxFunc uintptr }{ - {FzName: ts + 29185 /* "json" */, FnArg: 1, FxFunc: 0}, - {FzName: ts + 29190 /* "json_array" */, FnArg: -1, FxFunc: 0}, - {FzName: ts + 29201 /* "json_array_lengt..." */, FnArg: 1, FxFunc: 0}, - {FzName: ts + 29201 /* "json_array_lengt..." */, FnArg: 2, FxFunc: 0}, - {FzName: ts + 29219 /* "json_extract" */, FnArg: -1, FxFunc: 0}, - {FzName: ts + 29232 /* "json_insert" */, FnArg: -1, FxFunc: 0}, - {FzName: ts + 29244 /* "json_object" */, FnArg: -1, FxFunc: 0}, - {FzName: ts + 29256 /* "json_patch" */, FnArg: 2, FxFunc: 0}, - {FzName: ts + 29267 /* "json_quote" */, FnArg: 1, FxFunc: 0}, - {FzName: ts + 29278 /* "json_remove" */, FnArg: -1, FxFunc: 0}, - {FzName: ts + 29290 /* "json_replace" */, FnArg: -1, FxFunc: 0}, - {FzName: ts + 29303 /* "json_set" */, FnArg: -1, Fflag: 1, FxFunc: 0}, - {FzName: ts + 29312 /* "json_type" */, FnArg: 1, FxFunc: 0}, - {FzName: ts + 29312 /* "json_type" */, FnArg: 2, FxFunc: 0}, - {FzName: ts + 29322 /* "json_valid" */, FnArg: 1, FxFunc: 0}, + {FzName: ts + 29195 /* "json" */, FnArg: 1, FxFunc: 0}, + {FzName: ts + 29200 /* "json_array" */, FnArg: -1, FxFunc: 0}, + {FzName: ts + 29211 /* "json_array_lengt..." */, FnArg: 1, FxFunc: 0}, + {FzName: ts + 29211 /* "json_array_lengt..." */, FnArg: 2, FxFunc: 0}, + {FzName: ts + 29229 /* "json_extract" */, FnArg: -1, FxFunc: 0}, + {FzName: ts + 29242 /* "json_insert" */, FnArg: -1, FxFunc: 0}, + {FzName: ts + 29254 /* "json_object" */, FnArg: -1, FxFunc: 0}, + {FzName: ts + 29266 /* "json_patch" */, FnArg: 2, FxFunc: 0}, + {FzName: ts + 29277 /* "json_quote" */, FnArg: 1, FxFunc: 0}, + {FzName: ts + 29288 /* "json_remove" */, FnArg: -1, FxFunc: 0}, + {FzName: ts + 29300 /* "json_replace" */, FnArg: -1, FxFunc: 0}, + {FzName: ts + 29313 /* "json_set" */, FnArg: -1, Fflag: 1, FxFunc: 0}, + {FzName: ts + 29322 /* "json_type" */, FnArg: 1, FxFunc: 0}, + {FzName: ts + 29322 /* "json_type" */, FnArg: 2, FxFunc: 0}, + {FzName: ts + 29332 /* "json_valid" */, FnArg: 1, FxFunc: 0}, } /* sqlite3.c:192182:5 */ var aAgg = [2]struct { FzName uintptr @@ -153227,17 +153877,17 @@ var aAgg = [2]struct { FxFinal uintptr FxValue uintptr }{ - {FzName: ts + 29333 /* "json_group_array" */, FnArg: 1, + {FzName: ts + 29343 /* "json_group_array" */, FnArg: 1, FxStep: 0, FxFinal: 0, FxValue: 0}, - {FzName: ts + 29350 /* "json_group_objec..." */, FnArg: 2, + {FzName: ts + 29360 /* "json_group_objec..." */, FnArg: 2, FxStep: 0, FxFinal: 0, FxValue: 0}, } /* sqlite3.c:192211:5 */ var aMod = [2]struct { FzName uintptr FpModule uintptr }{ - {FzName: ts + 29368 /* "json_each" */, FpModule: 0}, - {FzName: ts + 29378 /* "json_tree" */, FpModule: 0}, + {FzName: ts + 29378 /* "json_each" */, FpModule: 0}, + {FzName: ts + 29388 /* "json_tree" */, FpModule: 0}, } /* sqlite3.c:192221:5 */ var enc int32 = ((SQLITE_UTF8 | SQLITE_DETERMINISTIC) | SQLITE_INNOCUOUS) /* sqlite3.c:192226:20 */ // In the SQLite core @@ -153259,7 +153909,7 @@ type Rtree1 = struct { FinWrTrans U8 FnAux U8 FnAuxNotNull U8 - _ [1]byte + F__ccgo_pad1 [1]byte FiDepth int32 FzDb uintptr FzName uintptr @@ -153298,7 +153948,7 @@ type RtreeCursor1 = struct { FatEOF U8 FbPoint U8 FbAuxValid U8 - _ [1]byte + F__ccgo_pad1 [1]byte FiStrategy int32 FnConstraint int32 FaConstraint uintptr @@ -153358,12 +154008,12 @@ type RtreeCoord1 = struct{ Ff RtreeValue } /* sqlite3.c:192365:9 */ type RtreeCoord = RtreeCoord1 /* sqlite3.c:192369:26 */ type RtreeSearchPoint1 = struct { - FrScore RtreeDValue - Fid Sqlite3_int64 - FiLevel U8 - FeWithin U8 - FiCell U8 - _ [1]byte + FrScore RtreeDValue + Fid Sqlite3_int64 + FiLevel U8 + FeWithin U8 + FiCell U8 + F__ccgo_pad1 [1]byte } /* sqlite3.c:192363:9 */ type RtreeSearchPoint = RtreeSearchPoint1 /* sqlite3.c:192370:33 */ @@ -153580,11 +154230,11 @@ func nodeAcquire(tls *libc.TLS, pRtree uintptr, iNode I64, pParent uintptr, ppNo } } if (*Rtree)(unsafe.Pointer(pRtree)).FpNodeBlob == uintptr(0) { - var zTab uintptr = Xsqlite3_mprintf(tls, ts+29388 /* "%s_node" */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzName)) + var zTab uintptr = Xsqlite3_mprintf(tls, ts+29398 /* "%s_node" */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzName)) if zTab == uintptr(0) { return SQLITE_NOMEM } - rc = Xsqlite3_blob_open(tls, (*Rtree)(unsafe.Pointer(pRtree)).Fdb, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, zTab, ts+29396 /* "data" */, iNode, 0, + rc = Xsqlite3_blob_open(tls, (*Rtree)(unsafe.Pointer(pRtree)).Fdb, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, zTab, ts+29406 /* "data" */, iNode, 0, (pRtree + 72 /* &.pNodeBlob */)) Xsqlite3_free(tls, zTab) } @@ -153829,7 +154479,7 @@ func rtreeDestroy(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:193308:12: var rc int32 var zCreate uintptr = Xsqlite3_mprintf(tls, - ts+29401, /* "DROP TABLE '%q'...." */ + ts+29411, /* "DROP TABLE '%q'...." */ libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName)) @@ -153876,7 +154526,7 @@ func resetCursor(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:193357:13: */ var pInfo uintptr = (*RtreeConstraint)(unsafe.Pointer((*RtreeCursor)(unsafe.Pointer(pCsr)).FaConstraint + uintptr(i)*20)).FpInfo if pInfo != 0 { if (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FxDelUser != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pInfo + 16 /* &.xDelUser */))))(tls, (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FpUser) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FxDelUser})).f(tls, (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FpUser) } Xsqlite3_free(tls, pInfo) } @@ -154012,7 +154662,9 @@ func rtreeCallbackConstraint(tls *libc.TLS, pConstraint uintptr, eInt int32, pCe } if (*RtreeConstraint)(unsafe.Pointer(pConstraint)).Fop == RTREE_MATCH { *(*int32)(unsafe.Pointer(bp + 84 /* eWithin */)) = 0 - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pConstraint + 8 /* &.u */ /* &.xGeom */))))(tls, pInfo, + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(pConstraint + 8 /* &.u */))})).f(tls, pInfo, nCoord, bp+4 /* &aCoord[0] */, bp+84 /* &eWithin */) if *(*int32)(unsafe.Pointer(bp + 84 /* eWithin */)) == 0 { *(*int32)(unsafe.Pointer(peWithin)) = NOT_WITHIN @@ -154023,7 +154675,9 @@ func rtreeCallbackConstraint(tls *libc.TLS, pConstraint uintptr, eInt int32, pCe (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FiLevel = (int32((*RtreeSearchPoint)(unsafe.Pointer(pSearch)).FiLevel) - 1) (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FrScore = libc.AssignPtrFloat64(pInfo+48 /* &.rParentScore */, (*RtreeSearchPoint)(unsafe.Pointer(pSearch)).FrScore) (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FeWithin = libc.AssignPtrInt32(pInfo+56 /* &.eParentWithin */, int32((*RtreeSearchPoint)(unsafe.Pointer(pSearch)).FeWithin)) - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pConstraint + 8 /* &.u */ /* &.xQueryFunc */))))(tls, pInfo) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(pConstraint + 8 /* &.u */))})).f(tls, pInfo) if (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FeWithin < *(*int32)(unsafe.Pointer(peWithin)) { *(*int32)(unsafe.Pointer(peWithin)) = (*Sqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FeWithin } @@ -154589,7 +155243,7 @@ func deserializeGeometry(tls *libc.TLS, pValue uintptr, pCons uintptr) int32 { / var pSrc uintptr // BLOB returned by geometry function var pInfo uintptr // Callback information - pSrc = Xsqlite3_value_pointer(tls, pValue, ts+29483 /* "RtreeMatchArg" */) + pSrc = Xsqlite3_value_pointer(tls, pValue, ts+29493 /* "RtreeMatchArg" */) if pSrc == uintptr(0) { return SQLITE_ERROR } @@ -154853,7 +155507,7 @@ func rtreeBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sql (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = 2 (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FneedToFreeIdxStr = 1 - if (iIdx > 0) && (uintptr(0) == (libc.AssignPtrUintptr(pIdxInfo+24 /* &.idxStr */, Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp, bp+8 /* &zIdxStr[0] */))))) { + if (iIdx > 0) && (uintptr(0) == (libc.AssignPtrUintptr(pIdxInfo+24 /* &.idxStr */, Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp, bp+8 /* &zIdxStr[0] */))))) { return SQLITE_NOMEM } @@ -155409,7 +156063,9 @@ func updateMapping(tls *libc.TLS, pRtree uintptr, iRowid I64, pNode uintptr, iHe (*RtreeNode)(unsafe.Pointer(pChild)).FpParent = pNode } } - return (*(*func(*libc.TLS, uintptr, Sqlite3_int64, Sqlite3_int64) int32)(unsafe.Pointer(&xSetMapping)))(tls, pRtree, iRowid, (*RtreeNode)(unsafe.Pointer(pNode)).FiNode) + return (*struct { + f func(*libc.TLS, uintptr, Sqlite3_int64, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{xSetMapping})).f(tls, pRtree, iRowid, (*RtreeNode)(unsafe.Pointer(pNode)).FiNode) } func sSplitNode(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHeight int32) int32 { /* sqlite3.c:194817:12: */ @@ -156113,7 +156769,7 @@ func rtreeConstraintError(tls *libc.TLS, pRtree uintptr, iCol int32) int32 { /* var zSql uintptr var rc int32 - zSql = Xsqlite3_mprintf(tls, ts+29497 /* "SELECT * FROM %Q..." */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName)) + zSql = Xsqlite3_mprintf(tls, ts+29507 /* "SELECT * FROM %Q..." */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName)) if zSql != 0 { rc = Xsqlite3_prepare_v2(tls, (*Rtree)(unsafe.Pointer(pRtree)).Fdb, zSql, -1, bp+56 /* &pStmt */, uintptr(0)) } else { @@ -156125,12 +156781,12 @@ func rtreeConstraintError(tls *libc.TLS, pRtree uintptr, iCol int32) int32 { /* if iCol == 0 { var zCol uintptr = Xsqlite3_column_name(tls, *(*uintptr)(unsafe.Pointer(bp + 56 /* pStmt */)), 0) (*Rtree)(unsafe.Pointer(pRtree)).Fbase.FzErrMsg = Xsqlite3_mprintf(tls, - ts+29517 /* "UNIQUE constrain..." */, libc.VaList(bp+16, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zCol)) + ts+29527 /* "UNIQUE constrain..." */, libc.VaList(bp+16, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zCol)) } else { var zCol1 uintptr = Xsqlite3_column_name(tls, *(*uintptr)(unsafe.Pointer(bp + 56 /* pStmt */)), iCol) var zCol2 uintptr = Xsqlite3_column_name(tls, *(*uintptr)(unsafe.Pointer(bp + 56 /* pStmt */)), (iCol + 1)) (*Rtree)(unsafe.Pointer(pRtree)).Fbase.FzErrMsg = Xsqlite3_mprintf(tls, - ts+29549 /* "rtree constraint..." */, libc.VaList(bp+32, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zCol1, zCol2)) + ts+29559 /* "rtree constraint..." */, libc.VaList(bp+32, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zCol1, zCol2)) } } @@ -156398,7 +157054,7 @@ func rtreeRename(tls *libc.TLS, pVtab uintptr, zNewName uintptr) int32 { /* sqli var rc int32 = SQLITE_NOMEM var zSql uintptr = Xsqlite3_mprintf(tls, - ts+29586 /* "ALTER TABLE %Q.'..." */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zNewName, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zNewName, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zNewName)) + ts+29596 /* "ALTER TABLE %Q.'..." */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zNewName, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zNewName, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName, zNewName)) if zSql != 0 { nodeBlobReset(tls, pRtree) rc = Xsqlite3_exec(tls, (*Rtree)(unsafe.Pointer(pRtree)).Fdb, zSql, uintptr(0), uintptr(0), uintptr(0)) @@ -156436,7 +157092,7 @@ func rtreeQueryStat1(tls *libc.TLS, db uintptr, pRtree uintptr) int32 { /* sqlit bp := tls.Alloc(20) defer tls.Free(20) - var zFmt uintptr = ts + 29731 /* "SELECT stat FROM..." */ + var zFmt uintptr = ts + 29741 /* "SELECT stat FROM..." */ var zSql uintptr // var p uintptr at bp+16, 4 @@ -156444,7 +157100,7 @@ func rtreeQueryStat1(tls *libc.TLS, db uintptr, pRtree uintptr) int32 { /* sqlit var nRow I64 = int64(0) rc = Xsqlite3_table_column_metadata(tls, - db, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, ts+13346 /* "sqlite_stat1" */, uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0)) + db, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, ts+13356 /* "sqlite_stat1" */, uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0)) if rc != SQLITE_OK { (*Rtree)(unsafe.Pointer(pRtree)).FnRowEst = int64(RTREE_DEFAULT_ROWEST) if rc == SQLITE_ERROR { @@ -156497,7 +157153,7 @@ func rtreeShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:195715:1 } var azName1 = [3]uintptr{ - ts + 29787 /* "node" */, ts + 6992 /* "parent" */, ts + 10297, /* "rowid" */ + ts + 29797 /* "node" */, ts + 7002 /* "parent" */, ts + 10307, /* "rowid" */ } /* sqlite3.c:195716:21 */ var rtreeModule = Sqlite3_module{ @@ -156541,19 +157197,19 @@ func rtreeSqlInit(tls *libc.TLS, pRtree uintptr, db uintptr, zDb uintptr, zPrefi var p uintptr = Xsqlite3_str_new(tls, db) var ii int32 Xsqlite3_str_appendf(tls, p, - ts+29792, /* "CREATE TABLE \"%w..." */ + ts+29802, /* "CREATE TABLE \"%w..." */ libc.VaList(bp, zDb, zPrefix)) for ii = 0; ii < int32((*Rtree)(unsafe.Pointer(pRtree)).FnAux); ii++ { - Xsqlite3_str_appendf(tls, p, ts+29854 /* ",a%d" */, libc.VaList(bp+16, ii)) + Xsqlite3_str_appendf(tls, p, ts+29864 /* ",a%d" */, libc.VaList(bp+16, ii)) } Xsqlite3_str_appendf(tls, p, - ts+29859, /* ");CREATE TABLE \"..." */ + ts+29869, /* ");CREATE TABLE \"..." */ libc.VaList(bp+24, zDb, zPrefix)) Xsqlite3_str_appendf(tls, p, - ts+29923, /* "CREATE TABLE \"%w..." */ + ts+29933, /* "CREATE TABLE \"%w..." */ libc.VaList(bp+40, zDb, zPrefix)) Xsqlite3_str_appendf(tls, p, - ts+29993, /* "INSERT INTO \"%w\"..." */ + ts+30003, /* "INSERT INTO \"%w\"..." */ libc.VaList(bp+56, zDb, zPrefix, (*Rtree)(unsafe.Pointer(pRtree)).FiNodeSize)) zCreate = Xsqlite3_str_finish(tls, p) if !(zCreate != 0) { @@ -156584,7 +157240,7 @@ func rtreeSqlInit(tls *libc.TLS, pRtree uintptr, db uintptr, zDb uintptr, zPrefi } else { // An UPSERT is very slightly slower than REPLACE, but it is needed // if there are auxiliary columns - zFormat = ts + 30042 /* "INSERT INTO\"%w\"...." */ + zFormat = ts + 30052 /* "INSERT INTO\"%w\"...." */ } zSql = Xsqlite3_mprintf(tls, zFormat, libc.VaList(bp+80, zDb, zPrefix)) if zSql != 0 { @@ -156596,7 +157252,7 @@ func rtreeSqlInit(tls *libc.TLS, pRtree uintptr, db uintptr, zDb uintptr, zPrefi } if (*Rtree)(unsafe.Pointer(pRtree)).FnAux != 0 { (*Rtree)(unsafe.Pointer(pRtree)).FzReadAuxSql = Xsqlite3_mprintf(tls, - ts+30150, /* "SELECT * FROM \"%..." */ + ts+30160, /* "SELECT * FROM \"%..." */ libc.VaList(bp+96, zDb, zPrefix)) if (*Rtree)(unsafe.Pointer(pRtree)).FzReadAuxSql == uintptr(0) { rc = SQLITE_NOMEM @@ -156604,18 +157260,18 @@ func rtreeSqlInit(tls *libc.TLS, pRtree uintptr, db uintptr, zDb uintptr, zPrefi var p uintptr = Xsqlite3_str_new(tls, db) var ii int32 var zSql uintptr - Xsqlite3_str_appendf(tls, p, ts+30195 /* "UPDATE \"%w\".\"%w_..." */, libc.VaList(bp+112, zDb, zPrefix)) + Xsqlite3_str_appendf(tls, p, ts+30205 /* "UPDATE \"%w\".\"%w_..." */, libc.VaList(bp+112, zDb, zPrefix)) for ii = 0; ii < int32((*Rtree)(unsafe.Pointer(pRtree)).FnAux); ii++ { if ii != 0 { - Xsqlite3_str_append(tls, p, ts+14855 /* "," */, 1) + Xsqlite3_str_append(tls, p, ts+14865 /* "," */, 1) } if ii < int32((*Rtree)(unsafe.Pointer(pRtree)).FnAuxNotNull) { - Xsqlite3_str_appendf(tls, p, ts+30222 /* "a%d=coalesce(?%d..." */, libc.VaList(bp+128, ii, (ii+2), ii)) + Xsqlite3_str_appendf(tls, p, ts+30232 /* "a%d=coalesce(?%d..." */, libc.VaList(bp+128, ii, (ii+2), ii)) } else { - Xsqlite3_str_appendf(tls, p, ts+30244 /* "a%d=?%d" */, libc.VaList(bp+152, ii, (ii+2))) + Xsqlite3_str_appendf(tls, p, ts+30254 /* "a%d=?%d" */, libc.VaList(bp+152, ii, (ii+2))) } } - Xsqlite3_str_appendf(tls, p, ts+30252 /* " WHERE rowid=?1" */, 0) + Xsqlite3_str_appendf(tls, p, ts+30262 /* " WHERE rowid=?1" */, 0) zSql = Xsqlite3_str_finish(tls, p) if zSql == uintptr(0) { rc = SQLITE_NOMEM @@ -156631,18 +157287,18 @@ func rtreeSqlInit(tls *libc.TLS, pRtree uintptr, db uintptr, zDb uintptr, zPrefi var azSql = [8]uintptr{ // Write the xxx_node table - ts + 30268, /* "INSERT OR REPLAC..." */ - ts + 30321, /* "DELETE FROM '%q'..." */ + ts + 30278, /* "INSERT OR REPLAC..." */ + ts + 30331, /* "DELETE FROM '%q'..." */ // Read and write the xxx_rowid table - ts + 30366, /* "SELECT nodeno FR..." */ - ts + 30418, /* "INSERT OR REPLAC..." */ - ts + 30472, /* "DELETE FROM '%q'..." */ + ts + 30376, /* "SELECT nodeno FR..." */ + ts + 30428, /* "INSERT OR REPLAC..." */ + ts + 30482, /* "DELETE FROM '%q'..." */ // Read and write the xxx_parent table - ts + 30517, /* "SELECT parentnod..." */ - ts + 30575, /* "INSERT OR REPLAC..." */ - ts + 30630, /* "DELETE FROM '%q'..." */ + ts + 30527, /* "SELECT parentnod..." */ + ts + 30585, /* "INSERT OR REPLAC..." */ + ts + 30640, /* "DELETE FROM '%q'..." */ } /* sqlite3.c:195763:21 */ // The second argument to this function contains the text of an SQL statement @@ -156689,7 +157345,7 @@ func getNodeSize(tls *libc.TLS, db uintptr, pRtree uintptr, isCreate int32, pzEr var zSql uintptr if isCreate != 0 { *(*int32)(unsafe.Pointer(bp + 48 /* iPageSize */)) = 0 - zSql = Xsqlite3_mprintf(tls, ts+30677 /* "PRAGMA %Q.page_s..." */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzDb)) + zSql = Xsqlite3_mprintf(tls, ts+30687 /* "PRAGMA %Q.page_s..." */, libc.VaList(bp, (*Rtree)(unsafe.Pointer(pRtree)).FzDb)) rc = getIntFromStmt(tls, db, zSql, bp+48 /* &iPageSize */) if rc == SQLITE_OK { (*Rtree)(unsafe.Pointer(pRtree)).FiNodeSize = (*(*int32)(unsafe.Pointer(bp + 48 /* iPageSize */)) - 64) @@ -156697,19 +157353,19 @@ func getNodeSize(tls *libc.TLS, db uintptr, pRtree uintptr, isCreate int32, pzEr (*Rtree)(unsafe.Pointer(pRtree)).FiNodeSize = (4 + (int32((*Rtree)(unsafe.Pointer(pRtree)).FnBytesPerCell) * RTREE_MAXCELLS)) } } else { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp+8, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp+8, Xsqlite3_errmsg(tls, db))) } } else { zSql = Xsqlite3_mprintf(tls, - ts+30697, /* "SELECT length(da..." */ + ts+30707, /* "SELECT length(da..." */ libc.VaList(bp+16, (*Rtree)(unsafe.Pointer(pRtree)).FzDb, (*Rtree)(unsafe.Pointer(pRtree)).FzName)) rc = getIntFromStmt(tls, db, zSql, (pRtree + 16 /* &.iNodeSize */)) if rc != SQLITE_OK { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp+32, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp+32, Xsqlite3_errmsg(tls, db))) } else if (*Rtree)(unsafe.Pointer(pRtree)).FiNodeSize < (512 - 64) { rc = (SQLITE_CORRUPT | (int32(1) << 8)) - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+30754, /* "undersize RTree ..." */ + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+30764, /* "undersize RTree ..." */ libc.VaList(bp+40, (*Rtree)(unsafe.Pointer(pRtree)).FzName)) } } @@ -156760,17 +157416,17 @@ func rtreeInit(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr ii = 4 *(*[5]uintptr)(unsafe.Pointer(bp + 96 /* aErrMsg */)) = [5]uintptr{ uintptr(0), // 0 - ts + 30789, /* "Wrong number of ..." */ // 1 - ts + 30832, /* "Too few columns ..." */ // 2 - ts + 30867, /* "Too many columns..." */ // 3 - ts + 30903, /* "Auxiliary rtree ..." */ // 4 + ts + 30799, /* "Wrong number of ..." */ // 1 + ts + 30842, /* "Too few columns ..." */ // 2 + ts + 30877, /* "Too many columns..." */ // 3 + ts + 30913, /* "Auxiliary rtree ..." */ // 4 } // Aux columns counted by a u8 if !((argc < 6) || (argc > (RTREE_MAX_AUX_COLUMN + 3))) { goto __1 } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 96 /* &aErrMsg[0] */ + uintptr((2+(libc.Bool32(argc >= 6))))*4)))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 96 /* &aErrMsg[0] */ + uintptr((2+(libc.Bool32(argc >= 6))))*4)))) return SQLITE_ERROR __1: ; @@ -156800,7 +157456,7 @@ __2: // that is successful, call sqlite3_declare_vtab() to configure // the r-tree table schema. pSql = Xsqlite3_str_new(tls, db) - Xsqlite3_str_appendf(tls, pSql, ts+30940, /* "CREATE TABLE x(%..." */ + Xsqlite3_str_appendf(tls, pSql, ts+30950, /* "CREATE TABLE x(%..." */ libc.VaList(bp+16, rtreeTokenLength(tls, *(*uintptr)(unsafe.Pointer(argv + 3*4))), *(*uintptr)(unsafe.Pointer(argv + 3*4)))) ii = 4 __3: @@ -156812,7 +157468,7 @@ __3: goto __6 } (*Rtree)(unsafe.Pointer(pRtree)).FnAux++ - Xsqlite3_str_appendf(tls, pSql, ts+30964 /* ",%.*s" */, libc.VaList(bp+32, rtreeTokenLength(tls, (zArg+uintptr(1))), (zArg+uintptr(1)))) + Xsqlite3_str_appendf(tls, pSql, ts+30974 /* ",%.*s" */, libc.VaList(bp+32, rtreeTokenLength(tls, (zArg+uintptr(1))), (zArg+uintptr(1)))) goto __7 __6: if !(int32((*Rtree)(unsafe.Pointer(pRtree)).FnAux) > 0) { @@ -156835,7 +157491,7 @@ __4: goto __5 __5: ; - Xsqlite3_str_appendf(tls, pSql, ts+30970 /* ");" */, 0) + Xsqlite3_str_appendf(tls, pSql, ts+30980 /* ");" */, 0) zSql = Xsqlite3_str_finish(tls, pSql) if !(!(zSql != 0)) { goto __10 @@ -156846,14 +157502,14 @@ __10: if !(ii < argc) { goto __12 } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp+64, *(*uintptr)(unsafe.Pointer(bp + 96 /* &aErrMsg[0] */ + 4*4)))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp+64, *(*uintptr)(unsafe.Pointer(bp + 96 /* &aErrMsg[0] */ + 4*4)))) rc = SQLITE_ERROR goto __13 __12: if !(SQLITE_OK != (libc.AssignInt32(&rc, Xsqlite3_declare_vtab(tls, db, zSql)))) { goto __14 } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp+72, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp+72, Xsqlite3_errmsg(tls, db))) __14: ; __13: @@ -156896,7 +157552,7 @@ __17: if !(iErr != 0) { goto __22 } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp+80, *(*uintptr)(unsafe.Pointer(bp + 96 /* &aErrMsg[0] */ + uintptr(iErr)*4)))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp+80, *(*uintptr)(unsafe.Pointer(bp + 96 /* &aErrMsg[0] */ + uintptr(iErr)*4)))) goto rtreeInit_fail __22: ; @@ -156914,7 +157570,7 @@ __23: if !(rc != 0) { goto __24 } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp+88, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp+88, Xsqlite3_errmsg(tls, db))) goto rtreeInit_fail __24: ; @@ -156934,7 +157590,7 @@ __25: return rc } -var azFormat = [2]uintptr{ts + 30973 /* ",%.*s REAL" */, ts + 30984 /* ",%.*s INT" */} /* sqlite3.c:196036:25 */ +var azFormat = [2]uintptr{ts + 30983 /* ",%.*s REAL" */, ts + 30994 /* ",%.*s INT" */} /* sqlite3.c:196036:25 */ // Implementation of a scalar function that decodes r-tree nodes to // human readable strings. This can be used for debugging and analysis. @@ -156989,13 +157645,13 @@ func rtreenode(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlit nodeGetCell(tls, bp+44 /* &tree */, bp+16 /* &node */, ii, bp+544 /* &cell */) if ii > 0 { - Xsqlite3_str_append(tls, pOut, ts+12926 /* " " */, 1) + Xsqlite3_str_append(tls, pOut, ts+12936 /* " " */, 1) } - Xsqlite3_str_appendf(tls, pOut, ts+30994 /* "{%lld" */, libc.VaList(bp, (*RtreeCell)(unsafe.Pointer(bp+544 /* &cell */)).FiRowid)) + Xsqlite3_str_appendf(tls, pOut, ts+31004 /* "{%lld" */, libc.VaList(bp, (*RtreeCell)(unsafe.Pointer(bp+544 /* &cell */)).FiRowid)) for jj = 0; jj < int32((*Rtree)(unsafe.Pointer(bp+44 /* &tree */)).FnDim2); jj++ { - Xsqlite3_str_appendf(tls, pOut, ts+31000 /* " %g" */, libc.VaList(bp+8, float64(*(*RtreeValue)(unsafe.Pointer((bp + 544 /* &cell */ + 8 /* &.aCoord */) + uintptr(jj)*4))))) + Xsqlite3_str_appendf(tls, pOut, ts+31010 /* " %g" */, libc.VaList(bp+8, float64(*(*RtreeValue)(unsafe.Pointer((bp + 544 /* &cell */ + 8 /* &.aCoord */) + uintptr(jj)*4))))) } - Xsqlite3_str_append(tls, pOut, ts+31004 /* "}" */, 1) + Xsqlite3_str_append(tls, pOut, ts+31014 /* "}" */, 1) } errCode = Xsqlite3_str_errcode(tls, pOut) Xsqlite3_result_text(tls, ctx, Xsqlite3_str_finish(tls, pOut), -1, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3_free}))) @@ -157014,7 +157670,7 @@ func rtreedepth(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqli _ = nArg if (Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(apArg))) != SQLITE_BLOB) || (Xsqlite3_value_bytes(tls, *(*uintptr)(unsafe.Pointer(apArg))) < 2) { - Xsqlite3_result_error(tls, ctx, ts+31006 /* "Invalid argument..." */, -1) + Xsqlite3_result_error(tls, ctx, ts+31016 /* "Invalid argument..." */, -1) } else { var zBlob uintptr = Xsqlite3_value_blob(tls, *(*uintptr)(unsafe.Pointer(apArg))) if zBlob != 0 { @@ -157101,12 +157757,12 @@ func rtreeCheckAppendMsg(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr if z == uintptr(0) { (*RtreeCheck)(unsafe.Pointer(pCheck)).Frc = SQLITE_NOMEM } else { - (*RtreeCheck)(unsafe.Pointer(pCheck)).FzReport = Xsqlite3_mprintf(tls, ts+31039, /* "%z%s%z" */ + (*RtreeCheck)(unsafe.Pointer(pCheck)).FzReport = Xsqlite3_mprintf(tls, ts+31049, /* "%z%s%z" */ libc.VaList(bp, (*RtreeCheck)(unsafe.Pointer(pCheck)).FzReport, func() uintptr { if (*RtreeCheck)(unsafe.Pointer(pCheck)).FzReport != 0 { - return ts + 5944 /* "\n" */ + return ts + 5954 /* "\n" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), z)) if (*RtreeCheck)(unsafe.Pointer(pCheck)).FzReport == uintptr(0) { (*RtreeCheck)(unsafe.Pointer(pCheck)).Frc = SQLITE_NOMEM @@ -157137,7 +157793,7 @@ func rtreeCheckGetNode(tls *libc.TLS, pCheck uintptr, iNode I64, pnNode uintptr) if ((*RtreeCheck)(unsafe.Pointer(pCheck)).Frc == SQLITE_OK) && ((*RtreeCheck)(unsafe.Pointer(pCheck)).FpGetNode == uintptr(0)) { (*RtreeCheck)(unsafe.Pointer(pCheck)).FpGetNode = rtreeCheckPrepare(tls, pCheck, - ts+31046, /* "SELECT data FROM..." */ + ts+31056, /* "SELECT data FROM..." */ libc.VaList(bp, (*RtreeCheck)(unsafe.Pointer(pCheck)).FzDb, (*RtreeCheck)(unsafe.Pointer(pCheck)).FzTab)) } @@ -157156,7 +157812,7 @@ func rtreeCheckGetNode(tls *libc.TLS, pCheck uintptr, iNode I64, pnNode uintptr) } rtreeCheckReset(tls, pCheck, (*RtreeCheck)(unsafe.Pointer(pCheck)).FpGetNode) if ((*RtreeCheck)(unsafe.Pointer(pCheck)).Frc == SQLITE_OK) && (pRet == uintptr(0)) { - rtreeCheckAppendMsg(tls, pCheck, ts+31091 /* "Node %lld missin..." */, libc.VaList(bp+16, iNode)) + rtreeCheckAppendMsg(tls, pCheck, ts+31101 /* "Node %lld missin..." */, libc.VaList(bp+16, iNode)) } } @@ -157180,8 +157836,8 @@ func rtreeCheckMapping(tls *libc.TLS, pCheck uintptr, bLeaf int32, iKey I64, iVa var rc int32 var pStmt uintptr *(*[2]uintptr)(unsafe.Pointer(bp + 80 /* azSql */)) = [2]uintptr{ - ts + 31123, /* "SELECT parentnod..." */ - ts + 31177, /* "SELECT nodeno FR..." */ + ts + 31133, /* "SELECT parentnod..." */ + ts + 31187, /* "SELECT nodeno FR..." */ } if *(*uintptr)(unsafe.Pointer((pCheck + 24 /* &.aCheckMapping */) + uintptr(bLeaf)*4)) == uintptr(0) { @@ -157196,23 +157852,23 @@ func rtreeCheckMapping(tls *libc.TLS, pCheck uintptr, bLeaf int32, iKey I64, iVa Xsqlite3_bind_int64(tls, pStmt, 1, iKey) rc = Xsqlite3_step(tls, pStmt) if rc == SQLITE_DONE { - rtreeCheckAppendMsg(tls, pCheck, ts+31225, /* "Mapping (%lld ->..." */ + rtreeCheckAppendMsg(tls, pCheck, ts+31235, /* "Mapping (%lld ->..." */ libc.VaList(bp+16, iKey, iVal, func() uintptr { if bLeaf != 0 { - return ts + 31270 /* "%_rowid" */ + return ts + 31280 /* "%_rowid" */ } - return ts + 31278 /* "%_parent" */ + return ts + 31288 /* "%_parent" */ }())) } else if rc == SQLITE_ROW { var ii I64 = Xsqlite3_column_int64(tls, pStmt, 0) if ii != iVal { rtreeCheckAppendMsg(tls, pCheck, - ts+31287, /* "Found (%lld -> %..." */ + ts+31297, /* "Found (%lld -> %..." */ libc.VaList(bp+40, iKey, ii, func() uintptr { if bLeaf != 0 { - return ts + 31270 /* "%_rowid" */ + return ts + 31280 /* "%_rowid" */ } - return ts + 31278 /* "%_parent" */ + return ts + 31288 /* "%_parent" */ }(), iKey, iVal)) } } @@ -157255,7 +157911,7 @@ func rtreeCheckCellCoord(tls *libc.TLS, pCheck uintptr, iNode I64, iCell int32, return (libc.Bool32(*(*RtreeValue)(unsafe.Pointer(bp + 48 /* &c1 */)) > *(*RtreeValue)(unsafe.Pointer(bp + 52 /* &c2 */)))) }() != 0 { rtreeCheckAppendMsg(tls, pCheck, - ts+31345 /* "Dimension %d of ..." */, libc.VaList(bp, i, iCell, iNode)) + ts+31355 /* "Dimension %d of ..." */, libc.VaList(bp, i, iCell, iNode)) } if pParent != 0 { @@ -157275,7 +157931,7 @@ func rtreeCheckCellCoord(tls *libc.TLS, pCheck uintptr, iNode I64, iCell int32, return (libc.Bool32(*(*RtreeValue)(unsafe.Pointer(bp + 52 /* &c2 */)) > *(*RtreeValue)(unsafe.Pointer(bp + 60 /* &p2 */)))) }() != 0) { rtreeCheckAppendMsg(tls, pCheck, - ts+31393 /* "Dimension %d of ..." */, libc.VaList(bp+24, i, iCell, iNode)) + ts+31403 /* "Dimension %d of ..." */, libc.VaList(bp+24, i, iCell, iNode)) } } } @@ -157298,14 +157954,14 @@ func rtreeCheckNode(tls *libc.TLS, pCheck uintptr, iDepth int32, aParent uintptr if aNode != 0 { if *(*int32)(unsafe.Pointer(bp + 48 /* nNode */)) < 4 { rtreeCheckAppendMsg(tls, pCheck, - ts+31460 /* "Node %lld is too..." */, libc.VaList(bp, iNode, *(*int32)(unsafe.Pointer(bp + 48 /* nNode */)))) + ts+31470 /* "Node %lld is too..." */, libc.VaList(bp, iNode, *(*int32)(unsafe.Pointer(bp + 48 /* nNode */)))) } else { var nCell int32 // Number of cells on page var i int32 // Used to iterate through cells if aParent == uintptr(0) { iDepth = readInt16(tls, aNode) if iDepth > RTREE_MAX_DEPTH { - rtreeCheckAppendMsg(tls, pCheck, ts+31494 /* "Rtree depth out ..." */, libc.VaList(bp+16, iDepth)) + rtreeCheckAppendMsg(tls, pCheck, ts+31504 /* "Rtree depth out ..." */, libc.VaList(bp+16, iDepth)) Xsqlite3_free(tls, aNode) return } @@ -157313,7 +157969,7 @@ func rtreeCheckNode(tls *libc.TLS, pCheck uintptr, iDepth int32, aParent uintptr nCell = readInt16(tls, (aNode + 2)) if (4 + (nCell * (8 + (((*RtreeCheck)(unsafe.Pointer(pCheck)).FnDim * 2) * 4)))) > *(*int32)(unsafe.Pointer(bp + 48 /* nNode */)) { rtreeCheckAppendMsg(tls, pCheck, - ts+31524, /* "Node %lld is too..." */ + ts+31534, /* "Node %lld is too..." */ libc.VaList(bp+24, iNode, nCell, *(*int32)(unsafe.Pointer(bp + 48 /* nNode */)))) } else { for i = 0; i < nCell; i++ { @@ -157347,14 +158003,14 @@ func rtreeCheckCount(tls *libc.TLS, pCheck uintptr, zTbl uintptr, nExpect I64) { if (*RtreeCheck)(unsafe.Pointer(pCheck)).Frc == SQLITE_OK { var pCount uintptr - pCount = rtreeCheckPrepare(tls, pCheck, ts+31579, /* "SELECT count(*) ..." */ + pCount = rtreeCheckPrepare(tls, pCheck, ts+31589, /* "SELECT count(*) ..." */ libc.VaList(bp, (*RtreeCheck)(unsafe.Pointer(pCheck)).FzDb, (*RtreeCheck)(unsafe.Pointer(pCheck)).FzTab, zTbl)) if pCount != 0 { if Xsqlite3_step(tls, pCount) == SQLITE_ROW { var nActual I64 = Xsqlite3_column_int64(tls, pCount, 0) if nActual != nExpect { rtreeCheckAppendMsg(tls, pCheck, - ts+31610 /* "Wrong number of ..." */, libc.VaList(bp+24, zTbl, nExpect, nActual)) + ts+31620 /* "Wrong number of ..." */, libc.VaList(bp+24, zTbl, nExpect, nActual)) } } (*RtreeCheck)(unsafe.Pointer(pCheck)).Frc = Xsqlite3_finalize(tls, pCount) @@ -157384,13 +158040,13 @@ func rtreeCheckTable(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, pzRep // to ensure that the queries run as part of this integrity-check operate // on a consistent snapshot. if Xsqlite3_get_autocommit(tls, db) != 0 { - (*RtreeCheck)(unsafe.Pointer(bp + 32 /* &check */)).Frc = Xsqlite3_exec(tls, db, ts+16525 /* "BEGIN" */, uintptr(0), uintptr(0), uintptr(0)) + (*RtreeCheck)(unsafe.Pointer(bp + 32 /* &check */)).Frc = Xsqlite3_exec(tls, db, ts+16535 /* "BEGIN" */, uintptr(0), uintptr(0), uintptr(0)) bEnd = 1 } // Find the number of auxiliary columns if (*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).Frc == SQLITE_OK { - pStmt = rtreeCheckPrepare(tls, bp+32 /* &check */, ts+31677 /* "SELECT * FROM %Q..." */, libc.VaList(bp, zDb, zTab)) + pStmt = rtreeCheckPrepare(tls, bp+32 /* &check */, ts+31687 /* "SELECT * FROM %Q..." */, libc.VaList(bp, zDb, zTab)) if pStmt != 0 { nAux = (Xsqlite3_column_count(tls, pStmt) - 2) Xsqlite3_finalize(tls, pStmt) @@ -157399,12 +158055,12 @@ func rtreeCheckTable(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, pzRep } // Find number of dimensions in the rtree table. - pStmt = rtreeCheckPrepare(tls, bp+32 /* &check */, ts+29497 /* "SELECT * FROM %Q..." */, libc.VaList(bp+16, zDb, zTab)) + pStmt = rtreeCheckPrepare(tls, bp+32 /* &check */, ts+29507 /* "SELECT * FROM %Q..." */, libc.VaList(bp+16, zDb, zTab)) if pStmt != 0 { var rc int32 (*RtreeCheck)(unsafe.Pointer(bp + 32 /* &check */)).FnDim = (((Xsqlite3_column_count(tls, pStmt) - 1) - nAux) / 2) if (*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).FnDim < 1 { - rtreeCheckAppendMsg(tls, bp+32 /* &check */, ts+31705 /* "Schema corrupt o..." */, 0) + rtreeCheckAppendMsg(tls, bp+32 /* &check */, ts+31715 /* "Schema corrupt o..." */, 0) } else if SQLITE_ROW == Xsqlite3_step(tls, pStmt) { (*RtreeCheck)(unsafe.Pointer(bp + 32 /* &check */)).FbInt = (libc.Bool32(Xsqlite3_column_type(tls, pStmt, 1) == SQLITE_INTEGER)) } @@ -157419,8 +158075,8 @@ func rtreeCheckTable(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, pzRep if (*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).Frc == SQLITE_OK { rtreeCheckNode(tls, bp+32 /* &check */, 0, uintptr(0), int64(1)) } - rtreeCheckCount(tls, bp+32 /* &check */, ts+31736 /* "_rowid" */, int64((*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).FnLeaf)) - rtreeCheckCount(tls, bp+32 /* &check */, ts+31743 /* "_parent" */, int64((*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).FnNonLeaf)) + rtreeCheckCount(tls, bp+32 /* &check */, ts+31746 /* "_rowid" */, int64((*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).FnLeaf)) + rtreeCheckCount(tls, bp+32 /* &check */, ts+31753 /* "_parent" */, int64((*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).FnNonLeaf)) } // Finalize SQL statements used by the integrity-check @@ -157430,7 +158086,7 @@ func rtreeCheckTable(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, pzRep // If one was opened, close the transaction if bEnd != 0 { - var rc int32 = Xsqlite3_exec(tls, db, ts+31751 /* "END" */, uintptr(0), uintptr(0), uintptr(0)) + var rc int32 = Xsqlite3_exec(tls, db, ts+31761 /* "END" */, uintptr(0), uintptr(0), uintptr(0)) if (*RtreeCheck)(unsafe.Pointer(bp+32 /* &check */)).Frc == SQLITE_OK { (*RtreeCheck)(unsafe.Pointer(bp + 32 /* &check */)).Frc = rc } @@ -157476,7 +158132,7 @@ func rtreecheck(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqli if (nArg != 1) && (nArg != 2) { Xsqlite3_result_error(tls, ctx, - ts+31755 /* "wrong number of ..." */, -1) + ts+31765 /* "wrong number of ..." */, -1) } else { var rc int32 *(*uintptr)(unsafe.Pointer(bp /* zReport */)) = uintptr(0) @@ -157484,7 +158140,7 @@ func rtreecheck(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqli var zTab uintptr if nArg == 1 { zTab = zDb - zDb = ts + 8566 /* "main" */ + zDb = ts + 8576 /* "main" */ } else { zTab = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apArg + 1*4))) } @@ -157494,7 +158150,7 @@ func rtreecheck(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqli if *(*uintptr)(unsafe.Pointer(bp /* zReport */)) != 0 { return *(*uintptr)(unsafe.Pointer(bp /* zReport */)) } - return ts + 5228 /* "ok" */ + return ts + 5238 /* "ok" */ }(), -1, libc.UintptrFromInt32(-1)) } else { Xsqlite3_result_error_code(tls, ctx, rc) @@ -157930,11 +158586,11 @@ func geopolyJsonFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { var db uintptr = Xsqlite3_context_db_handle(tls, context) var x uintptr = Xsqlite3_str_new(tls, db) var i int32 - Xsqlite3_str_append(tls, x, ts+31806 /* "[" */, 1) + Xsqlite3_str_append(tls, x, ts+31816 /* "[" */, 1) for i = 0; i < (*GeoPoly)(unsafe.Pointer(p)).FnVertex; i++ { - Xsqlite3_str_appendf(tls, x, ts+31808 /* "[%!g,%!g]," */, libc.VaList(bp, float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */) + uintptr(((i)*2))*4))), float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */) + uintptr((((i)*2)+1))*4))))) + Xsqlite3_str_appendf(tls, x, ts+31818 /* "[%!g,%!g]," */, libc.VaList(bp, float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */) + uintptr(((i)*2))*4))), float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */) + uintptr((((i)*2)+1))*4))))) } - Xsqlite3_str_appendf(tls, x, ts+31819 /* "[%!g,%!g]]" */, libc.VaList(bp+16, float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */)))), float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */) + 1*4))))) + Xsqlite3_str_appendf(tls, x, ts+31829 /* "[%!g,%!g]]" */, libc.VaList(bp+16, float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */)))), float64(*(*GeoCoord)(unsafe.Pointer((p + 8 /* &.a */) + 1*4))))) Xsqlite3_result_text(tls, context, Xsqlite3_str_finish(tls, x), -1, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3_free}))) Xsqlite3_free(tls, p) } @@ -157958,19 +158614,19 @@ func geopolySvgFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { var x uintptr = Xsqlite3_str_new(tls, db) var i int32 var cSep int8 = int8('\'') - Xsqlite3_str_appendf(tls, x, ts+31830 /* "" */, 0) + Xsqlite3_str_appendf(tls, x, ts+31878 /* ">" */, 0) Xsqlite3_result_text(tls, context, Xsqlite3_str_finish(tls, x), -1, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3_free}))) Xsqlite3_free(tls, p) } @@ -158499,14 +159155,14 @@ type GeoEvent1 = struct { // Objects used by the overlap algorihm. type GeoEvent = GeoEvent1 /* sqlite3.c:197516:25 */ type GeoSegment1 = struct { - FC float64 - FB float64 - Fy float64 - Fy0 float32 - Fside uint8 - _ [3]byte - Fidx uint32 - FpNext uintptr + FC float64 + FB float64 + Fy float64 + Fy0 float32 + Fside uint8 + F__ccgo_pad1 [3]byte + Fidx uint32 + FpNext uintptr } /* sqlite3.c:197516:9 */ type GeoSegment = GeoSegment1 /* sqlite3.c:197517:27 */ @@ -158984,7 +159640,7 @@ __1: // that is successful, call sqlite3_declare_vtab() to configure // the r-tree table schema. pSql = Xsqlite3_str_new(tls, db) - Xsqlite3_str_appendf(tls, pSql, ts+31881 /* "CREATE TABLE x(_..." */, 0) + Xsqlite3_str_appendf(tls, pSql, ts+31891 /* "CREATE TABLE x(_..." */, 0) (*Rtree)(unsafe.Pointer(pRtree)).FnAux = U8(1) // Add one for _shape (*Rtree)(unsafe.Pointer(pRtree)).FnAuxNotNull = U8(1) // The _shape column is always not-null ii = 3 @@ -158993,7 +159649,7 @@ __2: goto __4 } (*Rtree)(unsafe.Pointer(pRtree)).FnAux++ - Xsqlite3_str_appendf(tls, pSql, ts+31903 /* ",%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(argv + uintptr(ii)*4)))) + Xsqlite3_str_appendf(tls, pSql, ts+31913 /* ",%s" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(argv + uintptr(ii)*4)))) goto __3 __3: ii++ @@ -159001,7 +159657,7 @@ __3: goto __4 __4: ; - Xsqlite3_str_appendf(tls, pSql, ts+30970 /* ");" */, 0) + Xsqlite3_str_appendf(tls, pSql, ts+30980 /* ");" */, 0) zSql = Xsqlite3_str_finish(tls, pSql) if !(!(zSql != 0)) { goto __5 @@ -159012,7 +159668,7 @@ __5: if !(SQLITE_OK != (libc.AssignInt32(&rc, Xsqlite3_declare_vtab(tls, db, zSql)))) { goto __7 } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp+16, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp+16, Xsqlite3_errmsg(tls, db))) __7: ; __6: @@ -159038,7 +159694,7 @@ __9: if !(rc != 0) { goto __10 } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp+24, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp+24, Xsqlite3_errmsg(tls, db))) goto geopolyInit_fail __10: ; @@ -159271,7 +159927,7 @@ func geopolyBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* s if iRowidTerm >= 0 { (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = 1 - (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = ts + 10297 /* "rowid" */ + (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = ts + 10307 /* "rowid" */ (*sqlite3_index_constraint_usage)(unsafe.Pointer((*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(iRowidTerm)*8)).FargvIndex = 1 (*sqlite3_index_constraint_usage)(unsafe.Pointer((*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(iRowidTerm)*8)).Fomit = uint8(1) (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = 30.0 @@ -159281,7 +159937,7 @@ func geopolyBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* s } if iFuncTerm >= 0 { (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = idxNum - (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = ts + 31907 /* "rtree" */ + (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = ts + 31917 /* "rtree" */ (*sqlite3_index_constraint_usage)(unsafe.Pointer((*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(iFuncTerm)*8)).FargvIndex = 1 (*sqlite3_index_constraint_usage)(unsafe.Pointer((*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(iFuncTerm)*8)).Fomit = uint8(0) (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = 300.0 @@ -159289,7 +159945,7 @@ func geopolyBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* s return SQLITE_OK } (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = 4 - (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = ts + 31913 /* "fullscan" */ + (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = ts + 31923 /* "fullscan" */ (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = 3000000.0 (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedRows = int64(100000) return SQLITE_OK @@ -159427,7 +160083,7 @@ __1: if !(*(*int32)(unsafe.Pointer(bp + 48 /* rc */)) == SQLITE_ERROR) { goto __4 } - (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg = Xsqlite3_mprintf(tls, ts+31922 /* "_shape does not ..." */, 0) + (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg = Xsqlite3_mprintf(tls, ts+31932 /* "_shape does not ..." */, 0) __4: ; goto geopoly_update_end @@ -159572,14 +160228,14 @@ geopoly_update_end: // Report that geopoly_overlap() is an overloaded function suitable // for use in xBestIndex. func geopolyFindFunction(tls *libc.TLS, pVtab uintptr, nArg int32, zName uintptr, pxFunc uintptr, ppArg uintptr) int32 { /* sqlite3.c:198361:12: */ - if Xsqlite3_stricmp(tls, zName, ts+31962 /* "geopoly_overlap" */) == 0 { + if Xsqlite3_stricmp(tls, zName, ts+31972 /* "geopoly_overlap" */) == 0 { *(*uintptr)(unsafe.Pointer(pxFunc)) = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{geopolyOverlapFunc})) *(*uintptr)(unsafe.Pointer(ppArg)) = uintptr(0) return SQLITE_INDEX_CONSTRAINT_FUNCTION } - if Xsqlite3_stricmp(tls, zName, ts+31978 /* "geopoly_within" */) == 0 { + if Xsqlite3_stricmp(tls, zName, ts+31988 /* "geopoly_within" */) == 0 { *(*uintptr)(unsafe.Pointer(pxFunc)) = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{geopolyWithinFunc})) @@ -159618,11 +160274,11 @@ func sqlite3_geopoly_init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:198409 var rc int32 = SQLITE_OK var i int32 for i = 0; (uint32(i) < (uint32(unsafe.Sizeof(aFunc1)) / uint32(unsafe.Sizeof(struct { - FxFunc uintptr - FnArg int8 - FbPure uint8 - _ [2]byte - FzName uintptr + FxFunc uintptr + FnArg int8 + FbPure uint8 + F__ccgo_pad1 [2]byte + FzName uintptr }{})))) && (rc == SQLITE_OK); i++ { var enc int32 if aFunc1[i].FbPure != 0 { @@ -159644,37 +160300,37 @@ func sqlite3_geopoly_init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:198409 uintptr(0), aAgg1[i].FxStep, aAgg1[i].FxFinal) } if rc == SQLITE_OK { - rc = Xsqlite3_create_module_v2(tls, db, ts+31993 /* "geopoly" */, uintptr(unsafe.Pointer(&geopolyModule)), uintptr(0), uintptr(0)) + rc = Xsqlite3_create_module_v2(tls, db, ts+32003 /* "geopoly" */, uintptr(unsafe.Pointer(&geopolyModule)), uintptr(0), uintptr(0)) } return rc } var aFunc1 = [12]struct { - FxFunc uintptr - FnArg int8 - FbPure uint8 - _ [2]byte - FzName uintptr + FxFunc uintptr + FnArg int8 + FbPure uint8 + F__ccgo_pad1 [2]byte + FzName uintptr }{ - {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 32001 /* "geopoly_area" */}, - {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 32014 /* "geopoly_blob" */}, - {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 32027 /* "geopoly_json" */}, - {FxFunc: 0, FnArg: int8(-1), FbPure: uint8(1), FzName: ts + 32040 /* "geopoly_svg" */}, - {FxFunc: 0, FnArg: int8(2), FbPure: uint8(1), FzName: ts + 31978 /* "geopoly_within" */}, - {FxFunc: 0, FnArg: int8(3), FbPure: uint8(1), FzName: ts + 32052 /* "geopoly_contains..." */}, - {FxFunc: 0, FnArg: int8(2), FbPure: uint8(1), FzName: ts + 31962 /* "geopoly_overlap" */}, - {FxFunc: 0, FnArg: int8(1), FzName: ts + 32075 /* "geopoly_debug" */}, - {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 32089 /* "geopoly_bbox" */}, - {FxFunc: 0, FnArg: int8(7), FbPure: uint8(1), FzName: ts + 32102 /* "geopoly_xform" */}, - {FxFunc: 0, FnArg: int8(4), FbPure: uint8(1), FzName: ts + 32116 /* "geopoly_regular" */}, - {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 32132 /* "geopoly_ccw" */}, + {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 32011 /* "geopoly_area" */}, + {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 32024 /* "geopoly_blob" */}, + {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 32037 /* "geopoly_json" */}, + {FxFunc: 0, FnArg: int8(-1), FbPure: uint8(1), FzName: ts + 32050 /* "geopoly_svg" */}, + {FxFunc: 0, FnArg: int8(2), FbPure: uint8(1), FzName: ts + 31988 /* "geopoly_within" */}, + {FxFunc: 0, FnArg: int8(3), FbPure: uint8(1), FzName: ts + 32062 /* "geopoly_contains..." */}, + {FxFunc: 0, FnArg: int8(2), FbPure: uint8(1), FzName: ts + 31972 /* "geopoly_overlap" */}, + {FxFunc: 0, FnArg: int8(1), FzName: ts + 32085 /* "geopoly_debug" */}, + {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 32099 /* "geopoly_bbox" */}, + {FxFunc: 0, FnArg: int8(7), FbPure: uint8(1), FzName: ts + 32112 /* "geopoly_xform" */}, + {FxFunc: 0, FnArg: int8(4), FbPure: uint8(1), FzName: ts + 32126 /* "geopoly_regular" */}, + {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 32142 /* "geopoly_ccw" */}, } /* sqlite3.c:198416:5 */ var aAgg1 = [1]struct { FxStep uintptr FxFinal uintptr FzName uintptr }{ - {FxStep: 0, FxFinal: 0, FzName: ts + 32144 /* "geopoly_group_bb..." */}, + {FxStep: 0, FxFinal: 0, FzName: ts + 32154 /* "geopoly_group_bb..." */}, } /* sqlite3.c:198434:5 */ //************* End of geopoly.c ******************************************** @@ -159687,26 +160343,26 @@ func Xsqlite3RtreeInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:198469:20 var utf8 int32 = SQLITE_UTF8 var rc int32 - rc = Xsqlite3_create_function(tls, db, ts+32163 /* "rtreenode" */, 2, utf8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + rc = Xsqlite3_create_function(tls, db, ts+32173 /* "rtreenode" */, 2, utf8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{rtreenode})), uintptr(0), uintptr(0)) if rc == SQLITE_OK { - rc = Xsqlite3_create_function(tls, db, ts+32173 /* "rtreedepth" */, 1, utf8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + rc = Xsqlite3_create_function(tls, db, ts+32183 /* "rtreedepth" */, 1, utf8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{rtreedepth})), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { - rc = Xsqlite3_create_function(tls, db, ts+32184 /* "rtreecheck" */, -1, utf8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + rc = Xsqlite3_create_function(tls, db, ts+32194 /* "rtreecheck" */, -1, utf8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{rtreecheck})), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { var c uintptr = uintptr(RTREE_COORD_REAL32) - rc = Xsqlite3_create_module_v2(tls, db, ts+31907 /* "rtree" */, uintptr(unsafe.Pointer(&rtreeModule)), c, uintptr(0)) + rc = Xsqlite3_create_module_v2(tls, db, ts+31917 /* "rtree" */, uintptr(unsafe.Pointer(&rtreeModule)), c, uintptr(0)) } if rc == SQLITE_OK { var c uintptr = uintptr(RTREE_COORD_INT32) - rc = Xsqlite3_create_module_v2(tls, db, ts+32195 /* "rtree_i32" */, uintptr(unsafe.Pointer(&rtreeModule)), c, uintptr(0)) + rc = Xsqlite3_create_module_v2(tls, db, ts+32205 /* "rtree_i32" */, uintptr(unsafe.Pointer(&rtreeModule)), c, uintptr(0)) } if rc == SQLITE_OK { rc = sqlite3_geopoly_init(tls, db) @@ -159723,7 +160379,7 @@ func Xsqlite3RtreeInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:198469:20 func rtreeFreeCallback(tls *libc.TLS, p uintptr) { /* sqlite3.c:198508:13: */ var pInfo uintptr = p if (*RtreeGeomCallback)(unsafe.Pointer(pInfo)).FxDestructor != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pInfo + 8 /* &.xDestructor */))))(tls, (*RtreeGeomCallback)(unsafe.Pointer(pInfo)).FpContext) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*RtreeGeomCallback)(unsafe.Pointer(pInfo)).FxDestructor})).f(tls, (*RtreeGeomCallback)(unsafe.Pointer(pInfo)).FpContext) } Xsqlite3_free(tls, p) } @@ -159778,7 +160434,7 @@ func geomCallback(tls *libc.TLS, ctx uintptr, nArg int32, aArg uintptr) { /* sql Xsqlite3_result_error_nomem(tls, ctx) rtreeMatchArgFree(tls, pBlob) } else { - Xsqlite3_result_pointer(tls, ctx, pBlob, ts+29483 /* "RtreeMatchArg" */, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{rtreeMatchArgFree}))) + Xsqlite3_result_pointer(tls, ctx, pBlob, ts+29493 /* "RtreeMatchArg" */, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{rtreeMatchArgFree}))) } } } @@ -160229,7 +160885,7 @@ type sqlite3rbu = struct { FzRbu uintptr FzState uintptr FzStateDb [5]int8 - _ [3]byte + F__ccgo_pad1 [3]byte Frc int32 FzErrmsg uintptr FnStep int32 @@ -160846,7 +161502,7 @@ type rbu_file = struct { FiCookie U32 FiWriteVer U8 FbNolock U8 - _ [2]byte + F__ccgo_pad1 [2]byte FnShm int32 FapShm uintptr FzDel uintptr @@ -161057,7 +161713,7 @@ func rbuFossilDeltaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr // Figure out the size of the output nOut = rbuDeltaOutputSize(tls, aDelta, nDelta) if nOut < 0 { - Xsqlite3_result_error(tls, context, ts+32205 /* "corrupt fossil d..." */, -1) + Xsqlite3_result_error(tls, context, ts+32215 /* "corrupt fossil d..." */, -1) return } @@ -161068,7 +161724,7 @@ func rbuFossilDeltaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr nOut2 = rbuDeltaApply(tls, aOrig, nOrig, aDelta, nDelta, aOut) if nOut2 != nOut { Xsqlite3_free(tls, aOut) - Xsqlite3_result_error(tls, context, ts+32205 /* "corrupt fossil d..." */, -1) + Xsqlite3_result_error(tls, context, ts+32215 /* "corrupt fossil d..." */, -1) } else { Xsqlite3_result_blob(tls, context, aOut, nOut, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3_free}))) } @@ -161089,7 +161745,7 @@ func prepareAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErrmsg var rc int32 = Xsqlite3_prepare_v2(tls, db, zSql, -1, ppStmt, uintptr(0)) if rc != SQLITE_OK { - *(*uintptr)(unsafe.Pointer(pzErrmsg)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, db))) + *(*uintptr)(unsafe.Pointer(pzErrmsg)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, db))) *(*uintptr)(unsafe.Pointer(ppStmt)) = uintptr(0) } return rc @@ -161107,7 +161763,7 @@ func resetAndCollectError(tls *libc.TLS, pStmt uintptr, pzErrmsg uintptr) int32 var rc int32 = Xsqlite3_reset(tls, pStmt) if rc != SQLITE_OK { - *(*uintptr)(unsafe.Pointer(pzErrmsg)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, Xsqlite3_db_handle(tls, pStmt)))) + *(*uintptr)(unsafe.Pointer(pzErrmsg)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, Xsqlite3_db_handle(tls, pStmt)))) } return rc } @@ -161211,7 +161867,7 @@ func rbuObjIterNext(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3. if (*RbuObjIter)(unsafe.Pointer(pIter)).FzIdx == uintptr(0) { rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, - ts+32226 /* "DROP TRIGGER IF ..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + ts+32236 /* "DROP TRIGGER IF ..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } if rc == SQLITE_OK { @@ -161295,7 +161951,7 @@ func rbuTargetNameFunc(tls *libc.TLS, pCtx uintptr, argc int32, argv uintptr) { Xsqlite3_result_text(tls, pCtx, zIn, -1, uintptr(0)) } } else { - if (libc.Xstrlen(tls, zIn) > Size_t(4)) && (libc.Xmemcmp(tls, ts+29396 /* "data" */, zIn, uint32(4)) == 0) { + if (libc.Xstrlen(tls, zIn) > Size_t(4)) && (libc.Xmemcmp(tls, ts+29406 /* "data" */, zIn, uint32(4)) == 0) { var i int32 for i = 4; (int32(*(*int8)(unsafe.Pointer(zIn + uintptr(i)))) >= '0') && (int32(*(*int8)(unsafe.Pointer(zIn + uintptr(i)))) <= '9'); i++ { } @@ -161323,17 +161979,17 @@ func rbuObjIterFirst(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3 rc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, (pIter /* &.pTblIter */), (p + 36 /* &.zErrmsg */), Xsqlite3_mprintf(tls, - ts+32397 /* "SELECT rbu_targe..." */, libc.VaList(bp, func() uintptr { + ts+32407 /* "SELECT rbu_targe..." */, libc.VaList(bp, func() uintptr { if (*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0) { - return ts + 32547 /* "AND rootpage!=0 ..." */ + return ts + 32557 /* "AND rootpage!=0 ..." */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }()))) if rc == SQLITE_OK { rc = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (pIter + 4 /* &.pIdxIter */), (p + 36 /* &.zErrmsg */), - ts+32588 /* "SELECT name, roo..." */) + ts+32598 /* "SELECT name, roo..." */) } (*RbuObjIter)(unsafe.Pointer(pIter)).FbCleanup = 1 @@ -161471,7 +162127,7 @@ func rbuFinalize(tls *libc.TLS, p uintptr, pStmt uintptr) { /* sqlite3.c:201199: var rc int32 = Xsqlite3_finalize(tls, pStmt) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (rc != SQLITE_OK) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = rc - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, db))) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, db))) } } @@ -161534,7 +162190,7 @@ func rbuTableType(tls *libc.TLS, p uintptr, zTab uintptr, peType uintptr, piTnum (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (bp + 32 /* &aStmt */), (p + 36 /* &.zErrmsg */), Xsqlite3_mprintf(tls, - ts+32713 /* "SELECT (sql LIKE..." */, libc.VaList(bp, zTab))) + ts+32723 /* "SELECT (sql LIKE..." */, libc.VaList(bp, zTab))) if !(((*Sqlite3rbu)(unsafe.Pointer(p)).Frc != SQLITE_OK) || (Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 32 /* &aStmt[0] */))) != SQLITE_ROW)) { goto __1 } @@ -161552,7 +162208,7 @@ __2: *(*int32)(unsafe.Pointer(piTnum)) = Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 32 /* &aStmt[0] */)), 1) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (bp + 32 /* &aStmt */ + 1*4), (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+32794 /* "PRAGMA index_lis..." */, libc.VaList(bp+8, zTab))) + Xsqlite3_mprintf(tls, ts+32804 /* "PRAGMA index_lis..." */, libc.VaList(bp+8, zTab))) if !((*Sqlite3rbu)(unsafe.Pointer(p)).Frc != 0) { goto __3 } @@ -161570,7 +162226,7 @@ __4: } (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (bp + 32 /* &aStmt */ + 2*4), (p + 36 /* &.zErrmsg */), Xsqlite3_mprintf(tls, - ts+32815 /* "SELECT rootpage ..." */, libc.VaList(bp+16, zIdx))) + ts+32825 /* "SELECT rootpage ..." */, libc.VaList(bp+16, zIdx))) if !((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) { goto __7 } @@ -161594,7 +162250,7 @@ __5: ; (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (bp + 32 /* &aStmt */ + 3*4), (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+32866 /* "PRAGMA table_inf..." */, libc.VaList(bp+24, zTab))) + Xsqlite3_mprintf(tls, ts+32876 /* "PRAGMA table_inf..." */, libc.VaList(bp+24, zTab))) if !((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) { goto __10 } @@ -161643,7 +162299,7 @@ func rbuObjIterCacheIndexedCols(tls *libc.TLS, p uintptr, pIter uintptr) { /* sq if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { libc.Xmemcpy(tls, (*RbuObjIter)(unsafe.Pointer(pIter)).FabIndexed, (*RbuObjIter)(unsafe.Pointer(pIter)).FabTblPk, (uint32(unsafe.Sizeof(U8(0))) * uint32((*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol))) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+16 /* &pList */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+32887 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) + Xsqlite3_mprintf(tls, ts+32897 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) } (*RbuObjIter)(unsafe.Pointer(pIter)).FnIndex = 0 @@ -161658,7 +162314,7 @@ func rbuObjIterCacheIndexedCols(tls *libc.TLS, p uintptr, pIter uintptr) { /* sq libc.Xmemset(tls, (*RbuObjIter)(unsafe.Pointer(pIter)).FabIndexed, 0x01, (uint32(unsafe.Sizeof(U8(0))) * uint32((*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol))) } (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+20 /* &pXInfo */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+32915 /* "PRAGMA main.inde..." */, libc.VaList(bp+8, zIdx))) + Xsqlite3_mprintf(tls, ts+32925 /* "PRAGMA main.inde..." */, libc.VaList(bp+8, zIdx))) for ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 20 /* pXInfo */)))) { var iCid int32 = Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 20 /* pXInfo */)), 1) if iCid >= 0 { @@ -161708,7 +162364,7 @@ func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { / rbuTableType(tls, p, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl, (pIter + 36 /* &.eType */), bp+56 /* &iTnum */, (pIter + 60 /* &.iPkTnum */)) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_NOTABLE) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+21587 /* "no such table: %..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl)) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+21597 /* "no such table: %..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl)) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc != 0 { return (*Sqlite3rbu)(unsafe.Pointer(p)).Frc @@ -161721,18 +162377,18 @@ func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { / // of the input table. Ignore any input table columns that begin with // "rbu_". (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp+60 /* &pStmt */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+32944 /* "SELECT * FROM '%..." */, libc.VaList(bp+8, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl))) + Xsqlite3_mprintf(tls, ts+32954 /* "SELECT * FROM '%..." */, libc.VaList(bp+8, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl))) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { nCol = Xsqlite3_column_count(tls, *(*uintptr)(unsafe.Pointer(bp + 60 /* pStmt */))) rbuAllocateIterArrays(tls, p, pIter, nCol) } for i = 0; ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (i < nCol); i++ { var zName uintptr = Xsqlite3_column_name(tls, *(*uintptr)(unsafe.Pointer(bp + 60 /* pStmt */)), i) - if Xsqlite3_strnicmp(tls, ts+32963 /* "rbu_" */, zName, 4) != 0 { + if Xsqlite3_strnicmp(tls, ts+32973 /* "rbu_" */, zName, 4) != 0 { var zCopy uintptr = rbuStrndup(tls, zName, (p + 32 /* &.rc */)) *(*int32)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FaiSrcOrder + uintptr((*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol)*4)) = (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(libc.PostIncInt32(&(*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol, 1))*4)) = zCopy - } else if 0 == Xsqlite3_stricmp(tls, ts+32968 /* "rbu_rowid" */, zName) { + } else if 0 == Xsqlite3_stricmp(tls, ts+32978 /* "rbu_rowid" */, zName) { bRbuRowid = 1 } } @@ -161744,12 +162400,12 @@ func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { / (bRbuRowid != (libc.Bool32(((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_VTAB) || ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_NONE)))) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, - ts+32978 /* "table %q %s rbu_..." */, libc.VaList(bp+16, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, + ts+32988 /* "table %q %s rbu_..." */, libc.VaList(bp+16, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, func() uintptr { if bRbuRowid != 0 { - return ts + 33007 /* "may not have" */ + return ts + 33017 /* "may not have" */ } - return ts + 33020 /* "requires" */ + return ts + 33030 /* "requires" */ }())) } @@ -161758,7 +162414,7 @@ func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { / // aiTblOrder[] arrays at the same time. if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+60 /* &pStmt */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+33029 /* "PRAGMA table_inf..." */, libc.VaList(bp+32, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) + Xsqlite3_mprintf(tls, ts+33039 /* "PRAGMA table_inf..." */, libc.VaList(bp+32, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) } for ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 60 /* pStmt */)))) { var zName uintptr = Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 60 /* pStmt */)), 1) @@ -161772,7 +162428,7 @@ func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { / } if i == (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+33051, /* "column missing f..." */ + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+33061, /* "column missing f..." */ libc.VaList(bp+40, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, zName)) } else { var iPk int32 = Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 60 /* pStmt */)), 5) @@ -161818,12 +162474,12 @@ func rbuObjIterGetCollist(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* defer tls.Free(24) var zList uintptr = uintptr(0) - var zSep uintptr = ts + 915 /* "" */ + var zSep uintptr = ts + 925 /* "" */ var i int32 for i = 0; i < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol; i++ { var z uintptr = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)) - zList = rbuMPrintf(tls, p, ts+33078 /* "%z%s\"%w\"" */, libc.VaList(bp, zList, zSep, z)) - zSep = ts + 16636 /* ", " */ + zList = rbuMPrintf(tls, p, ts+33088 /* "%z%s\"%w\"" */, libc.VaList(bp, zList, zSep, z)) + zSep = ts + 16646 /* ", " */ } return zList } @@ -161838,13 +162494,13 @@ func rbuObjIterGetPkList(tls *libc.TLS, p uintptr, pIter uintptr, zPre uintptr, var iPk int32 = 1 var zRet uintptr = uintptr(0) - var zSep uintptr = ts + 915 /* "" */ + var zSep uintptr = ts + 925 /* "" */ for 1 != 0 { var i int32 for i = 0; i < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol; i++ { if int32(*(*U8)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FabTblPk + uintptr(i)))) == iPk { var zCol uintptr = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)) - zRet = rbuMPrintf(tls, p, ts+33087 /* "%z%s%s\"%w\"%s" */, libc.VaList(bp, zRet, zSep, zPre, zCol, zPost)) + zRet = rbuMPrintf(tls, p, ts+33097 /* "%z%s%s\"%w\"%s" */, libc.VaList(bp, zRet, zSep, zPre, zCol, zPost)) zSep = zSeparator break } @@ -161883,25 +162539,25 @@ func rbuVacuumTableStart(tls *libc.TLS, p uintptr, pIter uintptr, bRowid int32, if bRowid != 0 { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+72 /* &pMax */, (p + 36 /* &.zErrmsg */), Xsqlite3_mprintf(tls, - ts+33100 /* "SELECT max(_rowi..." */, libc.VaList(bp, zWrite, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) + ts+33110 /* "SELECT max(_rowi..." */, libc.VaList(bp, zWrite, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 72 /* pMax */)))) { var iMax Sqlite3_int64 = Xsqlite3_column_int64(tls, *(*uintptr)(unsafe.Pointer(bp + 72 /* pMax */)), 0) - zRet = rbuMPrintf(tls, p, ts+33132 /* " WHERE _rowid_ >..." */, libc.VaList(bp+16, iMax)) + zRet = rbuMPrintf(tls, p, ts+33142 /* " WHERE _rowid_ >..." */, libc.VaList(bp+16, iMax)) } rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp + 72 /* pMax */))) } else { - var zOrder uintptr = rbuObjIterGetPkList(tls, p, pIter, ts+915 /* "" */, ts+16636 /* ", " */, ts+33155 /* " DESC" */) - var zSelect uintptr = rbuObjIterGetPkList(tls, p, pIter, ts+33161 /* "quote(" */, ts+33168 /* "||','||" */, ts+6887 /* ")" */) - var zList uintptr = rbuObjIterGetPkList(tls, p, pIter, ts+915 /* "" */, ts+16636 /* ", " */, ts+915 /* "" */) + var zOrder uintptr = rbuObjIterGetPkList(tls, p, pIter, ts+925 /* "" */, ts+16646 /* ", " */, ts+33165 /* " DESC" */) + var zSelect uintptr = rbuObjIterGetPkList(tls, p, pIter, ts+33171 /* "quote(" */, ts+33178 /* "||','||" */, ts+6897 /* ")" */) + var zList uintptr = rbuObjIterGetPkList(tls, p, pIter, ts+925 /* "" */, ts+16646 /* ", " */, ts+925 /* "" */) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+72 /* &pMax */, (p + 36 /* &.zErrmsg */), Xsqlite3_mprintf(tls, - ts+33176, /* "SELECT %s FROM \"..." */ + ts+33186, /* "SELECT %s FROM \"..." */ libc.VaList(bp+24, zSelect, zWrite, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl, zOrder))) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 72 /* pMax */)))) { var zVal uintptr = Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 72 /* pMax */)), 0) - zRet = rbuMPrintf(tls, p, ts+33218 /* " WHERE (%s) > (%..." */, libc.VaList(bp+56, zList, zVal)) + zRet = rbuMPrintf(tls, p, ts+33228 /* " WHERE (%s) > (%..." */, libc.VaList(bp+56, zList, zVal)) } rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp + 72 /* pMax */))) } @@ -161959,12 +162615,12 @@ func XrbuVacuumIndexStart(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* zVector = uintptr(0) zRet = uintptr(0) bFailed = 0 - zSep = ts + 915 /* "" */ + zSep = ts + 925 /* "" */ iCol = 0 *(*uintptr)(unsafe.Pointer(bp + 176 /* pXInfo */)) = uintptr(0) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+176 /* &pXInfo */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+32915 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzIdx))) + Xsqlite3_mprintf(tls, ts+32925 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzIdx))) __1: if !(((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 176 /* pXInfo */))))) { goto __2 @@ -162001,7 +162657,7 @@ __10: zCol = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)) goto __7 __6: - zCol = ts + 33238 /* "_rowid_" */ + zCol = ts + 33248 /* "_rowid_" */ __7: ; goto __5 @@ -162010,13 +162666,13 @@ __4: __5: ; - zLhs = rbuMPrintf(tls, p, ts+33246, /* "%z%s \"%w\" COLLAT..." */ + zLhs = rbuMPrintf(tls, p, ts+33256, /* "%z%s \"%w\" COLLAT..." */ libc.VaList(bp+8, zLhs, zSep, zCol, zCollate)) - zOrder = rbuMPrintf(tls, p, ts+33267, /* "%z%s \"rbu_imp_%d..." */ + zOrder = rbuMPrintf(tls, p, ts+33277, /* "%z%s \"rbu_imp_%d..." */ libc.VaList(bp+40, zOrder, zSep, iCol, zCol, zCollate)) - zSelect = rbuMPrintf(tls, p, ts+33303, /* "%z%s quote(\"rbu_..." */ + zSelect = rbuMPrintf(tls, p, ts+33313, /* "%z%s quote(\"rbu_..." */ libc.VaList(bp+80, zSelect, zSep, iCol, zCol)) - zSep = ts + 16636 /* ", " */ + zSep = ts + 16646 /* ", " */ iCol++ goto __1 __2: @@ -162035,12 +162691,12 @@ __11: *(*uintptr)(unsafe.Pointer(bp + 180 /* pSel */)) = uintptr(0) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+180 /* &pSel */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+33330, /* "SELECT %s FROM \"..." */ + Xsqlite3_mprintf(tls, ts+33340, /* "SELECT %s FROM \"..." */ libc.VaList(bp+112, zSelect, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl, zOrder))) if !(((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 180 /* pSel */))))) { goto __13 } - zSep = ts + 915 /* "" */ + zSep = ts + 925 /* "" */ iCol = 0 __14: if !(iCol < (*RbuObjIter)(unsafe.Pointer(pIter)).FnCol) { @@ -162062,8 +162718,8 @@ __19: ; __18: ; - zVector = rbuMPrintf(tls, p, ts+33378 /* "%z%s%s" */, libc.VaList(bp+136, zVector, zSep, zQuoted)) - zSep = ts + 16636 /* ", " */ + zVector = rbuMPrintf(tls, p, ts+33388 /* "%z%s%s" */, libc.VaList(bp+136, zVector, zSep, zQuoted)) + zSep = ts + 16646 /* ", " */ goto __15 __15: iCol++ @@ -162075,7 +162731,7 @@ __16: if !(!(bFailed != 0)) { goto __20 } - zRet = rbuMPrintf(tls, p, ts+33385 /* "(%s) > (%s)" */, libc.VaList(bp+160, zLhs, zVector)) + zRet = rbuMPrintf(tls, p, ts+33395 /* "(%s) > (%s)" */, libc.VaList(bp+160, zLhs, zVector)) __20: ; __13: @@ -162125,14 +162781,14 @@ func rbuObjIterGetIndexCols(tls *libc.TLS, p uintptr, pIter uintptr, pzImposterC var zImpPK uintptr = uintptr(0) // String to return via *pzImposterPK var zWhere uintptr = uintptr(0) // String to return via *pzWhere var nBind int32 = 0 // Value to return via *pnBind - var zCom uintptr = ts + 915 /* "" */ // Set to ", " later on - var zAnd uintptr = ts + 915 /* "" */ // Set to " AND " later on + var zCom uintptr = ts + 925 /* "" */ // Set to ", " later on + var zAnd uintptr = ts + 925 /* "" */ // Set to " AND " later on *(*uintptr)(unsafe.Pointer(bp + 200 /* pXInfo */)) = uintptr(0) // PRAGMA index_xinfo = ? if rc == SQLITE_OK { rc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+200 /* &pXInfo */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+32915 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzIdx))) + Xsqlite3_mprintf(tls, ts+32925 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzIdx))) } for (rc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 200 /* pXInfo */)))) { @@ -162144,9 +162800,9 @@ func rbuObjIterGetIndexCols(tls *libc.TLS, p uintptr, pIter uintptr, pzImposterC if iCid == -2 { var iSeq int32 = Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 200 /* pXInfo */)), 0) - zRet = Xsqlite3_mprintf(tls, ts+33397 /* "%z%s(%.*s) COLLA..." */, libc.VaList(bp+8, zRet, zCom, + zRet = Xsqlite3_mprintf(tls, ts+33407 /* "%z%s(%.*s) COLLA..." */, libc.VaList(bp+8, zRet, zCom, (*RbuSpan)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FaIdxCol+uintptr(iSeq)*8)).FnSpan, (*RbuSpan)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FaIdxCol+uintptr(iSeq)*8)).FzSpan, zCollate)) - zType = ts + 915 /* "" */ + zType = ts + 925 /* "" */ } else { if iCid < 0 { // An integer primary key. If the table has an explicit IPK, use @@ -162158,37 +162814,37 @@ func rbuObjIterGetIndexCols(tls *libc.TLS, p uintptr, pIter uintptr, pzImposterC zCol = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)) } else if (*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0) { - zCol = ts + 33238 /* "_rowid_" */ + zCol = ts + 33248 /* "_rowid_" */ } else { - zCol = ts + 32968 /* "rbu_rowid" */ + zCol = ts + 32978 /* "rbu_rowid" */ } - zType = ts + 14702 /* "INTEGER" */ + zType = ts + 14712 /* "INTEGER" */ } else { zCol = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(iCid)*4)) zType = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblType + uintptr(iCid)*4)) } - zRet = Xsqlite3_mprintf(tls, ts+33419 /* "%z%s\"%w\" COLLATE..." */, libc.VaList(bp+48, zRet, zCom, zCol, zCollate)) + zRet = Xsqlite3_mprintf(tls, ts+33429 /* "%z%s\"%w\" COLLATE..." */, libc.VaList(bp+48, zRet, zCom, zCol, zCollate)) } if ((*RbuObjIter)(unsafe.Pointer(pIter)).FbUnique == 0) || (Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 200 /* pXInfo */)), 5) != 0) { var zOrder uintptr = func() uintptr { if bDesc != 0 { - return ts + 33155 /* " DESC" */ + return ts + 33165 /* " DESC" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }() - zImpPK = Xsqlite3_mprintf(tls, ts+33439, /* "%z%s\"rbu_imp_%d%..." */ + zImpPK = Xsqlite3_mprintf(tls, ts+33449, /* "%z%s\"rbu_imp_%d%..." */ libc.VaList(bp+80, zImpPK, zCom, nBind, zCol, zOrder)) } - zImpCols = Xsqlite3_mprintf(tls, ts+33460, /* "%z%s\"rbu_imp_%d%..." */ + zImpCols = Xsqlite3_mprintf(tls, ts+33470, /* "%z%s\"rbu_imp_%d%..." */ libc.VaList(bp+120, zImpCols, zCom, nBind, zCol, zType, zCollate)) zWhere = Xsqlite3_mprintf(tls, - ts+33493 /* "%z%s\"rbu_imp_%d%..." */, libc.VaList(bp+168, zWhere, zAnd, nBind, zCol)) + ts+33503 /* "%z%s\"rbu_imp_%d%..." */, libc.VaList(bp+168, zWhere, zAnd, nBind, zCol)) if (((zRet == uintptr(0)) || (zImpPK == uintptr(0))) || (zImpCols == uintptr(0))) || (zWhere == uintptr(0)) { rc = SQLITE_NOMEM } - zCom = ts + 16636 /* ", " */ - zAnd = ts + 24073 /* " AND " */ + zCom = ts + 16646 /* ", " */ + zAnd = ts + 24083 /* " AND " */ nBind++ } @@ -162231,16 +162887,16 @@ func rbuObjIterGetOldlist(tls *libc.TLS, p uintptr, pIter uintptr, zObj uintptr) var zList uintptr = uintptr(0) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*RbuObjIter)(unsafe.Pointer(pIter)).FabIndexed != 0) { - var zS uintptr = ts + 915 /* "" */ + var zS uintptr = ts + 925 /* "" */ var i int32 for i = 0; i < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol; i++ { if *(*U8)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FabIndexed + uintptr(i))) != 0 { var zCol uintptr = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)) - zList = Xsqlite3_mprintf(tls, ts+33517 /* "%z%s%s.\"%w\"" */, libc.VaList(bp, zList, zS, zObj, zCol)) + zList = Xsqlite3_mprintf(tls, ts+33527 /* "%z%s%s.\"%w\"" */, libc.VaList(bp, zList, zS, zObj, zCol)) } else { - zList = Xsqlite3_mprintf(tls, ts+33529 /* "%z%sNULL" */, libc.VaList(bp+32, zList, zS)) + zList = Xsqlite3_mprintf(tls, ts+33539 /* "%z%sNULL" */, libc.VaList(bp+32, zList, zS)) } - zS = ts + 16636 /* ", " */ + zS = ts + 16646 /* ", " */ if zList == uintptr(0) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_NOMEM break @@ -162249,7 +162905,7 @@ func rbuObjIterGetOldlist(tls *libc.TLS, p uintptr, pIter uintptr, zObj uintptr) // For a table with implicit rowids, append "old._rowid_" to the list. if ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_EXTERNAL) || ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_NONE) { - zList = rbuMPrintf(tls, p, ts+33538 /* "%z, %s._rowid_" */, libc.VaList(bp+48, zList, zObj)) + zList = rbuMPrintf(tls, p, ts+33548 /* "%z, %s._rowid_" */, libc.VaList(bp+48, zList, zObj)) } } return zList @@ -162269,27 +162925,27 @@ func rbuObjIterGetWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sq var zList uintptr = uintptr(0) if ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_VTAB) || ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_NONE) { - zList = rbuMPrintf(tls, p, ts+33553 /* "_rowid_ = ?%d" */, libc.VaList(bp, ((*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol+1))) + zList = rbuMPrintf(tls, p, ts+33563 /* "_rowid_ = ?%d" */, libc.VaList(bp, ((*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol+1))) } else if (*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_EXTERNAL { - var zSep uintptr = ts + 915 /* "" */ + var zSep uintptr = ts + 925 /* "" */ var i int32 for i = 0; i < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol; i++ { if *(*U8)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FabTblPk + uintptr(i))) != 0 { - zList = rbuMPrintf(tls, p, ts+33567 /* "%z%sc%d=?%d" */, libc.VaList(bp+8, zList, zSep, i, (i+1))) - zSep = ts + 24073 /* " AND " */ + zList = rbuMPrintf(tls, p, ts+33577 /* "%z%sc%d=?%d" */, libc.VaList(bp+8, zList, zSep, i, (i+1))) + zSep = ts + 24083 /* " AND " */ } } zList = rbuMPrintf(tls, p, - ts+33579 /* "_rowid_ = (SELEC..." */, libc.VaList(bp+40, zList)) + ts+33589 /* "_rowid_ = (SELEC..." */, libc.VaList(bp+40, zList)) } else { - var zSep uintptr = ts + 915 /* "" */ + var zSep uintptr = ts + 925 /* "" */ var i int32 for i = 0; i < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol; i++ { if *(*U8)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FabTblPk + uintptr(i))) != 0 { var zCol uintptr = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)) - zList = rbuMPrintf(tls, p, ts+33629 /* "%z%s\"%w\"=?%d" */, libc.VaList(bp+48, zList, zSep, zCol, (i+1))) - zSep = ts + 24073 /* " AND " */ + zList = rbuMPrintf(tls, p, ts+33639 /* "%z%s\"%w\"=?%d" */, libc.VaList(bp+48, zList, zSep, zCol, (i+1))) + zSep = ts + 24083 /* " AND " */ } } } @@ -162303,7 +162959,7 @@ func rbuObjIterGetWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sq // of the RBU handle to something reflecting this. func rbuBadControlError(tls *libc.TLS, p uintptr) { /* sqlite3.c:201937:13: */ (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+33642 /* "invalid rbu_cont..." */, 0) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+33652 /* "invalid rbu_cont..." */, 0) } // Return a nul-terminated string containing the comma separated list of @@ -162332,21 +162988,21 @@ func rbuObjIterGetSetlist(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr if int32(libc.Xstrlen(tls, zMask)) != (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol { rbuBadControlError(tls, p) } else { - var zSep uintptr = ts + 915 /* "" */ + var zSep uintptr = ts + 925 /* "" */ for i = 0; i < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol; i++ { var c int8 = *(*int8)(unsafe.Pointer(zMask + uintptr(*(*int32)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FaiSrcOrder + uintptr(i)*4))))) if int32(c) == 'x' { - zList = rbuMPrintf(tls, p, ts+33629, /* "%z%s\"%w\"=?%d" */ + zList = rbuMPrintf(tls, p, ts+33639, /* "%z%s\"%w\"=?%d" */ libc.VaList(bp, zList, zSep, *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)), (i+1))) - zSep = ts + 16636 /* ", " */ + zSep = ts + 16646 /* ", " */ } else if int32(c) == 'd' { - zList = rbuMPrintf(tls, p, ts+33668, /* "%z%s\"%w\"=rbu_del..." */ + zList = rbuMPrintf(tls, p, ts+33678, /* "%z%s\"%w\"=rbu_del..." */ libc.VaList(bp+32, zList, zSep, *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)), *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)), (i+1))) - zSep = ts + 16636 /* ", " */ + zSep = ts + 16646 /* ", " */ } else if int32(c) == 'f' { - zList = rbuMPrintf(tls, p, ts+33698, /* "%z%s\"%w\"=rbu_fos..." */ + zList = rbuMPrintf(tls, p, ts+33708, /* "%z%s\"%w\"=rbu_fos..." */ libc.VaList(bp+72, zList, zSep, *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)), *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*4)), (i+1))) - zSep = ts + 16636 /* ", " */ + zSep = ts + 16646 /* ", " */ } } } @@ -162404,19 +163060,19 @@ func rbuWithoutRowidPK(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sql var z uintptr = uintptr(0) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - var zSep uintptr = ts + 33735 /* "PRIMARY KEY(" */ + var zSep uintptr = ts + 33745 /* "PRIMARY KEY(" */ *(*uintptr)(unsafe.Pointer(bp + 56 /* pXList */)) = uintptr(0) // PRAGMA index_list = (pIter->zTbl) *(*uintptr)(unsafe.Pointer(bp + 60 /* pXInfo */)) = uintptr(0) // PRAGMA index_xinfo = (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+56 /* &pXList */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+32887 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) + Xsqlite3_mprintf(tls, ts+32897 /* "PRAGMA main.inde..." */, libc.VaList(bp, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl))) for ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 56 /* pXList */)))) { var zOrig uintptr = Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 56 /* pXList */)), 3) - if (zOrig != 0) && (libc.Xstrcmp(tls, zOrig, ts+18104 /* "pk" */) == 0) { + if (zOrig != 0) && (libc.Xstrcmp(tls, zOrig, ts+18114 /* "pk" */) == 0) { var zIdx uintptr = Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 56 /* pXList */)), 1) if zIdx != 0 { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+60 /* &pXInfo */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+32915 /* "PRAGMA main.inde..." */, libc.VaList(bp+8, zIdx))) + Xsqlite3_mprintf(tls, ts+32925 /* "PRAGMA main.inde..." */, libc.VaList(bp+8, zIdx))) } break } @@ -162429,15 +163085,15 @@ func rbuWithoutRowidPK(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sql var zCol uintptr = Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 60 /* pXInfo */)), 2) var zDesc uintptr if Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 60 /* pXInfo */)), 3) != 0 { - zDesc = ts + 33155 /* " DESC" */ + zDesc = ts + 33165 /* " DESC" */ } else { - zDesc = ts + 915 /* "" */ + zDesc = ts + 925 /* "" */ } - z = rbuMPrintf(tls, p, ts+33748 /* "%z%s\"%w\"%s" */, libc.VaList(bp+16, z, zSep, zCol, zDesc)) - zSep = ts + 16636 /* ", " */ + z = rbuMPrintf(tls, p, ts+33758 /* "%z%s\"%w\"%s" */, libc.VaList(bp+16, z, zSep, zCol, zDesc)) + zSep = ts + 16646 /* ", " */ } } - z = rbuMPrintf(tls, p, ts+33759 /* "%z)" */, libc.VaList(bp+48, z)) + z = rbuMPrintf(tls, p, ts+33769 /* "%z)" */, libc.VaList(bp+48, z)) rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp + 60 /* pXInfo */))) } return z @@ -162469,7 +163125,7 @@ func rbuCreateImposterTable2(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlit *(*uintptr)(unsafe.Pointer(bp + 168 /* pQuery */)) = uintptr(0) // SELECT name ... WHERE rootpage = $tnum var zIdx uintptr = uintptr(0) // Name of PK index *(*uintptr)(unsafe.Pointer(bp + 172 /* pXInfo */)) = uintptr(0) // PRAGMA main.index_xinfo = $zIdx - var zComma uintptr = ts + 915 /* "" */ + var zComma uintptr = ts + 925 /* "" */ var zCols uintptr = uintptr(0) // Used to build up list of table cols var zPk uintptr = uintptr(0) // Used to build up table PK declaration @@ -162477,7 +163133,7 @@ func rbuCreateImposterTable2(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlit // This is needed for the argument to "PRAGMA index_xinfo". Set // zIdx to point to a nul-terminated string containing this name. (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+168 /* &pQuery */, (p + 36 /* &.zErrmsg */), - ts+33763 /* "SELECT name FROM..." */) + ts+33773 /* "SELECT name FROM..." */) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { Xsqlite3_bind_int(tls, *(*uintptr)(unsafe.Pointer(bp + 168 /* pQuery */)), 1, tnum) if SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 168 /* pQuery */))) { @@ -162486,7 +163142,7 @@ func rbuCreateImposterTable2(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlit } if zIdx != 0 { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+172 /* &pXInfo */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+32915 /* "PRAGMA main.inde..." */, libc.VaList(bp, zIdx))) + Xsqlite3_mprintf(tls, ts+32925 /* "PRAGMA main.inde..." */, libc.VaList(bp, zIdx))) } rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp + 168 /* pQuery */))) @@ -162496,25 +163152,25 @@ func rbuCreateImposterTable2(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlit var iCid int32 = Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 172 /* pXInfo */)), 1) var bDesc int32 = Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 172 /* pXInfo */)), 3) var zCollate uintptr = Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 172 /* pXInfo */)), 4) - zCols = rbuMPrintf(tls, p, ts+33813 /* "%z%sc%d %s COLLA..." */, libc.VaList(bp+8, zCols, zComma, + zCols = rbuMPrintf(tls, p, ts+33823 /* "%z%sc%d %s COLLA..." */, libc.VaList(bp+8, zCols, zComma, iCid, *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblType + uintptr(iCid)*4)), zCollate)) - zPk = rbuMPrintf(tls, p, ts+33835 /* "%z%sc%d%s" */, libc.VaList(bp+48, zPk, zComma, iCid, func() uintptr { + zPk = rbuMPrintf(tls, p, ts+33845 /* "%z%sc%d%s" */, libc.VaList(bp+48, zPk, zComma, iCid, func() uintptr { if bDesc != 0 { - return ts + 33155 /* " DESC" */ + return ts + 33165 /* " DESC" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }())) - zComma = ts + 16636 /* ", " */ + zComma = ts + 16646 /* ", " */ } } - zCols = rbuMPrintf(tls, p, ts+33845 /* "%z, id INTEGER" */, libc.VaList(bp+80, zCols)) + zCols = rbuMPrintf(tls, p, ts+33855 /* "%z, id INTEGER" */, libc.VaList(bp+80, zCols)) rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp + 172 /* pXInfo */))) - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+88, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8566 /* "main" */, 1, tnum)) + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+88, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8576 /* "main" */, 1, tnum)) rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, - ts+33860, /* "CREATE TABLE rbu..." */ + ts+33870, /* "CREATE TABLE rbu..." */ libc.VaList(bp+120, zCols, zPk)) - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+136, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8566 /* "main" */, 0, 0)) + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+136, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8576 /* "main" */, 0, 0)) } } @@ -162542,52 +163198,52 @@ func rbuCreateImposterTable(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType != RBU_PK_VTAB) { var tnum int32 = (*RbuObjIter)(unsafe.Pointer(pIter)).FiTnum - var zComma uintptr = ts + 915 /* "" */ + var zComma uintptr = ts + 925 /* "" */ var zSql uintptr = uintptr(0) var iCol int32 - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8566 /* "main" */, 0, 1)) + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8576 /* "main" */, 0, 1)) for iCol = 0; ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (iCol < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol); iCol++ { - var zPk uintptr = ts + 915 /* "" */ + var zPk uintptr = ts + 925 /* "" */ var zCol uintptr = *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(iCol)*4)) *(*uintptr)(unsafe.Pointer(bp + 192 /* zColl */)) = uintptr(0) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_table_column_metadata(tls, - (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8566 /* "main" */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl, zCol, uintptr(0), bp+192 /* &zColl */, uintptr(0), uintptr(0), uintptr(0)) + (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8576 /* "main" */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl, zCol, uintptr(0), bp+192 /* &zColl */, uintptr(0), uintptr(0), uintptr(0)) if ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_IPK) && (*(*U8)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FabTblPk + uintptr(iCol))) != 0) { // If the target table column is an "INTEGER PRIMARY KEY", add // "PRIMARY KEY" to the imposter table column declaration. - zPk = ts + 33922 /* "PRIMARY KEY " */ + zPk = ts + 33932 /* "PRIMARY KEY " */ } - zSql = rbuMPrintf(tls, p, ts+33935, /* "%z%s\"%w\" %s %sCO..." */ + zSql = rbuMPrintf(tls, p, ts+33945, /* "%z%s\"%w\" %s %sCO..." */ libc.VaList(bp+32, zSql, zComma, zCol, *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblType + uintptr(iCol)*4)), zPk, *(*uintptr)(unsafe.Pointer(bp + 192 /* zColl */)), func() uintptr { if *(*U8)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FabNotNull + uintptr(iCol))) != 0 { - return ts + 33962 /* " NOT NULL" */ + return ts + 33972 /* " NOT NULL" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }())) - zComma = ts + 16636 /* ", " */ + zComma = ts + 16646 /* ", " */ } if (*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_WITHOUT_ROWID { var zPk uintptr = rbuWithoutRowidPK(tls, p, pIter) if zPk != 0 { - zSql = rbuMPrintf(tls, p, ts+33972 /* "%z, %z" */, libc.VaList(bp+88, zSql, zPk)) + zSql = rbuMPrintf(tls, p, ts+33982 /* "%z, %z" */, libc.VaList(bp+88, zSql, zPk)) } } - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+104, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8566 /* "main" */, 1, tnum)) - rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+33979, /* "CREATE TABLE \"rb..." */ + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+104, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8576 /* "main" */, 1, tnum)) + rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+33989, /* "CREATE TABLE \"rb..." */ libc.VaList(bp+136, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl, zSql, func() uintptr { if (*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_WITHOUT_ROWID { - return ts + 34011 /* " WITHOUT ROWID" */ + return ts + 34021 /* " WITHOUT ROWID" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }())) - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+160, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8566 /* "main" */, 0, 0)) + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+160, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8576 /* "main" */, 0, 0)) } } @@ -162610,7 +163266,7 @@ func rbuObjIterPrepareTmpInsert(tls *libc.TLS, p uintptr, pIter uintptr, zCollis (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, (pIter + 88 /* &.pTmpInsert */), (p + 36 /* &.zErrmsg */), Xsqlite3_mprintf(tls, - ts+34026, /* "INSERT INTO %s.'..." */ + ts+34036, /* "INSERT INTO %s.'..." */ libc.VaList(bp, p+24 /* &.zStateDb */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, zCollist, zRbuRowid, zBind))) } } @@ -162647,7 +163303,7 @@ func rbuObjIterGetIndexWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { if *(*int32)(unsafe.Pointer(bp + 4 /* rc */)) == SQLITE_OK { *(*int32)(unsafe.Pointer(bp + 4 /* rc */)) = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp /* &pStmt */, (p + 36 /* &.zErrmsg */), - ts+34083 /* "SELECT trim(sql)..." */) + ts+34093 /* "SELECT trim(sql)..." */) } if *(*int32)(unsafe.Pointer(bp + 4 /* rc */)) == SQLITE_OK { var rc2 int32 @@ -162757,7 +163413,7 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 var zLimit uintptr = uintptr(0) if nOffset != 0 { - zLimit = Xsqlite3_mprintf(tls, ts+34149 /* " LIMIT -1 OFFSET..." */, libc.VaList(bp, nOffset)) + zLimit = Xsqlite3_mprintf(tls, ts+34159 /* " LIMIT -1 OFFSET..." */, libc.VaList(bp, nOffset)) if !(zLimit != 0) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_NOMEM } @@ -162778,26 +163434,26 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 zBind = rbuObjIterGetBindlist(tls, p, *(*int32)(unsafe.Pointer(bp + 612 /* nBind */))) // Create the imposter table used to write to this index. - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+8, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8566 /* "main" */, 0, 1)) - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+40, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8566 /* "main" */, 1, tnum)) + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+8, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8576 /* "main" */, 0, 1)) + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+40, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8576 /* "main" */, 1, tnum)) rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, - ts+34169, /* "CREATE TABLE \"rb..." */ + ts+34179, /* "CREATE TABLE \"rb..." */ libc.VaList(bp+72, zTbl, *(*uintptr)(unsafe.Pointer(bp + 600 /* zImposterCols */)), *(*uintptr)(unsafe.Pointer(bp + 604 /* zImposterPK */)))) - Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+96, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8566 /* "main" */, 0, 0)) + Xsqlite3_test_control(tls, SQLITE_TESTCTRL_IMPOSTER, libc.VaList(bp+96, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8576 /* "main" */, 0, 0)) // Create the statement to insert index entries (*RbuObjIter)(unsafe.Pointer(pIter)).FnCol = *(*int32)(unsafe.Pointer(bp + 612 /* nBind */)) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (pIter + 80 /* &.pInsert */), (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+34234 /* "INSERT INTO \"rbu..." */, libc.VaList(bp+128, zTbl, zBind))) + Xsqlite3_mprintf(tls, ts+34244 /* "INSERT INTO \"rbu..." */, libc.VaList(bp+128, zTbl, zBind))) } // And to delete index entries if ((libc.Bool32((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0))) == 0) && ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (pIter + 84 /* &.pDelete */), (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+34270 /* "DELETE FROM \"rbu..." */, libc.VaList(bp+144, zTbl, *(*uintptr)(unsafe.Pointer(bp + 608 /* zWhere */))))) + Xsqlite3_mprintf(tls, ts+34280 /* "DELETE FROM \"rbu..." */, libc.VaList(bp+144, zTbl, *(*uintptr)(unsafe.Pointer(bp + 608 /* zWhere */))))) } // Create the SELECT statement to read keys in sorted order @@ -162814,7 +163470,7 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 } zSql = Xsqlite3_mprintf(tls, - ts+34304, /* "SELECT %s, 0 AS ..." */ + ts+34314, /* "SELECT %s, 0 AS ..." */ libc.VaList(bp+160, zCollist, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, zPart, @@ -162822,32 +163478,32 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 if zStart != 0 { return func() uintptr { if zPart != 0 { - return ts + 34365 /* "AND" */ + return ts + 34375 /* "AND" */ } - return ts + 34369 /* "WHERE" */ + return ts + 34379 /* "WHERE" */ }() } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), zStart, zCollist, zLimit)) Xsqlite3_free(tls, zStart) } else if ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_EXTERNAL) || ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_NONE) { zSql = Xsqlite3_mprintf(tls, - ts+34375, /* "SELECT %s, rbu_c..." */ + ts+34385, /* "SELECT %s, rbu_c..." */ libc.VaList(bp+216, zCollist, p+24 /* &.zStateDb */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, zPart, zCollist, zLimit)) } else { zSql = Xsqlite3_mprintf(tls, - ts+34436, /* "SELECT %s, rbu_c..." */ + ts+34446, /* "SELECT %s, rbu_c..." */ libc.VaList(bp+264, zCollist, p+24 /* &.zStateDb */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, zPart, zCollist, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, zPart, func() uintptr { if zPart != 0 { - return ts + 34365 /* "AND" */ + return ts + 34375 /* "AND" */ } - return ts + 34369 /* "WHERE" */ + return ts + 34379 /* "WHERE" */ }(), zCollist, zLimit)) } @@ -162872,8 +163528,8 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 var zBindings uintptr = rbuObjIterGetBindlist(tls, p, ((*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol + bRbuRowid)) var zWhere uintptr = rbuObjIterGetWhere(tls, p, pIter) - var zOldlist uintptr = rbuObjIterGetOldlist(tls, p, pIter, ts+8575 /* "old" */) - var zNewlist uintptr = rbuObjIterGetOldlist(tls, p, pIter, ts+8571 /* "new" */) + var zOldlist uintptr = rbuObjIterGetOldlist(tls, p, pIter, ts+8585 /* "old" */) + var zNewlist uintptr = rbuObjIterGetOldlist(tls, p, pIter, ts+8581 /* "new" */) zCollist = rbuObjIterGetCollist(tls, p, pIter) (*RbuObjIter)(unsafe.Pointer(pIter)).FnCol = (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol @@ -162883,21 +163539,21 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 rbuCreateImposterTable2(tls, p, pIter) zWrite = func() uintptr { if (*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_VTAB { - return ts + 915 /* "" */ + return ts + 925 /* "" */ } - return ts + 34595 /* "rbu_imp_" */ + return ts + 34605 /* "rbu_imp_" */ }() // Create the INSERT statement to write to the target PK b-tree if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (pIter + 80 /* &.pInsert */), pz, Xsqlite3_mprintf(tls, - ts+34604, /* "INSERT INTO \"%s%..." */ + ts+34614, /* "INSERT INTO \"%s%..." */ libc.VaList(bp+344, zWrite, zTbl, zCollist, func() uintptr { if bRbuRowid != 0 { - return ts + 34640 /* ", _rowid_" */ + return ts + 34650 /* ", _rowid_" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), zBindings))) } @@ -162907,28 +163563,28 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 if ((libc.Bool32((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0))) == 0) && ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (pIter + 84 /* &.pDelete */), pz, Xsqlite3_mprintf(tls, - ts+34650 /* "DELETE FROM \"%s%..." */, libc.VaList(bp+384, zWrite, zTbl, zWhere))) + ts+34660 /* "DELETE FROM \"%s%..." */, libc.VaList(bp+384, zWrite, zTbl, zWhere))) } if ((libc.Bool32((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0))) == 0) && ((*RbuObjIter)(unsafe.Pointer(pIter)).FabIndexed != 0) { - var zRbuRowid uintptr = ts + 915 /* "" */ + var zRbuRowid uintptr = ts + 925 /* "" */ if ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_EXTERNAL) || ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_NONE) { - zRbuRowid = ts + 34678 /* ", rbu_rowid" */ + zRbuRowid = ts + 34688 /* ", rbu_rowid" */ } // Create the rbu_tmp_xxx table and the triggers to populate it. rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, - ts+34690 /* "CREATE TABLE IF ..." */, libc.VaList(bp+408, p+24 /* &.zStateDb */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, func() uintptr { + ts+34700 /* "CREATE TABLE IF ..." */, libc.VaList(bp+408, p+24 /* &.zStateDb */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, func() uintptr { if (*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_EXTERNAL { - return ts + 34766 /* ", 0 AS rbu_rowid" */ + return ts + 34776 /* ", 0 AS rbu_rowid" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl)) rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, - ts+34783, /* "CREATE TEMP TRIG..." */ + ts+34793, /* "CREATE TEMP TRIG..." */ libc.VaList(bp+440, zWrite, zTbl, zOldlist, zWrite, zTbl, zOldlist, zWrite, zTbl, zNewlist)) @@ -162936,7 +163592,7 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 if ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_EXTERNAL) || ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_NONE) { rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, - ts+35082, /* "CREATE TEMP TRIG..." */ + ts+35092, /* "CREATE TEMP TRIG..." */ libc.VaList(bp+512, zWrite, zTbl, zNewlist)) } @@ -162945,14 +163601,14 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 // Create the SELECT statement to read keys from data_xxx if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - var zRbuRowid uintptr = ts + 915 /* "" */ + var zRbuRowid uintptr = ts + 925 /* "" */ var zStart uintptr = uintptr(0) var zOrder uintptr = uintptr(0) if bRbuRowid != 0 { if (*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0) { - zRbuRowid = ts + 35181 /* ",_rowid_ " */ + zRbuRowid = ts + 35191 /* ",_rowid_ " */ } else { - zRbuRowid = ts + 35191 /* ",rbu_rowid" */ + zRbuRowid = ts + 35201 /* ",rbu_rowid" */ } } @@ -162965,35 +163621,35 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 } } if bRbuRowid != 0 { - zOrder = rbuMPrintf(tls, p, ts+33238 /* "_rowid_" */, 0) + zOrder = rbuMPrintf(tls, p, ts+33248 /* "_rowid_" */, 0) } else { - zOrder = rbuObjIterGetPkList(tls, p, pIter, ts+915 /* "" */, ts+16636 /* ", " */, ts+915 /* "" */) + zOrder = rbuObjIterGetPkList(tls, p, pIter, ts+925 /* "" */, ts+16646 /* ", " */, ts+925 /* "" */) } } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, (pIter + 76 /* &.pSelect */), pz, Xsqlite3_mprintf(tls, - ts+35202, /* "SELECT %s,%s rbu..." */ + ts+35212, /* "SELECT %s,%s rbu..." */ libc.VaList(bp+536, zCollist, func() uintptr { if (*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0) { - return ts + 35250 /* "0 AS " */ + return ts + 35260 /* "0 AS " */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), zRbuRowid, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl, func() uintptr { if zStart != 0 { return zStart } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), func() uintptr { if zOrder != 0 { - return ts + 22252 /* "ORDER BY" */ + return ts + 22262 /* "ORDER BY" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), zOrder, zLimit))) } @@ -163068,12 +163724,12 @@ func rbuGetUpdateStmt(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr, pp (*RbuObjIter)(unsafe.Pointer(pIter)).FpRbuUpdate = pUp if zSet != 0 { - var zPrefix uintptr = ts + 915 /* "" */ + var zPrefix uintptr = ts + 925 /* "" */ if (*RbuObjIter)(unsafe.Pointer(pIter)).FeType != RBU_PK_VTAB { - zPrefix = ts + 34595 /* "rbu_imp_" */ + zPrefix = ts + 34605 /* "rbu_imp_" */ } - zUpdate = Xsqlite3_mprintf(tls, ts+35256, /* "UPDATE \"%s%w\" SE..." */ + zUpdate = Xsqlite3_mprintf(tls, ts+35266, /* "UPDATE \"%s%w\" SE..." */ libc.VaList(bp, zPrefix, (*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl, zSet, zWhere)) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, (pUp + 4 /* &.pUpdate */), (p + 36 /* &.zErrmsg */), zUpdate) @@ -163100,7 +163756,7 @@ func rbuOpenDbhandle(tls *libc.TLS, p uintptr, zName uintptr, bUseVfs int32) uin return uintptr(0) }()) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc != 0 { - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* db */))))) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* db */))))) Xsqlite3_close(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* db */))) *(*uintptr)(unsafe.Pointer(bp + 8 /* db */)) = uintptr(0) } @@ -163141,7 +163797,7 @@ func rbuLoadState(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:202752:17: */ } *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp+8 /* &pStmt */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+35286 /* "SELECT k, v FROM..." */, libc.VaList(bp, p+24 /* &.zStateDb */))) + Xsqlite3_mprintf(tls, ts+35296 /* "SELECT k, v FROM..." */, libc.VaList(bp, p+24 /* &.zStateDb */))) for (*(*int32)(unsafe.Pointer(bp + 12 /* rc */)) == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* pStmt */)))) { switch Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* pStmt */)), 0) { case RBU_STATE_STAGE: @@ -163213,31 +163869,31 @@ func rbuOpenDatabase(tls *libc.TLS, p uintptr, pbRetry uintptr) { /* sqlite3.c:2 (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu = rbuOpenDbhandle(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FzRbu, 1) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0)) { - Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+8566 /* "main" */, SQLITE_FCNTL_RBUCNT, p) + Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+8576 /* "main" */, SQLITE_FCNTL_RBUCNT, p) if (*Sqlite3rbu)(unsafe.Pointer(p)).FzState == uintptr(0) { - var zFile uintptr = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+8566 /* "main" */) - (*Sqlite3rbu)(unsafe.Pointer(p)).FzState = rbuMPrintf(tls, p, ts+35316 /* "file://%s-vacuum..." */, libc.VaList(bp, zFile, zFile)) + var zFile uintptr = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+8576 /* "main" */) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzState = rbuMPrintf(tls, p, ts+35326 /* "file://%s-vacuum..." */, libc.VaList(bp, zFile, zFile)) } } // If using separate RBU and state databases, attach the state database to // the RBU db handle now. if (*Sqlite3rbu)(unsafe.Pointer(p)).FzState != 0 { - rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+35343 /* "ATTACH %Q AS sta..." */, libc.VaList(bp+16, (*Sqlite3rbu)(unsafe.Pointer(p)).FzState)) - libc.Xmemcpy(tls, p+24 /* &.zStateDb */, ts+4668 /* "stat" */, uint32(4)) + rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+35353 /* "ATTACH %Q AS sta..." */, libc.VaList(bp+16, (*Sqlite3rbu)(unsafe.Pointer(p)).FzState)) + libc.Xmemcpy(tls, p+24 /* &.zStateDb */, ts+4678 /* "stat" */, uint32(4)) } else { - libc.Xmemcpy(tls, p+24 /* &.zStateDb */, ts+8566 /* "main" */, uint32(4)) + libc.Xmemcpy(tls, p+24 /* &.zStateDb */, ts+8576 /* "main" */, uint32(4)) } // If it has not already been created, create the rbu_state table - rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+35361 /* "CREATE TABLE IF ..." */, libc.VaList(bp+24, p+24 /* &.zStateDb */)) + rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+35371 /* "CREATE TABLE IF ..." */, libc.VaList(bp+24, p+24 /* &.zStateDb */)) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0)) { var bOpen int32 = 0 var rc int32 (*Sqlite3rbu)(unsafe.Pointer(p)).FnRbu = 0 (*Sqlite3rbu)(unsafe.Pointer(p)).FpRbuFd = uintptr(0) - rc = Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+8566 /* "main" */, SQLITE_FCNTL_RBUCNT, p) + rc = Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+8576 /* "main" */, SQLITE_FCNTL_RBUCNT, p) if rc != SQLITE_NOTFOUND { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = rc } @@ -163270,11 +163926,11 @@ func rbuOpenDatabase(tls *libc.TLS, p uintptr, pbRetry uintptr) { /* sqlite3.c:2 return } (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+35427 /* "cannot vacuum wa..." */, 0) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+35437 /* "cannot vacuum wa..." */, 0) } else { var zTarget uintptr var zExtra uintptr = uintptr(0) - if (libc.Xstrlen(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FzRbu) >= Size_t(5)) && (0 == libc.Xmemcmp(tls, ts+28566 /* "file:" */, (*Sqlite3rbu)(unsafe.Pointer(p)).FzRbu, uint32(5))) { + if (libc.Xstrlen(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FzRbu) >= Size_t(5)) && (0 == libc.Xmemcmp(tls, ts+28576 /* "file:" */, (*Sqlite3rbu)(unsafe.Pointer(p)).FzRbu, uint32(5))) { zExtra = ((*Sqlite3rbu)(unsafe.Pointer(p)).FzRbu + 5) for *(*int8)(unsafe.Pointer(zExtra)) != 0 { if int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zExtra, 1)))) == '?' { @@ -163286,16 +163942,16 @@ func rbuOpenDatabase(tls *libc.TLS, p uintptr, pbRetry uintptr) { /* sqlite3.c:2 } } - zTarget = Xsqlite3_mprintf(tls, ts+35459, /* "file:%s-vactmp?r..." */ - libc.VaList(bp+32, Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+8566 /* "main" */), + zTarget = Xsqlite3_mprintf(tls, ts+35469, /* "file:%s-vactmp?r..." */ + libc.VaList(bp+32, Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+8576 /* "main" */), func() uintptr { if zExtra == uintptr(0) { - return ts + 915 /* "" */ + return ts + 925 /* "" */ } - return ts + 35491 /* "&" */ + return ts + 35501 /* "&" */ }(), func() uintptr { if zExtra == uintptr(0) { - return ts + 915 /* "" */ + return ts + 925 /* "" */ } return zExtra }())) @@ -163311,40 +163967,40 @@ func rbuOpenDatabase(tls *libc.TLS, p uintptr, pbRetry uintptr) { /* sqlite3.c:2 if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_create_function(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, - ts+35493 /* "rbu_tmp_insert" */, -1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { + ts+35503 /* "rbu_tmp_insert" */, -1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{rbuTmpInsertFunc})), uintptr(0), uintptr(0)) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_create_function(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, - ts+35508 /* "rbu_fossil_delta" */, 2, SQLITE_UTF8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + ts+35518 /* "rbu_fossil_delta" */, 2, SQLITE_UTF8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{rbuFossilDeltaFunc})), uintptr(0), uintptr(0)) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_create_function(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, - ts+35525 /* "rbu_target_name" */, -1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { + ts+35535 /* "rbu_target_name" */, -1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{rbuTargetNameFunc})), uintptr(0), uintptr(0)) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8566 /* "main" */, SQLITE_FCNTL_RBU, p) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8576 /* "main" */, SQLITE_FCNTL_RBU, p) } - rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+35541 /* "SELECT * FROM sq..." */, 0) + rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+35551 /* "SELECT * FROM sq..." */, 0) // Mark the database file just opened as an RBU target database. If // this call returns SQLITE_NOTFOUND, then the RBU vfs is not in use. // This is an error. if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8566 /* "main" */, SQLITE_FCNTL_RBU, p) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_file_control(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8576 /* "main" */, SQLITE_FCNTL_RBU, p) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_NOTFOUND { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+35569 /* "rbu vfs not foun..." */, 0) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+35579 /* "rbu vfs not foun..." */, 0) } } @@ -163383,9 +164039,11 @@ func rbuShmChecksum(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:203029:12: */ var pDb uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal // var ptr uintptr at bp, 4 - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods + 52 /* &.xShmMap */))))(tls, pDb, 0, (32 * 1024), 0, bp /* &ptr */) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxShmMap})).f(tls, pDb, 0, (32 * 1024), 0, bp /* &ptr */) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - iRet = ((I64(*(*U32)(unsafe.Pointer(libc.AtomicLoadPUintptr(bp /* ptr */) + 10*4))) << 32) + I64(*(*U32)(unsafe.Pointer(libc.AtomicLoadPUintptr(bp /* ptr */) + 11*4)))) + iRet = ((I64(*(*U32)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* ptr */)) + 10*4))) << 32) + I64(*(*U32)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* ptr */)) + 11*4)))) } } return iRet @@ -163413,7 +164071,7 @@ func rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c if pState == uintptr(0) { (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage = 0 if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+35541 /* "SELECT * FROM sq..." */, uintptr(0), uintptr(0), uintptr(0)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+35551 /* "SELECT * FROM sq..." */, uintptr(0), uintptr(0), uintptr(0)) } } @@ -163447,7 +164105,7 @@ func rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { var rc2 int32 (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage = RBU_STAGE_CAPTURE - rc2 = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+35587 /* "PRAGMA main.wal_..." */, uintptr(0), uintptr(0), uintptr(0)) + rc2 = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+35597 /* "PRAGMA main.wal_..." */, uintptr(0), uintptr(0), uintptr(0)) if rc2 != SQLITE_INTERNAL { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = rc2 } @@ -163474,7 +164132,9 @@ func rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c var pDb uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal var pWal uintptr = (*Rbu_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpWalFd)).FpReal - nSectorSize = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods + 44 /* &.xSectorSize */))))(tls, pDb) + nSectorSize = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxSectorSize})).f(tls, pDb) if nSectorSize > (*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz { (*Sqlite3rbu)(unsafe.Pointer(p)).FnPagePerSector = (nSectorSize / (*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz) } else { @@ -163485,7 +164145,9 @@ func rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c // directory in which the target database and the wal file reside, in // case it has not been synced since the rename() call in // rbuMoveOalFile(). - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pWal)).FpMethods + 20 /* &.xSync */))))(tls, pWal, SQLITE_SYNC_NORMAL) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pWal)).FpMethods)).FxSync})).f(tls, pWal, SQLITE_SYNC_NORMAL) } } } @@ -163546,22 +164208,30 @@ func rbuCheckpointFrame(tls *libc.TLS, p uintptr, pFrame uintptr) { /* sqlite3.c var iOff I64 iOff = ((((I64((*RbuFrame)(unsafe.Pointer(pFrame)).FiWalFrame - U32(1))) * (I64((*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz + 24))) + int64(32)) + int64(24)) - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pWal)).FpMethods + 8 /* &.xRead */))))(tls, pWal, (*Sqlite3rbu)(unsafe.Pointer(p)).FaBuf, (*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz, iOff) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pWal)).FpMethods)).FxRead})).f(tls, pWal, (*Sqlite3rbu)(unsafe.Pointer(p)).FaBuf, (*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz, iOff) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc != 0 { return } iOff = ((I64((*RbuFrame)(unsafe.Pointer(pFrame)).FiDbPage - U32(1))) * I64((*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz)) - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods + 12 /* &.xWrite */))))(tls, pDb, (*Sqlite3rbu)(unsafe.Pointer(p)).FaBuf, (*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz, iOff) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxWrite})).f(tls, pDb, (*Sqlite3rbu)(unsafe.Pointer(p)).FaBuf, (*Sqlite3rbu)(unsafe.Pointer(p)).Fpgsz, iOff) } // Take an EXCLUSIVE lock on the database file. func rbuLockDatabase(tls *libc.TLS, p uintptr) { /* sqlite3.c:203202:13: */ var pReal uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pReal)).FpMethods + 28 /* &.xLock */))))(tls, pReal, SQLITE_LOCK_SHARED) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pReal)).FpMethods)).FxLock})).f(tls, pReal, SQLITE_LOCK_SHARED) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pReal)).FpMethods + 28 /* &.xLock */))))(tls, pReal, SQLITE_LOCK_EXCLUSIVE) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pReal)).FpMethods)).FxLock})).f(tls, pReal, SQLITE_LOCK_EXCLUSIVE) } } @@ -163574,16 +164244,16 @@ func rbuMoveOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:203242:13: */ bp := tls.Alloc(16) defer tls.Free(16) - var zBase uintptr = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8566 /* "main" */) + var zBase uintptr = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+8576 /* "main" */) var zMove uintptr = zBase var zOal uintptr var zWal uintptr if (*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0) { - zMove = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+8566 /* "main" */) + zMove = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+8576 /* "main" */) } - zOal = Xsqlite3_mprintf(tls, ts+35622 /* "%s-oal" */, libc.VaList(bp, zMove)) - zWal = Xsqlite3_mprintf(tls, ts+35629 /* "%s-wal" */, libc.VaList(bp+8, zMove)) + zOal = Xsqlite3_mprintf(tls, ts+35632 /* "%s-oal" */, libc.VaList(bp, zMove)) + zWal = Xsqlite3_mprintf(tls, ts+35639 /* "%s-wal" */, libc.VaList(bp+8, zMove)) if (zWal == uintptr(0)) || (zOal == uintptr(0)) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_NOMEM @@ -163723,7 +164393,7 @@ func rbuStepOneOp(tls *libc.TLS, p uintptr, eType int32) { /* sqlite3.c:203389:1 ((*RbuObjIter)(unsafe.Pointer(pIter)).FzIdx == uintptr(0))) && ((*RbuObjIter)(unsafe.Pointer(pIter)).FeType == RBU_PK_IPK)) && (*(*U8)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FabTblPk + uintptr(i))) != 0)) && (Xsqlite3_column_type(tls, (*RbuObjIter)(unsafe.Pointer(pIter)).FpSelect, i) == SQLITE_NULL) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_MISMATCH - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+28204 /* "datatype mismatc..." */, 0) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+28214 /* "datatype mismatc..." */, 0) return } @@ -163841,7 +164511,7 @@ func rbuIncrSchemaCookie(tls *libc.TLS, p uintptr) { /* sqlite3.c:203537:13: */ // var pStmt uintptr at bp+8, 4 (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareAndCollectError(tls, dbread, bp+8 /* &pStmt */, (p + 36 /* &.zErrmsg */), - ts+35636 /* "PRAGMA schema_ve..." */) + ts+35646 /* "PRAGMA schema_ve..." */) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { // Coverage: it may be that this sqlite3_step() cannot fail. There // is already a transaction open, so the prepared statement cannot @@ -163854,7 +164524,7 @@ func rbuIncrSchemaCookie(tls *libc.TLS, p uintptr) { /* sqlite3.c:203537:13: */ rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp + 8 /* pStmt */))) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+35658 /* "PRAGMA schema_ve..." */, libc.VaList(bp, (iCookie+1))) + rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+35668 /* "PRAGMA schema_ve..." */, libc.VaList(bp, (iCookie+1))) } } } @@ -163879,7 +164549,7 @@ func rbuSaveState(tls *libc.TLS, p uintptr, eStage int32) { /* sqlite3.c:203568: rc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp+168 /* &pInsert */, (p + 36 /* &.zErrmsg */), Xsqlite3_mprintf(tls, - ts+35685, /* "INSERT OR REPLAC..." */ + ts+35695, /* "INSERT OR REPLAC..." */ libc.VaList(bp, p+24, /* &.zStateDb */ RBU_STATE_STAGE, eStage, RBU_STATE_TBL, (*Sqlite3rbu)(unsafe.Pointer(p)).Fobjiter.FzTbl, @@ -163924,9 +164594,9 @@ func rbuCopyPragma(tls *libc.TLS, p uintptr, zPragma uintptr) { /* sqlite3.c:203 if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { *(*uintptr)(unsafe.Pointer(bp + 24 /* pPragma */)) = uintptr(0) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareFreeAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp+24 /* &pPragma */, (p + 36 /* &.zErrmsg */), - Xsqlite3_mprintf(tls, ts+35843 /* "PRAGMA main.%s" */, libc.VaList(bp, zPragma))) + Xsqlite3_mprintf(tls, ts+35853 /* "PRAGMA main.%s" */, libc.VaList(bp, zPragma))) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 24 /* pPragma */)))) { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+35858, /* "PRAGMA main.%s =..." */ + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+35868, /* "PRAGMA main.%s =..." */ libc.VaList(bp+8, zPragma, Xsqlite3_column_int(tls, *(*uintptr)(unsafe.Pointer(bp + 24 /* pPragma */)), 0))) } rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp + 24 /* pPragma */))) @@ -163943,11 +164613,11 @@ func rbuCreateTargetSchema(tls *libc.TLS, p uintptr) { /* sqlite3.c:203649:13: * *(*uintptr)(unsafe.Pointer(bp /* pSql */)) = uintptr(0) *(*uintptr)(unsafe.Pointer(bp + 4 /* pInsert */)) = uintptr(0) - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+35878 /* "PRAGMA writable_..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+35888 /* "PRAGMA writable_..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp /* &pSql */, (p + 36 /* &.zErrmsg */), - ts+35903 /* "SELECT sql FROM ..." */) + ts+35913 /* "SELECT sql FROM ..." */) } for ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp /* pSql */))) == SQLITE_ROW) { @@ -163961,12 +164631,12 @@ func rbuCreateTargetSchema(tls *libc.TLS, p uintptr) { /* sqlite3.c:203649:13: * if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp /* &pSql */, (p + 36 /* &.zErrmsg */), - ts+36011 /* "SELECT * FROM sq..." */) + ts+36021 /* "SELECT * FROM sq..." */) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, bp+4 /* &pInsert */, (p + 36 /* &.zErrmsg */), - ts+36076 /* "INSERT INTO sqli..." */) + ts+36086 /* "INSERT INTO sqli..." */) } for ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp /* pSql */))) == SQLITE_ROW) { @@ -163978,7 +164648,7 @@ func rbuCreateTargetSchema(tls *libc.TLS, p uintptr) { /* sqlite3.c:203649:13: * (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_reset(tls, *(*uintptr)(unsafe.Pointer(bp + 4 /* pInsert */))) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+36120 /* "PRAGMA writable_..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+36130 /* "PRAGMA writable_..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } rbuFinalize(tls, p, *(*uintptr)(unsafe.Pointer(bp /* pSql */))) @@ -164000,8 +164670,8 @@ func Xsqlite3rbu_step(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203701:16: // when this handle was opened, create the target database schema. if (((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0)) && ((*Sqlite3rbu)(unsafe.Pointer(p)).FnProgress == 0)) && ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) { rbuCreateTargetSchema(tls, p) - rbuCopyPragma(tls, p, ts+19166 /* "user_version" */) - rbuCopyPragma(tls, p, ts+18276 /* "application_id" */) + rbuCopyPragma(tls, p, ts+19176 /* "user_version" */) + rbuCopyPragma(tls, p, ts+18286 /* "application_id" */) } for ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl != 0) { @@ -164012,7 +164682,7 @@ func Xsqlite3rbu_step(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203701:16: // But the contents can be deleted. if ((libc.Bool32((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0))) == 0) && ((*RbuObjIter)(unsafe.Pointer(pIter)).FabIndexed != 0) { rbuMPrintfExec(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, - ts+36145 /* "DELETE FROM %s.'..." */, libc.VaList(bp, p+24 /* &.zStateDb */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl)) + ts+36155 /* "DELETE FROM %s.'..." */, libc.VaList(bp, p+24 /* &.zStateDb */, (*RbuObjIter)(unsafe.Pointer(pIter)).FzDataTbl)) } } else { rbuObjIterPrepareAll(tls, p, pIter, 0) @@ -164038,10 +164708,10 @@ func Xsqlite3rbu_step(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203701:16: rbuSaveState(tls, p, RBU_STAGE_MOVE) rbuIncrSchemaCookie(tls, p) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+16540 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+16550 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+16540 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+16550 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage = RBU_STAGE_MOVE } @@ -164068,15 +164738,19 @@ func Xsqlite3rbu_step(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203701:16: var pDb uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal // Sync the db file - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods + 20 /* &.xSync */))))(tls, pDb, SQLITE_SYNC_NORMAL) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxSync})).f(tls, pDb, SQLITE_SYNC_NORMAL) // Update nBackfill if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { // var ptr uintptr at bp+16, 4 - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods + 52 /* &.xShmMap */))))(tls, pDb, 0, (32 * 1024), 0, bp+16 /* &ptr */) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxShmMap})).f(tls, pDb, 0, (32 * 1024), 0, bp+16 /* &ptr */) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - *(*U32)(unsafe.Pointer((libc.AtomicLoadPUintptr(bp + 16 /* ptr */)) + 24*4)) = (*Sqlite3rbu)(unsafe.Pointer(p)).FiMaxFrame + *(*U32)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 16 /* ptr */))) + 24*4)) = (*Sqlite3rbu)(unsafe.Pointer(p)).FiMaxFrame } } @@ -164158,7 +164832,7 @@ func rbuSetupOal(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c:203846 if (rc == SQLITE_OK) && !(int32((*RbuObjIter)(unsafe.Pointer(pIter)).FzTbl) != 0) { rc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+36173 /* "rbu_state mismat..." */, 0) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+36183 /* "rbu_state mismat..." */, 0) } if rc == SQLITE_OK { @@ -164177,11 +164851,13 @@ func rbuDeleteOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:203879:13: */ bp := tls.Alloc(8) defer tls.Free(8) - var zOal uintptr = rbuMPrintf(tls, p, ts+35622 /* "%s-oal" */, libc.VaList(bp, (*Sqlite3rbu)(unsafe.Pointer(p)).FzTarget)) + var zOal uintptr = rbuMPrintf(tls, p, ts+35632 /* "%s-oal" */, libc.VaList(bp, (*Sqlite3rbu)(unsafe.Pointer(p)).FzTarget)) if zOal != 0 { var pVfs uintptr = Xsqlite3_vfs_find(tls, uintptr(0)) - (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pVfs + 28 /* &.xDelete */))))(tls, pVfs, zOal, 0) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxDelete})).f(tls, pVfs, zOal, 0) Xsqlite3_free(tls, zOal) } } @@ -164199,7 +164875,7 @@ func rbuCreateVfs(tls *libc.TLS, p uintptr) { /* sqlite3.c:203895:13: */ // var zRnd [64]int8 at bp+12, 64 Xsqlite3_randomness(tls, int32(unsafe.Sizeof(int32(0))), bp+8 /* &rnd */) - Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([64]int8{})), bp+12 /* &zRnd[0] */, ts+36198 /* "rbu_vfs_%d" */, libc.VaList(bp, *(*int32)(unsafe.Pointer(bp + 8 /* rnd */)))) + Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([64]int8{})), bp+12 /* &zRnd[0] */, ts+36208 /* "rbu_vfs_%d" */, libc.VaList(bp, *(*int32)(unsafe.Pointer(bp + 8 /* rnd */)))) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3rbu_create_vfs(tls, bp+12 /* &zRnd[0] */, uintptr(0)) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { var pVfs uintptr = Xsqlite3_vfs_find(tls, bp+12 /* &zRnd[0] */) @@ -164238,7 +164914,7 @@ func rbuIndexCntFunc(tls *libc.TLS, pCtx uintptr, nVal int32, apVal uintptr) { / rc = prepareFreeAndCollectError(tls, db, bp+8 /* &pStmt */, bp+12, /* &zErrmsg */ Xsqlite3_mprintf(tls, - ts+36209 /* "SELECT count(*) ..." */, libc.VaList(bp, Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apVal)))))) + ts+36219 /* "SELECT count(*) ..." */, libc.VaList(bp, Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apVal)))))) if rc != SQLITE_OK { Xsqlite3_result_error(tls, pCtx, *(*uintptr)(unsafe.Pointer(bp + 12 /* zErrmsg */)), -1) } else { @@ -164281,7 +164957,7 @@ func rbuInitPhaseOneSteps(tls *libc.TLS, p uintptr) { /* sqlite3.c:203977:13: */ (*Sqlite3rbu)(unsafe.Pointer(p)).FnPhaseOneStep = int64(-1) (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_create_function(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, - ts+36281 /* "rbu_index_cnt" */, 1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { + ts+36291 /* "rbu_index_cnt" */, 1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{rbuIndexCntFunc})), uintptr(0), uintptr(0)) @@ -164289,7 +164965,7 @@ func rbuInitPhaseOneSteps(tls *libc.TLS, p uintptr) { /* sqlite3.c:203977:13: */ // occurs, nPhaseOneStep will be left set to -1. if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp /* &pStmt */, (p + 36 /* &.zErrmsg */), - ts+36295 /* "SELECT 1 FROM sq..." */) + ts+36305 /* "SELECT 1 FROM sq..." */) } if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { if SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp /* pStmt */))) { @@ -164301,7 +164977,7 @@ func rbuInitPhaseOneSteps(tls *libc.TLS, p uintptr) { /* sqlite3.c:203977:13: */ if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (bExists != 0) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = prepareAndCollectError(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, bp /* &pStmt */, (p + 36 /* &.zErrmsg */), - ts+36352 /* "SELECT sum(cnt *..." */) + ts+36362 /* "SELECT sum(cnt *..." */) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { if SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp /* pStmt */))) { (*Sqlite3rbu)(unsafe.Pointer(p)).FnPhaseOneStep = Xsqlite3_column_int64(tls, *(*uintptr)(unsafe.Pointer(bp /* pStmt */)), 0) @@ -164347,7 +165023,7 @@ func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) libc.Xmemcpy(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FzRbu, zRbu, (nRbu + Size_t(1))) pCsr += (uintptr(nRbu + Size_t(1))) if zState != 0 { - (*Sqlite3rbu)(unsafe.Pointer(p)).FzState = rbuMPrintf(tls, p, ts+951 /* "%s" */, libc.VaList(bp, zState)) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzState = rbuMPrintf(tls, p, ts+961 /* "%s" */, libc.VaList(bp, zState)) } // If the first attempt to open the database file fails and the bRetry @@ -164384,7 +165060,7 @@ func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpWalFd != 0) { if (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_OAL { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+36426 /* "cannot update wa..." */, 0) + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+36436 /* "cannot update wa..." */, 0) } else if (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_MOVE { (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage = RBU_STAGE_CKPT (*Sqlite3rbu)(unsafe.Pointer(p)).FnStep = 0 @@ -164406,12 +165082,12 @@ func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) // transaction is committed in rollback mode) currently stored on // page 1 of the database file. (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_BUSY - (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+36458, /* "database modifie..." */ + (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+36468, /* "database modifie..." */ libc.VaList(bp+8, func() uintptr { if (*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0) { - return ts + 36490 /* "vacuum" */ + return ts + 36500 /* "vacuum" */ } - return ts + 36497 /* "update" */ + return ts + 36507 /* "update" */ }())) } } @@ -164419,7 +165095,7 @@ func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { if (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_OAL { var db uintptr = (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+16525 /* "BEGIN" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+16535 /* "BEGIN" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) // Point the object iterator at the first object if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { @@ -164433,24 +165109,24 @@ func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage = RBU_STAGE_DONE } else { if (((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*RbuState)(unsafe.Pointer(pState)).FeStage == 0)) && ((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0)) { - rbuCopyPragma(tls, p, ts+18891 /* "page_size" */) - rbuCopyPragma(tls, p, ts+18291 /* "auto_vacuum" */) + rbuCopyPragma(tls, p, ts+18901 /* "page_size" */) + rbuCopyPragma(tls, p, ts+18301 /* "auto_vacuum" */) } // Open transactions both databases. The *-oal file is opened or // created at this point. if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, db, ts+36504 /* "BEGIN IMMEDIATE" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, db, ts+36514 /* "BEGIN IMMEDIATE" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } // Check if the main database is a zipvfs db. If it is, set the upper // level pager to use "journal_mode=off". This prevents it from // generating a large journal using a temp file. if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { - var frc int32 = Xsqlite3_file_control(tls, db, ts+8566 /* "main" */, SQLITE_FCNTL_ZIPVFS, uintptr(0)) + var frc int32 = Xsqlite3_file_control(tls, db, ts+8576 /* "main" */, SQLITE_FCNTL_ZIPVFS, uintptr(0)) if frc == SQLITE_OK { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, - db, ts+36520 /* "PRAGMA journal_m..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + db, ts+36530 /* "PRAGMA journal_m..." */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } } @@ -164503,7 +165179,7 @@ func Xsqlite3rbu_vacuum(tls *libc.TLS, zTarget uintptr, zState uintptr) uintptr } if zState != 0 { var n int32 = int32(libc.Xstrlen(tls, zState)) - if (n >= 7) && (0 == libc.Xmemcmp(tls, ts+36544 /* "-vactmp" */, (zState+uintptr((n-7))), uint32(7))) { + if (n >= 7) && (0 == libc.Xmemcmp(tls, ts+36554 /* "-vactmp" */, (zState+uintptr((n-7))), uint32(7))) { return rbuMisuseError(tls) } } @@ -164533,7 +165209,7 @@ func rbuEditErrmsg(tls *libc.TLS, p uintptr) { /* sqlite3.c:204232:13: */ var i uint32 var nErrmsg Size_t = libc.Xstrlen(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg) for i = uint32(0); i < (nErrmsg - Size_t(8)); i++ { - if libc.Xmemcmp(tls, ((*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg+uintptr(i)), ts+34595 /* "rbu_imp_" */, uint32(8)) == 0 { + if libc.Xmemcmp(tls, ((*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg+uintptr(i)), ts+34605 /* "rbu_imp_" */, uint32(8)) == 0 { var nDel int32 = 8 for (int32(*(*int8)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg + uintptr((i + uint32(nDel)))))) >= '0') && (int32(*(*int8)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg + uintptr((i + uint32(nDel)))))) <= '9') { nDel++ @@ -164552,19 +165228,21 @@ func Xsqlite3rbu_close(tls *libc.TLS, p uintptr, pzErrmsg uintptr) int32 { /* sq // Commit the transaction to the *-oal file. if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_OAL) { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+16540 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+16550 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } // Sync the db file if currently doing an incremental checkpoint if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_CKPT) { var pDb uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods + 20 /* &.xSync */))))(tls, pDb, SQLITE_SYNC_NORMAL) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxSync})).f(tls, pDb, SQLITE_SYNC_NORMAL) } rbuSaveState(tls, p, (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_OAL) { - (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+16540 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) + (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+16550 /* "COMMIT" */, uintptr(0), uintptr(0), (p + 36 /* &.zErrmsg */)) } // Close any open statement handles. @@ -164576,7 +165254,7 @@ func Xsqlite3rbu_close(tls *libc.TLS, p uintptr, pzErrmsg uintptr) int32 { /* sq // specifying the current target and state databases to start a new // vacuum from scratch. if (((*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0)) && ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc != SQLITE_OK)) && ((*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu != 0) { - var rc2 int32 = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+36552 /* "DELETE FROM stat..." */, uintptr(0), uintptr(0), uintptr(0)) + var rc2 int32 = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+36562 /* "DELETE FROM stat..." */, uintptr(0), uintptr(0), uintptr(0)) if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_DONE) && (rc2 != SQLITE_OK) { (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = rc2 } @@ -164675,14 +165353,16 @@ func Xsqlite3rbu_savestate(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:204384 if (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_OAL { if rc == SQLITE_OK { - rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+16540 /* "COMMIT" */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+16550 /* "COMMIT" */, uintptr(0), uintptr(0), uintptr(0)) } } // Sync the db file if (rc == SQLITE_OK) && ((*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_CKPT) { var pDb uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods + 20 /* &.xSync */))))(tls, pDb, SQLITE_SYNC_NORMAL) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxSync})).f(tls, pDb, SQLITE_SYNC_NORMAL) } (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = rc @@ -164692,19 +165372,19 @@ func Xsqlite3rbu_savestate(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:204384 if (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage == RBU_STAGE_OAL { if rc == SQLITE_OK { - rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+16540 /* "COMMIT" */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, ts+16550 /* "COMMIT" */, uintptr(0), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { var zBegin uintptr if (*Sqlite3rbu)(unsafe.Pointer((p))).FzTarget == uintptr(0) { - zBegin = ts + 16525 /* "BEGIN" */ + zBegin = ts + 16535 /* "BEGIN" */ } else { - zBegin = ts + 36504 /* "BEGIN IMMEDIATE" */ + zBegin = ts + 36514 /* "BEGIN IMMEDIATE" */ } rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbRbu, zBegin, uintptr(0), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { - rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+36504 /* "BEGIN IMMEDIATE" */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FdbMain, ts+36514 /* "BEGIN IMMEDIATE" */, uintptr(0), uintptr(0), uintptr(0)) } } @@ -164778,7 +165458,9 @@ func rbuUnlockShm(tls *libc.TLS, p uintptr) { /* sqlite3.c:204477:13: */ var i int32 for i = 0; i < SQLITE_SHM_NLOCK; i++ { if ((U32(int32(1) << i)) & (*Sqlite3rbu)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpRbu)).FmLock) != 0 { - (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(&xShmLock)))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, i, 1, (SQLITE_SHM_UNLOCK | SQLITE_SHM_EXCLUSIVE)) + (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xShmLock})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, i, 1, (SQLITE_SHM_UNLOCK | SQLITE_SHM_EXCLUSIVE)) } } (*Sqlite3rbu)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpRbu)).FmLock = U32(0) @@ -164882,13 +165564,17 @@ func rbuVfsClose(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:204569:12: * if ((*Rbu_file)(unsafe.Pointer(p)).FopenFlags & SQLITE_OPEN_MAIN_DB) != 0 { rbuMainlistRemove(tls, p) rbuUnlockShm(tls, p) - (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 64 /* &.xShmUnmap */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, 0) + (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmUnmap})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, 0) } else if (((*Rbu_file)(unsafe.Pointer(p)).FopenFlags & SQLITE_OPEN_DELETEONCLOSE) != 0) && ((*Rbu_file)(unsafe.Pointer(p)).FpRbu != 0) { rbuUpdateTempSize(tls, p, int64(0)) } // Close the underlying file handle - rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 4 /* &.xClose */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) + rc = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxClose})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) return rc } @@ -164931,7 +165617,9 @@ func rbuVfsRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst Sq rc = SQLITE_OK libc.Xmemset(tls, zBuf, 0, uint32(iAmt)) } else { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 8 /* &.xRead */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, zBuf, iAmt, iOfst) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxRead})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, zBuf, iAmt, iOfst) // If this is being called to read the first page of the target // database as part of an rbu vacuum operation, synthesize the // contents of the first page if it does not yet exist. Otherwise, @@ -164941,7 +165629,9 @@ func rbuVfsRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst Sq (((*Rbu_file)(unsafe.Pointer(p)).FopenFlags & SQLITE_OPEN_MAIN_DB) != 0)) && ((*Sqlite3rbu)(unsafe.Pointer(pRbu)).Frc == SQLITE_OK) { var pFd uintptr = (*Sqlite3rbu)(unsafe.Pointer(pRbu)).FpRbuFd - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pFd)).FpMethods + 8 /* &.xRead */))))(tls, pFd, zBuf, iAmt, iOfst) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer(pFd)).FpMethods)).FxRead})).f(tls, pFd, zBuf, iAmt, iOfst) if rc == SQLITE_OK { var aBuf uintptr = zBuf var iRoot U32 @@ -165000,7 +165690,9 @@ func rbuVfsWrite(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst S } } } - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 12 /* &.xWrite */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, zBuf, iAmt, iOfst) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxWrite})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, zBuf, iAmt, iOfst) if ((rc == SQLITE_OK) && (iOfst == int64(0))) && (((*Rbu_file)(unsafe.Pointer(p)).FopenFlags & SQLITE_OPEN_MAIN_DB) != 0) { // These look like magic numbers. But they are stable, as they are part // of the definition of the SQLite file format, which may not change. @@ -165021,7 +165713,9 @@ func rbuVfsTruncate(tls *libc.TLS, pFile uintptr, size Sqlite_int64) int32 { /* return rc } } - return (*(*func(*libc.TLS, uintptr, Sqlite3_int64) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 16 /* &.xTruncate */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, size) + return (*struct { + f func(*libc.TLS, uintptr, Sqlite3_int64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxTruncate})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, size) } // Sync an rbuVfs-file. @@ -165033,14 +165727,18 @@ func rbuVfsSync(tls *libc.TLS, pFile uintptr, flags int32) int32 { /* sqlite3.c: } return SQLITE_OK } - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 20 /* &.xSync */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, flags) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxSync})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, flags) } // Return the current file-size of an rbuVfs-file. func rbuVfsFileSize(tls *libc.TLS, pFile uintptr, pSize uintptr) int32 { /* sqlite3.c:204763:12: */ var p uintptr = pFile var rc int32 - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 24 /* &.xFileSize */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, pSize) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxFileSize})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, pSize) // If this is an RBU vacuum operation and this is the target database, // pretend that it has at least one page. Otherwise, SQLite will not @@ -165066,7 +165764,9 @@ func rbuVfsLock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c: // prevents it from checkpointing the database from sqlite3_close(). rc = SQLITE_BUSY } else { - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 28 /* &.xLock */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, eLock) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxLock})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, eLock) } return rc @@ -165075,13 +165775,17 @@ func rbuVfsLock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c: // Unlock an rbuVfs-file. func rbuVfsUnlock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c:204806:12: */ var p uintptr = pFile - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 32 /* &.xUnlock */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, eLock) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxUnlock})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, eLock) } // Check if another file-handle holds a RESERVED lock on an rbuVfs-file. func rbuVfsCheckReservedLock(tls *libc.TLS, pFile uintptr, pResOut uintptr) int32 { /* sqlite3.c:204814:12: */ var p uintptr = pFile - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 36 /* &.xCheckReservedLock */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, pResOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxCheckReservedLock})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, pResOut) } // File control method. For custom operations on an rbuVfs-file. @@ -165099,16 +165803,20 @@ func rbuVfsFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int // First try to find another RBU vfs lower down in the vfs stack. If // one is found, this vfs will operate in pass-through mode. The lower // level vfs will do the special RBU handling. - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(&xControl)))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, op, pArg) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xControl})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, op, pArg) if rc == SQLITE_NOTFOUND { // Now search for a zipvfs instance lower down in the VFS stack. If // one is found, this is an error. *(*uintptr)(unsafe.Pointer(bp + 16 /* dummy */)) = uintptr(0) - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(&xControl)))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, SQLITE_FCNTL_ZIPVFS, bp+16 /* &dummy */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xControl})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, SQLITE_FCNTL_ZIPVFS, bp+16 /* &dummy */) if rc == SQLITE_OK { rc = SQLITE_ERROR - (*Sqlite3rbu)(unsafe.Pointer(pRbu)).FzErrmsg = Xsqlite3_mprintf(tls, ts+36579 /* "rbu/zipvfs setup..." */, 0) + (*Sqlite3rbu)(unsafe.Pointer(pRbu)).FzErrmsg = Xsqlite3_mprintf(tls, ts+36589 /* "rbu/zipvfs setup..." */, 0) } else if rc == SQLITE_NOTFOUND { (*Sqlite3rbu)(unsafe.Pointer(pRbu)).FpTargetFd = p (*Rbu_file)(unsafe.Pointer(p)).FpRbu = pRbu @@ -165127,11 +165835,13 @@ func rbuVfsFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int (*Rbu_file)(unsafe.Pointer(p)).FbNolock = U8(1) } - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(&xControl)))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, op, pArg) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xControl})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, op, pArg) if (rc == SQLITE_OK) && (op == SQLITE_FCNTL_VFSNAME) { var pRbuVfs uintptr = (*Rbu_file)(unsafe.Pointer(p)).FpRbuVfs var zIn uintptr = *(*uintptr)(unsafe.Pointer(pArg)) - var zOut uintptr = Xsqlite3_mprintf(tls, ts+36602 /* "rbu(%s)/%z" */, libc.VaList(bp, (*Rbu_vfs)(unsafe.Pointer(pRbuVfs)).Fbase.FzName, zIn)) + var zOut uintptr = Xsqlite3_mprintf(tls, ts+36612 /* "rbu(%s)/%z" */, libc.VaList(bp, (*Rbu_vfs)(unsafe.Pointer(pRbuVfs)).Fbase.FzName, zIn)) *(*uintptr)(unsafe.Pointer(pArg)) = zOut if zOut == uintptr(0) { rc = SQLITE_NOMEM @@ -165144,13 +165854,17 @@ func rbuVfsFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int // Return the sector-size in bytes for an rbuVfs-file. func rbuVfsSectorSize(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:204878:12: */ var p uintptr = pFile - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 44 /* &.xSectorSize */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxSectorSize})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) } // Return the device characteristic flags supported by an rbuVfs-file. func rbuVfsDeviceCharacteristics(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:204886:12: */ var p uintptr = pFile - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 48 /* &.xDeviceCharacteristics */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxDeviceCharacteristics})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) } // Take or release a shared-memory lock. @@ -165174,7 +165888,9 @@ func rbuVfsShmLock(tls *libc.TLS, pFile uintptr, ofst int32, n int32, flags int3 bCapture = 1 } if (bCapture == 0) || (0 == (flags & SQLITE_SHM_UNLOCK)) { - rc = (*(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 56 /* &.xShmLock */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, ofst, n, flags) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmLock})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, ofst, n, flags) if (bCapture != 0) && (rc == SQLITE_OK) { *(*U32)(unsafe.Pointer(pRbu + 188 /* &.mLock */)) |= (U32(((int32(1) << n) - 1) << ofst)) } @@ -165227,13 +165943,15 @@ func rbuVfsShmMap(tls *libc.TLS, pFile uintptr, iRegion int32, szRegion int32, i } if rc == SQLITE_OK { - *(*uintptr)(unsafe.Pointer(libc.AtomicLoadUintptr(&pp))) = *(*uintptr)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FapShm + uintptr(iRegion)*4)) + *(*uintptr)(unsafe.Pointer(pp)) = *(*uintptr)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FapShm + uintptr(iRegion)*4)) } else { - *(*uintptr)(unsafe.Pointer(libc.AtomicLoadUintptr(&pp))) = uintptr(0) + *(*uintptr)(unsafe.Pointer(pp)) = uintptr(0) } } else { - rc = (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 52 /* &.xShmMap */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, iRegion, szRegion, isWrite, libc.AtomicLoadUintptr(&pp)) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmMap})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, iRegion, szRegion, isWrite, pp) } return rc @@ -165242,7 +165960,7 @@ func rbuVfsShmMap(tls *libc.TLS, pFile uintptr, iRegion int32, szRegion int32, i // Memory barrier. func rbuVfsShmBarrier(tls *libc.TLS, pFile uintptr) { /* sqlite3.c:204990:13: */ var p uintptr = pFile - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 60 /* &.xShmBarrier */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmBarrier})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) } // The xShmUnmap method. @@ -165261,7 +165979,9 @@ func rbuVfsShmUnmap(tls *libc.TLS, pFile uintptr, delFlag int32) int32 { /* sqli } else { // Release the checkpointer and writer locks rbuUnlockShm(tls, p) - rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 64 /* &.xShmUnmap */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, delFlag) + rc = (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmUnmap})).f(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, delFlag) } return rc } @@ -165294,7 +166014,7 @@ func rbuVfsOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pFile uintptr, flags // This call is to open a *-wal file. Intead, open the *-oal. var nOpen Size_t if (*Sqlite3rbu)(unsafe.Pointer(((*Rbu_file)(unsafe.Pointer(pDb)).FpRbu))).FzTarget == uintptr(0) { - zOpen = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(pDb)).FpRbu)).FdbRbu, ts+8566 /* "main" */) + zOpen = Xsqlite3_db_filename(tls, (*Sqlite3rbu)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(pDb)).FpRbu)).FdbRbu, ts+8576 /* "main" */) zOpen = Xsqlite3_filename_wal(tls, zOpen) } nOpen = libc.Xstrlen(tls, zOpen) @@ -165309,14 +166029,16 @@ func rbuVfsOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pFile uintptr, flags } if ((oflags & SQLITE_OPEN_MAIN_DB) != 0) && - (Xsqlite3_uri_boolean(tls, zName, ts+36613 /* "rbu_memory" */, 0) != 0) { + (Xsqlite3_uri_boolean(tls, zName, ts+36623 /* "rbu_memory" */, 0) != 0) { oflags = ((((SQLITE_OPEN_TEMP_DB | SQLITE_OPEN_READWRITE) | SQLITE_OPEN_CREATE) | SQLITE_OPEN_EXCLUSIVE) | SQLITE_OPEN_DELETEONCLOSE) zOpen = uintptr(0) } if rc == SQLITE_OK { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pRealVfs + 24 /* &.xOpen */))))(tls, pRealVfs, zOpen, (*Rbu_file)(unsafe.Pointer(pFd)).FpReal, oflags, pOutFlags) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxOpen})).f(tls, pRealVfs, zOpen, (*Rbu_file)(unsafe.Pointer(pFd)).FpReal, oflags, pOutFlags) } if (*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(pFd)).FpReal)).FpMethods != 0 { // The xOpen() operation has succeeded. Set the sqlite3_file.pMethods @@ -165356,7 +166078,9 @@ var rbuvfs_io_methods = Sqlite3_io_methods{ // Delete the file located at zPath. func rbuVfsDelete(tls *libc.TLS, pVfs uintptr, zPath uintptr, dirSync int32) int32 { /* sqlite3.c:205115:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - return (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pRealVfs + 28 /* &.xDelete */))))(tls, pRealVfs, zPath, dirSync) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxDelete})).f(tls, pRealVfs, zPath, dirSync) } // Test for access permissions. Return true if the requested permission @@ -165369,7 +166093,9 @@ func rbuVfsAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResO var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pRbuVfs)).FpRealVfs var rc int32 - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pRealVfs + 32 /* &.xAccess */))))(tls, pRealVfs, zPath, flags, pResOut) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxAccess})).f(tls, pRealVfs, zPath, flags, pResOut) // If this call is to check if a *-wal file associated with an RBU target // database connection exists, and the RBU update is in RBU_STAGE_OAL, @@ -165406,13 +166132,17 @@ func rbuVfsAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResO // of at least (DEVSYM_MAX_PATHNAME+1) bytes. func rbuVfsFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zOut uintptr) int32 { /* sqlite3.c:205172:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pRealVfs + 36 /* &.xFullPathname */))))(tls, pRealVfs, zPath, nOut, zOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxFullPathname})).f(tls, pRealVfs, zPath, nOut, zOut) } // Open the dynamic library located at zPath and return a handle. func rbuVfsDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* sqlite3.c:205186:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer((pRealVfs + 40 /* &.xDlOpen */))))(tls, pRealVfs, zPath) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxDlOpen})).f(tls, pRealVfs, zPath) } // Populate the buffer zErrMsg (size nByte bytes) with a human readable @@ -165420,39 +166150,51 @@ func rbuVfsDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* sqlit // with dynamic libraries. func rbuVfsDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zErrMsg uintptr) { /* sqlite3.c:205196:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer((pRealVfs + 44 /* &.xDlError */))))(tls, pRealVfs, nByte, zErrMsg) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxDlError})).f(tls, pRealVfs, nByte, zErrMsg) } // Return a pointer to the symbol zSymbol in the dynamic library pHandle. func rbuVfsDlSym(tls *libc.TLS, pVfs uintptr, pArg uintptr, zSym uintptr) uintptr { /* sqlite3.c:205204:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer((pRealVfs + 48 /* &.xDlSym */))))(tls, pRealVfs, pArg, zSym) + return (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxDlSym})).f(tls, pRealVfs, pArg, zSym) } // Close the dynamic library handle pHandle. func rbuVfsDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* sqlite3.c:205216:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pRealVfs + 52 /* &.xDlClose */))))(tls, pRealVfs, pHandle) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxDlClose})).f(tls, pRealVfs, pHandle) } // Populate the buffer pointed to by zBufOut with nByte bytes of // random data. func rbuVfsRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* sqlite3.c:205226:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pRealVfs + 56 /* &.xRandomness */))))(tls, pRealVfs, nByte, zBufOut) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxRandomness})).f(tls, pRealVfs, nByte, zBufOut) } // Sleep for nMicro microseconds. Return the number of microseconds // actually slept. func rbuVfsSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* sqlite3.c:205235:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pRealVfs + 60 /* &.xSleep */))))(tls, pRealVfs, nMicro) + return (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxSleep})).f(tls, pRealVfs, nMicro) } // Return the current time as a Julian Day number in *pTimeOut. func rbuVfsCurrentTime(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) int32 { /* sqlite3.c:205243:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs - return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pRealVfs + 64 /* &.xCurrentTime */))))(tls, pRealVfs, pTimeOut) + return (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_vfs)(unsafe.Pointer(pRealVfs)).FxCurrentTime})).f(tls, pRealVfs, pTimeOut) } // No-op. @@ -165621,7 +166363,7 @@ var zDbstatSchema = // 9 Size of the page (sum for aggregate) // 10 Database schema being analyzed // 11 aggregate info for each table -*(*[258]int8)(unsafe.Pointer(ts + 36624 /* "CREATE TABLE x( ..." */)) /* sqlite3.c:205427:19 */ +*(*[258]int8)(unsafe.Pointer(ts + 36634 /* "CREATE TABLE x( ..." */)) /* sqlite3.c:205427:19 */ // Forward reference to data structured used in this module type StatTable1 = struct { @@ -165633,25 +166375,25 @@ type StatTable1 = struct { // Forward reference to data structured used in this module type StatTable = StatTable1 /* sqlite3.c:205445:26 */ type StatCursor1 = struct { - Fbase Sqlite3_vtab_cursor - FpStmt uintptr - FisEof U8 - FisAgg U8 - _ [2]byte - FiDb int32 - FaPage [32]StatPage - FiPage int32 - FiPageno U32 - FzName uintptr - FzPath uintptr - FzPagetype uintptr - FnPage int32 - FnCell int32 - FnMxPayload int32 - FnUnused I64 - FnPayload I64 - FiOffset I64 - FszPage I64 + Fbase Sqlite3_vtab_cursor + FpStmt uintptr + FisEof U8 + FisAgg U8 + F__ccgo_pad1 [2]byte + FiDb int32 + FaPage [32]StatPage + FiPage int32 + FiPageno U32 + FzName uintptr + FzPath uintptr + FzPagetype uintptr + FnPage int32 + FnCell int32 + FnMxPayload int32 + FnUnused I64 + FnPayload I64 + FiOffset I64 + FszPage I64 } /* sqlite3.c:205446:9 */ type StatCursor = StatCursor1 /* sqlite3.c:205446:27 */ @@ -165661,7 +166403,7 @@ type StatPage1 = struct { FiCell int32 FzPath uintptr Fflags U8 - _ [3]byte + F__ccgo_pad1 [3]byte FnCell int32 FnUnused int32 FaCell uintptr @@ -165696,7 +166438,7 @@ func statConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintp Xsqlite3TokenInit(tls, bp+8 /* &nm */, *(*uintptr)(unsafe.Pointer(argv + 3*4))) iDb = Xsqlite3FindDb(tls, db, bp+8 /* &nm */) if iDb < 0 { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+13900 /* "no such database..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(argv + 3*4)))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+13910 /* "no such database..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(argv + 3*4)))) return SQLITE_ERROR } } else { @@ -166219,7 +166961,7 @@ __5: if !(!(int32((*StatCursor)(unsafe.Pointer(pCsr)).FisAgg) != 0)) { goto __6 } - (*StatPage)(unsafe.Pointer((pCsr + 16 /* &.aPage */))).FzPath = libc.AssignUintptr(&z, Xsqlite3_mprintf(tls, ts+36882 /* "/" */, 0)) + (*StatPage)(unsafe.Pointer((pCsr + 16 /* &.aPage */))).FzPath = libc.AssignUintptr(&z, Xsqlite3_mprintf(tls, ts+36892 /* "/" */, 0)) if !(z == uintptr(0)) { goto __7 } @@ -166277,9 +167019,9 @@ __14: } (*StatCursor)(unsafe.Pointer(pCsr)).FzName = Xsqlite3_column_text(tls, (*StatCursor)(unsafe.Pointer(pCsr)).FpStmt, 0) (*StatCursor)(unsafe.Pointer(pCsr)).FiPageno = *(*U32)(unsafe.Pointer((*StatCell)(unsafe.Pointer(pCell)).FaOvfl + uintptr(iOvfl)*4)) - (*StatCursor)(unsafe.Pointer(pCsr)).FzPagetype = ts + 36884 /* "overflow" */ + (*StatCursor)(unsafe.Pointer(pCsr)).FzPagetype = ts + 36894 /* "overflow" */ (*StatCursor)(unsafe.Pointer(pCsr)).FzPath = libc.AssignUintptr(&z, Xsqlite3_mprintf(tls, - ts+36893 /* "%s%.3x+%.6x" */, libc.VaList(bp, (*StatPage)(unsafe.Pointer(p)).FzPath, (*StatPage)(unsafe.Pointer(p)).FiCell, iOvfl))) + ts+36903 /* "%s%.3x+%.6x" */, libc.VaList(bp, (*StatPage)(unsafe.Pointer(p)).FzPath, (*StatPage)(unsafe.Pointer(p)).FiCell, iOvfl))) if z == uintptr(0) { return SQLITE_NOMEM } @@ -166347,7 +167089,7 @@ __23: if !(!(int32((*StatCursor)(unsafe.Pointer(pCsr)).FisAgg) != 0)) { goto __24 } - (*StatPage)(unsafe.Pointer(p + 1*40)).FzPath = libc.AssignUintptr(&z, Xsqlite3_mprintf(tls, ts+36905 /* "%s%.3x/" */, libc.VaList(bp+24, (*StatPage)(unsafe.Pointer(p)).FzPath, (*StatPage)(unsafe.Pointer(p)).FiCell))) + (*StatPage)(unsafe.Pointer(p + 1*40)).FzPath = libc.AssignUintptr(&z, Xsqlite3_mprintf(tls, ts+36915 /* "%s%.3x/" */, libc.VaList(bp+24, (*StatPage)(unsafe.Pointer(p)).FzPath, (*StatPage)(unsafe.Pointer(p)).FiCell))) if !(z == uintptr(0)) { goto __25 } @@ -166390,14 +167132,14 @@ __2: goto __28 __29: // table internal __30: // index internal - (*StatCursor)(unsafe.Pointer(pCsr)).FzPagetype = ts + 36913 /* "internal" */ + (*StatCursor)(unsafe.Pointer(pCsr)).FzPagetype = ts + 36923 /* "internal" */ goto __28 __31: // table leaf __32: // index leaf - (*StatCursor)(unsafe.Pointer(pCsr)).FzPagetype = ts + 36922 /* "leaf" */ + (*StatCursor)(unsafe.Pointer(pCsr)).FzPagetype = ts + 36932 /* "leaf" */ goto __28 __33: - (*StatCursor)(unsafe.Pointer(pCsr)).FzPagetype = ts + 36927 /* "corrupted" */ + (*StatCursor)(unsafe.Pointer(pCsr)).FzPagetype = ts + 36937 /* "corrupted" */ goto __28 __28: ; @@ -166412,7 +167154,7 @@ __34: if !(!(int32((*StatCursor)(unsafe.Pointer(pCsr)).FisAgg) != 0)) { goto __35 } - (*StatCursor)(unsafe.Pointer(pCsr)).FzPath = libc.AssignUintptr(&z, Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp+40, (*StatPage)(unsafe.Pointer(p1)).FzPath))) + (*StatCursor)(unsafe.Pointer(pCsr)).FzPath = libc.AssignUintptr(&z, Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp+40, (*StatPage)(unsafe.Pointer(p1)).FzPath))) if !(z == uintptr(0)) { goto __36 } @@ -166501,13 +167243,13 @@ func statFilter(tls *libc.TLS, pCursor uintptr, idxNum int32, idxStr uintptr, ar pSql = Xsqlite3_str_new(tls, (*StatTable)(unsafe.Pointer(pTab)).Fdb) Xsqlite3_str_appendf(tls, pSql, - ts+36937, /* "SELECT * FROM (S..." */ + ts+36947, /* "SELECT * FROM (S..." */ libc.VaList(bp, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer((*StatTable)(unsafe.Pointer(pTab)).Fdb)).FaDb+uintptr((*StatCursor)(unsafe.Pointer(pCsr)).FiDb)*16)).FzDbSName)) if zName != 0 { - Xsqlite3_str_appendf(tls, pSql, ts+37092 /* "WHERE name=%Q" */, libc.VaList(bp+8, zName)) + Xsqlite3_str_appendf(tls, pSql, ts+37102 /* "WHERE name=%Q" */, libc.VaList(bp+8, zName)) } if (idxNum & 0x08) != 0 { - Xsqlite3_str_appendf(tls, pSql, ts+37106 /* " ORDER BY name" */, 0) + Xsqlite3_str_appendf(tls, pSql, ts+37116 /* " ORDER BY name" */, 0) } zSql = Xsqlite3_str_finish(tls, pSql) if zSql == uintptr(0) { @@ -166592,7 +167334,7 @@ func statRowid(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* sqlite // Invoke this routine to register the "dbstat" virtual table module func Xsqlite3DbstatRegister(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:206190:20: */ - return Xsqlite3_create_module(tls, db, ts+37121 /* "dbstat" */, uintptr(unsafe.Pointer(&dbstat_module)), uintptr(0)) + return Xsqlite3_create_module(tls, db, ts+37131 /* "dbstat" */, uintptr(unsafe.Pointer(&dbstat_module)), uintptr(0)) } var dbstat_module = Sqlite3_module{ // iVersion @@ -166707,7 +167449,7 @@ func dbpageConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uin Xsqlite3_vtab_config(tls, db, SQLITE_VTAB_DIRECTONLY, 0) rc = Xsqlite3_declare_vtab(tls, db, - ts+37128 /* "CREATE TABLE x(p..." */) + ts+37138 /* "CREATE TABLE x(p..." */) if rc == SQLITE_OK { pTab = Xsqlite3_malloc64(tls, uint64(unsafe.Sizeof(DbpageTable{}))) if pTab == uintptr(0) { @@ -166955,14 +167697,14 @@ func dbpageUpdate(tls *libc.TLS, pVtab uintptr, argc int32, argv uintptr, pRowid if !(((*Sqlite3)(unsafe.Pointer((*DbpageTable)(unsafe.Pointer(pTab)).Fdb)).Fflags & uint64(SQLITE_Defensive)) != 0) { goto __1 } - zErr = ts + 37195 /* "read-only" */ + zErr = ts + 37205 /* "read-only" */ goto update_fail __1: ; if !(argc == 1) { goto __2 } - zErr = ts + 37205 /* "cannot delete" */ + zErr = ts + 37215 /* "cannot delete" */ goto update_fail __2: ; @@ -166970,7 +167712,7 @@ __2: if !(Pgno(Xsqlite3_value_int(tls, *(*uintptr)(unsafe.Pointer(argv + 1*4)))) != pgno) { goto __3 } - zErr = ts + 37219 /* "cannot insert" */ + zErr = ts + 37229 /* "cannot insert" */ goto update_fail __3: ; @@ -166983,7 +167725,7 @@ __3: if !(iDb < 0) { goto __4 } - zErr = ts + 37233 /* "no such schema" */ + zErr = ts + 37243 /* "no such schema" */ goto update_fail __4: ; @@ -166991,7 +167733,7 @@ __4: if !(((pgno < Pgno(1)) || (pBt == uintptr(0))) || (pgno > Pgno(int32(Xsqlite3BtreeLastPage(tls, pBt))))) { goto __5 } - zErr = ts + 37248 /* "bad page number" */ + zErr = ts + 37258 /* "bad page number" */ goto update_fail __5: ; @@ -167000,7 +167742,7 @@ __5: (Xsqlite3_value_bytes(tls, *(*uintptr)(unsafe.Pointer(argv + 3*4))) != szPage)) { goto __6 } - zErr = ts + 37264 /* "bad page value" */ + zErr = ts + 37274 /* "bad page value" */ goto update_fail __6: ; @@ -167025,7 +167767,7 @@ __7: update_fail: Xsqlite3_free(tls, (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg) - (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp, zErr)) + (*Sqlite3_vtab)(unsafe.Pointer(pVtab)).FzErrMsg = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp, zErr)) return SQLITE_ERROR } @@ -167047,7 +167789,7 @@ func dbpageBegin(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:206594:12: * // Invoke this routine to register the "dbpage" virtual table module func Xsqlite3DbpageRegister(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:206609:20: */ - return Xsqlite3_create_module(tls, db, ts+37279 /* "sqlite_dbpage" */, uintptr(unsafe.Pointer(&dbpage_module)), uintptr(0)) + return Xsqlite3_create_module(tls, db, ts+37289 /* "sqlite_dbpage" */, uintptr(unsafe.Pointer(&dbpage_module)), uintptr(0)) } var dbpage_module = Sqlite3_module{ // iVersion @@ -167095,13 +167837,13 @@ type SessionTable1 = struct { type SessionTable = SessionTable1 /* sqlite3.c:206655:29 */ type SessionChange1 = struct { - Fop U8 - FbIndirect U8 - _ [2]byte - FnMaxSize int32 - FnRecord int32 - FaRecord uintptr - FpNext uintptr + Fop U8 + FbIndirect U8 + F__ccgo_pad1 [2]byte + FnMaxSize int32 + FnRecord int32 + FaRecord uintptr + FpNext uintptr } /* sqlite3.c:11155:9 */ type SessionChange = SessionChange1 /* sqlite3.c:206656:30 */ @@ -167367,9 +168109,13 @@ func sessionPreupdateHash(tls *libc.TLS, pSession uintptr, pTab uintptr, bNew in // var pVal uintptr at bp, 4 if bNew != 0 { - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 8 /* &.xNew */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp /* &pVal */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxNew})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp /* &pVal */) } else { - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 4 /* &.xOld */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp /* &pVal */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxOld})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp /* &pVal */) } if rc != SQLITE_OK { return rc @@ -167688,10 +168434,14 @@ func sessionPreupdateEqual(tls *libc.TLS, pSession uintptr, pTab uintptr, pChang // this (that the method has already been called). if op == SQLITE_INSERT { // assert( db->pPreUpdate->pNewUnpacked || db->pPreUpdate->aNew ); - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 8 /* &.xNew */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, iCol, bp /* &pVal */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxNew})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, iCol, bp /* &pVal */) } else { // assert( db->pPreUpdate->pUnpacked ); - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 4 /* &.xOld */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, iCol, bp /* &pVal */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxOld})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, iCol, bp /* &pVal */) } if Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(bp /* pVal */))) != eType { @@ -167829,20 +168579,20 @@ func sessionTableInfo(tls *libc.TLS, pSession uintptr, db uintptr, zDb uintptr, var abPK uintptr = uintptr(0) nThis = Xsqlite3Strlen30(tls, zThis) - if (nThis == 12) && (0 == Xsqlite3_stricmp(tls, ts+13346 /* "sqlite_stat1" */, zThis)) { + if (nThis == 12) && (0 == Xsqlite3_stricmp(tls, ts+13356 /* "sqlite_stat1" */, zThis)) { rc = Xsqlite3_table_column_metadata(tls, db, zDb, zThis, uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0)) if rc == SQLITE_OK { // For sqlite_stat1, pretend that (tbl,idx) is the PRIMARY KEY. zPragma = Xsqlite3_mprintf(tls, - ts+37293 /* "SELECT 0, 'tbl',..." */, 0) + ts+37303 /* "SELECT 0, 'tbl',..." */, 0) } else if rc == SQLITE_ERROR { - zPragma = Xsqlite3_mprintf(tls, ts+915 /* "" */, 0) + zPragma = Xsqlite3_mprintf(tls, ts+925 /* "" */, 0) } else { return rc } } else { - zPragma = Xsqlite3_mprintf(tls, ts+37414 /* "PRAGMA '%q'.tabl..." */, libc.VaList(bp, zDb, zThis)) + zPragma = Xsqlite3_mprintf(tls, ts+37424 /* "PRAGMA '%q'.tabl..." */, libc.VaList(bp, zDb, zThis)) } if !(zPragma != 0) { return SQLITE_NOMEM @@ -167942,7 +168692,7 @@ func sessionInitTable(tls *libc.TLS, pSession uintptr, pTab uintptr) int32 { /* break } } - if 0 == Xsqlite3_stricmp(tls, ts+13346 /* "sqlite_stat1" */, (*SessionTable)(unsafe.Pointer(pTab)).FzName) { + if 0 == Xsqlite3_stricmp(tls, ts+13356 /* "sqlite_stat1" */, (*SessionTable)(unsafe.Pointer(pTab)).FzName) { (*SessionTable)(unsafe.Pointer(pTab)).FbStat1 = 1 } @@ -167975,7 +168725,9 @@ func sessionStat1Old(tls *libc.TLS, pCtx uintptr, iCol int32, ppVal uintptr) int var p uintptr = pCtx *(*uintptr)(unsafe.Pointer(bp /* pVal */)) = uintptr(0) - var rc int32 = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((p /* &.hook */ + 4 /* &.xOld */))))(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx, iCol, bp /* &pVal */) + var rc int32 = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FxOld})).f(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx, iCol, bp /* &pVal */) if ((rc == SQLITE_OK) && (iCol == 1)) && (Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(bp /* pVal */))) == SQLITE_NULL) { *(*uintptr)(unsafe.Pointer(bp /* pVal */)) = (*Sqlite3_session)(unsafe.Pointer((*SessionStat1Ctx)(unsafe.Pointer(p)).FpSession)).FpZeroBlob } @@ -167989,7 +168741,9 @@ func sessionStat1New(tls *libc.TLS, pCtx uintptr, iCol int32, ppVal uintptr) int var p uintptr = pCtx *(*uintptr)(unsafe.Pointer(bp /* pVal */)) = uintptr(0) - var rc int32 = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((p /* &.hook */ + 8 /* &.xNew */))))(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx, iCol, bp /* &pVal */) + var rc int32 = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FxNew})).f(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx, iCol, bp /* &pVal */) if ((rc == SQLITE_OK) && (iCol == 1)) && (Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(bp /* pVal */))) == SQLITE_NULL) { *(*uintptr)(unsafe.Pointer(bp /* pVal */)) = (*Sqlite3_session)(unsafe.Pointer((*SessionStat1Ctx)(unsafe.Pointer(p)).FpSession)).FpZeroBlob } @@ -167999,12 +168753,16 @@ func sessionStat1New(tls *libc.TLS, pCtx uintptr, iCol int32, ppVal uintptr) int func sessionStat1Count(tls *libc.TLS, pCtx uintptr) int32 { /* sqlite3.c:207812:12: */ var p uintptr = pCtx - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((p /* &.hook */ + 12 /* &.xCount */))))(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FxCount})).f(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx) } func sessionStat1Depth(tls *libc.TLS, pCtx uintptr) int32 { /* sqlite3.c:207816:12: */ var p uintptr = pCtx - return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((p /* &.hook */ + 16 /* &.xDepth */))))(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx) + return (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FxDepth})).f(tls, (*SessionStat1Ctx)(unsafe.Pointer(p)).Fhook.FpCtx) } func sessionUpdateMaxSize(tls *libc.TLS, op int32, pSession uintptr, pTab uintptr, pC uintptr) int32 { /* sqlite3.c:207821:12: */ @@ -168017,7 +168775,9 @@ func sessionUpdateMaxSize(tls *libc.TLS, op int32, pSession uintptr, pTab uintpt var ii int32 for ii = 0; ii < (*SessionTable)(unsafe.Pointer(pTab)).FnCol; ii++ { *(*uintptr)(unsafe.Pointer(bp /* p */)) = uintptr(0) - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 8 /* &.xNew */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, ii, bp /* &p */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxNew})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, ii, bp /* &p */) sessionSerializeValue(tls, uintptr(0), *(*uintptr)(unsafe.Pointer(bp /* p */)), bp+4 /* &nNew */) } } @@ -168034,7 +168794,9 @@ func sessionUpdateMaxSize(tls *libc.TLS, op int32, pSession uintptr, pTab uintpt var nOld int32 = 0 var eType int32 *(*uintptr)(unsafe.Pointer(bp + 12 /* p */)) = uintptr(0) - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 8 /* &.xNew */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, ii, bp+12 /* &p */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxNew})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, ii, bp+12 /* &p */) if *(*uintptr)(unsafe.Pointer(bp + 12 /* p */)) == uintptr(0) { return SQLITE_NOMEM } @@ -168162,7 +168924,9 @@ __2: // Check the number of columns in this xPreUpdate call matches the // number of columns in the table. - if !((*SessionTable)(unsafe.Pointer(pTab)).FnCol != (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 12 /* &.xCount */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx)) { + if !((*SessionTable)(unsafe.Pointer(pTab)).FnCol != (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxCount})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx)) { goto __3 } (*Sqlite3_session)(unsafe.Pointer(pSession)).Frc = SQLITE_SCHEMA @@ -168208,7 +168972,7 @@ __4: goto error_out __7: ; - Xsqlite3ValueSetStr(tls, p, 0, ts+915 /* "" */, uint8(0), uintptr(0)) + Xsqlite3ValueSetStr(tls, p, 0, ts+925 /* "" */, uint8(0), uintptr(0)) (*Sqlite3_session)(unsafe.Pointer(pSession)).FpZeroBlob = p __6: ; @@ -168265,14 +169029,18 @@ __16: if !(op != SQLITE_INSERT) { goto __19 } - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 4 /* &.xOld */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+32 /* &p1 */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxOld})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+32 /* &p1 */) goto __20 __19: if !(*(*U8)(unsafe.Pointer((*SessionTable)(unsafe.Pointer(pTab)).FabPK + uintptr(i))) != 0) { goto __21 } - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 8 /* &.xNew */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+32 /* &p1 */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxNew})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+32 /* &p1 */) __21: ; @@ -168324,13 +169092,17 @@ __25: if !(op != SQLITE_INSERT) { goto __28 } - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 4 /* &.xOld */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+44 /* &p2 */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxOld})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+44 /* &p2 */) goto __29 __28: if !(*(*U8)(unsafe.Pointer((*SessionTable)(unsafe.Pointer(pTab)).FabPK + uintptr(i))) != 0) { goto __30 } - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 8 /* &.xNew */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+44 /* &p2 */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxNew})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx, i, bp+44 /* &p2 */) __30: ; __29: @@ -168345,7 +169117,9 @@ __27: ; // Add the change to the hash-table - if !(((*Sqlite3_session)(unsafe.Pointer(pSession)).FbIndirect != 0) || ((*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 16 /* &.xDepth */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx) != 0)) { + if !(((*Sqlite3_session)(unsafe.Pointer(pSession)).FbIndirect != 0) || ((*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxDepth})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx) != 0)) { goto __31 } (*SessionChange)(unsafe.Pointer(pC)).FbIndirect = U8(1) @@ -168363,7 +169137,9 @@ __14: } // If the existing change is considered "indirect", but this current // change is "direct", mark the change object as direct. - if !(((*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pSession + 64 /* &.hook */ + 16 /* &.xDepth */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx) == 0) && + if !(((*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FxDepth})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx) == 0) && ((*Sqlite3_session)(unsafe.Pointer(pSession)).FbIndirect == 0)) { goto __33 } @@ -168415,7 +169191,9 @@ func sessionFindTable(tls *libc.TLS, pSession uintptr, zName uintptr, ppTab uint // If there is a table-filter configured, invoke it. If it returns 0, // do not automatically add the new table. if ((*Sqlite3_session)(unsafe.Pointer(pSession)).FxTableFilter == uintptr(0)) || - ((*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pSession + 32 /* &.xTableFilter */))))(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).FpFilterCtx, zName) != 0) { + ((*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Sqlite3_session)(unsafe.Pointer(pSession)).FxTableFilter})).f(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).FpFilterCtx, zName) != 0) { rc = Xsqlite3session_attach(tls, pSession, zName) if rc == SQLITE_OK { for pRet = (*Sqlite3_session)(unsafe.Pointer(pSession)).FpTable; (*SessionTable)(unsafe.Pointer(pRet)).FpNext != 0; pRet = (*SessionTable)(unsafe.Pointer(pRet)).FpNext { @@ -168554,14 +169332,14 @@ func sessionExprComparePK(tls *libc.TLS, nCol int32, zDb1 uintptr, zDb2 uintptr, defer tls.Free(64) var i int32 - var zSep uintptr = ts + 915 /* "" */ + var zSep uintptr = ts + 925 /* "" */ var zRet uintptr = uintptr(0) for i = 0; i < nCol; i++ { if *(*U8)(unsafe.Pointer(abPK + uintptr(i))) != 0 { - zRet = Xsqlite3_mprintf(tls, ts+37443, /* "%z%s\"%w\".\"%w\".\"%..." */ + zRet = Xsqlite3_mprintf(tls, ts+37453, /* "%z%s\"%w\".\"%w\".\"%..." */ libc.VaList(bp, zRet, zSep, zDb1, zTab, *(*uintptr)(unsafe.Pointer(azCol + uintptr(i)*4)), zDb2, zTab, *(*uintptr)(unsafe.Pointer(azCol + uintptr(i)*4)))) - zSep = ts + 24073 /* " AND " */ + zSep = ts + 24083 /* " AND " */ if zRet == uintptr(0) { break } @@ -168576,7 +169354,7 @@ func sessionExprCompareOther(tls *libc.TLS, nCol int32, zDb1 uintptr, zDb2 uintp defer tls.Free(64) var i int32 - var zSep uintptr = ts + 915 /* "" */ + var zSep uintptr = ts + 925 /* "" */ var zRet uintptr = uintptr(0) var bHave int32 = 0 @@ -168584,9 +169362,9 @@ func sessionExprCompareOther(tls *libc.TLS, nCol int32, zDb1 uintptr, zDb2 uintp if int32(*(*U8)(unsafe.Pointer(abPK + uintptr(i)))) == 0 { bHave = 1 zRet = Xsqlite3_mprintf(tls, - ts+37477, /* "%z%s\"%w\".\"%w\".\"%..." */ + ts+37487, /* "%z%s\"%w\".\"%w\".\"%..." */ libc.VaList(bp, zRet, zSep, zDb1, zTab, *(*uintptr)(unsafe.Pointer(azCol + uintptr(i)*4)), zDb2, zTab, *(*uintptr)(unsafe.Pointer(azCol + uintptr(i)*4)))) - zSep = ts + 37518 /* " OR " */ + zSep = ts + 37528 /* " OR " */ if zRet == uintptr(0) { break } @@ -168595,7 +169373,7 @@ func sessionExprCompareOther(tls *libc.TLS, nCol int32, zDb1 uintptr, zDb2 uintp if bHave == 0 { - zRet = Xsqlite3_mprintf(tls, ts+9614 /* "0" */, 0) + zRet = Xsqlite3_mprintf(tls, ts+9624 /* "0" */, 0) } return zRet @@ -168607,7 +169385,7 @@ func sessionSelectFindNew(tls *libc.TLS, nCol int32, zDb1 uintptr, zDb2 uintptr, var zRet uintptr = Xsqlite3_mprintf(tls, - ts+37523, /* "SELECT * FROM \"%..." */ + ts+37533, /* "SELECT * FROM \"%..." */ libc.VaList(bp, zDb1, zTbl, zDb2, zTbl, zExpr)) return zRet } @@ -168652,7 +169430,7 @@ func sessionDiffFindModified(tls *libc.TLS, pSession uintptr, pTab uintptr, zFro rc = SQLITE_NOMEM } else { var zStmt uintptr = Xsqlite3_mprintf(tls, - ts+37601, /* "SELECT * FROM \"%..." */ + ts+37611, /* "SELECT * FROM \"%..." */ libc.VaList(bp, (*Sqlite3_session)(unsafe.Pointer(pSession)).FzDb, (*SessionTable)(unsafe.Pointer(pTab)).FzName, zFrom, (*SessionTable)(unsafe.Pointer(pTab)).FzName, zExpr, zExpr2)) if zStmt == uintptr(0) { rc = SQLITE_NOMEM @@ -168790,7 +169568,7 @@ __6: if !(pzErrMsg != 0) { goto __16 } - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+37654 /* "table schemas do..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+37664 /* "table schemas do..." */, 0) __16: ; rc = SQLITE_SCHEMA @@ -169132,7 +169910,7 @@ func sessionAppendInteger(tls *libc.TLS, p uintptr, iVal int32, pRc uintptr) { / // var aBuf [24]int8 at bp+8, 24 - Xsqlite3_snprintf(tls, (int32(uint32(unsafe.Sizeof([24]int8{})) - uint32(1))), bp+8 /* &aBuf[0] */, ts+6845 /* "%d" */, libc.VaList(bp, iVal)) + Xsqlite3_snprintf(tls, (int32(uint32(unsafe.Sizeof([24]int8{})) - uint32(1))), bp+8 /* &aBuf[0] */, ts+6855 /* "%d" */, libc.VaList(bp, iVal)) sessionAppendStr(tls, p, bp+8 /* &aBuf[0] */, pRc) } @@ -169395,30 +170173,30 @@ func sessionSelectStmt(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, nCo var zSql uintptr = uintptr(0) var nSql int32 = -1 - if 0 == Xsqlite3_stricmp(tls, ts+13346 /* "sqlite_stat1" */, zTab) { + if 0 == Xsqlite3_stricmp(tls, ts+13356 /* "sqlite_stat1" */, zTab) { zSql = Xsqlite3_mprintf(tls, - ts+37681 /* "SELECT tbl, ?2, ..." */, libc.VaList(bp, zDb)) + ts+37691 /* "SELECT tbl, ?2, ..." */, libc.VaList(bp, zDb)) if zSql == uintptr(0) { *(*int32)(unsafe.Pointer(bp + 20 /* rc */)) = SQLITE_NOMEM } } else { var i int32 - var zSep uintptr = ts + 915 /* "" */ + var zSep uintptr = ts + 925 /* "" */ *(*SessionBuffer)(unsafe.Pointer(bp + 8 /* buf */)) = SessionBuffer{} - sessionAppendStr(tls, bp+8 /* &buf */, ts+37791 /* "SELECT * FROM " */, bp+20 /* &rc */) + sessionAppendStr(tls, bp+8 /* &buf */, ts+37801 /* "SELECT * FROM " */, bp+20 /* &rc */) sessionAppendIdent(tls, bp+8 /* &buf */, zDb, bp+20 /* &rc */) - sessionAppendStr(tls, bp+8 /* &buf */, ts+928 /* "." */, bp+20 /* &rc */) + sessionAppendStr(tls, bp+8 /* &buf */, ts+938 /* "." */, bp+20 /* &rc */) sessionAppendIdent(tls, bp+8 /* &buf */, zTab, bp+20 /* &rc */) - sessionAppendStr(tls, bp+8 /* &buf */, ts+37806 /* " WHERE " */, bp+20 /* &rc */) + sessionAppendStr(tls, bp+8 /* &buf */, ts+37816 /* " WHERE " */, bp+20 /* &rc */) for i = 0; i < nCol; i++ { if *(*U8)(unsafe.Pointer(abPK + uintptr(i))) != 0 { sessionAppendStr(tls, bp+8 /* &buf */, zSep, bp+20 /* &rc */) sessionAppendIdent(tls, bp+8 /* &buf */, *(*uintptr)(unsafe.Pointer(azCol + uintptr(i)*4)), bp+20 /* &rc */) - sessionAppendStr(tls, bp+8 /* &buf */, ts+37814 /* " IS ?" */, bp+20 /* &rc */) + sessionAppendStr(tls, bp+8 /* &buf */, ts+37824 /* " IS ?" */, bp+20 /* &rc */) sessionAppendInteger(tls, bp+8 /* &buf */, (i + 1), bp+20 /* &rc */) - zSep = ts + 24073 /* " AND " */ + zSep = ts + 24083 /* " AND " */ } } zSql = (*SessionBuffer)(unsafe.Pointer(bp + 8 /* &buf */)).FaBuf @@ -169558,7 +170336,7 @@ func sessionGenerateChangeset(tls *libc.TLS, pSession uintptr, bPatchset int32, if (*Sqlite3_session)(unsafe.Pointer(pSession)).Frc != 0 { return (*Sqlite3_session)(unsafe.Pointer(pSession)).Frc } - *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = Xsqlite3_exec(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fdb, ts+37820 /* "SAVEPOINT change..." */, uintptr(0), uintptr(0), uintptr(0)) + *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = Xsqlite3_exec(tls, (*Sqlite3_session)(unsafe.Pointer(pSession)).Fdb, ts+37830 /* "SAVEPOINT change..." */, uintptr(0), uintptr(0), uintptr(0)) if *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) != SQLITE_OK { return *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) } @@ -169626,7 +170404,9 @@ func sessionGenerateChangeset(tls *libc.TLS, pSession uintptr, bPatchset int32, (*(*int32)(unsafe.Pointer(bp + 24 /* rc */)) == SQLITE_OK)) && ((*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FnBuf > nNoop)) && ((*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FnBuf > sessions_strm_chunk_size) { - *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FnBuf) nNoop = -1 (*SessionBuffer)(unsafe.Pointer(bp + 12 /* &buf */)).FnBuf = 0 } @@ -169648,12 +170428,14 @@ func sessionGenerateChangeset(tls *libc.TLS, pSession uintptr, bPatchset int32, *(*uintptr)(unsafe.Pointer(ppChangeset)) = (*SessionBuffer)(unsafe.Pointer(bp + 12 /* &buf */)).FaBuf (*SessionBuffer)(unsafe.Pointer(bp + 12 /* &buf */)).FaBuf = uintptr(0) } else if (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FnBuf > 0 { - *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FnBuf) } } Xsqlite3_free(tls, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &buf */)).FaBuf) - Xsqlite3_exec(tls, db, ts+37840 /* "RELEASE changese..." */, uintptr(0), uintptr(0), uintptr(0)) + Xsqlite3_exec(tls, db, ts+37850 /* "RELEASE changese..." */, uintptr(0), uintptr(0), uintptr(0)) Xsqlite3_mutex_leave(tls, Xsqlite3_db_mutex(tls, db)) return *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) } @@ -169849,7 +170631,9 @@ func sessionInputBuffer(tls *libc.TLS, pIn uintptr, nByte int32) int32 { /* sqli sessionDiscardData(tls, pIn) } if SQLITE_OK == sessionBufferGrow(tls, (pIn+20 /* &.buf */), int64(*(*int32)(unsafe.Pointer(bp + 4 /* nNew */))), bp /* &rc */) { - *(*int32)(unsafe.Pointer(bp /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pIn + 32 /* &.xInput */))))(tls, (*SessionInput)(unsafe.Pointer(pIn)).FpIn, ((*SessionInput)(unsafe.Pointer(pIn)).Fbuf.FaBuf + uintptr((*SessionInput)(unsafe.Pointer(pIn)).Fbuf.FnBuf)), bp+4 /* &nNew */) + *(*int32)(unsafe.Pointer(bp /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*SessionInput)(unsafe.Pointer(pIn)).FxInput})).f(tls, (*SessionInput)(unsafe.Pointer(pIn)).FpIn, ((*SessionInput)(unsafe.Pointer(pIn)).Fbuf.FaBuf + uintptr((*SessionInput)(unsafe.Pointer(pIn)).Fbuf.FnBuf)), bp+4 /* &nNew */) if *(*int32)(unsafe.Pointer(bp + 4 /* nNew */)) == 0 { (*SessionInput)(unsafe.Pointer(pIn)).FbEof = 1 } else { @@ -170716,7 +171500,9 @@ __6: if !((xOutput != 0) && ((*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FnBuf >= sessions_strm_chunk_size)) { goto __28 } - *(*int32)(unsafe.Pointer(bp + 32 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 32 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FnBuf) (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FnBuf = 0 if !(*(*int32)(unsafe.Pointer(bp + 32 /* rc */)) != SQLITE_OK) { goto __29 @@ -170741,7 +171527,9 @@ __30: if !((*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FnBuf > 0) { goto __32 } - *(*int32)(unsafe.Pointer(bp + 32 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 32 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &sOut */)).FnBuf) __32: ; __31: @@ -170813,7 +171601,7 @@ type SessionApplyCtx1 = struct { Frebase SessionBuffer FbRebaseStarted U8 FbRebase U8 - _ [2]byte + F__ccgo_pad1 [2]byte } /* sqlite3.c:210362:9 */ type SessionApplyCtx = SessionApplyCtx1 /* sqlite3.c:210362:32 */ @@ -170885,36 +171673,36 @@ func sessionUpdateFind(tls *libc.TLS, pIter uintptr, p uintptr, bPatchset int32, if pUp == uintptr(0) { var nByte int32 = (int32((uint32(unsafe.Sizeof(SessionUpdate{})) * uint32(nU32)) * uint32(unsafe.Sizeof(U32(0))))) - var bStat1 int32 = (libc.Bool32(Xsqlite3_stricmp(tls, (*Sqlite3_changeset_iter)(unsafe.Pointer(pIter)).FzTab, ts+13346 /* "sqlite_stat1" */) == 0)) + var bStat1 int32 = (libc.Bool32(Xsqlite3_stricmp(tls, (*Sqlite3_changeset_iter)(unsafe.Pointer(pIter)).FzTab, ts+13356 /* "sqlite_stat1" */) == 0)) pUp = Xsqlite3_malloc(tls, nByte) if pUp == uintptr(0) { *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = SQLITE_NOMEM } else { - var zSep uintptr = ts + 915 /* "" */ + var zSep uintptr = ts + 925 /* "" */ // var buf SessionBuffer at bp, 12 libc.Xmemset(tls, bp /* &buf */, 0, uint32(unsafe.Sizeof(SessionBuffer{}))) (*SessionUpdate)(unsafe.Pointer(pUp)).FaMask = (pUp + 1*12) libc.Xmemcpy(tls, (*SessionUpdate)(unsafe.Pointer(pUp)).FaMask, (*SessionApplyCtx)(unsafe.Pointer(p)).FaUpdateMask, (uint32(nU32) * uint32(unsafe.Sizeof(U32(0))))) - sessionAppendStr(tls, bp /* &buf */, ts+37858 /* "UPDATE main." */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+37868 /* "UPDATE main." */, bp+12 /* &rc */) sessionAppendIdent(tls, bp /* &buf */, (*Sqlite3_changeset_iter)(unsafe.Pointer(pIter)).FzTab, bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+37871 /* " SET " */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+37881 /* " SET " */, bp+12 /* &rc */) // Create the assignments part of the UPDATE for ii = 0; ii < (*Sqlite3_changeset_iter)(unsafe.Pointer(pIter)).FnCol; ii++ { if (int32(*(*U8)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FabPK + uintptr(ii)))) == 0) && (*(*uintptr)(unsafe.Pointer((*Sqlite3_changeset_iter)(unsafe.Pointer((pIter))).FapValue + uintptr(((*Sqlite3_changeset_iter)(unsafe.Pointer((pIter))).FnCol+(ii)))*4)) != 0) { sessionAppendStr(tls, bp /* &buf */, zSep, bp+12 /* &rc */) sessionAppendIdent(tls, bp /* &buf */, *(*uintptr)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FazCol + uintptr(ii)*4)), bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+37877 /* " = ?" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+37887 /* " = ?" */, bp+12 /* &rc */) sessionAppendInteger(tls, bp /* &buf */, ((ii * 2) + 1), bp+12 /* &rc */) - zSep = ts + 16636 /* ", " */ + zSep = ts + 16646 /* ", " */ } } // Create the WHERE clause part of the UPDATE - zSep = ts + 915 /* "" */ - sessionAppendStr(tls, bp /* &buf */, ts+37806 /* " WHERE " */, bp+12 /* &rc */) + zSep = ts + 925 /* "" */ + sessionAppendStr(tls, bp /* &buf */, ts+37816 /* " WHERE " */, bp+12 /* &rc */) for ii = 0; ii < (*Sqlite3_changeset_iter)(unsafe.Pointer(pIter)).FnCol; ii++ { if (*(*U8)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FabPK + uintptr(ii))) != 0) || ((bPatchset == 0) && (*(*uintptr)(unsafe.Pointer((*Sqlite3_changeset_iter)(unsafe.Pointer((pIter))).FapValue + uintptr(ii)*4)) != 0)) { sessionAppendStr(tls, bp /* &buf */, zSep, bp+12 /* &rc */) @@ -170922,13 +171710,13 @@ func sessionUpdateFind(tls *libc.TLS, pIter uintptr, p uintptr, bPatchset int32, sessionAppendStr(tls, bp, /* &buf */ - ts+37882 /* "idx IS CASE WHEN..." */, bp+12 /* &rc */) + ts+37892 /* "idx IS CASE WHEN..." */, bp+12 /* &rc */) } else { sessionAppendIdent(tls, bp /* &buf */, *(*uintptr)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FazCol + uintptr(ii)*4)), bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+37814 /* " IS ?" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+37824 /* " IS ?" */, bp+12 /* &rc */) sessionAppendInteger(tls, bp /* &buf */, ((ii * 2) + 2), bp+12 /* &rc */) } - zSep = ts + 24073 /* " AND " */ + zSep = ts + 24083 /* " AND " */ } } @@ -170991,42 +171779,42 @@ func sessionDeleteRow(tls *libc.TLS, db uintptr, zTab uintptr, p uintptr) int32 defer tls.Free(16) var i int32 - var zSep uintptr = ts + 915 /* "" */ + var zSep uintptr = ts + 925 /* "" */ *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = SQLITE_OK *(*SessionBuffer)(unsafe.Pointer(bp /* buf */)) = SessionBuffer{} var nPk int32 = 0 - sessionAppendStr(tls, bp /* &buf */, ts+37957 /* "DELETE FROM main..." */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+37967 /* "DELETE FROM main..." */, bp+12 /* &rc */) sessionAppendIdent(tls, bp /* &buf */, zTab, bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+37806 /* " WHERE " */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+37816 /* " WHERE " */, bp+12 /* &rc */) for i = 0; i < (*SessionApplyCtx)(unsafe.Pointer(p)).FnCol; i++ { if *(*U8)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FabPK + uintptr(i))) != 0 { nPk++ sessionAppendStr(tls, bp /* &buf */, zSep, bp+12 /* &rc */) sessionAppendIdent(tls, bp /* &buf */, *(*uintptr)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FazCol + uintptr(i)*4)), bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+37877 /* " = ?" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+37887 /* " = ?" */, bp+12 /* &rc */) sessionAppendInteger(tls, bp /* &buf */, (i + 1), bp+12 /* &rc */) - zSep = ts + 24073 /* " AND " */ + zSep = ts + 24083 /* " AND " */ } } if nPk < (*SessionApplyCtx)(unsafe.Pointer(p)).FnCol { - sessionAppendStr(tls, bp /* &buf */, ts+37975 /* " AND (?" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+37985 /* " AND (?" */, bp+12 /* &rc */) sessionAppendInteger(tls, bp /* &buf */, ((*SessionApplyCtx)(unsafe.Pointer(p)).FnCol + 1), bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+37518 /* " OR " */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+37528 /* " OR " */, bp+12 /* &rc */) - zSep = ts + 915 /* "" */ + zSep = ts + 925 /* "" */ for i = 0; i < (*SessionApplyCtx)(unsafe.Pointer(p)).FnCol; i++ { if !(int32(*(*U8)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FabPK + uintptr(i)))) != 0) { sessionAppendStr(tls, bp /* &buf */, zSep, bp+12 /* &rc */) sessionAppendIdent(tls, bp /* &buf */, *(*uintptr)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FazCol + uintptr(i)*4)), bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+37814 /* " IS ?" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+37824 /* " IS ?" */, bp+12 /* &rc */) sessionAppendInteger(tls, bp /* &buf */, (i + 1), bp+12 /* &rc */) - zSep = ts + 37983 /* "AND " */ + zSep = ts + 37993 /* "AND " */ } } - sessionAppendStr(tls, bp /* &buf */, ts+6887 /* ")" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+6897 /* ")" */, bp+12 /* &rc */) } if *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) == SQLITE_OK { @@ -171050,7 +171838,7 @@ func sessionDeleteRow(tls *libc.TLS, db uintptr, zTab uintptr, p uintptr) int32 // pointing to the prepared version of the SQL statement. func sessionSelectRow(tls *libc.TLS, db uintptr, zTab uintptr, p uintptr) int32 { /* sqlite3.c:210625:12: */ return sessionSelectStmt(tls, - db, ts+8566 /* "main" */, zTab, (*SessionApplyCtx)(unsafe.Pointer(p)).FnCol, (*SessionApplyCtx)(unsafe.Pointer(p)).FazCol, (*SessionApplyCtx)(unsafe.Pointer(p)).FabPK, (p + 12 /* &.pSelect */)) + db, ts+8576 /* "main" */, zTab, (*SessionApplyCtx)(unsafe.Pointer(p)).FnCol, (*SessionApplyCtx)(unsafe.Pointer(p)).FazCol, (*SessionApplyCtx)(unsafe.Pointer(p)).FabPK, (p + 12 /* &.pSelect */)) } // Formulate and prepare an INSERT statement to add a record to table zTab. @@ -171068,21 +171856,21 @@ func sessionInsertRow(tls *libc.TLS, db uintptr, zTab uintptr, p uintptr) int32 var i int32 *(*SessionBuffer)(unsafe.Pointer(bp /* buf */)) = SessionBuffer{} - sessionAppendStr(tls, bp /* &buf */, ts+37988 /* "INSERT INTO main..." */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+37998 /* "INSERT INTO main..." */, bp+12 /* &rc */) sessionAppendIdent(tls, bp /* &buf */, zTab, bp+12 /* &rc */) - sessionAppendStr(tls, bp /* &buf */, ts+24079 /* "(" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+24089 /* "(" */, bp+12 /* &rc */) for i = 0; i < (*SessionApplyCtx)(unsafe.Pointer(p)).FnCol; i++ { if i != 0 { - sessionAppendStr(tls, bp /* &buf */, ts+16636 /* ", " */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+16646 /* ", " */, bp+12 /* &rc */) } sessionAppendIdent(tls, bp /* &buf */, *(*uintptr)(unsafe.Pointer((*SessionApplyCtx)(unsafe.Pointer(p)).FazCol + uintptr(i)*4)), bp+12 /* &rc */) } - sessionAppendStr(tls, bp /* &buf */, ts+38006 /* ") VALUES(?" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+38016 /* ") VALUES(?" */, bp+12 /* &rc */) for i = 1; i < (*SessionApplyCtx)(unsafe.Pointer(p)).FnCol; i++ { - sessionAppendStr(tls, bp /* &buf */, ts+38017 /* ", ?" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+38027 /* ", ?" */, bp+12 /* &rc */) } - sessionAppendStr(tls, bp /* &buf */, ts+6887 /* ")" */, bp+12 /* &rc */) + sessionAppendStr(tls, bp /* &buf */, ts+6897 /* ")" */, bp+12 /* &rc */) if *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) == SQLITE_OK { *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = Xsqlite3_prepare_v2(tls, db, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf, (p + 8 /* &.pInsert */), uintptr(0)) @@ -171100,16 +171888,16 @@ func sessionPrepare(tls *libc.TLS, db uintptr, pp uintptr, zSql uintptr) int32 { // sessionInsertRow(), sessionUpdateRow() and sessionDeleteRow() for // other tables. func sessionStat1Sql(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:210683:12: */ - var rc int32 = sessionSelectRow(tls, db, ts+13346 /* "sqlite_stat1" */, p) + var rc int32 = sessionSelectRow(tls, db, ts+13356 /* "sqlite_stat1" */, p) if rc == SQLITE_OK { rc = sessionPrepare(tls, db, (p + 8 /* &.pInsert */), - ts+38021 /* "INSERT INTO main..." */) + ts+38031 /* "INSERT INTO main..." */) } if rc == SQLITE_OK { rc = sessionPrepare(tls, db, (p + 4 /* &.pDelete */), - ts+38134 /* "DELETE FROM main..." */) + ts+38144 /* "DELETE FROM main..." */) } return rc } @@ -171159,7 +171947,9 @@ func sessionBindRow(tls *libc.TLS, pIter uintptr, xValue uintptr, nCol int32, ab if !(abPK != 0) || (*(*U8)(unsafe.Pointer(abPK + uintptr(i))) != 0) { // var pVal uintptr at bp, 4 - (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(&xValue)))(tls, pIter, i, bp /* &pVal */) + (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xValue})).f(tls, pIter, i, bp /* &pVal */) if *(*uintptr)(unsafe.Pointer(bp /* pVal */)) == uintptr(0) { // The value in the changeset was "undefined". This indicates a // corrupt changeset blob. @@ -171328,7 +172118,9 @@ func sessionConflictHandler(tls *libc.TLS, eType int32, p uintptr, pIter uintptr if *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) == SQLITE_ROW { // There exists another row with the new.* primary key. (*Sqlite3_changeset_iter)(unsafe.Pointer(pIter)).FpConflict = (*SessionApplyCtx)(unsafe.Pointer(p)).FpSelect - res = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(&xConflict)))(tls, pCtx, eType, pIter) + res = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xConflict})).f(tls, pCtx, eType, pIter) (*Sqlite3_changeset_iter)(unsafe.Pointer(pIter)).FpConflict = uintptr(0) *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = Xsqlite3_reset(tls, (*SessionApplyCtx)(unsafe.Pointer(p)).FpSelect) } else if *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) == SQLITE_OK { @@ -171341,7 +172133,9 @@ func sessionConflictHandler(tls *libc.TLS, eType int32, p uintptr, pIter uintptr return SQLITE_OK } else { // No other row with the new.* primary key. - res = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(&xConflict)))(tls, pCtx, (eType + 1), pIter) + res = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xConflict})).f(tls, pCtx, (eType + 1), pIter) if res == SQLITE_CHANGESET_REPLACE { *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = SQLITE_MISUSE } @@ -171556,7 +172350,7 @@ func sessionApplyOneWithRetry(tls *libc.TLS, db uintptr, pIter uintptr, pApply u rc = sessionApplyOneOp(tls, pIter, pApply, xConflict, pCtx, uintptr(0), uintptr(0)) } else if *(*int32)(unsafe.Pointer(bp /* bReplace */)) != 0 { - rc = Xsqlite3_exec(tls, db, ts+38278 /* "SAVEPOINT replac..." */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, db, ts+38288 /* "SAVEPOINT replac..." */, uintptr(0), uintptr(0), uintptr(0)) if rc == SQLITE_OK { rc = sessionBindRow(tls, pIter, *(*uintptr)(unsafe.Pointer(&struct { @@ -171572,7 +172366,7 @@ func sessionApplyOneWithRetry(tls *libc.TLS, db uintptr, pIter uintptr, pApply u rc = sessionApplyOneOp(tls, pIter, pApply, xConflict, pCtx, uintptr(0), uintptr(0)) } if rc == SQLITE_OK { - rc = Xsqlite3_exec(tls, db, ts+38299 /* "RELEASE replace_..." */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, db, ts+38309 /* "RELEASE replace_..." */, uintptr(0), uintptr(0), uintptr(0)) } } } @@ -171653,10 +172447,10 @@ func sessionChangesetApply(tls *libc.TLS, db uintptr, pIter uintptr, xFilter uin (*SessionApplyCtx)(unsafe.Pointer(bp + 48 /* &sApply */)).FbInvertConstraints = libc.BoolInt32(!(!((flags & SQLITE_CHANGESETAPPLY_INVERT) != 0))) Xsqlite3_mutex_enter(tls, Xsqlite3_db_mutex(tls, db)) if (flags & SQLITE_CHANGESETAPPLY_NOSAVEPOINT) == 0 { - rc = Xsqlite3_exec(tls, db, ts+38318 /* "SAVEPOINT change..." */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, db, ts+38328 /* "SAVEPOINT change..." */, uintptr(0), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { - rc = Xsqlite3_exec(tls, db, ts+38344 /* "PRAGMA defer_for..." */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, db, ts+38354 /* "PRAGMA defer_for..." */, uintptr(0), uintptr(0), uintptr(0)) } for (rc == SQLITE_OK) && (SQLITE_ROW == Xsqlite3changeset_next(tls, pIter)) { // var nCol int32 at bp+128, 4 @@ -171696,9 +172490,11 @@ func sessionChangesetApply(tls *libc.TLS, db uintptr, pIter uintptr, xFilter uin // If an xFilter() callback was specified, invoke it now. If the // xFilter callback returns zero, skip this table. If it returns // non-zero, proceed. - schemaMismatch = (libc.Bool32((xFilter != 0) && (0 == (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(&xFilter)))(tls, pCtx, *(*uintptr)(unsafe.Pointer(bp + 124 /* zNew */)))))) + schemaMismatch = (libc.Bool32((xFilter != 0) && (0 == (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xFilter})).f(tls, pCtx, *(*uintptr)(unsafe.Pointer(bp + 124 /* zNew */)))))) if schemaMismatch != 0 { - *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 124 /* zNew */)))) + *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 124 /* zNew */)))) if *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)) == uintptr(0) { rc = SQLITE_NOMEM break @@ -171711,7 +172507,7 @@ func sessionChangesetApply(tls *libc.TLS, db uintptr, pIter uintptr, xFilter uin Xsqlite3changeset_pk(tls, pIter, bp+136 /* &abPK */, uintptr(0)) rc = sessionTableInfo(tls, uintptr(0), - db, ts+8566 /* "main" */, *(*uintptr)(unsafe.Pointer(bp + 124 /* zNew */)), (bp + 48 /* &sApply */ + 16 /* &.nCol */), bp+140 /* &zTab */, (bp + 48 /* &sApply */ + 20 /* &.azCol */), (bp + 48 /* &sApply */ + 24 /* &.abPK */)) + db, ts+8576 /* "main" */, *(*uintptr)(unsafe.Pointer(bp + 124 /* zNew */)), (bp + 48 /* &sApply */ + 16 /* &.nCol */), bp+140 /* &zTab */, (bp + 48 /* &sApply */ + 20 /* &.azCol */), (bp + 48 /* &sApply */ + 24 /* &.abPK */)) if rc != SQLITE_OK { break } @@ -171724,20 +172520,20 @@ func sessionChangesetApply(tls *libc.TLS, db uintptr, pIter uintptr, xFilter uin if (*SessionApplyCtx)(unsafe.Pointer(bp+48 /* &sApply */)).FnCol == 0 { schemaMismatch = 1 Xsqlite3_log(tls, SQLITE_SCHEMA, - ts+38374 /* "sqlite3changeset..." */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)))) + ts+38384 /* "sqlite3changeset..." */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)))) } else if (*SessionApplyCtx)(unsafe.Pointer(bp+48 /* &sApply */)).FnCol < *(*int32)(unsafe.Pointer(bp + 128 /* nCol */)) { schemaMismatch = 1 Xsqlite3_log(tls, SQLITE_SCHEMA, - ts+38418, /* "sqlite3changeset..." */ + ts+38428, /* "sqlite3changeset..." */ libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)), (*SessionApplyCtx)(unsafe.Pointer(bp+48 /* &sApply */)).FnCol, *(*int32)(unsafe.Pointer(bp + 128 /* nCol */)))) } else if (*(*int32)(unsafe.Pointer(bp + 128 /* nCol */)) < nMinCol) || (libc.Xmemcmp(tls, (*SessionApplyCtx)(unsafe.Pointer(bp+48 /* &sApply */)).FabPK, *(*uintptr)(unsafe.Pointer(bp + 136 /* abPK */)), uint32(*(*int32)(unsafe.Pointer(bp + 128 /* nCol */)))) != 0) { schemaMismatch = 1 Xsqlite3_log(tls, SQLITE_SCHEMA, - ts+38489 /* "sqlite3changeset..." */, libc.VaList(bp+40, *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)))) + ts+38499 /* "sqlite3changeset..." */, libc.VaList(bp+40, *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)))) } else { (*SessionApplyCtx)(unsafe.Pointer(bp + 48 /* &sApply */)).FnCol = *(*int32)(unsafe.Pointer(bp + 128 /* nCol */)) - if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)), ts+13346 /* "sqlite_stat1" */) { + if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(bp + 140 /* zTab */)), ts+13356 /* "sqlite_stat1" */) { if libc.AssignInt32(&rc, sessionStat1Sql(tls, db, bp+48 /* &sApply */)) != 0 { break } @@ -171787,20 +172583,22 @@ func sessionChangesetApply(tls *libc.TLS, db uintptr, pIter uintptr, xFilter uin libc.Xmemset(tls, bp+152 /* &sIter */, 0, uint32(unsafe.Sizeof(Sqlite3_changeset_iter{}))) (*Sqlite3_changeset_iter)(unsafe.Pointer(bp + 152 /* &sIter */)).FnCol = *(*int32)(unsafe.Pointer(bp + 144 /* nFk */)) - res = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(&xConflict)))(tls, pCtx, SQLITE_CHANGESET_FOREIGN_KEY, bp+152 /* &sIter */) + res = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xConflict})).f(tls, pCtx, SQLITE_CHANGESET_FOREIGN_KEY, bp+152 /* &sIter */) if res != SQLITE_CHANGESET_OMIT { rc = SQLITE_CONSTRAINT } } } - Xsqlite3_exec(tls, db, ts+38549 /* "PRAGMA defer_for..." */, uintptr(0), uintptr(0), uintptr(0)) + Xsqlite3_exec(tls, db, ts+38559 /* "PRAGMA defer_for..." */, uintptr(0), uintptr(0), uintptr(0)) if (flags & SQLITE_CHANGESETAPPLY_NOSAVEPOINT) == 0 { if rc == SQLITE_OK { - rc = Xsqlite3_exec(tls, db, ts+38579 /* "RELEASE changese..." */, uintptr(0), uintptr(0), uintptr(0)) + rc = Xsqlite3_exec(tls, db, ts+38589 /* "RELEASE changese..." */, uintptr(0), uintptr(0), uintptr(0)) } else { - Xsqlite3_exec(tls, db, ts+38603 /* "ROLLBACK TO chan..." */, uintptr(0), uintptr(0), uintptr(0)) - Xsqlite3_exec(tls, db, ts+38579 /* "RELEASE changese..." */, uintptr(0), uintptr(0), uintptr(0)) + Xsqlite3_exec(tls, db, ts+38613 /* "ROLLBACK TO chan..." */, uintptr(0), uintptr(0), uintptr(0)) + Xsqlite3_exec(tls, db, ts+38589 /* "RELEASE changese..." */, uintptr(0), uintptr(0), uintptr(0)) } } @@ -172198,7 +172996,9 @@ func sessionChangegroupOutput(tls *libc.TLS, pGrp uintptr, xOutput uintptr, pOut sessionAppendByte(tls, bp /* &buf */, (*SessionChange)(unsafe.Pointer(p)).FbIndirect, bp+12 /* &rc */) sessionAppendBlob(tls, bp /* &buf */, (*SessionChange)(unsafe.Pointer(p)).FaRecord, (*SessionChange)(unsafe.Pointer(p)).FnRecord, bp+12 /* &rc */) if ((*(*int32)(unsafe.Pointer(bp + 12 /* rc */)) == SQLITE_OK) && (xOutput != 0)) && ((*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf >= sessions_strm_chunk_size) { - *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf) (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf = 0 } } @@ -172208,7 +173008,9 @@ func sessionChangegroupOutput(tls *libc.TLS, pGrp uintptr, xOutput uintptr, pOut if *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) == SQLITE_OK { if xOutput != 0 { if (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf > 0 { - *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 12 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FnBuf) } } else { *(*uintptr)(unsafe.Pointer(ppOut)) = (*SessionBuffer)(unsafe.Pointer(bp /* &buf */)).FaBuf @@ -172549,7 +173351,9 @@ func sessionRebase(tls *libc.TLS, p uintptr, pIter uintptr, xOutput uintptr, pOu sessionAppendBlob(tls, bp+12 /* &sOut */, *(*uintptr)(unsafe.Pointer(bp /* aRec */)), *(*int32)(unsafe.Pointer(bp + 4 /* nRec */)), bp+24 /* &rc */) } if ((*(*int32)(unsafe.Pointer(bp + 24 /* rc */)) == SQLITE_OK) && (xOutput != 0)) && ((*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FnBuf > sessions_strm_chunk_size) { - *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FnBuf) (*SessionBuffer)(unsafe.Pointer(bp + 12 /* &sOut */)).FnBuf = 0 } if *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) != 0 { @@ -172565,7 +173369,9 @@ func sessionRebase(tls *libc.TLS, p uintptr, pIter uintptr, xOutput uintptr, pOu if *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) == SQLITE_OK { if xOutput != 0 { if (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FnBuf > 0 { - *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&xOutput)))(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FnBuf) + *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xOutput})).f(tls, pOut, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FaBuf, (*SessionBuffer)(unsafe.Pointer(bp+12 /* &sOut */)).FnBuf) } } else { *(*uintptr)(unsafe.Pointer(ppOut)) = (*SessionBuffer)(unsafe.Pointer(bp + 12 /* &sOut */)).FaBuf @@ -172875,13 +173681,13 @@ type Fts5Buffer1 = struct { type Fts5Buffer = Fts5Buffer1 /* sqlite3.c:213265:27 */ type Fts5PoslistReader1 = struct { - Fa uintptr - Fn int32 - Fi int32 - FbFlag U8 - FbEof U8 - _ [2]byte - FiPos I64 + Fa uintptr + Fn int32 + Fi int32 + FbFlag U8 + FbEof U8 + F__ccgo_pad1 [2]byte + FiPos I64 } /* sqlite3.c:213118:9 */ type Fts5PoslistReader = Fts5PoslistReader1 /* sqlite3.c:213301:34 */ @@ -172937,11 +173743,11 @@ type Fts5Index1 = struct { type Fts5Index = Fts5Index1 /* sqlite3.c:213356:26 */ type Fts5IndexIter1 = struct { - FiRowid I64 - FpData uintptr - FnData int32 - FbEof U8 - _ [3]byte + FiRowid I64 + FpData uintptr + FnData int32 + FbEof U8 + F__ccgo_pad1 [3]byte } /* sqlite3.c:213118:9 */ type Fts5IndexIter = Fts5IndexIter1 /* sqlite3.c:213357:30 */ @@ -173343,10 +174149,10 @@ var fts5yy_default = [35]uint8{ // actually contains the reduce action for the second half of the // SHIFTREDUCE. type fts5yyStackEntry = struct { - Fstateno uint8 - Fmajor uint8 - _ [2]byte - Fminor Fts5YYMINORTYPE + Fstateno uint8 + Fmajor uint8 + F__ccgo_pad1 [2]byte + Fminor Fts5YYMINORTYPE } /* sqlite3.c:214190:1 */ type Fts5yyStackEntry = fts5yyStackEntry /* sqlite3.c:214197:33 */ @@ -173389,7 +174195,7 @@ func sqlite3Fts5ParserInit(tls *libc.TLS, fts5yypRawParser uintptr) { /* sqlite3 // to sqlite3Fts5Parser and sqlite3Fts5ParserFree. func sqlite3Fts5ParserAlloc(tls *libc.TLS, mallocProc uintptr) uintptr { /* sqlite3.c:214408:13: */ var fts5yypParser uintptr - fts5yypParser = (*(*func(*libc.TLS, U64) uintptr)(unsafe.Pointer(&mallocProc)))(tls, U64(unsafe.Sizeof(Fts5yyParser{}))) + fts5yypParser = (*struct{ f func(*libc.TLS, U64) uintptr })(unsafe.Pointer(&struct{ uintptr }{mallocProc})).f(tls, U64(unsafe.Sizeof(Fts5yyParser{}))) if fts5yypParser != 0 { sqlite3Fts5ParserInit(tls, fts5yypParser) @@ -173487,7 +174293,7 @@ func sqlite3Fts5ParserFree(tls *libc.TLS, p uintptr, freeProc uintptr) { /* sqli return } sqlite3Fts5ParserFinalize(tls, p) - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&freeProc)))(tls, p) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{freeProc})).f(tls, p) } // Return the peak depth of the stack for a parser. @@ -173551,7 +174357,7 @@ func fts5yyStackOverflow(tls *libc.TLS, fts5yypParser uintptr) { /* sqlite3.c:21 // stack every overflows //******* Begin %stack_overflow code ***************************************** - sqlite3Fts5ParseError(tls, pParse, ts+38631 /* "fts5: parser sta..." */, 0) + sqlite3Fts5ParseError(tls, pParse, ts+38641 /* "fts5: parser sta..." */, 0) //******* End %stack_overflow code ******************************************* (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).FpParse = pParse // Suppress warning about unused %extra_argument var @@ -173874,7 +174680,7 @@ func fts5yy_syntax_error(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor int32 _ = fts5yymajor // Silence a compiler warning sqlite3Fts5ParseError(tls, - pParse, ts+38659 /* "fts5: syntax err..." */, libc.VaList(bp, fts5yyminor.Fn, fts5yyminor.Fp)) + pParse, ts+38669 /* "fts5: syntax err..." */, libc.VaList(bp, fts5yyminor.Fn, fts5yyminor.Fp)) //*********** End %syntax_error code ***************************************** (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).FpParse = pParse // Suppress warning about unused %extra_argument variable @@ -173983,7 +174789,7 @@ func sqlite3Fts5ParserFallback(tls *libc.TLS, iToken int32) int32 { /* sqlite3.c // #include "fts5Int.h" // Declarations for math functions. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -173998,7 +174804,7 @@ func sqlite3Fts5ParserFallback(tls *libc.TLS, iToken int32) int32 { /* sqlite3.c // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.12 Mathematics @@ -174042,7 +174848,7 @@ type CInstIter1 = struct { // #include "fts5Int.h" // Declarations for math functions. -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -174057,7 +174863,7 @@ type CInstIter1 = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard: 7.12 Mathematics @@ -174097,10 +174903,14 @@ func fts5CInstIterNext(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:215400 // var io int32 at bp+8, 4 - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(((*CInstIter)(unsafe.Pointer(pIter)).FpApi + 36 /* &.xInst */))))(tls, (*CInstIter)(unsafe.Pointer(pIter)).FpFts, (*CInstIter)(unsafe.Pointer(pIter)).FiInst, bp /* &ip */, bp+4 /* &ic */, bp+8 /* &io */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*CInstIter)(unsafe.Pointer(pIter)).FpApi)).FxInst})).f(tls, (*CInstIter)(unsafe.Pointer(pIter)).FpFts, (*CInstIter)(unsafe.Pointer(pIter)).FiInst, bp /* &ip */, bp+4 /* &ic */, bp+8 /* &io */) if rc == SQLITE_OK { if *(*int32)(unsafe.Pointer(bp + 4 /* ic */)) == (*CInstIter)(unsafe.Pointer(pIter)).FiCol { - var iEnd int32 = ((*(*int32)(unsafe.Pointer(bp + 8 /* io */)) - 1) + (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*CInstIter)(unsafe.Pointer(pIter)).FpApi + 28 /* &.xPhraseSize */))))(tls, (*CInstIter)(unsafe.Pointer(pIter)).FpFts, *(*int32)(unsafe.Pointer(bp /* ip */)))) + var iEnd int32 = ((*(*int32)(unsafe.Pointer(bp + 8 /* io */)) - 1) + (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer((*CInstIter)(unsafe.Pointer(pIter)).FpApi)).FxPhraseSize})).f(tls, (*CInstIter)(unsafe.Pointer(pIter)).FpFts, *(*int32)(unsafe.Pointer(bp /* ip */)))) if (*CInstIter)(unsafe.Pointer(pIter)).FiStart < 0 { (*CInstIter)(unsafe.Pointer(pIter)).FiStart = *(*int32)(unsafe.Pointer(bp + 8 /* io */)) (*CInstIter)(unsafe.Pointer(pIter)).FiEnd = iEnd @@ -174128,7 +174938,9 @@ func fts5CInstIterInit(tls *libc.TLS, pApi uintptr, pFts uintptr, iCol int32, pI (*CInstIter)(unsafe.Pointer(pIter)).FpApi = pApi (*CInstIter)(unsafe.Pointer(pIter)).FpFts = pFts (*CInstIter)(unsafe.Pointer(pIter)).FiCol = iCol - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 32 /* &.xInstCount */))))(tls, pFts, (pIter + 16 /* &.nInst */)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInstCount})).f(tls, pFts, (pIter + 16 /* &.nInst */)) if rc == SQLITE_OK { rc = fts5CInstIterNext(tls, pIter) @@ -174173,7 +174985,7 @@ func fts5HighlightAppend(tls *libc.TLS, pRc uintptr, p uintptr, z uintptr, n int if n < 0 { n = int32(libc.Xstrlen(tls, z)) } - (*HighlightContext)(unsafe.Pointer(p)).FzOut = Xsqlite3_mprintf(tls, ts+38690 /* "%z%.*s" */, libc.VaList(bp, (*HighlightContext)(unsafe.Pointer(p)).FzOut, n, z)) + (*HighlightContext)(unsafe.Pointer(p)).FzOut = Xsqlite3_mprintf(tls, ts+38700 /* "%z%.*s" */, libc.VaList(bp, (*HighlightContext)(unsafe.Pointer(p)).FzOut, n, z)) if (*HighlightContext)(unsafe.Pointer(p)).FzOut == uintptr(0) { *(*int32)(unsafe.Pointer(pRc)) = SQLITE_NOMEM } @@ -174247,7 +175059,7 @@ func fts5HighlightFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintp var iCol int32 if nVal != 3 { - var zErr uintptr = ts + 38697 /* "wrong number of ..." */ + var zErr uintptr = ts + 38707 /* "wrong number of ..." */ Xsqlite3_result_error(tls, pCtx, zErr, -1) return } @@ -174256,7 +175068,9 @@ func fts5HighlightFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintp libc.Xmemset(tls, bp /* &ctx */, 0, uint32(unsafe.Sizeof(HighlightContext{}))) (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzOpen = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apVal + 1*4))) (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzClose = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apVal + 2*4))) - *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 44 /* &.xColumnText */))))(tls, pFts, iCol, (bp /* &ctx */ + 48 /* &.zIn */), (bp /* &ctx */ + 52 /* &.nIn */)) + *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnText})).f(tls, pFts, iCol, (bp /* &ctx */ + 48 /* &.zIn */), (bp /* &ctx */ + 52 /* &.nIn */)) if (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzIn != 0 { if *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) == SQLITE_OK { @@ -174264,7 +175078,9 @@ func fts5HighlightFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintp } if *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) == SQLITE_OK { - *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 20 /* &.xTokenize */))))(tls, pFts, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzIn, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FnIn, bp /* &ctx */, *(*uintptr)(unsafe.Pointer(&struct { + *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxTokenize})).f(tls, pFts, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzIn, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FnIn, bp /* &ctx */, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 }{fts5HighlightCb}))) } @@ -174372,9 +175188,13 @@ func fts5SnippetScore(tls *libc.TLS, pApi uintptr, pFts uintptr, nDocsize int32, var iLast int32 = 0 var iEnd Sqlite3_int64 = (Sqlite3_int64(iPos) + Sqlite3_int64(nToken)) - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 32 /* &.xInstCount */))))(tls, pFts, bp /* &nInst */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInstCount})).f(tls, pFts, bp /* &nInst */) for i = 0; (i < *(*int32)(unsafe.Pointer(bp /* nInst */))) && (rc == SQLITE_OK); i++ { - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 36 /* &.xInst */))))(tls, pFts, i, bp+4 /* &ip */, bp+8 /* &ic */, bp+12 /* &iOff */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInst})).f(tls, pFts, i, bp+4 /* &ip */, bp+8 /* &ic */, bp+12 /* &iOff */) if (((rc == SQLITE_OK) && (*(*int32)(unsafe.Pointer(bp + 8 /* ic */)) == iCol)) && (*(*int32)(unsafe.Pointer(bp + 12 /* iOff */)) >= iPos)) && (Sqlite3_int64(*(*int32)(unsafe.Pointer(bp + 12 /* iOff */))) < iEnd) { nScore = nScore + (func() int32 { if *(*uint8)(unsafe.Pointer(aSeen + uintptr(*(*int32)(unsafe.Pointer(bp + 4 /* ip */))))) != 0 { @@ -174386,7 +175206,9 @@ func fts5SnippetScore(tls *libc.TLS, pApi uintptr, pFts uintptr, nDocsize int32, if iFirst < 0 { iFirst = *(*int32)(unsafe.Pointer(bp + 12 /* iOff */)) } - iLast = (*(*int32)(unsafe.Pointer(bp + 12 /* iOff */)) + (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pApi + 28 /* &.xPhraseSize */))))(tls, pFts, *(*int32)(unsafe.Pointer(bp + 4 /* ip */)))) + iLast = (*(*int32)(unsafe.Pointer(bp + 12 /* iOff */)) + (*struct { + f func(*libc.TLS, uintptr, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseSize})).f(tls, pFts, *(*int32)(unsafe.Pointer(bp + 4 /* ip */)))) } } @@ -174413,7 +175235,7 @@ func fts5ValueToText(tls *libc.TLS, pVal uintptr) uintptr { /* sqlite3.c:215713: if zRet != 0 { return zRet } - return ts + 915 /* "" */ + return ts + 925 /* "" */ } // Implementation of snippet() function. @@ -174440,12 +175262,14 @@ func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr var nCol int32 if nVal != 5 { - var zErr uintptr = ts + 38747 /* "wrong number of ..." */ + var zErr uintptr = ts + 38757 /* "wrong number of ..." */ Xsqlite3_result_error(tls, pCtx, zErr, -1) return } - nCol = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pApi + 8 /* &.xColumnCount */))))(tls, pFts) + nCol = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnCount})).f(tls, pFts) libc.Xmemset(tls, bp /* &ctx */, 0, uint32(unsafe.Sizeof(HighlightContext{}))) iCol = Xsqlite3_value_int(tls, *(*uintptr)(unsafe.Pointer(apVal))) (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzOpen = fts5ValueToText(tls, *(*uintptr)(unsafe.Pointer(apVal + 1*4))) @@ -174459,13 +175283,17 @@ func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr } return 0 }() - nPhrase = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pApi + 24 /* &.xPhraseCount */))))(tls, pFts) + nPhrase = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseCount})).f(tls, pFts) aSeen = Xsqlite3_malloc(tls, nPhrase) if aSeen == uintptr(0) { *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = SQLITE_NOMEM } if *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) == SQLITE_OK { - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 32 /* &.xInstCount */))))(tls, pFts, bp+64 /* &nInst */) + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInstCount})).f(tls, pFts, bp+64 /* &nInst */) } libc.Xmemset(tls, bp+68 /* &sFinder */, 0, uint32(unsafe.Sizeof(Fts5SFinder{}))) @@ -174478,18 +175306,24 @@ func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr var ii int32 (*Fts5SFinder)(unsafe.Pointer(bp + 68 /* &sFinder */)).FiPos = 0 (*Fts5SFinder)(unsafe.Pointer(bp + 68 /* &sFinder */)).FnFirst = 0 - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 44 /* &.xColumnText */))))(tls, pFts, i, (bp + 68 /* &sFinder */ + 16 /* &.zDoc */), bp+88 /* &nDoc */) + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnText})).f(tls, pFts, i, (bp + 68 /* &sFinder */ + 16 /* &.zDoc */), bp+88 /* &nDoc */) if *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) != SQLITE_OK { break } - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 20 /* &.xTokenize */))))(tls, pFts, + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxTokenize})).f(tls, pFts, (*Fts5SFinder)(unsafe.Pointer(bp+68 /* &sFinder */)).FzDoc, *(*int32)(unsafe.Pointer(bp + 88 /* nDoc */)), bp+68 /* &sFinder */, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 }{fts5SentenceFinderCb}))) if *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) != SQLITE_OK { break } - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pApi + 48 /* &.xColumnSize */))))(tls, pFts, i, bp+92 /* &nDocsize */) + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnSize})).f(tls, pFts, i, bp+92 /* &nDocsize */) if *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) != SQLITE_OK { break } @@ -174507,7 +175341,9 @@ func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr var jj int32 - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 36 /* &.xInst */))))(tls, pFts, ii, bp+96 /* &ip */, bp+100 /* &ic */, bp+104 /* &io */) + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInst})).f(tls, pFts, ii, bp+96 /* &ip */, bp+100 /* &ic */, bp+104 /* &io */) if *(*int32)(unsafe.Pointer(bp + 100 /* ic */)) != i { continue } @@ -174558,10 +175394,14 @@ func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr } if *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) == SQLITE_OK { - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 44 /* &.xColumnText */))))(tls, pFts, iBestCol, (bp /* &ctx */ + 48 /* &.zIn */), (bp /* &ctx */ + 52 /* &.nIn */)) + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnText})).f(tls, pFts, iBestCol, (bp /* &ctx */ + 48 /* &.zIn */), (bp /* &ctx */ + 52 /* &.nIn */)) } if (*(*int32)(unsafe.Pointer(bp + 120 /* rc */)) == SQLITE_OK) && (*(*int32)(unsafe.Pointer(bp + 116 /* nColSize */)) == 0) { - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pApi + 48 /* &.xColumnSize */))))(tls, pFts, iBestCol, bp+116 /* &nColSize */) + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnSize})).f(tls, pFts, iBestCol, bp+116 /* &nColSize */) } if (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzIn != 0 { if *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) == SQLITE_OK { @@ -174582,7 +175422,9 @@ func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr } if *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) == SQLITE_OK { - *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 20 /* &.xTokenize */))))(tls, pFts, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzIn, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FnIn, bp /* &ctx */, *(*uintptr)(unsafe.Pointer(&struct { + *(*int32)(unsafe.Pointer(bp + 120 /* rc */)) = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxTokenize})).f(tls, pFts, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FzIn, (*HighlightContext)(unsafe.Pointer(bp /* &ctx */)).FnIn, bp /* &ctx */, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 }{fts5HighlightCb}))) } @@ -174639,7 +175481,9 @@ func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) var rc int32 = SQLITE_OK // Return code var p uintptr // Object to return - p = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer((pApi + 60 /* &.xGetAuxdata */))))(tls, pFts, 0) + p = (*struct { + f func(*libc.TLS, uintptr, int32) uintptr + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxGetAuxdata})).f(tls, pFts, 0) if p == uintptr(0) { var nPhrase int32 // Number of phrases in query *(*Sqlite3_int64)(unsafe.Pointer(bp /* nRow */)) = int64(0) // Number of rows in table @@ -174648,7 +175492,9 @@ func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) var i int32 // Allocate the Fts5Bm25Data object - nPhrase = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer((pApi + 24 /* &.xPhraseCount */))))(tls, pFts) + nPhrase = (*struct { + f func(*libc.TLS, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxPhraseCount})).f(tls, pFts) nByte = (Sqlite3_int64(uint32(unsafe.Sizeof(Fts5Bm25Data{})) + ((uint32(nPhrase * 2)) * uint32(unsafe.Sizeof(float64(0)))))) p = Xsqlite3_malloc64(tls, uint64(nByte)) if p == uintptr(0) { @@ -174662,11 +175508,15 @@ func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) // Calculate the average document length for this FTS5 table if rc == SQLITE_OK { - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 12 /* &.xRowCount */))))(tls, pFts, bp /* &nRow */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxRowCount})).f(tls, pFts, bp /* &nRow */) } if rc == SQLITE_OK { - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pApi + 16 /* &.xColumnTotalSize */))))(tls, pFts, -1, bp+8 /* &nToken */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnTotalSize})).f(tls, pFts, -1, bp+8 /* &nToken */) } if rc == SQLITE_OK { (*Fts5Bm25Data)(unsafe.Pointer(p)).Favgdl = (float64(*(*Sqlite3_int64)(unsafe.Pointer(bp + 8 /* nToken */))) / float64(*(*Sqlite3_int64)(unsafe.Pointer(bp /* nRow */)))) @@ -174675,7 +175525,9 @@ func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) // Calculate an IDF for each phrase in the query for i = 0; (rc == SQLITE_OK) && (i < nPhrase); i++ { *(*Sqlite3_int64)(unsafe.Pointer(bp + 16 /* nHit */)) = int64(0) - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 52 /* &.xQueryPhrase */))))(tls, pFts, i, bp+16 /* &nHit */, *(*uintptr)(unsafe.Pointer(&struct { + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxQueryPhrase})).f(tls, pFts, i, bp+16 /* &nHit */, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr) int32 }{fts5CountCb}))) if rc == SQLITE_OK { @@ -174703,7 +175555,9 @@ func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) if rc != SQLITE_OK { Xsqlite3_free(tls, p) } else { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 56 /* &.xSetAuxdata */))))(tls, pFts, p, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3_free}))) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxSetAuxdata})).f(tls, pFts, p, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3_free}))) } if rc != SQLITE_OK { p = uintptr(0) @@ -174735,7 +175589,9 @@ func fts5Bm25Function(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, n if rc == SQLITE_OK { aFreq = (*Fts5Bm25Data)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pData */)))).FaFreq libc.Xmemset(tls, aFreq, 0, (uint32(unsafe.Sizeof(float64(0))) * uint32((*Fts5Bm25Data)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pData */)))).FnPhrase))) - rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 32 /* &.xInstCount */))))(tls, pFts, bp+4 /* &nInst */) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInstCount})).f(tls, pFts, bp+4 /* &nInst */) } for i = 0; (rc == SQLITE_OK) && (i < *(*int32)(unsafe.Pointer(bp + 4 /* nInst */))); i++ { // var ip int32 at bp+8, 4 @@ -174744,7 +175600,9 @@ func fts5Bm25Function(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, n // var io int32 at bp+16, 4 - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 36 /* &.xInst */))))(tls, pFts, i, bp+8 /* &ip */, bp+12 /* &ic */, bp+16 /* &io */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxInst})).f(tls, pFts, i, bp+8 /* &ip */, bp+12 /* &ic */, bp+16 /* &io */) if rc == SQLITE_OK { var w float64 if nVal > *(*int32)(unsafe.Pointer(bp + 12 /* ic */)) { @@ -174760,7 +175618,9 @@ func fts5Bm25Function(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, n if rc == SQLITE_OK { // var nTok int32 at bp+20, 4 - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pApi + 48 /* &.xColumnSize */))))(tls, pFts, -1, bp+20 /* &nTok */) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExtensionApi)(unsafe.Pointer(pApi)).FxColumnSize})).f(tls, pFts, -1, bp+20 /* &nTok */) D = float64(*(*int32)(unsafe.Pointer(bp + 20 /* nTok */))) } @@ -174781,13 +175641,13 @@ func sqlite3Fts5AuxInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c:216036 defer tls.Free(48) *(*[3]Builtin)(unsafe.Pointer(bp /* aBuiltin */)) = [3]Builtin{ - {FzFunc: ts + 38795 /* "snippet" */, FxFunc: *(*uintptr)(unsafe.Pointer(&struct { + {FzFunc: ts + 38805 /* "snippet" */, FxFunc: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) }{fts5SnippetFunction}))}, - {FzFunc: ts + 38803 /* "highlight" */, FxFunc: *(*uintptr)(unsafe.Pointer(&struct { + {FzFunc: ts + 38813 /* "highlight" */, FxFunc: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) }{fts5HighlightFunction}))}, - {FzFunc: ts + 38813 /* "bm25" */, FxFunc: *(*uintptr)(unsafe.Pointer(&struct { + {FzFunc: ts + 38823 /* "bm25" */, FxFunc: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) }{fts5Bm25Function}))}, } @@ -174795,7 +175655,9 @@ func sqlite3Fts5AuxInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c:216036 var i int32 // To iterate through builtin functions for i = 0; (rc == SQLITE_OK) && (i < (int32(uint32(unsafe.Sizeof([3]Builtin{})) / uint32(unsafe.Sizeof(Builtin{}))))); i++ { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, Fts5_extension_function, uintptr) int32)(unsafe.Pointer((pApi + 12 /* &.xCreateFunction */))))(tls, pApi, + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, Fts5_extension_function, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5_api)(unsafe.Pointer(pApi)).FxCreateFunction})).f(tls, pApi, (*Builtin)(unsafe.Pointer(bp /* &aBuiltin */ +uintptr(i)*16)).FzFunc, (*Builtin)(unsafe.Pointer(bp /* &aBuiltin */ +uintptr(i)*16)).FpUserData, (*Builtin)(unsafe.Pointer(bp /* &aBuiltin */ +uintptr(i)*16)).FxFunc, @@ -175281,7 +176143,7 @@ func fts5ConfigSkipLiteral(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:21 case 'n': fallthrough case 'N': - if Xsqlite3_strnicmp(tls, ts+8076 /* "null" */, p, 4) == 0 { + if Xsqlite3_strnicmp(tls, ts+8086 /* "null" */, p, 4) == 0 { p = (p + 4) } else { p = uintptr(0) @@ -175459,7 +176321,7 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_OK var nCmd int32 = int32(libc.Xstrlen(tls, zCmd)) - if Xsqlite3_strnicmp(tls, ts+38818 /* "prefix" */, zCmd, nCmd) == 0 { + if Xsqlite3_strnicmp(tls, ts+38828 /* "prefix" */, zCmd, nCmd) == 0 { var nByte int32 = (int32(uint32(unsafe.Sizeof(int32(0))) * uint32(FTS5_MAX_PREFIX_INDEXES))) var p uintptr var bFirst int32 = 1 @@ -175486,14 +176348,14 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm break } if (int32(*(*int8)(unsafe.Pointer(p))) < '0') || (int32(*(*int8)(unsafe.Pointer(p))) > '9') { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+38825 /* "malformed prefix..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+38835 /* "malformed prefix..." */, 0) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR break } if (*Fts5Config)(unsafe.Pointer(pConfig)).FnPrefix == FTS5_MAX_PREFIX_INDEXES { *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, - ts+38856 /* "too many prefix ..." */, libc.VaList(bp, FTS5_MAX_PREFIX_INDEXES)) + ts+38866 /* "too many prefix ..." */, libc.VaList(bp, FTS5_MAX_PREFIX_INDEXES)) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR break } @@ -175504,7 +176366,7 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm } if (nPre <= 0) || (nPre >= 1000) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+38889 /* "prefix length ou..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+38899 /* "prefix length ou..." */, 0) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR break } @@ -175517,7 +176379,7 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm return *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) } - if Xsqlite3_strnicmp(tls, ts+38926 /* "tokenize" */, zCmd, nCmd) == 0 { + if Xsqlite3_strnicmp(tls, ts+38936 /* "tokenize" */, zCmd, nCmd) == 0 { var p uintptr = zArg var nArg Sqlite3_int64 = (Sqlite3_int64(libc.Xstrlen(tls, zArg) + Size_t(1))) var azArg uintptr = sqlite3Fts5MallocZero(tls, bp+40 /* &rc */, (Sqlite3_int64(unsafe.Sizeof(uintptr(0))) * nArg)) @@ -175526,7 +176388,7 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm if (azArg != 0) && (pSpace != 0) { if (*Fts5Config)(unsafe.Pointer(pConfig)).FpTok != 0 { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+38935 /* "multiple tokeniz..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+38945 /* "multiple tokeniz..." */, 0) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR } else { for nArg = int64(0); (p != 0) && (*(*int8)(unsafe.Pointer(p)) != 0); nArg++ { @@ -175545,7 +176407,7 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm } } if p == uintptr(0) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+38968 /* "parse error in t..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+38978 /* "parse error in t..." */, 0) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR } else { *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = sqlite3Fts5GetTokenizer(tls, pGlobal, @@ -175560,14 +176422,14 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm return *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) } - if Xsqlite3_strnicmp(tls, ts+39002 /* "content" */, zCmd, nCmd) == 0 { + if Xsqlite3_strnicmp(tls, ts+39012 /* "content" */, zCmd, nCmd) == 0 { if (*Fts5Config)(unsafe.Pointer(pConfig)).FeContent != FTS5_CONTENT_NORMAL { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39010 /* "multiple content..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39020 /* "multiple content..." */, 0) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR } else { if *(*int8)(unsafe.Pointer(zArg)) != 0 { (*Fts5Config)(unsafe.Pointer(pConfig)).FeContent = FTS5_CONTENT_EXTERNAL - (*Fts5Config)(unsafe.Pointer(pConfig)).FzContent = sqlite3Fts5Mprintf(tls, bp+40 /* &rc */, ts+39042 /* "%Q.%Q" */, libc.VaList(bp+8, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, zArg)) + (*Fts5Config)(unsafe.Pointer(pConfig)).FzContent = sqlite3Fts5Mprintf(tls, bp+40 /* &rc */, ts+39052 /* "%Q.%Q" */, libc.VaList(bp+8, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, zArg)) } else { (*Fts5Config)(unsafe.Pointer(pConfig)).FeContent = FTS5_CONTENT_NONE } @@ -175575,9 +176437,9 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm return *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) } - if Xsqlite3_strnicmp(tls, ts+39048 /* "content_rowid" */, zCmd, nCmd) == 0 { + if Xsqlite3_strnicmp(tls, ts+39058 /* "content_rowid" */, zCmd, nCmd) == 0 { if (*Fts5Config)(unsafe.Pointer(pConfig)).FzContentRowid != 0 { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39062 /* "multiple content..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39072 /* "multiple content..." */, 0) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR } else { (*Fts5Config)(unsafe.Pointer(pConfig)).FzContentRowid = sqlite3Fts5Strndup(tls, bp+40 /* &rc */, zArg, -1) @@ -175585,9 +176447,9 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm return *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) } - if Xsqlite3_strnicmp(tls, ts+39100 /* "columnsize" */, zCmd, nCmd) == 0 { + if Xsqlite3_strnicmp(tls, ts+39110 /* "columnsize" */, zCmd, nCmd) == 0 { if ((int32(*(*int8)(unsafe.Pointer(zArg))) != '0') && (int32(*(*int8)(unsafe.Pointer(zArg))) != '1')) || (int32(*(*int8)(unsafe.Pointer(zArg + 1))) != 0) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39111 /* "malformed column..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39121 /* "malformed column..." */, 0) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR } else { (*Fts5Config)(unsafe.Pointer(pConfig)).FbColumnsize = (libc.Bool32(int32(*(*int8)(unsafe.Pointer(zArg))) == '1')) @@ -175595,21 +176457,21 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm return *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) } - if Xsqlite3_strnicmp(tls, ts+7007 /* "detail" */, zCmd, nCmd) == 0 { + if Xsqlite3_strnicmp(tls, ts+7017 /* "detail" */, zCmd, nCmd) == 0 { *(*[4]Fts5Enum)(unsafe.Pointer(bp + 44 /* aDetail */)) = [4]Fts5Enum{ - {FzName: ts + 19271 /* "none" */, FeVal: FTS5_DETAIL_NONE}, - {FzName: ts + 19276 /* "full" */}, - {FzName: ts + 39146 /* "columns" */, FeVal: FTS5_DETAIL_COLUMNS}, + {FzName: ts + 19281 /* "none" */, FeVal: FTS5_DETAIL_NONE}, + {FzName: ts + 19286 /* "full" */}, + {FzName: ts + 39156 /* "columns" */, FeVal: FTS5_DETAIL_COLUMNS}, {}, } if libc.AssignPtrInt32(bp+40 /* rc */, fts5ConfigSetEnum(tls, bp+44 /* &aDetail[0] */, zArg, (pConfig+48 /* &.eDetail */))) != 0 { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39154 /* "malformed detail..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39164 /* "malformed detail..." */, 0) } return *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) } - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39185 /* "unrecognized opt..." */, libc.VaList(bp+24, nCmd, zCmd)) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39195 /* "unrecognized opt..." */, libc.VaList(bp+24, nCmd, zCmd)) return SQLITE_ERROR } @@ -175673,15 +176535,15 @@ func fts5ConfigParseColumn(tls *libc.TLS, p uintptr, zCol uintptr, zArg uintptr, defer tls.Free(16) var rc int32 = SQLITE_OK - if (0 == Xsqlite3_stricmp(tls, zCol, ts+24864 /* "rank" */)) || - (0 == Xsqlite3_stricmp(tls, zCol, ts+10297 /* "rowid" */)) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39213 /* "reserved fts5 co..." */, libc.VaList(bp, zCol)) + if (0 == Xsqlite3_stricmp(tls, zCol, ts+24874 /* "rank" */)) || + (0 == Xsqlite3_stricmp(tls, zCol, ts+10307 /* "rowid" */)) { + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39223 /* "reserved fts5 co..." */, libc.VaList(bp, zCol)) rc = SQLITE_ERROR } else if zArg != 0 { - if 0 == Xsqlite3_stricmp(tls, zArg, ts+39243 /* "unindexed" */) { + if 0 == Xsqlite3_stricmp(tls, zArg, ts+39253 /* "unindexed" */) { *(*U8)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(p)).FabUnindexed + uintptr((*Fts5Config)(unsafe.Pointer(p)).FnCol))) = U8(1) } else { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39253 /* "unrecognized col..." */, libc.VaList(bp+8, zArg)) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39263 /* "unrecognized col..." */, libc.VaList(bp+8, zArg)) rc = SQLITE_ERROR } } @@ -175699,13 +176561,13 @@ func fts5ConfigMakeExprlist(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:21695 *(*int32)(unsafe.Pointer(bp + 24 /* rc */)) = SQLITE_OK *(*Fts5Buffer)(unsafe.Pointer(bp + 28 /* buf */)) = Fts5Buffer{} - sqlite3Fts5BufferAppendPrintf(tls, bp+24 /* &rc */, bp+28 /* &buf */, ts+39284 /* "T.%Q" */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(p)).FzContentRowid)) + sqlite3Fts5BufferAppendPrintf(tls, bp+24 /* &rc */, bp+28 /* &buf */, ts+39294 /* "T.%Q" */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(p)).FzContentRowid)) if (*Fts5Config)(unsafe.Pointer(p)).FeContent != FTS5_CONTENT_NONE { for i = 0; i < (*Fts5Config)(unsafe.Pointer(p)).FnCol; i++ { if (*Fts5Config)(unsafe.Pointer(p)).FeContent == FTS5_CONTENT_EXTERNAL { - sqlite3Fts5BufferAppendPrintf(tls, bp+24 /* &rc */, bp+28 /* &buf */, ts+39289 /* ", T.%Q" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(p)).FazCol + uintptr(i)*4)))) + sqlite3Fts5BufferAppendPrintf(tls, bp+24 /* &rc */, bp+28 /* &buf */, ts+39299 /* ", T.%Q" */, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(p)).FazCol + uintptr(i)*4)))) } else { - sqlite3Fts5BufferAppendPrintf(tls, bp+24 /* &rc */, bp+28 /* &buf */, ts+39296 /* ", T.c%d" */, libc.VaList(bp+16, i)) + sqlite3Fts5BufferAppendPrintf(tls, bp+24 /* &rc */, bp+28 /* &buf */, ts+39306 /* ", T.c%d" */, libc.VaList(bp+16, i)) } } } @@ -175753,8 +176615,8 @@ func sqlite3Fts5ConfigParse(tls *libc.TLS, pGlobal uintptr, db uintptr, nArg int (*Fts5Config)(unsafe.Pointer(pRet)).FzName = sqlite3Fts5Strndup(tls, bp+40 /* &rc */, *(*uintptr)(unsafe.Pointer(azArg + 2*4)), -1) (*Fts5Config)(unsafe.Pointer(pRet)).FbColumnsize = 1 (*Fts5Config)(unsafe.Pointer(pRet)).FeDetail = FTS5_DETAIL_FULL - if (*(*int32)(unsafe.Pointer(bp + 40 /* rc */)) == SQLITE_OK) && (Xsqlite3_stricmp(tls, (*Fts5Config)(unsafe.Pointer(pRet)).FzName, ts+24864 /* "rank" */) == 0) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39304 /* "reserved fts5 ta..." */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pRet)).FzName)) + if (*(*int32)(unsafe.Pointer(bp + 40 /* rc */)) == SQLITE_OK) && (Xsqlite3_stricmp(tls, (*Fts5Config)(unsafe.Pointer(pRet)).FzName, ts+24874 /* "rank" */) == 0) { + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39314 /* "reserved fts5 ta..." */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pRet)).FzName)) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR } @@ -175787,7 +176649,7 @@ func sqlite3Fts5ConfigParse(tls *libc.TLS, pGlobal uintptr, db uintptr, nArg int if *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) == SQLITE_OK { if z == uintptr(0) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39333 /* "parse error in \"..." */, libc.VaList(bp+8, zOrig)) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+39343 /* "parse error in \"..." */, libc.VaList(bp+8, zOrig)) *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = SQLITE_ERROR } else { if bOption != 0 { @@ -175795,7 +176657,7 @@ func sqlite3Fts5ConfigParse(tls *libc.TLS, pGlobal uintptr, db uintptr, nArg int if *(*uintptr)(unsafe.Pointer(bp + 52 /* zTwo */)) != 0 { return *(*uintptr)(unsafe.Pointer(bp + 52 /* zTwo */)) } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), pzErr) } else { *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) = fts5ConfigParseColumn(tls, pRet, *(*uintptr)(unsafe.Pointer(bp + 44 /* zOne */)), *(*uintptr)(unsafe.Pointer(bp + 52 /* zTwo */)), pzErr) @@ -175820,19 +176682,19 @@ func sqlite3Fts5ConfigParse(tls *libc.TLS, pGlobal uintptr, db uintptr, nArg int var zTail uintptr = uintptr(0) if (*Fts5Config)(unsafe.Pointer(pRet)).FeContent == FTS5_CONTENT_NORMAL { - zTail = ts + 39002 /* "content" */ + zTail = ts + 39012 /* "content" */ } else if (*Fts5Config)(unsafe.Pointer(pRet)).FbColumnsize != 0 { - zTail = ts + 39353 /* "docsize" */ + zTail = ts + 39363 /* "docsize" */ } if zTail != 0 { (*Fts5Config)(unsafe.Pointer(pRet)).FzContent = sqlite3Fts5Mprintf(tls, - bp+40 /* &rc */, ts+39361 /* "%Q.'%q_%s'" */, libc.VaList(bp+16, (*Fts5Config)(unsafe.Pointer(pRet)).FzDb, (*Fts5Config)(unsafe.Pointer(pRet)).FzName, zTail)) + bp+40 /* &rc */, ts+39371 /* "%Q.'%q_%s'" */, libc.VaList(bp+16, (*Fts5Config)(unsafe.Pointer(pRet)).FzDb, (*Fts5Config)(unsafe.Pointer(pRet)).FzName, zTail)) } } if (*(*int32)(unsafe.Pointer(bp + 40 /* rc */)) == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer(pRet)).FzContentRowid == uintptr(0)) { - (*Fts5Config)(unsafe.Pointer(pRet)).FzContentRowid = sqlite3Fts5Strndup(tls, bp+40 /* &rc */, ts+10297 /* "rowid" */, -1) + (*Fts5Config)(unsafe.Pointer(pRet)).FzContentRowid = sqlite3Fts5Strndup(tls, bp+40 /* &rc */, ts+10307 /* "rowid" */, -1) } // Formulate the zContentExprlist text @@ -175852,7 +176714,7 @@ func sqlite3Fts5ConfigFree(tls *libc.TLS, pConfig uintptr) { /* sqlite3.c:217109 if pConfig != 0 { var i int32 if (*Fts5Config)(unsafe.Pointer(pConfig)).FpTok != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*Fts5Config)(unsafe.Pointer(pConfig)).FpTokApi + 4 /* &.xDelete */))))(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).FpTok) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Fts5_tokenizer)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FpTokApi)).FxDelete})).f(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).FpTok) } Xsqlite3_free(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb) Xsqlite3_free(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName) @@ -175881,18 +176743,18 @@ func sqlite3Fts5ConfigDeclareVtab(tls *libc.TLS, pConfig uintptr) int32 { /* sql *(*int32)(unsafe.Pointer(bp + 48 /* rc */)) = SQLITE_OK var zSql uintptr - zSql = sqlite3Fts5Mprintf(tls, bp+48 /* &rc */, ts+39372 /* "CREATE TABLE x(" */, 0) + zSql = sqlite3Fts5Mprintf(tls, bp+48 /* &rc */, ts+39382 /* "CREATE TABLE x(" */, 0) for i = 0; (zSql != 0) && (i < (*Fts5Config)(unsafe.Pointer(pConfig)).FnCol); i++ { var zSep uintptr = func() uintptr { if i == 0 { - return ts + 915 /* "" */ + return ts + 925 /* "" */ } - return ts + 16636 /* ", " */ + return ts + 16646 /* ", " */ }() - zSql = sqlite3Fts5Mprintf(tls, bp+48 /* &rc */, ts+39388 /* "%z%s%Q" */, libc.VaList(bp, zSql, zSep, *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FazCol + uintptr(i)*4)))) + zSql = sqlite3Fts5Mprintf(tls, bp+48 /* &rc */, ts+39398 /* "%z%s%Q" */, libc.VaList(bp, zSql, zSep, *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FazCol + uintptr(i)*4)))) } - zSql = sqlite3Fts5Mprintf(tls, bp+48 /* &rc */, ts+39395, /* "%z, %Q HIDDEN, %..." */ - libc.VaList(bp+24, zSql, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, ts+24864 /* "rank" */)) + zSql = sqlite3Fts5Mprintf(tls, bp+48 /* &rc */, ts+39405, /* "%z, %Q HIDDEN, %..." */ + libc.VaList(bp+24, zSql, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, ts+24874 /* "rank" */)) if zSql != 0 { *(*int32)(unsafe.Pointer(bp + 48 /* rc */)) = Xsqlite3_declare_vtab(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, zSql) @@ -175927,7 +176789,9 @@ func sqlite3Fts5Tokenize(tls *libc.TLS, pConfig uintptr, flags int32, pText uint if pText == uintptr(0) { return SQLITE_OK } - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(((*Fts5Config)(unsafe.Pointer(pConfig)).FpTokApi + 8 /* &.xTokenize */))))(tls, + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5_tokenizer)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FpTokApi)).FxTokenize})).f(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).FpTok, pCtx, flags, pText, nText, xToken) } @@ -176032,7 +176896,7 @@ func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVa var rc int32 = SQLITE_OK - if 0 == Xsqlite3_stricmp(tls, zKey, ts+39421 /* "pgsz" */) { + if 0 == Xsqlite3_stricmp(tls, zKey, ts+39431 /* "pgsz" */) { var pgsz int32 = 0 if SQLITE_INTEGER == Xsqlite3_value_numeric_type(tls, pVal) { pgsz = Xsqlite3_value_int(tls, pVal) @@ -176042,7 +176906,7 @@ func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVa } else { (*Fts5Config)(unsafe.Pointer(pConfig)).Fpgsz = pgsz } - } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+39426 /* "hashsize" */) { + } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+39436 /* "hashsize" */) { var nHashSize int32 = -1 if SQLITE_INTEGER == Xsqlite3_value_numeric_type(tls, pVal) { nHashSize = Xsqlite3_value_int(tls, pVal) @@ -176052,7 +176916,7 @@ func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVa } else { (*Fts5Config)(unsafe.Pointer(pConfig)).FnHashSize = nHashSize } - } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+39435 /* "automerge" */) { + } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+39445 /* "automerge" */) { var nAutomerge int32 = -1 if SQLITE_INTEGER == Xsqlite3_value_numeric_type(tls, pVal) { nAutomerge = Xsqlite3_value_int(tls, pVal) @@ -176065,7 +176929,7 @@ func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVa } (*Fts5Config)(unsafe.Pointer(pConfig)).FnAutomerge = nAutomerge } - } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+39445 /* "usermerge" */) { + } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+39455 /* "usermerge" */) { var nUsermerge int32 = -1 if SQLITE_INTEGER == Xsqlite3_value_numeric_type(tls, pVal) { nUsermerge = Xsqlite3_value_int(tls, pVal) @@ -176075,7 +176939,7 @@ func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVa } else { (*Fts5Config)(unsafe.Pointer(pConfig)).FnUsermerge = nUsermerge } - } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+39455 /* "crisismerge" */) { + } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+39465 /* "crisismerge" */) { var nCrisisMerge int32 = -1 if SQLITE_INTEGER == Xsqlite3_value_numeric_type(tls, pVal) { nCrisisMerge = Xsqlite3_value_int(tls, pVal) @@ -176091,7 +176955,7 @@ func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVa } (*Fts5Config)(unsafe.Pointer(pConfig)).FnCrisisMerge = nCrisisMerge } - } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+24864 /* "rank" */) { + } else if 0 == Xsqlite3_stricmp(tls, zKey, ts+24874 /* "rank" */) { var zIn uintptr = Xsqlite3_value_text(tls, pVal) // var zRank uintptr at bp, 4 @@ -176118,7 +176982,7 @@ func sqlite3Fts5ConfigLoad(tls *libc.TLS, pConfig uintptr, iCookie int32) int32 bp := tls.Alloc(44) defer tls.Free(44) - var zSelect uintptr = ts + 39467 /* "SELECT k, v FROM..." */ + var zSelect uintptr = ts + 39477 /* "SELECT k, v FROM..." */ var zSql uintptr *(*uintptr)(unsafe.Pointer(bp + 36 /* p */)) = uintptr(0) *(*int32)(unsafe.Pointer(bp + 32 /* rc */)) = SQLITE_OK @@ -176141,7 +177005,7 @@ func sqlite3Fts5ConfigLoad(tls *libc.TLS, pConfig uintptr, iCookie int32) int32 for SQLITE_ROW == Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 36 /* p */))) { var zK uintptr = Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 36 /* p */)), 0) var pVal uintptr = Xsqlite3_column_value(tls, *(*uintptr)(unsafe.Pointer(bp + 36 /* p */)), 1) - if 0 == Xsqlite3_stricmp(tls, zK, ts+39499 /* "version" */) { + if 0 == Xsqlite3_stricmp(tls, zK, ts+39509 /* "version" */) { iVersion = Xsqlite3_value_int(tls, pVal) } else { *(*int32)(unsafe.Pointer(bp + 40 /* bDummy */)) = 0 @@ -176156,7 +177020,7 @@ func sqlite3Fts5ConfigLoad(tls *libc.TLS, pConfig uintptr, iCookie int32) int32 if (*Fts5Config)(unsafe.Pointer(pConfig)).FpzErrmsg != 0 { *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FpzErrmsg)) = Xsqlite3_mprintf(tls, - ts+39507, /* "invalid fts5 fil..." */ + ts+39517, /* "invalid fts5 fil..." */ libc.VaList(bp+16, iVersion, FTS5_CURRENT_VERSION)) } } @@ -176185,12 +177049,12 @@ func sqlite3Fts5ConfigLoad(tls *libc.TLS, pConfig uintptr, iCookie int32) int32 // All token types in the generated fts5parse.h file are greater than 0. type Fts5ExprTerm1 = struct { - FbPrefix U8 - FbFirst U8 - _ [2]byte - FzTerm uintptr - FpIter uintptr - FpSynonym uintptr + FbPrefix U8 + FbFirst U8 + F__ccgo_pad1 [2]byte + FzTerm uintptr + FpIter uintptr + FpSynonym uintptr } /* sqlite3.c:213118:9 */ // 2014 May 31 @@ -176290,7 +177154,7 @@ func fts5ExprGetToken(tls *libc.TLS, pParse uintptr, pz uintptr, pToken uintptr) } } if int32(*(*int8)(unsafe.Pointer(z2))) == 0 { - sqlite3Fts5ParseError(tls, pParse, ts+39572 /* "unterminated str..." */, 0) + sqlite3Fts5ParseError(tls, pParse, ts+39582 /* "unterminated str..." */, 0) return FTS5_EOF } } @@ -176303,20 +177167,20 @@ func fts5ExprGetToken(tls *libc.TLS, pParse uintptr, pz uintptr, pToken uintptr) { var z2 uintptr if sqlite3Fts5IsBareword(tls, *(*int8)(unsafe.Pointer(z))) == 0 { - sqlite3Fts5ParseError(tls, pParse, ts+39592 /* "fts5: syntax err..." */, libc.VaList(bp, z)) + sqlite3Fts5ParseError(tls, pParse, ts+39602 /* "fts5: syntax err..." */, libc.VaList(bp, z)) return FTS5_EOF } tok = FTS5_STRING for z2 = (z + 1); sqlite3Fts5IsBareword(tls, *(*int8)(unsafe.Pointer(z2))) != 0; z2++ { } (*Fts5Token)(unsafe.Pointer(pToken)).Fn = ((int32(z2) - int32(z)) / 1) - if ((*Fts5Token)(unsafe.Pointer(pToken)).Fn == 2) && (libc.Xmemcmp(tls, (*Fts5Token)(unsafe.Pointer(pToken)).Fp, ts+39623 /* "OR" */, uint32(2)) == 0) { + if ((*Fts5Token)(unsafe.Pointer(pToken)).Fn == 2) && (libc.Xmemcmp(tls, (*Fts5Token)(unsafe.Pointer(pToken)).Fp, ts+39633 /* "OR" */, uint32(2)) == 0) { tok = FTS5_OR } - if ((*Fts5Token)(unsafe.Pointer(pToken)).Fn == 3) && (libc.Xmemcmp(tls, (*Fts5Token)(unsafe.Pointer(pToken)).Fp, ts+39626 /* "NOT" */, uint32(3)) == 0) { + if ((*Fts5Token)(unsafe.Pointer(pToken)).Fn == 3) && (libc.Xmemcmp(tls, (*Fts5Token)(unsafe.Pointer(pToken)).Fp, ts+39636 /* "NOT" */, uint32(3)) == 0) { tok = FTS5_NOT } - if ((*Fts5Token)(unsafe.Pointer(pToken)).Fn == 3) && (libc.Xmemcmp(tls, (*Fts5Token)(unsafe.Pointer(pToken)).Fp, ts+34365 /* "AND" */, uint32(3)) == 0) { + if ((*Fts5Token)(unsafe.Pointer(pToken)).Fn == 3) && (libc.Xmemcmp(tls, (*Fts5Token)(unsafe.Pointer(pToken)).Fp, ts+34375 /* "AND" */, uint32(3)) == 0) { tok = FTS5_AND } break @@ -177636,7 +178500,9 @@ func fts5ExprNodeNext_OR(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid if (*Fts5ExprNode)(unsafe.Pointer(p1)).FbEof == 0 { if ((*Fts5ExprNode)(unsafe.Pointer(p1)).FiRowid == iLast) || ((bFromValid != 0) && (fts5RowidCmp(tls, pExpr, (*Fts5ExprNode)(unsafe.Pointer(p1)).FiRowid, iFrom) < 0)) { - var rc int32 = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((p1 + 12 /* &.xNext */))))(tls, pExpr, p1, bFromValid, iFrom) + var rc int32 = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((p1))).FxNext})).f(tls, pExpr, p1, bFromValid, iFrom) if rc != SQLITE_OK { (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbNomatch = 0 return rc @@ -177664,7 +178530,9 @@ func fts5ExprNodeTest_AND(tls *libc.TLS, pExpr uintptr, pAnd uintptr) int32 { /* var cmp int32 = fts5RowidCmp(tls, pExpr, iLast, (*Fts5ExprNode)(unsafe.Pointer(pChild)).FiRowid) if cmp > 0 { // Advance pChild until it points to iLast or laster - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((pChild + 12 /* &.xNext */))))(tls, pExpr, pChild, 1, iLast) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((pChild))).FxNext})).f(tls, pExpr, pChild, 1, iLast) if rc != SQLITE_OK { (*Fts5ExprNode)(unsafe.Pointer(pAnd)).FbNomatch = 0 return rc @@ -177699,7 +178567,9 @@ func fts5ExprNodeTest_AND(tls *libc.TLS, pExpr uintptr, pAnd uintptr) int32 { /* } func fts5ExprNodeNext_AND(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:218749:12: */ - var rc int32 = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */))) + 12 /* &.xNext */))))(tls, pExpr, *(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */))), bFromValid, iFrom) + var rc int32 = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */)))))).FxNext})).f(tls, pExpr, *(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */))), bFromValid, iFrom) if rc == SQLITE_OK { rc = fts5ExprNodeTest_AND(tls, pExpr, pNode) } else { @@ -177716,14 +178586,18 @@ func fts5ExprNodeTest_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { / for (rc == SQLITE_OK) && ((*Fts5ExprNode)(unsafe.Pointer(p1)).FbEof == 0) { var cmp int32 = fts5NodeCompare(tls, pExpr, p1, p2) if cmp > 0 { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((p2 + 12 /* &.xNext */))))(tls, pExpr, p2, 1, (*Fts5ExprNode)(unsafe.Pointer(p1)).FiRowid) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((p2))).FxNext})).f(tls, pExpr, p2, 1, (*Fts5ExprNode)(unsafe.Pointer(p1)).FiRowid) cmp = fts5NodeCompare(tls, pExpr, p1, p2) } if (cmp != 0) || ((*Fts5ExprNode)(unsafe.Pointer(p2)).FbNomatch != 0) { break } - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((p1 + 12 /* &.xNext */))))(tls, pExpr, p1, 0, int64(0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((p1))).FxNext})).f(tls, pExpr, p1, 0, int64(0)) } (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbEof = (*Fts5ExprNode)(unsafe.Pointer(p1)).FbEof (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbNomatch = (*Fts5ExprNode)(unsafe.Pointer(p1)).FbNomatch @@ -177735,7 +178609,9 @@ func fts5ExprNodeTest_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { / } func fts5ExprNodeNext_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:218792:12: */ - var rc int32 = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */))) + 12 /* &.xNext */))))(tls, pExpr, *(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */))), bFromValid, iFrom) + var rc int32 = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */)))))).FxNext})).f(tls, pExpr, *(*uintptr)(unsafe.Pointer((pNode + 32 /* &.apChild */))), bFromValid, iFrom) if rc == SQLITE_OK { rc = fts5ExprNodeTest_NOT(tls, pExpr, pNode) } @@ -177876,13 +178752,17 @@ func sqlite3Fts5ExprFirst(tls *libc.TLS, p uintptr, pIdx uintptr, iFirst I64, bD if ((rc == SQLITE_OK) && (0 == (*Fts5ExprNode)(unsafe.Pointer(pRoot)).FbEof)) && (fts5RowidCmp(tls, p, (*Fts5ExprNode)(unsafe.Pointer(pRoot)).FiRowid, iFirst) < 0) { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((pRoot + 12 /* &.xNext */))))(tls, p, pRoot, 1, iFirst) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((pRoot))).FxNext})).f(tls, p, pRoot, 1, iFirst) } // If the iterator is not at a real match, skip forward until it is. for ((*Fts5ExprNode)(unsafe.Pointer(pRoot)).FbNomatch != 0) && (rc == SQLITE_OK) { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((pRoot + 12 /* &.xNext */))))(tls, p, pRoot, 0, int64(0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((pRoot))).FxNext})).f(tls, p, pRoot, 0, int64(0)) } return rc } @@ -177896,7 +178776,9 @@ func sqlite3Fts5ExprNext(tls *libc.TLS, p uintptr, iLast I64) int32 { /* sqlite3 var pRoot uintptr = (*Fts5Expr)(unsafe.Pointer(p)).FpRoot for ok := true; ok; ok = (*Fts5ExprNode)(unsafe.Pointer(pRoot)).FbNomatch != 0 { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((pRoot + 12 /* &.xNext */))))(tls, p, pRoot, 0, int64(0)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, I64) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5ExprNode)(unsafe.Pointer((pRoot))).FxNext})).f(tls, p, pRoot, 0, int64(0)) } if fts5RowidCmp(tls, p, (*Fts5ExprNode)(unsafe.Pointer(pRoot)).FiRowid, iLast) > 0 { @@ -178288,9 +179170,9 @@ func sqlite3Fts5ParseNear(tls *libc.TLS, pParse uintptr, pTok uintptr) { /* sqli bp := tls.Alloc(16) defer tls.Free(16) - if ((*Fts5Token)(unsafe.Pointer(pTok)).Fn != 4) || (libc.Xmemcmp(tls, ts+39630 /* "NEAR" */, (*Fts5Token)(unsafe.Pointer(pTok)).Fp, uint32(4)) != 0) { + if ((*Fts5Token)(unsafe.Pointer(pTok)).Fn != 4) || (libc.Xmemcmp(tls, ts+39640 /* "NEAR" */, (*Fts5Token)(unsafe.Pointer(pTok)).Fp, uint32(4)) != 0) { sqlite3Fts5ParseError(tls, - pParse, ts+38659 /* "fts5: syntax err..." */, libc.VaList(bp, (*Fts5Token)(unsafe.Pointer(pTok)).Fn, (*Fts5Token)(unsafe.Pointer(pTok)).Fp)) + pParse, ts+38669 /* "fts5: syntax err..." */, libc.VaList(bp, (*Fts5Token)(unsafe.Pointer(pTok)).Fn, (*Fts5Token)(unsafe.Pointer(pTok)).Fp)) } } @@ -178306,7 +179188,7 @@ func sqlite3Fts5ParseSetDistance(tls *libc.TLS, pParse uintptr, pNear uintptr, p var c int8 = *(*int8)(unsafe.Pointer((*Fts5Token)(unsafe.Pointer(p)).Fp + uintptr(i))) if (int32(c) < '0') || (int32(c) > '9') { sqlite3Fts5ParseError(tls, - pParse, ts+39635 /* "expected integer..." */, libc.VaList(bp, (*Fts5Token)(unsafe.Pointer(p)).Fn, (*Fts5Token)(unsafe.Pointer(p)).Fp)) + pParse, ts+39645 /* "expected integer..." */, libc.VaList(bp, (*Fts5Token)(unsafe.Pointer(p)).Fn, (*Fts5Token)(unsafe.Pointer(p)).Fp)) return } nNear = ((nNear * 10) + (int32(*(*int8)(unsafe.Pointer((*Fts5Token)(unsafe.Pointer(p)).Fp + uintptr(i)))) - '0')) @@ -178403,7 +179285,7 @@ func sqlite3Fts5ParseColset(tls *libc.TLS, pParse uintptr, pColset uintptr, p ui } } if iCol == (*Fts5Config)(unsafe.Pointer(pConfig)).FnCol { - sqlite3Fts5ParseError(tls, pParse, ts+23026 /* "no such column: ..." */, libc.VaList(bp, z)) + sqlite3Fts5ParseError(tls, pParse, ts+23036 /* "no such column: ..." */, libc.VaList(bp, z)) } else { pRet = fts5ParseColset(tls, pParse, pColset, iCol) } @@ -178499,7 +179381,7 @@ func sqlite3Fts5ParseSetColset(tls *libc.TLS, pParse uintptr, pExpr uintptr, pCo if (*Fts5Config)(unsafe.Pointer((*Fts5Parse)(unsafe.Pointer(pParse)).FpConfig)).FeDetail == FTS5_DETAIL_NONE { (*Fts5Parse)(unsafe.Pointer(pParse)).Frc = SQLITE_ERROR (*Fts5Parse)(unsafe.Pointer(pParse)).FzErr = Xsqlite3_mprintf(tls, - ts+39664 /* "fts5: column que..." */, 0) + ts+39674 /* "fts5: column que..." */, 0) } else { fts5ParseSetColset(tls, pParse, pExpr, pColset, bp /* &pFree */) } @@ -178683,12 +179565,12 @@ func sqlite3Fts5ParseNode(tls *libc.TLS, pParse uintptr, eType int32, pLeft uint (*Fts5Parse)(unsafe.Pointer(pParse)).Frc = SQLITE_ERROR (*Fts5Parse)(unsafe.Pointer(pParse)).FzErr = Xsqlite3_mprintf(tls, - ts+39717, /* "fts5: %s queries..." */ + ts+39727, /* "fts5: %s queries..." */ libc.VaList(bp, func() uintptr { if (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FnPhrase == 1 { - return ts + 39767 /* "phrase" */ + return ts + 39777 /* "phrase" */ } - return ts + 39630 /* "NEAR" */ + return ts + 39640 /* "NEAR" */ }())) Xsqlite3_free(tls, pRet) pRet = uintptr(0) @@ -178802,7 +179684,7 @@ func fts5PrintfAppend(tls *libc.TLS, zApp uintptr, zFmt uintptr, va uintptr) uin zNew = Xsqlite3_vmprintf(tls, zFmt, ap) _ = ap if (zApp != 0) && (zNew != 0) { - var zNew2 uintptr = Xsqlite3_mprintf(tls, ts+6816 /* "%s%s" */, libc.VaList(bp, zApp, zNew)) + var zNew2 uintptr = Xsqlite3_mprintf(tls, ts+6826 /* "%s%s" */, libc.VaList(bp, zApp, zNew)) Xsqlite3_free(tls, zNew) zNew = zNew2 } @@ -178824,7 +179706,7 @@ func fts5ExprPrintTcl(tls *libc.TLS, pConfig uintptr, zNearsetCmd uintptr, pExpr var i int32 var iTerm int32 - zRet = fts5PrintfAppend(tls, zRet, ts+39774 /* "%s " */, libc.VaList(bp, zNearsetCmd)) + zRet = fts5PrintfAppend(tls, zRet, ts+39784 /* "%s " */, libc.VaList(bp, zNearsetCmd)) if zRet == uintptr(0) { return uintptr(0) } @@ -178832,13 +179714,13 @@ func fts5ExprPrintTcl(tls *libc.TLS, pConfig uintptr, zNearsetCmd uintptr, pExpr var aiCol uintptr = (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FpColset + 4 /* &.aiCol */ var nCol int32 = (*Fts5Colset)(unsafe.Pointer((*Fts5ExprNearset)(unsafe.Pointer(pNear)).FpColset)).FnCol if nCol == 1 { - zRet = fts5PrintfAppend(tls, zRet, ts+39778 /* "-col %d " */, libc.VaList(bp+8, *(*int32)(unsafe.Pointer(aiCol)))) + zRet = fts5PrintfAppend(tls, zRet, ts+39788 /* "-col %d " */, libc.VaList(bp+8, *(*int32)(unsafe.Pointer(aiCol)))) } else { - zRet = fts5PrintfAppend(tls, zRet, ts+39787 /* "-col {%d" */, libc.VaList(bp+16, *(*int32)(unsafe.Pointer(aiCol)))) + zRet = fts5PrintfAppend(tls, zRet, ts+39797 /* "-col {%d" */, libc.VaList(bp+16, *(*int32)(unsafe.Pointer(aiCol)))) for i = 1; i < (*Fts5Colset)(unsafe.Pointer((*Fts5ExprNearset)(unsafe.Pointer(pNear)).FpColset)).FnCol; i++ { - zRet = fts5PrintfAppend(tls, zRet, ts+39796 /* " %d" */, libc.VaList(bp+24, *(*int32)(unsafe.Pointer(aiCol + uintptr(i)*4)))) + zRet = fts5PrintfAppend(tls, zRet, ts+39806 /* " %d" */, libc.VaList(bp+24, *(*int32)(unsafe.Pointer(aiCol + uintptr(i)*4)))) } - zRet = fts5PrintfAppend(tls, zRet, ts+39800 /* "} " */, 0) + zRet = fts5PrintfAppend(tls, zRet, ts+39810 /* "} " */, 0) } if zRet == uintptr(0) { return uintptr(0) @@ -178846,13 +179728,13 @@ func fts5ExprPrintTcl(tls *libc.TLS, pConfig uintptr, zNearsetCmd uintptr, pExpr } if (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FnPhrase > 1 { - zRet = fts5PrintfAppend(tls, zRet, ts+39803 /* "-near %d " */, libc.VaList(bp+32, (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FnNear)) + zRet = fts5PrintfAppend(tls, zRet, ts+39813 /* "-near %d " */, libc.VaList(bp+32, (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FnNear)) if zRet == uintptr(0) { return uintptr(0) } } - zRet = fts5PrintfAppend(tls, zRet, ts+39813 /* "--" */, 0) + zRet = fts5PrintfAppend(tls, zRet, ts+39823 /* "--" */, 0) if zRet == uintptr(0) { return uintptr(0) } @@ -178860,22 +179742,22 @@ func fts5ExprPrintTcl(tls *libc.TLS, pConfig uintptr, zNearsetCmd uintptr, pExpr for i = 0; i < (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FnPhrase; i++ { var pPhrase uintptr = *(*uintptr)(unsafe.Pointer((pNear + 12 /* &.apPhrase */) + uintptr(i)*4)) - zRet = fts5PrintfAppend(tls, zRet, ts+39816 /* " {" */, 0) + zRet = fts5PrintfAppend(tls, zRet, ts+39826 /* " {" */, 0) for iTerm = 0; (zRet != 0) && (iTerm < (*Fts5ExprPhrase)(unsafe.Pointer(pPhrase)).FnTerm); iTerm++ { var zTerm uintptr = (*Fts5ExprTerm)(unsafe.Pointer((pPhrase + 20 /* &.aTerm */) + uintptr(iTerm)*16)).FzTerm - zRet = fts5PrintfAppend(tls, zRet, ts+6816 /* "%s%s" */, libc.VaList(bp+40, func() uintptr { + zRet = fts5PrintfAppend(tls, zRet, ts+6826 /* "%s%s" */, libc.VaList(bp+40, func() uintptr { if iTerm == 0 { - return ts + 915 /* "" */ + return ts + 925 /* "" */ } - return ts + 12926 /* " " */ + return ts + 12936 /* " " */ }(), zTerm)) if (*Fts5ExprTerm)(unsafe.Pointer((pPhrase+20 /* &.aTerm */)+uintptr(iTerm)*16)).FbPrefix != 0 { - zRet = fts5PrintfAppend(tls, zRet, ts+21576 /* "*" */, 0) + zRet = fts5PrintfAppend(tls, zRet, ts+21586 /* "*" */, 0) } } if zRet != 0 { - zRet = fts5PrintfAppend(tls, zRet, ts+31004 /* "}" */, 0) + zRet = fts5PrintfAppend(tls, zRet, ts+31014 /* "}" */, 0) } if zRet == uintptr(0) { return uintptr(0) @@ -178887,27 +179769,27 @@ func fts5ExprPrintTcl(tls *libc.TLS, pConfig uintptr, zNearsetCmd uintptr, pExpr var i int32 switch (*Fts5ExprNode)(unsafe.Pointer(pExpr)).FeType { case FTS5_AND: - zOp = ts + 34365 /* "AND" */ + zOp = ts + 34375 /* "AND" */ break fallthrough case FTS5_NOT: - zOp = ts + 39626 /* "NOT" */ + zOp = ts + 39636 /* "NOT" */ break fallthrough default: - zOp = ts + 39623 /* "OR" */ + zOp = ts + 39633 /* "OR" */ break } - zRet = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp+56, zOp)) + zRet = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp+56, zOp)) for i = 0; (zRet != 0) && (i < (*Fts5ExprNode)(unsafe.Pointer(pExpr)).FnChild); i++ { var z uintptr = fts5ExprPrintTcl(tls, pConfig, zNearsetCmd, *(*uintptr)(unsafe.Pointer((pExpr + 32 /* &.apChild */) + uintptr(i)*4))) if !(z != 0) { Xsqlite3_free(tls, zRet) zRet = uintptr(0) } else { - zRet = fts5PrintfAppend(tls, zRet, ts+39819 /* " [%z]" */, libc.VaList(bp+64, z)) + zRet = fts5PrintfAppend(tls, zRet, ts+39829 /* " [%z]" */, libc.VaList(bp+64, z)) } } } @@ -178921,7 +179803,7 @@ func fts5ExprPrint(tls *libc.TLS, pConfig uintptr, pExpr uintptr) uintptr { /* s var zRet uintptr = uintptr(0) if (*Fts5ExprNode)(unsafe.Pointer(pExpr)).FeType == 0 { - return Xsqlite3_mprintf(tls, ts+39825 /* "\"\"" */, 0) + return Xsqlite3_mprintf(tls, ts+39835 /* "\"\"" */, 0) } else if ((*Fts5ExprNode)(unsafe.Pointer(pExpr)).FeType == FTS5_STRING) || ((*Fts5ExprNode)(unsafe.Pointer(pExpr)).FeType == FTS5_TERM) { var pNear uintptr = (*Fts5ExprNode)(unsafe.Pointer(pExpr)).FpNear var i int32 @@ -178931,23 +179813,23 @@ func fts5ExprPrint(tls *libc.TLS, pConfig uintptr, pExpr uintptr) uintptr { /* s var ii int32 var pColset uintptr = (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FpColset if (*Fts5Colset)(unsafe.Pointer(pColset)).FnCol > 1 { - zRet = fts5PrintfAppend(tls, zRet, ts+39828 /* "{" */, 0) + zRet = fts5PrintfAppend(tls, zRet, ts+39838 /* "{" */, 0) } for ii = 0; ii < (*Fts5Colset)(unsafe.Pointer(pColset)).FnCol; ii++ { - zRet = fts5PrintfAppend(tls, zRet, ts+6816, /* "%s%s" */ + zRet = fts5PrintfAppend(tls, zRet, ts+6826, /* "%s%s" */ libc.VaList(bp, *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FazCol + uintptr(*(*int32)(unsafe.Pointer((pColset + 4 /* &.aiCol */) + uintptr(ii)*4)))*4)), func() uintptr { if ii == ((*Fts5Colset)(unsafe.Pointer(pColset)).FnCol - 1) { - return ts + 915 /* "" */ + return ts + 925 /* "" */ } - return ts + 12926 /* " " */ + return ts + 12936 /* " " */ }())) } if zRet != 0 { - zRet = fts5PrintfAppend(tls, zRet, ts+39830 /* "%s : " */, libc.VaList(bp+16, func() uintptr { + zRet = fts5PrintfAppend(tls, zRet, ts+39840 /* "%s : " */, libc.VaList(bp+16, func() uintptr { if (*Fts5Colset)(unsafe.Pointer(pColset)).FnCol > 1 { - return ts + 31004 /* "}" */ + return ts + 31014 /* "}" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }())) } if zRet == uintptr(0) { @@ -178956,7 +179838,7 @@ func fts5ExprPrint(tls *libc.TLS, pConfig uintptr, pExpr uintptr) uintptr { /* s } if (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FnPhrase > 1 { - zRet = fts5PrintfAppend(tls, zRet, ts+39836 /* "NEAR(" */, 0) + zRet = fts5PrintfAppend(tls, zRet, ts+39846 /* "NEAR(" */, 0) if zRet == uintptr(0) { return uintptr(0) } @@ -178965,7 +179847,7 @@ func fts5ExprPrint(tls *libc.TLS, pConfig uintptr, pExpr uintptr) uintptr { /* s for i = 0; i < (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FnPhrase; i++ { var pPhrase uintptr = *(*uintptr)(unsafe.Pointer((pNear + 12 /* &.apPhrase */) + uintptr(i)*4)) if i != 0 { - zRet = fts5PrintfAppend(tls, zRet, ts+12926 /* " " */, 0) + zRet = fts5PrintfAppend(tls, zRet, ts+12936 /* " " */, 0) if zRet == uintptr(0) { return uintptr(0) } @@ -178973,11 +179855,11 @@ func fts5ExprPrint(tls *libc.TLS, pConfig uintptr, pExpr uintptr) uintptr { /* s for iTerm = 0; iTerm < (*Fts5ExprPhrase)(unsafe.Pointer(pPhrase)).FnTerm; iTerm++ { var zTerm uintptr = fts5ExprTermPrint(tls, ((pPhrase + 20 /* &.aTerm */) + uintptr(iTerm)*16)) if zTerm != 0 { - zRet = fts5PrintfAppend(tls, zRet, ts+6816 /* "%s%s" */, libc.VaList(bp+24, func() uintptr { + zRet = fts5PrintfAppend(tls, zRet, ts+6826 /* "%s%s" */, libc.VaList(bp+24, func() uintptr { if iTerm == 0 { - return ts + 915 /* "" */ + return ts + 925 /* "" */ } - return ts + 39842 /* " + " */ + return ts + 39852 /* " + " */ }(), zTerm)) Xsqlite3_free(tls, zTerm) } @@ -178989,7 +179871,7 @@ func fts5ExprPrint(tls *libc.TLS, pConfig uintptr, pExpr uintptr) uintptr { /* s } if (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FnPhrase > 1 { - zRet = fts5PrintfAppend(tls, zRet, ts+39846 /* ", %d)" */, libc.VaList(bp+40, (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FnNear)) + zRet = fts5PrintfAppend(tls, zRet, ts+39856 /* ", %d)" */, libc.VaList(bp+40, (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FnNear)) if zRet == uintptr(0) { return uintptr(0) } @@ -179001,16 +179883,16 @@ func fts5ExprPrint(tls *libc.TLS, pConfig uintptr, pExpr uintptr) uintptr { /* s switch (*Fts5ExprNode)(unsafe.Pointer(pExpr)).FeType { case FTS5_AND: - zOp = ts + 24073 /* " AND " */ + zOp = ts + 24083 /* " AND " */ break fallthrough case FTS5_NOT: - zOp = ts + 39852 /* " NOT " */ + zOp = ts + 39862 /* " NOT " */ break fallthrough default: - zOp = ts + 37518 /* " OR " */ + zOp = ts + 37528 /* " OR " */ break } @@ -179022,23 +179904,23 @@ func fts5ExprPrint(tls *libc.TLS, pConfig uintptr, pExpr uintptr) uintptr { /* s } else { var e int32 = (*Fts5ExprNode)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer((pExpr + 32 /* &.apChild */) + uintptr(i)*4)))).FeType var b int32 = (libc.Bool32(((e != FTS5_STRING) && (e != FTS5_TERM)) && (e != FTS5_EOF))) - zRet = fts5PrintfAppend(tls, zRet, ts+39858, /* "%s%s%z%s" */ + zRet = fts5PrintfAppend(tls, zRet, ts+39868, /* "%s%s%z%s" */ libc.VaList(bp+48, func() uintptr { if i == 0 { - return ts + 915 /* "" */ + return ts + 925 /* "" */ } return zOp }(), func() uintptr { if b != 0 { - return ts + 24079 /* "(" */ + return ts + 24089 /* "(" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), z, func() uintptr { if b != 0 { - return ts + 6887 /* ")" */ + return ts + 6897 /* ")" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }())) } if zRet == uintptr(0) { @@ -179064,18 +179946,18 @@ func fts5ExprFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr, bT var rc int32 var i int32 var azConfig uintptr // Array of arguments for Fts5Config - var zNearsetCmd uintptr = ts + 39867 /* "nearset" */ + var zNearsetCmd uintptr = ts + 39877 /* "nearset" */ var nConfig int32 // Size of azConfig[] *(*uintptr)(unsafe.Pointer(bp + 8 /* pConfig */)) = uintptr(0) var iArg int32 = 1 if nArg < 1 { - *(*uintptr)(unsafe.Pointer(bp + 12 /* zErr */)) = Xsqlite3_mprintf(tls, ts+39875, /* "wrong number of ..." */ + *(*uintptr)(unsafe.Pointer(bp + 12 /* zErr */)) = Xsqlite3_mprintf(tls, ts+39885, /* "wrong number of ..." */ libc.VaList(bp, func() uintptr { if bTcl != 0 { - return ts + 39916 /* "fts5_expr_tcl" */ + return ts + 39926 /* "fts5_expr_tcl" */ } - return ts + 39930 /* "fts5_expr" */ + return ts + 39940 /* "fts5_expr" */ }())) Xsqlite3_result_error(tls, pCtx, *(*uintptr)(unsafe.Pointer(bp + 12 /* zErr */)), -1) Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 12 /* zErr */))) @@ -179094,21 +179976,21 @@ func fts5ExprFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr, bT return } *(*uintptr)(unsafe.Pointer(azConfig)) = uintptr(0) - *(*uintptr)(unsafe.Pointer(azConfig + 1*4)) = ts + 8566 /* "main" */ - *(*uintptr)(unsafe.Pointer(azConfig + 2*4)) = ts + 13521 /* "tbl" */ + *(*uintptr)(unsafe.Pointer(azConfig + 1*4)) = ts + 8576 /* "main" */ + *(*uintptr)(unsafe.Pointer(azConfig + 2*4)) = ts + 13531 /* "tbl" */ for i = 3; iArg < nArg; iArg++ { var z uintptr = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apVal + uintptr(iArg)*4))) *(*uintptr)(unsafe.Pointer(azConfig + uintptr(libc.PostIncInt32(&i, 1))*4)) = func() uintptr { if z != 0 { return z } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }() } zExpr = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apVal))) if zExpr == uintptr(0) { - zExpr = ts + 915 /* "" */ + zExpr = ts + 925 /* "" */ } rc = sqlite3Fts5ConfigParse(tls, pGlobal, db, nConfig, azConfig, bp+8 /* &pConfig */, bp+12 /* &zErr */) @@ -179118,7 +180000,7 @@ func fts5ExprFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr, bT if rc == SQLITE_OK { var zText uintptr if (*Fts5ExprNode)(unsafe.Pointer((*Fts5Expr)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 16 /* pExpr */)))).FpRoot)).FxNext == uintptr(0) { - zText = Xsqlite3_mprintf(tls, ts+915 /* "" */, 0) + zText = Xsqlite3_mprintf(tls, ts+925 /* "" */, 0) } else if bTcl != 0 { zText = fts5ExprPrintTcl(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* pConfig */)), zNearsetCmd, (*Fts5Expr)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 16 /* pExpr */)))).FpRoot) } else { @@ -179165,13 +180047,13 @@ func fts5ExprIsAlnum(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { / if nArg != 1 { Xsqlite3_result_error(tls, pCtx, - ts+39940 /* "wrong number of ..." */, -1) + ts+39950 /* "wrong number of ..." */, -1) return } libc.Xmemset(tls, bp /* &aArr[0] */, 0, uint32(unsafe.Sizeof([32]U8{}))) - sqlite3Fts5UnicodeCatParse(tls, ts+39991 /* "L*" */, bp /* &aArr[0] */) - sqlite3Fts5UnicodeCatParse(tls, ts+39994 /* "N*" */, bp /* &aArr[0] */) - sqlite3Fts5UnicodeCatParse(tls, ts+39997 /* "Co" */, bp /* &aArr[0] */) + sqlite3Fts5UnicodeCatParse(tls, ts+40001 /* "L*" */, bp /* &aArr[0] */) + sqlite3Fts5UnicodeCatParse(tls, ts+40004 /* "N*" */, bp /* &aArr[0] */) + sqlite3Fts5UnicodeCatParse(tls, ts+40007 /* "Co" */, bp /* &aArr[0] */) iCode = Xsqlite3_value_int(tls, *(*uintptr)(unsafe.Pointer(apVal))) Xsqlite3_result_int(tls, pCtx, int32(*(*U8)(unsafe.Pointer(bp /* &aArr[0] */ + uintptr(sqlite3Fts5UnicodeCategory(tls, U32(iCode))))))) } @@ -179179,7 +180061,7 @@ func fts5ExprIsAlnum(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { / func fts5ExprFold(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:220197:13: */ if (nArg != 1) && (nArg != 2) { Xsqlite3_result_error(tls, pCtx, - ts+40000 /* "wrong number of ..." */, -1) + ts+40010 /* "wrong number of ..." */, -1) } else { var iCode int32 var bRemoveDiacritics int32 = 0 @@ -179198,16 +180080,16 @@ func sqlite3Fts5ExprInit(tls *libc.TLS, pGlobal uintptr, db uintptr) int32 { /* defer tls.Free(32) *(*[4]Fts5ExprFunc)(unsafe.Pointer(bp /* aFunc */)) = [4]Fts5ExprFunc{ - {Fz: ts + 39930 /* "fts5_expr" */, Fx: *(*uintptr)(unsafe.Pointer(&struct { + {Fz: ts + 39940 /* "fts5_expr" */, Fx: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{fts5ExprFunctionHr}))}, - {Fz: ts + 39916 /* "fts5_expr_tcl" */, Fx: *(*uintptr)(unsafe.Pointer(&struct { + {Fz: ts + 39926 /* "fts5_expr_tcl" */, Fx: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{fts5ExprFunctionTcl}))}, - {Fz: ts + 40048 /* "fts5_isalnum" */, Fx: *(*uintptr)(unsafe.Pointer(&struct { + {Fz: ts + 40058 /* "fts5_isalnum" */, Fx: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{fts5ExprIsAlnum}))}, - {Fz: ts + 40061 /* "fts5_fold" */, Fx: *(*uintptr)(unsafe.Pointer(&struct { + {Fz: ts + 40071 /* "fts5_fold" */, Fx: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{fts5ExprFold}))}, } @@ -180421,7 +181303,7 @@ type Fts5Iter1 = struct { FnSeg int32 FbRev int32 FbSkipEmpty U8 - _ [3]byte + F__ccgo_pad1 [3]byte FiSwitchRowid I64 FaFirst uintptr FaSeg [1]Fts5SegIter @@ -180457,7 +181339,7 @@ type Fts5SegIter1 = struct { FiRowid I64 FnPos int32 FbDel U8 - _ [3]byte + F__ccgo_pad1 [3]byte } /* sqlite3.c:221314:9 */ type Fts5SegIter = Fts5SegIter1 /* sqlite3.c:221316:28 */ @@ -180477,7 +181359,7 @@ type Fts5SegWriter1 = struct { FbFirstRowidInDoclist U8 FbFirstRowidInPage U8 FbFirstTermInPage U8 - _ [1]byte + F__ccgo_pad1 [1]byte FnLeafWritten int32 FnEmpty int32 FnDlidx int32 @@ -180512,9 +181394,9 @@ type Fts5StructureSegment1 = struct { type Fts5StructureSegment = Fts5StructureSegment1 /* sqlite3.c:221321:37 */ type Fts5CResult1 = struct { - FiFirst U16 - FbTermEq U8 - _ [1]byte + FiFirst U16 + FbTermEq U8 + F__ccgo_pad1 [1]byte } /* sqlite3.c:221314:9 */ type Fts5CResult = Fts5CResult1 /* sqlite3.c:221431:28 */ @@ -180621,7 +181503,7 @@ func fts5DataRead(tls *libc.TLS, p uintptr, iRowid I64) uintptr { /* sqlite3.c:2 if ((*Fts5Index)(unsafe.Pointer(p)).FpReader == uintptr(0)) && (rc == SQLITE_OK) { var pConfig uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpConfig rc = Xsqlite3_blob_open(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, - (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Index)(unsafe.Pointer(p)).FzDataTbl, ts+40071 /* "block" */, iRowid, 0, (p + 36 /* &.pReader */)) + (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Index)(unsafe.Pointer(p)).FzDataTbl, ts+40081 /* "block" */, iRowid, 0, (p + 36 /* &.pReader */)) } // If either of the sqlite3_blob_open() or sqlite3_blob_reopen() calls @@ -180709,7 +181591,7 @@ func fts5DataWrite(tls *libc.TLS, p uintptr, iRowid I64, pData uintptr, nData in if (*Fts5Index)(unsafe.Pointer(p)).FpWriter == uintptr(0) { var pConfig uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpConfig fts5IndexPrepareStmt(tls, p, (p + 40 /* &.pWriter */), Xsqlite3_mprintf(tls, - ts+40077, /* "REPLACE INTO '%q..." */ + ts+40087, /* "REPLACE INTO '%q..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName))) if (*Fts5Index)(unsafe.Pointer(p)).Frc != 0 { return @@ -180737,7 +181619,7 @@ func fts5DataDelete(tls *libc.TLS, p uintptr, iFirst I64, iLast I64) { /* sqlite if (*Fts5Index)(unsafe.Pointer(p)).FpDeleter == uintptr(0) { var pConfig uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpConfig var zSql uintptr = Xsqlite3_mprintf(tls, - ts+40128, /* "DELETE FROM '%q'..." */ + ts+40138, /* "DELETE FROM '%q'..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) if fts5IndexPrepareStmt(tls, p, (p+44 /* &.pDeleter */), zSql) != 0 { return @@ -180761,7 +181643,7 @@ func fts5DataRemoveSegment(tls *libc.TLS, p uintptr, iSegid int32) { /* sqlite3. if (*Fts5Index)(unsafe.Pointer(p)).FpIdxDeleter == uintptr(0) { var pConfig uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpConfig fts5IndexPrepareStmt(tls, p, (p + 52 /* &.pIdxDeleter */), Xsqlite3_mprintf(tls, - ts+40177, /* "DELETE FROM '%q'..." */ + ts+40187, /* "DELETE FROM '%q'..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName))) } if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { @@ -180969,7 +181851,7 @@ func fts5IndexDataVersion(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:222059:12 if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { if (*Fts5Index)(unsafe.Pointer(p)).FpDataVersion == uintptr(0) { (*Fts5Index)(unsafe.Pointer(p)).Frc = fts5IndexPrepareStmt(tls, p, (p + 64 /* &.pDataVersion */), - Xsqlite3_mprintf(tls, ts+40217 /* "PRAGMA %Q.data_v..." */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer((*Fts5Index)(unsafe.Pointer(p)).FpConfig)).FzDb))) + Xsqlite3_mprintf(tls, ts+40227 /* "PRAGMA %Q.data_v..." */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer((*Fts5Index)(unsafe.Pointer(p)).FpConfig)).FzDb))) if (*Fts5Index)(unsafe.Pointer(p)).Frc != 0 { return int64(0) } @@ -182404,7 +183286,7 @@ func fts5IdxSelectStmt(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:223398:2 var pConfig uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpConfig fts5IndexPrepareStmt(tls, p, (p + 56 /* &.pIdxSelect */), Xsqlite3_mprintf(tls, - ts+40240, /* "SELECT pgno FROM..." */ + ts+40250, /* "SELECT pgno FROM..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName))) } return (*Fts5Index)(unsafe.Pointer(p)).FpIdxSelect @@ -182670,7 +183552,9 @@ func fts5SegIterNextFrom(tls *libc.TLS, p uintptr, pIter uintptr, iMatch I64) { for ok := true; ok; ok = ((*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK) { if (bMove != 0) && ((*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK) { - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pIter + 28 /* &.xNext */))))(tls, p, pIter, uintptr(0)) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5SegIter)(unsafe.Pointer(pIter)).FxNext})).f(tls, p, pIter, uintptr(0)) } if (*Fts5SegIter)(unsafe.Pointer(pIter)).FpLeaf == uintptr(0) { break @@ -182704,7 +183588,9 @@ func fts5MultiIterAdvanced(tls *libc.TLS, p uintptr, pIter uintptr, iChanged int if libc.AssignInt32(&iEq, fts5MultiIterDoCompare(tls, pIter, i)) != 0 { var pSeg uintptr = ((pIter + 68 /* &.aSeg */) + uintptr(iEq)*92) - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pSeg + 28 /* &.xNext */))))(tls, p, pSeg, uintptr(0)) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5SegIter)(unsafe.Pointer(pSeg)).FxNext})).f(tls, p, pSeg, uintptr(0)) i = ((*Fts5Iter)(unsafe.Pointer(pIter)).FnSeg + iEq) } } @@ -182783,7 +183669,9 @@ func fts5MultiIterNext(tls *libc.TLS, p uintptr, pIter uintptr, bFrom int32, iFr if (bUseFrom != 0) && ((*Fts5SegIter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)))).FpDlidx != 0) { fts5SegIterNextFrom(tls, p, *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)), iFrom) } else { - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)) + 28 /* &.xNext */))))(tls, p, *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)), bp /* &bNewTerm */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5SegIter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)))).FxNext})).f(tls, p, *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)), bp /* &bNewTerm */) } if (((*Fts5SegIter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)))).FpLeaf == uintptr(0)) || (*(*int32)(unsafe.Pointer(bp /* bNewTerm */)) != 0)) || @@ -182797,7 +183685,9 @@ func fts5MultiIterNext(tls *libc.TLS, p uintptr, pIter uintptr, bFrom int32, iFr } if (int32((*Fts5Iter)(unsafe.Pointer(pIter)).FbSkipEmpty) == 0) || ((*Fts5SegIter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)))).FnPos != 0) { - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pIter + 40 /* &.xSetOutputs */))))(tls, pIter, *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */))) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Iter)(unsafe.Pointer(pIter)).FxSetOutputs})).f(tls, pIter, *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */))) return } bUseFrom = 0 @@ -182815,7 +183705,9 @@ func fts5MultiIterNext2(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintp *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)) = ((pIter + 68 /* &.aSeg */) + uintptr(iFirst)*92) *(*int32)(unsafe.Pointer(bp /* bNewTerm */)) = 0 - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)) + 28 /* &.xNext */))))(tls, p, *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)), bp /* &bNewTerm */) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5SegIter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)))).FxNext})).f(tls, p, *(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)), bp /* &bNewTerm */) if (((*Fts5SegIter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 4 /* pSeg */)))).FpLeaf == uintptr(0)) || (*(*int32)(unsafe.Pointer(bp /* bNewTerm */)) != 0)) || (fts5MultiIterAdvanceRowid(tls, pIter, iFirst, bp+4 /* &pSeg */) != 0) { fts5MultiIterAdvanced(tls, p, pIter, iFirst, 1) @@ -183017,7 +183909,9 @@ func fts5ChunkIterate(tls *libc.TLS, p uintptr, pSeg uintptr, pCtx uintptr, xChu } for 1 != 0 { - (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32))(unsafe.Pointer(&xChunk)))(tls, p, pCtx, pChunk, nChunk) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32) + })(unsafe.Pointer(&struct{ uintptr }{xChunk})).f(tls, p, pCtx, pChunk, nChunk) nRem = nRem - (nChunk) fts5DataRelease(tls, pData) if nRem <= 0 { @@ -183419,7 +184313,9 @@ func fts5MultiIterNew(tls *libc.TLS, p uintptr, pStruct uintptr, flags int32, pC if libc.AssignInt32(&iEq, fts5MultiIterDoCompare(tls, pNew, iIter)) != 0 { var pSeg uintptr = ((pNew + 68 /* &.aSeg */) + uintptr(iEq)*92) if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer((pSeg + 28 /* &.xNext */))))(tls, p, pSeg, uintptr(0)) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5SegIter)(unsafe.Pointer(pSeg)).FxNext})).f(tls, p, pSeg, uintptr(0)) } fts5MultiIterAdvanced(tls, p, pNew, iEq, iIter) } @@ -183430,7 +184326,9 @@ func fts5MultiIterNew(tls *libc.TLS, p uintptr, pStruct uintptr, flags int32, pC fts5MultiIterNext(tls, p, pNew, 0, int64(0)) } else if int32((*Fts5Iter)(unsafe.Pointer(pNew)).Fbase.FbEof) == 0 { var pSeg uintptr = ((pNew + 68 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(pNew)).FaFirst+1*4)).FiFirst)*92) - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pNew + 40 /* &.xSetOutputs */))))(tls, pNew, pSeg) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Iter)(unsafe.Pointer(pNew)).FxSetOutputs})).f(tls, pNew, pSeg) } } else { @@ -183660,7 +184558,7 @@ func fts5WriteFlushBtree(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3 if (*Fts5SegWriter)(unsafe.Pointer(pWriter)).Fbtterm.Fn > 0 { return (*Fts5SegWriter)(unsafe.Pointer(pWriter)).Fbtterm.Fp } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }() // The following was already done in fts5WriteInit(): // sqlite3_bind_int(p->pIdxWriter, 1, pWriter->iSegid); @@ -184001,7 +184899,7 @@ func fts5WriteInit(tls *libc.TLS, p uintptr, pWriter uintptr, iSegid int32) { /* if (*Fts5Index)(unsafe.Pointer(p)).FpIdxWriter == uintptr(0) { var pConfig uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpConfig fts5IndexPrepareStmt(tls, p, (p + 48 /* &.pIdxWriter */), Xsqlite3_mprintf(tls, - ts+40324, /* "INSERT INTO '%q'..." */ + ts+40334, /* "INSERT INTO '%q'..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName))) } @@ -185083,9 +185981,13 @@ func fts5SetupPrefixIter(tls *libc.TLS, p uintptr, bDesc int32, iIdx int32, pTok fts5IterSetOutputCb(tls, (p + 32 /* &.rc */), *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */))) for ; fts5MultiIterEof(tls, p, *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */))) == 0; fts5MultiIterNext2(tls, p, *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), bp+16 /* &dummy */) { var pSeg uintptr = ((*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)) + 68 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).FaFirst+1*4)).FiFirst)*92) - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)) + 40 /* &.xSetOutputs */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), pSeg) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).FxSetOutputs})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), pSeg) if (*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).Fbase.FnData != 0 { - (*(*func(*libc.TLS, uintptr, I64, uintptr, uintptr))(unsafe.Pointer(&xAppend)))(tls, p, ((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).Fbase.FiRowid - iLastRowid), *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), bp /* &doclist */) + (*struct { + f func(*libc.TLS, uintptr, I64, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{xAppend})).f(tls, p, ((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).Fbase.FiRowid - iLastRowid), *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), bp /* &doclist */) iLastRowid = (*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).Fbase.FiRowid } } @@ -185099,7 +186001,9 @@ func fts5SetupPrefixIter(tls *libc.TLS, p uintptr, bDesc int32, iIdx int32, pTok var pSeg uintptr = ((*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)) + 68 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).FaFirst+1*4)).FiFirst)*92) var nTerm int32 = (*Fts5SegIter)(unsafe.Pointer(pSeg)).Fterm.Fn var pTerm uintptr = (*Fts5SegIter)(unsafe.Pointer(pSeg)).Fterm.Fp - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)) + 40 /* &.xSetOutputs */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), pSeg) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).FxSetOutputs})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), pSeg) if *(*int32)(unsafe.Pointer(bp + 20 /* bNewTerm */)) != 0 { if (nTerm < nToken) || (libc.Xmemcmp(tls, pToken, pTerm, uint32(nToken)) != 0) { @@ -185124,7 +186028,9 @@ func fts5SetupPrefixIter(tls *libc.TLS, p uintptr, bDesc int32, iIdx int32, pTok } } if iStore == (i1 + nMerge) { - (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(&xMerge)))(tls, p, bp /* &doclist */, nMerge, (aBuf + uintptr(i1)*12)) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{xMerge})).f(tls, p, bp /* &doclist */, nMerge, (aBuf + uintptr(i1)*12)) for iStore = i1; iStore < (i1 + nMerge); iStore++ { sqlite3Fts5BufferZero(tls, (aBuf + uintptr(iStore)*12)) } @@ -185133,14 +186039,18 @@ func fts5SetupPrefixIter(tls *libc.TLS, p uintptr, bDesc int32, iIdx int32, pTok iLastRowid = int64(0) } - (*(*func(*libc.TLS, uintptr, I64, uintptr, uintptr))(unsafe.Pointer(&xAppend)))(tls, p, ((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).Fbase.FiRowid - iLastRowid), *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), bp /* &doclist */) + (*struct { + f func(*libc.TLS, uintptr, I64, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{xAppend})).f(tls, p, ((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).Fbase.FiRowid - iLastRowid), *(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)), bp /* &doclist */) iLastRowid = (*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* p1 */)))).Fbase.FiRowid } for i = 0; i < nBuf; i = i + (nMerge) { var iFree int32 if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { - (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(&xMerge)))(tls, p, bp /* &doclist */, nMerge, (aBuf + uintptr(i)*12)) + (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{xMerge})).f(tls, p, bp /* &doclist */, nMerge, (aBuf + uintptr(i)*12)) } for iFree = i; iFree < (i + nMerge); iFree++ { sqlite3Fts5BufferFree(tls, (aBuf + uintptr(iFree)*12)) @@ -185217,7 +186127,7 @@ func sqlite3Fts5IndexReinit(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:22636 fts5StructureInvalidate(tls, p) fts5IndexDiscardData(tls, p) libc.Xmemset(tls, bp /* &s */, 0, uint32(unsafe.Sizeof(Fts5Structure{}))) - fts5DataWrite(tls, p, int64(FTS5_AVERAGES_ROWID), ts+915 /* "" */, 0) + fts5DataWrite(tls, p, int64(FTS5_AVERAGES_ROWID), ts+925 /* "" */, 0) fts5StructureWrite(tls, p, bp /* &s */) return fts5IndexReturn(tls, p) } @@ -185238,13 +186148,13 @@ func sqlite3Fts5IndexOpen(tls *libc.TLS, pConfig uintptr, bCreate int32, pp uint if *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) == SQLITE_OK { (*Fts5Index)(unsafe.Pointer(p)).FpConfig = pConfig (*Fts5Index)(unsafe.Pointer(p)).FnWorkUnit = FTS5_WORK_UNIT - (*Fts5Index)(unsafe.Pointer(p)).FzDataTbl = sqlite3Fts5Mprintf(tls, bp+8 /* &rc */, ts+40381 /* "%s_data" */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) + (*Fts5Index)(unsafe.Pointer(p)).FzDataTbl = sqlite3Fts5Mprintf(tls, bp+8 /* &rc */, ts+40391 /* "%s_data" */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) if ((*Fts5Index)(unsafe.Pointer(p)).FzDataTbl != 0) && (bCreate != 0) { *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) = sqlite3Fts5CreateTable(tls, - pConfig, ts+29396 /* "data" */, ts+40389 /* "id INTEGER PRIMA..." */, 0, pzErr) + pConfig, ts+29406 /* "data" */, ts+40399 /* "id INTEGER PRIMA..." */, 0, pzErr) if *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) == SQLITE_OK { - *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) = sqlite3Fts5CreateTable(tls, pConfig, ts+13517, /* "idx" */ - ts+40424, /* "segid, term, pgn..." */ + *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) = sqlite3Fts5CreateTable(tls, pConfig, ts+13527, /* "idx" */ + ts+40434, /* "segid, term, pgn..." */ 1, pzErr) } if *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) == SQLITE_OK { @@ -185413,7 +186323,9 @@ func sqlite3Fts5IndexQuery(tls *libc.TLS, p uintptr, pToken uintptr, nToken int3 if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { var pSeg uintptr = ((*(*uintptr)(unsafe.Pointer(bp + 12 /* pRet */)) + 68 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* pRet */)))).FaFirst+1*4)).FiFirst)*92) if (*Fts5SegIter)(unsafe.Pointer(pSeg)).FpLeaf != 0 { - (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp + 12 /* pRet */)) + 40 /* &.xSetOutputs */))))(tls, *(*uintptr)(unsafe.Pointer(bp + 12 /* pRet */)), pSeg) + (*struct { + f func(*libc.TLS, uintptr, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 12 /* pRet */)))).FxSetOutputs})).f(tls, *(*uintptr)(unsafe.Pointer(bp + 12 /* pRet */)), pSeg) } } } @@ -185550,7 +186462,7 @@ func sqlite3Fts5IndexSetCookie(tls *libc.TLS, p uintptr, iNew int32) int32 { /* sqlite3Fts5Put32(tls, bp /* &aCookie[0] */, iNew) rc = Xsqlite3_blob_open(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Index)(unsafe.Pointer(p)).FzDataTbl, - ts+40071 /* "block" */, int64(FTS5_STRUCTURE_ROWID), 1, bp+4 /* &pBlob */) + ts+40081 /* "block" */, int64(FTS5_STRUCTURE_ROWID), 1, bp+4 /* &pBlob */) if rc == SQLITE_OK { Xsqlite3_blob_write(tls, *(*uintptr)(unsafe.Pointer(bp + 4 /* pBlob */)), bp /* &aCookie[0] */, 4, 0) rc = Xsqlite3_blob_close(tls, *(*uintptr)(unsafe.Pointer(bp + 4 /* pBlob */))) @@ -185687,7 +186599,7 @@ func fts5IndexIntegrityCheckSegment(tls *libc.TLS, p uintptr, pSeg uintptr) { /* fts5IndexPrepareStmt(tls, p, bp+24 /* &pStmt */, Xsqlite3_mprintf(tls, - ts+40468, /* "SELECT segid, te..." */ + ts+40478, /* "SELECT segid, te..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, (*Fts5StructureSegment)(unsafe.Pointer(pSeg)).FiSegid))) // Iterate through the b-tree hierarchy. @@ -185897,7 +186809,7 @@ func sqlite3Fts5IndexIntegrityCheck(tls *libc.TLS, p uintptr, cksum U64, bUseCks } else { (*Fts5Buffer)(unsafe.Pointer(bp + 8 /* &poslist */)).Fn = 0 fts5SegiterPoslist(tls, p, ((*(*uintptr)(unsafe.Pointer(bp /* pIter */)) + 68 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pIter */)))).FaFirst+1*4)).FiFirst)*92), uintptr(0), bp+8 /* &poslist */) - sqlite3Fts5BufferAppendBlob(tls, (p + 32 /* &.rc */), bp+8 /* &poslist */, uint32(4), ts+40554 /* "\x00\x00\x00\x00" */) + sqlite3Fts5BufferAppendBlob(tls, (p + 32 /* &.rc */), bp+8 /* &poslist */, uint32(4), ts+40564 /* "\x00\x00\x00\x00" */) for 0 == sqlite3Fts5PoslistNext64(tls, (*Fts5Buffer)(unsafe.Pointer(bp+8 /* &poslist */)).Fp, (*Fts5Buffer)(unsafe.Pointer(bp+8 /* &poslist */)).Fn, bp+20 /* &iOff */, bp+24 /* &iPos */) { var iCol int32 = (int32(*(*I64)(unsafe.Pointer(bp + 24 /* iPos */)) >> 32)) var iTokOff int32 = (int32(*(*I64)(unsafe.Pointer(bp + 24 /* iPos */)) & int64(0x7FFFFFFF))) @@ -185953,17 +186865,17 @@ func fts5DebugRowid(tls *libc.TLS, pRc uintptr, pBuf uintptr, iKey I64) { /* sql if *(*int32)(unsafe.Pointer(bp + 32 /* iSegid */)) == 0 { if iKey == int64(FTS5_AVERAGES_ROWID) { - sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40559 /* "{averages} " */, 0) + sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40569 /* "{averages} " */, 0) } else { - sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40571 /* "{structure}" */, 0) + sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40581 /* "{structure}" */, 0) } } else { - sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40583, /* "{%ssegid=%d h=%d..." */ + sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40593, /* "{%ssegid=%d h=%d..." */ libc.VaList(bp, func() uintptr { if *(*int32)(unsafe.Pointer(bp + 36 /* bDlidx */)) != 0 { - return ts + 40609 /* "dlidx " */ + return ts + 40619 /* "dlidx " */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), *(*int32)(unsafe.Pointer(bp + 32 /* iSegid */)), *(*int32)(unsafe.Pointer(bp + 40 /* iHeight */)), *(*int32)(unsafe.Pointer(bp + 44 /* iPgno */)))) } } @@ -185978,13 +186890,13 @@ func fts5DebugStructure(tls *libc.TLS, pRc uintptr, pBuf uintptr, p uintptr) { / for iLvl = 0; iLvl < (*Fts5Structure)(unsafe.Pointer(p)).FnLevel; iLvl++ { var pLvl uintptr = ((p + 20 /* &.aLevel */) + uintptr(iLvl)*12) sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, - ts+40616 /* " {lvl=%d nMerge=..." */, libc.VaList(bp, iLvl, (*Fts5StructureLevel)(unsafe.Pointer(pLvl)).FnMerge, (*Fts5StructureLevel)(unsafe.Pointer(pLvl)).FnSeg)) + ts+40626 /* " {lvl=%d nMerge=..." */, libc.VaList(bp, iLvl, (*Fts5StructureLevel)(unsafe.Pointer(pLvl)).FnMerge, (*Fts5StructureLevel)(unsafe.Pointer(pLvl)).FnSeg)) for iSeg = 0; iSeg < (*Fts5StructureLevel)(unsafe.Pointer(pLvl)).FnSeg; iSeg++ { var pSeg uintptr = ((*Fts5StructureLevel)(unsafe.Pointer(pLvl)).FaSeg + uintptr(iSeg)*12) - sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40643, /* " {id=%d leaves=%..." */ + sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40653, /* " {id=%d leaves=%..." */ libc.VaList(bp+24, (*Fts5StructureSegment)(unsafe.Pointer(pSeg)).FiSegid, (*Fts5StructureSegment)(unsafe.Pointer(pSeg)).FpgnoFirst, (*Fts5StructureSegment)(unsafe.Pointer(pSeg)).FpgnoLast)) } - sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+31004 /* "}" */, 0) + sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+31014 /* "}" */, 0) } } @@ -186020,14 +186932,14 @@ func fts5DecodeAverages(tls *libc.TLS, pRc uintptr, pBuf uintptr, pBlob uintptr, defer tls.Free(24) var i int32 = 0 - var zSpace uintptr = ts + 915 /* "" */ + var zSpace uintptr = ts + 925 /* "" */ for i < nBlob { // var iVal U64 at bp+16, 8 i = i + (int32(sqlite3Fts5GetVarint(tls, (pBlob + uintptr(i)), bp+16 /* &iVal */))) - sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40666 /* "%s%d" */, libc.VaList(bp, zSpace, int32(*(*U64)(unsafe.Pointer(bp + 16 /* iVal */))))) - zSpace = ts + 12926 /* " " */ + sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40676 /* "%s%d" */, libc.VaList(bp, zSpace, int32(*(*U64)(unsafe.Pointer(bp + 16 /* iVal */))))) + zSpace = ts + 12936 /* " " */ } } @@ -186045,7 +186957,7 @@ func fts5DecodePoslist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n in // var iVal int32 at bp+8, 4 iOff = iOff + (sqlite3Fts5GetVarint32(tls, (a + uintptr(iOff)), bp+8 /* &iVal */)) - sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+39796 /* " %d" */, libc.VaList(bp, *(*int32)(unsafe.Pointer(bp + 8 /* iVal */)))) + sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+39806 /* " %d" */, libc.VaList(bp, *(*int32)(unsafe.Pointer(bp + 8 /* iVal */)))) } return iOff } @@ -186065,7 +186977,7 @@ func fts5DecodeDoclist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n in if n > 0 { iOff = int32(sqlite3Fts5GetVarint(tls, a, bp+32 /* &iDocid */)) - sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40671 /* " id=%lld" */, libc.VaList(bp, *(*I64)(unsafe.Pointer(bp + 32 /* iDocid */)))) + sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40681 /* " id=%lld" */, libc.VaList(bp, *(*I64)(unsafe.Pointer(bp + 32 /* iDocid */)))) } for iOff < n { // var nPos int32 at bp+40, 4 @@ -186073,11 +186985,11 @@ func fts5DecodeDoclist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n in // var bDel int32 at bp+44, 4 iOff = iOff + (fts5GetPoslistSize(tls, (a + uintptr(iOff)), bp+40 /* &nPos */, bp+44 /* &bDel */)) - sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40680 /* " nPos=%d%s" */, libc.VaList(bp+8, *(*int32)(unsafe.Pointer(bp + 40 /* nPos */)), func() uintptr { + sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40690 /* " nPos=%d%s" */, libc.VaList(bp+8, *(*int32)(unsafe.Pointer(bp + 40 /* nPos */)), func() uintptr { if *(*int32)(unsafe.Pointer(bp + 44 /* bDel */)) != 0 { - return ts + 21576 /* "*" */ + return ts + 21586 /* "*" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }())) iOff = iOff + (fts5DecodePoslist(tls, pRc, pBuf, (a + uintptr(iOff)), func() int32 { if (n - iOff) < (*(*int32)(unsafe.Pointer(bp + 40 /* nPos */))) { @@ -186090,7 +187002,7 @@ func fts5DecodeDoclist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n in iOff = iOff + (int32(sqlite3Fts5GetVarint(tls, (a + uintptr(iOff)), bp+48 /* &iDelta */))) *(*I64)(unsafe.Pointer(bp + 32 /* iDocid */)) += *(*I64)(unsafe.Pointer(bp + 48 /* iDelta */)) - sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40671 /* " id=%lld" */, libc.VaList(bp+24, *(*I64)(unsafe.Pointer(bp + 32 /* iDocid */)))) + sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40681 /* " id=%lld" */, libc.VaList(bp+24, *(*I64)(unsafe.Pointer(bp + 32 /* iDocid */)))) } } @@ -186116,7 +187028,7 @@ func fts5DecodeRowidList(tls *libc.TLS, pRc uintptr, pBuf uintptr, pData uintptr var iRowid I64 = int64(0) for i < nData { - var zApp uintptr = ts + 915 /* "" */ + var zApp uintptr = ts + 925 /* "" */ // var iVal U64 at bp+16, 8 i = i + (int32(sqlite3Fts5GetVarint(tls, (pData + uintptr(i)), bp+16 /* &iVal */))) @@ -186126,13 +187038,13 @@ func fts5DecodeRowidList(tls *libc.TLS, pRc uintptr, pBuf uintptr, pData uintptr i++ if (i < nData) && (int32(*(*U8)(unsafe.Pointer(pData + uintptr(i)))) == 0x00) { i++ - zApp = ts + 40691 /* "+" */ + zApp = ts + 40701 /* "+" */ } else { - zApp = ts + 21576 /* "*" */ + zApp = ts + 21586 /* "*" */ } } - sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40693 /* " %lld%s" */, libc.VaList(bp, iRowid, zApp)) + sqlite3Fts5BufferAppendPrintf(tls, pRc, pBuf, ts+40703 /* " %lld%s" */, libc.VaList(bp, iRowid, zApp)) } } @@ -186239,7 +187151,7 @@ __5: goto __7 } sqlite3Fts5BufferAppendPrintf(tls, bp+60 /* &rc */, bp+48, /* &s */ - ts+40701 /* " %d(%lld)" */, libc.VaList(bp, (*Fts5DlidxLvl)(unsafe.Pointer(bp+80 /* &lvl */)).FiLeafPgno, (*Fts5DlidxLvl)(unsafe.Pointer(bp+80 /* &lvl */)).FiRowid)) + ts+40711 /* " %d(%lld)" */, libc.VaList(bp, (*Fts5DlidxLvl)(unsafe.Pointer(bp+80 /* &lvl */)).FiLeafPgno, (*Fts5DlidxLvl)(unsafe.Pointer(bp+80 /* &lvl */)).FiRowid)) goto __6 __6: fts5DlidxLvlNext(tls, bp+80 /* &lvl */) @@ -186294,7 +187206,7 @@ __16: (*Fts5Buffer)(unsafe.Pointer(bp + 120 /* &term */)).Fn = *(*int32)(unsafe.Pointer(bp + 144 /* nKeep */)) sqlite3Fts5BufferAppendBlob(tls, bp+60 /* &rc */, bp+120 /* &term */, uint32(*(*int32)(unsafe.Pointer(bp + 136 /* nAppend */))), (a + uintptr(iOff))) sqlite3Fts5BufferAppendPrintf(tls, - bp+60 /* &rc */, bp+48 /* &s */, ts+40711 /* " term=%.*s" */, libc.VaList(bp+16, (*Fts5Buffer)(unsafe.Pointer(bp+120 /* &term */)).Fn, (*Fts5Buffer)(unsafe.Pointer(bp+120 /* &term */)).Fp)) + bp+60 /* &rc */, bp+48 /* &s */, ts+40721 /* " term=%.*s" */, libc.VaList(bp+16, (*Fts5Buffer)(unsafe.Pointer(bp+120 /* &term */)).Fn, (*Fts5Buffer)(unsafe.Pointer(bp+120 /* &term */)).Fp)) iOff = iOff + (*(*int32)(unsafe.Pointer(bp + 136 /* nAppend */))) // Figure out where the doclist for this term ends @@ -186333,7 +187245,7 @@ __12: if !(n < 4) { goto __21 } - sqlite3Fts5BufferSet(tls, bp+60 /* &rc */, bp+48 /* &s */, 7, ts+40722 /* "corrupt" */) + sqlite3Fts5BufferSet(tls, bp+60 /* &rc */, bp+48 /* &s */, 7, ts+40732 /* "corrupt" */) goto decode_out goto __22 __21: @@ -186455,7 +187367,7 @@ __39: iOff1 = iOff1 + (*(*int32)(unsafe.Pointer(bp + 164 /* nByte */))) sqlite3Fts5BufferAppendPrintf(tls, - bp+60 /* &rc */, bp+48 /* &s */, ts+40711 /* " term=%.*s" */, libc.VaList(bp+32, (*Fts5Buffer)(unsafe.Pointer(bp+148 /* &term1 */)).Fn, (*Fts5Buffer)(unsafe.Pointer(bp+148 /* &term1 */)).Fp)) + bp+60 /* &rc */, bp+48 /* &s */, ts+40721 /* " term=%.*s" */, libc.VaList(bp+32, (*Fts5Buffer)(unsafe.Pointer(bp+148 /* &term1 */)).Fn, (*Fts5Buffer)(unsafe.Pointer(bp+148 /* &term1 */)).Fp)) iOff1 = iOff1 + (fts5DecodeDoclist(tls, bp+60 /* &rc */, bp+48 /* &s */, (a + uintptr(iOff1)), (iEnd - iOff1))) goto __32 __33: @@ -186487,16 +187399,16 @@ __41: func fts5RowidFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:227717:13: */ var zArg uintptr if nArg == 0 { - Xsqlite3_result_error(tls, pCtx, ts+40730 /* "should be: fts5_..." */, -1) + Xsqlite3_result_error(tls, pCtx, ts+40740 /* "should be: fts5_..." */, -1) } else { zArg = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apVal))) - if 0 == Xsqlite3_stricmp(tls, zArg, ts+40767 /* "segment" */) { + if 0 == Xsqlite3_stricmp(tls, zArg, ts+40777 /* "segment" */) { var iRowid I64 var segid int32 var pgno int32 if nArg != 3 { Xsqlite3_result_error(tls, pCtx, - ts+40775 /* "should be: fts5_..." */, -1) + ts+40785 /* "should be: fts5_..." */, -1) } else { segid = Xsqlite3_value_int(tls, *(*uintptr)(unsafe.Pointer(apVal + 1*4))) pgno = Xsqlite3_value_int(tls, *(*uintptr)(unsafe.Pointer(apVal + 2*4))) @@ -186505,7 +187417,7 @@ func fts5RowidFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { } } else { Xsqlite3_result_error(tls, pCtx, - ts+40822 /* "first arg to fts..." */, -1) + ts+40832 /* "first arg to fts..." */, -1) } } } @@ -186518,13 +187430,13 @@ func fts5RowidFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { // SQLite error code is returned instead. func sqlite3Fts5IndexInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:227757:12: */ var rc int32 = Xsqlite3_create_function(tls, - db, ts+40866 /* "fts5_decode" */, 2, SQLITE_UTF8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + db, ts+40876 /* "fts5_decode" */, 2, SQLITE_UTF8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{fts5DecodeFunction})), uintptr(0), uintptr(0)) if rc == SQLITE_OK { rc = Xsqlite3_create_function(tls, - db, ts+40878 /* "fts5_decode_none" */, 2, + db, ts+40888 /* "fts5_decode_none" */, 2, SQLITE_UTF8, db, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{fts5DecodeFunction})), uintptr(0), uintptr(0)) @@ -186532,7 +187444,7 @@ func sqlite3Fts5IndexInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:227757 if rc == SQLITE_OK { rc = Xsqlite3_create_function(tls, - db, ts+40895 /* "fts5_rowid" */, -1, SQLITE_UTF8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { + db, ts+40905 /* "fts5_rowid" */, -1, SQLITE_UTF8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{fts5RowidFunction})), uintptr(0), uintptr(0)) } @@ -186910,7 +187822,7 @@ func fts5BestIndexMethod(tls *libc.TLS, pVTab uintptr, pInfo uintptr) int32 { /* if (*Fts5Config)(unsafe.Pointer(pConfig)).FbLock != 0 { (*Fts5Table)(unsafe.Pointer(pTab)).Fbase.FzErrMsg = Xsqlite3_mprintf(tls, - ts+40906 /* "recursively defi..." */, 0) + ts+40916 /* "recursively defi..." */, 0) return SQLITE_ERROR } @@ -186944,7 +187856,7 @@ func fts5BestIndexMethod(tls *libc.TLS, pVTab uintptr, pInfo uintptr) int32 { /* } else if iCol >= 0 { bSeenMatch = 1 *(*int8)(unsafe.Pointer(idxStr + uintptr(libc.PostIncInt32(&iIdxStr, 1)))) = int8('M') - Xsqlite3_snprintf(tls, 6, (idxStr + uintptr(iIdxStr)), ts+6845 /* "%d" */, libc.VaList(bp, iCol)) + Xsqlite3_snprintf(tls, 6, (idxStr + uintptr(iIdxStr)), ts+6855 /* "%d" */, libc.VaList(bp, iCol)) idxStr += uintptr(libc.Xstrlen(tls, (idxStr + uintptr(iIdxStr)))) } @@ -186960,7 +187872,7 @@ func fts5BestIndexMethod(tls *libc.TLS, pVTab uintptr, pInfo uintptr) int32 { /* } return int8('G') }() - Xsqlite3_snprintf(tls, 6, (idxStr + uintptr(iIdxStr)), ts+6845 /* "%d" */, libc.VaList(bp+8, iCol)) + Xsqlite3_snprintf(tls, 6, (idxStr + uintptr(iIdxStr)), ts+6855 /* "%d" */, libc.VaList(bp+8, iCol)) idxStr += uintptr(libc.Xstrlen(tls, (idxStr + uintptr(iIdxStr)))) (*sqlite3_index_constraint_usage)(unsafe.Pointer((*Sqlite3_index_info)(unsafe.Pointer(pInfo)).FaConstraintUsage + uintptr(i)*8)).FargvIndex = libc.PreIncInt32(&iCons, 1) @@ -187129,7 +188041,7 @@ func fts5FreeCursorComponents(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:228530 for pData = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpAuxdata; pData != 0; pData = pNext { pNext = (*Fts5Auxdata)(unsafe.Pointer(pData)).FpNext if (*Fts5Auxdata)(unsafe.Pointer(pData)).FxDelete != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pData + 8 /* &.xDelete */))))(tls, (*Fts5Auxdata)(unsafe.Pointer(pData)).FpPtr) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Auxdata)(unsafe.Pointer(pData)).FxDelete})).f(tls, (*Fts5Auxdata)(unsafe.Pointer(pData)).FpPtr) } Xsqlite3_free(tls, pData) } @@ -187303,7 +188215,7 @@ func fts5NextMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:228688: rc = Xsqlite3_reset(tls, (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpStmt) if rc != SQLITE_OK { (*Sqlite3_vtab)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(pCursor)).FpVtab)).FzErrMsg = Xsqlite3_mprintf(tls, - ts+951 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb))) + ts+961 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb))) } } else { rc = SQLITE_OK @@ -187335,7 +188247,7 @@ func fts5PrepareStatement(tls *libc.TLS, ppStmt uintptr, pConfig uintptr, zFmt u rc = Xsqlite3_prepare_v3(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, zSql, -1, uint32(SQLITE_PREPARE_PERSISTENT), bp+8 /* &pRet */, uintptr(0)) if rc != SQLITE_OK { - *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FpzErrmsg)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb))) + *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FpzErrmsg)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb))) } Xsqlite3_free(tls, zSql) } @@ -187374,25 +188286,25 @@ func fts5CursorFirstSorted(tls *libc.TLS, pTab uintptr, pCsr uintptr, bDesc int3 // // If SQLite a built-in statement cache, this wouldn't be a problem. rc = fts5PrepareStatement(tls, (pSorter /* &.pStmt */), pConfig, - ts+40945, /* "SELECT rowid, ra..." */ + ts+40955, /* "SELECT rowid, ra..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, zRank, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, func() uintptr { if zRankArgs != 0 { - return ts + 16636 /* ", " */ + return ts + 16646 /* ", " */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), func() uintptr { if zRankArgs != 0 { return zRankArgs } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }(), func() uintptr { if bDesc != 0 { - return ts + 41000 /* "DESC" */ + return ts + 41010 /* "DESC" */ } - return ts + 41005 /* "ASC" */ + return ts + 41015 /* "ASC" */ }())) (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpSorter = pSorter @@ -187443,13 +188355,13 @@ func fts5SpecialMatch(tls *libc.TLS, pTab uintptr, pCsr uintptr, zQuery uintptr) (*Fts5Cursor)(unsafe.Pointer(pCsr)).FePlan = FTS5_PLAN_SPECIAL - if (n == 5) && (0 == Xsqlite3_strnicmp(tls, ts+41009 /* "reads" */, z, n)) { + if (n == 5) && (0 == Xsqlite3_strnicmp(tls, ts+41019 /* "reads" */, z, n)) { (*Fts5Cursor)(unsafe.Pointer(pCsr)).FiSpecial = I64(sqlite3Fts5IndexReads(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.FpIndex)) - } else if (n == 2) && (0 == Xsqlite3_strnicmp(tls, ts+6989 /* "id" */, z, n)) { + } else if (n == 2) && (0 == Xsqlite3_strnicmp(tls, ts+6999 /* "id" */, z, n)) { (*Fts5Cursor)(unsafe.Pointer(pCsr)).FiSpecial = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FiCsrId } else { // An unrecognized directive. Return an error message. - (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.Fbase.FzErrMsg = Xsqlite3_mprintf(tls, ts+41015 /* "unknown special ..." */, libc.VaList(bp, n, z)) + (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.Fbase.FzErrMsg = Xsqlite3_mprintf(tls, ts+41025 /* "unknown special ..." */, libc.VaList(bp, n, z)) rc = SQLITE_ERROR } @@ -187484,7 +188396,7 @@ func fts5FindRankFunction(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:2288 var zRankArgs uintptr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FzRankArgs if zRankArgs != 0 { - var zSql uintptr = sqlite3Fts5Mprintf(tls, bp+16 /* &rc */, ts+41043 /* "SELECT %s" */, libc.VaList(bp, zRankArgs)) + var zSql uintptr = sqlite3Fts5Mprintf(tls, bp+16 /* &rc */, ts+41053 /* "SELECT %s" */, libc.VaList(bp, zRankArgs)) if zSql != 0 { *(*uintptr)(unsafe.Pointer(bp + 20 /* pStmt */)) = uintptr(0) *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) = Xsqlite3_prepare_v3(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, zSql, -1, @@ -187516,7 +188428,7 @@ func fts5FindRankFunction(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:2288 pAux = fts5FindAuxiliary(tls, pTab, zRank) if pAux == uintptr(0) { - (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.Fbase.FzErrMsg = Xsqlite3_mprintf(tls, ts+41053 /* "no such function..." */, libc.VaList(bp+8, zRank)) + (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.Fbase.FzErrMsg = Xsqlite3_mprintf(tls, ts+41063 /* "no such function..." */, libc.VaList(bp+8, zRank)) *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) = SQLITE_ERROR } } @@ -187548,14 +188460,14 @@ func fts5CursorParseRank(tls *libc.TLS, pConfig uintptr, pCsr uintptr, pRank uin *(*int32)(unsafe.Pointer(pCsr + 56 /* &.csrflags */)) |= (FTS5CSR_FREE_ZRANK) } else if rc == SQLITE_ERROR { (*Sqlite3_vtab)(unsafe.Pointer((*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab)).FzErrMsg = Xsqlite3_mprintf(tls, - ts+41074 /* "parse error in r..." */, libc.VaList(bp, z)) + ts+41084 /* "parse error in r..." */, libc.VaList(bp, z)) } } else { if (*Fts5Config)(unsafe.Pointer(pConfig)).FzRank != 0 { (*Fts5Cursor)(unsafe.Pointer(pCsr)).FzRank = (*Fts5Config)(unsafe.Pointer(pConfig)).FzRank (*Fts5Cursor)(unsafe.Pointer(pCsr)).FzRankArgs = (*Fts5Config)(unsafe.Pointer(pConfig)).FzRankArgs } else { - (*Fts5Cursor)(unsafe.Pointer(pCsr)).FzRank = ts + 38813 /* "bm25" */ + (*Fts5Cursor)(unsafe.Pointer(pCsr)).FzRank = ts + 38823 /* "bm25" */ (*Fts5Cursor)(unsafe.Pointer(pCsr)).FzRankArgs = uintptr(0) } } @@ -187621,7 +188533,7 @@ func fts5FilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, idxStr uintp goto __1 } (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.Fbase.FzErrMsg = Xsqlite3_mprintf(tls, - ts+40906 /* "recursively defi..." */, 0) + ts+40916 /* "recursively defi..." */, 0) return SQLITE_ERROR __1: ; @@ -187667,7 +188579,7 @@ __8: if !(zText == uintptr(0)) { goto __14 } - zText = ts + 915 /* "" */ + zText = ts + 925 /* "" */ __14: ; iCol = 0 @@ -187856,7 +188768,7 @@ __35: goto __40 } *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer(pConfig)).FpzErrmsg)) = Xsqlite3_mprintf(tls, - ts+41107 /* "%s: table does n..." */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) + ts+41117 /* "%s: table does n..." */, libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) rc = SQLITE_ERROR goto __41 __40: @@ -187993,7 +188905,7 @@ func fts5SeekCursor(tls *libc.TLS, pCsr uintptr, bErrormsg int32) int32 { /* sql rc = (SQLITE_CORRUPT | (int32(1) << 8)) } else if (*Fts5Config)(unsafe.Pointer((*Fts5Table)(unsafe.Pointer(pTab)).FpConfig)).FpzErrmsg != 0 { *(*uintptr)(unsafe.Pointer((*Fts5Config)(unsafe.Pointer((*Fts5Table)(unsafe.Pointer(pTab)).FpConfig)).FpzErrmsg)) = Xsqlite3_mprintf(tls, - ts+951 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer((*Fts5Table)(unsafe.Pointer(pTab)).FpConfig)).Fdb))) + ts+961 /* "%s" */, libc.VaList(bp, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer((*Fts5Table)(unsafe.Pointer(pTab)).FpConfig)).Fdb))) } } } @@ -188030,29 +188942,29 @@ func fts5SpecialInsert(tls *libc.TLS, pTab uintptr, zCmd uintptr, pVal uintptr) var rc int32 = SQLITE_OK *(*int32)(unsafe.Pointer(bp /* bError */)) = 0 - if 0 == Xsqlite3_stricmp(tls, ts+41143 /* "delete-all" */, zCmd) { + if 0 == Xsqlite3_stricmp(tls, ts+41153 /* "delete-all" */, zCmd) { if (*Fts5Config)(unsafe.Pointer(pConfig)).FeContent == FTS5_CONTENT_NORMAL { fts5SetVtabError(tls, pTab, - ts+41154 /* "'delete-all' may..." */, 0) + ts+41164 /* "'delete-all' may..." */, 0) rc = SQLITE_ERROR } else { rc = sqlite3Fts5StorageDeleteAll(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage) } - } else if 0 == Xsqlite3_stricmp(tls, ts+41234 /* "rebuild" */, zCmd) { + } else if 0 == Xsqlite3_stricmp(tls, ts+41244 /* "rebuild" */, zCmd) { if (*Fts5Config)(unsafe.Pointer(pConfig)).FeContent == FTS5_CONTENT_NONE { fts5SetVtabError(tls, pTab, - ts+41242 /* "'rebuild' may no..." */, 0) + ts+41252 /* "'rebuild' may no..." */, 0) rc = SQLITE_ERROR } else { rc = sqlite3Fts5StorageRebuild(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage) } - } else if 0 == Xsqlite3_stricmp(tls, ts+18871 /* "optimize" */, zCmd) { + } else if 0 == Xsqlite3_stricmp(tls, ts+18881 /* "optimize" */, zCmd) { rc = sqlite3Fts5StorageOptimize(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage) - } else if 0 == Xsqlite3_stricmp(tls, ts+41298 /* "merge" */, zCmd) { + } else if 0 == Xsqlite3_stricmp(tls, ts+41308 /* "merge" */, zCmd) { var nMerge int32 = Xsqlite3_value_int(tls, pVal) rc = sqlite3Fts5StorageMerge(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage, nMerge) - } else if 0 == Xsqlite3_stricmp(tls, ts+41304 /* "integrity-check" */, zCmd) { + } else if 0 == Xsqlite3_stricmp(tls, ts+41314 /* "integrity-check" */, zCmd) { var iArg int32 = Xsqlite3_value_int(tls, pVal) rc = sqlite3Fts5StorageIntegrity(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage, iArg) } else { @@ -188126,7 +189038,7 @@ func fts5UpdateMethod(tls *libc.TLS, pVtab uintptr, nArg int32, apVal uintptr, p // A "special" INSERT op. These are handled separately. var z uintptr = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(apVal + uintptr((2+(*Fts5Config)(unsafe.Pointer(pConfig)).FnCol))*4))) if ((*Fts5Config)(unsafe.Pointer(pConfig)).FeContent != FTS5_CONTENT_NORMAL) && - (0 == Xsqlite3_stricmp(tls, ts+19410 /* "delete" */, z)) { + (0 == Xsqlite3_stricmp(tls, ts+19420 /* "delete" */, z)) { *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) = fts5SpecialDelete(tls, pTab, apVal) } else { *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) = fts5SpecialInsert(tls, pTab, z, *(*uintptr)(unsafe.Pointer(apVal + uintptr(((2+(*Fts5Config)(unsafe.Pointer(pConfig)).FnCol)+1))*4))) @@ -188151,12 +189063,12 @@ func fts5UpdateMethod(tls *libc.TLS, pVtab uintptr, nArg int32, apVal uintptr, p // This is not suported. if (eType0 == SQLITE_INTEGER) && (fts5IsContentless(tls, pTab) != 0) { (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.Fbase.FzErrMsg = Xsqlite3_mprintf(tls, - ts+41320, /* "cannot %s conten..." */ + ts+41330, /* "cannot %s conten..." */ libc.VaList(bp, func() uintptr { if nArg > 1 { - return ts + 22822 /* "UPDATE" */ + return ts + 22832 /* "UPDATE" */ } - return ts + 41357 /* "DELETE from" */ + return ts + 41367 /* "DELETE from" */ }(), (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) = SQLITE_ERROR } else if nArg == 1 { @@ -188557,14 +189469,14 @@ func fts5ApiSetAuxdata(tls *libc.TLS, pCtx uintptr, pPtr uintptr, xDelete uintpt if pData != 0 { if (*Fts5Auxdata)(unsafe.Pointer(pData)).FxDelete != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pData + 8 /* &.xDelete */))))(tls, (*Fts5Auxdata)(unsafe.Pointer(pData)).FpPtr) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Auxdata)(unsafe.Pointer(pData)).FxDelete})).f(tls, (*Fts5Auxdata)(unsafe.Pointer(pData)).FpPtr) } } else { *(*int32)(unsafe.Pointer(bp /* rc */)) = SQLITE_OK pData = sqlite3Fts5MallocZero(tls, bp /* &rc */, int64(unsafe.Sizeof(Fts5Auxdata{}))) if pData == uintptr(0) { if xDelete != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&xDelete)))(tls, pPtr) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{xDelete})).f(tls, pPtr) } return *(*int32)(unsafe.Pointer(bp /* rc */)) } @@ -188782,7 +189694,9 @@ func fts5ApiQueryPhrase(tls *libc.TLS, pCtx uintptr, iPhrase int32, pUserData ui if rc == SQLITE_OK { for rc = fts5CursorFirst(tls, pTab, *(*uintptr)(unsafe.Pointer(bp /* pNew */)), 0); (rc == SQLITE_OK) && (((*Fts5Cursor)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(bp /* pNew */))))).Fcsrflags & (FTS5CSR_EOF)) == 0); rc = fts5NextMethod(tls, *(*uintptr)(unsafe.Pointer(bp /* pNew */))) { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(&xCallback)))(tls, uintptr(unsafe.Pointer(&sFts5Api)), *(*uintptr)(unsafe.Pointer(bp /* pNew */)), pUserData) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{xCallback})).f(tls, uintptr(unsafe.Pointer(&sFts5Api)), *(*uintptr)(unsafe.Pointer(bp /* pNew */)), pUserData) if rc != SQLITE_OK { if rc == SQLITE_DONE { rc = SQLITE_OK @@ -188799,7 +189713,9 @@ func fts5ApiQueryPhrase(tls *libc.TLS, pCtx uintptr, iPhrase int32, pUserData ui func fts5ApiInvoke(tls *libc.TLS, pAux uintptr, pCsr uintptr, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:230126:13: */ (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpAux = pAux - (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr))(unsafe.Pointer((pAux + 12 /* &.xFunc */))))(tls, uintptr(unsafe.Pointer(&sFts5Api)), pCsr, context, argc, argv) + (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Auxiliary)(unsafe.Pointer(pAux)).FxFunc})).f(tls, uintptr(unsafe.Pointer(&sFts5Api)), pCsr, context, argc, argv) (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpAux = uintptr(0) } @@ -188826,7 +189742,7 @@ func fts5ApiCallback(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { pCsr = fts5CursorFromCsrid(tls, (*Fts5Auxiliary)(unsafe.Pointer(pAux)).FpGlobal, iCsrId) if (pCsr == uintptr(0)) || ((*Fts5Cursor)(unsafe.Pointer(pCsr)).FePlan == 0) { - var zErr uintptr = Xsqlite3_mprintf(tls, ts+41369 /* "no such cursor: ..." */, libc.VaList(bp, iCsrId)) + var zErr uintptr = Xsqlite3_mprintf(tls, ts+41379 /* "no such cursor: ..." */, libc.VaList(bp, iCsrId)) Xsqlite3_result_error(tls, context, zErr, -1) Xsqlite3_free(tls, zErr) } else { @@ -189131,9 +190047,11 @@ func sqlite3Fts5GetTokenizer(tls *libc.TLS, pGlobal uintptr, azArg uintptr, nArg if pMod == uintptr(0) { rc = SQLITE_ERROR - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+41390 /* "no such tokenize..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(azArg)))) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+41400 /* "no such tokenize..." */, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(azArg)))) } else { - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pMod + 8 /* &.x */ /* &.xCreate */))))(tls, + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5TokenizerModule)(unsafe.Pointer(pMod)).Fx.FxCreate})).f(tls, (*Fts5TokenizerModule)(unsafe.Pointer(pMod)).FpUserData, func() uintptr { if azArg != 0 { return (azArg + 1*4) @@ -189148,7 +190066,7 @@ func sqlite3Fts5GetTokenizer(tls *libc.TLS, pGlobal uintptr, azArg uintptr, nArg (*Fts5Config)(unsafe.Pointer(pConfig)).FpTokApi = (pMod + 8 /* &.x */) if rc != SQLITE_OK { if pzErr != 0 { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+41412 /* "error in tokeniz..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+41422 /* "error in tokeniz..." */, 0) } } else { (*Fts5Config)(unsafe.Pointer(pConfig)).FePattern = sqlite3Fts5TokenizerPattern(tls, @@ -189174,7 +190092,7 @@ func fts5ModuleDestroy(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:230542:13: */ for pAux = (*Fts5Global)(unsafe.Pointer(pGlobal)).FpAux; pAux != 0; pAux = pNextAux { pNextAux = (*Fts5Auxiliary)(unsafe.Pointer(pAux)).FpNext if (*Fts5Auxiliary)(unsafe.Pointer(pAux)).FxDestroy != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pAux + 16 /* &.xDestroy */))))(tls, (*Fts5Auxiliary)(unsafe.Pointer(pAux)).FpUserData) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Fts5Auxiliary)(unsafe.Pointer(pAux)).FxDestroy})).f(tls, (*Fts5Auxiliary)(unsafe.Pointer(pAux)).FpUserData) } Xsqlite3_free(tls, pAux) } @@ -189182,7 +190100,7 @@ func fts5ModuleDestroy(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:230542:13: */ for pTok = (*Fts5Global)(unsafe.Pointer(pGlobal)).FpTok; pTok != 0; pTok = pNextTok { pNextTok = (*Fts5TokenizerModule)(unsafe.Pointer(pTok)).FpNext if (*Fts5TokenizerModule)(unsafe.Pointer(pTok)).FxDestroy != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pTok + 20 /* &.xDestroy */))))(tls, (*Fts5TokenizerModule)(unsafe.Pointer(pTok)).FpUserData) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*Fts5TokenizerModule)(unsafe.Pointer(pTok)).FxDestroy})).f(tls, (*Fts5TokenizerModule)(unsafe.Pointer(pTok)).FpUserData) } Xsqlite3_free(tls, pTok) } @@ -189195,7 +190113,7 @@ func fts5Fts5Func(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* s var ppApi uintptr _ = nArg - ppApi = Xsqlite3_value_pointer(tls, *(*uintptr)(unsafe.Pointer(apArg)), ts+41443 /* "fts5_api_ptr" */) + ppApi = Xsqlite3_value_pointer(tls, *(*uintptr)(unsafe.Pointer(apArg)), ts+41453 /* "fts5_api_ptr" */) if ppApi != 0 { *(*uintptr)(unsafe.Pointer(ppApi)) = (pGlobal /* &.api */) } @@ -189206,7 +190124,7 @@ func fts5SourceIdFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apUnused uintptr) _ = nArg _ = apUnused - Xsqlite3_result_text(tls, pCtx, ts+41456 /* "fts5: 2021-06-18..." */, -1, libc.UintptrFromInt32(-1)) + Xsqlite3_result_text(tls, pCtx, ts+41466 /* "fts5: 2021-06-18..." */, -1, libc.UintptrFromInt32(-1)) } // Return true if zName is the extension on one of the shadow tables used @@ -189222,7 +190140,7 @@ func fts5ShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:230592:12 } var azName2 = [5]uintptr{ - ts + 41547 /* "config" */, ts + 39002 /* "content" */, ts + 29396 /* "data" */, ts + 39353 /* "docsize" */, ts + 13517, /* "idx" */ + ts + 41557 /* "config" */, ts + 39012 /* "content" */, ts + 29406 /* "data" */, ts + 39363 /* "docsize" */, ts + 13527, /* "idx" */ } /* sqlite3.c:230593:21 */ func fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:230603:12: */ @@ -189246,7 +190164,7 @@ func fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:230603:12: */ (*Fts5Global)(unsafe.Pointer(pGlobal)).Fapi.FxFindTokenizer = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32 }{fts5FindTokenizer})) - rc = Xsqlite3_create_module_v2(tls, db, ts+41554 /* "fts5" */, uintptr(unsafe.Pointer(&fts5Mod)), p, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{fts5ModuleDestroy}))) + rc = Xsqlite3_create_module_v2(tls, db, ts+41564 /* "fts5" */, uintptr(unsafe.Pointer(&fts5Mod)), p, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{fts5ModuleDestroy}))) if rc == SQLITE_OK { rc = sqlite3Fts5IndexInit(tls, db) } @@ -189264,13 +190182,13 @@ func fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:230603:12: */ } if rc == SQLITE_OK { rc = Xsqlite3_create_function(tls, - db, ts+41554 /* "fts5" */, 1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { + db, ts+41564 /* "fts5" */, 1, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{fts5Fts5Func})), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { rc = Xsqlite3_create_function(tls, - db, ts+41559 /* "fts5_source_id" */, 0, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { + db, ts+41569 /* "fts5_source_id" */, 0, SQLITE_UTF8, p, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) }{fts5SourceIdFunc})), uintptr(0), uintptr(0)) } @@ -189336,20 +190254,20 @@ func fts5StorageGetStmt(tls *libc.TLS, p uintptr, eStmt int32, ppStmt uintptr, p if *(*uintptr)(unsafe.Pointer((p + 24 /* &.aStmt */) + uintptr(eStmt)*4)) == uintptr(0) { *(*[11]uintptr)(unsafe.Pointer(bp + 128 /* azStmt */)) = [11]uintptr{ - ts + 41574, /* "SELECT %s FROM %..." */ - ts + 41642, /* "SELECT %s FROM %..." */ - ts + 41711, /* "SELECT %s FROM %..." */ // LOOKUP + ts + 41584, /* "SELECT %s FROM %..." */ + ts + 41652, /* "SELECT %s FROM %..." */ + ts + 41721, /* "SELECT %s FROM %..." */ // LOOKUP - ts + 41744, /* "INSERT INTO %Q.'..." */ // INSERT_CONTENT - ts + 41783, /* "REPLACE INTO %Q...." */ // REPLACE_CONTENT - ts + 41823, /* "DELETE FROM %Q.'..." */ // DELETE_CONTENT - ts + 41862, /* "REPLACE INTO %Q...." */ // REPLACE_DOCSIZE - ts + 41903, /* "DELETE FROM %Q.'..." */ // DELETE_DOCSIZE + ts + 41754, /* "INSERT INTO %Q.'..." */ // INSERT_CONTENT + ts + 41793, /* "REPLACE INTO %Q...." */ // REPLACE_CONTENT + ts + 41833, /* "DELETE FROM %Q.'..." */ // DELETE_CONTENT + ts + 41872, /* "REPLACE INTO %Q...." */ // REPLACE_DOCSIZE + ts + 41913, /* "DELETE FROM %Q.'..." */ // DELETE_DOCSIZE - ts + 41942, /* "SELECT sz FROM %..." */ // LOOKUP_DOCSIZE + ts + 41952, /* "SELECT sz FROM %..." */ // LOOKUP_DOCSIZE - ts + 41984, /* "REPLACE INTO %Q...." */ // REPLACE_CONFIG - ts + 42024, /* "SELECT %s FROM %..." */ // SCAN + ts + 41994, /* "REPLACE INTO %Q...." */ // REPLACE_CONFIG + ts + 42034, /* "SELECT %s FROM %..." */ // SCAN } var pC uintptr = (*Fts5Storage)(unsafe.Pointer(p)).FpConfig var zSql uintptr = uintptr(0) @@ -189416,7 +190334,7 @@ func fts5StorageGetStmt(tls *libc.TLS, p uintptr, eStmt int32, ppStmt uintptr, p (*Fts5Config)(unsafe.Pointer((*Fts5Storage)(unsafe.Pointer(p)).FpConfig)).FbLock-- Xsqlite3_free(tls, zSql) if (rc != SQLITE_OK) && (pzErrMsg != 0) { - *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+951 /* "%s" */, libc.VaList(bp+120, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer(pC)).Fdb))) + *(*uintptr)(unsafe.Pointer(pzErrMsg)) = Xsqlite3_mprintf(tls, ts+961 /* "%s" */, libc.VaList(bp+120, Xsqlite3_errmsg(tls, (*Fts5Config)(unsafe.Pointer(pC)).Fdb))) } } } @@ -189454,18 +190372,18 @@ func sqlite3Fts5DropAll(tls *libc.TLS, pConfig uintptr) int32 { /* sqlite3.c:230 var rc int32 = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), - ts+42047, /* "DROP TABLE IF EX..." */ + ts+42057, /* "DROP TABLE IF EX..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) if (rc == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer(pConfig)).FbColumnsize != 0) { rc = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), - ts+42151, /* "DROP TABLE IF EX..." */ + ts+42161, /* "DROP TABLE IF EX..." */ libc.VaList(bp+48, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) } if (rc == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer(pConfig)).FeContent == FTS5_CONTENT_NORMAL) { rc = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), - ts+42189, /* "DROP TABLE IF EX..." */ + ts+42199, /* "DROP TABLE IF EX..." */ libc.VaList(bp+64, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) } return rc @@ -189477,7 +190395,7 @@ func fts5StorageRenameOne(tls *libc.TLS, pConfig uintptr, pRc uintptr, zTail uin if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { *(*int32)(unsafe.Pointer(pRc)) = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), - ts+42227, /* "ALTER TABLE %Q.'..." */ + ts+42237, /* "ALTER TABLE %Q.'..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, zTail, zName, zTail)) } } @@ -189489,14 +190407,14 @@ func sqlite3Fts5StorageRename(tls *libc.TLS, pStorage uintptr, zName uintptr) in var pConfig uintptr = (*Fts5Storage)(unsafe.Pointer(pStorage)).FpConfig *(*int32)(unsafe.Pointer(bp /* rc */)) = sqlite3Fts5StorageSync(tls, pStorage) - fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+29396 /* "data" */, zName) - fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+13517 /* "idx" */, zName) - fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+41547 /* "config" */, zName) + fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+29406 /* "data" */, zName) + fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+13527 /* "idx" */, zName) + fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+41557 /* "config" */, zName) if (*Fts5Config)(unsafe.Pointer(pConfig)).FbColumnsize != 0 { - fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+39353 /* "docsize" */, zName) + fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+39363 /* "docsize" */, zName) } if (*Fts5Config)(unsafe.Pointer(pConfig)).FeContent == FTS5_CONTENT_NORMAL { - fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+39002 /* "content" */, zName) + fts5StorageRenameOne(tls, pConfig, bp /* &rc */, ts+39012 /* "content" */, zName) } return *(*int32)(unsafe.Pointer(bp /* rc */)) } @@ -189510,17 +190428,17 @@ func sqlite3Fts5CreateTable(tls *libc.TLS, pConfig uintptr, zPost uintptr, zDefn var rc int32 *(*uintptr)(unsafe.Pointer(bp + 64 /* zErr */)) = uintptr(0) - rc = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, bp+64 /* &zErr */, ts+42269, /* "CREATE TABLE %Q...." */ + rc = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, bp+64 /* &zErr */, ts+42279, /* "CREATE TABLE %Q...." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, zPost, zDefn, func() uintptr { if bWithout != 0 { - return ts + 34011 /* " WITHOUT ROWID" */ + return ts + 34021 /* " WITHOUT ROWID" */ } - return ts + 915 /* "" */ + return ts + 925 /* "" */ }())) if *(*uintptr)(unsafe.Pointer(bp + 64 /* zErr */)) != 0 { *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, - ts+42299, /* "fts5: error crea..." */ + ts+42309, /* "fts5: error crea..." */ libc.VaList(bp+40, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, zPost, *(*uintptr)(unsafe.Pointer(bp + 64 /* zErr */)))) Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 64 /* zErr */))) } @@ -189562,27 +190480,27 @@ func sqlite3Fts5StorageOpen(tls *libc.TLS, pConfig uintptr, pIndex uintptr, bCre } else { var i int32 var iOff int32 - Xsqlite3_snprintf(tls, nDefn, zDefn, ts+42343 /* "id INTEGER PRIMA..." */, 0) + Xsqlite3_snprintf(tls, nDefn, zDefn, ts+42353 /* "id INTEGER PRIMA..." */, 0) iOff = int32(libc.Xstrlen(tls, zDefn)) for i = 0; i < (*Fts5Config)(unsafe.Pointer(pConfig)).FnCol; i++ { - Xsqlite3_snprintf(tls, (nDefn - iOff), (zDefn + uintptr(iOff)), ts+42366 /* ", c%d" */, libc.VaList(bp, i)) + Xsqlite3_snprintf(tls, (nDefn - iOff), (zDefn + uintptr(iOff)), ts+42376 /* ", c%d" */, libc.VaList(bp, i)) iOff = iOff + (int32(libc.Xstrlen(tls, (zDefn + uintptr(iOff))))) } - rc = sqlite3Fts5CreateTable(tls, pConfig, ts+39002 /* "content" */, zDefn, 0, pzErr) + rc = sqlite3Fts5CreateTable(tls, pConfig, ts+39012 /* "content" */, zDefn, 0, pzErr) } Xsqlite3_free(tls, zDefn) } if (rc == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer(pConfig)).FbColumnsize != 0) { rc = sqlite3Fts5CreateTable(tls, - pConfig, ts+39353 /* "docsize" */, ts+42372 /* "id INTEGER PRIMA..." */, 0, pzErr) + pConfig, ts+39363 /* "docsize" */, ts+42382 /* "id INTEGER PRIMA..." */, 0, pzErr) } if rc == SQLITE_OK { rc = sqlite3Fts5CreateTable(tls, - pConfig, ts+41547 /* "config" */, ts+42404 /* "k PRIMARY KEY, v" */, 1, pzErr) + pConfig, ts+41557 /* "config" */, ts+42414 /* "k PRIMARY KEY, v" */, 1, pzErr) } if rc == SQLITE_OK { - rc = sqlite3Fts5StorageConfigValue(tls, p, ts+39499 /* "version" */, uintptr(0), FTS5_CURRENT_VERSION) + rc = sqlite3Fts5StorageConfigValue(tls, p, ts+39509 /* "version" */, uintptr(0), FTS5_CURRENT_VERSION) } } @@ -189819,12 +190737,12 @@ func sqlite3Fts5StorageDeleteAll(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c: // Delete the contents of the %_data and %_docsize tables. rc = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), - ts+42421, /* "DELETE FROM %Q.'..." */ + ts+42431, /* "DELETE FROM %Q.'..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) if (rc == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer(pConfig)).FbColumnsize != 0) { rc = fts5ExecPrintf(tls, (*Fts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), - ts+42471, /* "DELETE FROM %Q.'..." */ + ts+42481, /* "DELETE FROM %Q.'..." */ libc.VaList(bp+32, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName)) } @@ -189834,7 +190752,7 @@ func sqlite3Fts5StorageDeleteAll(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c: rc = sqlite3Fts5IndexReinit(tls, (*Fts5Storage)(unsafe.Pointer(p)).FpIndex) } if rc == SQLITE_OK { - rc = sqlite3Fts5StorageConfigValue(tls, p, ts+39499 /* "version" */, uintptr(0), FTS5_CURRENT_VERSION) + rc = sqlite3Fts5StorageConfigValue(tls, p, ts+39509 /* "version" */, uintptr(0), FTS5_CURRENT_VERSION) } return rc } @@ -190029,7 +190947,7 @@ func fts5StorageCount(tls *libc.TLS, p uintptr, zSuffix uintptr, pnRow uintptr) var zSql uintptr var rc int32 - zSql = Xsqlite3_mprintf(tls, ts+42500, /* "SELECT count(*) ..." */ + zSql = Xsqlite3_mprintf(tls, ts+42510, /* "SELECT count(*) ..." */ libc.VaList(bp, (*Fts5Config)(unsafe.Pointer(pConfig)).FzDb, (*Fts5Config)(unsafe.Pointer(pConfig)).FzName, zSuffix)) if zSql == uintptr(0) { rc = SQLITE_NOMEM @@ -190226,14 +191144,14 @@ func sqlite3Fts5StorageIntegrity(tls *libc.TLS, p uintptr, iArg int32) int32 { / // number of rows. if (rc == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer(pConfig)).FeContent == FTS5_CONTENT_NORMAL) { *(*I64)(unsafe.Pointer(bp + 36 /* nRow */)) = int64(0) - rc = fts5StorageCount(tls, p, ts+39002 /* "content" */, bp+36 /* &nRow */) + rc = fts5StorageCount(tls, p, ts+39012 /* "content" */, bp+36 /* &nRow */) if (rc == SQLITE_OK) && (*(*I64)(unsafe.Pointer(bp + 36 /* nRow */)) != (*Fts5Storage)(unsafe.Pointer(p)).FnTotalRow) { rc = (SQLITE_CORRUPT | (int32(1) << 8)) } } if (rc == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer(pConfig)).FbColumnsize != 0) { *(*I64)(unsafe.Pointer(bp + 44 /* nRow */)) = int64(0) - rc = fts5StorageCount(tls, p, ts+39353 /* "docsize" */, bp+44 /* &nRow */) + rc = fts5StorageCount(tls, p, ts+39363 /* "docsize" */, bp+44 /* &nRow */) if (rc == SQLITE_OK) && (*(*I64)(unsafe.Pointer(bp + 44 /* nRow */)) != (*Fts5Storage)(unsafe.Pointer(p)).FnTotalRow) { rc = (SQLITE_CORRUPT | (int32(1) << 8)) } @@ -190469,9 +191387,9 @@ func fts5AsciiCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, libc.Xmemcpy(tls, p /* &.aTokenChar */, uintptr(unsafe.Pointer(&aAsciiTokenChar)), uint32(unsafe.Sizeof(aAsciiTokenChar))) for i = 0; (rc == SQLITE_OK) && (i < nArg); i = i + (2) { var zArg uintptr = *(*uintptr)(unsafe.Pointer(azArg + uintptr((i+1))*4)) - if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42532 /* "tokenchars" */) { + if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42542 /* "tokenchars" */) { fts5AsciiAddExceptions(tls, p, zArg, 1) - } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42543 /* "separators" */) { + } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42553 /* "separators" */) { fts5AsciiAddExceptions(tls, p, zArg, 0) } else { rc = SQLITE_ERROR @@ -190549,7 +191467,9 @@ func fts5AsciiTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, iUnused asciiFold(tls, pFold, (pText + uintptr(is)), nByte) // Invoke the token callback - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32)(unsafe.Pointer(&xToken)))(tls, pCtx, 0, pFold, nByte, is, ie) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xToken})).f(tls, pCtx, 0, pFold, nByte, is, ie) is = (ie + 1) } @@ -190710,7 +191630,7 @@ func fts5UnicodeCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32 } else { p = Xsqlite3_malloc(tls, int32(unsafe.Sizeof(Unicode61Tokenizer{}))) if p != 0 { - var zCat uintptr = ts + 42554 /* "L* N* Co" */ + var zCat uintptr = ts + 42564 /* "L* N* Co" */ var i int32 libc.Xmemset(tls, p, 0, uint32(unsafe.Sizeof(Unicode61Tokenizer{}))) @@ -190723,7 +191643,7 @@ func fts5UnicodeCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32 // Search for a "categories" argument for i = 0; (rc == SQLITE_OK) && (i < nArg); i = i + (2) { - if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42563 /* "categories" */) { + if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42573 /* "categories" */) { zCat = *(*uintptr)(unsafe.Pointer(azArg + uintptr((i+1))*4)) } } @@ -190734,18 +191654,18 @@ func fts5UnicodeCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32 for i = 0; (rc == SQLITE_OK) && (i < nArg); i = i + (2) { var zArg uintptr = *(*uintptr)(unsafe.Pointer(azArg + uintptr((i+1))*4)) - if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42574 /* "remove_diacritic..." */) { + if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42584 /* "remove_diacritic..." */) { if (((int32(*(*int8)(unsafe.Pointer(zArg))) != '0') && (int32(*(*int8)(unsafe.Pointer(zArg))) != '1')) && (int32(*(*int8)(unsafe.Pointer(zArg))) != '2')) || (*(*int8)(unsafe.Pointer(zArg + 1)) != 0) { rc = SQLITE_ERROR } else { (*Unicode61Tokenizer)(unsafe.Pointer(p)).FeRemoveDiacritic = (int32(*(*int8)(unsafe.Pointer(zArg))) - '0') } - } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42532 /* "tokenchars" */) { + } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42542 /* "tokenchars" */) { rc = fts5UnicodeAddExceptions(tls, p, zArg, 1) - } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42543 /* "separators" */) { + } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42553 /* "separators" */) { rc = fts5UnicodeAddExceptions(tls, p, zArg, 0) - } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42563 /* "categories" */) { + } else if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42573 /* "categories" */) { // no-op } else { rc = SQLITE_ERROR @@ -191000,7 +191920,9 @@ __15: ; // Invoke the token callback - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32)(unsafe.Pointer(&xToken)))(tls, pCtx, 0, aFold, ((int32(zOut) - int32(aFold)) / 1), is, ie) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xToken})).f(tls, pCtx, 0, aFold, ((int32(zOut) - int32(aFold)) / 1), is, ie) goto __1 __2: ; @@ -191042,7 +191964,7 @@ func fts5PorterDelete(tls *libc.TLS, pTok uintptr) { /* sqlite3.c:232438:13: */ if pTok != 0 { var p uintptr = pTok if (*PorterTokenizer)(unsafe.Pointer(p)).FpTokenizer != 0 { - (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((p /* &.tokenizer */ + 4 /* &.xDelete */))))(tls, (*PorterTokenizer)(unsafe.Pointer(p)).FpTokenizer) + (*struct{ f func(*libc.TLS, uintptr) })(unsafe.Pointer(&struct{ uintptr }{(*PorterTokenizer)(unsafe.Pointer(p)).Ftokenizer.FxDelete})).f(tls, (*PorterTokenizer)(unsafe.Pointer(p)).FpTokenizer) } Xsqlite3_free(tls, p) } @@ -191057,7 +191979,7 @@ func fts5PorterCreate(tls *libc.TLS, pCtx uintptr, azArg uintptr, nArg int32, pp var rc int32 = SQLITE_OK var pRet uintptr *(*uintptr)(unsafe.Pointer(bp /* pUserdata */)) = uintptr(0) - var zBase uintptr = ts + 42592 /* "unicode61" */ + var zBase uintptr = ts + 42602 /* "unicode61" */ if nArg > 0 { zBase = *(*uintptr)(unsafe.Pointer(azArg)) @@ -191066,7 +191988,9 @@ func fts5PorterCreate(tls *libc.TLS, pCtx uintptr, azArg uintptr, nArg int32, pp pRet = Xsqlite3_malloc(tls, int32(unsafe.Sizeof(PorterTokenizer{}))) if pRet != 0 { libc.Xmemset(tls, pRet, 0, uint32(unsafe.Sizeof(PorterTokenizer{}))) - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 8 /* &.xFindTokenizer */))))(tls, pApi, zBase, bp /* &pUserdata */, (pRet /* &.tokenizer */)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5_api)(unsafe.Pointer(pApi)).FxFindTokenizer})).f(tls, pApi, zBase, bp /* &pUserdata */, (pRet /* &.tokenizer */)) } else { rc = SQLITE_NOMEM } @@ -191083,7 +192007,9 @@ func fts5PorterCreate(tls *libc.TLS, pCtx uintptr, azArg uintptr, nArg int32, pp } return uintptr(0) }() - rc = (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pRet /* &.tokenizer */ /* &.xCreate */))))(tls, *(*uintptr)(unsafe.Pointer(bp /* pUserdata */)), azArg2, nArg2, (pRet + 12 /* &.pTokenizer */)) + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*PorterTokenizer)(unsafe.Pointer(pRet)).Ftokenizer.FxCreate})).f(tls, *(*uintptr)(unsafe.Pointer(bp /* pUserdata */)), azArg2, nArg2, (pRet + 12 /* &.pTokenizer */)) } if rc != SQLITE_OK { @@ -191208,7 +192134,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { case 'a': - if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42602 /* "al" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42612 /* "al" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-2)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 2) } @@ -191216,11 +192142,11 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'c': - if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42605 /* "ance" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42615 /* "ance" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-4)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 4) } - } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42610 /* "ence" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42620 /* "ence" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-4)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 4) } @@ -191228,7 +192154,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'e': - if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42615 /* "er" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42625 /* "er" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-2)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 2) } @@ -191236,7 +192162,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'i': - if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42618 /* "ic" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42628 /* "ic" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-2)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 2) } @@ -191244,11 +192170,11 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'l': - if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42621 /* "able" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42631 /* "able" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-4)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 4) } - } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42626 /* "ible" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42636 /* "ible" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-4)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 4) } @@ -191256,19 +192182,19 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'n': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42631 /* "ant" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42641 /* "ant" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } - } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42635 /* "ement" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42645 /* "ement" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-5)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 5) } - } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42641 /* "ment" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42651 /* "ment" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-4)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 4) } - } else if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42646 /* "ent" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + } else if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42656 /* "ent" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } @@ -191276,11 +192202,11 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'o': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42650 /* "ion" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42660 /* "ion" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1_and_S_or_T(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } - } else if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42654 /* "ou" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + } else if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42664 /* "ou" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-2)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 2) } @@ -191288,7 +192214,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 's': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42657 /* "ism" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42667 /* "ism" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } @@ -191296,11 +192222,11 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 't': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42661 /* "ate" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42671 /* "ate" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } - } else if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42665 /* "iti" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + } else if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42675 /* "iti" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } @@ -191308,7 +192234,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'u': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42669 /* "ous" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42679 /* "ous" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } @@ -191316,7 +192242,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'v': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42673 /* "ive" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42683 /* "ive" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } @@ -191324,7 +192250,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'z': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42677 /* "ize" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42687 /* "ize" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt1(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } @@ -191341,24 +192267,24 @@ func fts5PorterStep1B2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sq switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { case 'a': - if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42681 /* "at" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 2))), ts+42661 /* "ate" */, uint32(3)) + if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42691 /* "at" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 2))), ts+42671 /* "ate" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 2) + 3) ret = 1 } break case 'b': - if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42684 /* "bl" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 2))), ts+42687 /* "ble" */, uint32(3)) + if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42694 /* "bl" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 2))), ts+42697 /* "ble" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 2) + 3) ret = 1 } break case 'i': - if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42691 /* "iz" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 2))), ts+42677 /* "ize" */, uint32(3)) + if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42701 /* "iz" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 2))), ts+42687 /* "ize" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 2) + 3) ret = 1 } @@ -191374,137 +192300,137 @@ func fts5PorterStep2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { case 'a': - if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+42694 /* "ational" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { + if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+42704 /* "ational" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-7)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+42661 /* "ate" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+42671 /* "ate" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 7) + 3) } - } else if (nBuf > 6) && (0 == libc.Xmemcmp(tls, ts+42702 /* "tional" */, (aBuf+uintptr((nBuf-6))), uint32(6))) { + } else if (nBuf > 6) && (0 == libc.Xmemcmp(tls, ts+42712 /* "tional" */, (aBuf+uintptr((nBuf-6))), uint32(6))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-6)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 6))), ts+42709 /* "tion" */, uint32(4)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 6))), ts+42719 /* "tion" */, uint32(4)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 6) + 4) } } break case 'c': - if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42714 /* "enci" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42724 /* "enci" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+42610 /* "ence" */, uint32(4)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+42620 /* "ence" */, uint32(4)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 4) + 4) } - } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42719 /* "anci" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42729 /* "anci" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+42605 /* "ance" */, uint32(4)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+42615 /* "ance" */, uint32(4)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 4) + 4) } } break case 'e': - if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42724 /* "izer" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42734 /* "izer" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+42677 /* "ize" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+42687 /* "ize" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 4) + 3) } } break case 'g': - if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42729 /* "logi" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42739 /* "logi" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+18209 /* "log" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+18219 /* "log" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 4) + 3) } } break case 'l': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42734 /* "bli" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42744 /* "bli" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-3)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 3))), ts+42687 /* "ble" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 3))), ts+42697 /* "ble" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 3) + 3) } - } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42738 /* "alli" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42748 /* "alli" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+42602 /* "al" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+42612 /* "al" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 4) + 2) } - } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42743 /* "entli" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42753 /* "entli" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42646 /* "ent" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42656 /* "ent" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 3) } - } else if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42749 /* "eli" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + } else if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42759 /* "eli" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-3)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 3))), ts+42753 /* "e" */, uint32(1)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 3))), ts+42763 /* "e" */, uint32(1)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 3) + 1) } - } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42755 /* "ousli" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42765 /* "ousli" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42669 /* "ous" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42679 /* "ous" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 3) } } break case 'o': - if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+42761 /* "ization" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { + if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+42771 /* "ization" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-7)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+42677 /* "ize" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+42687 /* "ize" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 7) + 3) } - } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42769 /* "ation" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42779 /* "ation" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42661 /* "ate" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42671 /* "ate" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 3) } - } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42775 /* "ator" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + } else if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42785 /* "ator" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+42661 /* "ate" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+42671 /* "ate" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 4) + 3) } } break case 's': - if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42780 /* "alism" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42790 /* "alism" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42602 /* "al" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42612 /* "al" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 2) } - } else if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+42786 /* "iveness" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { + } else if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+42796 /* "iveness" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-7)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+42673 /* "ive" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+42683 /* "ive" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 7) + 3) } - } else if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+42794 /* "fulness" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { + } else if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+42804 /* "fulness" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-7)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+42802 /* "ful" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+42812 /* "ful" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 7) + 3) } - } else if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+42806 /* "ousness" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { + } else if (nBuf > 7) && (0 == libc.Xmemcmp(tls, ts+42816 /* "ousness" */, (aBuf+uintptr((nBuf-7))), uint32(7))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-7)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+42669 /* "ous" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 7))), ts+42679 /* "ous" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 7) + 3) } } break case 't': - if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42814 /* "aliti" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42824 /* "aliti" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42602 /* "al" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42612 /* "al" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 2) } - } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42820 /* "iviti" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42830 /* "iviti" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42673 /* "ive" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42683 /* "ive" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 3) } - } else if (nBuf > 6) && (0 == libc.Xmemcmp(tls, ts+42826 /* "biliti" */, (aBuf+uintptr((nBuf-6))), uint32(6))) { + } else if (nBuf > 6) && (0 == libc.Xmemcmp(tls, ts+42836 /* "biliti" */, (aBuf+uintptr((nBuf-6))), uint32(6))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-6)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 6))), ts+42687 /* "ble" */, uint32(3)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 6))), ts+42697 /* "ble" */, uint32(3)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 6) + 3) } } @@ -191520,16 +192446,16 @@ func fts5PorterStep3(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { case 'a': - if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42833 /* "ical" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42843 /* "ical" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+42618 /* "ic" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 4))), ts+42628 /* "ic" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 4) + 2) } } break case 's': - if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42838 /* "ness" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { + if (nBuf > 4) && (0 == libc.Xmemcmp(tls, ts+42848 /* "ness" */, (aBuf+uintptr((nBuf-4))), uint32(4))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-4)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 4) } @@ -191537,21 +192463,21 @@ func fts5PorterStep3(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 't': - if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42843 /* "icate" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42853 /* "icate" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42618 /* "ic" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42628 /* "ic" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 2) } - } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42849 /* "iciti" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + } else if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42859 /* "iciti" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42618 /* "ic" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42628 /* "ic" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 2) } } break case 'u': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42802 /* "ful" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42812 /* "ful" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) } @@ -191559,7 +192485,7 @@ func fts5PorterStep3(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'v': - if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42855 /* "ative" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42865 /* "ative" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 5) } @@ -191567,9 +192493,9 @@ func fts5PorterStep3(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli break case 'z': - if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42861 /* "alize" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { + if (nBuf > 5) && (0 == libc.Xmemcmp(tls, ts+42871 /* "alize" */, (aBuf+uintptr((nBuf-5))), uint32(5))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-5)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42602 /* "al" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 5))), ts+42612 /* "al" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 5) + 2) } } @@ -191585,12 +192511,12 @@ func fts5PorterStep1B(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sql switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { case 'e': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42867 /* "eed" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42877 /* "eed" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_MGt0(tls, aBuf, (nBuf-3)) != 0 { - libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 3))), ts+42871 /* "ee" */, uint32(2)) + libc.Xmemcpy(tls, (aBuf + uintptr((nBuf - 3))), ts+42881 /* "ee" */, uint32(2)) *(*int32)(unsafe.Pointer(pnBuf)) = ((nBuf - 3) + 2) } - } else if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42874 /* "ed" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { + } else if (nBuf > 2) && (0 == libc.Xmemcmp(tls, ts+42884 /* "ed" */, (aBuf+uintptr((nBuf-2))), uint32(2))) { if fts5Porter_Vowel(tls, aBuf, (nBuf-2)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 2) ret = 1 @@ -191599,7 +192525,7 @@ func fts5PorterStep1B(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sql break case 'n': - if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42877 /* "ing" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { + if (nBuf > 3) && (0 == libc.Xmemcmp(tls, ts+42887 /* "ing" */, (aBuf+uintptr((nBuf-3))), uint32(3))) { if fts5Porter_Vowel(tls, aBuf, (nBuf-3)) != 0 { *(*int32)(unsafe.Pointer(pnBuf)) = (nBuf - 3) ret = 1 @@ -191719,10 +192645,14 @@ __8: __10: ; - return (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32)(unsafe.Pointer((p + 4 /* &.xToken */))))(tls, (*PorterContext)(unsafe.Pointer(p)).FpCtx, tflags, aBuf, *(*int32)(unsafe.Pointer(bp /* nBuf */)), iStart, iEnd) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*PorterContext)(unsafe.Pointer(p)).FxToken})).f(tls, (*PorterContext)(unsafe.Pointer(p)).FpCtx, tflags, aBuf, *(*int32)(unsafe.Pointer(bp /* nBuf */)), iStart, iEnd) pass_through: - return (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32)(unsafe.Pointer((p + 4 /* &.xToken */))))(tls, (*PorterContext)(unsafe.Pointer(p)).FpCtx, tflags, pToken, nToken, iStart, iEnd) + return (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*PorterContext)(unsafe.Pointer(p)).FxToken})).f(tls, (*PorterContext)(unsafe.Pointer(p)).FpCtx, tflags, pToken, nToken, iStart, iEnd) } // Tokenize using the porter tokenizer. @@ -191736,7 +192666,9 @@ func fts5PorterTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, flags i (*PorterContext)(unsafe.Pointer(bp /* &sCtx */)).FxToken = xToken (*PorterContext)(unsafe.Pointer(bp /* &sCtx */)).FpCtx = pCtx (*PorterContext)(unsafe.Pointer(bp /* &sCtx */)).FaBuf = p + 16 /* &.aBuf */ - return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer((p /* &.tokenizer */ + 8 /* &.xTokenize */))))(tls, + return (*struct { + f func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*PorterTokenizer)(unsafe.Pointer(p)).Ftokenizer.FxTokenize})).f(tls, (*PorterTokenizer)(unsafe.Pointer(p)).FpTokenizer, bp /* &sCtx */, flags, pText, nText, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 }{fts5PorterCb}))) @@ -191769,7 +192701,7 @@ func fts5TriCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, pp (*TrigramTokenizer)(unsafe.Pointer(pNew)).FbFold = 1 for i = 0; (rc == SQLITE_OK) && (i < nArg); i = i + (2) { var zArg uintptr = *(*uintptr)(unsafe.Pointer(azArg + uintptr((i+1))*4)) - if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42881 /* "case_sensitive" */) { + if 0 == Xsqlite3_stricmp(tls, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)), ts+42891 /* "case_sensitive" */) { if ((int32(*(*int8)(unsafe.Pointer(zArg))) != '0') && (int32(*(*int8)(unsafe.Pointer(zArg))) != '1')) || (*(*int8)(unsafe.Pointer(zArg + 1)) != 0) { rc = SQLITE_ERROR } else { @@ -191921,7 +192853,9 @@ func fts5TriTokenize(tls *libc.TLS, pTok uintptr, pCtx uintptr, unusedFlags int3 } else { break } - rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32)(unsafe.Pointer(&xToken)))(tls, pCtx, 0, bp /* &aBuf[0] */, (int32((zOut - bp /* &aBuf[0] */) / 1)), iStart, (int32(((uintptr(iStart) + zOut) - bp /* &aBuf[0] */) / 1))) + rc = (*struct { + f func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32 + })(unsafe.Pointer(&struct{ uintptr }{xToken})).f(tls, pCtx, 0, bp /* &aBuf[0] */, (int32((zOut - bp /* &aBuf[0] */) / 1)), iStart, (int32(((uintptr(iStart) + zOut) - bp /* &aBuf[0] */) / 1))) if rc != SQLITE_OK { break } @@ -191959,22 +192893,22 @@ func sqlite3Fts5TokenizerInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c: defer tls.Free(64) *(*[4]BuiltinTokenizer)(unsafe.Pointer(bp /* aBuiltin */)) = [4]BuiltinTokenizer{ - {FzName: ts + 42592 /* "unicode61" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { + {FzName: ts + 42602 /* "unicode61" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 }{fts5UnicodeCreate})), FxDelete: *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{fts5UnicodeDelete})), FxTokenize: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32 }{fts5UnicodeTokenize}))}}, - {FzName: ts + 42896 /* "ascii" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { + {FzName: ts + 42906 /* "ascii" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 }{fts5AsciiCreate})), FxDelete: *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{fts5AsciiDelete})), FxTokenize: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32 }{fts5AsciiTokenize}))}}, - {FzName: ts + 42902 /* "porter" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { + {FzName: ts + 42912 /* "porter" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 }{fts5PorterCreate})), FxDelete: *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{fts5PorterDelete})), FxTokenize: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32 }{fts5PorterTokenize}))}}, - {FzName: ts + 42909 /* "trigram" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { + {FzName: ts + 42919 /* "trigram" */, Fx: Fts5_tokenizer{FxCreate: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 }{fts5TriCreate})), FxDelete: *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{fts5TriDelete})), FxTokenize: *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr, int32, uintptr) int32 @@ -191985,7 +192919,9 @@ func sqlite3Fts5TokenizerInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c: var i int32 // To iterate through builtin functions for i = 0; (rc == SQLITE_OK) && (i < (int32(uint32(unsafe.Sizeof([4]BuiltinTokenizer{})) / uint32(unsafe.Sizeof(BuiltinTokenizer{}))))); i++ { - rc = (*(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer((pApi + 4 /* &.xCreateTokenizer */))))(tls, pApi, + rc = (*struct { + f func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*Fts5_api)(unsafe.Pointer(pApi)).FxCreateTokenizer})).f(tls, pApi, (*BuiltinTokenizer)(unsafe.Pointer(bp /* &aBuiltin */ +uintptr(i)*16)).FzName, pApi, (bp /* &aBuiltin */ + uintptr(i)*16 + 4 /* &.x */), @@ -193317,14 +194253,14 @@ func fts5VocabTableType(tls *libc.TLS, zType uintptr, pzErr uintptr, peType uint var zCopy uintptr = sqlite3Fts5Strndup(tls, bp+8 /* &rc */, zType, -1) if *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) == SQLITE_OK { sqlite3Fts5Dequote(tls, zCopy) - if Xsqlite3_stricmp(tls, zCopy, ts+42917 /* "col" */) == 0 { + if Xsqlite3_stricmp(tls, zCopy, ts+42927 /* "col" */) == 0 { *(*int32)(unsafe.Pointer(peType)) = FTS5_VOCAB_COL - } else if Xsqlite3_stricmp(tls, zCopy, ts+42921 /* "row" */) == 0 { + } else if Xsqlite3_stricmp(tls, zCopy, ts+42931 /* "row" */) == 0 { *(*int32)(unsafe.Pointer(peType)) = FTS5_VOCAB_ROW - } else if Xsqlite3_stricmp(tls, zCopy, ts+42925 /* "instance" */) == 0 { + } else if Xsqlite3_stricmp(tls, zCopy, ts+42935 /* "instance" */) == 0 { *(*int32)(unsafe.Pointer(peType)) = FTS5_VOCAB_INSTANCE } else { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+42934 /* "fts5vocab: unkno..." */, libc.VaList(bp, zCopy)) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+42944 /* "fts5vocab: unkno..." */, libc.VaList(bp, zCopy)) *(*int32)(unsafe.Pointer(bp + 8 /* rc */)) = SQLITE_ERROR } Xsqlite3_free(tls, zCopy) @@ -193371,19 +194307,19 @@ func fts5VocabInitVtab(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv defer tls.Free(20) *(*[3]uintptr)(unsafe.Pointer(bp + 4 /* azSchema */)) = [3]uintptr{ - ts + 42968, /* "CREATE TABlE voc..." */ - ts + 43008, /* "CREATE TABlE voc..." */ - ts + 43043, /* "CREATE TABlE voc..." */ + ts + 42978, /* "CREATE TABlE voc..." */ + ts + 43018, /* "CREATE TABlE voc..." */ + ts + 43053, /* "CREATE TABlE voc..." */ } var pRet uintptr = uintptr(0) *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) = SQLITE_OK // Return code var bDb int32 - bDb = (libc.Bool32(((argc == 6) && (libc.Xstrlen(tls, *(*uintptr)(unsafe.Pointer(argv + 1*4))) == Size_t(4))) && (libc.Xmemcmp(tls, ts+26013 /* "temp" */, *(*uintptr)(unsafe.Pointer(argv + 1*4)), uint32(4)) == 0))) + bDb = (libc.Bool32(((argc == 6) && (libc.Xstrlen(tls, *(*uintptr)(unsafe.Pointer(argv + 1*4))) == Size_t(4))) && (libc.Xmemcmp(tls, ts+26023 /* "temp" */, *(*uintptr)(unsafe.Pointer(argv + 1*4)), uint32(4)) == 0))) if (argc != 5) && (bDb == 0) { - *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+43086 /* "wrong number of ..." */, 0) + *(*uintptr)(unsafe.Pointer(pzErr)) = Xsqlite3_mprintf(tls, ts+43096 /* "wrong number of ..." */, 0) *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) = SQLITE_ERROR } else { var nByte int32 // Bytes of space to allocate @@ -193535,11 +194471,11 @@ func fts5VocabOpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* if (*Fts5VocabTable)(unsafe.Pointer(pTab)).FbBusy != 0 { (*Sqlite3_vtab)(unsafe.Pointer(pVTab)).FzErrMsg = Xsqlite3_mprintf(tls, - ts+43119 /* "recursive defini..." */, libc.VaList(bp, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Db, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Tbl)) + ts+43129 /* "recursive defini..." */, libc.VaList(bp, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Db, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Tbl)) return SQLITE_ERROR } zSql = sqlite3Fts5Mprintf(tls, bp+64, /* &rc */ - ts+43150, /* "SELECT t.%Q FROM..." */ + ts+43160, /* "SELECT t.%Q FROM..." */ libc.VaList(bp+16, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Tbl, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Db, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Tbl, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Tbl)) if zSql != 0 { *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) = Xsqlite3_prepare_v2(tls, (*Fts5VocabTable)(unsafe.Pointer(pTab)).Fdb, zSql, -1, bp+68 /* &pStmt */, uintptr(0)) @@ -193563,7 +194499,7 @@ func fts5VocabOpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* *(*uintptr)(unsafe.Pointer(bp + 68 /* pStmt */)) = uintptr(0) if *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) == SQLITE_OK { (*Sqlite3_vtab)(unsafe.Pointer(pVTab)).FzErrMsg = Xsqlite3_mprintf(tls, - ts+43201 /* "no such fts5 tab..." */, libc.VaList(bp+48, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Db, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Tbl)) + ts+43211 /* "no such fts5 tab..." */, libc.VaList(bp+48, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Db, (*Fts5VocabTable)(unsafe.Pointer(pTab)).FzFts5Tbl)) *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) = SQLITE_ERROR } } else { @@ -193851,7 +194787,7 @@ func fts5VocabFilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, zUnused if pLe != 0 { var zCopy uintptr = Xsqlite3_value_text(tls, pLe) if zCopy == uintptr(0) { - zCopy = ts + 915 /* "" */ + zCopy = ts + 925 /* "" */ } (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FnLeTerm = Xsqlite3_value_bytes(tls, pLe) (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FzLeTerm = Xsqlite3_malloc(tls, ((*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FnLeTerm + 1)) @@ -193968,7 +194904,7 @@ func fts5VocabRowidMethod(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 func sqlite3Fts5VocabInit(tls *libc.TLS, pGlobal uintptr, db uintptr) int32 { /* sqlite3.c:235171:12: */ var p uintptr = pGlobal - return Xsqlite3_create_module_v2(tls, db, ts+43227 /* "fts5vocab" */, uintptr(unsafe.Pointer(&fts5Vocab)), p, uintptr(0)) + return Xsqlite3_create_module_v2(tls, db, ts+43237 /* "fts5vocab" */, uintptr(unsafe.Pointer(&fts5Vocab)), p, uintptr(0)) } var fts5Vocab = Sqlite3_module{ @@ -194084,7 +195020,7 @@ func stmtConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintp rc = Xsqlite3_declare_vtab(tls, db, - ts+43237 /* "CREATE TABLE x(s..." */) + ts+43247 /* "CREATE TABLE x(s..." */) if rc == SQLITE_OK { pNew = Xsqlite3_malloc(tls, int32(unsafe.Sizeof(Stmt_vtab{}))) *(*uintptr)(unsafe.Pointer(ppVtab)) = pNew @@ -194241,14 +195177,14 @@ var stmtModule = Sqlite3_module{ // xCreate func Xsqlite3StmtVtabInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:235483:20: */ var rc int32 = SQLITE_OK - rc = Xsqlite3_create_module(tls, db, ts+43309 /* "sqlite_stmt" */, uintptr(unsafe.Pointer(&stmtModule)), uintptr(0)) + rc = Xsqlite3_create_module(tls, db, ts+43319 /* "sqlite_stmt" */, uintptr(unsafe.Pointer(&stmtModule)), uintptr(0)) return rc } //************* End of stmt.c *********************************************** // Return the source-id for this library func Xsqlite3_sourceid(tls *libc.TLS) uintptr { /* sqlite3.c:235516:23: */ - return ts + 43321 /* "2021-06-18 18:36..." */ + return ts + 43331 /* "2021-06-18 18:36..." */ } //************************* End of sqlite3.c ***************************** @@ -195186,5 +196122,5 @@ func init() { *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 68 /* .xGetLastError */)) = rbuVfsGetLastError // sqlite3.c:205300:5: } -var ts1 = "COMPILER=gcc-8.3.0\x00DEFAULT_MEMSTATUS=0\x00DEFAULT_PAGE_SIZE=1024\x00ENABLE_BYTECODE_VTAB\x00ENABLE_COLUMN_METADATA\x00ENABLE_DBPAGE_VTAB\x00ENABLE_DBSTAT_VTAB\x00ENABLE_EXPLAIN_COMMENTS\x00ENABLE_FTS5\x00ENABLE_GEOPOLY\x00ENABLE_JSON1\x00ENABLE_MEMORY_MANAGEMENT\x00ENABLE_OFFSET_SQL_FUNC\x00ENABLE_PREUPDATE_HOOK\x00ENABLE_RBU\x00ENABLE_RTREE\x00ENABLE_SESSION\x00ENABLE_SNAPSHOT\x00ENABLE_STAT4\x00ENABLE_STMTVTAB\x00ENABLE_UNLOCK_NOTIFY\x00LIKE_DOESNT_MATCH_BLOBS\x00MUTEX_NOOP\x00SOUNDEX\x00SYSTEM_MALLOC\x00TEMP_STORE=1\x00TEST\x00THREADSAFE=1\x003.36.0\x00BINARY\x0020b:20e\x0020c:20e\x0020e\x0040f-21a-21d\x00now\x00local time unavailable\x00second\x00minute\x00hour\x00day\x00month\x00year\x00localtime\x00unixepoch\x00utc\x00weekday \x00start of \x00%04d-%02d-%02d %02d:%02d:%02d\x00%02d:%02d:%02d\x00%04d-%02d-%02d\x00%02d\x00%06.3f\x00%03d\x00%.16g\x00%04d\x00julianday\x00date\x00time\x00datetime\x00strftime\x00current_time\x00current_timestamp\x00current_date\x00failed to allocate %u bytes of memory\x00failed memory resize %u to %u bytes\x000123456789ABCDEF0123456789abcdef\x00-x0\x00X0\x00%\x00NaN\x00Inf\x00\x00NULL\x00(NULL)\x00.\x00SUBQUERY %u\x00thstndrd\x00%s\x00922337203685477580\x00API call with %s database connection pointer\x00unopened\x00invalid\x00Savepoint\x00\x00AutoCommit\x00\x00Transaction\x00\x00SorterNext\x00\x00Prev\x00\x00Next\x00\x00Checkpoint\x00\x00JournalMode\x00\x00Vacuum\x00\x00VFilter\x00iplan=r[P3] zplan='P4'\x00VUpdate\x00data=r[P3@P2]\x00Goto\x00\x00Gosub\x00\x00InitCoroutine\x00\x00Yield\x00\x00MustBeInt\x00\x00Jump\x00\x00Once\x00\x00If\x00\x00Not\x00r[P2]= !r[P1]\x00IfNot\x00\x00IfNullRow\x00if P1.nullRow then r[P3]=NULL, goto P2\x00SeekLT\x00key=r[P3@P4]\x00SeekLE\x00key=r[P3@P4]\x00SeekGE\x00key=r[P3@P4]\x00SeekGT\x00key=r[P3@P4]\x00IfNotOpen\x00if( !csr[P1] ) goto P2\x00IfNoHope\x00key=r[P3@P4]\x00NoConflict\x00key=r[P3@P4]\x00NotFound\x00key=r[P3@P4]\x00Found\x00key=r[P3@P4]\x00SeekRowid\x00intkey=r[P3]\x00NotExists\x00intkey=r[P3]\x00Last\x00\x00IfSmaller\x00\x00SorterSort\x00\x00Sort\x00\x00Rewind\x00\x00IdxLE\x00key=r[P3@P4]\x00IdxGT\x00key=r[P3@P4]\x00IdxLT\x00key=r[P3@P4]\x00IdxGE\x00key=r[P3@P4]\x00RowSetRead\x00r[P3]=rowset(P1)\x00Or\x00r[P3]=(r[P1] || r[P2])\x00And\x00r[P3]=(r[P1] && r[P2])\x00RowSetTest\x00if r[P3] in rowset(P1) goto P2\x00Program\x00\x00FkIfZero\x00if fkctr[P1]==0 goto P2\x00IfPos\x00if r[P1]>0 then r[P1]-=P3, goto P2\x00IfNotZero\x00if r[P1]!=0 then r[P1]--, goto P2\x00IsNull\x00if r[P1]==NULL goto P2\x00NotNull\x00if r[P1]!=NULL goto P2\x00Ne\x00IF r[P3]!=r[P1]\x00Eq\x00IF r[P3]==r[P1]\x00Gt\x00IF r[P3]>r[P1]\x00Le\x00IF r[P3]<=r[P1]\x00Lt\x00IF r[P3]=r[P1]\x00ElseEq\x00\x00DecrJumpZero\x00if (--r[P1])==0 goto P2\x00IncrVacuum\x00\x00VNext\x00\x00Init\x00Start at P2\x00PureFunc\x00r[P3]=func(r[P2@NP])\x00Function\x00r[P3]=func(r[P2@NP])\x00Return\x00\x00EndCoroutine\x00\x00HaltIfNull\x00if r[P3]=null halt\x00Halt\x00\x00Integer\x00r[P2]=P1\x00Int64\x00r[P2]=P4\x00String\x00r[P2]='P4' (len=P1)\x00Null\x00r[P2..P3]=NULL\x00SoftNull\x00r[P1]=NULL\x00Blob\x00r[P2]=P4 (len=P1)\x00Variable\x00r[P2]=parameter(P1,P4)\x00Move\x00r[P2@P3]=r[P1@P3]\x00Copy\x00r[P2@P3+1]=r[P1@P3+1]\x00SCopy\x00r[P2]=r[P1]\x00IntCopy\x00r[P2]=r[P1]\x00ChngCntRow\x00output=r[P1]\x00ResultRow\x00output=r[P1@P2]\x00CollSeq\x00\x00AddImm\x00r[P1]=r[P1]+P2\x00RealAffinity\x00\x00Cast\x00affinity(r[P1])\x00Permutation\x00\x00Compare\x00r[P1@P3] <-> r[P2@P3]\x00IsTrue\x00r[P2] = coalesce(r[P1]==TRUE,P3) ^ P4\x00ZeroOrNull\x00r[P2] = 0 OR NULL\x00Offset\x00r[P3] = sqlite_offset(P1)\x00Column\x00r[P3]=PX\x00Affinity\x00affinity(r[P1@P2])\x00MakeRecord\x00r[P3]=mkrec(r[P1@P2])\x00Count\x00r[P2]=count()\x00ReadCookie\x00\x00SetCookie\x00\x00ReopenIdx\x00root=P2 iDb=P3\x00OpenRead\x00root=P2 iDb=P3\x00OpenWrite\x00root=P2 iDb=P3\x00OpenDup\x00\x00OpenAutoindex\x00nColumn=P2\x00BitAnd\x00r[P3]=r[P1]&r[P2]\x00BitOr\x00r[P3]=r[P1]|r[P2]\x00ShiftLeft\x00r[P3]=r[P2]<>r[P1]\x00Add\x00r[P3]=r[P1]+r[P2]\x00Subtract\x00r[P3]=r[P2]-r[P1]\x00Multiply\x00r[P3]=r[P1]*r[P2]\x00Divide\x00r[P3]=r[P2]/r[P1]\x00Remainder\x00r[P3]=r[P2]%r[P1]\x00Concat\x00r[P3]=r[P2]+r[P1]\x00OpenEphemeral\x00nColumn=P2\x00BitNot\x00r[P2]= ~r[P1]\x00SorterOpen\x00\x00SequenceTest\x00if( cursor[P1].ctr++ ) pc = P2\x00String8\x00r[P2]='P4'\x00OpenPseudo\x00P3 columns in r[P2]\x00Close\x00\x00ColumnsUsed\x00\x00SeekScan\x00Scan-ahead up to P1 rows\x00SeekHit\x00set P2<=seekHit<=P3\x00Sequence\x00r[P2]=cursor[P1].ctr++\x00NewRowid\x00r[P2]=rowid\x00Insert\x00intkey=r[P3] data=r[P2]\x00RowCell\x00\x00Delete\x00\x00ResetCount\x00\x00SorterCompare\x00if key(P1)!=trim(r[P3],P4) goto P2\x00SorterData\x00r[P2]=data\x00RowData\x00r[P2]=data\x00Rowid\x00r[P2]=rowid\x00NullRow\x00\x00SeekEnd\x00\x00IdxInsert\x00key=r[P2]\x00SorterInsert\x00key=r[P2]\x00IdxDelete\x00key=r[P2@P3]\x00DeferredSeek\x00Move P3 to P1.rowid if needed\x00IdxRowid\x00r[P2]=rowid\x00FinishSeek\x00\x00Destroy\x00\x00Clear\x00\x00ResetSorter\x00\x00CreateBtree\x00r[P2]=root iDb=P1 flags=P3\x00SqlExec\x00\x00ParseSchema\x00\x00LoadAnalysis\x00\x00DropTable\x00\x00DropIndex\x00\x00DropTrigger\x00\x00IntegrityCk\x00\x00RowSetAdd\x00rowset(P1)=r[P2]\x00Real\x00r[P2]=P4\x00Param\x00\x00FkCounter\x00fkctr[P1]+=P2\x00MemMax\x00r[P1]=max(r[P1],r[P2])\x00OffsetLimit\x00if r[P1]>0 then r[P2]=r[P1]+max(0,r[P3]) else r[P2]=(-1)\x00AggInverse\x00accum=r[P3] inverse(r[P2@P5])\x00AggStep\x00accum=r[P3] step(r[P2@P5])\x00AggStep1\x00accum=r[P3] step(r[P2@P5])\x00AggValue\x00r[P3]=value N=P2\x00AggFinal\x00accum=r[P1] N=P2\x00Expire\x00\x00CursorLock\x00\x00CursorUnlock\x00\x00TableLock\x00iDb=P1 root=P2 write=P3\x00VBegin\x00\x00VCreate\x00\x00VDestroy\x00\x00VOpen\x00\x00VColumn\x00r[P3]=vcolumn(P2)\x00VRename\x00\x00Pagecount\x00\x00MaxPgcnt\x00\x00Trace\x00\x00CursorHint\x00\x00ReleaseReg\x00release r[P1@P2] mask P3\x00Noop\x00\x00Explain\x00\x00Abortable\x00\x00open\x00close\x00access\x00getcwd\x00stat\x00fstat\x00ftruncate\x00fcntl\x00read\x00pread\x00pread64\x00write\x00pwrite\x00pwrite64\x00fchmod\x00fallocate\x00unlink\x00openDirectory\x00mkdir\x00rmdir\x00fchown\x00geteuid\x00mmap\x00munmap\x00mremap\x00getpagesize\x00readlink\x00lstat\x00ioctl\x00attempt to open \"%s\" as file descriptor %d\x00/dev/null\x00NONE\x00SHARED\x00RESERVED\x00PENDING\x00EXCLUSIVE\x00ERROR\x00os_unix.c:%d: (%d) %s(%s) - %s\x00cannot fstat db file %s\x00file unlinked while open: %s\x00multiple links to file: %s\x00file renamed while open: %s\x00TEST WR-LOCK %d %d %d (unix)\n\x00LOCK %d %s was %s(%s,%d) pid=%d (unix)\n\x00LOCK %d %s ok (already held) (unix)\n\x00LOCK %d %s %s (unix)\n\x00ok\x00failed\x00UNLOCK %d %d was %d(%d,%d) pid=%d (unix)\n\x00CLOSE %-3d\n\x00TEST WR-LOCK %d %d %d (dotlock)\n\x00UNLOCK %d %d was %d pid=%d (dotlock)\n\x00READ %-3d %5d %7lld %llu\n\x00WRITE %-3d %5d %7lld %llu\n\x00OPENDIR %-3d %s\n\x00SYNC %-3d\n\x00full_fsync\x00DIRSYNC %s (have_fullfsync=%d fullsync=%d)\n\x00%s-shm\x00readonly_shm\x00SHM-LOCK shmid-%d, pid-%d got %03x,%03x\n\x00OPEN %-3d %s\n\x00psow\x00unix-excl\x00%s.lock\x00SQLITE_TMPDIR\x00TMPDIR\x00/var/tmp\x00/usr/tmp\x00/tmp\x00%s/etilqs_%llx%c\x00modeof\x00OPENX %-3d %s 0%o\n\x00fsync\x00unix\x00unix-none\x00unix-dotfile\x00memdb\x00memdb(%p,%lld)\x00PRAGMA \"%w\".page_count\x00ATTACH x AS %Q\x00recovered %d pages from %s\x00-journal\x00-wal\x00nolock\x00immutable\x00recovered %d frames from WAL file %s\x00cannot limit WAL size: %s\x00SQLite format 3\x00:memory:\x00@ \x00\n\x00invalid page number %d\x002nd reference to page %d\x00Failed to read ptrmap key=%d\x00Bad ptr map entry key=%d expected=(%d,%d) got=(%d,%d)\x00failed to get page %d\x00freelist leaf count too big on page %d\x00%s is %d but should be %d\x00size\x00overflow list length\x00Page %u: \x00unable to get the page. error code=%d\x00btreeInitPage() returns error code %d\x00free space corruption\x00On tree page %u cell %d: \x00On page %u at right child: \x00Offset %d out of range %d..%d\x00Extends off end of page\x00Rowid %lld out of order\x00Child page depth differs\x00Multiple uses for byte %u of page %u\x00Fragmentation of %d bytes reported as %d on page %u\x00Main freelist: \x00max rootpage (%d) disagrees with header (%d)\x00incremental_vacuum enabled with a max rootpage of zero\x00Page %d is never used\x00Pointer map page %d is referenced\x00unknown database %s\x00destination database is in use\x00source and destination must be distinct\x00%!.15g\x00-\x00%s%s\x00IF \x00if %s goto P2\x00@P\x00+1\x00%d\x00%d..%d\x00@NP\x00..P3\x00; %s\x00k(%d\x00B\x00,%s%s%s\x00N.\x00)\x00%.18s-%s\x00%s(%d)\x00%lld\x00(blob)\x00vtab:%p\x00%c%u\x00]\x00program\x00?\x008\x0016LE\x0016BE\x00addr\x00opcode\x00p1\x00p2\x00p3\x00p4\x00p5\x00comment\x00id\x00parent\x00notused\x00detail\x00%.4c%s%.16c\x00MJ delete: %s\x00MJ collide: %s\x00-mj%06X9%02X\x00FOREIGN KEY constraint failed\x00a CHECK constraint\x00a generated column\x00an index\x00non-deterministic use of %s() in %s\x00API called with finalized prepared statement\x00API called with NULL prepared statement\x00string or blob too big\x00bind on a busy prepared statement: [%s]\x00-- \x00'%.*q'\x00zeroblob(%d)\x00x'\x00%02x\x00'\x00%s constraint failed\x00%z: %s\x00abort at %d in [%s]: %s\x00cannot open savepoint - SQL statements in progress\x00no such savepoint: %s\x00cannot release savepoint - SQL statements in progress\x00cannot commit transaction - SQL statements in progress\x00cannot start a transaction within a transaction\x00cannot rollback - no transaction is active\x00cannot commit - no transaction is active\x00database schema has changed\x00index corruption\x00sqlite_master\x00SELECT*FROM\"%w\".%s WHERE %s ORDER BY rowid\x00too many levels of trigger recursion\x00cannot change %s wal mode from within a transaction\x00into\x00out of\x00database table is locked: %s\x00-- %s\x00statement aborts at %d: [%s] %s\x00out of memory\x00NOT NULL\x00UNIQUE\x00CHECK\x00FOREIGN KEY\x00cannot open value of type %s\x00null\x00real\x00integer\x00no such rowid: %lld\x00cannot open virtual table: %s\x00cannot open table without rowid: %s\x00cannot open view: %s\x00no such column: \"%s\"\x00foreign key\x00indexed\x00cannot open %s column for writing\x00CREATE TABLE x(addr INT,opcode TEXT,p1 INT,p2 INT,p3 INT,p4 TEXT,p5 INT,comment TEXT,subprog TEXT,stmt HIDDEN);\x00CREATE TABLE x(type TEXT,schema TEXT,name TEXT,wr INT,subprog TEXT,stmt HIDDEN);\x00table\x00index\x00(FK)\x00stmt-pointer\x00argument to %s() is not a valid SQL statement\x00tables_used\x00bytecode\x00main\x00new\x00old\x00excluded\x00misuse of aliased aggregate %s\x00misuse of aliased window function %s\x00row value misused\x00double-quoted string literal: \"%w\"\x00no such column\x00ambiguous column name\x00%s: %s.%s.%s\x00%s: %s.%s\x00%s: %s\x00partial index WHERE clauses\x00index expressions\x00CHECK constraints\x00generated columns\x00%s prohibited in %s\x00true\x00false\x00the \".\" operator\x00second argument to likelihood() must be a constant between 0.0 and 1.0\x00not authorized to use function: %s\x00non-deterministic functions\x00%.*s() may not be used as a window function\x00window\x00aggregate\x00misuse of %s function %.*s()\x00no such function: %.*s\x00wrong number of arguments to function %.*s()\x00FILTER may not be used with non-aggregate %.*s()\x00subqueries\x00parameters\x00%r %s BY term out of range - should be between 1 and %d\x00too many terms in ORDER BY clause\x00ORDER\x00%r ORDER BY term does not match any column in the result set\x00too many terms in %s BY clause\x00a GROUP BY clause is required before HAVING\x00GROUP\x00aggregate functions are not allowed in the GROUP BY clause\x00Expression tree is too large (maximum depth %d)\x000\x00too many arguments on function %T\x00unsafe use of %s()\x00variable number must be between ?1 and ?%d\x00too many SQL variables\x00%d columns assigned %d values\x00too many columns in %s\x00_ROWID_\x00ROWID\x00OID\x00first_entry_in(%d)\x00USING ROWID SEARCH ON TABLE %s FOR IN-OPERATOR\x00USING INDEX %s FOR IN-OPERATOR\x00sub-select returns %d columns - expected %d\x00REUSE LIST SUBQUERY %d\x00return address\x00Result of SELECT %u\x00RHS of IN operator\x00%sLIST SUBQUERY %d\x00CORRELATED \x00REUSE SUBQUERY %d\x00%sSCALAR SUBQUERY %d\x00Init subquery result\x00Init EXISTS result\x001\x00begin IN expr\x00end IN expr\x000x\x00hex literal too big: %s%s\x00generated column loop on \"%s\"\x00%s.rowid\x00%s.%s\x00misuse of aggregate: %s()\x00unknown function: %s()\x00r[%d]=%s.%s\x00rowid\x00RAISE() may only be used within a trigger-program\x00B\x00C\x00D\x00E\x00sqlite_\x00table %s may not be altered\x00SELECT 1 FROM \"%w\".sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, %d, %Q, %d)=NULL \x00SELECT 1 FROM temp.sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, 1, %Q, %d)=NULL \x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_quotefix(%Q, sql)WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%'\x00UPDATE temp.sqlite_master SET sql = sqlite_rename_quotefix('temp', sql)WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%'\x00there is already another table or index with this name: %s\x00view %s may not be altered\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, %d) WHERE (type!='index' OR tbl_name=%Q COLLATE nocase)AND name NOT LIKE 'sqliteX_%%' ESCAPE 'X'\x00UPDATE %Q.sqlite_master SET tbl_name = %Q, name = CASE WHEN type='table' THEN %Q WHEN name LIKE 'sqliteX_autoindex%%' ESCAPE 'X' AND type='index' THEN 'sqlite_autoindex_' || %Q || substr(name,%d+18) ELSE name END WHERE tbl_name=%Q COLLATE nocase AND (type='table' OR type='index' OR type='trigger');\x00sqlite_sequence\x00UPDATE \"%w\".sqlite_sequence set name = %Q WHERE name = %Q\x00UPDATE sqlite_temp_schema SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, 1), tbl_name = CASE WHEN tbl_name=%Q COLLATE nocase AND sqlite_rename_test(%Q, sql, type, name, 1, 'after rename', 0) THEN %Q ELSE tbl_name END WHERE type IN ('view', 'trigger')\x00after rename\x00SELECT raise(ABORT,%Q) FROM \"%w\".\"%w\"\x00Cannot add a PRIMARY KEY column\x00Cannot add a UNIQUE column\x00Cannot add a REFERENCES column with non-NULL default value\x00Cannot add a NOT NULL column with default value NULL\x00Cannot add a column with non-constant default\x00cannot add a STORED column\x00UPDATE \"%w\".sqlite_master SET sql = printf('%%.%ds, ',sql) || %Q || substr(sql,1+length(printf('%%.%ds',sql))) WHERE type = 'table' AND name = %Q\x00virtual tables may not be altered\x00Cannot add a column to a view\x00sqlite_altertab_%s\x00view\x00virtual table\x00cannot %s %s \"%s\"\x00drop column from\x00rename columns of\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, %d) WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND (type != 'index' OR tbl_name = %Q) AND sql NOT LIKE 'create virtual%%'\x00UPDATE temp.sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, 1) WHERE type IN ('trigger', 'view')\x00error in %s %s%s%s: %s\x00 \x00\"%w\" \x00%Q%s\x00%.*s%s\x00cannot drop %s column: \"%s\"\x00PRIMARY KEY\x00cannot drop column \"%s\": no other columns exist\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_drop_column(%d, sql, %d) WHERE (type=='table' AND tbl_name=%Q COLLATE nocase)\x00after drop column\x00sqlite_rename_column\x00sqlite_rename_table\x00sqlite_rename_test\x00sqlite_drop_column\x00sqlite_rename_quotefix\x00CREATE TABLE %Q.%s(%s)\x00DELETE FROM %Q.%s WHERE %s=%Q\x00DELETE FROM %Q.%s\x00sqlite_stat1\x00tbl,idx,stat\x00sqlite_stat4\x00tbl,idx,neq,nlt,ndlt,sample\x00sqlite_stat3\x00stat_init\x00stat_push\x00%llu\x00 %llu\x00%llu \x00stat_get\x00%s.expr(%d)\x00sqlite\\_%\x00Analysis for %s.%s\x00BBB\x00idx\x00tbl\x00unordered*\x00sz=[0-9]*\x00noskipscan*\x00SELECT idx,count(*) FROM %Q.sqlite_stat4 GROUP BY idx\x00SELECT idx,neq,nlt,ndlt,sample FROM %Q.sqlite_stat4\x00SELECT tbl,idx,stat FROM %Q.sqlite_stat1\x00x\x00\x00too many attached databases - max %d\x00database %s is already in use\x00database is already attached\x00attached databases must use the same text encoding as main database\x00unable to open database: %s\x00no such database: %s\x00cannot detach database %s\x00database %s is locked\x00sqlite_detach\x00sqlite_attach\x00%s cannot use variables\x00%s %T cannot reference objects in database %s\x00authorizer malfunction\x00%s.%z\x00access to %z is prohibited\x00not authorized\x00usesStmtJournal=%d\x00sqlite_temp_schema\x00sqlite_schema\x00sqlite_temp_master\x00pragma_\x00no such view\x00no such table\x00corrupt database\x00unknown database %T\x00object name reserved for internal use: %s\x00temporary table name must be unqualified\x00table %T already exists\x00there is already an index named %s\x00sqlite_returning\x00cannot use RETURNING in a trigger\x00too many columns on %s\x00duplicate column name: %s\x00default value of column [%s] is not constant\x00cannot use DEFAULT on a generated column\x00generated columns cannot be part of the PRIMARY KEY\x00table \"%s\" has more than one primary key\x00INTEGER\x00AUTOINCREMENT is only allowed on an INTEGER PRIMARY KEY\x00virtual tables cannot use computed columns\x00virtual\x00stored\x00error in generated column \"%s\"\x00,\x00\n \x00,\n \x00\n)\x00CREATE TABLE \x00 TEXT\x00 NUM\x00 INT\x00 REAL\x00AUTOINCREMENT not allowed on WITHOUT ROWID tables\x00PRIMARY KEY missing on table %s\x00must have at least one non-generated column\x00TABLE\x00VIEW\x00CREATE %s %.*s\x00UPDATE %Q.sqlite_master SET type='%s', name=%Q, tbl_name=%Q, rootpage=#%d, sql=%Q WHERE rowid=#%d\x00CREATE TABLE %Q.sqlite_sequence(name,seq)\x00tbl_name='%q' AND type!='trigger'\x00parameters are not allowed in views\x00view %s is circularly defined\x00corrupt schema\x00UPDATE %Q.sqlite_master SET rootpage=%d WHERE #%d AND rootpage=#%d\x00sqlite_stat%d\x00DELETE FROM %Q.sqlite_sequence WHERE name=%Q\x00DELETE FROM %Q.sqlite_master WHERE tbl_name=%Q and type!='trigger'\x00table %s may not be dropped\x00use DROP TABLE to delete table %s\x00use DROP VIEW to delete view %s\x00foreign key on %s should reference only one column of table %T\x00number of columns in foreign key does not match the number of columns in the referenced table\x00unknown column \"%s\" in foreign key definition\x00unsupported use of NULLS %s\x00FIRST\x00LAST\x00cannot create a TEMP index on non-TEMP table \"%s\"\x00table %s may not be indexed\x00views may not be indexed\x00virtual tables may not be indexed\x00there is already a table named %s\x00index %s already exists\x00sqlite_autoindex_%s_%d\x00expressions prohibited in PRIMARY KEY and UNIQUE constraints\x00conflicting ON CONFLICT clauses specified\x00invalid rootpage\x00CREATE%s INDEX %.*s\x00 UNIQUE\x00INSERT INTO %Q.sqlite_master VALUES('index',%Q,%Q,#%d,%Q);\x00name='%q' AND type='index'\x00no such index: %S\x00index associated with UNIQUE or PRIMARY KEY constraint cannot be dropped\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='index'\x00too many FROM clause terms, max: %d\x00a JOIN clause is required before %s\x00ON\x00USING\x00BEGIN\x00ROLLBACK\x00COMMIT\x00RELEASE\x00unable to open a temporary database file for storing temporary tables\x00index '%q'\x00, \x00unable to identify the object to be reindexed\x00duplicate WITH table name: %s\x00no such collation sequence: %s\x00table %s may not be modified\x00cannot modify %s because it is a view\x00rows deleted\x00text\x00blob\x00integer overflow\x00%.*f\x00LIKE or GLOB pattern too complex\x00ESCAPE expression must be a single character\x00%!.20e\x00?000\x00MATCH\x00like\x00implies_nonnull_row\x00expr_compare\x00expr_implies_expr\x00soundex\x00load_extension\x00sqlite_compileoption_used\x00sqlite_compileoption_get\x00unlikely\x00likelihood\x00likely\x00sqlite_offset\x00ltrim\x00rtrim\x00trim\x00min\x00max\x00typeof\x00length\x00instr\x00printf\x00unicode\x00char\x00abs\x00round\x00upper\x00lower\x00hex\x00ifnull\x00random\x00randomblob\x00nullif\x00sqlite_version\x00sqlite_source_id\x00sqlite_log\x00quote\x00last_insert_rowid\x00changes\x00total_changes\x00replace\x00zeroblob\x00substr\x00substring\x00sum\x00total\x00avg\x00count\x00group_concat\x00glob\x00coalesce\x00sign\x00iif\x00foreign key mismatch - \"%w\" referencing \"%w\"\x00cannot INSERT into generated column \"%s\"\x00table %S has no column named %s\x00table %S has %d columns but %d values were supplied\x00%d values for %d columns\x00UPSERT not implemented for virtual table \"%s\"\x00cannot UPSERT a view\x00rows inserted\x00trigger count\x00defer IPK REPLACE until last\x00uniqueness check for ROWID\x00prep index %s\x00%s column %d\x00for %s\x00bypass recheck\x00Do IPK REPLACE\x00sqlite3_extension_init\x00sqlite3_\x00lib\x00_init\x00no entry point [%s] in shared library [%s]\x00error during initialization: %s\x00unable to open shared library [%.*s]\x00so\x00automatic extension loading failed: %s\x00seq\x00from\x00to\x00on_update\x00on_delete\x00match\x00cid\x00name\x00type\x00notnull\x00dflt_value\x00pk\x00hidden\x00seqno\x00desc\x00coll\x00key\x00builtin\x00enc\x00narg\x00flags\x00wdth\x00hght\x00flgs\x00unique\x00origin\x00partial\x00fkid\x00file\x00busy\x00log\x00checkpointed\x00database\x00status\x00cache_size\x00timeout\x00analysis_limit\x00application_id\x00auto_vacuum\x00automatic_index\x00busy_timeout\x00cache_spill\x00case_sensitive_like\x00cell_size_check\x00checkpoint_fullfsync\x00collation_list\x00compile_options\x00count_changes\x00data_version\x00database_list\x00default_cache_size\x00defer_foreign_keys\x00empty_result_callbacks\x00encoding\x00foreign_key_check\x00foreign_key_list\x00foreign_keys\x00freelist_count\x00full_column_names\x00fullfsync\x00function_list\x00hard_heap_limit\x00ignore_check_constraints\x00incremental_vacuum\x00index_info\x00index_list\x00index_xinfo\x00integrity_check\x00journal_mode\x00journal_size_limit\x00legacy_alter_table\x00lock_status\x00locking_mode\x00max_page_count\x00mmap_size\x00module_list\x00optimize\x00page_count\x00page_size\x00pragma_list\x00query_only\x00quick_check\x00read_uncommitted\x00recursive_triggers\x00reverse_unordered_selects\x00schema_version\x00secure_delete\x00short_column_names\x00shrink_memory\x00soft_heap_limit\x00synchronous\x00table_info\x00table_xinfo\x00temp_store\x00temp_store_directory\x00threads\x00trusted_schema\x00user_version\x00wal_autocheckpoint\x00wal_checkpoint\x00writable_schema\x00onoffalseyestruextrafull\x00exclusive\x00normal\x00none\x00full\x00incremental\x00memory\x00temporary storage cannot be changed from within a transaction\x00SET NULL\x00SET DEFAULT\x00CASCADE\x00RESTRICT\x00NO ACTION\x00delete\x00persist\x00off\x00truncate\x00wal\x00w\x00a\x00s\x00sissii\x00utf8\x00utf16le\x00utf16be\x00-%T\x00fast\x00not a writable directory\x00Safety level may not be changed inside a transaction\x00issisii\x00issisi\x00iisX\x00isiX\x00c\x00u\x00isisi\x00iss\x00is\x00iissssss\x00siX\x00*** in database %s ***\n\x00NULL value in %s.%s\x00CHECK constraint failed in %s\x00row \x00 missing from index \x00non-unique entry in index \x00wrong # of entries in index \x00unsupported encoding: %s\x00restart\x00ANALYZE \"%w\".\"%w\"\x00unknown\x00closed\x00ss\x00UTF8\x00UTF-8\x00UTF-16le\x00UTF-16be\x00UTF16le\x00UTF16be\x00UTF-16\x00UTF16\x00unlocked\x00shared\x00reserved\x00pending\x00CREATE TABLE x\x00%c\"%s\"\x00(\"%s\"\x00,arg HIDDEN\x00,schema HIDDEN\x00PRAGMA \x00%Q.\x00=%Q\x00error in %s %s after %s: %s\x00rename\x00drop column\x00malformed database schema (%s)\x00%z - %s\x00orphan index\x00CREATE TABLE x(type text,name text,tbl_name text,rootpage int,sql text)\x00unsupported file format\x00SELECT*FROM\"%w\".%s ORDER BY rowid\x00database schema is locked: %s\x00statement too long\x00unknown or unsupported join type: %T %T%s%T\x00RIGHT and FULL OUTER JOINs are not currently supported\x00naturaleftouterightfullinnercross\x00a NATURAL join may not have an ON or USING clause\x00cannot have both ON and USING clauses in the same join\x00cannot join using column %s - column not present in both tables\x00OFFSET\x00UNION ALL\x00INTERSECT\x00EXCEPT\x00UNION\x00USE TEMP B-TREE FOR %s\x00column%d\x00%.*z:%u\x00LIMIT counter\x00OFFSET counter\x00LIMIT+OFFSET\x00cannot use window functions in recursive queries\x00Queue table\x00recursive aggregate queries not supported\x00SETUP\x00RECURSIVE STEP\x00SCAN %d CONSTANT ROW%s\x00S\x00COMPOUND QUERY\x00LEFT-MOST SUBQUERY\x00Jump ahead if LIMIT reached\x00%s USING TEMP B-TREE\x00all VALUES must have the same number of terms\x00SELECTs to the left and right of %s do not have the same number of result columns\x00MERGE (%s)\x00left SELECT\x00LEFT\x00right SELECT\x00RIGHT\x00Output routine for A\x00Output routine for B\x00eof-A subroutine\x00eof-B subroutine\x00A-lt-B subroutine\x00A-eq-B subroutine\x00A-gt-B subroutine\x00no such index: %s\x00'%s' is not a function\x00multiple references to recursive table: %s\x00circular reference: %s\x00table %s has %d values for %d columns\x00multiple recursive references: %s\x00recursive reference in a subquery: %s\x00subquery_%u\x00too many references to \"%s\": max 65535\x00access to view \"%s\" prohibited\x00unsafe use of virtual table \"%s\"\x00*\x00%s.%s.%s\x00no such table: %s\x00no tables specified\x00too many columns in result set\x00DISTINCT aggregates must have exactly one argument\x00USE TEMP B-TREE FOR %s(DISTINCT)\x00SCAN %s%s%s\x00 USING COVERING INDEX \x00target object/alias may not appear in FROM clause: %s\x00expected %d columns for '%s' but got %d\x00%!S\x00CO-ROUTINE %!S\x00materialize %!S\x00MATERIALIZE %!S\x00end %!S\x00inner-loop subroutine\x00end inner-loop subroutine\x00clear abort flag\x00DISTINCT\x00GROUP BY\x00GROUP BY sort\x00output one row\x00check abort flag\x00reset accumulator\x00indicate data in accumulator\x00output final row\x00set abort flag\x00Groupby result generator entry point\x00end groupby result generator\x00indicate accumulator empty\x00RIGHT PART OF ORDER BY\x00ORDER BY\x00sqlite3_get_table() called with two or more incompatible queries\x00temporary trigger may not have qualified name\x00trigger\x00cannot create triggers on virtual tables\x00trigger %T already exists\x00cannot create trigger on system table\x00cannot create %s trigger on view: %S\x00BEFORE\x00AFTER\x00cannot create INSTEAD OF trigger on table: %S\x00INSERT INTO %Q.sqlite_master VALUES('trigger',%Q,%Q,0,'CREATE TRIGGER %q')\x00type='trigger' AND name='%q'\x00no such trigger: %S\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='trigger'\x00%s RETURNING is not available on virtual tables\x00DELETE\x00UPDATE\x00RETURNING may not use \"TABLE.*\" wildcards\x00abort\x00rollback\x00fail\x00ignore\x00default\x00n/a\x00Start: %s.%s (%s %s%s%s ON %s)\x00INSERT\x00-- TRIGGER %s\x00End: %s.%s\x00Call: %s.%s\x00fkey\x00cannot UPDATE generated column \"%s\"\x00no such column: %s\x00rows updated\x00%r \x00%sON CONFLICT clause does not match any PRIMARY KEY or UNIQUE constraint\x00Begin DO UPDATE of UPSERT\x00End DO UPDATE of UPSERT\x00CRE\x00INS\x00cannot VACUUM from within a transaction\x00cannot VACUUM - SQL statements in progress\x00non-text filename\x00ATTACH %Q AS vacuum_db\x00output file already exists\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='table'AND name<>'sqlite_sequence' AND coalesce(rootpage,1)>0\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='index'\x00SELECT'INSERT INTO vacuum_db.'||quote(name)||' SELECT*FROM\"%w\".'||quote(name)FROM vacuum_db.sqlite_schema WHERE type='table'AND coalesce(rootpage,1)>0\x00INSERT INTO vacuum_db.sqlite_schema SELECT*FROM \"%w\".sqlite_schema WHERE type IN('view','trigger') OR(type='table'AND rootpage=0)\x00CREATE VIRTUAL TABLE %T\x00UPDATE %Q.sqlite_master SET type='table', name=%Q, tbl_name=%Q, rootpage=0, sql=%Q WHERE rowid=#%d\x00name=%Q AND sql=%Q\x00vtable constructor called recursively: %s\x00vtable constructor failed: %s\x00vtable constructor did not declare schema: %s\x00no such module: %s\x00\x00 AND \x00(\x00 (\x00%s=?\x00ANY(%s)\x00>\x00<\x00%s %S\x00SEARCH\x00SCAN\x00AUTOMATIC PARTIAL COVERING INDEX\x00AUTOMATIC COVERING INDEX\x00COVERING INDEX %s\x00INDEX %s\x00 USING \x00=\x00>? AND rowid<\x00 USING INTEGER PRIMARY KEY (rowid%s?)\x00 VIRTUAL TABLE INDEX %d:%s\x00begin skip-scan on %s\x00init LEFT JOIN no-match flag\x00next row of %s\x00NULL-scan pass ctr\x00If NULL-scan 2nd pass\x00If NULL-scan 1st pass\x00MULTI-INDEX OR\x00INDEX %d\x00record LEFT JOIN hit\x00regexp\x00ON clause references tables to its right\x00NOCASE\x00too many arguments on %s() - max %d\x00automatic index on %s(%s)\x00auto-index\x00%s.xBestIndex malfunction\x00abbreviated query algorithm search\x00no query solution\x00at most %d tables in a join\x00SCAN CONSTANT ROW\x00next skip-scan on %s\x00second argument to nth_value must be a positive integer\x00argument of ntile must be a positive integer\x00row_number\x00dense_rank\x00rank\x00percent_rank\x00cume_dist\x00ntile\x00last_value\x00nth_value\x00first_value\x00lead\x00lag\x00no such window: %s\x00RANGE with offset PRECEDING/FOLLOWING requires one ORDER BY expression\x00FILTER clause may only be used with aggregate window functions\x00unsupported frame specification\x00PARTITION clause\x00ORDER BY clause\x00frame specification\x00cannot override %s of window: %s\x00DISTINCT is not supported for window functions\x00frame starting offset must be a non-negative integer\x00frame ending offset must be a non-negative integer\x00frame starting offset must be a non-negative number\x00frame ending offset must be a non-negative number\x00call flush_partition\x00%s clause should come after %s not before\x00LIMIT\x00too many terms in compound SELECT\x00syntax error after column name \"%.*s\"\x00parser stack overflow\x00unknown table option: %.*s\x00set list\x00near \"%T\": syntax error\x00qualified table names are not allowed on INSERT, UPDATE, and DELETE statements within triggers\x00the INDEXED BY clause is not allowed on UPDATE or DELETE statements within triggers\x00the NOT INDEXED clause is not allowed on UPDATE or DELETE statements within triggers\x00incomplete input\x00unrecognized token: \"%.*s\"\x00%s in \"%s\"\x00create\x00temp\x00temporary\x00end\x00explain\x00unable to close due to unfinalized statements or unfinished backups\x00SQLITE_OK\x00SQLITE_ERROR\x00SQLITE_ERROR_SNAPSHOT\x00SQLITE_INTERNAL\x00SQLITE_PERM\x00SQLITE_ABORT\x00SQLITE_ABORT_ROLLBACK\x00SQLITE_BUSY\x00SQLITE_BUSY_RECOVERY\x00SQLITE_BUSY_SNAPSHOT\x00SQLITE_LOCKED\x00SQLITE_LOCKED_SHAREDCACHE\x00SQLITE_NOMEM\x00SQLITE_READONLY\x00SQLITE_READONLY_RECOVERY\x00SQLITE_READONLY_CANTINIT\x00SQLITE_READONLY_ROLLBACK\x00SQLITE_READONLY_DBMOVED\x00SQLITE_READONLY_DIRECTORY\x00SQLITE_INTERRUPT\x00SQLITE_IOERR\x00SQLITE_IOERR_READ\x00SQLITE_IOERR_SHORT_READ\x00SQLITE_IOERR_WRITE\x00SQLITE_IOERR_FSYNC\x00SQLITE_IOERR_DIR_FSYNC\x00SQLITE_IOERR_TRUNCATE\x00SQLITE_IOERR_FSTAT\x00SQLITE_IOERR_UNLOCK\x00SQLITE_IOERR_RDLOCK\x00SQLITE_IOERR_DELETE\x00SQLITE_IOERR_NOMEM\x00SQLITE_IOERR_ACCESS\x00SQLITE_IOERR_CHECKRESERVEDLOCK\x00SQLITE_IOERR_LOCK\x00SQLITE_IOERR_CLOSE\x00SQLITE_IOERR_DIR_CLOSE\x00SQLITE_IOERR_SHMOPEN\x00SQLITE_IOERR_SHMSIZE\x00SQLITE_IOERR_SHMLOCK\x00SQLITE_IOERR_SHMMAP\x00SQLITE_IOERR_SEEK\x00SQLITE_IOERR_DELETE_NOENT\x00SQLITE_IOERR_MMAP\x00SQLITE_IOERR_GETTEMPPATH\x00SQLITE_IOERR_CONVPATH\x00SQLITE_CORRUPT\x00SQLITE_CORRUPT_VTAB\x00SQLITE_NOTFOUND\x00SQLITE_FULL\x00SQLITE_CANTOPEN\x00SQLITE_CANTOPEN_NOTEMPDIR\x00SQLITE_CANTOPEN_ISDIR\x00SQLITE_CANTOPEN_FULLPATH\x00SQLITE_CANTOPEN_CONVPATH\x00SQLITE_CANTOPEN_SYMLINK\x00SQLITE_PROTOCOL\x00SQLITE_EMPTY\x00SQLITE_SCHEMA\x00SQLITE_TOOBIG\x00SQLITE_CONSTRAINT\x00SQLITE_CONSTRAINT_UNIQUE\x00SQLITE_CONSTRAINT_TRIGGER\x00SQLITE_CONSTRAINT_FOREIGNKEY\x00SQLITE_CONSTRAINT_CHECK\x00SQLITE_CONSTRAINT_PRIMARYKEY\x00SQLITE_CONSTRAINT_NOTNULL\x00SQLITE_CONSTRAINT_COMMITHOOK\x00SQLITE_CONSTRAINT_VTAB\x00SQLITE_CONSTRAINT_FUNCTION\x00SQLITE_CONSTRAINT_ROWID\x00SQLITE_MISMATCH\x00SQLITE_MISUSE\x00SQLITE_NOLFS\x00SQLITE_AUTH\x00SQLITE_FORMAT\x00SQLITE_RANGE\x00SQLITE_NOTADB\x00SQLITE_ROW\x00SQLITE_NOTICE\x00SQLITE_NOTICE_RECOVER_WAL\x00SQLITE_NOTICE_RECOVER_ROLLBACK\x00SQLITE_WARNING\x00SQLITE_WARNING_AUTOINDEX\x00SQLITE_DONE\x00SQLITE_UNKNOWN(%d)\x00unknown error\x00abort due to ROLLBACK\x00another row available\x00no more rows available\x00not an error\x00SQL logic error\x00access permission denied\x00query aborted\x00database is locked\x00database table is locked\x00attempt to write a readonly database\x00interrupted\x00disk I/O error\x00database disk image is malformed\x00unknown operation\x00database or disk is full\x00unable to open database file\x00locking protocol\x00constraint failed\x00datatype mismatch\x00bad parameter or other API misuse\x00authorization denied\x00column index out of range\x00file is not a database\x00notification message\x00warning message\x00unable to delete/modify user-function due to active statements\x00unable to use function %s in the requested context\x00unknown database: %s\x00unable to delete/modify collation sequence due to active statements\x00file:\x00localhost\x00invalid uri authority: %.*s\x00vfs\x00cache\x00mode\x00no such %s mode: %s\x00%s mode not allowed: %s\x00no such vfs: %s\x00private\x00ro\x00rw\x00rwc\x00RTRIM\x00\x00\x00\x00%s at line %d of [%.10s]\x00database corruption\x00misuse\x00cannot open file\x00no such table column: %s.%s\x00SQLITE_\x00database is deadlocked\x00array\x00object\x000123456789abcdef\x00JSON cannot hold BLOB values\x00malformed JSON\x00[0]\x00JSON path error near '%q'\x00json_%s() needs an odd number of arguments\x00json_object() requires an even number of arguments\x00json_object() labels must be TEXT\x00set\x00insert\x00[]\x00{}\x00CREATE TABLE x(key,value,type,atom,id,parent,fullkey,path,json HIDDEN,root HIDDEN)\x00[%d]\x00.%.*s\x00$\x00json\x00json_array\x00json_array_length\x00json_extract\x00json_insert\x00json_object\x00json_patch\x00json_quote\x00json_remove\x00json_replace\x00json_set\x00json_type\x00json_valid\x00json_group_array\x00json_group_object\x00json_each\x00json_tree\x00%s_node\x00data\x00DROP TABLE '%q'.'%q_node';DROP TABLE '%q'.'%q_rowid';DROP TABLE '%q'.'%q_parent';\x00RtreeMatchArg\x00SELECT * FROM %Q.%Q\x00UNIQUE constraint failed: %s.%s\x00rtree constraint failed: %s.(%s<=%s)\x00ALTER TABLE %Q.'%q_node' RENAME TO \"%w_node\";ALTER TABLE %Q.'%q_parent' RENAME TO \"%w_parent\";ALTER TABLE %Q.'%q_rowid' RENAME TO \"%w_rowid\";\x00SELECT stat FROM %Q.sqlite_stat1 WHERE tbl = '%q_rowid'\x00node\x00CREATE TABLE \"%w\".\"%w_rowid\"(rowid INTEGER PRIMARY KEY,nodeno\x00,a%d\x00);CREATE TABLE \"%w\".\"%w_node\"(nodeno INTEGER PRIMARY KEY,data);\x00CREATE TABLE \"%w\".\"%w_parent\"(nodeno INTEGER PRIMARY KEY,parentnode);\x00INSERT INTO \"%w\".\"%w_node\"VALUES(1,zeroblob(%d))\x00INSERT INTO\"%w\".\"%w_rowid\"(rowid,nodeno)VALUES(?1,?2)ON CONFLICT(rowid)DO UPDATE SET nodeno=excluded.nodeno\x00SELECT * FROM \"%w\".\"%w_rowid\" WHERE rowid=?1\x00UPDATE \"%w\".\"%w_rowid\"SET \x00a%d=coalesce(?%d,a%d)\x00a%d=?%d\x00 WHERE rowid=?1\x00INSERT OR REPLACE INTO '%q'.'%q_node' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_node' WHERE nodeno = ?1\x00SELECT nodeno FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_rowid' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00SELECT parentnode FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_parent' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00PRAGMA %Q.page_size\x00SELECT length(data) FROM '%q'.'%q_node' WHERE nodeno = 1\x00undersize RTree blobs in \"%q_node\"\x00Wrong number of columns for an rtree table\x00Too few columns for an rtree table\x00Too many columns for an rtree table\x00Auxiliary rtree columns must be last\x00CREATE TABLE x(%.*s INT\x00,%.*s\x00);\x00,%.*s REAL\x00,%.*s INT\x00{%lld\x00 %g\x00}\x00Invalid argument to rtreedepth()\x00%z%s%z\x00SELECT data FROM %Q.'%q_node' WHERE nodeno=?\x00Node %lld missing from database\x00SELECT parentnode FROM %Q.'%q_parent' WHERE nodeno=?1\x00SELECT nodeno FROM %Q.'%q_rowid' WHERE rowid=?1\x00Mapping (%lld -> %lld) missing from %s table\x00%_rowid\x00%_parent\x00Found (%lld -> %lld) in %s table, expected (%lld -> %lld)\x00Dimension %d of cell %d on node %lld is corrupt\x00Dimension %d of cell %d on node %lld is corrupt relative to parent\x00Node %lld is too small (%d bytes)\x00Rtree depth out of range (%d)\x00Node %lld is too small for cell count of %d (%d bytes)\x00SELECT count(*) FROM %Q.'%q%s'\x00Wrong number of entries in %%%s table - expected %lld, actual %lld\x00SELECT * FROM %Q.'%q_rowid'\x00Schema corrupt or not an rtree\x00_rowid\x00_parent\x00END\x00wrong number of arguments to function rtreecheck()\x00[\x00[%!g,%!g],\x00[%!g,%!g]]\x00\x00CREATE TABLE x(_shape\x00,%s\x00rtree\x00fullscan\x00_shape does not contain a valid polygon\x00geopoly_overlap\x00geopoly_within\x00geopoly\x00geopoly_area\x00geopoly_blob\x00geopoly_json\x00geopoly_svg\x00geopoly_contains_point\x00geopoly_debug\x00geopoly_bbox\x00geopoly_xform\x00geopoly_regular\x00geopoly_ccw\x00geopoly_group_bbox\x00rtreenode\x00rtreedepth\x00rtreecheck\x00rtree_i32\x00corrupt fossil delta\x00DROP TRIGGER IF EXISTS temp.rbu_insert_tr;DROP TRIGGER IF EXISTS temp.rbu_update1_tr;DROP TRIGGER IF EXISTS temp.rbu_update2_tr;DROP TRIGGER IF EXISTS temp.rbu_delete_tr;\x00SELECT rbu_target_name(name, type='view') AS target, name FROM sqlite_schema WHERE type IN ('table', 'view') AND target IS NOT NULL %s ORDER BY name\x00AND rootpage!=0 AND rootpage IS NOT NULL\x00SELECT name, rootpage, sql IS NULL OR substr(8, 6)=='UNIQUE' FROM main.sqlite_schema WHERE type='index' AND tbl_name = ?\x00SELECT (sql LIKE 'create virtual%%'), rootpage FROM sqlite_schema WHERE name=%Q\x00PRAGMA index_list=%Q\x00SELECT rootpage FROM sqlite_schema WHERE name = %Q\x00PRAGMA table_info=%Q\x00PRAGMA main.index_list = %Q\x00PRAGMA main.index_xinfo = %Q\x00SELECT * FROM '%q'\x00rbu_\x00rbu_rowid\x00table %q %s rbu_rowid column\x00may not have\x00requires\x00PRAGMA table_info(%Q)\x00column missing from %q: %s\x00%z%s\"%w\"\x00%z%s%s\"%w\"%s\x00SELECT max(_rowid_) FROM \"%s%w\"\x00 WHERE _rowid_ > %lld \x00 DESC\x00quote(\x00||','||\x00SELECT %s FROM \"%s%w\" ORDER BY %s LIMIT 1\x00 WHERE (%s) > (%s) \x00_rowid_\x00%z%s \"%w\" COLLATE %Q\x00%z%s \"rbu_imp_%d%w\" COLLATE %Q DESC\x00%z%s quote(\"rbu_imp_%d%w\")\x00SELECT %s FROM \"rbu_imp_%w\" ORDER BY %s LIMIT 1\x00%z%s%s\x00(%s) > (%s)\x00%z%s(%.*s) COLLATE %Q\x00%z%s\"%w\" COLLATE %Q\x00%z%s\"rbu_imp_%d%w\"%s\x00%z%s\"rbu_imp_%d%w\" %s COLLATE %Q\x00%z%s\"rbu_imp_%d%w\" IS ?\x00%z%s%s.\"%w\"\x00%z%sNULL\x00%z, %s._rowid_\x00_rowid_ = ?%d\x00%z%sc%d=?%d\x00_rowid_ = (SELECT id FROM rbu_imposter2 WHERE %z)\x00%z%s\"%w\"=?%d\x00invalid rbu_control value\x00%z%s\"%w\"=rbu_delta(\"%w\", ?%d)\x00%z%s\"%w\"=rbu_fossil_delta(\"%w\", ?%d)\x00PRIMARY KEY(\x00%z%s\"%w\"%s\x00%z)\x00SELECT name FROM sqlite_schema WHERE rootpage = ?\x00%z%sc%d %s COLLATE %Q\x00%z%sc%d%s\x00%z, id INTEGER\x00CREATE TABLE rbu_imposter2(%z, PRIMARY KEY(%z)) WITHOUT ROWID\x00PRIMARY KEY \x00%z%s\"%w\" %s %sCOLLATE %Q%s\x00 NOT NULL\x00%z, %z\x00CREATE TABLE \"rbu_imp_%w\"(%z)%s\x00 WITHOUT ROWID\x00INSERT INTO %s.'rbu_tmp_%q'(rbu_control,%s%s) VALUES(%z)\x00SELECT trim(sql) FROM sqlite_schema WHERE type='index' AND name=?\x00 LIMIT -1 OFFSET %d\x00CREATE TABLE \"rbu_imp_%w\"( %s, PRIMARY KEY( %s ) ) WITHOUT ROWID\x00INSERT INTO \"rbu_imp_%w\" VALUES(%s)\x00DELETE FROM \"rbu_imp_%w\" WHERE %s\x00SELECT %s, 0 AS rbu_control FROM '%q' %s %s %s ORDER BY %s%s\x00AND\x00WHERE\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s ORDER BY %s%s\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s UNION ALL SELECT %s, rbu_control FROM '%q' %s %s typeof(rbu_control)='integer' AND rbu_control!=1 ORDER BY %s%s\x00rbu_imp_\x00INSERT INTO \"%s%w\"(%s%s) VALUES(%s)\x00, _rowid_\x00DELETE FROM \"%s%w\" WHERE %s\x00, rbu_rowid\x00CREATE TABLE IF NOT EXISTS %s.'rbu_tmp_%q' AS SELECT *%s FROM '%q' WHERE 0;\x00, 0 AS rbu_rowid\x00CREATE TEMP TRIGGER rbu_delete_tr BEFORE DELETE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update1_tr BEFORE UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update2_tr AFTER UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(4, %s);END;\x00CREATE TEMP TRIGGER rbu_insert_tr AFTER INSERT ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(0, %s);END;\x00,_rowid_ \x00,rbu_rowid\x00SELECT %s,%s rbu_control%s FROM '%q'%s %s %s %s\x000 AS \x00UPDATE \"%s%w\" SET %s WHERE %s\x00SELECT k, v FROM %s.rbu_state\x00file://%s-vacuum?modeof=%s\x00ATTACH %Q AS stat\x00CREATE TABLE IF NOT EXISTS %s.rbu_state(k INTEGER PRIMARY KEY, v)\x00cannot vacuum wal mode database\x00file:%s-vactmp?rbu_memory=1%s%s\x00&\x00rbu_tmp_insert\x00rbu_fossil_delta\x00rbu_target_name\x00SELECT * FROM sqlite_schema\x00rbu vfs not found\x00PRAGMA main.wal_checkpoint=restart\x00%s-oal\x00%s-wal\x00PRAGMA schema_version\x00PRAGMA schema_version = %d\x00INSERT OR REPLACE INTO %s.rbu_state(k, v) VALUES (%d, %d), (%d, %Q), (%d, %Q), (%d, %d), (%d, %d), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %Q) \x00PRAGMA main.%s\x00PRAGMA main.%s = %d\x00PRAGMA writable_schema=1\x00SELECT sql FROM sqlite_schema WHERE sql!='' AND rootpage!=0 AND name!='sqlite_sequence' ORDER BY type DESC\x00SELECT * FROM sqlite_schema WHERE rootpage=0 OR rootpage IS NULL\x00INSERT INTO sqlite_schema VALUES(?,?,?,?,?)\x00PRAGMA writable_schema=0\x00DELETE FROM %s.'rbu_tmp_%q'\x00rbu_state mismatch error\x00rbu_vfs_%d\x00SELECT count(*) FROM sqlite_schema WHERE type='index' AND tbl_name = %Q\x00rbu_index_cnt\x00SELECT 1 FROM sqlite_schema WHERE tbl_name = 'rbu_count'\x00SELECT sum(cnt * (1 + rbu_index_cnt(rbu_target_name(tbl))))FROM rbu_count\x00cannot update wal mode database\x00database modified during rbu %s\x00vacuum\x00update\x00BEGIN IMMEDIATE\x00PRAGMA journal_mode=off\x00-vactmp\x00DELETE FROM stat.rbu_state\x00rbu/zipvfs setup error\x00rbu(%s)/%z\x00rbu_memory\x00CREATE TABLE x( name TEXT, path TEXT, pageno INTEGER, pagetype TEXT, ncell INTEGER, payload INTEGER, unused INTEGER, mx_payload INTEGER, pgoffset INTEGER, pgsize INTEGER, schema TEXT HIDDEN, aggregate BOOLEAN HIDDEN)\x00/\x00overflow\x00%s%.3x+%.6x\x00%s%.3x/\x00internal\x00leaf\x00corrupted\x00SELECT * FROM (SELECT 'sqlite_schema' AS name,1 AS rootpage,'table' AS type UNION ALL SELECT name,rootpage,type FROM \"%w\".sqlite_schema WHERE rootpage!=0)\x00WHERE name=%Q\x00 ORDER BY name\x00dbstat\x00CREATE TABLE x(pgno INTEGER PRIMARY KEY, data BLOB, schema HIDDEN)\x00read-only\x00cannot delete\x00cannot insert\x00no such schema\x00bad page number\x00bad page value\x00sqlite_dbpage\x00SELECT 0, 'tbl', '', 0, '', 1 UNION ALL SELECT 1, 'idx', '', 0, '', 2 UNION ALL SELECT 2, 'stat', '', 0, '', 0\x00PRAGMA '%q'.table_info('%q')\x00%z%s\"%w\".\"%w\".\"%w\"=\"%w\".\"%w\".\"%w\"\x00%z%s\"%w\".\"%w\".\"%w\" IS NOT \"%w\".\"%w\".\"%w\"\x00 OR \x00SELECT * FROM \"%w\".\"%w\" WHERE NOT EXISTS ( SELECT 1 FROM \"%w\".\"%w\" WHERE %s)\x00SELECT * FROM \"%w\".\"%w\", \"%w\".\"%w\" WHERE %s AND (%z)\x00table schemas do not match\x00SELECT tbl, ?2, stat FROM %Q.sqlite_stat1 WHERE tbl IS ?1 AND idx IS (CASE WHEN ?2=X'' THEN NULL ELSE ?2 END)\x00SELECT * FROM \x00 WHERE \x00 IS ?\x00SAVEPOINT changeset\x00RELEASE changeset\x00UPDATE main.\x00 SET \x00 = ?\x00idx IS CASE WHEN length(?4)=0 AND typeof(?4)='blob' THEN NULL ELSE ?4 END \x00DELETE FROM main.\x00 AND (?\x00AND \x00INSERT INTO main.\x00) VALUES(?\x00, ?\x00INSERT INTO main.sqlite_stat1 VALUES(?1, CASE WHEN length(?2)=0 AND typeof(?2)='blob' THEN NULL ELSE ?2 END, ?3)\x00DELETE FROM main.sqlite_stat1 WHERE tbl=?1 AND idx IS CASE WHEN length(?2)=0 AND typeof(?2)='blob' THEN NULL ELSE ?2 END AND (?4 OR stat IS ?3)\x00SAVEPOINT replace_op\x00RELEASE replace_op\x00SAVEPOINT changeset_apply\x00PRAGMA defer_foreign_keys = 1\x00sqlite3changeset_apply(): no such table: %s\x00sqlite3changeset_apply(): table %s has %d columns, expected %d or more\x00sqlite3changeset_apply(): primary key mismatch for table %s\x00PRAGMA defer_foreign_keys = 0\x00RELEASE changeset_apply\x00ROLLBACK TO changeset_apply\x00fts5: parser stack overflow\x00fts5: syntax error near \"%.*s\"\x00%z%.*s\x00wrong number of arguments to function highlight()\x00wrong number of arguments to function snippet()\x00snippet\x00highlight\x00bm25\x00prefix\x00malformed prefix=... directive\x00too many prefix indexes (max %d)\x00prefix length out of range (max 999)\x00tokenize\x00multiple tokenize=... directives\x00parse error in tokenize directive\x00content\x00multiple content=... directives\x00%Q.%Q\x00content_rowid\x00multiple content_rowid=... directives\x00columnsize\x00malformed columnsize=... directive\x00columns\x00malformed detail=... directive\x00unrecognized option: \"%.*s\"\x00reserved fts5 column name: %s\x00unindexed\x00unrecognized column option: %s\x00T.%Q\x00, T.%Q\x00, T.c%d\x00reserved fts5 table name: %s\x00parse error in \"%s\"\x00docsize\x00%Q.'%q_%s'\x00CREATE TABLE x(\x00%z%s%Q\x00%z, %Q HIDDEN, %s HIDDEN)\x00pgsz\x00hashsize\x00automerge\x00usermerge\x00crisismerge\x00SELECT k, v FROM %Q.'%q_config'\x00version\x00invalid fts5 file format (found %d, expected %d) - run 'rebuild'\x00unterminated string\x00fts5: syntax error near \"%.1s\"\x00OR\x00NOT\x00NEAR\x00expected integer, got \"%.*s\"\x00fts5: column queries are not supported (detail=none)\x00fts5: %s queries are not supported (detail!=full)\x00phrase\x00%s \x00-col %d \x00-col {%d\x00 %d\x00} \x00-near %d \x00--\x00 {\x00 [%z]\x00\"\"\x00{\x00%s : \x00NEAR(\x00 + \x00, %d)\x00 NOT \x00%s%s%z%s\x00nearset\x00wrong number of arguments to function %s\x00fts5_expr_tcl\x00fts5_expr\x00wrong number of arguments to function fts5_isalnum\x00L*\x00N*\x00Co\x00wrong number of arguments to function fts5_fold\x00fts5_isalnum\x00fts5_fold\x00block\x00REPLACE INTO '%q'.'%q_data'(id, block) VALUES(?,?)\x00DELETE FROM '%q'.'%q_data' WHERE id>=? AND id<=?\x00DELETE FROM '%q'.'%q_idx' WHERE segid=?\x00PRAGMA %Q.data_version\x00SELECT pgno FROM '%q'.'%q_idx' WHERE segid=? AND term<=? ORDER BY term DESC LIMIT 1\x00INSERT INTO '%q'.'%q_idx'(segid,term,pgno) VALUES(?,?,?)\x00%s_data\x00id INTEGER PRIMARY KEY, block BLOB\x00segid, term, pgno, PRIMARY KEY(segid, term)\x00SELECT segid, term, (pgno>>1), (pgno&1) FROM %Q.'%q_idx' WHERE segid=%d ORDER BY 1, 2\x00\x00\x00\x00\x00\x00{averages} \x00{structure}\x00{%ssegid=%d h=%d pgno=%d}\x00dlidx \x00 {lvl=%d nMerge=%d nSeg=%d\x00 {id=%d leaves=%d..%d}\x00%s%d\x00 id=%lld\x00 nPos=%d%s\x00+\x00 %lld%s\x00 %d(%lld)\x00 term=%.*s\x00corrupt\x00should be: fts5_rowid(subject, ....)\x00segment\x00should be: fts5_rowid('segment', segid, pgno))\x00first arg to fts5_rowid() must be 'segment'\x00fts5_decode\x00fts5_decode_none\x00fts5_rowid\x00recursively defined fts5 content table\x00SELECT rowid, rank FROM %Q.%Q ORDER BY %s(\"%w\"%s%s) %s\x00DESC\x00ASC\x00reads\x00unknown special query: %.*s\x00SELECT %s\x00no such function: %s\x00parse error in rank function: %s\x00%s: table does not support scanning\x00delete-all\x00'delete-all' may only be used with a contentless or external content fts5 table\x00rebuild\x00'rebuild' may not be used with a contentless fts5 table\x00merge\x00integrity-check\x00cannot %s contentless fts5 table: %s\x00DELETE from\x00no such cursor: %lld\x00no such tokenizer: %s\x00error in tokenizer constructor\x00fts5_api_ptr\x00fts5: 2021-06-18 18:36:39 5c9a6c06871cb9fe42814af9c039eb6da5427a6ec28f187af7ebfb62eafa66e5\x00config\x00fts5\x00fts5_source_id\x00SELECT %s FROM %s T WHERE T.%Q >= ? AND T.%Q <= ? ORDER BY T.%Q ASC\x00SELECT %s FROM %s T WHERE T.%Q <= ? AND T.%Q >= ? ORDER BY T.%Q DESC\x00SELECT %s FROM %s T WHERE T.%Q=?\x00INSERT INTO %Q.'%q_content' VALUES(%s)\x00REPLACE INTO %Q.'%q_content' VALUES(%s)\x00DELETE FROM %Q.'%q_content' WHERE id=?\x00REPLACE INTO %Q.'%q_docsize' VALUES(?,?)\x00DELETE FROM %Q.'%q_docsize' WHERE id=?\x00SELECT sz FROM %Q.'%q_docsize' WHERE id=?\x00REPLACE INTO %Q.'%q_config' VALUES(?,?)\x00SELECT %s FROM %s AS T\x00DROP TABLE IF EXISTS %Q.'%q_data';DROP TABLE IF EXISTS %Q.'%q_idx';DROP TABLE IF EXISTS %Q.'%q_config';\x00DROP TABLE IF EXISTS %Q.'%q_docsize';\x00DROP TABLE IF EXISTS %Q.'%q_content';\x00ALTER TABLE %Q.'%q_%s' RENAME TO '%q_%s';\x00CREATE TABLE %Q.'%q_%q'(%s)%s\x00fts5: error creating shadow table %q_%s: %s\x00id INTEGER PRIMARY KEY\x00, c%d\x00id INTEGER PRIMARY KEY, sz BLOB\x00k PRIMARY KEY, v\x00DELETE FROM %Q.'%q_data';DELETE FROM %Q.'%q_idx';\x00DELETE FROM %Q.'%q_docsize';\x00SELECT count(*) FROM %Q.'%q_%s'\x00tokenchars\x00separators\x00L* N* Co\x00categories\x00remove_diacritics\x00unicode61\x00al\x00ance\x00ence\x00er\x00ic\x00able\x00ible\x00ant\x00ement\x00ment\x00ent\x00ion\x00ou\x00ism\x00ate\x00iti\x00ous\x00ive\x00ize\x00at\x00bl\x00ble\x00iz\x00ational\x00tional\x00tion\x00enci\x00anci\x00izer\x00logi\x00bli\x00alli\x00entli\x00eli\x00e\x00ousli\x00ization\x00ation\x00ator\x00alism\x00iveness\x00fulness\x00ful\x00ousness\x00aliti\x00iviti\x00biliti\x00ical\x00ness\x00icate\x00iciti\x00ative\x00alize\x00eed\x00ee\x00ed\x00ing\x00case_sensitive\x00ascii\x00porter\x00trigram\x00col\x00row\x00instance\x00fts5vocab: unknown table type: %Q\x00CREATE TABlE vocab(term, col, doc, cnt)\x00CREATE TABlE vocab(term, doc, cnt)\x00CREATE TABlE vocab(term, doc, col, offset)\x00wrong number of vtable arguments\x00recursive definition for %s.%s\x00SELECT t.%Q FROM %Q.%Q AS t WHERE t.%Q MATCH '*id'\x00no such fts5 table: %s.%s\x00fts5vocab\x00CREATE TABLE x(sql,ncol,ro,busy,nscan,nsort,naidx,nstep,reprep,run,mem)\x00sqlite_stmt\x002021-06-18 18:36:39 5c9a6c06871cb9fe42814af9c039eb6da5427a6ec28f187af7ebfb62eafa66e5\x00" +var ts1 = "COMPILER=gcc-10.2.1 20210110\x00DEFAULT_MEMSTATUS=0\x00DEFAULT_PAGE_SIZE=1024\x00ENABLE_BYTECODE_VTAB\x00ENABLE_COLUMN_METADATA\x00ENABLE_DBPAGE_VTAB\x00ENABLE_DBSTAT_VTAB\x00ENABLE_EXPLAIN_COMMENTS\x00ENABLE_FTS5\x00ENABLE_GEOPOLY\x00ENABLE_JSON1\x00ENABLE_MEMORY_MANAGEMENT\x00ENABLE_OFFSET_SQL_FUNC\x00ENABLE_PREUPDATE_HOOK\x00ENABLE_RBU\x00ENABLE_RTREE\x00ENABLE_SESSION\x00ENABLE_SNAPSHOT\x00ENABLE_STAT4\x00ENABLE_STMTVTAB\x00ENABLE_UNLOCK_NOTIFY\x00LIKE_DOESNT_MATCH_BLOBS\x00MUTEX_NOOP\x00SOUNDEX\x00SYSTEM_MALLOC\x00TEMP_STORE=1\x00TEST\x00THREADSAFE=1\x003.36.0\x00BINARY\x0020b:20e\x0020c:20e\x0020e\x0040f-21a-21d\x00now\x00local time unavailable\x00second\x00minute\x00hour\x00day\x00month\x00year\x00localtime\x00unixepoch\x00utc\x00weekday \x00start of \x00%04d-%02d-%02d %02d:%02d:%02d\x00%02d:%02d:%02d\x00%04d-%02d-%02d\x00%02d\x00%06.3f\x00%03d\x00%.16g\x00%04d\x00julianday\x00date\x00time\x00datetime\x00strftime\x00current_time\x00current_timestamp\x00current_date\x00failed to allocate %u bytes of memory\x00failed memory resize %u to %u bytes\x000123456789ABCDEF0123456789abcdef\x00-x0\x00X0\x00%\x00NaN\x00Inf\x00\x00NULL\x00(NULL)\x00.\x00SUBQUERY %u\x00thstndrd\x00%s\x00922337203685477580\x00API call with %s database connection pointer\x00unopened\x00invalid\x00Savepoint\x00\x00AutoCommit\x00\x00Transaction\x00\x00SorterNext\x00\x00Prev\x00\x00Next\x00\x00Checkpoint\x00\x00JournalMode\x00\x00Vacuum\x00\x00VFilter\x00iplan=r[P3] zplan='P4'\x00VUpdate\x00data=r[P3@P2]\x00Goto\x00\x00Gosub\x00\x00InitCoroutine\x00\x00Yield\x00\x00MustBeInt\x00\x00Jump\x00\x00Once\x00\x00If\x00\x00Not\x00r[P2]= !r[P1]\x00IfNot\x00\x00IfNullRow\x00if P1.nullRow then r[P3]=NULL, goto P2\x00SeekLT\x00key=r[P3@P4]\x00SeekLE\x00key=r[P3@P4]\x00SeekGE\x00key=r[P3@P4]\x00SeekGT\x00key=r[P3@P4]\x00IfNotOpen\x00if( !csr[P1] ) goto P2\x00IfNoHope\x00key=r[P3@P4]\x00NoConflict\x00key=r[P3@P4]\x00NotFound\x00key=r[P3@P4]\x00Found\x00key=r[P3@P4]\x00SeekRowid\x00intkey=r[P3]\x00NotExists\x00intkey=r[P3]\x00Last\x00\x00IfSmaller\x00\x00SorterSort\x00\x00Sort\x00\x00Rewind\x00\x00IdxLE\x00key=r[P3@P4]\x00IdxGT\x00key=r[P3@P4]\x00IdxLT\x00key=r[P3@P4]\x00IdxGE\x00key=r[P3@P4]\x00RowSetRead\x00r[P3]=rowset(P1)\x00Or\x00r[P3]=(r[P1] || r[P2])\x00And\x00r[P3]=(r[P1] && r[P2])\x00RowSetTest\x00if r[P3] in rowset(P1) goto P2\x00Program\x00\x00FkIfZero\x00if fkctr[P1]==0 goto P2\x00IfPos\x00if r[P1]>0 then r[P1]-=P3, goto P2\x00IfNotZero\x00if r[P1]!=0 then r[P1]--, goto P2\x00IsNull\x00if r[P1]==NULL goto P2\x00NotNull\x00if r[P1]!=NULL goto P2\x00Ne\x00IF r[P3]!=r[P1]\x00Eq\x00IF r[P3]==r[P1]\x00Gt\x00IF r[P3]>r[P1]\x00Le\x00IF r[P3]<=r[P1]\x00Lt\x00IF r[P3]=r[P1]\x00ElseEq\x00\x00DecrJumpZero\x00if (--r[P1])==0 goto P2\x00IncrVacuum\x00\x00VNext\x00\x00Init\x00Start at P2\x00PureFunc\x00r[P3]=func(r[P2@NP])\x00Function\x00r[P3]=func(r[P2@NP])\x00Return\x00\x00EndCoroutine\x00\x00HaltIfNull\x00if r[P3]=null halt\x00Halt\x00\x00Integer\x00r[P2]=P1\x00Int64\x00r[P2]=P4\x00String\x00r[P2]='P4' (len=P1)\x00Null\x00r[P2..P3]=NULL\x00SoftNull\x00r[P1]=NULL\x00Blob\x00r[P2]=P4 (len=P1)\x00Variable\x00r[P2]=parameter(P1,P4)\x00Move\x00r[P2@P3]=r[P1@P3]\x00Copy\x00r[P2@P3+1]=r[P1@P3+1]\x00SCopy\x00r[P2]=r[P1]\x00IntCopy\x00r[P2]=r[P1]\x00ChngCntRow\x00output=r[P1]\x00ResultRow\x00output=r[P1@P2]\x00CollSeq\x00\x00AddImm\x00r[P1]=r[P1]+P2\x00RealAffinity\x00\x00Cast\x00affinity(r[P1])\x00Permutation\x00\x00Compare\x00r[P1@P3] <-> r[P2@P3]\x00IsTrue\x00r[P2] = coalesce(r[P1]==TRUE,P3) ^ P4\x00ZeroOrNull\x00r[P2] = 0 OR NULL\x00Offset\x00r[P3] = sqlite_offset(P1)\x00Column\x00r[P3]=PX\x00Affinity\x00affinity(r[P1@P2])\x00MakeRecord\x00r[P3]=mkrec(r[P1@P2])\x00Count\x00r[P2]=count()\x00ReadCookie\x00\x00SetCookie\x00\x00ReopenIdx\x00root=P2 iDb=P3\x00OpenRead\x00root=P2 iDb=P3\x00OpenWrite\x00root=P2 iDb=P3\x00OpenDup\x00\x00OpenAutoindex\x00nColumn=P2\x00BitAnd\x00r[P3]=r[P1]&r[P2]\x00BitOr\x00r[P3]=r[P1]|r[P2]\x00ShiftLeft\x00r[P3]=r[P2]<>r[P1]\x00Add\x00r[P3]=r[P1]+r[P2]\x00Subtract\x00r[P3]=r[P2]-r[P1]\x00Multiply\x00r[P3]=r[P1]*r[P2]\x00Divide\x00r[P3]=r[P2]/r[P1]\x00Remainder\x00r[P3]=r[P2]%r[P1]\x00Concat\x00r[P3]=r[P2]+r[P1]\x00OpenEphemeral\x00nColumn=P2\x00BitNot\x00r[P2]= ~r[P1]\x00SorterOpen\x00\x00SequenceTest\x00if( cursor[P1].ctr++ ) pc = P2\x00String8\x00r[P2]='P4'\x00OpenPseudo\x00P3 columns in r[P2]\x00Close\x00\x00ColumnsUsed\x00\x00SeekScan\x00Scan-ahead up to P1 rows\x00SeekHit\x00set P2<=seekHit<=P3\x00Sequence\x00r[P2]=cursor[P1].ctr++\x00NewRowid\x00r[P2]=rowid\x00Insert\x00intkey=r[P3] data=r[P2]\x00RowCell\x00\x00Delete\x00\x00ResetCount\x00\x00SorterCompare\x00if key(P1)!=trim(r[P3],P4) goto P2\x00SorterData\x00r[P2]=data\x00RowData\x00r[P2]=data\x00Rowid\x00r[P2]=rowid\x00NullRow\x00\x00SeekEnd\x00\x00IdxInsert\x00key=r[P2]\x00SorterInsert\x00key=r[P2]\x00IdxDelete\x00key=r[P2@P3]\x00DeferredSeek\x00Move P3 to P1.rowid if needed\x00IdxRowid\x00r[P2]=rowid\x00FinishSeek\x00\x00Destroy\x00\x00Clear\x00\x00ResetSorter\x00\x00CreateBtree\x00r[P2]=root iDb=P1 flags=P3\x00SqlExec\x00\x00ParseSchema\x00\x00LoadAnalysis\x00\x00DropTable\x00\x00DropIndex\x00\x00DropTrigger\x00\x00IntegrityCk\x00\x00RowSetAdd\x00rowset(P1)=r[P2]\x00Real\x00r[P2]=P4\x00Param\x00\x00FkCounter\x00fkctr[P1]+=P2\x00MemMax\x00r[P1]=max(r[P1],r[P2])\x00OffsetLimit\x00if r[P1]>0 then r[P2]=r[P1]+max(0,r[P3]) else r[P2]=(-1)\x00AggInverse\x00accum=r[P3] inverse(r[P2@P5])\x00AggStep\x00accum=r[P3] step(r[P2@P5])\x00AggStep1\x00accum=r[P3] step(r[P2@P5])\x00AggValue\x00r[P3]=value N=P2\x00AggFinal\x00accum=r[P1] N=P2\x00Expire\x00\x00CursorLock\x00\x00CursorUnlock\x00\x00TableLock\x00iDb=P1 root=P2 write=P3\x00VBegin\x00\x00VCreate\x00\x00VDestroy\x00\x00VOpen\x00\x00VColumn\x00r[P3]=vcolumn(P2)\x00VRename\x00\x00Pagecount\x00\x00MaxPgcnt\x00\x00Trace\x00\x00CursorHint\x00\x00ReleaseReg\x00release r[P1@P2] mask P3\x00Noop\x00\x00Explain\x00\x00Abortable\x00\x00open\x00close\x00access\x00getcwd\x00stat\x00fstat\x00ftruncate\x00fcntl\x00read\x00pread\x00pread64\x00write\x00pwrite\x00pwrite64\x00fchmod\x00fallocate\x00unlink\x00openDirectory\x00mkdir\x00rmdir\x00fchown\x00geteuid\x00mmap\x00munmap\x00mremap\x00getpagesize\x00readlink\x00lstat\x00ioctl\x00attempt to open \"%s\" as file descriptor %d\x00/dev/null\x00NONE\x00SHARED\x00RESERVED\x00PENDING\x00EXCLUSIVE\x00ERROR\x00os_unix.c:%d: (%d) %s(%s) - %s\x00cannot fstat db file %s\x00file unlinked while open: %s\x00multiple links to file: %s\x00file renamed while open: %s\x00TEST WR-LOCK %d %d %d (unix)\n\x00LOCK %d %s was %s(%s,%d) pid=%d (unix)\n\x00LOCK %d %s ok (already held) (unix)\n\x00LOCK %d %s %s (unix)\n\x00ok\x00failed\x00UNLOCK %d %d was %d(%d,%d) pid=%d (unix)\n\x00CLOSE %-3d\n\x00TEST WR-LOCK %d %d %d (dotlock)\n\x00UNLOCK %d %d was %d pid=%d (dotlock)\n\x00READ %-3d %5d %7lld %llu\n\x00WRITE %-3d %5d %7lld %llu\n\x00OPENDIR %-3d %s\n\x00SYNC %-3d\n\x00full_fsync\x00DIRSYNC %s (have_fullfsync=%d fullsync=%d)\n\x00%s-shm\x00readonly_shm\x00SHM-LOCK shmid-%d, pid-%d got %03x,%03x\n\x00OPEN %-3d %s\n\x00psow\x00unix-excl\x00%s.lock\x00SQLITE_TMPDIR\x00TMPDIR\x00/var/tmp\x00/usr/tmp\x00/tmp\x00%s/etilqs_%llx%c\x00modeof\x00OPENX %-3d %s 0%o\n\x00fsync\x00unix\x00unix-none\x00unix-dotfile\x00memdb\x00memdb(%p,%lld)\x00PRAGMA \"%w\".page_count\x00ATTACH x AS %Q\x00recovered %d pages from %s\x00-journal\x00-wal\x00nolock\x00immutable\x00recovered %d frames from WAL file %s\x00cannot limit WAL size: %s\x00SQLite format 3\x00:memory:\x00@ \x00\n\x00invalid page number %d\x002nd reference to page %d\x00Failed to read ptrmap key=%d\x00Bad ptr map entry key=%d expected=(%d,%d) got=(%d,%d)\x00failed to get page %d\x00freelist leaf count too big on page %d\x00%s is %d but should be %d\x00size\x00overflow list length\x00Page %u: \x00unable to get the page. error code=%d\x00btreeInitPage() returns error code %d\x00free space corruption\x00On tree page %u cell %d: \x00On page %u at right child: \x00Offset %d out of range %d..%d\x00Extends off end of page\x00Rowid %lld out of order\x00Child page depth differs\x00Multiple uses for byte %u of page %u\x00Fragmentation of %d bytes reported as %d on page %u\x00Main freelist: \x00max rootpage (%d) disagrees with header (%d)\x00incremental_vacuum enabled with a max rootpage of zero\x00Page %d is never used\x00Pointer map page %d is referenced\x00unknown database %s\x00destination database is in use\x00source and destination must be distinct\x00%!.15g\x00-\x00%s%s\x00IF \x00if %s goto P2\x00@P\x00+1\x00%d\x00%d..%d\x00@NP\x00..P3\x00; %s\x00k(%d\x00B\x00,%s%s%s\x00N.\x00)\x00%.18s-%s\x00%s(%d)\x00%lld\x00(blob)\x00vtab:%p\x00%c%u\x00]\x00program\x00?\x008\x0016LE\x0016BE\x00addr\x00opcode\x00p1\x00p2\x00p3\x00p4\x00p5\x00comment\x00id\x00parent\x00notused\x00detail\x00%.4c%s%.16c\x00MJ delete: %s\x00MJ collide: %s\x00-mj%06X9%02X\x00FOREIGN KEY constraint failed\x00a CHECK constraint\x00a generated column\x00an index\x00non-deterministic use of %s() in %s\x00API called with finalized prepared statement\x00API called with NULL prepared statement\x00string or blob too big\x00bind on a busy prepared statement: [%s]\x00-- \x00'%.*q'\x00zeroblob(%d)\x00x'\x00%02x\x00'\x00%s constraint failed\x00%z: %s\x00abort at %d in [%s]: %s\x00cannot open savepoint - SQL statements in progress\x00no such savepoint: %s\x00cannot release savepoint - SQL statements in progress\x00cannot commit transaction - SQL statements in progress\x00cannot start a transaction within a transaction\x00cannot rollback - no transaction is active\x00cannot commit - no transaction is active\x00database schema has changed\x00index corruption\x00sqlite_master\x00SELECT*FROM\"%w\".%s WHERE %s ORDER BY rowid\x00too many levels of trigger recursion\x00cannot change %s wal mode from within a transaction\x00into\x00out of\x00database table is locked: %s\x00-- %s\x00statement aborts at %d: [%s] %s\x00out of memory\x00NOT NULL\x00UNIQUE\x00CHECK\x00FOREIGN KEY\x00cannot open value of type %s\x00null\x00real\x00integer\x00no such rowid: %lld\x00cannot open virtual table: %s\x00cannot open table without rowid: %s\x00cannot open view: %s\x00no such column: \"%s\"\x00foreign key\x00indexed\x00cannot open %s column for writing\x00CREATE TABLE x(addr INT,opcode TEXT,p1 INT,p2 INT,p3 INT,p4 TEXT,p5 INT,comment TEXT,subprog TEXT,stmt HIDDEN);\x00CREATE TABLE x(type TEXT,schema TEXT,name TEXT,wr INT,subprog TEXT,stmt HIDDEN);\x00table\x00index\x00(FK)\x00stmt-pointer\x00argument to %s() is not a valid SQL statement\x00tables_used\x00bytecode\x00main\x00new\x00old\x00excluded\x00misuse of aliased aggregate %s\x00misuse of aliased window function %s\x00row value misused\x00double-quoted string literal: \"%w\"\x00no such column\x00ambiguous column name\x00%s: %s.%s.%s\x00%s: %s.%s\x00%s: %s\x00partial index WHERE clauses\x00index expressions\x00CHECK constraints\x00generated columns\x00%s prohibited in %s\x00true\x00false\x00the \".\" operator\x00second argument to likelihood() must be a constant between 0.0 and 1.0\x00not authorized to use function: %s\x00non-deterministic functions\x00%.*s() may not be used as a window function\x00window\x00aggregate\x00misuse of %s function %.*s()\x00no such function: %.*s\x00wrong number of arguments to function %.*s()\x00FILTER may not be used with non-aggregate %.*s()\x00subqueries\x00parameters\x00%r %s BY term out of range - should be between 1 and %d\x00too many terms in ORDER BY clause\x00ORDER\x00%r ORDER BY term does not match any column in the result set\x00too many terms in %s BY clause\x00a GROUP BY clause is required before HAVING\x00GROUP\x00aggregate functions are not allowed in the GROUP BY clause\x00Expression tree is too large (maximum depth %d)\x000\x00too many arguments on function %T\x00unsafe use of %s()\x00variable number must be between ?1 and ?%d\x00too many SQL variables\x00%d columns assigned %d values\x00too many columns in %s\x00_ROWID_\x00ROWID\x00OID\x00first_entry_in(%d)\x00USING ROWID SEARCH ON TABLE %s FOR IN-OPERATOR\x00USING INDEX %s FOR IN-OPERATOR\x00sub-select returns %d columns - expected %d\x00REUSE LIST SUBQUERY %d\x00return address\x00Result of SELECT %u\x00RHS of IN operator\x00%sLIST SUBQUERY %d\x00CORRELATED \x00REUSE SUBQUERY %d\x00%sSCALAR SUBQUERY %d\x00Init subquery result\x00Init EXISTS result\x001\x00begin IN expr\x00end IN expr\x000x\x00hex literal too big: %s%s\x00generated column loop on \"%s\"\x00%s.rowid\x00%s.%s\x00misuse of aggregate: %s()\x00unknown function: %s()\x00r[%d]=%s.%s\x00rowid\x00RAISE() may only be used within a trigger-program\x00B\x00C\x00D\x00E\x00sqlite_\x00table %s may not be altered\x00SELECT 1 FROM \"%w\".sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, %d, %Q, %d)=NULL \x00SELECT 1 FROM temp.sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, 1, %Q, %d)=NULL \x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_quotefix(%Q, sql)WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%'\x00UPDATE temp.sqlite_master SET sql = sqlite_rename_quotefix('temp', sql)WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%'\x00there is already another table or index with this name: %s\x00view %s may not be altered\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, %d) WHERE (type!='index' OR tbl_name=%Q COLLATE nocase)AND name NOT LIKE 'sqliteX_%%' ESCAPE 'X'\x00UPDATE %Q.sqlite_master SET tbl_name = %Q, name = CASE WHEN type='table' THEN %Q WHEN name LIKE 'sqliteX_autoindex%%' ESCAPE 'X' AND type='index' THEN 'sqlite_autoindex_' || %Q || substr(name,%d+18) ELSE name END WHERE tbl_name=%Q COLLATE nocase AND (type='table' OR type='index' OR type='trigger');\x00sqlite_sequence\x00UPDATE \"%w\".sqlite_sequence set name = %Q WHERE name = %Q\x00UPDATE sqlite_temp_schema SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, 1), tbl_name = CASE WHEN tbl_name=%Q COLLATE nocase AND sqlite_rename_test(%Q, sql, type, name, 1, 'after rename', 0) THEN %Q ELSE tbl_name END WHERE type IN ('view', 'trigger')\x00after rename\x00SELECT raise(ABORT,%Q) FROM \"%w\".\"%w\"\x00Cannot add a PRIMARY KEY column\x00Cannot add a UNIQUE column\x00Cannot add a REFERENCES column with non-NULL default value\x00Cannot add a NOT NULL column with default value NULL\x00Cannot add a column with non-constant default\x00cannot add a STORED column\x00UPDATE \"%w\".sqlite_master SET sql = printf('%%.%ds, ',sql) || %Q || substr(sql,1+length(printf('%%.%ds',sql))) WHERE type = 'table' AND name = %Q\x00virtual tables may not be altered\x00Cannot add a column to a view\x00sqlite_altertab_%s\x00view\x00virtual table\x00cannot %s %s \"%s\"\x00drop column from\x00rename columns of\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, %d) WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND (type != 'index' OR tbl_name = %Q) AND sql NOT LIKE 'create virtual%%'\x00UPDATE temp.sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, 1) WHERE type IN ('trigger', 'view')\x00error in %s %s%s%s: %s\x00 \x00\"%w\" \x00%Q%s\x00%.*s%s\x00cannot drop %s column: \"%s\"\x00PRIMARY KEY\x00cannot drop column \"%s\": no other columns exist\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_drop_column(%d, sql, %d) WHERE (type=='table' AND tbl_name=%Q COLLATE nocase)\x00after drop column\x00sqlite_rename_column\x00sqlite_rename_table\x00sqlite_rename_test\x00sqlite_drop_column\x00sqlite_rename_quotefix\x00CREATE TABLE %Q.%s(%s)\x00DELETE FROM %Q.%s WHERE %s=%Q\x00DELETE FROM %Q.%s\x00sqlite_stat1\x00tbl,idx,stat\x00sqlite_stat4\x00tbl,idx,neq,nlt,ndlt,sample\x00sqlite_stat3\x00stat_init\x00stat_push\x00%llu\x00 %llu\x00%llu \x00stat_get\x00%s.expr(%d)\x00sqlite\\_%\x00Analysis for %s.%s\x00BBB\x00idx\x00tbl\x00unordered*\x00sz=[0-9]*\x00noskipscan*\x00SELECT idx,count(*) FROM %Q.sqlite_stat4 GROUP BY idx\x00SELECT idx,neq,nlt,ndlt,sample FROM %Q.sqlite_stat4\x00SELECT tbl,idx,stat FROM %Q.sqlite_stat1\x00x\x00\x00too many attached databases - max %d\x00database %s is already in use\x00database is already attached\x00attached databases must use the same text encoding as main database\x00unable to open database: %s\x00no such database: %s\x00cannot detach database %s\x00database %s is locked\x00sqlite_detach\x00sqlite_attach\x00%s cannot use variables\x00%s %T cannot reference objects in database %s\x00authorizer malfunction\x00%s.%z\x00access to %z is prohibited\x00not authorized\x00usesStmtJournal=%d\x00sqlite_temp_schema\x00sqlite_schema\x00sqlite_temp_master\x00pragma_\x00no such view\x00no such table\x00corrupt database\x00unknown database %T\x00object name reserved for internal use: %s\x00temporary table name must be unqualified\x00table %T already exists\x00there is already an index named %s\x00sqlite_returning\x00cannot use RETURNING in a trigger\x00too many columns on %s\x00duplicate column name: %s\x00default value of column [%s] is not constant\x00cannot use DEFAULT on a generated column\x00generated columns cannot be part of the PRIMARY KEY\x00table \"%s\" has more than one primary key\x00INTEGER\x00AUTOINCREMENT is only allowed on an INTEGER PRIMARY KEY\x00virtual tables cannot use computed columns\x00virtual\x00stored\x00error in generated column \"%s\"\x00,\x00\n \x00,\n \x00\n)\x00CREATE TABLE \x00 TEXT\x00 NUM\x00 INT\x00 REAL\x00AUTOINCREMENT not allowed on WITHOUT ROWID tables\x00PRIMARY KEY missing on table %s\x00must have at least one non-generated column\x00TABLE\x00VIEW\x00CREATE %s %.*s\x00UPDATE %Q.sqlite_master SET type='%s', name=%Q, tbl_name=%Q, rootpage=#%d, sql=%Q WHERE rowid=#%d\x00CREATE TABLE %Q.sqlite_sequence(name,seq)\x00tbl_name='%q' AND type!='trigger'\x00parameters are not allowed in views\x00view %s is circularly defined\x00corrupt schema\x00UPDATE %Q.sqlite_master SET rootpage=%d WHERE #%d AND rootpage=#%d\x00sqlite_stat%d\x00DELETE FROM %Q.sqlite_sequence WHERE name=%Q\x00DELETE FROM %Q.sqlite_master WHERE tbl_name=%Q and type!='trigger'\x00table %s may not be dropped\x00use DROP TABLE to delete table %s\x00use DROP VIEW to delete view %s\x00foreign key on %s should reference only one column of table %T\x00number of columns in foreign key does not match the number of columns in the referenced table\x00unknown column \"%s\" in foreign key definition\x00unsupported use of NULLS %s\x00FIRST\x00LAST\x00cannot create a TEMP index on non-TEMP table \"%s\"\x00table %s may not be indexed\x00views may not be indexed\x00virtual tables may not be indexed\x00there is already a table named %s\x00index %s already exists\x00sqlite_autoindex_%s_%d\x00expressions prohibited in PRIMARY KEY and UNIQUE constraints\x00conflicting ON CONFLICT clauses specified\x00invalid rootpage\x00CREATE%s INDEX %.*s\x00 UNIQUE\x00INSERT INTO %Q.sqlite_master VALUES('index',%Q,%Q,#%d,%Q);\x00name='%q' AND type='index'\x00no such index: %S\x00index associated with UNIQUE or PRIMARY KEY constraint cannot be dropped\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='index'\x00too many FROM clause terms, max: %d\x00a JOIN clause is required before %s\x00ON\x00USING\x00BEGIN\x00ROLLBACK\x00COMMIT\x00RELEASE\x00unable to open a temporary database file for storing temporary tables\x00index '%q'\x00, \x00unable to identify the object to be reindexed\x00duplicate WITH table name: %s\x00no such collation sequence: %s\x00table %s may not be modified\x00cannot modify %s because it is a view\x00rows deleted\x00text\x00blob\x00integer overflow\x00%.*f\x00LIKE or GLOB pattern too complex\x00ESCAPE expression must be a single character\x00%!.20e\x00?000\x00MATCH\x00like\x00implies_nonnull_row\x00expr_compare\x00expr_implies_expr\x00soundex\x00load_extension\x00sqlite_compileoption_used\x00sqlite_compileoption_get\x00unlikely\x00likelihood\x00likely\x00sqlite_offset\x00ltrim\x00rtrim\x00trim\x00min\x00max\x00typeof\x00length\x00instr\x00printf\x00unicode\x00char\x00abs\x00round\x00upper\x00lower\x00hex\x00ifnull\x00random\x00randomblob\x00nullif\x00sqlite_version\x00sqlite_source_id\x00sqlite_log\x00quote\x00last_insert_rowid\x00changes\x00total_changes\x00replace\x00zeroblob\x00substr\x00substring\x00sum\x00total\x00avg\x00count\x00group_concat\x00glob\x00coalesce\x00sign\x00iif\x00foreign key mismatch - \"%w\" referencing \"%w\"\x00cannot INSERT into generated column \"%s\"\x00table %S has no column named %s\x00table %S has %d columns but %d values were supplied\x00%d values for %d columns\x00UPSERT not implemented for virtual table \"%s\"\x00cannot UPSERT a view\x00rows inserted\x00trigger count\x00defer IPK REPLACE until last\x00uniqueness check for ROWID\x00prep index %s\x00%s column %d\x00for %s\x00bypass recheck\x00Do IPK REPLACE\x00sqlite3_extension_init\x00sqlite3_\x00lib\x00_init\x00no entry point [%s] in shared library [%s]\x00error during initialization: %s\x00unable to open shared library [%.*s]\x00so\x00automatic extension loading failed: %s\x00seq\x00from\x00to\x00on_update\x00on_delete\x00match\x00cid\x00name\x00type\x00notnull\x00dflt_value\x00pk\x00hidden\x00seqno\x00desc\x00coll\x00key\x00builtin\x00enc\x00narg\x00flags\x00wdth\x00hght\x00flgs\x00unique\x00origin\x00partial\x00fkid\x00file\x00busy\x00log\x00checkpointed\x00database\x00status\x00cache_size\x00timeout\x00analysis_limit\x00application_id\x00auto_vacuum\x00automatic_index\x00busy_timeout\x00cache_spill\x00case_sensitive_like\x00cell_size_check\x00checkpoint_fullfsync\x00collation_list\x00compile_options\x00count_changes\x00data_version\x00database_list\x00default_cache_size\x00defer_foreign_keys\x00empty_result_callbacks\x00encoding\x00foreign_key_check\x00foreign_key_list\x00foreign_keys\x00freelist_count\x00full_column_names\x00fullfsync\x00function_list\x00hard_heap_limit\x00ignore_check_constraints\x00incremental_vacuum\x00index_info\x00index_list\x00index_xinfo\x00integrity_check\x00journal_mode\x00journal_size_limit\x00legacy_alter_table\x00lock_status\x00locking_mode\x00max_page_count\x00mmap_size\x00module_list\x00optimize\x00page_count\x00page_size\x00pragma_list\x00query_only\x00quick_check\x00read_uncommitted\x00recursive_triggers\x00reverse_unordered_selects\x00schema_version\x00secure_delete\x00short_column_names\x00shrink_memory\x00soft_heap_limit\x00synchronous\x00table_info\x00table_xinfo\x00temp_store\x00temp_store_directory\x00threads\x00trusted_schema\x00user_version\x00wal_autocheckpoint\x00wal_checkpoint\x00writable_schema\x00onoffalseyestruextrafull\x00exclusive\x00normal\x00none\x00full\x00incremental\x00memory\x00temporary storage cannot be changed from within a transaction\x00SET NULL\x00SET DEFAULT\x00CASCADE\x00RESTRICT\x00NO ACTION\x00delete\x00persist\x00off\x00truncate\x00wal\x00w\x00a\x00s\x00sissii\x00utf8\x00utf16le\x00utf16be\x00-%T\x00fast\x00not a writable directory\x00Safety level may not be changed inside a transaction\x00issisii\x00issisi\x00iisX\x00isiX\x00c\x00u\x00isisi\x00iss\x00is\x00iissssss\x00siX\x00*** in database %s ***\n\x00NULL value in %s.%s\x00CHECK constraint failed in %s\x00row \x00 missing from index \x00non-unique entry in index \x00wrong # of entries in index \x00unsupported encoding: %s\x00restart\x00ANALYZE \"%w\".\"%w\"\x00unknown\x00closed\x00ss\x00UTF8\x00UTF-8\x00UTF-16le\x00UTF-16be\x00UTF16le\x00UTF16be\x00UTF-16\x00UTF16\x00unlocked\x00shared\x00reserved\x00pending\x00CREATE TABLE x\x00%c\"%s\"\x00(\"%s\"\x00,arg HIDDEN\x00,schema HIDDEN\x00PRAGMA \x00%Q.\x00=%Q\x00error in %s %s after %s: %s\x00rename\x00drop column\x00malformed database schema (%s)\x00%z - %s\x00orphan index\x00CREATE TABLE x(type text,name text,tbl_name text,rootpage int,sql text)\x00unsupported file format\x00SELECT*FROM\"%w\".%s ORDER BY rowid\x00database schema is locked: %s\x00statement too long\x00unknown or unsupported join type: %T %T%s%T\x00RIGHT and FULL OUTER JOINs are not currently supported\x00naturaleftouterightfullinnercross\x00a NATURAL join may not have an ON or USING clause\x00cannot have both ON and USING clauses in the same join\x00cannot join using column %s - column not present in both tables\x00OFFSET\x00UNION ALL\x00INTERSECT\x00EXCEPT\x00UNION\x00USE TEMP B-TREE FOR %s\x00column%d\x00%.*z:%u\x00LIMIT counter\x00OFFSET counter\x00LIMIT+OFFSET\x00cannot use window functions in recursive queries\x00Queue table\x00recursive aggregate queries not supported\x00SETUP\x00RECURSIVE STEP\x00SCAN %d CONSTANT ROW%s\x00S\x00COMPOUND QUERY\x00LEFT-MOST SUBQUERY\x00Jump ahead if LIMIT reached\x00%s USING TEMP B-TREE\x00all VALUES must have the same number of terms\x00SELECTs to the left and right of %s do not have the same number of result columns\x00MERGE (%s)\x00left SELECT\x00LEFT\x00right SELECT\x00RIGHT\x00Output routine for A\x00Output routine for B\x00eof-A subroutine\x00eof-B subroutine\x00A-lt-B subroutine\x00A-eq-B subroutine\x00A-gt-B subroutine\x00no such index: %s\x00'%s' is not a function\x00multiple references to recursive table: %s\x00circular reference: %s\x00table %s has %d values for %d columns\x00multiple recursive references: %s\x00recursive reference in a subquery: %s\x00subquery_%u\x00too many references to \"%s\": max 65535\x00access to view \"%s\" prohibited\x00unsafe use of virtual table \"%s\"\x00*\x00%s.%s.%s\x00no such table: %s\x00no tables specified\x00too many columns in result set\x00DISTINCT aggregates must have exactly one argument\x00USE TEMP B-TREE FOR %s(DISTINCT)\x00SCAN %s%s%s\x00 USING COVERING INDEX \x00target object/alias may not appear in FROM clause: %s\x00expected %d columns for '%s' but got %d\x00%!S\x00CO-ROUTINE %!S\x00materialize %!S\x00MATERIALIZE %!S\x00end %!S\x00inner-loop subroutine\x00end inner-loop subroutine\x00clear abort flag\x00DISTINCT\x00GROUP BY\x00GROUP BY sort\x00output one row\x00check abort flag\x00reset accumulator\x00indicate data in accumulator\x00output final row\x00set abort flag\x00Groupby result generator entry point\x00end groupby result generator\x00indicate accumulator empty\x00RIGHT PART OF ORDER BY\x00ORDER BY\x00sqlite3_get_table() called with two or more incompatible queries\x00temporary trigger may not have qualified name\x00trigger\x00cannot create triggers on virtual tables\x00trigger %T already exists\x00cannot create trigger on system table\x00cannot create %s trigger on view: %S\x00BEFORE\x00AFTER\x00cannot create INSTEAD OF trigger on table: %S\x00INSERT INTO %Q.sqlite_master VALUES('trigger',%Q,%Q,0,'CREATE TRIGGER %q')\x00type='trigger' AND name='%q'\x00no such trigger: %S\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='trigger'\x00%s RETURNING is not available on virtual tables\x00DELETE\x00UPDATE\x00RETURNING may not use \"TABLE.*\" wildcards\x00abort\x00rollback\x00fail\x00ignore\x00default\x00n/a\x00Start: %s.%s (%s %s%s%s ON %s)\x00INSERT\x00-- TRIGGER %s\x00End: %s.%s\x00Call: %s.%s\x00fkey\x00cannot UPDATE generated column \"%s\"\x00no such column: %s\x00rows updated\x00%r \x00%sON CONFLICT clause does not match any PRIMARY KEY or UNIQUE constraint\x00Begin DO UPDATE of UPSERT\x00End DO UPDATE of UPSERT\x00CRE\x00INS\x00cannot VACUUM from within a transaction\x00cannot VACUUM - SQL statements in progress\x00non-text filename\x00ATTACH %Q AS vacuum_db\x00output file already exists\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='table'AND name<>'sqlite_sequence' AND coalesce(rootpage,1)>0\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='index'\x00SELECT'INSERT INTO vacuum_db.'||quote(name)||' SELECT*FROM\"%w\".'||quote(name)FROM vacuum_db.sqlite_schema WHERE type='table'AND coalesce(rootpage,1)>0\x00INSERT INTO vacuum_db.sqlite_schema SELECT*FROM \"%w\".sqlite_schema WHERE type IN('view','trigger') OR(type='table'AND rootpage=0)\x00CREATE VIRTUAL TABLE %T\x00UPDATE %Q.sqlite_master SET type='table', name=%Q, tbl_name=%Q, rootpage=0, sql=%Q WHERE rowid=#%d\x00name=%Q AND sql=%Q\x00vtable constructor called recursively: %s\x00vtable constructor failed: %s\x00vtable constructor did not declare schema: %s\x00no such module: %s\x00\x00 AND \x00(\x00 (\x00%s=?\x00ANY(%s)\x00>\x00<\x00%s %S\x00SEARCH\x00SCAN\x00AUTOMATIC PARTIAL COVERING INDEX\x00AUTOMATIC COVERING INDEX\x00COVERING INDEX %s\x00INDEX %s\x00 USING \x00=\x00>? AND rowid<\x00 USING INTEGER PRIMARY KEY (rowid%s?)\x00 VIRTUAL TABLE INDEX %d:%s\x00begin skip-scan on %s\x00init LEFT JOIN no-match flag\x00next row of %s\x00NULL-scan pass ctr\x00If NULL-scan 2nd pass\x00If NULL-scan 1st pass\x00MULTI-INDEX OR\x00INDEX %d\x00record LEFT JOIN hit\x00regexp\x00ON clause references tables to its right\x00NOCASE\x00too many arguments on %s() - max %d\x00automatic index on %s(%s)\x00auto-index\x00%s.xBestIndex malfunction\x00abbreviated query algorithm search\x00no query solution\x00at most %d tables in a join\x00SCAN CONSTANT ROW\x00next skip-scan on %s\x00second argument to nth_value must be a positive integer\x00argument of ntile must be a positive integer\x00row_number\x00dense_rank\x00rank\x00percent_rank\x00cume_dist\x00ntile\x00last_value\x00nth_value\x00first_value\x00lead\x00lag\x00no such window: %s\x00RANGE with offset PRECEDING/FOLLOWING requires one ORDER BY expression\x00FILTER clause may only be used with aggregate window functions\x00unsupported frame specification\x00PARTITION clause\x00ORDER BY clause\x00frame specification\x00cannot override %s of window: %s\x00DISTINCT is not supported for window functions\x00frame starting offset must be a non-negative integer\x00frame ending offset must be a non-negative integer\x00frame starting offset must be a non-negative number\x00frame ending offset must be a non-negative number\x00call flush_partition\x00%s clause should come after %s not before\x00LIMIT\x00too many terms in compound SELECT\x00syntax error after column name \"%.*s\"\x00parser stack overflow\x00unknown table option: %.*s\x00set list\x00near \"%T\": syntax error\x00qualified table names are not allowed on INSERT, UPDATE, and DELETE statements within triggers\x00the INDEXED BY clause is not allowed on UPDATE or DELETE statements within triggers\x00the NOT INDEXED clause is not allowed on UPDATE or DELETE statements within triggers\x00incomplete input\x00unrecognized token: \"%.*s\"\x00%s in \"%s\"\x00create\x00temp\x00temporary\x00end\x00explain\x00unable to close due to unfinalized statements or unfinished backups\x00SQLITE_OK\x00SQLITE_ERROR\x00SQLITE_ERROR_SNAPSHOT\x00SQLITE_INTERNAL\x00SQLITE_PERM\x00SQLITE_ABORT\x00SQLITE_ABORT_ROLLBACK\x00SQLITE_BUSY\x00SQLITE_BUSY_RECOVERY\x00SQLITE_BUSY_SNAPSHOT\x00SQLITE_LOCKED\x00SQLITE_LOCKED_SHAREDCACHE\x00SQLITE_NOMEM\x00SQLITE_READONLY\x00SQLITE_READONLY_RECOVERY\x00SQLITE_READONLY_CANTINIT\x00SQLITE_READONLY_ROLLBACK\x00SQLITE_READONLY_DBMOVED\x00SQLITE_READONLY_DIRECTORY\x00SQLITE_INTERRUPT\x00SQLITE_IOERR\x00SQLITE_IOERR_READ\x00SQLITE_IOERR_SHORT_READ\x00SQLITE_IOERR_WRITE\x00SQLITE_IOERR_FSYNC\x00SQLITE_IOERR_DIR_FSYNC\x00SQLITE_IOERR_TRUNCATE\x00SQLITE_IOERR_FSTAT\x00SQLITE_IOERR_UNLOCK\x00SQLITE_IOERR_RDLOCK\x00SQLITE_IOERR_DELETE\x00SQLITE_IOERR_NOMEM\x00SQLITE_IOERR_ACCESS\x00SQLITE_IOERR_CHECKRESERVEDLOCK\x00SQLITE_IOERR_LOCK\x00SQLITE_IOERR_CLOSE\x00SQLITE_IOERR_DIR_CLOSE\x00SQLITE_IOERR_SHMOPEN\x00SQLITE_IOERR_SHMSIZE\x00SQLITE_IOERR_SHMLOCK\x00SQLITE_IOERR_SHMMAP\x00SQLITE_IOERR_SEEK\x00SQLITE_IOERR_DELETE_NOENT\x00SQLITE_IOERR_MMAP\x00SQLITE_IOERR_GETTEMPPATH\x00SQLITE_IOERR_CONVPATH\x00SQLITE_CORRUPT\x00SQLITE_CORRUPT_VTAB\x00SQLITE_NOTFOUND\x00SQLITE_FULL\x00SQLITE_CANTOPEN\x00SQLITE_CANTOPEN_NOTEMPDIR\x00SQLITE_CANTOPEN_ISDIR\x00SQLITE_CANTOPEN_FULLPATH\x00SQLITE_CANTOPEN_CONVPATH\x00SQLITE_CANTOPEN_SYMLINK\x00SQLITE_PROTOCOL\x00SQLITE_EMPTY\x00SQLITE_SCHEMA\x00SQLITE_TOOBIG\x00SQLITE_CONSTRAINT\x00SQLITE_CONSTRAINT_UNIQUE\x00SQLITE_CONSTRAINT_TRIGGER\x00SQLITE_CONSTRAINT_FOREIGNKEY\x00SQLITE_CONSTRAINT_CHECK\x00SQLITE_CONSTRAINT_PRIMARYKEY\x00SQLITE_CONSTRAINT_NOTNULL\x00SQLITE_CONSTRAINT_COMMITHOOK\x00SQLITE_CONSTRAINT_VTAB\x00SQLITE_CONSTRAINT_FUNCTION\x00SQLITE_CONSTRAINT_ROWID\x00SQLITE_MISMATCH\x00SQLITE_MISUSE\x00SQLITE_NOLFS\x00SQLITE_AUTH\x00SQLITE_FORMAT\x00SQLITE_RANGE\x00SQLITE_NOTADB\x00SQLITE_ROW\x00SQLITE_NOTICE\x00SQLITE_NOTICE_RECOVER_WAL\x00SQLITE_NOTICE_RECOVER_ROLLBACK\x00SQLITE_WARNING\x00SQLITE_WARNING_AUTOINDEX\x00SQLITE_DONE\x00SQLITE_UNKNOWN(%d)\x00unknown error\x00abort due to ROLLBACK\x00another row available\x00no more rows available\x00not an error\x00SQL logic error\x00access permission denied\x00query aborted\x00database is locked\x00database table is locked\x00attempt to write a readonly database\x00interrupted\x00disk I/O error\x00database disk image is malformed\x00unknown operation\x00database or disk is full\x00unable to open database file\x00locking protocol\x00constraint failed\x00datatype mismatch\x00bad parameter or other API misuse\x00authorization denied\x00column index out of range\x00file is not a database\x00notification message\x00warning message\x00unable to delete/modify user-function due to active statements\x00unable to use function %s in the requested context\x00unknown database: %s\x00unable to delete/modify collation sequence due to active statements\x00file:\x00localhost\x00invalid uri authority: %.*s\x00vfs\x00cache\x00mode\x00no such %s mode: %s\x00%s mode not allowed: %s\x00no such vfs: %s\x00private\x00ro\x00rw\x00rwc\x00RTRIM\x00\x00\x00\x00%s at line %d of [%.10s]\x00database corruption\x00misuse\x00cannot open file\x00no such table column: %s.%s\x00SQLITE_\x00database is deadlocked\x00array\x00object\x000123456789abcdef\x00JSON cannot hold BLOB values\x00malformed JSON\x00[0]\x00JSON path error near '%q'\x00json_%s() needs an odd number of arguments\x00json_object() requires an even number of arguments\x00json_object() labels must be TEXT\x00set\x00insert\x00[]\x00{}\x00CREATE TABLE x(key,value,type,atom,id,parent,fullkey,path,json HIDDEN,root HIDDEN)\x00[%d]\x00.%.*s\x00$\x00json\x00json_array\x00json_array_length\x00json_extract\x00json_insert\x00json_object\x00json_patch\x00json_quote\x00json_remove\x00json_replace\x00json_set\x00json_type\x00json_valid\x00json_group_array\x00json_group_object\x00json_each\x00json_tree\x00%s_node\x00data\x00DROP TABLE '%q'.'%q_node';DROP TABLE '%q'.'%q_rowid';DROP TABLE '%q'.'%q_parent';\x00RtreeMatchArg\x00SELECT * FROM %Q.%Q\x00UNIQUE constraint failed: %s.%s\x00rtree constraint failed: %s.(%s<=%s)\x00ALTER TABLE %Q.'%q_node' RENAME TO \"%w_node\";ALTER TABLE %Q.'%q_parent' RENAME TO \"%w_parent\";ALTER TABLE %Q.'%q_rowid' RENAME TO \"%w_rowid\";\x00SELECT stat FROM %Q.sqlite_stat1 WHERE tbl = '%q_rowid'\x00node\x00CREATE TABLE \"%w\".\"%w_rowid\"(rowid INTEGER PRIMARY KEY,nodeno\x00,a%d\x00);CREATE TABLE \"%w\".\"%w_node\"(nodeno INTEGER PRIMARY KEY,data);\x00CREATE TABLE \"%w\".\"%w_parent\"(nodeno INTEGER PRIMARY KEY,parentnode);\x00INSERT INTO \"%w\".\"%w_node\"VALUES(1,zeroblob(%d))\x00INSERT INTO\"%w\".\"%w_rowid\"(rowid,nodeno)VALUES(?1,?2)ON CONFLICT(rowid)DO UPDATE SET nodeno=excluded.nodeno\x00SELECT * FROM \"%w\".\"%w_rowid\" WHERE rowid=?1\x00UPDATE \"%w\".\"%w_rowid\"SET \x00a%d=coalesce(?%d,a%d)\x00a%d=?%d\x00 WHERE rowid=?1\x00INSERT OR REPLACE INTO '%q'.'%q_node' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_node' WHERE nodeno = ?1\x00SELECT nodeno FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_rowid' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00SELECT parentnode FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_parent' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00PRAGMA %Q.page_size\x00SELECT length(data) FROM '%q'.'%q_node' WHERE nodeno = 1\x00undersize RTree blobs in \"%q_node\"\x00Wrong number of columns for an rtree table\x00Too few columns for an rtree table\x00Too many columns for an rtree table\x00Auxiliary rtree columns must be last\x00CREATE TABLE x(%.*s INT\x00,%.*s\x00);\x00,%.*s REAL\x00,%.*s INT\x00{%lld\x00 %g\x00}\x00Invalid argument to rtreedepth()\x00%z%s%z\x00SELECT data FROM %Q.'%q_node' WHERE nodeno=?\x00Node %lld missing from database\x00SELECT parentnode FROM %Q.'%q_parent' WHERE nodeno=?1\x00SELECT nodeno FROM %Q.'%q_rowid' WHERE rowid=?1\x00Mapping (%lld -> %lld) missing from %s table\x00%_rowid\x00%_parent\x00Found (%lld -> %lld) in %s table, expected (%lld -> %lld)\x00Dimension %d of cell %d on node %lld is corrupt\x00Dimension %d of cell %d on node %lld is corrupt relative to parent\x00Node %lld is too small (%d bytes)\x00Rtree depth out of range (%d)\x00Node %lld is too small for cell count of %d (%d bytes)\x00SELECT count(*) FROM %Q.'%q%s'\x00Wrong number of entries in %%%s table - expected %lld, actual %lld\x00SELECT * FROM %Q.'%q_rowid'\x00Schema corrupt or not an rtree\x00_rowid\x00_parent\x00END\x00wrong number of arguments to function rtreecheck()\x00[\x00[%!g,%!g],\x00[%!g,%!g]]\x00\x00CREATE TABLE x(_shape\x00,%s\x00rtree\x00fullscan\x00_shape does not contain a valid polygon\x00geopoly_overlap\x00geopoly_within\x00geopoly\x00geopoly_area\x00geopoly_blob\x00geopoly_json\x00geopoly_svg\x00geopoly_contains_point\x00geopoly_debug\x00geopoly_bbox\x00geopoly_xform\x00geopoly_regular\x00geopoly_ccw\x00geopoly_group_bbox\x00rtreenode\x00rtreedepth\x00rtreecheck\x00rtree_i32\x00corrupt fossil delta\x00DROP TRIGGER IF EXISTS temp.rbu_insert_tr;DROP TRIGGER IF EXISTS temp.rbu_update1_tr;DROP TRIGGER IF EXISTS temp.rbu_update2_tr;DROP TRIGGER IF EXISTS temp.rbu_delete_tr;\x00SELECT rbu_target_name(name, type='view') AS target, name FROM sqlite_schema WHERE type IN ('table', 'view') AND target IS NOT NULL %s ORDER BY name\x00AND rootpage!=0 AND rootpage IS NOT NULL\x00SELECT name, rootpage, sql IS NULL OR substr(8, 6)=='UNIQUE' FROM main.sqlite_schema WHERE type='index' AND tbl_name = ?\x00SELECT (sql LIKE 'create virtual%%'), rootpage FROM sqlite_schema WHERE name=%Q\x00PRAGMA index_list=%Q\x00SELECT rootpage FROM sqlite_schema WHERE name = %Q\x00PRAGMA table_info=%Q\x00PRAGMA main.index_list = %Q\x00PRAGMA main.index_xinfo = %Q\x00SELECT * FROM '%q'\x00rbu_\x00rbu_rowid\x00table %q %s rbu_rowid column\x00may not have\x00requires\x00PRAGMA table_info(%Q)\x00column missing from %q: %s\x00%z%s\"%w\"\x00%z%s%s\"%w\"%s\x00SELECT max(_rowid_) FROM \"%s%w\"\x00 WHERE _rowid_ > %lld \x00 DESC\x00quote(\x00||','||\x00SELECT %s FROM \"%s%w\" ORDER BY %s LIMIT 1\x00 WHERE (%s) > (%s) \x00_rowid_\x00%z%s \"%w\" COLLATE %Q\x00%z%s \"rbu_imp_%d%w\" COLLATE %Q DESC\x00%z%s quote(\"rbu_imp_%d%w\")\x00SELECT %s FROM \"rbu_imp_%w\" ORDER BY %s LIMIT 1\x00%z%s%s\x00(%s) > (%s)\x00%z%s(%.*s) COLLATE %Q\x00%z%s\"%w\" COLLATE %Q\x00%z%s\"rbu_imp_%d%w\"%s\x00%z%s\"rbu_imp_%d%w\" %s COLLATE %Q\x00%z%s\"rbu_imp_%d%w\" IS ?\x00%z%s%s.\"%w\"\x00%z%sNULL\x00%z, %s._rowid_\x00_rowid_ = ?%d\x00%z%sc%d=?%d\x00_rowid_ = (SELECT id FROM rbu_imposter2 WHERE %z)\x00%z%s\"%w\"=?%d\x00invalid rbu_control value\x00%z%s\"%w\"=rbu_delta(\"%w\", ?%d)\x00%z%s\"%w\"=rbu_fossil_delta(\"%w\", ?%d)\x00PRIMARY KEY(\x00%z%s\"%w\"%s\x00%z)\x00SELECT name FROM sqlite_schema WHERE rootpage = ?\x00%z%sc%d %s COLLATE %Q\x00%z%sc%d%s\x00%z, id INTEGER\x00CREATE TABLE rbu_imposter2(%z, PRIMARY KEY(%z)) WITHOUT ROWID\x00PRIMARY KEY \x00%z%s\"%w\" %s %sCOLLATE %Q%s\x00 NOT NULL\x00%z, %z\x00CREATE TABLE \"rbu_imp_%w\"(%z)%s\x00 WITHOUT ROWID\x00INSERT INTO %s.'rbu_tmp_%q'(rbu_control,%s%s) VALUES(%z)\x00SELECT trim(sql) FROM sqlite_schema WHERE type='index' AND name=?\x00 LIMIT -1 OFFSET %d\x00CREATE TABLE \"rbu_imp_%w\"( %s, PRIMARY KEY( %s ) ) WITHOUT ROWID\x00INSERT INTO \"rbu_imp_%w\" VALUES(%s)\x00DELETE FROM \"rbu_imp_%w\" WHERE %s\x00SELECT %s, 0 AS rbu_control FROM '%q' %s %s %s ORDER BY %s%s\x00AND\x00WHERE\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s ORDER BY %s%s\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s UNION ALL SELECT %s, rbu_control FROM '%q' %s %s typeof(rbu_control)='integer' AND rbu_control!=1 ORDER BY %s%s\x00rbu_imp_\x00INSERT INTO \"%s%w\"(%s%s) VALUES(%s)\x00, _rowid_\x00DELETE FROM \"%s%w\" WHERE %s\x00, rbu_rowid\x00CREATE TABLE IF NOT EXISTS %s.'rbu_tmp_%q' AS SELECT *%s FROM '%q' WHERE 0;\x00, 0 AS rbu_rowid\x00CREATE TEMP TRIGGER rbu_delete_tr BEFORE DELETE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update1_tr BEFORE UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update2_tr AFTER UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(4, %s);END;\x00CREATE TEMP TRIGGER rbu_insert_tr AFTER INSERT ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(0, %s);END;\x00,_rowid_ \x00,rbu_rowid\x00SELECT %s,%s rbu_control%s FROM '%q'%s %s %s %s\x000 AS \x00UPDATE \"%s%w\" SET %s WHERE %s\x00SELECT k, v FROM %s.rbu_state\x00file://%s-vacuum?modeof=%s\x00ATTACH %Q AS stat\x00CREATE TABLE IF NOT EXISTS %s.rbu_state(k INTEGER PRIMARY KEY, v)\x00cannot vacuum wal mode database\x00file:%s-vactmp?rbu_memory=1%s%s\x00&\x00rbu_tmp_insert\x00rbu_fossil_delta\x00rbu_target_name\x00SELECT * FROM sqlite_schema\x00rbu vfs not found\x00PRAGMA main.wal_checkpoint=restart\x00%s-oal\x00%s-wal\x00PRAGMA schema_version\x00PRAGMA schema_version = %d\x00INSERT OR REPLACE INTO %s.rbu_state(k, v) VALUES (%d, %d), (%d, %Q), (%d, %Q), (%d, %d), (%d, %d), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %Q) \x00PRAGMA main.%s\x00PRAGMA main.%s = %d\x00PRAGMA writable_schema=1\x00SELECT sql FROM sqlite_schema WHERE sql!='' AND rootpage!=0 AND name!='sqlite_sequence' ORDER BY type DESC\x00SELECT * FROM sqlite_schema WHERE rootpage=0 OR rootpage IS NULL\x00INSERT INTO sqlite_schema VALUES(?,?,?,?,?)\x00PRAGMA writable_schema=0\x00DELETE FROM %s.'rbu_tmp_%q'\x00rbu_state mismatch error\x00rbu_vfs_%d\x00SELECT count(*) FROM sqlite_schema WHERE type='index' AND tbl_name = %Q\x00rbu_index_cnt\x00SELECT 1 FROM sqlite_schema WHERE tbl_name = 'rbu_count'\x00SELECT sum(cnt * (1 + rbu_index_cnt(rbu_target_name(tbl))))FROM rbu_count\x00cannot update wal mode database\x00database modified during rbu %s\x00vacuum\x00update\x00BEGIN IMMEDIATE\x00PRAGMA journal_mode=off\x00-vactmp\x00DELETE FROM stat.rbu_state\x00rbu/zipvfs setup error\x00rbu(%s)/%z\x00rbu_memory\x00CREATE TABLE x( name TEXT, path TEXT, pageno INTEGER, pagetype TEXT, ncell INTEGER, payload INTEGER, unused INTEGER, mx_payload INTEGER, pgoffset INTEGER, pgsize INTEGER, schema TEXT HIDDEN, aggregate BOOLEAN HIDDEN)\x00/\x00overflow\x00%s%.3x+%.6x\x00%s%.3x/\x00internal\x00leaf\x00corrupted\x00SELECT * FROM (SELECT 'sqlite_schema' AS name,1 AS rootpage,'table' AS type UNION ALL SELECT name,rootpage,type FROM \"%w\".sqlite_schema WHERE rootpage!=0)\x00WHERE name=%Q\x00 ORDER BY name\x00dbstat\x00CREATE TABLE x(pgno INTEGER PRIMARY KEY, data BLOB, schema HIDDEN)\x00read-only\x00cannot delete\x00cannot insert\x00no such schema\x00bad page number\x00bad page value\x00sqlite_dbpage\x00SELECT 0, 'tbl', '', 0, '', 1 UNION ALL SELECT 1, 'idx', '', 0, '', 2 UNION ALL SELECT 2, 'stat', '', 0, '', 0\x00PRAGMA '%q'.table_info('%q')\x00%z%s\"%w\".\"%w\".\"%w\"=\"%w\".\"%w\".\"%w\"\x00%z%s\"%w\".\"%w\".\"%w\" IS NOT \"%w\".\"%w\".\"%w\"\x00 OR \x00SELECT * FROM \"%w\".\"%w\" WHERE NOT EXISTS ( SELECT 1 FROM \"%w\".\"%w\" WHERE %s)\x00SELECT * FROM \"%w\".\"%w\", \"%w\".\"%w\" WHERE %s AND (%z)\x00table schemas do not match\x00SELECT tbl, ?2, stat FROM %Q.sqlite_stat1 WHERE tbl IS ?1 AND idx IS (CASE WHEN ?2=X'' THEN NULL ELSE ?2 END)\x00SELECT * FROM \x00 WHERE \x00 IS ?\x00SAVEPOINT changeset\x00RELEASE changeset\x00UPDATE main.\x00 SET \x00 = ?\x00idx IS CASE WHEN length(?4)=0 AND typeof(?4)='blob' THEN NULL ELSE ?4 END \x00DELETE FROM main.\x00 AND (?\x00AND \x00INSERT INTO main.\x00) VALUES(?\x00, ?\x00INSERT INTO main.sqlite_stat1 VALUES(?1, CASE WHEN length(?2)=0 AND typeof(?2)='blob' THEN NULL ELSE ?2 END, ?3)\x00DELETE FROM main.sqlite_stat1 WHERE tbl=?1 AND idx IS CASE WHEN length(?2)=0 AND typeof(?2)='blob' THEN NULL ELSE ?2 END AND (?4 OR stat IS ?3)\x00SAVEPOINT replace_op\x00RELEASE replace_op\x00SAVEPOINT changeset_apply\x00PRAGMA defer_foreign_keys = 1\x00sqlite3changeset_apply(): no such table: %s\x00sqlite3changeset_apply(): table %s has %d columns, expected %d or more\x00sqlite3changeset_apply(): primary key mismatch for table %s\x00PRAGMA defer_foreign_keys = 0\x00RELEASE changeset_apply\x00ROLLBACK TO changeset_apply\x00fts5: parser stack overflow\x00fts5: syntax error near \"%.*s\"\x00%z%.*s\x00wrong number of arguments to function highlight()\x00wrong number of arguments to function snippet()\x00snippet\x00highlight\x00bm25\x00prefix\x00malformed prefix=... directive\x00too many prefix indexes (max %d)\x00prefix length out of range (max 999)\x00tokenize\x00multiple tokenize=... directives\x00parse error in tokenize directive\x00content\x00multiple content=... directives\x00%Q.%Q\x00content_rowid\x00multiple content_rowid=... directives\x00columnsize\x00malformed columnsize=... directive\x00columns\x00malformed detail=... directive\x00unrecognized option: \"%.*s\"\x00reserved fts5 column name: %s\x00unindexed\x00unrecognized column option: %s\x00T.%Q\x00, T.%Q\x00, T.c%d\x00reserved fts5 table name: %s\x00parse error in \"%s\"\x00docsize\x00%Q.'%q_%s'\x00CREATE TABLE x(\x00%z%s%Q\x00%z, %Q HIDDEN, %s HIDDEN)\x00pgsz\x00hashsize\x00automerge\x00usermerge\x00crisismerge\x00SELECT k, v FROM %Q.'%q_config'\x00version\x00invalid fts5 file format (found %d, expected %d) - run 'rebuild'\x00unterminated string\x00fts5: syntax error near \"%.1s\"\x00OR\x00NOT\x00NEAR\x00expected integer, got \"%.*s\"\x00fts5: column queries are not supported (detail=none)\x00fts5: %s queries are not supported (detail!=full)\x00phrase\x00%s \x00-col %d \x00-col {%d\x00 %d\x00} \x00-near %d \x00--\x00 {\x00 [%z]\x00\"\"\x00{\x00%s : \x00NEAR(\x00 + \x00, %d)\x00 NOT \x00%s%s%z%s\x00nearset\x00wrong number of arguments to function %s\x00fts5_expr_tcl\x00fts5_expr\x00wrong number of arguments to function fts5_isalnum\x00L*\x00N*\x00Co\x00wrong number of arguments to function fts5_fold\x00fts5_isalnum\x00fts5_fold\x00block\x00REPLACE INTO '%q'.'%q_data'(id, block) VALUES(?,?)\x00DELETE FROM '%q'.'%q_data' WHERE id>=? AND id<=?\x00DELETE FROM '%q'.'%q_idx' WHERE segid=?\x00PRAGMA %Q.data_version\x00SELECT pgno FROM '%q'.'%q_idx' WHERE segid=? AND term<=? ORDER BY term DESC LIMIT 1\x00INSERT INTO '%q'.'%q_idx'(segid,term,pgno) VALUES(?,?,?)\x00%s_data\x00id INTEGER PRIMARY KEY, block BLOB\x00segid, term, pgno, PRIMARY KEY(segid, term)\x00SELECT segid, term, (pgno>>1), (pgno&1) FROM %Q.'%q_idx' WHERE segid=%d ORDER BY 1, 2\x00\x00\x00\x00\x00\x00{averages} \x00{structure}\x00{%ssegid=%d h=%d pgno=%d}\x00dlidx \x00 {lvl=%d nMerge=%d nSeg=%d\x00 {id=%d leaves=%d..%d}\x00%s%d\x00 id=%lld\x00 nPos=%d%s\x00+\x00 %lld%s\x00 %d(%lld)\x00 term=%.*s\x00corrupt\x00should be: fts5_rowid(subject, ....)\x00segment\x00should be: fts5_rowid('segment', segid, pgno))\x00first arg to fts5_rowid() must be 'segment'\x00fts5_decode\x00fts5_decode_none\x00fts5_rowid\x00recursively defined fts5 content table\x00SELECT rowid, rank FROM %Q.%Q ORDER BY %s(\"%w\"%s%s) %s\x00DESC\x00ASC\x00reads\x00unknown special query: %.*s\x00SELECT %s\x00no such function: %s\x00parse error in rank function: %s\x00%s: table does not support scanning\x00delete-all\x00'delete-all' may only be used with a contentless or external content fts5 table\x00rebuild\x00'rebuild' may not be used with a contentless fts5 table\x00merge\x00integrity-check\x00cannot %s contentless fts5 table: %s\x00DELETE from\x00no such cursor: %lld\x00no such tokenizer: %s\x00error in tokenizer constructor\x00fts5_api_ptr\x00fts5: 2021-06-18 18:36:39 5c9a6c06871cb9fe42814af9c039eb6da5427a6ec28f187af7ebfb62eafa66e5\x00config\x00fts5\x00fts5_source_id\x00SELECT %s FROM %s T WHERE T.%Q >= ? AND T.%Q <= ? ORDER BY T.%Q ASC\x00SELECT %s FROM %s T WHERE T.%Q <= ? AND T.%Q >= ? ORDER BY T.%Q DESC\x00SELECT %s FROM %s T WHERE T.%Q=?\x00INSERT INTO %Q.'%q_content' VALUES(%s)\x00REPLACE INTO %Q.'%q_content' VALUES(%s)\x00DELETE FROM %Q.'%q_content' WHERE id=?\x00REPLACE INTO %Q.'%q_docsize' VALUES(?,?)\x00DELETE FROM %Q.'%q_docsize' WHERE id=?\x00SELECT sz FROM %Q.'%q_docsize' WHERE id=?\x00REPLACE INTO %Q.'%q_config' VALUES(?,?)\x00SELECT %s FROM %s AS T\x00DROP TABLE IF EXISTS %Q.'%q_data';DROP TABLE IF EXISTS %Q.'%q_idx';DROP TABLE IF EXISTS %Q.'%q_config';\x00DROP TABLE IF EXISTS %Q.'%q_docsize';\x00DROP TABLE IF EXISTS %Q.'%q_content';\x00ALTER TABLE %Q.'%q_%s' RENAME TO '%q_%s';\x00CREATE TABLE %Q.'%q_%q'(%s)%s\x00fts5: error creating shadow table %q_%s: %s\x00id INTEGER PRIMARY KEY\x00, c%d\x00id INTEGER PRIMARY KEY, sz BLOB\x00k PRIMARY KEY, v\x00DELETE FROM %Q.'%q_data';DELETE FROM %Q.'%q_idx';\x00DELETE FROM %Q.'%q_docsize';\x00SELECT count(*) FROM %Q.'%q_%s'\x00tokenchars\x00separators\x00L* N* Co\x00categories\x00remove_diacritics\x00unicode61\x00al\x00ance\x00ence\x00er\x00ic\x00able\x00ible\x00ant\x00ement\x00ment\x00ent\x00ion\x00ou\x00ism\x00ate\x00iti\x00ous\x00ive\x00ize\x00at\x00bl\x00ble\x00iz\x00ational\x00tional\x00tion\x00enci\x00anci\x00izer\x00logi\x00bli\x00alli\x00entli\x00eli\x00e\x00ousli\x00ization\x00ation\x00ator\x00alism\x00iveness\x00fulness\x00ful\x00ousness\x00aliti\x00iviti\x00biliti\x00ical\x00ness\x00icate\x00iciti\x00ative\x00alize\x00eed\x00ee\x00ed\x00ing\x00case_sensitive\x00ascii\x00porter\x00trigram\x00col\x00row\x00instance\x00fts5vocab: unknown table type: %Q\x00CREATE TABlE vocab(term, col, doc, cnt)\x00CREATE TABlE vocab(term, doc, cnt)\x00CREATE TABlE vocab(term, doc, col, offset)\x00wrong number of vtable arguments\x00recursive definition for %s.%s\x00SELECT t.%Q FROM %Q.%Q AS t WHERE t.%Q MATCH '*id'\x00no such fts5 table: %s.%s\x00fts5vocab\x00CREATE TABLE x(sql,ncol,ro,busy,nscan,nsort,naidx,nstep,reprep,run,mem)\x00sqlite_stmt\x002021-06-18 18:36:39 5c9a6c06871cb9fe42814af9c039eb6da5427a6ec28f187af7ebfb62eafa66e5\x00" var ts = (*reflect.StringHeader)(unsafe.Pointer(&ts1)).Data diff --git a/libtest/sqlite_linux_amd64.go b/libtest/sqlite_linux_amd64.go index 6c5bce5..28481e8 100644 --- a/libtest/sqlite_linux_amd64.go +++ b/libtest/sqlite_linux_amd64.go @@ -107940,7 +107940,6 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt goto __4 goto __6 __6: - } } @@ -163839,7 +163838,6 @@ __15: goto __14 goto __16 __16: - } // This is a helper function for rbuObjIterCacheTableInfo(). It populates diff --git a/speedtest1/main_linux_386.go b/speedtest1/main_linux_386.go index 77ebf44..7bdaaf2 100644 --- a/speedtest1/main_linux_386.go +++ b/speedtest1/main_linux_386.go @@ -562,6 +562,8 @@ const ( X_ASSERT_H = 1 X_ATFILE_SOURCE = 1 X_BITS_BYTESWAP_H = 1 + X_BITS_ENDIANNESS_H = 1 + X_BITS_ENDIAN_H = 1 X_BITS_FLOATN_COMMON_H = 0 X_BITS_FLOATN_H = 0 X_BITS_POSIX_OPT_H = 1 @@ -569,6 +571,7 @@ const ( X_BITS_PTHREADTYPES_COMMON_H = 1 X_BITS_STDINT_INTN_H = 1 X_BITS_STDIO_LIM_H = 1 + X_BITS_TIME64_H = 1 X_BITS_TYPESIZES_H = 1 X_BITS_TYPES_H = 1 X_BITS_TYPES_LOCALE_T_H = 1 @@ -586,6 +589,7 @@ const ( X_GCC_WCHAR_T = 0 X_GETOPT_CORE_H = 1 X_GETOPT_POSIX_H = 1 + X_ILP32 = 1 X_IOFBF = 0 X_IOLBF = 1 X_IONBF = 2 @@ -663,6 +667,7 @@ const ( X_POSIX_V7_ILP32_OFFBIG = 1 X_POSIX_VDISABLE = 0 X_POSIX_VERSION = 200809 + X_RWLOCK_INTERNAL_H = 0 X_SIZET_ = 0 X_SIZE_T = 0 X_SIZE_T_ = 0 @@ -681,6 +686,7 @@ const ( X_SYS_SELECT_H = 1 X_SYS_SIZE_T_H = 0 X_SYS_TYPES_H = 1 + X_THREAD_MUTEX_INTERNAL_H = 1 X_THREAD_SHARED_TYPES_H = 1 X_T_SIZE = 0 X_T_SIZE_ = 0 @@ -719,7 +725,7 @@ const ( // the `_SC_*' symbols for the NAME argument to `sysconf'; // and the `_CS_*' symbols for the NAME argument to `confstr'. // `sysconf', `pathconf', and `confstr' NAME values. Generic version. -// Copyright (C) 1993-2018 Free Software Foundation, Inc. +// Copyright (C) 1993-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -734,7 +740,7 @@ const ( // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Values for the NAME argument to `pathconf' and `fpathconf'. const ( /* confname.h:24:1: */ @@ -1083,16 +1089,11 @@ const ( /* confname.h:71:1: */ _SC_THREAD_ROBUST_PRIO_PROTECT = 248 ) -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // XPG requires a few symbols from being defined. // Definitions of flag bits for `waitpid' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -1107,7 +1108,7 @@ const ( /* confname.h:71:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Bits in the third argument to `waitpid'. @@ -1124,7 +1125,7 @@ const ( /* waitflags.h:52:1: */ P_PGID = 2 ) -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -1139,11 +1140,11 @@ const ( /* waitflags.h:52:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // ISO C99 Standard 7.4: Character handling -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -1158,10 +1159,10 @@ const ( /* waitflags.h:52:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -1176,7 +1177,7 @@ const ( /* waitflags.h:52:1: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -1188,7 +1189,8 @@ const ( /* waitflags.h:52:1: */ // endian). We define the bit value interpretations here dependent on the // machine's byte order. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Endian macros for string.h functions +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3321,7 +3323,7 @@ type _G_fpos_t = struct { } /* __fpos_t.h:10:9 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3336,7 +3338,7 @@ type _G_fpos_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -3397,16 +3399,11 @@ type ssize_t = int32 /* stdio.h:77:19 */ // The type of the second argument to `fgetpos' and `fsetpos'. type fpos_t = _G_fpos64_t /* stdio.h:86:20 */ -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // XPG requires a few symbols from being defined. // Definitions of flag bits for `waitpid' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3421,7 +3418,7 @@ type fpos_t = _G_fpos64_t /* stdio.h:86:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Bits in the third argument to `waitpid'. @@ -3434,7 +3431,7 @@ type fpos_t = _G_fpos64_t /* stdio.h:86:20 */ type idtype_t = uint32 /* waitflags.h:57:3 */ // Definitions of status bits for `wait' et al. -// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3449,7 +3446,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Everything extant so far uses these same bits. @@ -3476,7 +3473,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // _FloatN API tests for enablement. // Macros to control TS 18661-3 glibc features on x86. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3491,9 +3488,9 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3508,7 +3505,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Defined to 1 if the current compiler invocation provides a // floating-point type with the IEEE 754 binary128 format, and this @@ -3552,7 +3549,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // Macros to control TS 18661-3 glibc features where the same // definitions are appropriate for all platforms. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3567,9 +3564,9 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3584,10 +3581,10 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Properties of long double type. ldbl-96 version. -// Copyright (C) 2016-2018 Free Software Foundation, Inc. +// Copyright (C) 2016-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3602,7 +3599,7 @@ type idtype_t = uint32 /* waitflags.h:57:3 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // long double is distinct from double, so there is nothing to // define here. @@ -3671,7 +3668,7 @@ type lldiv_t = struct { rem int64 } /* stdlib.h:80:5 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3686,11 +3683,11 @@ type lldiv_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 2.6 Primitive System Data Types -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3705,10 +3702,10 @@ type lldiv_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3723,7 +3720,7 @@ type lldiv_t = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -3758,7 +3755,7 @@ type caddr_t = uintptr /* types.h:115:19 */ type key_t = int32 /* types.h:121:17 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3773,7 +3770,7 @@ type key_t = int32 /* types.h:121:17 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -3781,7 +3778,7 @@ type key_t = int32 /* types.h:121:17 */ type clock_t = int32 /* clock_t.h:7:19 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3796,7 +3793,7 @@ type clock_t = int32 /* clock_t.h:7:19 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -3804,7 +3801,7 @@ type clock_t = int32 /* clock_t.h:7:19 */ type clockid_t = int32 /* clockid_t.h:7:21 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3819,7 +3816,7 @@ type clockid_t = int32 /* clockid_t.h:7:21 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -3827,7 +3824,7 @@ type clockid_t = int32 /* clockid_t.h:7:21 */ type time_t = int32 /* time_t.h:7:18 */ // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3842,14 +3839,14 @@ type time_t = int32 /* time_t.h:7:18 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. // Timer ID returned by `timer_create'. type timer_t = uintptr /* timer_t.h:7:19 */ -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -3881,15 +3878,6 @@ type timer_t = uintptr /* timer_t.h:7:19 */ // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -3924,11 +3912,6 @@ type timer_t = uintptr /* timer_t.h:7:19 */ // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // Old compatibility names for C types. @@ -3939,7 +3922,7 @@ type uint = uint32 /* types.h:150:22 */ // These size-specific names are used by some of the inet code. // Define intN_t types. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3954,10 +3937,10 @@ type uint = uint32 /* types.h:150:22 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -3972,7 +3955,7 @@ type uint = uint32 /* types.h:150:22 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -3981,14 +3964,13 @@ type int16_t = int16 /* stdint-intn.h:25:19 */ type int32_t = int32 /* stdint-intn.h:26:19 */ type int64_t = int64 /* stdint-intn.h:27:19 */ -// For GCC 2.7 and later, we can use specific type-size attributes. +// These were defined by ISO C without the first `_'. +type u_int8_t = uint8 /* types.h:158:19 */ +type u_int16_t = uint16 /* types.h:159:20 */ +type u_int32_t = uint32 /* types.h:160:20 */ +type u_int64_t = uint64 /* types.h:161:20 */ -type u_int8_t = uint32 /* types.h:177:1 */ -type u_int16_t = uint32 /* types.h:178:1 */ -type u_int32_t = uint32 /* types.h:179:1 */ -type u_int64_t = uint32 /* types.h:180:1 */ - -type register_t = int32 /* types.h:182:13 */ +type register_t = int32 /* types.h:164:13 */ // A set of signals to be blocked, unblocked, or waited for. type sigset_t = struct{ __val [32]uint32 } /* sigset_t.h:7:20 */ @@ -3996,7 +3978,7 @@ type sigset_t = struct{ __val [32]uint32 } /* sigset_t.h:7:20 */ // Get definition of timer specification structures. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4011,7 +3993,7 @@ type sigset_t = struct{ __val [32]uint32 } /* sigset_t.h:7:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. @@ -4025,7 +4007,27 @@ type timeval = struct { // NB: Include guard matches what uses. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// Never include this file directly; use instead. + +// Endian macros for string.h functions +// Copyright (C) 1992-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4042,14 +4044,12 @@ type timeval = struct { // License along with the GNU C Library; if not, see // . -// Never include this file directly; use instead. - // POSIX.1b structure for a time value. This is like a `struct timeval' but // has nanoseconds instead of microseconds. type timespec = struct { tv_sec int32 tv_nsec int32 -} /* struct_timespec.h:9:1 */ +} /* struct_timespec.h:10:1 */ type suseconds_t = int32 /* select.h:43:23 */ @@ -4066,16 +4066,16 @@ type fd_mask = int32 /* select.h:77:19 */ // Define some inlines helping to catch common problems. -type blksize_t = int32 /* types.h:202:21 */ +type blksize_t = int32 /* types.h:185:21 */ // Types from the Large File Support interface. -type blkcnt_t = int64 /* types.h:222:22 */ // Type to count number of disk blocks. -type fsblkcnt_t = uint64 /* types.h:226:24 */ // Type to count file system blocks. -type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inodes. +type blkcnt_t = int64 /* types.h:205:22 */ // Type to count number of disk blocks. +type fsblkcnt_t = uint64 /* types.h:209:24 */ // Type to count file system blocks. +type fsfilcnt_t = uint64 /* types.h:213:24 */ // Type to count file system inodes. // Now add the thread types. // Declaration of common pthread types for all architectures. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4090,11 +4090,11 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // For internal mutex and condition variable definitions. // Common threading primitives definitions for both POSIX and C11. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4109,7 +4109,7 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Arch-specific definitions. Each architecture must define the following // macros to define the expected sizes of pthread data types: @@ -4124,36 +4124,6 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // __SIZEOF_PTHREAD_BARRIER_T - size of pthread_barrier_t. // __SIZEOF_PTHREAD_BARRIERATTR_T - size of pthread_barrierattr_t. // -// Also, the following macros must be define for internal pthread_mutex_t -// struct definitions (struct __pthread_mutex_s): -// -// __PTHREAD_COMPAT_PADDING_MID - any additional members after 'kind' -// and before '__spin' (for 64 bits) or -// '__nusers' (for 32 bits). -// __PTHREAD_COMPAT_PADDING_END - any additional members at the end of -// the internal structure. -// __PTHREAD_MUTEX_LOCK_ELISION - 1 if the architecture supports lock -// elision or 0 otherwise. -// __PTHREAD_MUTEX_NUSERS_AFTER_KIND - control where to put __nusers. The -// preferred value for new architectures -// is 0. -// __PTHREAD_MUTEX_USE_UNION - control whether internal __spins and -// __list will be place inside a union for -// linuxthreads compatibility. -// The preferred value for new architectures -// is 0. -// -// For a new port the preferred values for the required defines are: -// -// #define __PTHREAD_COMPAT_PADDING_MID -// #define __PTHREAD_COMPAT_PADDING_END -// #define __PTHREAD_MUTEX_LOCK_ELISION 0 -// #define __PTHREAD_MUTEX_NUSERS_AFTER_KIND 0 -// #define __PTHREAD_MUTEX_USE_UNION 0 -// -// __PTHREAD_MUTEX_LOCK_ELISION can be set to 1 if the hardware plans to -// eventually support lock elision using transactional memory. -// // The additional macro defines any constraint for the lock alignment // inside the thread structures: // @@ -4162,11 +4132,53 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // Same idea but for the once locking primitive: // // __ONCE_ALIGNMENT - for pthread_once_t/once_flag definition. + +// Copyright (C) 2002-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. // -// And finally the internal pthread_rwlock_t (struct __pthread_rwlock_arch_t) -// must be defined. +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. // -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +// Determine the wordsize from the preprocessor defines. + +// Extra attributes for the cleanup functions. + +// Common definition of pthread_mutex_t. + +type __pthread_internal_list = struct { + __prev uintptr + __next uintptr +} /* thread-shared-types.h:49:9 */ + +type __pthread_internal_slist = struct{ __next uintptr } /* thread-shared-types.h:55:9 */ + +// Arch-specific mutex definitions. A generic implementation is provided +// by sysdeps/nptl/bits/struct_mutex.h. If required, an architecture +// can override it by defining: +// +// 1. struct __pthread_mutex_s (used on both pthread_mutex_t and mtx_t +// definition). It should contains at least the internal members +// defined in the generic version. +// +// 2. __LOCK_ALIGNMENT for any extra attribute for internal lock used with +// atomic operations. +// +// 3. The macro __PTHREAD_MUTEX_INITIALIZER used for static initialization. +// It should initialize the mutex internal flag. + +// x86 internal mutex struct definitions. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4183,32 +4195,6 @@ type fsfilcnt_t = uint64 /* types.h:230:24 */ // Type to count file system inode // License along with the GNU C Library; if not, see // . -// Determine the wordsize from the preprocessor defines. - -// Definitions for internal mutex struct. - -type __pthread_rwlock_arch_t = struct { - __readers uint32 - __writers uint32 - __wrphase_futex uint32 - __writers_futex uint32 - __pad3 uint32 - __pad4 uint32 - __flags uint8 - __shared uint8 - __rwelision int8 - __pad2 uint8 - __cur_writer int32 -} /* pthreadtypes-arch.h:65:1 */ - -// Extra attributes for the cleanup functions. - -// Common definition of pthread_mutex_t. - -type __pthread_internal_slist = struct{ __next uintptr } /* thread-shared-types.h:88:9 */ - -// Lock elision support. - type __pthread_mutex_s = struct { __lock int32 __count uint32 @@ -4222,7 +4208,51 @@ type __pthread_mutex_s = struct { __eelision int16 } } -} /* thread-shared-types.h:118:1 */ +} /* struct_mutex.h:22:1 */ + +// Arch-sepecific read-write lock definitions. A generic implementation is +// provided by struct_rwlock.h. If required, an architecture can override it +// by defining: +// +// 1. struct __pthread_rwlock_arch_t (used on pthread_rwlock_t definition). +// It should contain at least the internal members defined in the +// generic version. +// +// 2. The macro __PTHREAD_RWLOCK_INITIALIZER used for static initialization. +// It should initialize the rwlock internal type. + +// x86 internal rwlock struct definitions. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. +// +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + +type __pthread_rwlock_arch_t = struct { + __readers uint32 + __writers uint32 + __wrphase_futex uint32 + __writers_futex uint32 + __pad3 uint32 + __pad4 uint32 + __flags uint8 + __shared uint8 + __rwelision int8 + __pad2 uint8 + __cur_writer int32 +} /* struct_rwlock.h:23:1 */ // Common definition of pthread_cond_t. @@ -4234,7 +4264,7 @@ type __pthread_cond_s = struct { __g1_orig_size uint32 __wrefs uint32 __g_signals [2]uint32 -} /* thread-shared-types.h:171:1 */ +} /* thread-shared-types.h:92:1 */ // Thread identifiers. The structure of the attribute type is not // exposed on purpose. @@ -4322,7 +4352,7 @@ type drand48_data = struct { // POSIX.1-2008 extended locale interface (see locale.h). // Definition of locale_t. -// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// Copyright (C) 2017-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4337,10 +4367,10 @@ type drand48_data = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Definition of struct __locale_struct and __locale_t. -// Copyright (C) 1997-2018 Free Software Foundation, Inc. +// Copyright (C) 1997-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // Contributed by Ulrich Drepper , 1997. // @@ -4356,7 +4386,7 @@ type drand48_data = struct { // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX.1-2008: the locale_t type, representing a locale context // (implementation-namespace version). This type should be treated @@ -4373,7 +4403,7 @@ type __locale_struct = struct { type locale_t = uintptr /* locale_t.h:24:20 */ -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4388,11 +4418,11 @@ type locale_t = uintptr /* locale_t.h:24:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 2.10 Symbolic Constants -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4407,7 +4437,7 @@ type locale_t = uintptr /* locale_t.h:24:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // These may be used to determine what facilities are present at compile time. // Their values can be obtained at run time from `sysconf'. @@ -4533,7 +4563,7 @@ type locale_t = uintptr /* locale_t.h:24:20 */ // // Define POSIX options for Linux. -// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// Copyright (C) 1996-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4548,13 +4578,16 @@ type locale_t = uintptr /* locale_t.h:24:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; see the file COPYING.LIB. If -// not, see . +// not, see . // Job control is supported. // Processes have a saved set-user-ID and a saved set-group-ID. -// Priority scheduling is supported. +// Priority scheduling is not supported with the correct semantics, +// but GNU/Linux applications expect that the corresponding interfaces +// are available, even though the semantics do not meet the POSIX +// requirements. See glibc bug 14829. // Synchronizing file data is supported. @@ -4657,7 +4690,7 @@ type locale_t = uintptr /* locale_t.h:24:20 */ // Typed memory objects are not available. // Get the environment definitions from Unix98. -// Copyright (C) 1999-2018 Free Software Foundation, Inc. +// Copyright (C) 1999-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4672,7 +4705,7 @@ type locale_t = uintptr /* locale_t.h:24:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Determine the wordsize from the preprocessor defines. @@ -4716,7 +4749,7 @@ type locale_t = uintptr /* locale_t.h:24:20 */ // All functions that are not declared anywhere else. // bits/types.h -- definitions of __*_t types underlying *_t types. -// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -4731,11 +4764,11 @@ type locale_t = uintptr /* locale_t.h:24:20 */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // Never include this file directly; use instead. -// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// Copyright (C) 1989-2020 Free Software Foundation, Inc. // // This file is part of GCC. // @@ -4767,15 +4800,6 @@ type locale_t = uintptr /* locale_t.h:24:20 */ // This avoids lossage on SunOS but only if stdtypes.h comes first. // There's no way to win with the other order! Sun lossage. -// On 4.3bsd-net2, make sure ansi.h is included, so we have -// one less case to deal with in the following. -// On FreeBSD 5, machine/ansi.h does not exist anymore... - -// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are -// defined if the corresponding type is *not* defined. -// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. -// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ - // Sequent's header files use _PTRDIFF_T_ in some conflicting way. // Just ignore it. @@ -4810,11 +4834,6 @@ type locale_t = uintptr /* locale_t.h:24:20 */ // Define this type if we are doing the whole job, // or if we want this type in particular. -// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. -// are already defined. -// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. -// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. - // A null pointer constant. // The Single Unix specification says that some more types are @@ -4828,6 +4847,25 @@ type socklen_t = uint32 /* unistd.h:274:21 */ // Define some macros helping to catch buffer overflows. +// System-specific extensions. +// System-specific extensions of , Linux version. +// Copyright (C) 2019-2020 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// . + type u64 = sqlite3_uint64 /* speedtest1.c:67:24 */ // State structure for a Hash hash in progress @@ -5042,12 +5080,16 @@ func speedtest1_timestamp(tls *libc.TLS) sqlite3_int64 { /* speedtest1.c:257:15: clockVfs = sqlite3.Xsqlite3_vfs_find(tls, uintptr(0)) } if ((*sqlite3_vfs)(unsafe.Pointer(clockVfs)).iVersion >= 2) && ((*sqlite3_vfs)(unsafe.Pointer(clockVfs)).xCurrentTimeInt64 != uintptr(0)) { - (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((clockVfs + 72 /* &.xCurrentTimeInt64 */))))(tls, clockVfs, bp /* &t */) + (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(clockVfs)).xCurrentTimeInt64})).f(tls, clockVfs, bp /* &t */) } else { // var r float64 at bp+8, 8 - (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((clockVfs + 64 /* &.xCurrentTime */))))(tls, clockVfs, bp+8 /* &r */) - *(*sqlite3_int64)(unsafe.Pointer(bp /* t */)) = (sqlite3_int64(*(*float64)(unsafe.Pointer(bp + 8 /* r */)) * 86400000.0)) + (*struct { + f func(*libc.TLS, uintptr, uintptr) int32 + })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(clockVfs)).xCurrentTime})).f(tls, clockVfs, bp+8 /* &r */) + *(*sqlite3_int64)(unsafe.Pointer(bp /* t */)) = (libc.Int64FromFloat64(*(*float64)(unsafe.Pointer(bp + 8 /* r */)) * 86400000.0)) } return *(*sqlite3_int64)(unsafe.Pointer(bp /* t */)) } @@ -6515,7 +6557,7 @@ func testset_debug1(tls *libc.TLS) { /* speedtest1.c:2083:6: */ } } -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -6530,11 +6572,11 @@ func testset_debug1(tls *libc.TLS) { /* speedtest1.c:2083:6: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 2.6 Primitive System Data Types -// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// Copyright (C) 1991-2020 Free Software Foundation, Inc. // This file is part of the GNU C Library. // // The GNU C Library is free software; you can redistribute it and/or @@ -6549,7 +6591,7 @@ func testset_debug1(tls *libc.TLS) { /* speedtest1.c:2083:6: */ // // You should have received a copy of the GNU Lesser General Public // License along with the GNU C Library; if not, see -// . +// . // POSIX Standard: 2.10 Symbolic Constants