Diff of the two buildlogs: -- --- b1/build.log 2025-10-30 06:02:02.042680829 +0000 +++ b2/build.log 2025-10-30 06:05:51.598861220 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Wed Dec 2 00:21:37 -12 2026 -I: pbuilder-time-stamp: 1796214097 +I: Current time: Thu Oct 30 20:02:03 +14 2025 +I: pbuilder-time-stamp: 1761804123 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/forky-reproducible-base.tgz] I: copying local configuration @@ -26,53 +26,85 @@ dpkg-source: info: applying quickjs.patch I: using fakeroot in build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/985871/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/720982/tmp/hooks/D01_modify_environment starting +debug: Running on ionos11-amd64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Oct 30 06:02 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/720982/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/720982/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='amd64' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' - DISTRIBUTION='forky' - HOME='/root' - HOST_ARCH='amd64' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="3" [2]="3" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") + BASH_VERSION='5.3.3(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=40 ' + DIRSTACK=() + DISTRIBUTION=forky + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='524ec1b3f46e492cb888aece6f44bba0' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='985871' - PS1='# ' - PS2='> ' + INVOCATION_ID=01acf235ae934646afdb82e30948d1e4 + LANG=C + LANGUAGE=et_EE:et + LC_ALL=C + MACHTYPE=x86_64-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=720982 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.QZCQxDnG/pbuilderrc_kzR0 --distribution forky --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/forky-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.QZCQxDnG/b1 --logfile b1/build.log pljs_1.0.3-2.dsc' - SUDO_GID='110' - SUDO_HOME='/var/lib/jenkins' - SUDO_UID='105' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://213.165.73.152:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.QZCQxDnG/pbuilderrc_oMP3 --distribution forky --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/forky-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.QZCQxDnG/b2 --logfile b2/build.log pljs_1.0.3-2.dsc' + SUDO_GID=111 + SUDO_HOME=/var/lib/jenkins + SUDO_UID=106 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://46.16.76.132:3128 I: uname -a - Linux ionos5-amd64 6.12.48+deb13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.48-1 (2025-09-20) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.12.48+deb13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.48-1 (2025-09-20) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Aug 10 2025 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/985871/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 10 12:30 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/720982/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -242,7 +274,7 @@ Get: 126 http://deb.debian.org/debian forky/main amd64 postgresql-plpython3-18 amd64 18.0-1 [89.5 kB] Get: 127 http://deb.debian.org/debian forky/main amd64 postgresql-pltcl-18 amd64 18.0-1 [39.3 kB] Get: 128 http://deb.debian.org/debian forky/main amd64 postgresql-all all 286 [14.8 kB] -Fetched 176 MB in 2s (73.7 MB/s) +Fetched 176 MB in 3s (67.2 MB/s) Preconfiguring packages ... Selecting previously unselected package libexpat1:amd64. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19869 files and directories currently installed.) @@ -672,8 +704,8 @@ Setting up tzdata (2025b-5) ... Current default time zone: 'Etc/UTC' -Local time is now: Wed Dec 2 12:23:21 UTC 2026. -Universal Time is now: Wed Dec 2 12:23:21 UTC 2026. +Local time is now: Thu Oct 30 06:03:48 UTC 2025. +Universal Time is now: Thu Oct 30 06:03:48 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20240727.1) ... @@ -783,7 +815,7 @@ selecting dynamic shared memory implementation ... posix selecting default "max_connections" ... 100 selecting default "shared_buffers" ... 128MB -selecting default time zone ... /usr/share/zoneinfo/Etc/GMT+12 +selecting default time zone ... /usr/share/zoneinfo/Etc/GMT-14 creating configuration files ... ok running bootstrap script ... ok performing post-bootstrap initialization ... ok @@ -818,7 +850,11 @@ Solving dependencies... 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package -I: Running cd /build/reproducible-path/pljs-1.0.3/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../pljs_1.0.3-2_source.changes +I: user script /srv/workspace/pbuilder/720982/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for forky +I: user script /srv/workspace/pbuilder/720982/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/pljs-1.0.3/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../pljs_1.0.3-2_source.changes dpkg-buildpackage: info: source package pljs dpkg-buildpackage: info: source version 1.0.3-2 dpkg-buildpackage: info: source distribution unstable @@ -870,9 +906,9 @@ gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -Wmissing-variable-declarations -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -Werror=implicit-function-declaration -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fno-omit-frame-pointer -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fPIC -Wall -Wextra -Wno-unused-parameter -Wno-declaration-after-statement -Wno-cast-function-type -std=c11 -DPLJS_VERSION=\"1.0.3\" -DEXPOSE_GC -O3 -DJSONB_DIRECT_CONVERSION -fPIC -fvisibility=hidden -I. -I./ -I/usr/include/postgresql/18/server -I/usr/include/postgresql/internal -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 -c -o src/functions.o src/functions.c gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -Wmissing-variable-declarations -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -Werror=implicit-function-declaration -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fno-omit-frame-pointer -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fPIC -Wall -Wextra -Wno-unused-parameter -Wno-declaration-after-statement -Wno-cast-function-type -std=c11 -DPLJS_VERSION=\"1.0.3\" -DEXPOSE_GC -O3 -DJSONB_DIRECT_CONVERSION -fPIC -fvisibility=hidden -I. -I./ -I/usr/include/postgresql/18/server -I/usr/include/postgresql/internal -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 -c -o src/types.o src/types.c gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -Wmissing-variable-declarations -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -Werror=implicit-function-declaration -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fno-omit-frame-pointer -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fPIC -Wall -Wextra -Wno-unused-parameter -Wno-declaration-after-statement -Wno-cast-function-type -std=c11 -DPLJS_VERSION=\"1.0.3\" -DEXPOSE_GC -O3 -DJSONB_DIRECT_CONVERSION -fPIC -fvisibility=hidden -I. -I./ -I/usr/include/postgresql/18/server -I/usr/include/postgresql/internal -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 -c -o src/params.o src/params.c -make[2]: Entering directory '/build/reproducible-path/pljs-1.0.3/deps/quickjs' cp pljs.sql pljs--1.0.3.sql /usr/bin/clang-19 -Wno-ignored-attributes -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-unused-command-line-argument -Wno-compound-token-split-by-macro -Wno-format-truncation -O2 -I. -I./ -I/usr/include/postgresql/18/server -I/usr/include/postgresql/internal -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 -flto=thin -emit-llvm -c -o src/pljs.bc src/pljs.c +make[2]: Entering directory '/build/reproducible-path/pljs-1.0.3/deps/quickjs' /usr/bin/clang-19 -Wno-ignored-attributes -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-unused-command-line-argument -Wno-compound-token-split-by-macro -Wno-format-truncation -O2 -I. -I./ -I/usr/include/postgresql/18/server -I/usr/include/postgresql/internal -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 -flto=thin -emit-llvm -c -o src/cache.bc src/cache.c /usr/bin/clang-19 -Wno-ignored-attributes -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-unused-command-line-argument -Wno-compound-token-split-by-macro -Wno-format-truncation -O2 -I. -I./ -I/usr/include/postgresql/18/server -I/usr/include/postgresql/internal -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 -flto=thin -emit-llvm -c -o src/functions.bc src/functions.c /usr/bin/clang-19 -Wno-ignored-attributes -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-unused-command-line-argument -Wno-compound-token-split-by-macro -Wno-format-truncation -O2 -I. -I./ -I/usr/include/postgresql/18/server -I/usr/include/postgresql/internal -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 -flto=thin -emit-llvm -c -o src/types.bc src/types.c @@ -892,74 +928,25 @@ gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -Wmissing-variable-declarations -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -Werror=implicit-function-declaration -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fno-omit-frame-pointer -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fPIC -Wall -Wextra -Wno-unused-parameter -Wno-declaration-after-statement -Wno-cast-function-type -std=c11 -DPLJS_VERSION=\"1.0.3\" -DEXPOSE_GC -O3 -DJSONB_DIRECT_CONVERSION -fPIC -fvisibility=hidden -fPIC -g -Wall -MMD -MF .obj/fib.o.d -Wno-array-bounds -Wno-format-truncation -Wno-infinite-recursion -fwrapv -D_GNU_SOURCE -DCONFIG_VERSION=\"2025-04-26\" -DHAVE_CLOSEFROM -O2 -c -o .obj/examples/fib.o examples/fib.c gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -Wmissing-variable-declarations -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -Werror=implicit-function-declaration -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fno-omit-frame-pointer -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fPIC -Wall -Wextra -Wno-unused-parameter -Wno-declaration-after-statement -Wno-cast-function-type -std=c11 -DPLJS_VERSION=\"1.0.3\" -DEXPOSE_GC -O3 -DJSONB_DIRECT_CONVERSION -fPIC -fvisibility=hidden -fPIC -g -Wall -MMD -MF .obj/fib.pic.o.d -Wno-array-bounds -Wno-format-truncation -Wno-infinite-recursion -fwrapv -D_GNU_SOURCE -DCONFIG_VERSION=\"2025-04-26\" -DHAVE_CLOSEFROM -O2 -fPIC -DJS_SHARED_LIBRARY -c -o .obj/examples/fib.pic.o examples/fib.c gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -Wmissing-variable-declarations -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -Werror=implicit-function-declaration -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fno-omit-frame-pointer -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fPIC -Wall -Wextra -Wno-unused-parameter -Wno-declaration-after-statement -Wno-cast-function-type -std=c11 -DPLJS_VERSION=\"1.0.3\" -DEXPOSE_GC -O3 -DJSONB_DIRECT_CONVERSION -fPIC -fvisibility=hidden -fPIC -g -Wall -MMD -MF .obj/point.pic.o.d -Wno-array-bounds -Wno-format-truncation -Wno-infinite-recursion -fwrapv -D_GNU_SOURCE -DCONFIG_VERSION=\"2025-04-26\" -DHAVE_CLOSEFROM -O2 -fPIC -DJS_SHARED_LIBRARY -c -o .obj/examples/point.pic.o examples/point.c -libregexp.c: In function 'parse_unicode_property': -libregexp.c:551:24: warning: comparison of integer expressions of different signedness: 'long int' and 'long unsigned int' [-Wsign-compare] - 551 | if ((q - name) >= sizeof(name) - 1) - | ^~ -libregexp.c:560:29: warning: comparison of integer expressions of different signedness: 'long int' and 'long unsigned int' [-Wsign-compare] - 560 | if ((q - value) >= sizeof(value) - 1) - | ^~ -cutils.c: In function 'dbuf_printf': -examples/fib.c:59:24: warning: no previous prototype for 'js_init_module' [-Wmissing-prototypes] - 59 | #define JS_INIT_MODULE js_init_module - | ^~~~~~~~~~~~~~ -examples/fib.c:64:14: note: in expansion of macro 'JS_INIT_MODULE' - 64 | JSModuleDef *JS_INIT_MODULE(JSContext *ctx, const char *module_name) - | ^~~~~~~~~~~~~~ -cutils.c:181:13: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] - 181 | if (len < sizeof(buf)) { - | ^ -cutils.c: In function 'qjs_unicode_from_utf8': -cutils.c:302:11: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] - 302 | if (c < utf8_min_code[l - 1]) - | ^ -qjs.c:288:6: warning: no previous prototype for 'help' [-Wmissing-prototypes] - 288 | void help(void) - | ^~~~ -libregexp.c: In function 'lre_compile': -libregexp.c:1802:29: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare] - 1802 | if (s->group_names.size > (s->capture_count - 1)) { - | ^ -qjs.c: In function 'main': -qjs.c:372:35: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] - 372 | if (include_count >= countof(include_list)) { - | ^~ -qjs.c:524:13: warning: declaration of 'i' shadows a previous local [-Wshadow=compatible-local] - 524 | int i, j; - | ^ -qjs.c:326:9: note: shadowed declaration is here - 326 | int i, include_count = 0; - | ^ qjsc.c:82:6: warning: no previous prototype for 'namelist_add' [-Wmissing-prototypes] 82 | void namelist_add(namelist_t *lp, const char *name, const char *short_name, | ^~~~~~~~~~~~ -examples/fib.c:61:24: warning: no previous prototype for 'js_init_module_fib' [-Wmissing-prototypes] - 61 | #define JS_INIT_MODULE js_init_module_fib - | ^~~~~~~~~~~~~~~~~~ -examples/fib.c:64:14: note: in expansion of macro 'JS_INIT_MODULE' - 64 | JSModuleDef *JS_INIT_MODULE(JSContext *ctx, const char *module_name) - | ^~~~~~~~~~~~~~ qjsc.c:103:6: warning: no previous prototype for 'namelist_free' [-Wmissing-prototypes] 103 | void namelist_free(namelist_t *lp) | ^~~~~~~~~~~~~ qjsc.c:115:19: warning: no previous prototype for 'namelist_find' [-Wmissing-prototypes] 115 | namelist_entry_t *namelist_find(namelist_t *lp, const char *name) | ^~~~~~~~~~~~~ -In file included from libregexp.c:29: -libregexp.c: In function 'lre_exec_backtrack': -libregexp.c:2174:24: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 2174 | assert(val < s->capture_count); - | ^ qjsc.c: In function 'get_c_name': qjsc.c:152:23: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] 152 | if ((q - buf) < buf_size - 1) | ^ -libregexp.c:2183:29: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 2183 | assert(val2 < s->capture_count); - | ^ -libregexp.c:2244:25: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 2244 | if (val >= s->capture_count) - | ^~ +examples/fib.c:61:24: warning: no previous prototype for 'js_init_module_fib' [-Wmissing-prototypes] + 61 | #define JS_INIT_MODULE js_init_module_fib + | ^~~~~~~~~~~~~~~~~~ +examples/fib.c:64:14: note: in expansion of macro 'JS_INIT_MODULE' + 64 | JSModuleDef *JS_INIT_MODULE(JSContext *ctx, const char *module_name) + | ^~~~~~~~~~~~~~ qjsc.c: At top level: qjsc.c:229:14: warning: no previous prototype for 'jsc_module_loader' [-Wmissing-prototypes] 229 | JSModuleDef *jsc_module_loader(JSContext *ctx, @@ -967,23 +954,29 @@ qjsc.c:341:6: warning: no previous prototype for 'help' [-Wmissing-prototypes] 341 | void help(void) | ^~~~ +qjs.c:288:6: warning: no previous prototype for 'help' [-Wmissing-prototypes] + 288 | void help(void) + | ^~~~ qjsc.c:379:5: warning: no previous prototype for 'exec_cmd' [-Wmissing-prototypes] 379 | int exec_cmd(char **argv) | ^~~~~~~~ +qjs.c: In function 'main': +qjs.c:372:35: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] + 372 | if (include_count >= countof(include_list)) { + | ^~ +qjs.c:524:13: warning: declaration of 'i' shadows a previous local [-Wshadow=compatible-local] + 524 | int i, j; + | ^ qjsc.c: In function 'main': +qjs.c:326:9: note: shadowed declaration is here + 326 | int i, include_count = 0; + | ^ qjsc.c:602:34: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] 602 | for(i = 0; i < countof(feature_list); i++) { | ^ qjsc.c:751:22: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] 751 | for(i = 0; i < countof(feature_list); i++) { | ^ -libregexp.c: In function 'get_class_atom': -libregexp.c:696:16: warning: this statement may fall through [-Wimplicit-fallthrough=] - 696 | if (s->is_unicode) { - | ^ -libregexp.c:704:9: note: here - 704 | default: - | ^~~~~~~ qjs.c:288:6: warning: no previous prototype for 'help' [-Wmissing-prototypes] 288 | void help(void) | ^~~~ @@ -991,12 +984,55 @@ qjs.c:372:35: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] 372 | if (include_count >= countof(include_list)) { | ^~ +examples/fib.c:59:24: warning: no previous prototype for 'js_init_module' [-Wmissing-prototypes] + 59 | #define JS_INIT_MODULE js_init_module + | ^~~~~~~~~~~~~~ +examples/fib.c:64:14: note: in expansion of macro 'JS_INIT_MODULE' + 64 | JSModuleDef *JS_INIT_MODULE(JSContext *ctx, const char *module_name) + | ^~~~~~~~~~~~~~ +libregexp.c: In function 'parse_unicode_property': +libregexp.c:551:24: warning: comparison of integer expressions of different signedness: 'long int' and 'long unsigned int' [-Wsign-compare] + 551 | if ((q - name) >= sizeof(name) - 1) + | ^~ +libregexp.c:560:29: warning: comparison of integer expressions of different signedness: 'long int' and 'long unsigned int' [-Wsign-compare] + 560 | if ((q - value) >= sizeof(value) - 1) + | ^~ qjs.c:524:13: warning: declaration of 'i' shadows a previous local [-Wshadow=compatible-local] 524 | int i, j; | ^ qjs.c:326:9: note: shadowed declaration is here 326 | int i, include_count = 0; | ^ +cutils.c: In function 'dbuf_printf': +cutils.c:181:13: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] + 181 | if (len < sizeof(buf)) { + | ^ +cutils.c: In function 'qjs_unicode_from_utf8': +cutils.c:302:11: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] + 302 | if (c < utf8_min_code[l - 1]) + | ^ +libregexp.c: In function 'lre_compile': +libregexp.c:1802:29: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare] + 1802 | if (s->group_names.size > (s->capture_count - 1)) { + | ^ +In file included from libregexp.c:29: +libregexp.c: In function 'lre_exec_backtrack': +libregexp.c:2174:24: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 2174 | assert(val < s->capture_count); + | ^ +libregexp.c:2183:29: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 2183 | assert(val2 < s->capture_count); + | ^ +libregexp.c:2244:25: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 2244 | if (val >= s->capture_count) + | ^~ +libregexp.c: In function 'get_class_atom': +libregexp.c:696:16: warning: this statement may fall through [-Wimplicit-fallthrough=] + 696 | if (s->is_unicode) { + | ^ +libregexp.c:704:9: note: here + 704 | default: + | ^~~~~~~ In file included from dtoa.c:29: dtoa.c: In function 'js_dtoa': dtoa.c:1119:34: warning: comparison of integer expressions of different signedness: 'long int' and 'long unsigned int' [-Wsign-compare] @@ -1142,32 +1178,15 @@ run-test262.c:171:7: warning: no previous prototype for 'skip_prefix' [-Wmissing-prototypes] 171 | char *skip_prefix(const char *str, const char *prefix) | ^~~~~~~~~~~ -libunicode.c: In function 'cr_sort_and_remove_overlap': -libunicode.c:626:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 626 | for(i = 0; i < cr->len; ) { - | ^ run-test262.c:185:7: warning: no previous prototype for 'get_basename' [-Wmissing-prototypes] 185 | char *get_basename(const char *filename) | ^~~~~~~~~~~~ -libunicode.c:630:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 630 | while (i < cr->len) { - | ^ run-test262.c:195:7: warning: no previous prototype for 'compose_path' [-Wmissing-prototypes] 195 | char *compose_path(const char *path, const char *name) | ^~~~~~~~~~~~ -libunicode.c: In function 'cr_regexp_canonicalize': -libunicode.c:687:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 687 | for(i = 0; i < cr_inter.len; i += 2) { - | ^ run-test262.c:218:5: warning: no previous prototype for 'namelist_cmp' [-Wmissing-prototypes] 218 | int namelist_cmp(const char *a, const char *b) | ^~~~~~~~~~~~ -libunicode.c:703:25: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 703 | if (d_start == -1) { - | ^~ -libunicode.c:715:17: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 715 | if (d_start != -1) { - | ^~ run-test262.c:245:5: warning: no previous prototype for 'namelist_cmp_indirect' [-Wmissing-prototypes] 245 | int namelist_cmp_indirect(const void *a, const void *b) | ^~~~~~~~~~~~~~~~~~~~~ @@ -1177,18 +1196,35 @@ run-test262.c:268:5: warning: no previous prototype for 'namelist_find' [-Wmissing-prototypes] 268 | int namelist_find(namelist_t *lp, const char *name) | ^~~~~~~~~~~~~ +libunicode.c: In function 'cr_sort_and_remove_overlap': +libunicode.c:626:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 626 | for(i = 0; i < cr->len; ) { + | ^ run-test262.c:288:6: warning: no previous prototype for 'namelist_add' [-Wmissing-prototypes] 288 | void namelist_add(namelist_t *lp, const char *base, const char *name) | ^~~~~~~~~~~~ +libunicode.c:630:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 630 | while (i < cr->len) { + | ^ run-test262.c:310:6: warning: no previous prototype for 'namelist_load' [-Wmissing-prototypes] 310 | void namelist_load(namelist_t *lp, const char *filename) | ^~~~~~~~~~~~~ +libunicode.c: In function 'cr_regexp_canonicalize': run-test262.c:333:6: warning: no previous prototype for 'namelist_add_from_error_file' [-Wmissing-prototypes] 333 | void namelist_add_from_error_file(namelist_t *lp, const char *file) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ +libunicode.c:687:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 687 | for(i = 0; i < cr_inter.len; i += 2) { + | ^ run-test262.c:347:6: warning: no previous prototype for 'namelist_free' [-Wmissing-prototypes] 347 | void namelist_free(namelist_t *lp) | ^~~~~~~~~~~~~ +libunicode.c:703:25: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 703 | if (d_start == -1) { + | ^~ +libunicode.c:715:17: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 715 | if (d_start != -1) { + | ^~ libunicode.c: In function 'unicode_decomp_char': libunicode.c:984:28: warning: comparison of integer expressions of different signedness: 'BOOL' {aka 'int'} and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 984 | if (is_compat1 < is_compat) @@ -1213,11 +1249,14 @@ run-test262.c:889:7: warning: no previous prototype for 'find_word' [-Wmissing-prototypes] 889 | char *find_word(const char *str, const char *word) | ^~~~~~~~~ -In file included from quickjs.c:30: -quickjs.c: In function 'JS_SetClassProto': run-test262.c:903:6: warning: no previous prototype for 'update_exclude_dirs' [-Wmissing-prototypes] 903 | void update_exclude_dirs(void) | ^~~~~~~~~~~~~~~~~~~ +In file included from quickjs.c:30: +quickjs.c: In function 'JS_SetClassProto': +run-test262.c:943:6: warning: no previous prototype for 'load_config' [-Wmissing-prototypes] + 943 | void load_config(const char *filename, const char *ignore) + | ^~~~~~~~~~~ quickjs.c:2118:21: warning: comparison of integer expressions of different signedness: 'JSClassID' {aka 'unsigned int'} and 'int' [-Wsign-compare] 2118 | assert(class_id < rt->class_count); | ^ @@ -1225,9 +1264,6 @@ quickjs.c:2125:21: warning: comparison of integer expressions of different signedness: 'JSClassID' {aka 'unsigned int'} and 'int' [-Wsign-compare] 2125 | assert(class_id < rt->class_count); | ^ -run-test262.c:943:6: warning: no previous prototype for 'load_config' [-Wmissing-prototypes] - 943 | void load_config(const char *filename, const char *ignore) - | ^~~~~~~~~~~ run-test262.c:1100:7: warning: no previous prototype for 'find_error' [-Wmissing-prototypes] 1100 | char *find_error(const char *filename, int *pline, int is_strict) | ^~~~~~~~~~ @@ -1244,30 +1280,33 @@ examples/point.c:143:14: warning: no previous prototype for 'js_init_module' [-Wmissing-prototypes] 143 | JSModuleDef *js_init_module(JSContext *ctx, const char *module_name) | ^~~~~~~~~~~~~~ +src/cache.c:15:7: warning: no previous declaration for 'pljs_context_HashTable' [-Wmissing-variable-declarations] + 15 | HTAB *pljs_context_HashTable = NULL; + | ^~~~~~~~~~~~~~~~~~~~~~ +src/cache.c:20:15: warning: no previous declaration for 'cache_memory_context' [-Wmissing-variable-declarations] + 20 | MemoryContext cache_memory_context = NULL; + | ^~~~~~~~~~~~~~~~~~~~ run-test262.c:1425:7: warning: no previous prototype for 'extract_desc' [-Wmissing-prototypes] 1425 | char *extract_desc(const char *buf, char style) | ^~~~~~~~~~~~ -run-test262.c:1507:6: warning: no previous prototype for 'update_stats' [-Wmissing-prototypes] - 1507 | void update_stats(JSRuntime *rt, const char *filename) { - | ^~~~~~~~~~~~ quickjs.c: In function 'JS_NewSymbolFromAtom': quickjs.c:2958:18: warning: comparison of integer expressions of different signedness: 'JSAtom' {aka 'unsigned int'} and 'int' [-Wsign-compare] 2958 | assert(descr < rt->atom_size); | ^ +run-test262.c:1507:6: warning: no previous prototype for 'update_stats' [-Wmissing-prototypes] + 1507 | void update_stats(JSRuntime *rt, const char *filename) { + | ^~~~~~~~~~~~ quickjs.c: In function 'JS_AtomGetStrRT': quickjs.c:2974:21: warning: comparison of integer expressions of different signedness: 'JSAtom' {aka 'unsigned int'} and 'int' [-Wsign-compare] 2974 | assert(atom < rt->atom_size); | ^ -run-test262.c:1554:5: warning: no previous prototype for 'run_test_buf' [-Wmissing-prototypes] - 1554 | int run_test_buf(const char *filename, const char *harness, namelist_t *ip, - | ^~~~~~~~~~~~ -run-test262.c:1612:5: warning: no previous prototype for 'run_test' [-Wmissing-prototypes] - 1612 | int run_test(const char *filename, int index) - | ^~~~~~~~ quickjs.c: In function '__JS_AtomToValue': quickjs.c:3028:21: warning: comparison of integer expressions of different signedness: 'JSAtom' {aka 'unsigned int'} and 'int' [-Wsign-compare] 3028 | assert(atom < rt->atom_size); | ^ +run-test262.c:1554:5: warning: no previous prototype for 'run_test_buf' [-Wmissing-prototypes] + 1554 | int run_test_buf(const char *filename, const char *harness, namelist_t *ip, + | ^~~~~~~~~~~~ quickjs.c: In function 'JS_AtomIsArrayIndex': quickjs.c:3067:21: warning: comparison of integer expressions of different signedness: 'JSAtom' {aka 'unsigned int'} and 'int' [-Wsign-compare] 3067 | assert(atom < rt->atom_size); @@ -1279,13 +1318,13 @@ quickjs.c:3093:17: warning: comparison of integer expressions of different signedness: 'JSAtom' {aka 'unsigned int'} and 'int' [-Wsign-compare] 3093 | assert(atom < rt->atom_size); | ^ +run-test262.c:1612:5: warning: no previous prototype for 'run_test' [-Wmissing-prototypes] + 1612 | int run_test(const char *filename, int index) + | ^~~~~~~~ quickjs.c: In function 'JS_IsRegisteredClass': quickjs.c:3309:22: warning: comparison of integer expressions of different signedness: 'JSClassID' {aka 'unsigned int'} and 'int' [-Wsign-compare] 3309 | return (class_id < rt->class_count && | ^ -run-test262.c:1851:5: warning: no previous prototype for 'run_test262_harness_test' [-Wmissing-prototypes] - 1851 | int run_test262_harness_test(const char *filename, BOOL is_module) - | ^~~~~~~~~~~~~~~~~~~~~~~~ quickjs.c: In function 'JS_NewClass1': quickjs.c:3324:18: warning: comparison of integer expressions of different signedness: 'JSClassID' {aka 'unsigned int'} and 'int' [-Wsign-compare] 3324 | if (class_id < rt->class_count && @@ -1293,16 +1332,19 @@ quickjs.c:3328:18: warning: comparison of integer expressions of different signedness: 'JSClassID' {aka 'unsigned int'} and 'int' [-Wsign-compare] 3328 | if (class_id >= rt->class_count) { | ^~ +quickjs-libc.c: In function 'http_get_header_line': +quickjs-libc.c:1316:23: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] + 1316 | if ((p - buf) < buf_size - 1) + | ^ +run-test262.c:1851:5: warning: no previous prototype for 'run_test262_harness_test' [-Wmissing-prototypes] + 1851 | int run_test262_harness_test(const char *filename, BOOL is_module) + | ^~~~~~~~~~~~~~~~~~~~~~~~ run-test262.c:1931:9: warning: no previous declaration for 'last_clock' [-Wmissing-variable-declarations] 1931 | clock_t last_clock; | ^~~~~~~~~~ -quickjs-libc.c: In function 'http_get_header_line': run-test262.c:1933:6: warning: no previous prototype for 'show_progress' [-Wmissing-prototypes] 1933 | void show_progress(int force) { | ^~~~~~~~~~~~~ -quickjs-libc.c:1316:23: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] - 1316 | if ((p - buf) < buf_size - 1) - | ^ run-test262.c:1964:6: warning: no previous prototype for 'run_test_dir_list' [-Wmissing-prototypes] 1964 | void run_test_dir_list(namelist_t *lp, int start_index, int stop_index) | ^~~~~~~~~~~~~~~~~ @@ -1316,15 +1358,9 @@ run-test262.c:1075:16: warning: this statement may fall through [-Wimplicit-fallthrough=] 1075 | if (str_equal(p, "reportfile")) { | ^ -src/cache.c:15:7: warning: no previous declaration for 'pljs_context_HashTable' [-Wmissing-variable-declarations] - 15 | HTAB *pljs_context_HashTable = NULL; - | ^~~~~~~~~~~~~~~~~~~~~~ run-test262.c:1079:9: note: here 1079 | case SECTION_EXCLUDE: | ^~~~ -src/cache.c:20:15: warning: no previous declaration for 'cache_memory_context' [-Wmissing-variable-declarations] - 20 | MemoryContext cache_memory_context = NULL; - | ^~~~~~~~~~~~~~~~~~~~ quickjs.c: In function 'js_clone_shape': quickjs.c:4723:43: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 4723 | for(i = 0, pr = get_shape_prop(sh); i < sh->prop_count; i++, pr++) { @@ -1373,7 +1409,6 @@ quickjs-libc.c:3153:17: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 3153 | if (gid != -1) { | ^~ -gcc -L/usr/lib/x86_64-linux-gnu -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -g -shared -o examples/fib.so .obj/examples/fib.pic.o quickjs.c: In function 'JS_ComputeMemoryUsage': quickjs.c:6392:35: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 6392 | for (i = 0; i < p->u.array.count; i++) { @@ -1401,15 +1436,7 @@ cutils.h:33:45: note: in definition of macro 'unlikely' 33 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ -In file included from quickjs.c:30: -quickjs.c: In function 'JS_SetClassProto': -quickjs.c:2118:21: warning: comparison of integer expressions of different signedness: 'JSClassID' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 2118 | assert(class_id < rt->class_count); - | ^ -quickjs.c: In function 'JS_GetClassProto': -quickjs.c:2125:21: warning: comparison of integer expressions of different signedness: 'JSClassID' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 2125 | assert(class_id < rt->class_count); - | ^ +gcc -L/usr/lib/x86_64-linux-gnu -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -g -shared -o examples/fib.so .obj/examples/fib.pic.o quickjs.c: In function 'JS_GetOwnPropertyNamesInternal': quickjs.c:7947:30: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 7947 | for(i = 0; i < exotic_count; i++) { @@ -1417,14 +1444,19 @@ quickjs.c:8051:26: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 8051 | for(i = 0; i < exotic_count; i++) { | ^ -quickjs.c: In function 'JS_ResizeAtomHash': -quickjs.c:2481:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 2481 | for(i = 0; i < rt->atom_hash_size; i++) { - | ^ quickjs.c: In function 'JS_ValueToAtom': quickjs.c:8278:20: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 8278 | } else if (tag == JS_TAG_SYMBOL) { | ^~ +In file included from quickjs.c:30: +quickjs.c: In function 'JS_SetClassProto': +quickjs.c:2118:21: warning: comparison of integer expressions of different signedness: 'JSClassID' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 2118 | assert(class_id < rt->class_count); + | ^ +quickjs.c: In function 'JS_GetClassProto': +quickjs.c:2125:21: warning: comparison of integer expressions of different signedness: 'JSClassID' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 2125 | assert(class_id < rt->class_count); + | ^ quickjs.c: In function 'convert_fast_array_to_array': quickjs.c:8494:19: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 8494 | if (new_count > sh->prop_size) { @@ -1440,17 +1472,21 @@ quickjs.c:8660:19: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 8660 | if (d <= sh->prop_count) { | ^~ -quickjs.c: In function 'JS_NewSymbolFromAtom': -quickjs.c: In function 'JS_SetPropertyInternal': -quickjs.c:2958:18: warning: comparison of integer expressions of different signedness: 'JSAtom' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 2958 | assert(descr < rt->atom_size); +quickjs.c: In function 'JS_ResizeAtomHash': +quickjs.c:2481:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 2481 | for(i = 0; i < rt->atom_hash_size; i++) { | ^ +quickjs.c: In function 'JS_SetPropertyInternal': quickjs.c:8815:22: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 8815 | if (unlikely(tag != JS_TAG_OBJECT)) { | ^~ cutils.h:33:45: note: in definition of macro 'unlikely' 33 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ +quickjs.c: In function 'JS_NewSymbolFromAtom': +quickjs.c:2958:18: warning: comparison of integer expressions of different signedness: 'JSAtom' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 2958 | assert(descr < rt->atom_size); + | ^ quickjs.c: In function 'JS_AtomGetStrRT': quickjs.c:2974:21: warning: comparison of integer expressions of different signedness: 'JSAtom' {aka 'unsigned int'} and 'int' [-Wsign-compare] 2974 | assert(atom < rt->atom_size); @@ -1459,6 +1495,13 @@ quickjs.c:3028:21: warning: comparison of integer expressions of different signedness: 'JSAtom' {aka 'unsigned int'} and 'int' [-Wsign-compare] 3028 | assert(atom < rt->atom_size); | ^ +quickjs.c: At top level: +quickjs.c:9762:5: warning: no previous prototype for 'JS_DefinePropertyValueValue' [-Wmissing-prototypes] + 9762 | int JS_DefinePropertyValueValue(JSContext *ctx, JSValueConst this_obj, + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +quickjs.c:9785:5: warning: no previous prototype for 'JS_DefinePropertyValueInt64' [-Wmissing-prototypes] + 9785 | int JS_DefinePropertyValueInt64(JSContext *ctx, JSValueConst this_obj, + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ quickjs.c: In function 'JS_AtomIsArrayIndex': quickjs.c:3067:21: warning: comparison of integer expressions of different signedness: 'JSAtom' {aka 'unsigned int'} and 'int' [-Wsign-compare] 3067 | assert(atom < rt->atom_size); @@ -1470,6 +1513,15 @@ quickjs.c:3093:17: warning: comparison of integer expressions of different signedness: 'JSAtom' {aka 'unsigned int'} and 'int' [-Wsign-compare] 3093 | assert(atom < rt->atom_size); | ^ +quickjs.c:10126:5: warning: no previous prototype for 'JS_DeletePropertyInt64' [-Wmissing-prototypes] +10126 | int JS_DeletePropertyInt64(JSContext *ctx, JSValueConst obj, int64_t idx, int flags) + | ^~~~~~~~~~~~~~~~~~~~~~ +quickjs.c:10159:6: warning: no previous prototype for 'JS_IsCFunction' [-Wmissing-prototypes] +10159 | BOOL JS_IsCFunction(JSContext *ctx, JSValueConst val, JSCFunction *func, int magic) + | ^~~~~~~~~~~~~~ +quickjs.c:10200:6: warning: no previous prototype for 'JS_IsUncatchableError' [-Wmissing-prototypes] +10200 | BOOL JS_IsUncatchableError(JSContext *ctx, JSValueConst val) + | ^~~~~~~~~~~~~~~~~~~~~ quickjs.c: In function 'JS_IsRegisteredClass': quickjs.c:3309:22: warning: comparison of integer expressions of different signedness: 'JSClassID' {aka 'unsigned int'} and 'int' [-Wsign-compare] 3309 | return (class_id < rt->class_count && @@ -1481,45 +1533,6 @@ quickjs.c:3328:18: warning: comparison of integer expressions of different signedness: 'JSClassID' {aka 'unsigned int'} and 'int' [-Wsign-compare] 3328 | if (class_id >= rt->class_count) { | ^~ -In file included from /usr/include/postgresql/18/server/postgres.h:49, - from src/types.c:1: -src/types.c: In function 'pljs_jsvalue_to_datum': -src/types.c:1154:20: warning: format '%lld' expects argument of type 'long long int', but argument 2 has type 'int64_t' {aka 'long int'} [-Wformat=] - 1154 | elog(DEBUG3, "Unknown array type, tag: %lld", val.tag); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~ - | | - | int64_t {aka long int} -/usr/include/postgresql/18/server/utils/elog.h:147:25: note: in definition of macro 'ereport_domain' - 147 | __VA_ARGS__, errfinish(__FILE__, __LINE__, __func__); \ - | ^~~~~~~~~~~ -/usr/include/postgresql/18/server/utils/elog.h:240:9: note: in expansion of macro 'ereport' - 240 | ereport(elevel, errmsg_internal(__VA_ARGS__)) - | ^~~~~~~ -src/types.c:1154:7: note: in expansion of macro 'elog' - 1154 | elog(DEBUG3, "Unknown array type, tag: %lld", val.tag); - | ^~~~ -src/types.c:1154:49: note: format string is defined here - 1154 | elog(DEBUG3, "Unknown array type, tag: %lld", val.tag); - | ~~~^ - | | - | long long int - | %ld -quickjs.c: At top level: -quickjs.c:9762:5: warning: no previous prototype for 'JS_DefinePropertyValueValue' [-Wmissing-prototypes] - 9762 | int JS_DefinePropertyValueValue(JSContext *ctx, JSValueConst this_obj, - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ -quickjs.c:9785:5: warning: no previous prototype for 'JS_DefinePropertyValueInt64' [-Wmissing-prototypes] - 9785 | int JS_DefinePropertyValueInt64(JSContext *ctx, JSValueConst this_obj, - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ -quickjs.c:10126:5: warning: no previous prototype for 'JS_DeletePropertyInt64' [-Wmissing-prototypes] -10126 | int JS_DeletePropertyInt64(JSContext *ctx, JSValueConst obj, int64_t idx, int flags) - | ^~~~~~~~~~~~~~~~~~~~~~ -quickjs.c:10159:6: warning: no previous prototype for 'JS_IsCFunction' [-Wmissing-prototypes] -10159 | BOOL JS_IsCFunction(JSContext *ctx, JSValueConst val, JSCFunction *func, int magic) - | ^~~~~~~~~~~~~~ -quickjs.c:10200:6: warning: no previous prototype for 'JS_IsUncatchableError' [-Wmissing-prototypes] -10200 | BOOL JS_IsUncatchableError(JSContext *ctx, JSValueConst val) - | ^~~~~~~~~~~~~~~~~~~~~ quickjs.c: In function 'mp_add': quickjs.c:10511:17: warning: comparison of integer expressions of different signedness: 'int' and 'js_limb_t' {aka 'long unsigned int'} [-Wsign-compare] 10511 | for(i = 0;i < n; i++) { @@ -1555,50 +1568,17 @@ quickjs.c:11322:20: warning: comparison of integer expressions of different signedness: 'js_limb_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare] 11322 | else if (v == -1) | ^~ -src/types.c: In function 'pljs_spi_result_to_jsvalue': -src/types.c:1267:8: warning: this statement may fall through [-Wimplicit-fallthrough=] - 1267 | if (SPI_tuptable == NULL) { - | ^ -src/types.c:1273:3: note: here - 1273 | case SPI_OK_SELECT: - | ^~~~ -src/types.c: At top level: -src/types.c:28:18: warning: 'JS_CLASS_UINT8C_ARRAY' defined but not used [-Wunused-variable] - 28 | static JSClassID JS_CLASS_UINT8C_ARRAY = 21; - | ^~~~~~~~~~~~~~~~~~~~~ -quickjs.c: In function 'js_clone_shape': -quickjs.c:4723:43: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 4723 | for(i = 0, pr = get_shape_prop(sh); i < sh->prop_count; i++, pr++) { - | ^ quickjs.c: In function 'js_bigint_from_string': quickjs.c:11686:23: warning: comparison of integer expressions of different signedness: 'js_limb_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare] 11686 | if (c >= radix) | ^~ -quickjs.c: In function 'js_free_shape0': quickjs.c:11714:22: warning: comparison of integer expressions of different signedness: 'js_limb_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare] 11714 | assert(c < radix); | ^ -quickjs.c:4747:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 4747 | for(i = 0; i < sh->prop_count; i++) { - | ^ quickjs.c: At top level: quickjs.c:11738:32: warning: initializer-string for array of 'char' truncates NUL terminator but destination lacks 'nonstring' attribute (37 chars into 36 available) [-Wunterminated-string-initialization] 11738 | static char const digits[36] = "0123456789abcdefghijklmnopqrstuvwxyz"; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -quickjs.c: In function 'resize_properties': -quickjs.c:4812:37: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 4812 | for(i = 0, pr = sh->prop; i < sh->prop_count; i++, pr++) { - | ^ -quickjs.c: In function 'compact_properties': -quickjs.c:4845:21: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 4845 | assert(new_size <= sh->prop_size); - | ^~ -quickjs.c:4869:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 4869 | for(i = 0; i < sh->prop_count; i++) { - | ^ -quickjs.c:4882:14: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 4882 | assert(j == (sh->prop_count - sh->deleted_prop_count)); - | ^~ quickjs.c: In function 'js_atof': quickjs.c:11996:17: warning: declaration of 'i' shadows a previous local [-Wshadow=compatible-local] 11996 | int i; @@ -1612,10 +1592,6 @@ cutils.h:33:45: note: in definition of macro 'unlikely' 33 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ -quickjs.c: In function 'find_hashed_shape_prop': -quickjs.c:4978:29: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] - 4978 | sh1->prop_count == ((n = sh->prop_count) + 1)) { - | ^~ quickjs.c: In function 'JS_ToNumberHintFree': quickjs.c:12189:27: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] 12189 | if ((p - str) == len) { @@ -1640,36 +1616,50 @@ quickjs.c:12769:17: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] 12769 | if (len_max > sizeof(static_buf) - 1) { | ^ +quickjs.c: In function 'js_clone_shape': +quickjs.c:4723:43: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 4723 | for(i = 0, pr = get_shape_prop(sh); i < sh->prop_count; i++, pr++) { + | ^ quickjs.c: In function 'JS_DumpObject': quickjs.c:13007:48: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 13007 | for(i = 0, prs = get_shape_prop(sh); i < sh->prop_count; i++, prs++) { | ^ +quickjs.c: In function 'js_free_shape0': +quickjs.c:4747:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 4747 | for(i = 0; i < sh->prop_count; i++) { + | ^ quickjs.c:13039:26: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 13039 | for(i = 0; i < b->closure_var_count; i++) { | ^ -quickjs.c: In function 'js_array_finalizer': -quickjs.c:5560:18: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] - 5560 | for(i = 0; i < p->u.array.count; i++) { - | ^ +quickjs.c: In function 'resize_properties': +quickjs.c:4812:37: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 4812 | for(i = 0, pr = sh->prop; i < sh->prop_count; i++, pr++) { + | ^ quickjs.c: In function 'JS_DumpValueShort': quickjs.c:13130:23: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 13130 | if (i != p->len - 1) | ^~ -quickjs.c: In function 'js_array_mark': -quickjs.c:5572:18: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] - 5572 | for(i = 0; i < p->u.array.count; i++) { +quickjs.c: In function 'compact_properties': +quickjs.c:4845:21: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 4845 | assert(new_size <= sh->prop_size); + | ^~ +quickjs.c:4869:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 4869 | for(i = 0; i < sh->prop_count; i++) { | ^ quickjs.c: In function 'JS_StringToBigInt': quickjs.c:13271:19: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] 13271 | if ((p - str) == len) { | ^~ +quickjs.c:4882:14: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 4882 | assert(j == (sh->prop_count - sh->deleted_prop_count)); + | ^~ quickjs.c:13278:27: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] 13278 | if ((p - str) != len) { | ^~ -quickjs.c: In function 'js_for_in_iterator_finalizer': -quickjs.c:5693:22: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] - 5693 | for(i = 0; i < it->atom_count; i++) { - | ^ +quickjs.c: In function 'find_hashed_shape_prop': +quickjs.c:4978:29: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] + 4978 | sh1->prop_count == ((n = sh->prop_count) + 1)) { + | ^~ quickjs.c: In function 'js_binary_arith_slow': quickjs.c:13664:54: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 13664 | } else if ((tag1 == JS_TAG_SHORT_BIG_INT || tag1 == JS_TAG_BIG_INT) && @@ -1723,10 +1713,6 @@ quickjs.c:14209:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 14209 | tag2 == JS_TAG_BIG_INT || tag2 == JS_TAG_SHORT_BIG_INT) { | ^~ -quickjs.c: In function 'JS_ComputeMemoryUsage': -quickjs.c:6392:35: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] - 6392 | for (i = 0; i < p->u.array.count; i++) { - | ^ quickjs.c: In function 'tag_is_number': quickjs.c:14256:17: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 14256 | tag == JS_TAG_BIG_INT || tag == JS_TAG_SHORT_BIG_INT); @@ -1750,40 +1736,30 @@ quickjs.c:14345:69: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 14345 | (tag_is_number(tag1) || tag_is_string(tag1) || tag1 == JS_TAG_SYMBOL))) { | ^~ -quickjs.c: In function 'JS_DumpMemoryUsage': -quickjs.c:6581:22: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] - 6581 | for(i = 0; i < countof(object_types); i++) { +quickjs.c: In function 'js_array_finalizer': +quickjs.c:5560:18: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] + 5560 | for(i = 0; i < p->u.array.count; i++) { + | ^ +quickjs.c: In function 'js_array_mark': +quickjs.c:5572:18: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] + 5572 | for(i = 0; i < p->u.array.count; i++) { + | ^ +quickjs.c: In function 'js_for_in_iterator_finalizer': +quickjs.c:5693:22: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] + 5693 | for(i = 0; i < it->atom_count; i++) { | ^ -quickjs.c: In function 'find_line_num': -quickjs.c:6801:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 6801 | if (pc_value != -1) { - | ^~ -quickjs.c:6827:26: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 6827 | if (pc_value < pc) - | ^ quickjs.c: In function 'build_for_in_iterator': quickjs.c:14955:13: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 14955 | if (tag != JS_TAG_OBJECT && tag != JS_TAG_NULL && tag != JS_TAG_UNDEFINED) { | ^~ -quickjs.c: In function 'JS_ThrowError2': -quickjs.c:6966:5: warning: function 'JS_ThrowError2' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format] - 6966 | vsnprintf(buf, sizeof(buf), fmt, ap); - | ^~~~~~~~~ -In file included from quickjs.c:43: -quickjs.c: In function 'JS_GetPropertyInternal': -quickjs.c:7498:22: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 7498 | if (unlikely(tag != JS_TAG_OBJECT)) { - | ^~ -cutils.h:33:45: note: in definition of macro 'unlikely' - 33 | #define unlikely(x) __builtin_expect(!!(x), 0) - | ^ -quickjs.c: In function 'JS_GetOwnPropertyNamesInternal': -quickjs.c:7947:30: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] - 7947 | for(i = 0; i < exotic_count; i++) { - | ^ -quickjs.c:8051:26: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] - 8051 | for(i = 0; i < exotic_count; i++) { - | ^ +quickjs.c: In function 'JS_ComputeMemoryUsage': +quickjs.c:6392:35: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] + 6392 | for (i = 0; i < p->u.array.count; i++) { + | ^ +quickjs.c: In function 'JS_DumpMemoryUsage': +quickjs.c:6581:22: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] + 6581 | for(i = 0; i < countof(object_types); i++) { + | ^ quickjs.c: In function 'JS_CallInternal': quickjs.c:16347:36: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 16347 | if (likely(tag == JS_TAG_OBJECT)) @@ -1791,25 +1767,23 @@ cutils.h:32:45: note: in definition of macro 'likely' 32 | #define likely(x) __builtin_expect(!!(x), 1) | ^ -quickjs.c: In function 'JS_ValueToAtom': -quickjs.c:8278:20: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 8278 | } else if (tag == JS_TAG_SYMBOL) { - | ^~ +quickjs.c: In function 'find_line_num': +quickjs.c:6801:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 6801 | if (pc_value != -1) { + | ^~ +quickjs.c:6827:26: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 6827 | if (pc_value < pc) + | ^ quickjs.c:16648:21: warning: declaration of 'i' shadows a previous local [-Wshadow=compatible-local] 16648 | int i, ret; | ^ quickjs.c:16159:37: note: shadowed declaration is here 16159 | int opcode, arg_allocated_size, i; | ^ -gcc -L/usr/lib/x86_64-linux-gnu -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -g -shared -o examples/point.so .obj/examples/point.pic.o -quickjs.c: In function 'convert_fast_array_to_array': -quickjs.c:8494:19: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 8494 | if (new_count > sh->prop_size) { - | ^ -quickjs.c: In function 'delete_property': -quickjs.c:8560:40: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] - 8560 | sh->deleted_prop_count >= ((unsigned)sh->prop_count / 2)) { - | ^~ +quickjs.c: In function 'JS_ThrowError2': +quickjs.c:6966:5: warning: function 'JS_ThrowError2' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format] + 6966 | vsnprintf(buf, sizeof(buf), fmt, ap); + | ^~~~~~~~~ quickjs.c:16949:21: warning: declaration of 'flags' shadows a parameter [-Wshadow=compatible-local] 16949 | int flags; | ^~~~~ @@ -1828,20 +1802,6 @@ quickjs.c:16151:61: note: shadowed declaration is here 16151 | int argc, JSValue *argv, int flags) | ~~~~^~~~~ -quickjs.c: In function 'set_array_length': -quickjs.c:8643:28: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] - 8643 | for(i = len; i < old_len; i++) { - | ^ -quickjs.c:8660:19: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 8660 | if (d <= sh->prop_count) { - | ^~ -quickjs.c: In function 'JS_SetPropertyInternal': -quickjs.c:8815:22: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] - 8815 | if (unlikely(tag != JS_TAG_OBJECT)) { - | ^~ -cutils.h:33:45: note: in definition of macro 'unlikely' - 33 | #define unlikely(x) __builtin_expect(!!(x), 0) - | ^ quickjs.c:17391:34: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 17391 | if (unlikely(pos >= b->byte_code_len)) { | ^~ @@ -1860,12 +1820,57 @@ quickjs.c:16151:61: note: shadowed declaration is here 16151 | int argc, JSValue *argv, int flags) | ~~~~^~~~~ +In file included from quickjs.c:43: +quickjs.c: In function 'JS_GetPropertyInternal': +quickjs.c:7498:22: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 7498 | if (unlikely(tag != JS_TAG_OBJECT)) { + | ^~ +cutils.h:33:45: note: in definition of macro 'unlikely' + 33 | #define unlikely(x) __builtin_expect(!!(x), 0) + | ^ quickjs.c:17705:21: warning: declaration of 'flags' shadows a parameter [-Wshadow=compatible-local] 17705 | int flags, ret, op_flags; | ^~~~~ quickjs.c:16151:61: note: shadowed declaration is here 16151 | int argc, JSValue *argv, int flags) | ~~~~^~~~~ +quickjs.c: In function 'JS_GetOwnPropertyNamesInternal': +quickjs.c:7947:30: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] + 7947 | for(i = 0; i < exotic_count; i++) { + | ^ +quickjs.c:8051:26: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] + 8051 | for(i = 0; i < exotic_count; i++) { + | ^ +quickjs.c: In function 'JS_ValueToAtom': +quickjs.c:8278:20: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 8278 | } else if (tag == JS_TAG_SYMBOL) { + | ^~ +quickjs.c: In function 'convert_fast_array_to_array': +quickjs.c:8494:19: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 8494 | if (new_count > sh->prop_size) { + | ^ +quickjs.c: In function 'delete_property': +quickjs.c:8560:40: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] + 8560 | sh->deleted_prop_count >= ((unsigned)sh->prop_count / 2)) { + | ^~ +quickjs.c: In function 'set_array_length': +quickjs.c:8643:28: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] + 8643 | for(i = len; i < old_len; i++) { + | ^ +quickjs.c:8660:19: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 8660 | if (d <= sh->prop_count) { + | ^~ +quickjs.c: In function 'JS_SetPropertyInternal': +quickjs.c:8815:22: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] + 8815 | if (unlikely(tag != JS_TAG_OBJECT)) { + | ^~ +cutils.h:33:45: note: in definition of macro 'unlikely' + 33 | #define unlikely(x) __builtin_expect(!!(x), 0) + | ^ +quickjs.c: In function 'js_parse_string': +quickjs.c:20527:15: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] +20527 | if (c == sep) + | ^~ quickjs.c: At top level: quickjs.c:9762:5: warning: no previous prototype for 'JS_DefinePropertyValueValue' [-Wmissing-prototypes] 9762 | int JS_DefinePropertyValueValue(JSContext *ctx, JSValueConst this_obj, @@ -1882,6 +1887,13 @@ quickjs.c:10200:6: warning: no previous prototype for 'JS_IsUncatchableError' [-Wmissing-prototypes] 10200 | BOOL JS_IsUncatchableError(JSContext *ctx, JSValueConst val) | ^~~~~~~~~~~~~~~~~~~~~ +quickjs.c: In function 'js_parse_class': +quickjs.c:23301:28: warning: declaration of 'method_fd' shadows a previous local [-Wshadow=compatible-local] +23301 | JSFunctionDef *method_fd; + | ^~~~~~~~~ +quickjs.c:23138:20: note: shadowed declaration is here +23138 | JSFunctionDef *method_fd, *ctor_fd; + | ^~~~~~~~~ quickjs.c: In function 'mp_add': quickjs.c:10511:17: warning: comparison of integer expressions of different signedness: 'int' and 'js_limb_t' {aka 'long unsigned int'} [-Wsign-compare] 10511 | for(i = 0;i < n; i++) { @@ -1901,10 +1913,23 @@ quickjs.c:10985:26: warning: comparison of integer expressions of different signedness: 'js_limb_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare] 10985 | if ((op1 != 0 && op1 != -1) || | ^~ +quickjs.c: In function 'js_parse_unary': +quickjs.c:25441:25: warning: declaration of 'op' shadows a previous local [-Wshadow=compatible-local] +25441 | int opcode, op, scope, label; + | ^~ +quickjs.c:25398:9: note: shadowed declaration is here +25398 | int op; + | ^~ quickjs.c: In function 'js_bigint_not': quickjs.c:11238:18: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 11238 | for(i = 0; i < a->len; i++) { | ^ +quickjs.c:25497:25: warning: declaration of 'op' shadows a previous local [-Wshadow=compatible-local] +25497 | int opcode, op, scope, label; + | ^~ +quickjs.c:25398:9: note: shadowed declaration is here +25398 | int op; + | ^~ quickjs.c: In function 'js_bigint_shl': quickjs.c:11262:22: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 11262 | for(i = 0; i < a->len; i++) { @@ -1921,6 +1946,13 @@ quickjs.c:11686:23: warning: comparison of integer expressions of different signedness: 'js_limb_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare] 11686 | if (c >= radix) | ^~ +quickjs.c: In function 'js_parse_statement_or_decl': +quickjs.c:26918:17: warning: declaration of 'tok' shadows a previous local [-Wshadow=compatible-local] +26918 | int tok, bits; + | ^~~ +quickjs.c:26698:9: note: shadowed declaration is here +26698 | int tok; + | ^~~ quickjs.c:11714:22: warning: comparison of integer expressions of different signedness: 'js_limb_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare] 11714 | assert(c < radix); | ^ @@ -1955,9 +1987,16 @@ quickjs.c:12370:5: warning: no previous prototype for 'JS_ToInt32Clamp' [-Wmissing-prototypes] 12370 | int JS_ToInt32Clamp(JSContext *ctx, int *pres, JSValueConst val, | ^~~~~~~~~~~~~~~ +quickjs.c: In function 'js_inner_module_linking': quickjs.c:12428:5: warning: no previous prototype for 'JS_ToInt64Sat' [-Wmissing-prototypes] 12428 | int JS_ToInt64Sat(JSContext *ctx, int64_t *pres, JSValueConst val) | ^~~~~~~~~~~~~ +quickjs.c:28479:34: warning: declaration of 'm1' shadows a previous local [-Wshadow=compatible-local] +28479 | JSModuleDef *res_m, *m1; + | ^~ +quickjs.c:28417:18: note: shadowed declaration is here +28417 | JSModuleDef *m1; + | ^~ quickjs.c:12433:5: warning: no previous prototype for 'JS_ToInt64Clamp' [-Wmissing-prototypes] 12433 | int JS_ToInt64Clamp(JSContext *ctx, int64_t *pres, JSValueConst val, | ^~~~~~~~~~~~~~~ @@ -1983,10 +2022,10 @@ quickjs.c:13278:27: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] 13278 | if ((p - str) != len) { | ^~ -quickjs.c: In function 'js_parse_string': -quickjs.c:20527:15: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] -20527 | if (c == sep) - | ^~ +quickjs.c: In function 'add_import': +quickjs.c:29502:55: warning: implicit conversion from 'enum ' to 'JSVarKindEnum' [-Wenum-conversion] +29502 | local_name, TRUE, TRUE, FALSE); + | ^~~~~ quickjs.c: In function 'js_binary_arith_slow': quickjs.c:13664:54: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 13664 | } else if ((tag1 == JS_TAG_SHORT_BIG_INT || tag1 == JS_TAG_BIG_INT) && @@ -2067,110 +2106,6 @@ quickjs.c:14955:13: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 14955 | if (tag != JS_TAG_OBJECT && tag != JS_TAG_NULL && tag != JS_TAG_UNDEFINED) { | ^~ -quickjs.c: In function 'js_parse_class': -quickjs.c:23301:28: warning: declaration of 'method_fd' shadows a previous local [-Wshadow=compatible-local] -23301 | JSFunctionDef *method_fd; - | ^~~~~~~~~ -quickjs.c:23138:20: note: shadowed declaration is here -23138 | JSFunctionDef *method_fd, *ctor_fd; - | ^~~~~~~~~ -quickjs.c: In function 'JS_CallInternal': -quickjs.c:16347:36: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] -16347 | if (likely(tag == JS_TAG_OBJECT)) - | ^~ -cutils.h:32:45: note: in definition of macro 'likely' - 32 | #define likely(x) __builtin_expect(!!(x), 1) - | ^ -quickjs.c:16648:21: warning: declaration of 'i' shadows a previous local [-Wshadow=compatible-local] -16648 | int i, ret; - | ^ -quickjs.c:16159:37: note: shadowed declaration is here -16159 | int opcode, arg_allocated_size, i; - | ^ -quickjs.c:16949:21: warning: declaration of 'flags' shadows a parameter [-Wshadow=compatible-local] -16949 | int flags; - | ^~~~~ -quickjs.c:16151:61: note: shadowed declaration is here -16151 | int argc, JSValue *argv, int flags) - | ~~~~^~~~~ -quickjs.c:16961:21: warning: declaration of 'flags' shadows a parameter [-Wshadow=compatible-local] -16961 | int flags; - | ^~~~~ -quickjs.c:16151:61: note: shadowed declaration is here -16151 | int argc, JSValue *argv, int flags) - | ~~~~^~~~~ -quickjs.c:16973:21: warning: declaration of 'flags' shadows a parameter [-Wshadow=compatible-local] -16973 | int flags; - | ^~~~~ -quickjs.c:16151:61: note: shadowed declaration is here -16151 | int argc, JSValue *argv, int flags) - | ~~~~^~~~~ -quickjs.c:17391:34: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] -17391 | if (unlikely(pos >= b->byte_code_len)) { - | ^~ -cutils.h:33:45: note: in definition of macro 'unlikely' - 33 | #define unlikely(x) __builtin_expect(!!(x), 0) - | ^ -quickjs.c: In function 'js_parse_unary': -quickjs.c:17470:25: warning: declaration of 'ret_val' shadows a previous local [-Wshadow=compatible-local] -17470 | JSValue ret_val; - | ^~~~~~~ -quickjs.c:25441:25: warning: declaration of 'op' shadows a previous local [-Wshadow=compatible-local] -25441 | int opcode, op, scope, label; - | ^~ -quickjs.c:25398:9: note: shadowed declaration is here -25398 | int op; - | ^~ -quickjs.c:16160:62: note: shadowed declaration is here -16160 | JSValue *local_buf, *stack_buf, *var_buf, *arg_buf, *sp, ret_val, *pval; - | ^~~~~~~ -quickjs.c:17505:21: warning: declaration of 'flags' shadows a parameter [-Wshadow=compatible-local] -17505 | int flags; - | ^~~~~ -quickjs.c:16151:61: note: shadowed declaration is here -16151 | int argc, JSValue *argv, int flags) - | ~~~~^~~~~ -quickjs.c:25497:25: warning: declaration of 'op' shadows a previous local [-Wshadow=compatible-local] -25497 | int opcode, op, scope, label; - | ^~ -quickjs.c:25398:9: note: shadowed declaration is here -25398 | int op; - | ^~ -quickjs.c:17705:21: warning: declaration of 'flags' shadows a parameter [-Wshadow=compatible-local] -17705 | int flags, ret, op_flags; - | ^~~~~ -quickjs.c:16151:61: note: shadowed declaration is here -16151 | int argc, JSValue *argv, int flags) - | ~~~~^~~~~ -quickjs.c: In function 'js_parse_statement_or_decl': -quickjs.c:26918:17: warning: declaration of 'tok' shadows a previous local [-Wshadow=compatible-local] -26918 | int tok, bits; - | ^~~ -quickjs.c:26698:9: note: shadowed declaration is here -26698 | int tok; - | ^~~ -quickjs.c: In function 'js_inner_module_linking': -quickjs.c:28479:34: warning: declaration of 'm1' shadows a previous local [-Wshadow=compatible-local] -28479 | JSModuleDef *res_m, *m1; - | ^~ -quickjs.c:28417:18: note: shadowed declaration is here -28417 | JSModuleDef *m1; - | ^~ -quickjs.c: In function 'js_parse_string': -quickjs.c:20527:15: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] -20527 | if (c == sep) - | ^~ -quickjs.c: In function 'add_import': -quickjs.c:29502:55: warning: implicit conversion from 'enum ' to 'JSVarKindEnum' [-Wenum-conversion] -29502 | local_name, TRUE, TRUE, FALSE); - | ^~~~~ -quickjs.c: In function 'js_parse_class': -quickjs.c:23301:28: warning: declaration of 'method_fd' shadows a previous local [-Wshadow=compatible-local] -23301 | JSFunctionDef *method_fd; - | ^~~~~~~~~ -quickjs.c:23138:20: note: shadowed declaration is here -23138 | JSFunctionDef *method_fd, *ctor_fd; - | ^~~~~~~~~ quickjs.c: In function 'resolve_variables': quickjs.c:31978:32: warning: declaration of 'scope' shadows a previous local [-Wshadow=compatible-local] 31978 | int scope_idx, scope = get_u16(bc_buf + pos + 1); @@ -2229,27 +2164,45 @@ quickjs.c:33223:56: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 33223 | if (s->line_number_slots[j].pc > pos) | ^ +quickjs.c: In function 'JS_CallInternal': +quickjs.c:16347:36: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] +16347 | if (likely(tag == JS_TAG_OBJECT)) + | ^~ +cutils.h:32:45: note: in definition of macro 'likely' + 32 | #define likely(x) __builtin_expect(!!(x), 1) + | ^ quickjs.c: In function 'ss_check': quickjs.c:33290:23: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'int' [-Wsign-compare] 33290 | if ((unsigned)pos >= s->bc_len) { | ^~ -quickjs.c: In function 'js_parse_unary': -quickjs.c:25441:25: warning: declaration of 'op' shadows a previous local [-Wshadow=compatible-local] -25441 | int opcode, op, scope, label; - | ^~ -quickjs.c:25398:9: note: shadowed declaration is here -25398 | int op; - | ^~ +quickjs.c:16648:21: warning: declaration of 'i' shadows a previous local [-Wshadow=compatible-local] +16648 | int i, ret; + | ^ +quickjs.c:16159:37: note: shadowed declaration is here +16159 | int opcode, arg_allocated_size, i; + | ^ quickjs.c: In function 'add_module_variables': quickjs.c:33543:45: warning: implicit conversion from 'enum ' to 'JSVarKindEnum' [-Wenum-conversion] 33543 | hf->is_lexical, FALSE) < 0) | ^~~~~ -quickjs.c:25497:25: warning: declaration of 'op' shadows a previous local [-Wshadow=compatible-local] -25497 | int opcode, op, scope, label; - | ^~ -quickjs.c:25398:9: note: shadowed declaration is here -25398 | int op; - | ^~ +quickjs.c:16949:21: warning: declaration of 'flags' shadows a parameter [-Wshadow=compatible-local] +16949 | int flags; + | ^~~~~ +quickjs.c:16151:61: note: shadowed declaration is here +16151 | int argc, JSValue *argv, int flags) + | ~~~~^~~~~ +quickjs.c:16961:21: warning: declaration of 'flags' shadows a parameter [-Wshadow=compatible-local] +16961 | int flags; + | ^~~~~ +quickjs.c:16151:61: note: shadowed declaration is here +16151 | int argc, JSValue *argv, int flags) + | ~~~~^~~~~ +quickjs.c:16973:21: warning: declaration of 'flags' shadows a parameter [-Wshadow=compatible-local] +16973 | int flags; + | ^~~~~ +quickjs.c:16151:61: note: shadowed declaration is here +16151 | int argc, JSValue *argv, int flags) + | ~~~~^~~~~ quickjs.c: In function 'js_parse_function_decl2': quickjs.c:34468:16: warning: declaration of 'func_name' shadows a parameter [-Wshadow=compatible-local] 34468 | JSAtom func_name = fd->func_name; @@ -2257,6 +2210,24 @@ quickjs.c:34010:55: note: shadowed declaration is here 34010 | JSAtom func_name, | ~~~~~~~^~~~~~~~~ +quickjs.c:17391:34: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] +17391 | if (unlikely(pos >= b->byte_code_len)) { + | ^~ +cutils.h:33:45: note: in definition of macro 'unlikely' + 33 | #define unlikely(x) __builtin_expect(!!(x), 0) + | ^ +quickjs.c:17470:25: warning: declaration of 'ret_val' shadows a previous local [-Wshadow=compatible-local] +17470 | JSValue ret_val; + | ^~~~~~~ +quickjs.c:16160:62: note: shadowed declaration is here +16160 | JSValue *local_buf, *stack_buf, *var_buf, *arg_buf, *sp, ret_val, *pval; + | ^~~~~~~ +quickjs.c:17505:21: warning: declaration of 'flags' shadows a parameter [-Wshadow=compatible-local] +17505 | int flags; + | ^~~~~ +quickjs.c:16151:61: note: shadowed declaration is here +16151 | int argc, JSValue *argv, int flags) + | ~~~~^~~~~ quickjs.c: In function 'JS_EvalFunctionInternal': quickjs.c:34663:13: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 34663 | if (tag == JS_TAG_FUNCTION_BYTECODE) { @@ -2264,13 +2235,12 @@ quickjs.c:34666:20: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 34666 | } else if (tag == JS_TAG_MODULE) { | ^~ -quickjs.c: In function 'js_parse_statement_or_decl': -quickjs.c:26918:17: warning: declaration of 'tok' shadows a previous local [-Wshadow=compatible-local] -26918 | int tok, bits; - | ^~~ -quickjs.c:26698:9: note: shadowed declaration is here -26698 | int tok; - | ^~~ +quickjs.c:17705:21: warning: declaration of 'flags' shadows a parameter [-Wshadow=compatible-local] +17705 | int flags, ret, op_flags; + | ^~~~~ +quickjs.c:16151:61: note: shadowed declaration is here +16151 | int argc, JSValue *argv, int flags) + | ~~~~^~~~~ quickjs.c: In function 'js_object_list_resize_hash': quickjs.c:34925:18: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 34925 | for(i = 0; i < s->object_count; i++) { @@ -2304,17 +2274,10 @@ quickjs.c:36046:31: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] 36046 | if ((s->buf_end - s->ptr) < size) { | ^ -quickjs.c: In function 'js_inner_module_linking': quickjs.c: In function 'JS_ReadFunctionBytecode': -quickjs.c:28479:34: warning: declaration of 'm1' shadows a previous local [-Wshadow=compatible-local] -28479 | JSModuleDef *res_m, *m1; - | ^~ quickjs.c:36102:16: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 36102 | while (pos < bc_len) { | ^ -quickjs.c:28417:18: note: shadowed declaration is here -28417 | JSModuleDef *m1; - | ^~ quickjs.c: In function 'JS_ReadObjectRec': quickjs.c:36833:21: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 36833 | if (val >= s->objects_count) { @@ -2327,14 +2290,84 @@ quickjs.c:36893:22: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 36893 | for(i = 0; i < s->idx_to_atom_count; i++) { | ^ -quickjs.c: In function 'add_import': -quickjs.c:29502:55: warning: implicit conversion from 'enum ' to 'JSVarKindEnum' [-Wenum-conversion] -29502 | local_name, TRUE, TRUE, FALSE); - | ^~~~~ quickjs.c: In function 'js_object___getClass': quickjs.c:38204:13: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 38204 | if (tag == JS_TAG_OBJECT) { | ^~ +quickjs.c: In function 'js_parse_string': +quickjs.c:20527:15: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] +20527 | if (c == sep) + | ^~ +quickjs.c: In function 'js_array_sort': +quickjs.c:40773:26: warning: comparison of integer expressions of different signedness: 'int64_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] +40773 | if (array[n].pos == n) { + | ^~ +quickjs.c: In function 'js_parse_class': +quickjs.c:23301:28: warning: declaration of 'method_fd' shadows a previous local [-Wshadow=compatible-local] +23301 | JSFunctionDef *method_fd; + | ^~~~~~~~~ +quickjs.c:23138:20: note: shadowed declaration is here +23138 | JSFunctionDef *method_fd, *ctor_fd; + | ^~~~~~~~~ +quickjs.c: In function 'js_parse_unary': +quickjs.c:25441:25: warning: declaration of 'op' shadows a previous local [-Wshadow=compatible-local] +25441 | int opcode, op, scope, label; + | ^~ +quickjs.c:25398:9: note: shadowed declaration is here +25398 | int op; + | ^~ +quickjs.c:25497:25: warning: declaration of 'op' shadows a previous local [-Wshadow=compatible-local] +25497 | int opcode, op, scope, label; + | ^~ +quickjs.c:25398:9: note: shadowed declaration is here +25398 | int op; + | ^~ +quickjs.c: In function 'js_string___GetSubstitution': +quickjs.c:42179:28: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] +42179 | if (j < 0 || j + 1 >= len) + | ^~ +quickjs.c:42195:19: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] +42195 | if (j < len) { + | ^ +quickjs.c:42202:39: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] +42202 | if (k1 >= 1 && k1 < captures_len) { + | ^ +quickjs.c:42208:29: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] +42208 | if (k >= 1 && k < captures_len) { + | ^ +quickjs.c: In function 'js_parse_statement_or_decl': +quickjs.c:26918:17: warning: declaration of 'tok' shadows a previous local [-Wshadow=compatible-local] +26918 | int tok, bits; + | ^~~ +quickjs.c:26698:9: note: shadowed declaration is here +26698 | int tok; + | ^~~ +quickjs.c: In function 'js_string_normalize': +quickjs.c:42876:32: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] +42876 | if ((p + 1 - form) != form_len) + | ^~ +quickjs.c: In function 'js_inner_module_linking': +quickjs.c:28479:34: warning: declaration of 'm1' shadows a previous local [-Wshadow=compatible-local] +28479 | JSModuleDef *res_m, *m1; + | ^~ +quickjs.c:28417:18: note: shadowed declaration is here +28417 | JSModuleDef *m1; + | ^~ +quickjs.c: In function 'js_regexp_exec': +quickjs.c:44142:21: warning: declaration of 'val' shadows a previous local [-Wshadow=compatible-local] +44142 | JSValue val; + | ^~~ +quickjs.c:44047:35: note: shadowed declaration is here +44047 | JSValue t, ret, str_val, obj, val, groups; + | ^~~ +quickjs.c: In function 'js_regexp_Symbol_replace': +quickjs.c:44826:22: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] +44826 | for(n = 1; n < nCaptures; n++) { + | ^ +quickjs.c: In function 'add_import': +quickjs.c:29502:55: warning: implicit conversion from 'enum ' to 'JSVarKindEnum' [-Wenum-conversion] +29502 | local_name, TRUE, TRUE, FALSE); + | ^~~~~ quickjs.c: In function 'resolve_variables': quickjs.c:31978:32: warning: declaration of 'scope' shadows a previous local [-Wshadow=compatible-local] 31978 | int scope_idx, scope = get_u16(bc_buf + pos + 1); @@ -2401,10 +2434,29 @@ quickjs.c:33543:45: warning: implicit conversion from 'enum ' to 'JSVarKindEnum' [-Wenum-conversion] 33543 | hf->is_lexical, FALSE) < 0) | ^~~~~ -quickjs.c: In function 'js_array_sort': -quickjs.c:40773:26: warning: comparison of integer expressions of different signedness: 'int64_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] -40773 | if (array[n].pos == n) { - | ^~ +In file included from /usr/include/postgresql/18/server/postgres.h:49, + from src/types.c:1: +src/types.c: In function 'pljs_jsvalue_to_datum': +src/types.c:1154:20: warning: format '%lld' expects argument of type 'long long int', but argument 2 has type 'int64_t' {aka 'long int'} [-Wformat=] + 1154 | elog(DEBUG3, "Unknown array type, tag: %lld", val.tag); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~ + | | + | int64_t {aka long int} +/usr/include/postgresql/18/server/utils/elog.h:147:25: note: in definition of macro 'ereport_domain' + 147 | __VA_ARGS__, errfinish(__FILE__, __LINE__, __func__); \ + | ^~~~~~~~~~~ +/usr/include/postgresql/18/server/utils/elog.h:240:9: note: in expansion of macro 'ereport' + 240 | ereport(elevel, errmsg_internal(__VA_ARGS__)) + | ^~~~~~~ +src/types.c:1154:7: note: in expansion of macro 'elog' + 1154 | elog(DEBUG3, "Unknown array type, tag: %lld", val.tag); + | ^~~~ +src/types.c:1154:49: note: format string is defined here + 1154 | elog(DEBUG3, "Unknown array type, tag: %lld", val.tag); + | ~~~^ + | | + | long long int + | %ld quickjs.c: In function 'js_parse_function_decl2': quickjs.c:34468:16: warning: declaration of 'func_name' shadows a parameter [-Wshadow=compatible-local] 34468 | JSAtom func_name = fd->func_name; @@ -2444,19 +2496,6 @@ quickjs.c:35121:14: warning: comparison of integer expressions of different signedness: 'JSAtom' {aka 'unsigned int'} and 'int' [-Wsign-compare] 35121 | if (atom >= s->atom_to_idx_size) { | ^~ -quickjs.c: In function 'js_string___GetSubstitution': -quickjs.c:42179:28: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] -42179 | if (j < 0 || j + 1 >= len) - | ^~ -quickjs.c:42195:19: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] -42195 | if (j < len) { - | ^ -quickjs.c:42202:39: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] -42202 | if (k1 >= 1 && k1 < captures_len) { - | ^ -quickjs.c:42208:29: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] -42208 | if (k >= 1 && k < captures_len) { - | ^ quickjs.c: In function 'JS_WriteObjectTag': quickjs.c:35529:47: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 35529 | for(i = 0, pr = get_shape_prop(sh); i < sh->prop_count; i++, pr++) { @@ -2465,10 +2504,6 @@ quickjs.c:36046:31: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] 36046 | if ((s->buf_end - s->ptr) < size) { | ^ -quickjs.c: In function 'js_string_normalize': -quickjs.c:42876:32: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] -42876 | if ((p + 1 - form) != form_len) - | ^~ quickjs.c: In function 'JS_ReadFunctionBytecode': quickjs.c:36102:16: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 36102 | while (pos < bc_len) { @@ -2485,57 +2520,21 @@ quickjs.c:36893:22: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 36893 | for(i = 0; i < s->idx_to_atom_count; i++) { | ^ +src/types.c: In function 'pljs_spi_result_to_jsvalue': +src/types.c:1267:8: warning: this statement may fall through [-Wimplicit-fallthrough=] + 1267 | if (SPI_tuptable == NULL) { + | ^ +src/types.c:1273:3: note: here + 1273 | case SPI_OK_SELECT: + | ^~~~ +src/types.c: At top level: +src/types.c:28:18: warning: 'JS_CLASS_UINT8C_ARRAY' defined but not used [-Wunused-variable] + 28 | static JSClassID JS_CLASS_UINT8C_ARRAY = 21; + | ^~~~~~~~~~~~~~~~~~~~~ quickjs.c: In function 'js_object___getClass': quickjs.c:38204:13: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 38204 | if (tag == JS_TAG_OBJECT) { | ^~ -quickjs.c: In function 'js_regexp_exec': -quickjs.c:44142:21: warning: declaration of 'val' shadows a previous local [-Wshadow=compatible-local] -44142 | JSValue val; - | ^~~ -quickjs.c:44047:35: note: shadowed declaration is here -44047 | JSValue t, ret, str_val, obj, val, groups; - | ^~~ -quickjs.c: In function 'js_regexp_Symbol_replace': -quickjs.c:44826:22: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] -44826 | for(n = 1; n < nCaptures; n++) { - | ^ -quickjs.c: In function 'js_array_sort': -quickjs.c:40773:26: warning: comparison of integer expressions of different signedness: 'int64_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] -40773 | if (array[n].pos == n) { - | ^~ -quickjs.c: In function 'js_string___GetSubstitution': -quickjs.c:42179:28: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] -42179 | if (j < 0 || j + 1 >= len) - | ^~ -quickjs.c:42195:19: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] -42195 | if (j < len) { - | ^ -quickjs.c:42202:39: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] -42202 | if (k1 >= 1 && k1 < captures_len) { - | ^ -quickjs.c:42208:29: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] -42208 | if (k >= 1 && k < captures_len) { - | ^ -quickjs.c: In function 'js_string_normalize': -quickjs.c:42876:32: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] -42876 | if ((p + 1 - form) != form_len) - | ^~ -quickjs.c: In function 'js_regexp_exec': -quickjs.c:44142:21: warning: declaration of 'val' shadows a previous local [-Wshadow=compatible-local] -44142 | JSValue val; - | ^~~ -quickjs.c:44047:35: note: shadowed declaration is here -44047 | JSValue t, ret, str_val, obj, val, groups; - | ^~~ -quickjs.c: In function 'js_regexp_Symbol_replace': -quickjs.c:44826:22: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] -44826 | for(n = 1; n < nCaptures; n++) { - | ^ -src/functions.c: In function 'pljs_window_get_partition_local': -src/functions.c:1104:10: warning: variable 'size' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered] - 1104 | size_t size = 1000; - | ^~~~ quickjs.c: In function 'js_typed_array_indexOf': quickjs.c:52535:25: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 52535 | if (p1->len > sz) @@ -2580,10 +2579,57 @@ quickjs.c:53627:16: warning: comparison of integer expressions of different signedness: 'uint64_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare] 53627 | if (offset > abuf->byte_length) | ^ +quickjs.c: In function 'js_array_sort': +quickjs.c:40773:26: warning: comparison of integer expressions of different signedness: 'int64_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] +40773 | if (array[n].pos == n) { + | ^~ quickjs.c: At top level: quickjs.c:54323:6: warning: no previous prototype for 'JS_AddIntrinsicAtomics' [-Wmissing-prototypes] 54323 | void JS_AddIntrinsicAtomics(JSContext *ctx) | ^~~~~~~~~~~~~~~~~~~~~~ +quickjs.c: In function 'js_string___GetSubstitution': +quickjs.c:42179:28: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] +42179 | if (j < 0 || j + 1 >= len) + | ^~ +quickjs.c:42195:19: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] +42195 | if (j < len) { + | ^ +quickjs.c:42202:39: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] +42202 | if (k1 >= 1 && k1 < captures_len) { + | ^ +quickjs.c:42208:29: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] +42208 | if (k >= 1 && k < captures_len) { + | ^ +src/functions.c: In function 'pljs_window_get_partition_local': +src/functions.c:1104:10: warning: variable 'size' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered] + 1104 | size_t size = 1000; + | ^~~~ +quickjs.c: In function 'js_string_normalize': +quickjs.c:42876:32: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare] +42876 | if ((p + 1 - form) != form_len) + | ^~ +quickjs.c: In function 'js_regexp_exec': +quickjs.c:44142:21: warning: declaration of 'val' shadows a previous local [-Wshadow=compatible-local] +44142 | JSValue val; + | ^~~ +quickjs.c:44047:35: note: shadowed declaration is here +44047 | JSValue t, ret, str_val, obj, val, groups; + | ^~~ +quickjs.c: In function 'js_regexp_Symbol_replace': +quickjs.c:44826:22: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] +44826 | for(n = 1; n < nCaptures; n++) { + | ^ +gcc -L/usr/lib/x86_64-linux-gnu -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -g -shared -o examples/point.so .obj/examples/point.pic.o +src/functions.c: In function 'pljs_prepare': +src/functions.c:577:8: warning: variable 'types' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered] + 577 | Oid *types = NULL; + | ^~~~~ +src/functions.c:579:21: warning: variable 'parstate' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered] + 579 | pljs_param_state *parstate = NULL; + | ^~~~~~~~ +src/functions.c:581:8: warning: variable 'cleanup_params' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered] + 581 | bool cleanup_params = false; + | ^~~~~~~~~~~~~~ quickjs.c: In function 'js_typed_array_indexOf': quickjs.c:52535:25: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 52535 | if (p1->len > sz) @@ -2632,16 +2678,6 @@ quickjs.c:54323:6: warning: no previous prototype for 'JS_AddIntrinsicAtomics' [-Wmissing-prototypes] 54323 | void JS_AddIntrinsicAtomics(JSContext *ctx) | ^~~~~~~~~~~~~~~~~~~~~~ -src/functions.c: In function 'pljs_prepare': -src/functions.c:577:8: warning: variable 'types' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered] - 577 | Oid *types = NULL; - | ^~~~~ -src/functions.c:579:21: warning: variable 'parstate' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered] - 579 | pljs_param_state *parstate = NULL; - | ^~~~~~~~ -src/functions.c:581:8: warning: variable 'cleanup_params' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered] - 581 | bool cleanup_params = false; - | ^~~~~~~~~~~~~~ quickjs.c: In function 'js_json_check': quickjs.c:45469:12: warning: this statement may fall through [-Wimplicit-fallthrough=] 45469 | if (JS_IsFunction(ctx, val)) @@ -2653,6 +2689,10 @@ src/functions.c:399:8: warning: variable 'cleanup_params' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered] 399 | bool cleanup_params = false; | ^~~~~~~~~~~~~~ +src/functions.c: In function 'pljs_execute': +src/functions.c:257:8: warning: variable 'cleanup_params' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered] + 257 | bool cleanup_params = false; + | ^~~~~~~~~~~~~~ quickjs.c: In function 'js_json_check': quickjs.c:45469:12: warning: this statement may fall through [-Wimplicit-fallthrough=] 45469 | if (JS_IsFunction(ctx, val)) @@ -2660,10 +2700,6 @@ quickjs.c:45471:5: note: here 45471 | case JS_TAG_STRING: | ^~~~ -src/functions.c: In function 'pljs_execute': -src/functions.c:257:8: warning: variable 'cleanup_params' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered] - 257 | bool cleanup_params = false; - | ^~~~~~~~~~~~~~ src/functions.c: In function 'pljs_plan_cursor': src/functions.c:691:8: warning: variable 'cleanup_params' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered] 691 | bool cleanup_params = false; @@ -2700,30 +2736,30 @@ ./qjsc -e -fno-string-normalize -fno-map -fno-promise -fno-typedarray -fno-typedarray -fno-regexp -fno-json -fno-eval -fno-proxy -fno-date -fno-module-loader -o hello.c examples/hello.js ./qjsc -e -M examples/fib.so,fib -m -o test_fib.c examples/test_fib.js ./qjsc -fno-string-normalize -fno-map -fno-typedarray -fno-typedarray -fno-regexp -fno-json -fno-eval -fno-proxy -fno-date -m -o examples/hello_module examples/hello_module.js +gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -Wmissing-variable-declarations -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -Werror=implicit-function-declaration -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fno-omit-frame-pointer -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fPIC -Wall -Wextra -Wno-unused-parameter -Wno-declaration-after-statement -Wno-cast-function-type -std=c11 -DPLJS_VERSION=\"1.0.3\" -DEXPOSE_GC -O3 -DJSONB_DIRECT_CONVERSION -fPIC -fvisibility=hidden -fPIC -g -Wall -MMD -MF .obj/repl.o.d -Wno-array-bounds -Wno-format-truncation -Wno-infinite-recursion -fwrapv -D_GNU_SOURCE -DCONFIG_VERSION=\"2025-04-26\" -DHAVE_CLOSEFROM -O2 -c -o .obj/repl.o repl.c gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -Wmissing-variable-declarations -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -Werror=implicit-function-declaration -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fno-omit-frame-pointer -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fPIC -Wall -Wextra -Wno-unused-parameter -Wno-declaration-after-statement -Wno-cast-function-type -std=c11 -DPLJS_VERSION=\"1.0.3\" -DEXPOSE_GC -O3 -DJSONB_DIRECT_CONVERSION -fPIC -fvisibility=hidden -fPIC -g -Wall -MMD -MF .obj/hello.o.d -Wno-array-bounds -Wno-format-truncation -Wno-infinite-recursion -fwrapv -D_GNU_SOURCE -DCONFIG_VERSION=\"2025-04-26\" -DHAVE_CLOSEFROM -O2 -c -o .obj/hello.o hello.c gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -Wmissing-variable-declarations -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -Werror=implicit-function-declaration -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fno-omit-frame-pointer -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fPIC -Wall -Wextra -Wno-unused-parameter -Wno-declaration-after-statement -Wno-cast-function-type -std=c11 -DPLJS_VERSION=\"1.0.3\" -DEXPOSE_GC -O3 -DJSONB_DIRECT_CONVERSION -fPIC -fvisibility=hidden -fPIC -g -Wall -MMD -MF .obj/test_fib.o.d -Wno-array-bounds -Wno-format-truncation -Wno-infinite-recursion -fwrapv -D_GNU_SOURCE -DCONFIG_VERSION=\"2025-04-26\" -DHAVE_CLOSEFROM -O2 -c -o .obj/test_fib.o test_fib.c -gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -Wmissing-variable-declarations -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -Werror=implicit-function-declaration -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fno-omit-frame-pointer -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fPIC -Wall -Wextra -Wno-unused-parameter -Wno-declaration-after-statement -Wno-cast-function-type -std=c11 -DPLJS_VERSION=\"1.0.3\" -DEXPOSE_GC -O3 -DJSONB_DIRECT_CONVERSION -fPIC -fvisibility=hidden -fPIC -g -Wall -MMD -MF .obj/repl.o.d -Wno-array-bounds -Wno-format-truncation -Wno-infinite-recursion -fwrapv -D_GNU_SOURCE -DCONFIG_VERSION=\"2025-04-26\" -DHAVE_CLOSEFROM -O2 -c -o .obj/repl.o repl.c repl.c:5:16: warning: no previous declaration for 'qjsc_repl_size' [-Wmissing-variable-declarations] 5 | const uint32_t qjsc_repl_size = 13839; | ^~~~~~~~~~~~~~ repl.c:7:15: warning: no previous declaration for 'qjsc_repl' [-Wmissing-variable-declarations] 7 | const uint8_t qjsc_repl[13839] = { | ^~~~~~~~~ -gcc -L/usr/lib/x86_64-linux-gnu -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -g -rdynamic -o qjs .obj/qjs.o .obj/repl.o .obj/quickjs.o .obj/dtoa.o .obj/libregexp.o .obj/libunicode.o .obj/cutils.o .obj/quickjs-libc.o -lm -lpthread -ldl -hello.c:5:16: warning: no previous declaration for 'qjsc_hello_size' [-Wmissing-variable-declarations] - 5 | const uint32_t qjsc_hello_size = 93; - | ^~~~~~~~~~~~~~~ -hello.c:7:15: warning: no previous declaration for 'qjsc_hello' [-Wmissing-variable-declarations] - 7 | const uint8_t qjsc_hello[93] = { - | ^~~~~~~~~~ test_fib.c:5:16: warning: no previous declaration for 'qjsc_test_fib_size' [-Wmissing-variable-declarations] 5 | const uint32_t qjsc_test_fib_size = 175; | ^~~~~~~~~~~~~~~~~~ test_fib.c:7:15: warning: no previous declaration for 'qjsc_test_fib' [-Wmissing-variable-declarations] 7 | const uint8_t qjsc_test_fib[175] = { | ^~~~~~~~~~~~~ +hello.c:5:16: warning: no previous declaration for 'qjsc_hello_size' [-Wmissing-variable-declarations] + 5 | const uint32_t qjsc_hello_size = 93; + | ^~~~~~~~~~~~~~~ +hello.c:7:15: warning: no previous declaration for 'qjsc_hello' [-Wmissing-variable-declarations] + 7 | const uint8_t qjsc_hello[93] = { + | ^~~~~~~~~~ gcc -L/usr/lib/x86_64-linux-gnu -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -g -o examples/hello .obj/hello.o .obj/quickjs.o .obj/dtoa.o .obj/libregexp.o .obj/libunicode.o .obj/cutils.o .obj/quickjs-libc.o -lm -lpthread -ldl gcc -L/usr/lib/x86_64-linux-gnu -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -g -o examples/test_fib .obj/test_fib.o .obj/examples/fib.o libquickjs.a -lm -lpthread -ldl +gcc -L/usr/lib/x86_64-linux-gnu -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -g -rdynamic -o qjs .obj/qjs.o .obj/repl.o .obj/quickjs.o .obj/dtoa.o .obj/libregexp.o .obj/libunicode.o .obj/cutils.o .obj/quickjs-libc.o -lm -lpthread -ldl make[2]: Leaving directory '/build/reproducible-path/pljs-1.0.3/deps/quickjs' gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -Wmissing-variable-declarations -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -Werror=implicit-function-declaration -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fno-omit-frame-pointer -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fPIC -Wall -Wextra -Wno-unused-parameter -Wno-declaration-after-statement -Wno-cast-function-type -std=c11 -DPLJS_VERSION=\"1.0.3\" -DEXPOSE_GC -O3 -DJSONB_DIRECT_CONVERSION -fPIC -fvisibility=hidden -I. -I./ -I/usr/include/postgresql/18/server -I/usr/include/postgresql/internal -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 -c -o src/pljs.o src/pljs.c gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -Wmissing-variable-declarations -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -Werror=implicit-function-declaration -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fno-omit-frame-pointer -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fPIC -Wall -Wextra -Wno-unused-parameter -Wno-declaration-after-statement -Wno-cast-function-type -std=c11 -DPLJS_VERSION=\"1.0.3\" -DEXPOSE_GC -O3 -DJSONB_DIRECT_CONVERSION -fPIC -fvisibility=hidden -shared -o pljs.so src/pljs.o src/cache.o src/functions.o src/types.o src/params.o -L/usr/lib/x86_64-linux-gnu -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/pljs-1.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fvisibility=hidden -Ldeps/quickjs -lquickjs -O3 @@ -2769,26 +2805,26 @@ # +++ regress install-check in +++ # using postmaster on localhost, port 5432 # could not set core size: disallowed by hard limit -ok 1 - init-extension 101 ms -ok 2 - function 234 ms -ok 3 - json 27 ms -ok 4 - jsonb 26 ms +ok 1 - init-extension 53 ms +ok 2 - function 72 ms +ok 3 - json 31 ms +ok 4 - jsonb 27 ms ok 5 - json_conv 24 ms -ok 6 - types 157 ms -ok 7 - bytea 200 ms -ok 8 - context 182 ms -ok 9 - cursor 29 ms -ok 10 - array_spread 2794 ms -ok 11 - plv8_regressions 96 ms -ok 12 - memory_limits 1293 ms -ok 13 - inline 22 ms -ok 14 - composites 25 ms -ok 15 - trigger 274 ms -ok 16 - procedure 238 ms -ok 17 - find_function 30 ms -ok 18 - start_proc 99 ms -ok 19 - window 93 ms -ok 20 - regressions 22 ms +ok 6 - types 80 ms +ok 7 - bytea 30 ms +ok 8 - context 25 ms +ok 9 - cursor 30 ms +ok 10 - array_spread 2841 ms +ok 11 - plv8_regressions 33 ms +ok 12 - memory_limits 1537 ms +ok 13 - inline 23 ms +ok 14 - composites 26 ms +ok 15 - trigger 31 ms +ok 16 - procedure 27 ms +ok 17 - find_function 31 ms +ok 18 - start_proc 28 ms +ok 19 - window 44 ms +ok 20 - regressions 23 ms 1..20 # All 20 tests passed. make[1]: Leaving directory '/build/reproducible-path/pljs-1.0.3' @@ -2821,12 +2857,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/720982/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/720982/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/985871 and its subdirectories -I: Current time: Wed Dec 2 00:25:01 -12 2026 -I: pbuilder-time-stamp: 1796214301 +I: removing directory /srv/workspace/pbuilder/720982 and its subdirectories +I: Current time: Thu Oct 30 20:05:47 +14 2025 +I: pbuilder-time-stamp: 1761804347