>>> lnav: Building community/lnav 0.13.1-r0 (using abuild 3.15.0-r3) started Tue, 09 Sep 2025 05:01:03 +0000 >>> lnav: Validating /home/buildozer/aports/community/lnav/APKBUILD... >>> lnav: Analyzing dependencies... >>> lnav: Installing for build: build-base tzdata bash bzip2-dev curl-dev gpm-dev libarchive-dev libbsd-dev libunistring-dev ncurses-dev pcre2-dev readline-dev sqlite-dev zlib-dev ( 1/43) Installing tzdata (2025b-r0) ( 2/43) Installing bash (5.3.3-r1) bash-5.3.3-r1.post-install: Executing script... ( 3/43) Installing libbz2 (1.0.8-r6) ( 4/43) Installing bzip2-dev (1.0.8-r6) ( 5/43) Installing brotli (1.1.0-r2) ( 6/43) Installing brotli-dev (1.1.0-r2) ( 7/43) Installing c-ares-dev (1.34.5-r0) ( 8/43) Installing libidn2-dev (2.3.8-r0) ( 9/43) Installing libpsl-utils (0.21.5-r3) (10/43) Installing libpsl-dev (0.21.5-r3) (11/43) Installing nghttp2-dev (1.66.0-r0) (12/43) Installing openssl-dev (3.5.2-r0) (13/43) Installing zlib-dev (1.3.1-r2) (14/43) Installing zstd (1.5.7-r2) (15/43) Installing zstd-dev (1.5.7-r2) (16/43) Installing curl-dev (8.15.0-r1) (17/43) Installing gpm-libs (1.20.7-r6) (18/43) Installing gpm-dev (1.20.7-r6) (19/43) Installing xz-libs (5.8.1-r0) (20/43) Installing libarchive (3.8.1-r0) (21/43) Installing libarchive-dev (3.8.1-r0) (22/43) Installing bsd-compat-headers (0.7.2-r6) (23/43) Installing linux-headers (6.16.5-r0) (24/43) Installing libmd (1.1.0-r0) (25/43) Installing libmd-dev (1.1.0-r0) (26/43) Installing libbsd (0.12.2-r0) (27/43) Installing libbsd-dev (0.12.2-r0) (28/43) Installing libunistring-dev (1.3-r0) (29/43) Installing libformw (6.5_p20250816-r0) (30/43) Installing libmenuw (6.5_p20250816-r0) (31/43) Installing libpanelw (6.5_p20250816-r0) (32/43) Installing libncurses++ (6.5_p20250816-r0) (33/43) Installing ncurses-dev (6.5_p20250816-r0) (34/43) Installing libedit-dev (20250104.3.1-r2) (35/43) Installing libpcre2-16 (10.46-r0) (36/43) Installing libpcre2-32 (10.46-r0) (37/43) Installing pcre2-dev (10.46-r0) (38/43) Installing libhistory (8.3.1-r0) (39/43) Installing readline-dev (8.3.1-r0) (40/43) Installing sqlite (3.50.4-r1) (41/43) Installing sqlite-libs (3.50.4-r1) (42/43) Installing sqlite-dev (3.50.4-r1) (43/43) Installing .makedepends-lnav (20250909.050104) busybox-1.37.0-r23.trigger: Executing script... OK: 447 MiB in 147 packages >>> lnav: Cleaning up srcdir >>> lnav: Cleaning up pkgdir >>> lnav: Cleaning up tmpdir >>> lnav: Fetching https://distfiles.alpinelinux.org/distfiles/edge/lnav-0.13.1.tar.gz Connecting to distfiles.alpinelinux.org (172.105.82.32:443) wget: server returned error: HTTP/1.1 404 Not Found >>> lnav: Fetching https://github.com/tstack/lnav/releases/download/v0.13.1/lnav-0.13.1.tar.gz Connecting to github.com (140.82.121.3:443) Connecting to release-assets.githubusercontent.com (185.199.110.133:443) saving to '/var/cache/distfiles/edge/lnav-0.13.1.tar.gz.part' lnav-0.13.1.tar.gz.p 100% |********************************| 4400k 0:00:00 ETA '/var/cache/distfiles/edge/lnav-0.13.1.tar.gz.part' saved >>> lnav: Fetching https://distfiles.alpinelinux.org/distfiles/edge/lnav-0.13.1.tar.gz >>> lnav: Checking sha512sums... lnav-0.13.1.tar.gz: OK >>> lnav: Unpacking /var/cache/distfiles/edge/lnav-0.13.1.tar.gz... configure: WARNING: unrecognized options: --disable-tinfo checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a race-free mkdir -p... ./install-sh -c -d checking for gawk... no checking for mawk... no checking for nawk... no checking for awk... awk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking whether make supports nested variables... (cached) yes checking build system type... i586-alpine-linux-musl checking host system type... i586-alpine-linux-musl checking whether make supports the include directive... yes (GNU style) checking for i586-alpine-linux-musl-gcc... cc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether the compiler supports GNU C... yes checking whether cc accepts -g... yes checking for cc option to enable C11 features... none needed checking whether cc understands -c and -o together... yes checking dependency style of cc... gcc3 checking how to run the C preprocessor... cc -E checking for i586-alpine-linux-musl-gcc... i586-alpine-linux-musl-gcc checking whether the compiler supports GNU C... (cached) yes checking whether i586-alpine-linux-musl-gcc accepts -g... yes checking for i586-alpine-linux-musl-gcc option to enable C11 features... (cached) none needed checking whether i586-alpine-linux-musl-gcc understands -c and -o together... yes checking dependency style of i586-alpine-linux-musl-gcc... gcc3 checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking how to run the C preprocessor... i586-alpine-linux-musl-gcc -E checking whether the compiler supports GNU C++... yes checking whether c++ accepts -g... yes checking for c++ option to enable C++11 features... none needed checking dependency style of c++... gcc3 checking how to run the C++ preprocessor... c++ -E checking for i586-alpine-linux-musl-g++... i586-alpine-linux-musl-g++ checking whether the compiler supports GNU C++... (cached) yes checking whether i586-alpine-linux-musl-g++ accepts -g... yes checking for i586-alpine-linux-musl-g++ option to enable C++11 features... (cached) none needed checking dependency style of i586-alpine-linux-musl-g++... gcc3 checking how to run the C++ preprocessor... i586-alpine-linux-musl-g++ -E checking for a sed that does not truncate output... /bin/sed checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking whether cc is Clang... no checking whether pthreads work with "-pthread" and "-lpthread"... yes checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE checking whether more special flags are required for pthreads... no checking for PTHREAD_PRIO_INHERIT... yes checking whether c++ supports C++17 features with -std=c++17... yes checking for i586-alpine-linux-musl-ranlib... no checking for ranlib... ranlib checking for i586-alpine-linux-musl-ar... no checking for i586-alpine-linux-musl-lib... no checking for i586-alpine-linux-musl-link... no checking for ar... ar checking the archiver (ar) interface... ar checking whether ln -s works... yes checking whether make sets $(MAKE)... (cached) yes checking for bash... /bin/bash checking for cargo... no checking for bzip2... /usr/bin/bzip2 checking for re2c... no checking for xz... no checking for tshark... no checking for check-jsonschema... no checking for windres... no checking for stdio.h... yes checking for stdlib.h... yes checking for string.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for strings.h... yes checking for sys/stat.h... yes checking for sys/types.h... yes checking for unistd.h... yes checking size of off_t... 8 checking size of size_t... 4 checking for mkostemp... yes checking whether struct tm is in sys/time.h or time.h... time.h checking for c++ -std=c++17 options needed to detect all undeclared functions... none needed checking for struct tm.tm_zone... yes checking for library containing openpty... none required checking for library containing gzseek... -lz checking for library containing BZ2_bzopen... -lbz2 checking for library containing dlopen... none required checking for library containing backtrace... no checking for library containing uc_width... -lunistring checking for gawk... (cached) awk checking for curl-config... /usr/bin/curl-config checking for the version of libcurl... 8.15.0 checking for libcurl >= version 7.23.0... yes checking whether libcurl is usable... yes checking for curl_free... yes checking for library containing Gpm_Open... -lgpm checking for execinfo.h... no checking for pty.h... yes checking for util.h... no checking for zlib.h... yes checking for bzlib.h... yes checking for libutil.h... no checking for sys/ttydefaults.h... yes checking for libproc.h... no checking for uniwidth.h... yes checking for sys/sysctl.h... no checking lib archive... (testing) checking for archive_read_new in -larchive... yes checking for archive.h... yes checking lib archive... -larchive checking if PCRE2 is wanted... yes checking for pcre2_compile_8 in -lpcre2-8... yes checking for pcre2.h... yes checking whether to build with code coverage support... no checking for library containing sqlite3_open... -lsqlite3 checking for sqlite3.h... yes checking for SQLite3 library >= 3.9.0... yes checking for sqlite3_stmt_readonly... yes checking for sqlite3_value_subtype... yes checking for sqlite3_error_offset... yes checking for sqlite3_drop_modules... yes Adding include path: /usr/local/include checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating TESTS_ENVIRONMENT config.status: creating tools/Makefile config.status: creating src/help.md config.status: creating src/Makefile config.status: creating src/base/Makefile config.status: creating src/formats/logfmt/Makefile config.status: creating src/fmtlib/Makefile config.status: creating src/pcrepp/Makefile config.status: creating src/pugixml/Makefile config.status: creating src/tailer/Makefile config.status: creating src/yajl/Makefile config.status: creating src/yajlpp/Makefile config.status: creating src/third-party/base64/lib/Makefile config.status: creating src/third-party/date/src/Makefile config.status: creating src/third-party/notcurses/src/lib/Makefile config.status: creating src/third-party/scnlib/src/Makefile config.status: creating test/Makefile config.status: creating test/expected/Makefile config.status: creating src/config.h config.status: executing depfiles commands configure: WARNING: unrecognized options: --disable-tinfo Making all in tools make[1]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/tools' cc -I../src/third-party/doctest-root -D_ISOC99_SOURCE -D__STDC_LIMIT_MACROS -D_GNU_SOURCE -DHAS_REMOTE_API=0 -DUSE_OS_TZDB=1 -I/usr/include -I/usr/include -I/usr/local/include -Wl,--as-needed,-O1,--sort-common -Wl,-z,pack-relative-relocs -L/usr/lib -L/usr/lib -L/usr/local/lib -L/usr/lib -L//lib -g3 -o bin2c bin2c.c -lz -fPIE make[1]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/tools' Making all in src make[1]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src' BIN2C animals-json.cc BIN2C ansi-palette-json.cc BIN2C builtin-scripts.cc BIN2C builtin-sh-scripts.cc BIN2C css-color-names-json.cc BIN2C default-config.cc BIN2C default-formats.cc BIN2C diseases-json.cc BIN2C emojis-json.cc BIN2C words-json.cc BIN2C help-md.cc BIN2C init-sql.cc BIN2C prql-modules.cc BIN2C terminfo-files.cc CXX ptimec BIN2C xml-entities-json.cc BIN2C xterm-palette-json.cc ptimec.cc: In function 'int main(int, char**)': ptimec.cc:124:46: warning: format '%lu' expects argument of type 'long unsigned int', but argument 2 has type 'size_t' {aka 'unsigned int'} [-Wformat=] 124 | " if (len - off_inout < %lu) {\n" | ~~^ | | | long unsigned int | %u ...... 127 | min_width); | ~~~~~~~~~ | | | size_t {aka unsigned int} ptimec.cc:144:52: warning: format '%lu' expects argument of type 'long unsigned int', but argument 2 has type 'unsigned int' [-Wformat=] 144 | printf(" off_inout += %lu;\n", checked_pos.value()); | ~~^ ~~~~~~~~~~~~~~~~~~~ | | | | long unsigned int unsigned int | %u ptimec.cc:193:36: warning: format '%lu' expects argument of type 'long unsigned int', but argument 3 has type 'unsigned int' [-Wformat=] 193 | "%lu);\n", | ~~^ | | | long unsigned int | %u 194 | arg[index + 1], 195 | checked_pos.value()); | ~~~~~~~~~~~~~~~~~~~ | | | unsigned int ptimec.cc:217:71: warning: format '%lu' expects argument of type 'long unsigned int', but argument 3 has type 'unsigned int' [-Wformat=] 217 | " PTIME_CHECK_CHAR('%s', str[off_inout + %lu]);\n", | ~~^ | | | long unsigned int | %u 218 | escape_char(arg[index]), 219 | checked_pos.value()); | ~~~~~~~~~~~~~~~~~~~ | | | unsigned int ptimec.cc:231:40: warning: format '%lu' expects argument of type 'long unsigned int', but argument 2 has type 'size_t' {aka 'unsigned int'} [-Wformat=] 231 | printf(" off_inout += %lu;\n", min_width); | ~~^ ~~~~~~~~~ | | | | | size_t {aka unsigned int} | long unsigned int | %u TIMEFMT time_fmts.cc make all-recursive make[2]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src' Making all in fmtlib make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/fmtlib' CXX format.o CXX os.o AR libcppfmt.a ar: `u' modifier ignored since `D' is the default (see `U') make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/fmtlib' Making all in third-party/base64/lib make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/base64/lib' CC lib.o CC arch/generic/codec.o CC tables/tables.o AR libbase64.a ar: `u' modifier ignored since `D' is the default (see `U') make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/base64/lib' Making all in third-party/date/src make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/date/src' CXX tz.o AR libdatepp.a ar: `u' modifier ignored since `D' is the default (see `U') make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/date/src' Making all in third-party/notcurses/src/lib make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/notcurses/src/lib' CC automaton.o CC blit.o CC capabilities.o CC debug.o CC direct.o CC fade.o CC fd.o CC fill.o CC gpm.o CC in.o CC kitty.o CC layout.o CC linux.o CC menu.o CC metric.o CC mice.o CC notcurses.o CC plot.o CC progbar.o CC reader.o CC reel.o CC render.o CC selector.o CC sixel.o CC sprite.o CC stats.o CC tabbed.o CC termdesc.o CC terminfo.o CC tree.o CC unixsig.o CC util.o CC visual.o CC windows.o CC ../compat/compat.o In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from fd.c:5: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/pthread.h:30, from fd.c:4: /usr/include/sched.h:85:11: note: expected 'void *' but argument is of type 'const char *' 85 | void free(void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from in.c:6: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/sched.h:85:11: note: expected 'void *' but argument is of type 'const char *' 85 | void free(void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from sprite.c:1: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from automaton.c:2: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from blit.c:3: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from fade.c:3: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from layout.c:1: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from debug.c:1: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from mice.c:1: ./../lib/fbuf.h: In function 'fbuf_emit_parm': In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from metric.c:7: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/pthread.h:30, from metric.c:4: /usr/include/sched.h:85:11: note: expected 'void *' but argument is of type 'const char *' 85 | void free(void *); | ^~~~~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from stats.c:2: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from kitty.c:1: ./../lib/fbuf.h: In function 'fbuf_emit_parm': /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from tabbed.c:1: ./../lib/fbuf.h: In function 'fbuf_emit_parm': /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from render.c:4: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from progbar.c:2: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from linux.c:2: ./../lib/fbuf.h: In function 'fbuf_emit_parm': In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from selector.c:1: ./../lib/fbuf.h: In function 'fbuf_emit_parm': In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from fill.c:1: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/sched.h:85:11: note: expected 'void *' but argument is of type 'const char *' 85 | void free(void *); | ^~~~~~ ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from notcurses.c:5: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from egcpool.h:9, from notcurses.c:4: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from gpm.c:1: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h: In function 'term_emit_parm': In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from termdesc.c:6: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from sixel.c:3: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from unixsig.c:4: ./../lib/fbuf.h: In function 'fbuf_emit_parm': In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from tree.c:1: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from plot.c:6: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from menu.c:1: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from reader.c:1: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from direct.c:11: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from visual-details.h:9, from direct.c:9: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ in.c: In function 'prep_special_keys': in.c:357:17: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 357 | char* seq = terminfo_get_string_by_name(notcurses_terminfo, k->tinfo); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from util.c:19: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from ./../compat/compat.h:10, from internal.h:11: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ termdesc.c: In function 'terminfostr': termdesc.c:276:9: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 276 | *gseq = terminfo_get_string_by_name(notcurses_terminfo, name); | ^ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ In file included from ./../lib/fbuf.h:15: linux.c: In function 'add_to_map': ./../lib/logging.h:54:11: warning: format '%x' expects argument of type 'unsigned int', but argument 4 has type 'wchar_t' {aka 'long int'} [-Wformat=] 54 | nclog("%s:%d:" fmt NL, __func__, __LINE__, ##__VA_ARGS__); } \ | ^~~~~~~~ linux.c:333:3: note: in expansion of macro 'logdebug' 333 | logdebug("adding mapping U+%04x -> %03u", w, fidx); | ^~~~~~~~ linux.c: In function 'program_block_drawing_chars': ./../lib/logging.h:54:11: warning: format '%lc' expects argument of type 'wint_t', but argument 4 has type 'wchar_t' {aka 'long int'} [-Wformat=] 54 | nclog("%s:%d:" fmt NL, __func__, __LINE__, ##__VA_ARGS__); } \ | ^~~~~~~~ linux.c:499:11: note: in expansion of macro 'logdebug' 499 | logdebug("found %lc at fontidx %u", half[s].w, i); | ^~~~~~~~ ./../lib/logging.h:54:11: warning: format '%lc' expects argument of type 'wint_t', but argument 4 has type 'wchar_t' {aka 'long int'} [-Wformat=] 54 | nclog("%s:%d:" fmt NL, __func__, __LINE__, ##__VA_ARGS__); } \ | ^~~~~~~~ linux.c:507:11: note: in expansion of macro 'logdebug' 507 | logdebug("found %lc at fontidx %u", quads[s].w, i); | ^~~~~~~~ ./../lib/logging.h:54:11: warning: format '%lc' expects argument of type 'wint_t', but argument 4 has type 'wchar_t' {aka 'long int'} [-Wformat=] 54 | nclog("%s:%d:" fmt NL, __func__, __LINE__, ##__VA_ARGS__); } \ | ^~~~~~~~ linux.c:515:11: note: in expansion of macro 'logdebug' 515 | logdebug("found %lc at fontidx %u", eighths[s].w, i); | ^~~~~~~~ In file included from sprite.h:10, from termdesc.h:16, from windows.c:1: fbuf.h: In function 'fbuf_emit_parm': fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/pthread.h:30, from termdesc.h:13: /usr/include/sched.h:85:11: note: expected 'void *' but argument is of type 'const char *' 85 | void free(void *); | ^~~~~~ In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from visual.c:5: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from visual-details.h:9, from visual.c:4: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ termdesc.c: In function 'interrogate_terminfo': termdesc.c:1404:26: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 1404 | free(terminfo_path); | ^~~~~~~~~~~~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ termdesc.c:1407:22: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 1407 | free(terminfo_path); | ^~~~~~~~~~~~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ termdesc.h: In function 'term_emit_parm': termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/sched.h:85:11: note: expected 'void *' but argument is of type 'const char *' 85 | void free(void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ direct.c: In function 'ncdirect_box': direct.c:1417:29: warning: format '%lc' expects argument of type 'wint_t', but argument 3 has type 'wchar_t' {aka 'long int'} [-Wformat=] 1417 | if(fprintf(n->ttyfp, "%lc", wchars[0]) < 0){ | ~~^ ~~~~~~~~~ | | | | | wchar_t {aka long int} | unsigned int | %ld In file included from ./../lib/fbuf.h:15: ./../lib/logging.h:34:11: warning: format '%lc' expects argument of type 'wint_t', but argument 4 has type 'wchar_t' {aka 'long int'} [-Wformat=] 34 | nclog("%s:%d:" fmt NL, __func__, __LINE__, ##__VA_ARGS__); } \ | ^~~~~~~~ direct.c:1418:7: note: in expansion of macro 'logerror' 1418 | logerror("error emitting %lc\n", wchars[0]); | ^~~~~~~~ ./../lib/logging.h:34:11: warning: format '%lc' expects argument of type 'wint_t', but argument 4 has type 'wchar_t' {aka 'long int'} [-Wformat=] 34 | nclog("%s:%d:" fmt NL, __func__, __LINE__, ##__VA_ARGS__); } \ | ^~~~~~~~ direct.c:1427:5: note: in expansion of macro 'logerror' 1427 | logerror("error converting %lc\n", wchars[4]); | ^~~~~~~~ ./../lib/logging.h:34:11: warning: format '%lc' expects argument of type 'wint_t', but argument 4 has type 'wchar_t' {aka 'long int'} [-Wformat=] 34 | nclog("%s:%d:" fmt NL, __func__, __LINE__, ##__VA_ARGS__); } \ | ^~~~~~~~ direct.c:1433:5: note: in expansion of macro 'logerror' 1433 | logerror("error converting %lc\n", wchars[5]); | ^~~~~~~~ direct.c:1451:29: warning: format '%lc' expects argument of type 'wint_t', but argument 3 has type 'wchar_t' {aka 'long int'} [-Wformat=] 1451 | if(fprintf(n->ttyfp, "%lc", wchars[1]) < 0){ | ~~^ ~~~~~~~~~ | | | | | wchar_t {aka long int} | unsigned int | %ld direct.c:1486:29: warning: format '%lc' expects argument of type 'wint_t', but argument 3 has type 'wchar_t' {aka 'long int'} [-Wformat=] 1486 | if(fprintf(n->ttyfp, "%lc", wchars[2]) < 0){ | ~~^ ~~~~~~~~~ | | | | | wchar_t {aka long int} | unsigned int | %ld direct.c:1506:29: warning: format '%lc' expects argument of type 'wint_t', but argument 3 has type 'wchar_t' {aka 'long int'} [-Wformat=] 1506 | if(fprintf(n->ttyfp, "%lc", wchars[3]) < 0){ | ~~^ ~~~~~~~~~ | | | | | wchar_t {aka long int} | unsigned int | %ld In file included from ./../lib/sprite.h:10, from ./../lib/termdesc.h:16, from internal.h:46, from reel.c:5: ./../lib/fbuf.h: In function 'fbuf_emit_parm': ./../lib/fbuf.h:251:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 251 | free(esc); | ^~~ In file included from /usr/include/fortify/stdlib.h:23, from reel.c:3: /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ ./../lib/termdesc.h: In function 'term_emit_parm': ./../lib/termdesc.h:322:8: warning: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 322 | free(seq); | ^~~ /usr/include/stdlib.h:43:12: note: expected 'void *' but argument is of type 'const char *' 43 | void free (void *); | ^~~~~~ AR liblnavnotcurses.a ar: `u' modifier ignored since `D' is the default (see `U') make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/notcurses/src/lib' Making all in third-party/scnlib/src make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/scnlib/src' CXX scn/impl.o AR libscnlib.a ar: `u' modifier ignored since `D' is the default (see `U') make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/scnlib/src' Making all in pcrepp make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/pcrepp' CXX pcre2pp.o AR libpcrepp.a ar: `u' modifier ignored since `D' is the default (see `U') make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/pcrepp' Making all in base make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/base' CXX ansi_scrubber.o CXX attr_line.o CXX attr_line.builder.o CXX auto_fd.o CXX auto_pid.o CXX cell_container.o CXX color_spaces.o CXX date_time_scanner.o CXX fs_util.o CXX fts_fuzzy_match.o CXX humanize.o CXX humanize.network.o CXX humanize.time.o CXX intern_string.o CXX is_utf8.o CXX isc.o CXX lnav.console.o CXX lnav.console.win.o CXX lnav.gzip.o CXX lnav_log.o CXX network.tcp.o CXX paths.o CXX piper.file.o CXX small_string_map.o CXX snippet_highlighters.o CXX string_attr_type.o CXX string_util.o CC strnatcmp.o CXX time_util.o CC ../third-party/xxHash/xxhash.o In file included from date_time_scanner.cc:40: ../../src/ptimec.hh: In function 'void ftime_s(char*, off_t&, ssize_t, const exttm&)': ../../src/ptimec.hh:366:51: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 366 | snprintf(&dst[off_inout], len - off_inout, "%ld", t); | ~~^ ~ | | | | | time_t {aka long long int} | long int | %lld ../../src/ptimec.hh: In function 'void ftime_q(char*, off_t&, ssize_t, const exttm&)': ../../src/ptimec.hh:424:51: warning: format '%lx' expects argument of type 'long unsigned int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 424 | snprintf(&dst[off_inout], len - off_inout, "%lx", t); | ~~^ ~ | | | | | time_t {aka long long int} | long unsigned int | %llx ../../src/ptimec.hh: In function 'void ftime_f(char*, off_t&, ssize_t, const exttm&)': ../../src/ptimec.hh:1211:28: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 1211 | for (auto lpc = 0; lpc < out_len; lpc++) { | ~~~~^~~~~~~~~ ansi_scrubber.cc: In function 'void scrub_ansi_string(std::string&, string_attrs_t*)': ansi_scrubber.cc:484:35: warning: comparison of integer expressions of different signedness: 'const int32_t' {aka 'const int'} and 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} [-Wsign-compare] 484 | if (sf.sf_end < str.size()) { | ~~~~~~~~~~^~~~~~~~~~~~ piper.file.cc: In function 'std::optional lnav::piper::read_header(int, const char*)': piper.file.cc:71:18: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 71 | if (meta_prc != meta_size) { | ~~~~~~~~~^~~~~~~~~~~~ AR libbase.a ar: `u' modifier ignored since `D' is the default (see `U') make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/base' Making all in tailer make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/tailer' ../../tools/bin2c -n tailer_bin tailerbin ./tailer.ape make all-am make[4]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/tailer' CC sha-256.o CC tailer.o CXX libtailerpp_a-tailerpp.o CXX libtailerservice_a-tailerbin.o CXX libtailerservice_a-tailer.looper.o AR libtailercommon.a ar: `u' modifier ignored since `D' is the default (see `U') AR libtailerpp.a ar: `u' modifier ignored since `D' is the default (see `U') In file included from ../../src/log_vtab_impl.hh:42, from ../../src/lnav.hh:54, from tailer.looper.cc:43: ../../src/logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': ../../src/logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ AR libtailerservice.a ar: `u' modifier ignored since `D' is the default (see `U') make[4]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/tailer' make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/tailer' Making all in pugixml make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/pugixml' CXX pugixml.o AR libpugixml.a ar: `u' modifier ignored since `D' is the default (see `U') make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/pugixml' Making all in yajl make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/yajl' CC yajl.o CC yajl_alloc.o CC yajl_buf.o CC yajl_encode.o CC yajl_gen.o CC yajl_lex.o CC yajl_parser.o CC yajl_tree.o CC yajl_version.o AR libyajl.a ar: `u' modifier ignored since `D' is the default (see `U') make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/yajl' Making all in yajlpp make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/yajlpp' CXX json_op.o CXX json_ptr.o CXX yajlpp.o AR libyajlpp.a ar: `u' modifier ignored since `D' is the default (see `U') make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/yajlpp' Making all in formats/logfmt make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/formats/logfmt' CXX logfmt.parser.o AR liblogfmt.a ar: `u' modifier ignored since `D' is the default (see `U') make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/formats/logfmt' Making all in . make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src' CXX lnav.o CXX lnav.events.o CXX lnav.indexing.o CXX lnav.management_cli.o CXX file_vtab.o CXX all_logs_vtab.o CXX archive_manager.o CXX bin2c_rt.o CXX bookmarks.o CXX bottom_status_source.o CXX breadcrumb_curses.o CXX cmd.parser.o CXX cmds.bookmarks.o CXX cmds.display.o CXX cmds.filtering.o CXX cmds.io.o CXX column_namer.o CXX collation-functions.o CXX command_executor.o CXX crashd.client.o CXX curl_looper.o CXX db_sub_source.o CXX document.sections.o CXX dump_internals.o CXX elem_to_json.o CXX environ_vtab.o CXX extension-functions.o CXX external_editor.o CXX external_opener.o CXX field_overlay_source.o CXX file_collection.o CXX file_converter_manager.o CXX file_format.o CXX file_options.o CXX files_sub_source.o CXX filter_observer.o CXX filter_status_source.o CXX filter_sub_source.o CXX fstat_vtab.o CXX fs-extension-functions.o CXX grep_proc.o CXX help_text.o CXX help_text_formatter.o CXX highlighter.o CXX hist_source.o CXX hotkeys.o CXX input_dispatcher.o CXX json-extension-functions.o CXX line_buffer.o CXX listview_curses.o CXX lnav.prompt.o CXX lnav.script.parser.o CXX lnav_commands.o In file included from document.sections.cc:38: document.sections.cc: In member function 'lnav::document::metadata lnav::document::structure_walker::walk()': document.sections.cc:461:36: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 461 | require(this->sw_depth == this->sw_container_tokens.size()); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ base/lnav_log.hh:136:30: note: in definition of macro 'require' 136 | #define require(e) ((void) ((e) ? 0 : lnav_require(#e, __FILE__, __LINE__))) | ^ document.sections.cc:748:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 748 | ensure(this->sw_depth == this->sw_container_tokens.size()); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ base/lnav_log.hh:184:29: note: in definition of macro 'ensure' 184 | #define ensure(e) ((void) ((e) ? 0 : lnav_ensure(#e, __FILE__, __LINE__))) | ^ CXX lnav_config.o CXX lnav_util.o In file included from fs-extension-functions.cc:57: vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = mapbox::util::variant; Args = {const char*}; Return (* f)(Args ...) = sql_basename; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = mapbox::util::variant; Args = {const char*}; Return (* f)(Args ...) = sql_basename]' 495 | }; | ^ fs-extension-functions.cc:346:76: required from here 346 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 347 | help_text("basename", "Extract the base portion of a pathname.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 348 | .sql_function() | ~~~~~~~~~~~~~~~ 349 | .with_prql_path({"fs", "basename"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 350 | .with_parameter({"path", "The path"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 351 | .with_tags({"filename"}) | ~~~~~~~~~~~~~~~~~~~~~~~~ 352 | .with_example({"To get the base of a plain file name", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 353 | "SELECT basename('foobar')"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 354 | .with_example( | ~~~~~~~~~~~~~~ 355 | {"To get the base of a path", "SELECT basename('foo/bar')"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 356 | .with_example({"To get the base of a directory", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 357 | "SELECT basename('foo/bar/')"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 358 | .with_example({"To get the base of an empty string", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 359 | "SELECT basename('')"}) | ~~~~~~~~~~~~~~~~~~~~~~~ 360 | .with_example({"To get the base of a Windows path", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 361 | "SELECT basename('foo\\bar')"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 362 | .with_example({"To get the base of the root directory", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 363 | "SELECT basename('/')"}) | ~~~~~~~~~~~~~~~~~~~~~~~~ 364 | .with_example({ | ~~~~~~~~~~~~~~~ 365 | "To get the base of a path", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 366 | "from [{p='foo/bar'}] | select { fs.basename p }", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 367 | help_example::language::prql, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 368 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = mapbox::util::variant; Args = {const char*}; Return (* f)(Args ...) = sql_dirname; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = mapbox::util::variant; Args = {const char*}; Return (* f)(Args ...) = sql_dirname]' 495 | }; | ^ fs-extension-functions.cc:370:74: required from here 370 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 371 | help_text("dirname", "Extract the directory portion of a pathname.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 372 | .sql_function() | ~~~~~~~~~~~~~~~ 373 | .with_parameter({"path", "The path"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 374 | .with_prql_path({"fs", "dirname"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 375 | .with_tags({"filename"}) | ~~~~~~~~~~~~~~~~~~~~~~~~ 376 | .with_example({"To get the directory of a relative file path", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 377 | "SELECT dirname('foo/bar')"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 378 | .with_example({"To get the directory of an absolute file path", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 379 | "SELECT dirname('/foo/bar')"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 380 | .with_example( | ~~~~~~~~~~~~~~ 381 | {"To get the directory of a file in the root directory", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 382 | "SELECT dirname('/bar')"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~ 383 | .with_example({"To get the directory of a Windows path", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 384 | "SELECT dirname('foo\\bar')"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 385 | .with_example({"To get the directory of an empty path", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 386 | "SELECT dirname('')"})), | ~~~~~~~~~~~~~~~~~~~~~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::optional >; Args = {const std::vector >&}; Return (* f)(Args ...) = sql_joinpath; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::optional >; Args = {const std::vector >&}; Return (* f)(Args ...) = sql_joinpath]' 495 | }; | ^ fs-extension-functions.cc:388:76: required from here 388 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 389 | help_text("joinpath", "Join components of a path together.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 390 | .sql_function() | ~~~~~~~~~~~~~~~ 391 | .with_prql_path({"fs", "join"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 392 | .with_parameter( | ~~~~~~~~~~~~~~~~ 393 | help_text( | ~~~~~~~~~~ 394 | "path", | ~~~~~~~ 395 | "One or more path components to join together. " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 396 | "If an argument starts with a forward or backward " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 397 | "slash, it will be considered " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 398 | "an absolute path and any preceding elements will " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 399 | "be ignored.") | ~~~~~~~~~~~~~~ 400 | .one_or_more()) | ~~~~~~~~~~~~~~~ 401 | .with_tags({"filename"}) | ~~~~~~~~~~~~~~~~~~~~~~~~ 402 | .with_example( | ~~~~~~~~~~~~~~ 403 | {"To join a directory and file name into a relative path", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 404 | "SELECT joinpath('foo', 'bar')"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 405 | .with_example( | ~~~~~~~~~~~~~~ 406 | {"To join an empty component with other names into " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 407 | "a relative path", | ~~~~~~~~~~~~~~~~~~ 408 | "SELECT joinpath('', 'foo', 'bar')"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 409 | .with_example( | ~~~~~~~~~~~~~~ 410 | {"To create an absolute path with two path components", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 411 | "SELECT joinpath('/', 'foo', 'bar')"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 412 | .with_example( | ~~~~~~~~~~~~~~ 413 | {"To create an absolute path from a path component " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 414 | "that starts with a forward slash", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 415 | "SELECT joinpath('/', 'foo', '/bar')"})), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = text_auto_buffer; Args = {const char*}; Return (* f)(Args ...) = sql_readlink; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = text_auto_buffer; Args = {const char*}; Return (* f)(Args ...) = sql_readlink]' 495 | }; | ^ fs-extension-functions.cc:417:76: required from here 417 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 418 | help_text("readlink", "Read the target of a symbolic link.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 419 | .sql_function() | ~~~~~~~~~~~~~~~ 420 | .with_prql_path({"fs", "readlink"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 421 | .with_parameter({"path", "The path to the symbolic link."}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 422 | .with_tags({"filename"})), | ~~~~~~~~~~~~~~~~~~~~~~~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = text_auto_buffer; Args = {const char*}; Return (* f)(Args ...) = sql_realpath; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = text_auto_buffer; Args = {const char*}; Return (* f)(Args ...) = sql_realpath]' 495 | }; | ^ fs-extension-functions.cc:424:76: required from here 424 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 425 | help_text( | ~~~~~~~~~~ 426 | "realpath", | ~~~~~~~~~~~ 427 | "Returns the resolved version of the given path, expanding " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 428 | "symbolic links and " | ~~~~~~~~~~~~~~~~~~~~~ 429 | "resolving '.' and '..' references.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 430 | .sql_function() | ~~~~~~~~~~~~~~~ 431 | .with_prql_path({"fs", "realpath"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 432 | .with_parameter({"path", "The path to resolve."}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 433 | .with_tags({"filename"})), | ~~~~~~~~~~~~~~~~~~~~~~~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = blob_auto_buffer; Args = {const char*, std::optional, std::optional}; Return (* f)(Args ...) = sql_shell_exec; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = blob_auto_buffer; Args = {const char*, std::optional, std::optional}; Return (* f)(Args ...) = sql_shell_exec]' 495 | }; | ^ fs-extension-functions.cc:435:80: required from here 435 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 436 | help_text("shell_exec", | ~~~~~~~~~~~~~~~~~~~~~~~ 437 | "Executes a shell command and returns its output.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 438 | .sql_function() | ~~~~~~~~~~~~~~~ 439 | .with_prql_path({"shell", "exec"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 440 | .with_parameter({"cmd", "The command to execute."}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 441 | .with_parameter(help_text{ | ~~~~~~~~~~~~~~~~~~~~~~~~~~ 442 | "input", | ~~~~~~~~ 443 | "A blob of data to write to the command's standard input."} | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 444 | .optional()) | ~~~~~~~~~~~~ 445 | .with_parameter( | ~~~~~~~~~~~~~~~~ 446 | help_text{"options", | ~~~~~~~~~~~~~~~~~~~~ 447 | "A JSON object containing options for the " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 448 | "execution with the following properties:"} | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 449 | .optional() | ~~~~~~~~~~~ 450 | .with_parameter(help_text{ | ~~~~~~~~~~~~~~~~~~~~~~~~~~ 451 | "env", | ~~~~~~ 452 | "An object containing the environment variables " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 453 | "to set or, if NULL, to unset."} | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 454 | .optional())) | ~~~~~~~~~~~~~ 455 | .with_tags({"shell"})) | ~~~~~~~~~~~~~~~~~~~~~~ vtab_module.hh:456:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 456 | "%s() expects between %ld and %ld arguments", | ~~^ | | | long int | %d 457 | fd->fd_help.ht_name, 458 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh:456:58: warning: format '%ld' expects argument of type 'long int', but argument 6 has type 'unsigned int' [-Wformat=] 456 | "%s() expects between %ld and %ld arguments", | ~~^ | | | long int | %d ...... 459 | REQ_COUNT + OPT_COUNT); | ~~~~~~~~~~~~~~~~~~~~~ | | | unsigned int In file included from json-extension-functions.cc:40: vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = json_string; Args = {std::optional, const std::vector >&}; Return (* f)(Args ...) = {anonymous}::json_concat; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = json_string; Args = {std::optional, const std::vector >&}; Return (* f)(Args ...) = {anonymous}::json_concat]' 495 | }; | ^ json-extension-functions.cc:776:74: required from here 776 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 777 | help_text("json_concat", | ~~~~~~~~~~~~~~~~~~~~~~~~ 778 | "Returns an array with the given values concatenated " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 779 | "onto the end. " | ~~~~~~~~~~~~~~~~~ 780 | "If the initial value is null, the result will be an " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 781 | "array with " | ~~~~~~~~~~~~~ 782 | "the given elements. If the initial value is an array, " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 783 | "the result " | ~~~~~~~~~~~~~ 784 | "will be an array with the given values at the end. If " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 785 | "the initial " | ~~~~~~~~~~~~~~ 786 | "value is not null or an array, the result will be an " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 787 | "array with " | ~~~~~~~~~~~~~ 788 | "two elements: the initial value and the given value.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 789 | .sql_function() | ~~~~~~~~~~~~~~~ 790 | .with_prql_path({"json", "concat"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 791 | .with_parameter({"json", "The initial JSON value."}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 792 | .with_parameter( | ~~~~~~~~~~~~~~~~ 793 | help_text("value", | ~~~~~~~~~~~~~~~~~~ 794 | "The value(s) to add to the end of the array.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 795 | .one_or_more()) | ~~~~~~~~~~~~~~~ 796 | .with_tags({"json"}) | ~~~~~~~~~~~~~~~~~~~~ 797 | .with_example({ | ~~~~~~~~~~~~~~~ 798 | "To append the number 4 to null", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 799 | "SELECT json_concat(NULL, 4)", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 800 | }) | ~~ 801 | .with_example({ | ~~~~~~~~~~~~~~~ 802 | "To append 4 and 5 to the array [1, 2, 3]", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 803 | "SELECT json_concat('[1, 2, 3]', 4, 5)", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 804 | }) | ~~ 805 | .with_example({ | ~~~~~~~~~~~~~~~ 806 | "To concatenate two arrays together", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 807 | "SELECT json_concat('[1, 2, 3]', json('[4, 5]'))", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 808 | })) | ~~~ vtab_module.hh:456:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 456 | "%s() expects between %ld and %ld arguments", | ~~^ | | | long int | %d 457 | fd->fd_help.ht_name, 458 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh:456:58: warning: format '%ld' expects argument of type 'long int', but argument 6 has type 'unsigned int' [-Wformat=] 456 | "%s() expects between %ld and %ld arguments", | ~~^ | | | long int | %d ...... 459 | REQ_COUNT + OPT_COUNT); | ~~~~~~~~~~~~~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = bool; Args = {vtab_types::nullable, sqlite3_value*}; Return (* f)(Args ...) = {anonymous}::json_contains; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = bool; Args = {vtab_types::nullable, sqlite3_value*}; Return (* f)(Args ...) = {anonymous}::json_contains]' 495 | }; | ^ json-extension-functions.cc:811:78: required from here 811 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 812 | help_text("json_contains", | ~~~~~~~~~~~~~~~~~~~~~~~~~~ 813 | "Check if a JSON value contains the given element.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 814 | .sql_function() | ~~~~~~~~~~~~~~~ 815 | .with_prql_path({"json", "contains"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 816 | .with_parameter({"json", "The JSON value to query."}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 817 | .with_parameter( | ~~~~~~~~~~~~~~~~ 818 | {"value", "The value to look for in the first argument"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 819 | .with_tags({"json"}) | ~~~~~~~~~~~~~~~~~~~~ 820 | .with_example({ | ~~~~~~~~~~~~~~~ 821 | "To test if a JSON array contains the number 4", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 822 | "SELECT json_contains('[1, 2, 3]', 4)", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 823 | }) | ~~ 824 | .with_example({ | ~~~~~~~~~~~~~~~ 825 | "To test if a JSON array contains the string 'def'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 826 | "SELECT json_contains('[\"abc\", \"def\"]', 'def')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 827 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int In file included from log_vtab_impl.hh:42, from all_logs_vtab.hh:37, from all_logs_vtab.cc:30: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX log.annotate.o CXX log.watch.o In file included from log_vtab_impl.hh:42, from all_logs_vtab.hh:37, from lnav.cc:64: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from log_data_helper.hh:41, from field_overlay_source.hh:39, from field_overlay_source.cc:30: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX log_accel.o In file included from log_data_helper.hh:41, from field_overlay_source.hh:39, from hotkeys.cc:42: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from log_data_helper.hh:41, from field_overlay_source.hh:39, from cmds.io.cc:44: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from log_vtab_impl.hh:42, from lnav.hh:54, from cmds.bookmarks.cc:31: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from log_vtab_impl.hh:42, from lnav.hh:54, from filter_status_source.cc:37: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from log_vtab_impl.hh:42, from lnav.hh:54, from cmds.filtering.cc:30: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from log_vtab_impl.hh:42, from lnav.hh:54, from cmds.display.cc:30: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX log_actions.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from dump_internals.cc:36: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from log_vtab_impl.hh:42, from lnav.hh:54, from filter_sub_source.cc:43: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX log_data_helper.o CXX log_data_table.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from files_sub_source.cc:43: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX log_format.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from lnav.indexing.cc:36: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from log_vtab_impl.hh:42, from lnav.hh:54, from command_executor.cc:47: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX log_format_loader.o listview_curses.cc: In member function 'vis_line_t listview_curses::get_overlay_top(vis_line_t, size_t, const std::vector&)': listview_curses.cc:468:24: warning: comparison of integer expressions of different signedness: 'const int' and 'size_t' {aka 'unsigned int'} [-Wsign-compare] 468 | if (ov_sel >= count) { | ~~~~~~~^~~~~~~~ In file included from field_overlay_source.cc:41: ptimec.hh: In function 'void ftime_s(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:366:51: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 366 | snprintf(&dst[off_inout], len - off_inout, "%ld", t); | ~~^ ~ | | | | | time_t {aka long long int} | long int | %lld ptimec.hh: In function 'void ftime_q(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:424:51: warning: format '%lx' expects argument of type 'long unsigned int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 424 | snprintf(&dst[off_inout], len - off_inout, "%lx", t); | ~~^ ~ | | | | | time_t {aka long long int} | long unsigned int | %llx ptimec.hh: In function 'void ftime_f(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:1211:28: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 1211 | for (auto lpc = 0; lpc < out_len; lpc++) { | ~~~~^~~~~~~~~ CXX log_level.o CXX log_level_re.o CXX log_search_table.o CXX logfile.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from lnav.management_cli.cc:46: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX logfile_sub_source.o CXX md2attr_line.o In file included from command_executor.cc:34: command_executor.cc: In function 'Result, lnav::console::user_message> execute_sql(exec_context&, const std::string&, std::string&)': base/ansi_scrubber.hh:40:30: warning: format '%ld' expects argument of type 'long int', but argument 6 has type 'time_t' {aka 'long long int'} [-Wformat=] 40 | #define ANSI_CSI "\x1b[" base/ansi_scrubber.hh:43:30: note: in expansion of macro 'ANSI_CSI' 43 | #define ANSI_BOLD_START ANSI_CSI ANSI_BOLD_PARAM ANSI_CHAR_ATTR | ^~~~~~~~ base/ansi_scrubber.hh:49:29: note: in expansion of macro 'ANSI_BOLD_START' 49 | #define ANSI_BOLD(msg) ANSI_BOLD_START msg ANSI_NORM | ^~~~~~~~~~~~~~~ command_executor.cc:545:30: note: in expansion of macro 'ANSI_BOLD' 545 | ANSI_BOLD("%'d") " row%s matched in " ANSI_BOLD( | ^~~~~~~~~ command_executor.cc:546:37: note: format string is defined here 546 | "%ld.%03ld") " seconds", | ~~^ | | | long int | %lld CXX md4cpp.o CXX msg.text.o In file included from lnav.prompt.cc:46: ./fmtlib/fmt/ranges.h:215:59: warning: self-comparison always evaluates to true [-Wtautological-compare] 215 | integer_sequence); | ~~~^~~~~ CXX network-extension-functions.o CXX data_parser.o CXX piper.header.o CXX piper.looper.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from lnav.prompt.cc:48: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX piper.match.o CXX plain_text_source.o CXX pollable.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from lnav_commands.cc:37: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX pretty_printer.o CXX preview_status_source.o CXX ptimec_rt.o In file included from network-extension-functions.cc:42: vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::__cxx11::basic_string; Args = {const char*}; Return (* f)(Args ...) = sql_gethostbyname; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::__cxx11::basic_string; Args = {const char*}; Return (* f)(Args ...) = sql_gethostbyname]' 495 | }; | ^ network-extension-functions.cc:140:20: required from here 139 | sqlite_func_adapter:: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 140 | builder( | ~~~~~~~^ 141 | help_text("gethostbyname", | ~~~~~~~~~~~~~~~~~~~~~~~~~~ 142 | "Get the IP address for the given hostname") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 143 | .sql_function() | ~~~~~~~~~~~~~~~ 144 | .with_prql_path({"net", "gethostbyname"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 145 | .with_parameter({"hostname", "The DNS hostname to lookup."}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 146 | .with_tags({"net"}) | ~~~~~~~~~~~~~~~~~~~ 147 | .with_example({ | ~~~~~~~~~~~~~~~ 148 | "To get the IP address for 'localhost'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 149 | "SELECT gethostbyname('localhost')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 150 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::__cxx11::basic_string; Args = {const char*}; Return (* f)(Args ...) = sql_gethostbyaddr; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::__cxx11::basic_string; Args = {const char*}; Return (* f)(Args ...) = sql_gethostbyaddr]' 495 | }; | ^ network-extension-functions.cc:153:20: required from here 152 | sqlite_func_adapter:: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 153 | builder( | ~~~~~~~^ 154 | help_text("gethostbyaddr", | ~~~~~~~~~~~~~~~~~~~~~~~~~~ 155 | "Get the hostname for the given IP address") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 156 | .sql_function() | ~~~~~~~~~~~~~~~ 157 | .with_prql_path({"net", "gethostbyaddr"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 158 | .with_parameter({"hostname", "The IP address to lookup."}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 159 | .with_tags({"net"}) | ~~~~~~~~~~~~~~~~~~~ 160 | .with_example({ | ~~~~~~~~~~~~~~~ 161 | "To get the hostname for the IP '127.0.0.1'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 162 | "SELECT gethostbyaddr('127.0.0.1')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 163 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int CXX readline_callbacks.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from log.annotate.cc:39: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX readline_highlighters.o CXX readline_possibilities.o In file included from lnav_commands.cc:78: ptimec.hh: In function 'void ftime_s(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:366:51: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 366 | snprintf(&dst[off_inout], len - off_inout, "%ld", t); | ~~^ ~ | | | | | time_t {aka long long int} | long int | %lld ptimec.hh: In function 'void ftime_q(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:424:51: warning: format '%lx' expects argument of type 'long unsigned int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 424 | snprintf(&dst[off_inout], len - off_inout, "%lx", t); | ~~^ ~ | | | | | time_t {aka long long int} | long unsigned int | %llx ptimec.hh: In function 'void ftime_f(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:1211:28: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 1211 | for (auto lpc = 0; lpc < out_len; lpc++) { | ~~~~^~~~~~~~~ In file included from log_data_helper.hh:41, from log_data_helper.cc:32: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from log_vtab_impl.hh:42, from log_data_table.hh:39, from log_data_table.cc:30: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ lnav_commands.cc: In function 'Result, lnav::console::user_message> com_adjust_log_time(exec_context&, std::string, std::vector >&)': lnav_commands.cc:284:61: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 284 | "info: log timestamps will be adjusted by %ld.%06ld seconds", | ~~^ | | | long int | %lld 285 | time_diff.tv_sec, | ~~~~~~~~~~~~~~~~ | | | time_t {aka long long int} lnav_commands.cc: In function 'Result, lnav::console::user_message> com_unix_time(exec_context&, std::string, std::vector >&)': lnav_commands.cc:362:47: warning: format '%ld' expects argument of type 'long int*', but argument 3 has type 'time_t*' {aka 'long long int*'} [-Wformat=] 362 | } else if (sscanf(args[1].c_str(), "%ld", &u_time)) { | ~~^ ~~~~~~~ | | | | | time_t* {aka long long int*} | long int* | %lld CXX regex101.client.o CXX regex101.import.o CXX regexp_vtab.o CXX relative_time.o In file included from log_vtab_impl.hh:42, from log_search_table.hh:39, from log_format.cc:50: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX session.export.o CXX session_data.o In file included from log_vtab_impl.hh:42, from log_search_table.hh:39, from log_search_table.cc:30: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from log_format.cc:52: ptimec.hh: In function 'void ftime_s(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:366:51: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 366 | snprintf(&dst[off_inout], len - off_inout, "%ld", t); | ~~^ ~ | | | | | time_t {aka long long int} | long int | %lld ptimec.hh: In function 'void ftime_q(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:424:51: warning: format '%lx' expects argument of type 'long unsigned int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 424 | snprintf(&dst[off_inout], len - off_inout, "%lx", t); | ~~^ ~ | | | | | time_t {aka long long int} | long unsigned int | %llx ptimec.hh: In function 'void ftime_f(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:1211:28: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 1211 | for (auto lpc = 0; lpc < out_len; lpc++) { | ~~~~^~~~~~~~~ In file included from logfile_sub_source.cc:34: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ptimec_rt.cc:32: ptimec.hh: In function 'void ftime_s(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:366:51: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 366 | snprintf(&dst[off_inout], len - off_inout, "%ld", t); | ~~^ ~ | | | | | time_t {aka long long int} | long int | %lld ptimec.hh: In function 'void ftime_q(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:424:51: warning: format '%lx' expects argument of type 'long unsigned int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 424 | snprintf(&dst[off_inout], len - off_inout, "%lx", t); | ~~^ ~ | | | | | time_t {aka long long int} | long unsigned int | %llx ptimec.hh: In function 'void ftime_f(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:1211:28: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 1211 | for (auto lpc = 0; lpc < out_len; lpc++) { | ~~~~^~~~~~~~~ CXX shared_buffer.o In file included from logfile_sub_source.cc:55: ptimec.hh: In function 'void ftime_s(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:366:51: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 366 | snprintf(&dst[off_inout], len - off_inout, "%ld", t); | ~~^ ~ | | | | | time_t {aka long long int} | long int | %lld ptimec.hh: In function 'void ftime_q(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:424:51: warning: format '%lx' expects argument of type 'long unsigned int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 424 | snprintf(&dst[off_inout], len - off_inout, "%lx", t); | ~~^ ~ | | | | | time_t {aka long long int} | long unsigned int | %llx ptimec.hh: In function 'void ftime_f(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:1211:28: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 1211 | for (auto lpc = 0; lpc < out_len; lpc++) { | ~~~~^~~~~~~~~ logfile_sub_source.cc: At global scope: logfile_sub_source.cc:66:72: warning: 'no_sanitize_address' attribute ignored [-Wattributes] 66 | const DIST_SLICE(bm_types) bookmark_type_t logfile_sub_source::BM_FILES("file"); | ^ CXX shlex.o CXX spectro_impls.o CXX spectro_source.o CXX sqlitepp.o CXX sqlite-extension-func.o CXX static_file_vtab.o CXX statusview_curses.o CXX string-extension-functions.o CXX styling.o CXX term_extra.o relative_time.cc: In member function 'int64_t relative_time::to_microseconds() const': relative_time.cc:1143:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct exttm'; use assignment or value-initialization instead [-Wclass-memaccess] 1143 | memset(&etm, 0, sizeof(etm)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~ In file included from relative_time.hh:45, from relative_time.cc:32: base/time_util.hh:147:8: note: 'struct exttm' declared here 147 | struct exttm { | ^~~~~ CXX text_anonymizer.o CXX text_format.o CXX text_overlay_menu.o CXX textfile_sub_source.o CXX timer.o In file included from log_data_helper.hh:41, from field_overlay_source.hh:39, from readline_callbacks.cc:43: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX sql.formatter.o CXX sql_commands.o CXX sql_util.o CXX state-extension-functions.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from readline_possibilities.cc:42: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX sysclip.o CXX textinput_curses.o CXX textinput.history.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from session_data.cc:52: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX textfile_highlighters.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from session.export.cc:35: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from spectro_source.cc:37: spectro_source.cc: In member function 'virtual bool spectrogram_source::list_static_overlay(const listview_curses&, int, int, attr_line_t&)': base/ansi_scrubber.hh:40:30: warning: format '%d' expects argument of type 'int', but argument 4 has type 'role_t' [-Wformat=] 40 | #define ANSI_CSI "\x1b[" base/ansi_scrubber.hh:52:31: note: in expansion of macro 'ANSI_CSI' 52 | #define ANSI_ROLE(msg) ANSI_CSI "%dO" msg ANSI_NORM | ^~~~~~~~ spectro_source.cc:656:14: note: in expansion of macro 'ANSI_ROLE' 656 | ANSI_ROLE(" ") " 1-%'d " ANSI_ROLE(" ") " %'d-%'d " ANSI_ROLE( | ^~~~~~~~~ base/ansi_scrubber.hh:52:42: note: format string is defined here 52 | #define ANSI_ROLE(msg) ANSI_CSI "%dO" msg ANSI_NORM | ~^ | | | int base/ansi_scrubber.hh:40:30: warning: format '%d' expects argument of type 'int', but argument 6 has type 'role_t' [-Wformat=] 40 | #define ANSI_CSI "\x1b[" base/ansi_scrubber.hh:52:31: note: in expansion of macro 'ANSI_CSI' 52 | #define ANSI_ROLE(msg) ANSI_CSI "%dO" msg ANSI_NORM | ^~~~~~~~ spectro_source.cc:656:14: note: in expansion of macro 'ANSI_ROLE' 656 | ANSI_ROLE(" ") " 1-%'d " ANSI_ROLE(" ") " %'d-%'d " ANSI_ROLE( | ^~~~~~~~~ base/ansi_scrubber.hh:52:42: note: format string is defined here 52 | #define ANSI_ROLE(msg) ANSI_CSI "%dO" msg ANSI_NORM | ~^ | | | int base/ansi_scrubber.hh:40:30: warning: format '%d' expects argument of type 'int', but argument 9 has type 'role_t' [-Wformat=] 40 | #define ANSI_CSI "\x1b[" base/ansi_scrubber.hh:52:31: note: in expansion of macro 'ANSI_CSI' 52 | #define ANSI_ROLE(msg) ANSI_CSI "%dO" msg ANSI_NORM | ^~~~~~~~ spectro_source.cc:656:14: note: in expansion of macro 'ANSI_ROLE' 656 | ANSI_ROLE(" ") " 1-%'d " ANSI_ROLE(" ") " %'d-%'d " ANSI_ROLE( | ^~~~~~~~~ base/ansi_scrubber.hh:52:42: note: format string is defined here 52 | #define ANSI_ROLE(msg) ANSI_CSI "%dO" msg ANSI_NORM | ~^ | | | int readline_callbacks.cc: In function 'void rl_sql_change(textinput_curses&, bool)': readline_callbacks.cc:613:14: warning: variable 'stage_iter' set but not used [-Wunused-but-set-variable] 613 | auto stage_iter = rfind_string_attr_if( | ^~~~~~~~~~ readline_callbacks.cc: In lambda function: readline_callbacks.cc:699:47: warning: comparison of integer expressions of different signedness: 'const int' and 'const unsigned int' [-Wsign-compare] 699 | return attr.sa_range.lr_start <= cursor_offset | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ readline_callbacks.cc:700:38: warning: comparison of integer expressions of different signedness: 'const unsigned int' and 'const int' [-Wsign-compare] 700 | && cursor_offset <= attr.sa_range.lr_end; | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ readline_callbacks.cc: In function 'void rl_search_internal(textinput_curses&, ln_mode_t, bool)': readline_callbacks.cc:1106:30: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string::size_type' {aka 'unsigned int'} [-Wsign-compare] 1106 | if (cursor_x >= orig_prql_stmt.get_string().length()) { | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX textview_curses.o CXX time-extension-functions.o CXX timeline_source.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from spectro_impls.cc:36: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX top_status_source.o CXX unique_path.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from static_file_vtab.cc:42: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX view_curses.o In file included from string-extension-functions.cc:38: vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = bool; Args = {string_fragment, string_fragment}; Return (* f)(Args ...) = {anonymous}::regexp; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = bool; Args = {string_fragment, string_fragment}; Return (* f)(Args ...) = {anonymous}::regexp]' 495 | }; | ^ string-extension-functions.cc:975:64: required from here 975 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 976 | help_text("regexp", "Test if a string matches a regular expression") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 977 | .sql_function() | ~~~~~~~~~~~~~~~ 978 | .with_parameter({"re", "The regular expression to use"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 979 | .with_parameter({ | ~~~~~~~~~~~~~~~~~ 980 | "str", | ~~~~~~ 981 | "The string to test against the regular expression", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 982 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = mapbox::util::variant; Args = {string_fragment, string_fragment}; Return (* f)(Args ...) = {anonymous}::regexp_match; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = mapbox::util::variant; Args = {string_fragment, string_fragment}; Return (* f)(Args ...) = {anonymous}::regexp_match]' 495 | }; | ^ string-extension-functions.cc:984:76: required from here 984 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 985 | help_text("regexp_match", | ~~~~~~~~~~~~~~~~~~~~~~~~~ 986 | "Match a string against a regular expression and return " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 987 | "the capture groups as JSON.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 988 | .sql_function() | ~~~~~~~~~~~~~~~ 989 | .with_prql_path({"text", "regexp_match"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 990 | .with_parameter({"re", "The regular expression to use"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 991 | .with_parameter({ | ~~~~~~~~~~~~~~~~~ 992 | "str", | ~~~~~~ 993 | "The string to test against the regular expression", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 994 | }) | ~~ 995 | .with_tags({"string", "regex"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 996 | .with_example({ | ~~~~~~~~~~~~~~~ 997 | "To capture the digits from the string '123'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 998 | "SELECT regexp_match('(\\d+)', '123')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 999 | }) | ~~ 1000 | .with_example({ | ~~~~~~~~~~~~~~~ 1001 | "To capture a number and word into a JSON object with the " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1002 | "properties 'col_0' and 'col_1'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | "SELECT regexp_match('(\\d+) (\\w+)', '123 four')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | }) | ~~ 1005 | .with_example({ | ~~~~~~~~~~~~~~~ 1006 | "To capture a number and word into a JSON object with the " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1007 | "named properties 'num' and 'str'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1008 | "SELECT regexp_match('(?\\d+) (?\\w+)', '123 " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1009 | "four')", | ~~~~~~~~~ 1010 | })) | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::__cxx11::basic_string; Args = {string_fragment, string_fragment, const char*}; Return (* f)(Args ...) = {anonymous}::regexp_replace; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::__cxx11::basic_string; Args = {string_fragment, string_fragment, const char*}; Return (* f)(Args ...) = {anonymous}::regexp_replace]' 495 | }; | ^ string-extension-functions.cc:1013:80: required from here 1013 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 1014 | help_text("regexp_replace", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1015 | "Replace the parts of a string that match a regular " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1016 | "expression.") | ~~~~~~~~~~~~~~ 1017 | .sql_function() | ~~~~~~~~~~~~~~~ 1018 | .with_prql_path({"text", "regexp_replace"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1019 | .with_parameter( | ~~~~~~~~~~~~~~~~ 1020 | {"str", "The string to perform replacements on"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1021 | .with_parameter({"re", "The regular expression to match"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1022 | .with_parameter({ | ~~~~~~~~~~~~~~~~~ 1023 | "repl", | ~~~~~~~ 1024 | "The replacement string. " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1025 | "You can reference capture groups with a " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1026 | "backslash followed by the number of the " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1027 | "group, starting with 1.", | ~~~~~~~~~~~~~~~~~~~~~~~~~~ 1028 | }) | ~~ 1029 | .with_tags({"string", "regex"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1030 | .with_example({ | ~~~~~~~~~~~~~~~ 1031 | "To replace the word at the start of the string " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1032 | "'Hello, World!' with 'Goodbye'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1033 | "SELECT regexp_replace('Hello, World!', " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1034 | "'^(\\w+)', 'Goodbye')", | ~~~~~~~~~~~~~~~~~~~~~~~~ 1035 | }) | ~~ 1036 | .with_example({ | ~~~~~~~~~~~~~~~ 1037 | "To wrap alphanumeric words with angle brackets", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1038 | "SELECT regexp_replace('123 abc', '(\\w+)', '<\\1>')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1039 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::__cxx11::basic_string; Args = {long long int}; Return (* f)(Args ...) = {anonymous}::sql_humanize_file_size; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::__cxx11::basic_string; Args = {long long int}; Return (* f)(Args ...) = {anonymous}::sql_humanize_file_size]' 495 | }; | ^ string-extension-functions.cc:1043:20: required from here 1041 | sqlite_func_adapter:: | ~~~~~~~~~~~~~~~~~~~~~~~~~ 1043 | builder(help_text( | ~~~~~~~^~~~~~~~~~~ 1044 | "humanize_file_size", | ~~~~~~~~~~~~~~~~~~~~~ 1045 | "Format the given file size as a human-friendly string") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1046 | .sql_function() | ~~~~~~~~~~~~~~~ 1047 | .with_prql_path({"humanize", "file_size"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1048 | .with_parameter({"value", "The file size to format"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1049 | .with_tags({"string"}) | ~~~~~~~~~~~~~~~~~~~~~~ 1050 | .with_example({ | ~~~~~~~~~~~~~~~ 1051 | "To format an amount", | ~~~~~~~~~~~~~~~~~~~~~~ 1052 | "SELECT humanize_file_size(10 * 1024 * 1024)", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1053 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::__cxx11::basic_string; Args = {string_fragment}; Return (* f)(Args ...) = sql_humanize_id; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::__cxx11::basic_string; Args = {string_fragment}; Return (* f)(Args ...) = sql_humanize_id]' 495 | }; | ^ string-extension-functions.cc:1056:20: required from here 1055 | sqlite_func_adapter:: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1056 | builder(help_text("humanize_id", | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ 1057 | "Colorize the given ID using ANSI escape codes.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1058 | .sql_function() | ~~~~~~~~~~~~~~~ 1059 | .with_prql_path({"humanize", "id"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1060 | .with_parameter({"id", "The identifier to color"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1061 | .with_tags({"string"}) | ~~~~~~~~~~~~~~~~~~~~~~ 1062 | .with_example({ | ~~~~~~~~~~~~~~~ 1063 | "To colorize the ID 'cluster1'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1064 | "SELECT humanize_id('cluster1')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1065 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = const std::__cxx11::basic_string&; Args = {double, std::optional}; Return (* f)(Args ...) = humanize::sparkline; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = const std::__cxx11::basic_string&; Args = {double, std::optional}; Return (* f)(Args ...) = humanize::sparkline]' 495 | }; | ^ string-extension-functions.cc:1069:20: required from here 1067 | sqlite_func_adapter:: | ~~~~~~~~~~~~~~~~~~~~~~ 1069 | builder( | ~~~~~~~^ 1070 | help_text("sparkline", | ~~~~~~~~~~~~~~~~~~~~~~ 1071 | "Function used to generate a sparkline bar chart. " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1072 | "The non-aggregate version converts a single numeric " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1073 | "value on a range to a bar chart character. The " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1074 | "aggregate version returns a string with a bar " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1075 | "character for every numeric input") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1076 | .sql_function() | ~~~~~~~~~~~~~~~ 1077 | .with_prql_path({"text", "sparkline"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1078 | .with_parameter({"value", "The numeric value to convert"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1079 | .with_parameter(help_text("upper", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1080 | "The upper bound of the numeric " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1081 | "range. The non-aggregate " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1082 | "version defaults to 100. The " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1083 | "aggregate version uses the " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1084 | "largest value in the inputs.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1085 | .optional()) | ~~~~~~~~~~~~ 1086 | .with_tags({"string"}) | ~~~~~~~~~~~~~~~~~~~~~~ 1087 | .with_example({ | ~~~~~~~~~~~~~~~ 1088 | "To get the unicode block element for the " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1089 | "value 32 in the " | ~~~~~~~~~~~~~~~~~~ 1090 | "range of 0-128", | ~~~~~~~~~~~~~~~~~ 1091 | "SELECT sparkline(32, 128)", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1092 | }) | ~~ 1093 | .with_example({ | ~~~~~~~~~~~~~~~ 1094 | "To chart the values in a JSON array", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1095 | "SELECT sparkline(value) FROM json_each('[0, 1, 2, 3, " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1096 | "4, 5, 6, 7, 8]')", | ~~~~~~~~~~~~~~~~~~~ 1097 | })), | ~~~ vtab_module.hh:456:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 456 | "%s() expects between %ld and %ld arguments", | ~~^ | | | long int | %d 457 | fd->fd_help.ht_name, 458 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh:456:58: warning: format '%ld' expects argument of type 'long int', but argument 6 has type 'unsigned int' [-Wformat=] 456 | "%s() expects between %ld and %ld arguments", | ~~^ | | | long int | %d ...... 459 | REQ_COUNT + OPT_COUNT); | ~~~~~~~~~~~~~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::__cxx11::basic_string; Args = {string_fragment}; Return (* f)(Args ...) = {anonymous}::sql_anonymize; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::__cxx11::basic_string; Args = {string_fragment}; Return (* f)(Args ...) = {anonymous}::sql_anonymize]' 495 | }; | ^ string-extension-functions.cc:1099:78: required from here 1099 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 1100 | help_text("anonymize", | ~~~~~~~~~~~~~~~~~~~~~~ 1101 | "Replace identifying information with random values.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1102 | .sql_function() | ~~~~~~~~~~~~~~~ 1103 | .with_prql_path({"text", "anonymize"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1104 | .with_parameter({"value", "The text to anonymize"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1105 | .with_tags({"string"}) | ~~~~~~~~~~~~~~~~~~~~~~ 1106 | .with_example({ | ~~~~~~~~~~~~~~~ 1107 | "To anonymize an IP address", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1108 | "SELECT anonymize('Hello, 192.168.1.2')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1109 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = json_string; Args = {const char*}; Return (* f)(Args ...) = extract; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = json_string; Args = {const char*}; Return (* f)(Args ...) = extract]' 495 | }; | ^ string-extension-functions.cc:1111:66: required from here 1111 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 1112 | help_text("extract", | ~~~~~~~~~~~~~~~~~~~~ 1113 | "Automatically Parse and extract data from a string") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1114 | .sql_function() | ~~~~~~~~~~~~~~~ 1115 | .with_prql_path({"text", "discover"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1116 | .with_parameter({"str", "The string to parse"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1117 | .with_tags({"string"}) | ~~~~~~~~~~~~~~~~~~~~~~ 1118 | .with_example({ | ~~~~~~~~~~~~~~~ 1119 | "To extract key/value pairs from a string", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1120 | "SELECT extract('foo=1 bar=2 name=\"Rolo Tomassi\"')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1121 | }) | ~~ 1122 | .with_example({ | ~~~~~~~~~~~~~~~ 1123 | "To extract columnar data from a string", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1124 | "SELECT extract('1.0 abc 2.0')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1125 | })) | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = json_string; Args = {string_fragment}; Return (* f)(Args ...) = {anonymous}::logfmt2json; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = json_string; Args = {string_fragment}; Return (* f)(Args ...) = {anonymous}::logfmt2json]' 495 | }; | ^ string-extension-functions.cc:1128:74: required from here 1128 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 1129 | help_text("logfmt2json", | ~~~~~~~~~~~~~~~~~~~~~~~~ 1130 | "Convert a logfmt-encoded string into JSON") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1131 | .sql_function() | ~~~~~~~~~~~~~~~ 1132 | .with_prql_path({"logfmt", "to_json"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1133 | .with_parameter({"str", "The logfmt message to parse"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1134 | .with_tags({"string"}) | ~~~~~~~~~~~~~~~~~~~~~~ 1135 | .with_example({ | ~~~~~~~~~~~~~~~ 1136 | "To extract key/value pairs from a log message", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1137 | "SELECT logfmt2json('foo=1 bar=2 name=\"Rolo Tomassi\"')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1138 | })) | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = bool; Args = {const char*, const char*}; Return (* f)(Args ...) = startswith; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = bool; Args = {const char*, const char*}; Return (* f)(Args ...) = startswith]' 495 | }; | ^ string-extension-functions.cc:1145:20: required from here 1141 | sqlite_func_adapter< | ~~~~~~~~~~~~~~~~~~~~ 1142 | decltype(static_cast( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1143 | &startswith)), | ~~~~~~~~~~~~~~ 1144 | startswith>:: | ~~~~~~~~~~~~~ 1145 | builder(help_text("startswith", | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ 1146 | "Test if a string begins with the given prefix") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1147 | .sql_function() | ~~~~~~~~~~~~~~~ 1148 | .with_parameter({"str", "The string to test"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1149 | .with_parameter( | ~~~~~~~~~~~~~~~~ 1150 | {"prefix", "The prefix to check in the string"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1151 | .with_tags({"string"}) | ~~~~~~~~~~~~~~~~~~~~~~ 1152 | .with_example({ | ~~~~~~~~~~~~~~~ 1153 | "To test if the string 'foobar' starts with 'foo'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1154 | "SELECT startswith('foobar', 'foo')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1155 | }) | ~~ 1156 | .with_example({ | ~~~~~~~~~~~~~~~ 1157 | "To test if the string 'foobar' starts with 'bar'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1158 | "SELECT startswith('foobar', 'bar')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1159 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = bool; Args = {const char*, const char*}; Return (* f)(Args ...) = endswith; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = bool; Args = {const char*, const char*}; Return (* f)(Args ...) = endswith]' 495 | }; | ^ string-extension-functions.cc:1164:20: required from here 1161 | sqlite_func_adapter(&endswith)), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1163 | endswith>:: | ~~~~~~~~~~~ 1164 | builder( | ~~~~~~~^ 1165 | help_text("endswith", | ~~~~~~~~~~~~~~~~~~~~~ 1166 | "Test if a string ends with the given suffix") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1167 | .sql_function() | ~~~~~~~~~~~~~~~ 1168 | .with_parameter({"str", "The string to test"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1169 | .with_parameter( | ~~~~~~~~~~~~~~~~ 1170 | {"suffix", "The suffix to check in the string"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1171 | .with_tags({"string"}) | ~~~~~~~~~~~~~~~~~~~~~~ 1172 | .with_example({ | ~~~~~~~~~~~~~~~ 1173 | "To test if the string 'notbad.jpg' ends with '.jpg'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1174 | "SELECT endswith('notbad.jpg', '.jpg')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1175 | }) | ~~ 1176 | .with_example({ | ~~~~~~~~~~~~~~~ 1177 | "To test if the string 'notbad.png' starts with '.jpg'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1178 | "SELECT endswith('notbad.png', '.jpg')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1179 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::optional; Args = {const char*, const char*}; Return (* f)(Args ...) = {anonymous}::sql_fuzzy_match; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::optional; Args = {const char*, const char*}; Return (* f)(Args ...) = {anonymous}::sql_fuzzy_match]' 495 | }; | ^ string-extension-functions.cc:1182:20: required from here 1181 | sqlite_func_adapter:: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1182 | builder(help_text( | ~~~~~~~^~~~~~~~~~~ 1183 | "fuzzy_match", | ~~~~~~~~~~~~~~ 1184 | "Perform a fuzzy match of a pattern against a " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1185 | "string and return a score or NULL if the pattern was " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1186 | "not matched") | ~~~~~~~~~~~~~~ 1187 | .sql_function() | ~~~~~~~~~~~~~~~ 1188 | .with_parameter(help_text( | ~~~~~~~~~~~~~~~~~~~~~~~~~~ 1189 | "pattern", "The pattern to look for in the string")) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1190 | .with_parameter( | ~~~~~~~~~~~~~~~~ 1191 | help_text("str", "The string to match against")) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1192 | .with_tags({"string"}) | ~~~~~~~~~~~~~~~~~~~~~~ 1193 | .with_example({ | ~~~~~~~~~~~~~~~ 1194 | "To match the pattern 'fo' against 'filter-out'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1195 | "SELECT fuzzy_match('fo', 'filter-out')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1196 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = string_fragment; Args = {const std::vector >&}; Return (* f)(Args ...) = {anonymous}::spooky_hash; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = string_fragment; Args = {const std::vector >&}; Return (* f)(Args ...) = {anonymous}::spooky_hash]' 495 | }; | ^ string-extension-functions.cc:1198:74: required from here 1198 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 1199 | help_text("spooky_hash", | ~~~~~~~~~~~~~~~~~~~~~~~~ 1200 | "Compute the hash value for the given arguments.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1201 | .sql_function() | ~~~~~~~~~~~~~~~ 1202 | .with_parameter( | ~~~~~~~~~~~~~~~~ 1203 | help_text("str", "The string to hash").one_or_more()) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1204 | .with_tags({"string"}) | ~~~~~~~~~~~~~~~~~~~~~~ 1205 | .with_example({ | ~~~~~~~~~~~~~~~ 1206 | "To produce a hash for the string 'Hello, World!'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1207 | "SELECT spooky_hash('Hello, World!')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1208 | }) | ~~ 1209 | .with_example({ | ~~~~~~~~~~~~~~~ 1210 | "To produce a hash for the parameters where one is NULL", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1211 | "SELECT spooky_hash('Hello, World!', NULL)", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1212 | }) | ~~ 1213 | .with_example({ | ~~~~~~~~~~~~~~~ 1214 | "To produce a hash for the parameters where one " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1215 | "is an empty string", | ~~~~~~~~~~~~~~~~~~~~~ 1216 | "SELECT spooky_hash('Hello, World!', '')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1217 | }) | ~~ 1218 | .with_example({ | ~~~~~~~~~~~~~~~ 1219 | "To produce a hash for the parameters where one " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1220 | "is a number", | ~~~~~~~~~~~~~~ 1221 | "SELECT spooky_hash('Hello, World!', 123)", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1222 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::optional >; Args = {sqlite3_value*}; Return (* f)(Args ...) = {anonymous}::sql_gunzip; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::optional >; Args = {sqlite3_value*}; Return (* f)(Args ...) = {anonymous}::sql_gunzip]' 495 | }; | ^ string-extension-functions.cc:1224:72: required from here 1224 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 1225 | help_text("gunzip", "Decompress a gzip file") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1226 | .sql_function() | ~~~~~~~~~~~~~~~ 1227 | .with_parameter( | ~~~~~~~~~~~~~~~~ 1228 | help_text("b", "The blob to decompress").one_or_more()) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1229 | .with_tags({"string"})), | ~~~~~~~~~~~~~~~~~~~~~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::optional; Args = {sqlite3_value*}; Return (* f)(Args ...) = {anonymous}::sql_gzip; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::optional; Args = {sqlite3_value*}; Return (* f)(Args ...) = {anonymous}::sql_gzip]' 495 | }; | ^ string-extension-functions.cc:1231:68: required from here 1231 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 1232 | help_text("gzip", "Compress a string into a gzip file") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1233 | .sql_function() | ~~~~~~~~~~~~~~~ 1234 | .with_parameter( | ~~~~~~~~~~~~~~~~ 1235 | help_text("value", "The value to compress").one_or_more()) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1236 | .with_tags({"string"})), | ~~~~~~~~~~~~~~~~~~~~~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = mapbox::util::variant, null_value_t>; Args = {sqlite3_value*, encode_algo}; Return (* f)(Args ...) = {anonymous}::sql_encode; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = mapbox::util::variant, null_value_t>; Args = {sqlite3_value*, encode_algo}; Return (* f)(Args ...) = {anonymous}::sql_encode]' 495 | }; | ^ string-extension-functions.cc:1238:72: required from here 1238 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 1239 | help_text("encode", "Encode the value using the given algorithm") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1240 | .sql_function() | ~~~~~~~~~~~~~~~ 1241 | .with_parameter(help_text("value", "The value to encode")) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1242 | .with_parameter(help_text("algorithm", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1243 | "One of the following encoding " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1244 | "algorithms: base64, hex, uri")) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1245 | .with_tags({"string"}) | ~~~~~~~~~~~~~~~~~~~~~~ 1246 | .with_example({ | ~~~~~~~~~~~~~~~ 1247 | "To base64-encode 'Hello, World!'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1248 | "SELECT encode('Hello, World!', 'base64')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1249 | }) | ~~ 1250 | .with_example({ | ~~~~~~~~~~~~~~~ 1251 | "To hex-encode 'Hello, World!'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1252 | "SELECT encode('Hello, World!', 'hex')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1253 | }) | ~~ 1254 | .with_example({ | ~~~~~~~~~~~~~~~ 1255 | "To URI-encode 'Hello, World!'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1256 | "SELECT encode('Hello, World!', 'uri')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1257 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = mapbox::util::variant >; Args = {string_fragment, encode_algo}; Return (* f)(Args ...) = {anonymous}::sql_decode; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = mapbox::util::variant >; Args = {string_fragment, encode_algo}; Return (* f)(Args ...) = {anonymous}::sql_decode]' 495 | }; | ^ string-extension-functions.cc:1259:72: required from here 1259 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 1260 | help_text("decode", "Decode the value using the given algorithm") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1261 | .sql_function() | ~~~~~~~~~~~~~~~ 1262 | .with_parameter(help_text("value", "The value to decode")) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1263 | .with_parameter(help_text("algorithm", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1264 | "One of the following encoding " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1265 | "algorithms: base64, hex, uri")) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1266 | .with_tags({"string"}) | ~~~~~~~~~~~~~~~~~~~~~~ 1267 | .with_example({ | ~~~~~~~~~~~~~~~ 1268 | "To decode the URI-encoded string '%63%75%72%6c'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1269 | "SELECT decode('%63%75%72%6c', 'uri')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1270 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = json_string; Args = {std::__cxx11::basic_string, std::allocator >}; Return (* f)(Args ...) = {anonymous}::sql_parse_url; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = json_string; Args = {std::__cxx11::basic_string, std::allocator >}; Return (* f)(Args ...) = {anonymous}::sql_parse_url]' 495 | }; | ^ string-extension-functions.cc:1272:78: required from here 1272 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 1273 | help_text("parse_url", | ~~~~~~~~~~~~~~~~~~~~~~ 1274 | "Parse a URL and return the components in a JSON object. " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1275 | "Limitations: not all URL schemes are supported and " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1276 | "repeated query parameters are not captured.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1277 | .sql_function() | ~~~~~~~~~~~~~~~ 1278 | .with_parameter(help_text("url", "The URL to parse")) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1279 | .with_result({ | ~~~~~~~~~~~~~~ 1280 | "scheme", | ~~~~~~~~~ 1281 | "The URL's scheme", | ~~~~~~~~~~~~~~~~~~~ 1282 | }) | ~~ 1283 | .with_result({ | ~~~~~~~~~~~~~~ 1284 | "username", | ~~~~~~~~~~~ 1285 | "The name of the user specified in the URL", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1286 | }) | ~~ 1287 | .with_result({ | ~~~~~~~~~~~~~~ 1288 | "password", | ~~~~~~~~~~~ 1289 | "The password specified in the URL", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1290 | }) | ~~ 1291 | .with_result({ | ~~~~~~~~~~~~~~ 1292 | "host", | ~~~~~~~ 1293 | "The host name / IP specified in the URL", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1294 | }) | ~~ 1295 | .with_result({ | ~~~~~~~~~~~~~~ 1296 | "port", | ~~~~~~~ 1297 | "The port specified in the URL", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1298 | }) | ~~ 1299 | .with_result({ | ~~~~~~~~~~~~~~ 1300 | "path", | ~~~~~~~ 1301 | "The path specified in the URL", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1302 | }) | ~~ 1303 | .with_result({ | ~~~~~~~~~~~~~~ 1304 | "query", | ~~~~~~~~ 1305 | "The query string in the URL", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1306 | }) | ~~ 1307 | .with_result({ | ~~~~~~~~~~~~~~ 1308 | "parameters", | ~~~~~~~~~~~~~ 1309 | "An object containing the query parameters", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1310 | }) | ~~ 1311 | .with_result({ | ~~~~~~~~~~~~~~ 1312 | "fragment", | ~~~~~~~~~~~ 1313 | "The fragment specified in the URL", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1314 | }) | ~~ 1315 | .with_tags({"string", "url"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1316 | .with_example({ | ~~~~~~~~~~~~~~~ 1317 | "To parse the URL " | ~~~~~~~~~~~~~~~~~~~ 1318 | "'https://example.com/search?q=hello%20world'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1319 | "SELECT " | ~~~~~~~~~ 1320 | "parse_url('https://example.com/search?q=hello%20world')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1321 | }) | ~~ 1322 | .with_example({ | ~~~~~~~~~~~~~~~ 1323 | "To parse the URL " | ~~~~~~~~~~~~~~~~~~~ 1324 | "'https://alice@[fe80::14ff:4ee5:1215:2fb2]'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1325 | "SELECT " | ~~~~~~~~~ 1326 | "parse_url('https://alice@[fe80::14ff:4ee5:1215:2fb2]')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1327 | })) | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = auto_mem; Args = {string_fragment}; Return (* f)(Args ...) = {anonymous}::sql_unparse_url; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = auto_mem; Args = {string_fragment}; Return (* f)(Args ...) = {anonymous}::sql_unparse_url]' 495 | }; | ^ string-extension-functions.cc:1331:20: required from here 1330 | sqlite_func_adapter:: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1331 | builder( | ~~~~~~~^ 1332 | help_text("unparse_url", | ~~~~~~~~~~~~~~~~~~~~~~~~ 1333 | "Convert a JSON object containing the parts of a " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1334 | "URL into a URL string") | ~~~~~~~~~~~~~~~~~~~~~~~~ 1335 | .sql_function() | ~~~~~~~~~~~~~~~ 1336 | .with_parameter(help_text( | ~~~~~~~~~~~~~~~~~~~~~~~~~~ 1337 | "obj", "The JSON object containing the URL parts")) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1338 | .with_tags({"string", "url"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1339 | .with_example({ | ~~~~~~~~~~~~~~~ 1340 | "To unparse the object " | ~~~~~~~~~~~~~~~~~~~~~~~~ 1341 | "'{\"scheme\": \"https\", \"host\": \"example.com\"}'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1342 | "SELECT " | ~~~~~~~~~ 1343 | "unparse_url('{\"scheme\": \"https\", \"host\": " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1344 | "\"example.com\"}')", | ~~~~~~~~~~~~~~~~~~~~~ 1345 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::__cxx11::basic_string; Args = {string_fragment}; Return (* f)(Args ...) = sql_pretty_print; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::__cxx11::basic_string; Args = {string_fragment}; Return (* f)(Args ...) = sql_pretty_print]' 495 | }; | ^ string-extension-functions.cc:1348:20: required from here 1347 | sqlite_func_adapter:: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1348 | builder( | ~~~~~~~^ 1349 | help_text("pretty_print", "Pretty-print the given string") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1350 | .sql_function() | ~~~~~~~~~~~~~~~ 1351 | .with_prql_path({"text", "pretty"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1352 | .with_parameter(help_text("str", "The string to format")) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1353 | .with_tags({"string"}) | ~~~~~~~~~~~~~~~~~~~~~~ 1354 | .with_example({ | ~~~~~~~~~~~~~~~ 1355 | "To pretty-print the string " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1356 | "'{\"scheme\": \"https\", \"host\": \"example.com\"}'", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1357 | "SELECT " | ~~~~~~~~~ 1358 | "pretty_print('{\"scheme\": \"https\", \"host\": " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1359 | "\"example.com\"}')", | ~~~~~~~~~~~~~~~~~~~~~ 1360 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int CXX view_helpers.o CXX views_vtab.o CXX vtab_module.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from text_overlay_menu.cc:34: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from time-extension-functions.cc:42: ptimec.hh: In function 'void ftime_s(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:366:51: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 366 | snprintf(&dst[off_inout], len - off_inout, "%ld", t); | ~~^ ~ | | | | | time_t {aka long long int} | long int | %lld ptimec.hh: In function 'void ftime_q(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:424:51: warning: format '%lx' expects argument of type 'long unsigned int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 424 | snprintf(&dst[off_inout], len - off_inout, "%lx", t); | ~~^ ~ | | | | | time_t {aka long long int} | long unsigned int | %llx CXX log_vtab_impl.o CXX xml_util.o ptimec.hh: In function 'void ftime_f(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:1211:28: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 1211 | for (auto lpc = 0; lpc < out_len; lpc++) { | ~~~~^~~~~~~~~ CXX xpath_vtab.o CXX xterm_mouse.o CXX yaml-extension-functions.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from state-extension-functions.cc:38: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX animals-json.o textinput_curses.cc: In member function 'virtual bool textinput_curses::handle_mouse(mouse_event&)': textinput_curses.cc:391:44: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 391 | y <= range->sr_end.y && y < this->tc_lines.size(); | ~~^~~~~~~~~~~~~~~~~~~~~~~ CXX ansi-palette-json.o CXX builtin-scripts.o textinput_curses.cc: In member function 'std::string textinput_curses::replace_selection_no_change(string_fragment)': textinput_curses.cc:1632:51: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 1632 | curr_line <= range.sr_end.y && curr_line < this->tc_lines.size(); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ CXX builtin-sh-scripts.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from sql_commands.cc:40: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX css-color-names-json.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from textinput.history.cc:38: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from time-extension-functions.cc:45: vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::optional; Args = {sqlite3_value*, std::optional}; Return (* f)(Args ...) = timeslice; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::optional; Args = {sqlite3_value*, std::optional}; Return (* f)(Args ...) = timeslice]' 495 | }; | ^ time-extension-functions.cc:264:70: required from here 264 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 265 | help_text( | ~~~~~~~~~~ 266 | "timeslice", | ~~~~~~~~~~~~ 267 | "Return the start of the slice of time that the given " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 268 | "timestamp falls in. " | ~~~~~~~~~~~~~~~~~~~~~~~ 269 | "If the time falls outside of the slice, NULL is returned.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 270 | .sql_function() | ~~~~~~~~~~~~~~~ 271 | .with_prql_path({"time", "slice"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 272 | .with_parameter( | ~~~~~~~~~~~~~~~~ 273 | {"time", "The timestamp to get the time slice for."}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 274 | .with_parameter({"slice", "The size of the time slices"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 275 | .with_tags({"datetime"}) | ~~~~~~~~~~~~~~~~~~~~~~~~ 276 | .with_example({ | ~~~~~~~~~~~~~~~ 277 | "To get the timestamp rounded down to the start of the " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 278 | "ten minute slice", | ~~~~~~~~~~~~~~~~~~~ 279 | "SELECT timeslice('2017-01-01T05:05:00', '10m')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 280 | }) | ~~ 281 | .with_example({ | ~~~~~~~~~~~~~~~ 282 | "To group log messages into five minute buckets and count " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 283 | "them", | ~~~~~~~ 284 | "SELECT timeslice(log_time_msecs, '5m') AS slice, " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 285 | "count(1)\n FROM lnav_example_log GROUP BY slice", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 286 | }) | ~~ 287 | .with_example({ | ~~~~~~~~~~~~~~~ 288 | "To group log messages by those before 4:30am and after", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 289 | "SELECT timeslice(log_time_msecs, 'before 4:30am') AS " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 290 | "slice, count(1) FROM lnav_example_log GROUP BY slice", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 291 | })), | ~~~ vtab_module.hh:456:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 456 | "%s() expects between %ld and %ld arguments", | ~~^ | | | long int | %d 457 | fd->fd_help.ht_name, 458 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh:456:58: warning: format '%ld' expects argument of type 'long int', but argument 6 has type 'unsigned int' [-Wformat=] 456 | "%s() expects between %ld and %ld arguments", | ~~^ | | | long int | %d ...... 459 | REQ_COUNT + OPT_COUNT); | ~~~~~~~~~~~~~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::optional; Args = {string_fragment, string_fragment}; Return (* f)(Args ...) = sql_timediff; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::optional; Args = {string_fragment, string_fragment}; Return (* f)(Args ...) = sql_timediff]' 495 | }; | ^ time-extension-functions.cc:293:76: required from here 293 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 294 | help_text( | ~~~~~~~~~~ 295 | "timediff", | ~~~~~~~~~~~ 296 | "Compute the difference between two timestamps in seconds") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 297 | .sql_function() | ~~~~~~~~~~~~~~~ 298 | .with_prql_path({"time", "diff"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 299 | .with_parameter({"time1", "The first timestamp"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 300 | .with_parameter( | ~~~~~~~~~~~~~~~~ 301 | {"time2", "The timestamp to subtract from the first"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 302 | .with_tags({"datetime"}) | ~~~~~~~~~~~~~~~~~~~~~~~~ 303 | .with_example({ | ~~~~~~~~~~~~~~~ 304 | "To get the difference between two timestamps", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 305 | "SELECT timediff('2017-02-03T04:05:06', " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 306 | "'2017-02-03T04:05:00')", | ~~~~~~~~~~~~~~~~~~~~~~~~~ 307 | }) | ~~ 308 | .with_example({ | ~~~~~~~~~~~~~~~ 309 | "To get the difference between relative timestamps", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 310 | "SELECT timediff('today', 'yesterday')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 311 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::__cxx11::basic_string; Args = {double}; Return (* f)(Args ...) = sql_humanize_duration; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::__cxx11::basic_string; Args = {double}; Return (* f)(Args ...) = sql_humanize_duration]' 495 | }; | ^ time-extension-functions.cc:315:20: required from here 313 | sqlite_func_adapter:: | ~~~~~~~~~~~~~~~~~~~~~~~~ 315 | builder( | ~~~~~~~^ 316 | help_text("humanize_duration", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 317 | "Format the given seconds value as an abbreviated " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 318 | "duration string") | ~~~~~~~~~~~~~~~~~~ 319 | .sql_function() | ~~~~~~~~~~~~~~~ 320 | .with_prql_path({"humanize", "duration"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 321 | .with_parameter({"secs", "The duration in seconds"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 322 | .with_tags({"datetime", "string"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 323 | .with_example({ | ~~~~~~~~~~~~~~~ 324 | "To format a duration", | ~~~~~~~~~~~~~~~~~~~~~~~ 325 | "SELECT humanize_duration(15 * 60)", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 326 | }) | ~~ 327 | .with_example({ | ~~~~~~~~~~~~~~~ 328 | "To format a sub-second value", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 329 | "SELECT humanize_duration(1.5)", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 330 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::optional >; Args = {std::__cxx11::basic_string, std::allocator >, string_fragment}; Return (* f)(Args ...) = sql_timezone; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::optional >; Args = {std::__cxx11::basic_string, std::allocator >, string_fragment}; Return (* f)(Args ...) = sql_timezone]' 495 | }; | ^ time-extension-functions.cc:332:76: required from here 332 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 333 | help_text("timezone", "Convert a timestamp to the given timezone") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 334 | .sql_function() | ~~~~~~~~~~~~~~~ 335 | .with_prql_path({"time", "to_zone"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 336 | .with_parameter({"tz", "The target timezone"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 337 | .with_parameter({"ts", "The source timestamp"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 338 | .with_tags({"datetime", "string"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 339 | .with_example({ | ~~~~~~~~~~~~~~~ 340 | "To convert a time to America/Los_Angeles", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 341 | "SELECT timezone('America/Los_Angeles', " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 342 | "'2022-03-02T10:00')", | ~~~~~~~~~~~~~~~~~~~~~~ 343 | })), | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int view_curses.cc: In static member function 'static view_curses::mvwattrline_result view_curses::mvwattrline(ncplane*, int, int, attr_line_t&, const line_range&, role_t)': view_curses.cc:282:24: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 282 | if (y < 0 || y >= rows || x < 0 || x >= cols) { | ~~^~~~~~~ view_curses.cc:282:46: warning: comparison of integer expressions of different signedness: 'const int' and 'unsigned int' [-Wsign-compare] 282 | if (y < 0 || y >= rows || x < 0 || x >= cols) { | ~~^~~~~~~ view_curses.cc:284:43: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 284 | } else if ((x + line_width_chars) > cols) { | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ CXX default-config.o textview_curses.cc:184:70: warning: 'no_sanitize_address' attribute ignored [-Wattributes] 184 | const DIST_SLICE(bm_types) bookmark_type_t textview_curses::BM_ERRORS("error"); | ^ textview_curses.cc:186:49: warning: 'no_sanitize_address' attribute ignored [-Wattributes] 186 | bookmark_type_t textview_curses::BM_WARNINGS("warning"); | ^ textview_curses.cc:187:68: warning: 'no_sanitize_address' attribute ignored [-Wattributes] 187 | const DIST_SLICE(bm_types) bookmark_type_t textview_curses::BM_USER("user"); | ^ textview_curses.cc:189:50: warning: 'no_sanitize_address' attribute ignored [-Wattributes] 189 | bookmark_type_t textview_curses::BM_USER_EXPR("user-expr"); | ^ textview_curses.cc:190:70: warning: 'no_sanitize_address' attribute ignored [-Wattributes] 190 | const DIST_SLICE(bm_types) bookmark_type_t textview_curses::BM_SEARCH("search"); | ^ textview_curses.cc:191:68: warning: 'no_sanitize_address' attribute ignored [-Wattributes] 191 | const DIST_SLICE(bm_types) bookmark_type_t textview_curses::BM_META("meta"); | ^ textview_curses.cc:193:50: warning: 'no_sanitize_address' attribute ignored [-Wattributes] 193 | bookmark_type_t textview_curses::BM_PARTITION("partition"); | ^ CXX default-formats.o textview_curses.cc: In member function 'virtual bool textview_curses::handle_mouse(mouse_event&)': textview_curses.cc:435:47: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector >::size_type' {aka 'unsigned int'} [-Wsign-compare] 435 | auto mouse_line = (me.me_y < 0 || me.me_y >= this->lv_display_lines.size()) | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ textview_curses.cc:626:44: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] 626 | } else if (me.me_x >= width - 1) { | ~~~~~~~~^~~~~~~~~~~~ In file included from log_vtab_impl.hh:42, from lnav.hh:54, from top_status_source.cc:33: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX diseases-json.o In file included from state-extension-functions.cc:41: vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::optional; Args = {}; Return (* f)(Args ...) = sql_log_top_line; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::optional; Args = {}; Return (* f)(Args ...) = sql_log_top_line]' 495 | }; | ^ state-extension-functions.cc:162:20: required from here 161 | sqlite_func_adapter:: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 162 | builder( | ~~~~~~~^ 163 | help_text( | ~~~~~~~~~~ 164 | "log_top_line", | ~~~~~~~~~~~~~~~ 165 | "Return the number of the focused line of the log view.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 166 | .sql_function() | ~~~~~~~~~~~~~~~ 167 | .with_prql_path({"lnav", "view", "top_line"})), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::optional; Args = {}; Return (* f)(Args ...) = sql_log_msg_line; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::optional; Args = {}; Return (* f)(Args ...) = sql_log_msg_line]' 495 | }; | ^ state-extension-functions.cc:170:20: required from here 169 | sqlite_func_adapter:: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 170 | builder(help_text("log_msg_line", | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ 171 | "Return the starting line number of the focused " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 172 | "log message.") | ~~~~~~~~~~~~~~~ 173 | .sql_function() | ~~~~~~~~~~~~~~~ 174 | .with_prql_path({"lnav", "view", "msg_line"})), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::optional >; Args = {}; Return (* f)(Args ...) = sql_log_top_datetime; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::optional >; Args = {}; Return (* f)(Args ...) = sql_log_top_datetime]' 495 | }; | ^ state-extension-functions.cc:178:20: required from here 176 | sqlite_func_adapter:: | ~~~~~~~~~~~~~~~~~~~~~~~ 178 | builder(help_text("log_top_datetime", | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 179 | "Return the timestamp of the line at the top of " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 180 | "the log view.") | ~~~~~~~~~~~~~~~~ 181 | .sql_function() | ~~~~~~~~~~~~~~~ 182 | .with_prql_path({"lnav", "view", "top_datetime"})), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::optional >; Args = {}; Return (* f)(Args ...) = sql_lnav_top_file; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::optional >; Args = {}; Return (* f)(Args ...) = sql_lnav_top_file]' 495 | }; | ^ state-extension-functions.cc:185:20: required from here 184 | sqlite_func_adapter:: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 185 | builder(help_text("lnav_top_file", | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ 186 | "Return the name of the file that the top line " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 187 | "in the current view came from.") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 188 | .sql_function() | ~~~~~~~~~~~~~~~ 189 | .with_prql_path({"lnav", "view", "top_file"})), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = const char*; Args = {}; Return (* f)(Args ...) = sql_lnav_version; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = const char*; Args = {}; Return (* f)(Args ...) = sql_lnav_version]' 495 | }; | ^ state-extension-functions.cc:192:20: required from here 191 | sqlite_func_adapter:: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 192 | builder( | ~~~~~~~^ 193 | help_text("lnav_version", "Return the current version of lnav") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 194 | .sql_function() | ~~~~~~~~~~~~~~~ 195 | .with_prql_path({"lnav", "version"})), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = long long int; Args = {const char*, std::optional}; Return (* f)(Args ...) = sql_error; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = long long int; Args = {const char*, std::optional}; Return (* f)(Args ...) = sql_error]' 495 | }; | ^ state-extension-functions.cc:197:70: required from here 197 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 198 | help_text("raise_error", | ~~~~~~~~~~~~~~~~~~~~~~~~ 199 | "Raises an error with the given message when executed") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 200 | .sql_function() | ~~~~~~~~~~~~~~~ 201 | .with_parameter({"msg", "The error message"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 202 | .with_parameter( | ~~~~~~~~~~~~~~~~ 203 | help_text("reason", "The reason the error occurred") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 204 | .optional()) | ~~~~~~~~~~~~ 205 | .with_example({ | ~~~~~~~~~~~~~~~ 206 | "To raise an error if a variable is not set", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 207 | "SELECT ifnull($val, raise_error('please set $val', " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 208 | "'because'))", | ~~~~~~~~~~~~~~ 209 | })) | ~~~ vtab_module.hh:456:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 456 | "%s() expects between %ld and %ld arguments", | ~~^ | | | long int | %d 457 | fd->fd_help.ht_name, 458 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh:456:58: warning: format '%ld' expects argument of type 'long int', but argument 6 has type 'unsigned int' [-Wformat=] 456 | "%s() expects between %ld and %ld arguments", | ~~^ | | | long int | %d ...... 459 | REQ_COUNT + OPT_COUNT); | ~~~~~~~~~~~~~~~~~~~~~ | | | unsigned int vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = std::optional >; Args = {std::optional, std::allocator > >}; Return (* f)(Args ...) = sql_echoln; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = std::optional >; Args = {std::optional, std::allocator > >}; Return (* f)(Args ...) = sql_echoln]' 495 | }; | ^ state-extension-functions.cc:212:72: required from here 212 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 213 | help_text("echoln", | ~~~~~~~~~~~~~~~~~~~ 214 | "Echo the argument to the current output file and return " | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 215 | "it") | ~~~~~ 216 | .sql_function() | ~~~~~~~~~~~~~~~ 217 | .with_parameter( | ~~~~~~~~~~~~~~~~ 218 | {"value", "The value to write to the current output file"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 219 | .with_tags({"io"})) | ~~~~~~~~~~~~~~~~~~~ vtab_module.hh:456:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 456 | "%s() expects between %ld and %ld arguments", | ~~^ | | | long int | %d 457 | fd->fd_help.ht_name, 458 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int vtab_module.hh:456:58: warning: format '%ld' expects argument of type 'long int', but argument 6 has type 'unsigned int' [-Wformat=] 456 | "%s() expects between %ld and %ld arguments", | ~~^ | | | long int | %d ...... 459 | REQ_COUNT + OPT_COUNT); | ~~~~~~~~~~~~~~~~~~~~~ | | | unsigned int In file included from logfile.hh:51, from logfile.cc:35: In lambda function, inlined from 'static R mapbox::util::detail::dispatcher::apply(V&&, F&&) [with V = mapbox::util::variant&; F = mapbox::util::visitor, logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)::, logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&):: >; R = void; T = log_format::scan_no_match; Types = {log_format::scan_incomplete}]' at ./mapbox/variant.hpp:339:38, inlined from 'static R mapbox::util::detail::dispatcher::apply(V&&, F&&) [with V = mapbox::util::variant&; F = mapbox::util::visitor, logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)::, logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&):: >; R = void; T = log_format::scan_match; Types = {log_format::scan_no_match, log_format::scan_incomplete}]' at ./mapbox/variant.hpp:343:50, inlined from 'static R mapbox::util::variant::visit(V&&, F&&) [with F = mapbox::util::visitor, logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)::, logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&):: >; V = mapbox::util::variant&; T0 = log_format::scan_match&; R = void; Types = {log_format::scan_match, log_format::scan_no_match, log_format::scan_incomplete}]' at ./mapbox/variant.hpp:854:54, inlined from 'decltype (mapbox::util::variant::visit((*(mapbox::util::variant*)this), mapbox::util::make_visitor((forward)(mapbox::util::variant::match::fs)...))) mapbox::util::variant::match(Fs&& ...) & [with Fs = {logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)::, logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)::, logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)::}; Types = {log_format::scan_match, log_format::scan_no_match, log_format::scan_incomplete}]' at ./mapbox/variant.hpp:880:30, inlined from 'bool logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)' at logfile.cc:459:27: logfile.cc:542:33: warning: '*(const log_format::scan_match*)((char*)&scan_res + offsetof(mapbox::util::scan_result_t, mapbox::util::variant::data.std::aligned_storage<8, 4>::type::__data[0])).log_format::scan_match::sm_quality' may be used uninitialized [-Wmaybe-uninitialized] 542 | snm.snm_reason); | ~~~~^~~~~~~~~~ base/lnav_log.hh:120:48: note: in definition of macro 'log_msg_wrapper' 120 | log_msg(level, __FILE__, __LINE__, fmt); \ | ^~~ logfile.cc:539:25: note: in expansion of macro 'log_trace' 539 | log_trace( | ^~~~~~~~~ logfile.cc: In member function 'bool logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)': logfile.cc:448:39: note: '*(const log_format::scan_match*)((char*)&scan_res + offsetof(mapbox::util::scan_result_t, mapbox::util::variant::data.std::aligned_storage<8, 4>::type::__data[0])).log_format::scan_match::sm_quality' was declared here 448 | log_format::scan_result_t scan_res{mapbox::util::no_init{}}; | ^~~~~~~~ In lambda function, inlined from 'static R mapbox::util::detail::dispatcher::apply(V&&, F&&) [with V = mapbox::util::variant&; F = mapbox::util::visitor, logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)::, logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&):: >; R = void; T = log_format::scan_match; Types = {log_format::scan_no_match, log_format::scan_incomplete}]' at ./mapbox/variant.hpp:339:38, inlined from 'static R mapbox::util::variant::visit(V&&, F&&) [with F = mapbox::util::visitor, logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)::, logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&):: >; V = mapbox::util::variant&; T0 = log_format::scan_match&; R = void; Types = {log_format::scan_match, log_format::scan_no_match, log_format::scan_incomplete}]' at ./mapbox/variant.hpp:854:54, inlined from 'decltype (mapbox::util::variant::visit((*(mapbox::util::variant*)this), mapbox::util::make_visitor((forward)(mapbox::util::variant::match::fs)...))) mapbox::util::variant::match(Fs&& ...) & [with Fs = {logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)::, logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)::, logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)::}; Types = {log_format::scan_match, log_format::scan_no_match, log_format::scan_incomplete}]' at ./mapbox/variant.hpp:880:30, inlined from 'bool logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)' at logfile.cc:459:27: logfile.cc:478:40: warning: '*(const log_format::scan_match*)((char*)&scan_res + offsetof(mapbox::util::scan_result_t, mapbox::util::variant::data.std::aligned_storage<8, 4>::type::__data[0])).log_format::scan_match::sm_strikes' may be used uninitialized [-Wmaybe-uninitialized] 476 | || (sm.sm_quality | ~~~~~~~~~~~~~~ 477 | == best_match->second.sm_quality | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 478 | && sm.sm_strikes | ^~~~~~~~~~~~~~~~ 479 | < best_match->second.sm_strikes))) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ logfile.cc: In member function 'bool logfile::process_prefix(shared_buffer_ref&, const line_info&, scan_batch_context&)': logfile.cc:448:39: note: '*(const log_format::scan_match*)((char*)&scan_res + offsetof(mapbox::util::scan_result_t, mapbox::util::variant::data.std::aligned_storage<8, 4>::type::__data[0])).log_format::scan_match::sm_strikes' was declared here 448 | log_format::scan_result_t scan_res{mapbox::util::no_init{}}; | ^~~~~~~~ CXX emojis-json.o CXX words-json.o CXX help-md.o In file included from timeline_source.hh:39, from timeline_source.cc:32: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX init-sql.o CXX prql-modules.o CXX terminfo-files.o CXX time_fmts.o CXX xml-entities-json.o CXX xterm-palette-json.o CXX data_scanner.o timeline_source.cc: In member function 'virtual std::vector timeline_preview_overlay::list_overlay_menu(const listview_curses&, vis_line_t)': timeline_source.cc:146:27: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] 146 | if (left + MENU_WIDTH >= dim.second) { | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ timeline_source.cc: In member function 'virtual void timeline_header_overlay::list_value_for_overlay(const listview_curses&, vis_line_t, std::vector&)': timeline_source.cc:316:14: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector >::size_type' {aka 'unsigned int'} [-Wsign-compare] 316 | if (line >= this->gho_src->gs_time_order.size()) { | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX data_scanner_re.o CC test_override.o CC third-party/md4c/md4c.o timeline_source.cc: In member function 'bool timeline_source::rebuild_indexes()': timeline_source.cc:704:21: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'unsigned int'} [-Wsign-compare] 703 | if (sub.ostr_subid.length() | ~~~~~~~~~~~~~~~~~~~~~~~ 704 | > active_iter->second.or_max_subid_width) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ timeline_source.cc:841:42: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'unsigned int'} [-Wsign-compare] 841 | if (pair.second.or_name.length() > this->gs_opid_width) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ CXX third-party/prqlc-c/prqlc.cxx.o timeline_source.cc: In member function 'virtual std::optional timeline_source::time_for_row(vis_line_t)': timeline_source.cc:932:13: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector >::size_type' {aka 'unsigned int'} [-Wsign-compare] 932 | if (row >= this->gs_time_order.size()) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ timeline_source.cc:941:38: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 941 | if (ov_sel && ov_sel.value() < otr.otr_sub_ops.size()) { | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ timeline_source.cc: In member function 'virtual void timeline_source::text_selection_changed(textview_curses&)': timeline_source.cc:978:29: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector >::size_type' {aka 'unsigned int'} [-Wsign-compare] 978 | if (!sel || sel.value() >= this->gs_time_order.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ timeline_source.cc: In member function 'virtual void timeline_source::text_crumbs_for_line(int, std::vector&)': timeline_source.cc:1109:14: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector >::size_type' {aka 'unsigned int'} [-Wsign-compare] 1109 | if (line >= this->gs_time_order.size()) { | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CC third-party/sqlite/ext/dbdump.o CC third-party/sqlite/ext/series.o CXX spookyhash/SpookyV2.o In file included from log_vtab_impl.hh:42, from lnav.hh:54, from views_vtab.cc:40: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from time_fmts.cc:4: ptimec.hh: In function 'void ftime_s(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:366:51: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 366 | snprintf(&dst[off_inout], len - off_inout, "%ld", t); | ~~^ ~ | | | | | time_t {aka long long int} | long int | %lld ptimec.hh: In function 'void ftime_q(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:424:51: warning: format '%lx' expects argument of type 'long unsigned int', but argument 4 has type 'time_t' {aka 'long long int'} [-Wformat=] 424 | snprintf(&dst[off_inout], len - off_inout, "%lx", t); | ~~^ ~ | | | | | time_t {aka long long int} | long unsigned int | %llx ptimec.hh: In function 'void ftime_f(char*, off_t&, ssize_t, const exttm&)': ptimec.hh:1211:28: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 1211 | for (auto lpc = 0; lpc < out_len; lpc++) { | ~~~~^~~~~~~~~ In file included from yaml-extension-functions.cc:39: vtab_module.hh: In instantiation of 'static void sqlite_func_adapter::func1(sqlite3_context*, int, sqlite3_value**) [with Return = json_string; Args = {string_fragment}; Return (* f)(Args ...) = yaml_to_json; sqlite3_context = sqlite3_context; sqlite3_value = sqlite3_value]': vtab_module.hh:495:9: required from 'static FuncDef sqlite_func_adapter::builder(help_text) [with Return = json_string; Args = {string_fragment}; Return (* f)(Args ...) = yaml_to_json]' 495 | }; | ^ yaml-extension-functions.cc:91:76: required from here 91 | sqlite_func_adapter::builder( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 92 | help_text("yaml_to_json", | ~~~~~~~~~~~~~~~~~~~~~~~~~ 93 | "Convert a YAML document to a JSON-encoded string") | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 94 | .sql_function() | ~~~~~~~~~~~~~~~ 95 | .with_prql_path({"yaml", "to_json"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 | .with_parameter({"yaml", "The YAML value to convert to JSON."}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 97 | .with_tags({"json", "yaml"}) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 98 | .with_example({ | ~~~~~~~~~~~~~~~ 99 | "To convert the document \"abc: def\"", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 100 | "SELECT yaml_to_json('abc: def')", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 101 | })) | ~~~ vtab_module.hh:449:50: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'unsigned int' [-Wformat=] 449 | "%s() expects exactly %ld argument%s", | ~~^ | | | long int | %d 450 | fd->fd_help.ht_name, 451 | REQ_COUNT, | ~~~~~~~~~ | | | unsigned int In function 'md_is_link_reference_definition', inlined from 'md_consume_link_reference_definitions' at third-party/md4c/md4c.c:5081:28, inlined from 'md_end_current_block' at third-party/md4c/md4c.c:5130:13: third-party/md4c/md4c.c:2239:7: warning: 'label_contents_line_index' may be used uninitialized [-Wmaybe-uninitialized] 2239 | if(label_is_multiline) { | ^ third-party/md4c/md4c.c: In function 'md_end_current_block': third-party/md4c/md4c.c:2158:13: note: 'label_contents_line_index' was declared here 2158 | MD_SIZE label_contents_line_index; | ^~~~~~~~~~~~~~~~~~~~~~~~~ In file included from log_vtab_impl.hh:42, from log_vtab_impl.cc:30: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from log_vtab_impl.hh:42, from lnav.hh:54, from view_helpers.cc:45: logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from log_vtab_impl.cc:41: ../src/third-party/scnlib/include/scn/ranges.h: At global scope: ../src/third-party/scnlib/include/scn/ranges.h:75:41: warning: self-comparison always evaluates to true [-Wtautological-compare] 75 | std::integer_sequence); | ~~~^~~~~ textinput_curses.cc: In member function 'void textinput_curses::command_indent(indent_mode_t)': textinput_curses.cc:768:31: warning: 'indent_amount' may be used uninitialized [-Wmaybe-uninitialized] 768 | indent_amount += *indent_iter; | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ textinput_curses.cc:739:9: note: 'indent_amount' was declared here 739 | int indent_amount; | ^~~~~~~~~~~~~ AR libdiag.a ar: `u' modifier ignored since `D' is the default (see `U') AR libdatascanner.a ar: `u' modifier ignored since `D' is the default (see `U') CXXLD lnav CXXLD lnav-test if test -w ./internals; then \ env DUMP_INTERNALS_DIR=./internals DUMP_CRASH=1 ./lnav Makefile; \ mv ./internals/*.schema.json ../docs/schemas; \ fi make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src' make[2]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src' make[1]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src' Making all in test make[1]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test' Making all in expected make[2]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test/expected' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test/expected' make[2]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test' CXX test_stubs.o In file included from ../src/log_vtab_impl.hh:42, from ../src/lnav.hh:54, from test_stubs.cc:33: ../src/logfile_sub_source.hh: In member function 'std::optional logfile_sub_source::find_bookmark_metadata(vis_line_t) const': ../src/logfile_sub_source.hh:375:16: warning: comparison of integer expressions of different signedness: 'const int' and 'std::vector::size_type' {aka 'unsigned int'} [-Wsign-compare] 375 | if (vl >= this->lss_filtered_index.size()) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ AR libtestdummy.a ar: `u' modifier ignored since `D' is the default (see `U') make[2]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test' make[1]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test' make[1]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1' make[1]: Nothing to be done for 'all-am'. make[1]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1' >>> lnav: Entering fakeroot... Making install in tools make[1]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/tools' make[2]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/tools' make[2]: Nothing to be done for 'install-exec-am'. make[2]: Nothing to be done for 'install-data-am'. make[2]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/tools' make[1]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/tools' Making install in src make[1]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src' make install-recursive make[2]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src' Making install in fmtlib make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/fmtlib' make[4]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/fmtlib' make[4]: Nothing to be done for 'install-exec-am'. make[4]: Nothing to be done for 'install-data-am'. make[4]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/fmtlib' make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/fmtlib' Making install in third-party/base64/lib make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/base64/lib' make[4]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/base64/lib' make[4]: Nothing to be done for 'install-exec-am'. make[4]: Nothing to be done for 'install-data-am'. make[4]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/base64/lib' make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/base64/lib' Making install in third-party/date/src make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/date/src' make[4]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/date/src' make[4]: Nothing to be done for 'install-exec-am'. make[4]: Nothing to be done for 'install-data-am'. make[4]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/date/src' make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/date/src' Making install in third-party/notcurses/src/lib make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/notcurses/src/lib' make[4]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/notcurses/src/lib' make[4]: Nothing to be done for 'install-exec-am'. make[4]: Nothing to be done for 'install-data-am'. make[4]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/notcurses/src/lib' make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/notcurses/src/lib' Making install in third-party/scnlib/src make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/scnlib/src' make[4]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/scnlib/src' make[4]: Nothing to be done for 'install-exec-am'. make[4]: Nothing to be done for 'install-data-am'. make[4]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/scnlib/src' make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/third-party/scnlib/src' Making install in pcrepp make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/pcrepp' make[4]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/pcrepp' make[4]: Nothing to be done for 'install-exec-am'. make[4]: Nothing to be done for 'install-data-am'. make[4]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/pcrepp' make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/pcrepp' Making install in base make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/base' make[4]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/base' make[4]: Nothing to be done for 'install-exec-am'. make[4]: Nothing to be done for 'install-data-am'. make[4]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/base' make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/base' Making install in tailer make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/tailer' make install-am make[4]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/tailer' make[5]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/tailer' make[5]: Nothing to be done for 'install-exec-am'. make[5]: Nothing to be done for 'install-data-am'. make[5]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/tailer' make[4]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/tailer' make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/tailer' Making install in pugixml make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/pugixml' make[4]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/pugixml' make[4]: Nothing to be done for 'install-exec-am'. make[4]: Nothing to be done for 'install-data-am'. make[4]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/pugixml' make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/pugixml' Making install in yajl make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/yajl' make[4]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/yajl' make[4]: Nothing to be done for 'install-exec-am'. make[4]: Nothing to be done for 'install-data-am'. make[4]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/yajl' make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/yajl' Making install in yajlpp make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/yajlpp' make[4]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/yajlpp' make[4]: Nothing to be done for 'install-exec-am'. make[4]: Nothing to be done for 'install-data-am'. make[4]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/yajlpp' make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/yajlpp' Making install in formats/logfmt make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/formats/logfmt' make[4]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/formats/logfmt' make[4]: Nothing to be done for 'install-exec-am'. make[4]: Nothing to be done for 'install-data-am'. make[4]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/formats/logfmt' make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src/formats/logfmt' Making install in . make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src' if test -w ./internals; then \ env DUMP_INTERNALS_DIR=./internals DUMP_CRASH=1 ./lnav Makefile; \ mv ./internals/*.schema.json ../docs/schemas; \ fi make[4]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src' make[4]: Nothing to be done for 'install-data-am'. .././install-sh -c -d '/home/buildozer/aports/community/lnav/pkg/lnav/usr/bin' /usr/bin/install -c lnav '/home/buildozer/aports/community/lnav/pkg/lnav/usr/bin' make[4]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src' make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src' make[2]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src' make[1]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/src' Making install in test make[1]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test' Making install in expected make[2]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test/expected' make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test/expected' make[3]: Nothing to be done for 'install-exec-am'. make[3]: Nothing to be done for 'install-data-am'. make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test/expected' make[2]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test/expected' make[2]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test' make[3]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test' make[3]: Nothing to be done for 'install-exec-am'. make[3]: Nothing to be done for 'install-data-am'. make[3]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test' make[2]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test' make[1]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1/test' make[1]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1' make[2]: Entering directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1' make[2]: Nothing to be done for 'install-exec-am'. ./install-sh -c -d '/home/buildozer/aports/community/lnav/pkg/lnav/usr/share/man/man1' /usr/bin/install -c -m 644 lnav.1 '/home/buildozer/aports/community/lnav/pkg/lnav/usr/share/man/man1' make[2]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1' make[1]: Leaving directory '/home/buildozer/aports/community/lnav/src/lnav-0.13.1' >>> lnav-doc*: Running split function doc... 'usr/share/man' -> '/home/buildozer/aports/community/lnav/pkg/lnav-doc/usr/share/man' >>> lnav-doc*: Preparing subpackage lnav-doc... >>> lnav-doc*: Running postcheck for lnav-doc >>> lnav*: Running postcheck for lnav >>> lnav*: Preparing package lnav... >>> lnav*: Stripping binaries >>> lnav-doc*: Scanning shared objects >>> lnav*: Scanning shared objects >>> lnav-doc*: Tracing dependencies... >>> lnav-doc*: Package size: 1.4 KB >>> lnav-doc*: Compressing data... >>> lnav-doc*: Create checksum... >>> lnav-doc*: Create lnav-doc-0.13.1-r0.apk >>> lnav*: Tracing dependencies... tzdata so:libarchive.so.13 so:libbz2.so.1 so:libc.musl-x86.so.1 so:libcurl.so.4 so:libgcc_s.so.1 so:libpcre2-8.so.0 so:libsqlite3.so.0 so:libstdc++.so.6 so:libunistring.so.5 so:libz.so.1 >>> lnav*: Package size: 8.0 MB >>> lnav*: Compressing data... >>> lnav*: Create checksum... >>> lnav*: Create lnav-0.13.1-r0.apk >>> lnav: Build complete at Tue, 09 Sep 2025 05:04:58 +0000 elapsed time 0h 3m 55s >>> lnav: Cleaning up srcdir >>> lnav: Cleaning up pkgdir >>> lnav: Uninstalling dependencies... ( 1/43) Purging .makedepends-lnav (20250909.050104) ( 2/43) Purging tzdata (2025b-r0) ( 3/43) Purging bash (5.3.3-r1) bash-5.3.3-r1.pre-deinstall: Executing script... ( 4/43) Purging bzip2-dev (1.0.8-r6) ( 5/43) Purging curl-dev (8.15.0-r1) ( 6/43) Purging gpm-dev (1.20.7-r6) ( 7/43) Purging gpm-libs (1.20.7-r6) ( 8/43) Purging libarchive-dev (3.8.1-r0) ( 9/43) Purging libarchive (3.8.1-r0) (10/43) Purging libbsd-dev (0.12.2-r0) (11/43) Purging linux-headers (6.16.5-r0) (12/43) Purging libmd-dev (1.1.0-r0) (13/43) Purging libbsd (0.12.2-r0) (14/43) Purging libunistring-dev (1.3-r0) (15/43) Purging pcre2-dev (10.46-r0) (16/43) Purging libedit-dev (20250104.3.1-r2) (17/43) Purging bsd-compat-headers (0.7.2-r6) (18/43) Purging libpcre2-16 (10.46-r0) (19/43) Purging libpcre2-32 (10.46-r0) (20/43) Purging readline-dev (8.3.1-r0) (21/43) Purging libhistory (8.3.1-r0) (22/43) Purging sqlite-dev (3.50.4-r1) (23/43) Purging sqlite (3.50.4-r1) (24/43) Purging sqlite-libs (3.50.4-r1) (25/43) Purging zlib-dev (1.3.1-r2) (26/43) Purging brotli-dev (1.1.0-r2) (27/43) Purging brotli (1.1.0-r2) (28/43) Purging c-ares-dev (1.34.5-r0) (29/43) Purging libbz2 (1.0.8-r6) (30/43) Purging libmd (1.1.0-r0) (31/43) Purging libpsl-dev (0.21.5-r3) (32/43) Purging libpsl-utils (0.21.5-r3) (33/43) Purging ncurses-dev (6.5_p20250816-r0) (34/43) Purging libncurses++ (6.5_p20250816-r0) (35/43) Purging libpanelw (6.5_p20250816-r0) (36/43) Purging nghttp2-dev (1.66.0-r0) (37/43) Purging openssl-dev (3.5.2-r0) (38/43) Purging xz-libs (5.8.1-r0) (39/43) Purging zstd-dev (1.5.7-r2) (40/43) Purging zstd (1.5.7-r2) (41/43) Purging libformw (6.5_p20250816-r0) (42/43) Purging libidn2-dev (2.3.8-r0) (43/43) Purging libmenuw (6.5_p20250816-r0) busybox-1.37.0-r23.trigger: Executing script... OK: 426 MiB in 104 packages >>> lnav: Updating the community/x86 repository index... >>> lnav: Signing the index...